From 54e79d91a10ae8135ccaf7fd4ab43160c3f1003f Mon Sep 17 00:00:00 2001 From: Travis Fisher Date: Tue, 2 Apr 2019 21:41:57 -0400 Subject: [PATCH] try again update test reference. maven config for tests in parallel. --- .idea/encodings.xml | 1 + pom.xml | 2 + .../passes/Pass5DoubleJumpElimination.java | 22 +- src/test/ref/assignment-compound.log | 240 +- src/test/ref/bool-pointer.log | 62 +- src/test/ref/c64dtv-gfxexplorer.log | 10308 +++++++------- src/test/ref/c64dtv-gfxmodes.log | 11638 ++++++++-------- src/test/ref/cast-precedence-problem.log | 80 +- src/test/ref/complex/tetris/tetris.log | 10718 +++++++------- .../examples/bresenham/bitmap-bresenham.log | 2406 ++-- .../multiplexer/simple-multiplexer.log | 1634 +-- .../ref/examples/scrolllogo/scrolllogo.log | 3006 ++-- .../ref/examples/sinplotter/sine-plotter.log | 2974 ++-- src/test/ref/keyboard-glitch.log | 618 +- src/test/ref/line-anim.log | 2408 ++-- src/test/ref/loop-break-continue.log | 86 +- src/test/ref/loop-break-nested.log | 88 +- src/test/ref/loop-break.log | 48 +- src/test/ref/no-recursion-heavy.log | 2704 ++-- src/test/ref/roll-sprite-msb.log | 382 +- src/test/ref/sinusgen16.log | 2008 +-- src/test/ref/sinusgen16b.log | 2826 ++-- src/test/ref/sinusgen8.log | 1782 +-- src/test/ref/sinusgen8b.log | 3018 ++-- src/test/ref/sinusgenscale8.log | 2728 ++-- src/test/ref/test-division.log | 3732 ++--- src/test/ref/test-multiply-16bit.log | 3792 ++--- src/test/ref/test-multiply-8bit.log | 3728 ++--- src/test/ref/true-inline-words.log | 72 +- src/test/ref/voronoi.log | 828 +- 30 files changed, 36971 insertions(+), 36968 deletions(-) diff --git a/.idea/encodings.xml b/.idea/encodings.xml index 97626ba45..c0bce7084 100644 --- a/.idea/encodings.xml +++ b/.idea/encodings.xml @@ -1,6 +1,7 @@ + \ No newline at end of file diff --git a/pom.xml b/pom.xml index e94916758..908378cb8 100644 --- a/pom.xml +++ b/pom.xml @@ -82,6 +82,8 @@ maven-surefire-plugin false + classes + 5 diff --git a/src/main/java/dk/camelot64/kickc/passes/Pass5DoubleJumpElimination.java b/src/main/java/dk/camelot64/kickc/passes/Pass5DoubleJumpElimination.java index fcbf4c677..9d0971e6f 100644 --- a/src/main/java/dk/camelot64/kickc/passes/Pass5DoubleJumpElimination.java +++ b/src/main/java/dk/camelot64/kickc/passes/Pass5DoubleJumpElimination.java @@ -46,7 +46,7 @@ public class Pass5DoubleJumpElimination extends Pass5AsmOptimization { } if(asmInstruction.getType().equals(rtsType)) { immediateJumps.put(currentScope + "::" + currentLabel, "rts"); - } + } } currentLabel = null; } else { @@ -63,18 +63,18 @@ public class Pass5DoubleJumpElimination extends Pass5AsmOptimization { } else if(line instanceof AsmScopeEnd) { currentScope = ""; } else if(line instanceof AsmInstruction) { - AsmInstruction asmInstruction = (AsmInstruction) line; + AsmInstruction asmInstruction = (AsmInstruction) line; if(asmInstruction.getType().isJump()) { String immediateJmpTarget = immediateJumps.get(currentScope + "::" + asmInstruction.getParameter()); - if (immediateJmpTarget == "rts" && asmInstruction.getType().getMnemnonic()=="jmp") { - getLog().append("Replacing jump to rts with rts in " + asmInstruction.toString()); - AsmInstructionType rtsType = AsmInstructionSet.getInstructionType("rts", AsmAddressingMode.NON, false); - asmInstruction.setType(rtsType); - optimized = true; - } else if(immediateJmpTarget != null && immediateJmpTarget != "rts" && !immediateJmpTarget.equals(asmInstruction.getParameter())) { - getLog().append("Skipping double jump to " + immediateJmpTarget + " in " + asmInstruction.toString()); - asmInstruction.setParameter(immediateJmpTarget); - optimized = true; + if(immediateJmpTarget == "rts" && asmInstruction.getType().getMnemnonic() == "jmp") { + getLog().append("Replacing jump to rts with rts in " + asmInstruction.toString()); + AsmInstructionType rtsType = AsmInstructionSet.getInstructionType("rts", AsmAddressingMode.NON, false); + asmInstruction.setType(rtsType); + optimized = true; + } else if(immediateJmpTarget != null && immediateJmpTarget != "rts" && !immediateJmpTarget.equals(asmInstruction.getParameter())) { + getLog().append("Skipping double jump to " + immediateJmpTarget + " in " + asmInstruction.toString()); + asmInstruction.setParameter(immediateJmpTarget); + optimized = true; } } } diff --git a/src/test/ref/assignment-compound.log b/src/test/ref/assignment-compound.log index dffcb1abc..5027be640 100644 --- a/src/test/ref/assignment-compound.log +++ b/src/test/ref/assignment-compound.log @@ -5,151 +5,151 @@ Identified constant variable (byte) RED CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte[]) ref#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) $12, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte*) screen1#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*~) $0 ? (byte*) screen1#0 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) screen2#0 ? (byte*~) $0 - (byte*) cols#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte[]) ref#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) $12, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte*) screen1#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*~) $0 ← (byte*) screen1#0 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) screen2#0 ← (byte*~) $0 + (byte*) cols#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 to:@2 main: scope:[main] from @2 - (byte*) screen2#2 ? phi( @2/(byte*) screen2#13 ) - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) main::a#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) test::i#0 ? (byte) main::i#0 - (byte) test::a#0 ? (byte) main::a#0 + (byte*) screen2#2 ← phi( @2/(byte*) screen2#13 ) + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) main::a#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) test::i#0 ← (byte) main::i#0 + (byte) test::a#0 ← (byte) main::a#0 call test to:main::@1 main::@1: scope:[main] from main - (byte*) screen2#3 ? phi( main/(byte*) screen2#2 ) - (byte) main::a#11 ? phi( main/(byte) main::a#0 ) - (byte) main::i#12 ? phi( main/(byte) main::i#0 ) - (byte) main::i#1 ? ++ (byte) main::i#12 - (byte) main::a#1 ? (byte) main::a#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) test::i#1 ? (byte) main::i#1 - (byte) test::a#1 ? (byte) main::a#1 + (byte*) screen2#3 ← phi( main/(byte*) screen2#2 ) + (byte) main::a#11 ← phi( main/(byte) main::a#0 ) + (byte) main::i#12 ← phi( main/(byte) main::i#0 ) + (byte) main::i#1 ← ++ (byte) main::i#12 + (byte) main::a#1 ← (byte) main::a#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) test::i#1 ← (byte) main::i#1 + (byte) test::a#1 ← (byte) main::a#1 call test to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) screen2#5 ? phi( main::@1/(byte*) screen2#3 ) - (byte) main::a#12 ? phi( main::@1/(byte) main::a#1 ) - (byte) main::i#13 ? phi( main::@1/(byte) main::i#1 ) - (byte) main::i#2 ? ++ (byte) main::i#13 - (byte) main::a#2 ? (byte) main::a#12 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) test::i#2 ? (byte) main::i#2 - (byte) test::a#2 ? (byte) main::a#2 + (byte*) screen2#5 ← phi( main::@1/(byte*) screen2#3 ) + (byte) main::a#12 ← phi( main::@1/(byte) main::a#1 ) + (byte) main::i#13 ← phi( main::@1/(byte) main::i#1 ) + (byte) main::i#2 ← ++ (byte) main::i#13 + (byte) main::a#2 ← (byte) main::a#12 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) test::i#2 ← (byte) main::i#2 + (byte) test::a#2 ← (byte) main::a#2 call test to:main::@3 main::@3: scope:[main] from main::@2 - (byte*) screen2#6 ? phi( main::@2/(byte*) screen2#5 ) - (byte) main::a#13 ? phi( main::@2/(byte) main::a#2 ) - (byte) main::i#14 ? phi( main::@2/(byte) main::i#2 ) - (byte) main::i#3 ? ++ (byte) main::i#14 - (byte) main::a#3 ? (byte) main::a#13 * (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) test::i#3 ? (byte) main::i#3 - (byte) test::a#3 ? (byte) main::a#3 + (byte*) screen2#6 ← phi( main::@2/(byte*) screen2#5 ) + (byte) main::a#13 ← phi( main::@2/(byte) main::a#2 ) + (byte) main::i#14 ← phi( main::@2/(byte) main::i#2 ) + (byte) main::i#3 ← ++ (byte) main::i#14 + (byte) main::a#3 ← (byte) main::a#13 * (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) test::i#3 ← (byte) main::i#3 + (byte) test::a#3 ← (byte) main::a#3 call test to:main::@4 main::@4: scope:[main] from main::@3 - (byte*) screen2#7 ? phi( main::@3/(byte*) screen2#6 ) - (byte) main::a#14 ? phi( main::@3/(byte) main::a#3 ) - (byte) main::i#15 ? phi( main::@3/(byte) main::i#3 ) - (byte) main::i#4 ? ++ (byte) main::i#15 - (byte) main::a#4 ? (byte) main::a#14 / (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) test::i#4 ? (byte) main::i#4 - (byte) test::a#4 ? (byte) main::a#4 + (byte*) screen2#7 ← phi( main::@3/(byte*) screen2#6 ) + (byte) main::a#14 ← phi( main::@3/(byte) main::a#3 ) + (byte) main::i#15 ← phi( main::@3/(byte) main::i#3 ) + (byte) main::i#4 ← ++ (byte) main::i#15 + (byte) main::a#4 ← (byte) main::a#14 / (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) test::i#4 ← (byte) main::i#4 + (byte) test::a#4 ← (byte) main::a#4 call test to:main::@5 main::@5: scope:[main] from main::@4 - (byte*) screen2#8 ? phi( main::@4/(byte*) screen2#7 ) - (byte) main::a#15 ? phi( main::@4/(byte) main::a#4 ) - (byte) main::i#16 ? phi( main::@4/(byte) main::i#4 ) - (byte) main::i#5 ? ++ (byte) main::i#16 - (byte) main::a#5 ? (byte) main::a#15 % (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) test::i#5 ? (byte) main::i#5 - (byte) test::a#5 ? (byte) main::a#5 + (byte*) screen2#8 ← phi( main::@4/(byte*) screen2#7 ) + (byte) main::a#15 ← phi( main::@4/(byte) main::a#4 ) + (byte) main::i#16 ← phi( main::@4/(byte) main::i#4 ) + (byte) main::i#5 ← ++ (byte) main::i#16 + (byte) main::a#5 ← (byte) main::a#15 % (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) test::i#5 ← (byte) main::i#5 + (byte) test::a#5 ← (byte) main::a#5 call test to:main::@6 main::@6: scope:[main] from main::@5 - (byte*) screen2#9 ? phi( main::@5/(byte*) screen2#8 ) - (byte) main::a#16 ? phi( main::@5/(byte) main::a#5 ) - (byte) main::i#17 ? phi( main::@5/(byte) main::i#5 ) - (byte) main::i#6 ? ++ (byte) main::i#17 - (byte) main::a#6 ? (byte) main::a#16 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) test::i#6 ? (byte) main::i#6 - (byte) test::a#6 ? (byte) main::a#6 + (byte*) screen2#9 ← phi( main::@5/(byte*) screen2#8 ) + (byte) main::a#16 ← phi( main::@5/(byte) main::a#5 ) + (byte) main::i#17 ← phi( main::@5/(byte) main::i#5 ) + (byte) main::i#6 ← ++ (byte) main::i#17 + (byte) main::a#6 ← (byte) main::a#16 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) test::i#6 ← (byte) main::i#6 + (byte) test::a#6 ← (byte) main::a#6 call test to:main::@7 main::@7: scope:[main] from main::@6 - (byte*) screen2#10 ? phi( main::@6/(byte*) screen2#9 ) - (byte) main::a#17 ? phi( main::@6/(byte) main::a#6 ) - (byte) main::i#18 ? phi( main::@6/(byte) main::i#6 ) - (byte) main::i#7 ? ++ (byte) main::i#18 - (byte) main::a#7 ? (byte) main::a#17 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) test::i#7 ? (byte) main::i#7 - (byte) test::a#7 ? (byte) main::a#7 + (byte*) screen2#10 ← phi( main::@6/(byte*) screen2#9 ) + (byte) main::a#17 ← phi( main::@6/(byte) main::a#6 ) + (byte) main::i#18 ← phi( main::@6/(byte) main::i#6 ) + (byte) main::i#7 ← ++ (byte) main::i#18 + (byte) main::a#7 ← (byte) main::a#17 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) test::i#7 ← (byte) main::i#7 + (byte) test::a#7 ← (byte) main::a#7 call test to:main::@8 main::@8: scope:[main] from main::@7 - (byte*) screen2#11 ? phi( main::@7/(byte*) screen2#10 ) - (byte) main::a#18 ? phi( main::@7/(byte) main::a#7 ) - (byte) main::i#19 ? phi( main::@7/(byte) main::i#7 ) - (byte) main::i#8 ? ++ (byte) main::i#19 - (byte) main::a#8 ? (byte) main::a#18 ^ (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) test::i#8 ? (byte) main::i#8 - (byte) test::a#8 ? (byte) main::a#8 + (byte*) screen2#11 ← phi( main::@7/(byte*) screen2#10 ) + (byte) main::a#18 ← phi( main::@7/(byte) main::a#7 ) + (byte) main::i#19 ← phi( main::@7/(byte) main::i#7 ) + (byte) main::i#8 ← ++ (byte) main::i#19 + (byte) main::a#8 ← (byte) main::a#18 ^ (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) test::i#8 ← (byte) main::i#8 + (byte) test::a#8 ← (byte) main::a#8 call test to:main::@9 main::@9: scope:[main] from main::@8 - (byte*) screen2#12 ? phi( main::@8/(byte*) screen2#11 ) - (byte) main::a#19 ? phi( main::@8/(byte) main::a#8 ) - (byte) main::i#20 ? phi( main::@8/(byte) main::i#8 ) - (byte) main::i#9 ? ++ (byte) main::i#20 - (byte) main::a#9 ? (byte) main::a#19 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) test::i#9 ? (byte) main::i#9 - (byte) test::a#9 ? (byte) main::a#9 + (byte*) screen2#12 ← phi( main::@8/(byte*) screen2#11 ) + (byte) main::a#19 ← phi( main::@8/(byte) main::a#8 ) + (byte) main::i#20 ← phi( main::@8/(byte) main::i#8 ) + (byte) main::i#9 ← ++ (byte) main::i#20 + (byte) main::a#9 ← (byte) main::a#19 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) test::i#9 ← (byte) main::i#9 + (byte) test::a#9 ← (byte) main::a#9 call test to:main::@10 main::@10: scope:[main] from main::@9 - (byte*) screen2#4 ? phi( main::@9/(byte*) screen2#12 ) - (byte) main::a#20 ? phi( main::@9/(byte) main::a#9 ) - (byte) main::i#21 ? phi( main::@9/(byte) main::i#9 ) - (byte) main::i#10 ? ++ (byte) main::i#21 - (byte) main::a#10 ? (byte) main::a#20 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) test::i#10 ? (byte) main::i#10 - (byte) test::a#10 ? (byte) main::a#10 + (byte*) screen2#4 ← phi( main::@9/(byte*) screen2#12 ) + (byte) main::a#20 ← phi( main::@9/(byte) main::a#9 ) + (byte) main::i#21 ← phi( main::@9/(byte) main::i#9 ) + (byte) main::i#10 ← ++ (byte) main::i#21 + (byte) main::a#10 ← (byte) main::a#20 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) test::i#10 ← (byte) main::i#10 + (byte) test::a#10 ← (byte) main::a#10 call test to:main::@11 main::@11: scope:[main] from main::@10 - (byte) main::i#22 ? phi( main::@10/(byte) main::i#10 ) - (byte) main::i#11 ? ++ (byte) main::i#22 + (byte) main::i#22 ← phi( main::@10/(byte) main::i#10 ) + (byte) main::i#11 ← ++ (byte) main::i#22 to:main::@return main::@return: scope:[main] from main::@11 return to:@return test: scope:[test] from main main::@1 main::@10 main::@2 main::@3 main::@4 main::@5 main::@6 main::@7 main::@8 main::@9 - (byte*) screen2#1 ? phi( main/(byte*) screen2#2 main::@1/(byte*) screen2#3 main::@10/(byte*) screen2#4 main::@2/(byte*) screen2#5 main::@3/(byte*) screen2#6 main::@4/(byte*) screen2#7 main::@5/(byte*) screen2#8 main::@6/(byte*) screen2#9 main::@7/(byte*) screen2#10 main::@8/(byte*) screen2#11 main::@9/(byte*) screen2#12 ) - (byte) test::i#11 ? phi( main/(byte) test::i#0 main::@1/(byte) test::i#1 main::@10/(byte) test::i#10 main::@2/(byte) test::i#2 main::@3/(byte) test::i#3 main::@4/(byte) test::i#4 main::@5/(byte) test::i#5 main::@6/(byte) test::i#6 main::@7/(byte) test::i#7 main::@8/(byte) test::i#8 main::@9/(byte) test::i#9 ) - (byte) test::a#11 ? phi( main/(byte) test::a#0 main::@1/(byte) test::a#1 main::@10/(byte) test::a#10 main::@2/(byte) test::a#2 main::@3/(byte) test::a#3 main::@4/(byte) test::a#4 main::@5/(byte) test::a#5 main::@6/(byte) test::a#6 main::@7/(byte) test::a#7 main::@8/(byte) test::a#8 main::@9/(byte) test::a#9 ) - *((byte*) screen1#0 + (byte) test::i#11) ? (byte) test::a#11 - *((byte*) screen2#1 + (byte) test::i#11) ? *((byte[]) ref#0 + (byte) test::i#11) - (bool~) test::$0 ? *((byte[]) ref#0 + (byte) test::i#11) == (byte) test::a#11 + (byte*) screen2#1 ← phi( main/(byte*) screen2#2 main::@1/(byte*) screen2#3 main::@10/(byte*) screen2#4 main::@2/(byte*) screen2#5 main::@3/(byte*) screen2#6 main::@4/(byte*) screen2#7 main::@5/(byte*) screen2#8 main::@6/(byte*) screen2#9 main::@7/(byte*) screen2#10 main::@8/(byte*) screen2#11 main::@9/(byte*) screen2#12 ) + (byte) test::i#11 ← phi( main/(byte) test::i#0 main::@1/(byte) test::i#1 main::@10/(byte) test::i#10 main::@2/(byte) test::i#2 main::@3/(byte) test::i#3 main::@4/(byte) test::i#4 main::@5/(byte) test::i#5 main::@6/(byte) test::i#6 main::@7/(byte) test::i#7 main::@8/(byte) test::i#8 main::@9/(byte) test::i#9 ) + (byte) test::a#11 ← phi( main/(byte) test::a#0 main::@1/(byte) test::a#1 main::@10/(byte) test::a#10 main::@2/(byte) test::a#2 main::@3/(byte) test::a#3 main::@4/(byte) test::a#4 main::@5/(byte) test::a#5 main::@6/(byte) test::a#6 main::@7/(byte) test::a#7 main::@8/(byte) test::a#8 main::@9/(byte) test::a#9 ) + *((byte*) screen1#0 + (byte) test::i#11) ← (byte) test::a#11 + *((byte*) screen2#1 + (byte) test::i#11) ← *((byte[]) ref#0 + (byte) test::i#11) + (bool~) test::$0 ← *((byte[]) ref#0 + (byte) test::i#11) == (byte) test::a#11 if((bool~) test::$0) goto test::@1 to:test::@3 test::@1: scope:[test] from test - (byte) test::i#12 ? phi( test/(byte) test::i#11 ) - *((byte*) cols#0 + (byte) test::i#12) ? (byte) GREEN#0 + (byte) test::i#12 ← phi( test/(byte) test::i#11 ) + *((byte*) cols#0 + (byte) test::i#12) ← (byte) GREEN#0 to:test::@return test::@3: scope:[test] from test - (byte) test::i#13 ? phi( test/(byte) test::i#11 ) - *((byte*) cols#0 + (byte) test::i#13) ? (byte) RED#0 + (byte) test::i#13 ← phi( test/(byte) test::i#11 ) + *((byte*) cols#0 + (byte) test::i#13) ← (byte) RED#0 to:test::@return test::@return: scope:[test] from test::@1 test::@3 return to:@return @2: scope:[] from @begin - (byte*) screen2#13 ? phi( @begin/(byte*) screen2#0 ) + (byte*) screen2#13 ← phi( @begin/(byte*) screen2#0 ) call main to:@3 @3: scope:[] from @2 @@ -584,20 +584,20 @@ main::@return: scope:[main] from main::@10 [26] return to:@return test: scope:[test] from main main::@1 main::@10 main::@2 main::@3 main::@4 main::@5 main::@6 main::@7 main::@8 main::@9 - [27] (byte) test::i#11 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 main::@10/(byte/signed byte/word/signed word/dword/signed dword) $a main::@2/(byte/signed byte/word/signed word/dword/signed dword) 2 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 3 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 4 main::@5/(byte/signed byte/word/signed word/dword/signed dword) 5 main::@6/(byte/signed byte/word/signed word/dword/signed dword) 6 main::@7/(byte/signed byte/word/signed word/dword/signed dword) 7 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 8 main::@9/(byte/signed byte/word/signed word/dword/signed dword) 9 ) - [27] (byte) test::a#11 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 3 main::@1/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1 main::@10/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1^(byte/signed byte/word/signed word/dword/signed dword) 6|(byte/signed byte/word/signed word/dword/signed dword) 1&(byte/signed byte/word/signed word/dword/signed dword) 1 main::@2/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2 main::@5/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2 main::@6/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2 main::@7/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1^(byte/signed byte/word/signed word/dword/signed dword) 6 main::@9/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1^(byte/signed byte/word/signed word/dword/signed dword) 6|(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [28] *((const byte*) screen1#0 + (byte) test::i#11) ? (byte) test::a#11 - [29] *((const byte*) screen2#0 + (byte) test::i#11) ? *((const byte[]) ref#0 + (byte) test::i#11) + [27] (byte) test::i#11 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 main::@10/(byte/signed byte/word/signed word/dword/signed dword) $a main::@2/(byte/signed byte/word/signed word/dword/signed dword) 2 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 3 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 4 main::@5/(byte/signed byte/word/signed word/dword/signed dword) 5 main::@6/(byte/signed byte/word/signed word/dword/signed dword) 6 main::@7/(byte/signed byte/word/signed word/dword/signed dword) 7 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 8 main::@9/(byte/signed byte/word/signed word/dword/signed dword) 9 ) + [27] (byte) test::a#11 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 3 main::@1/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1 main::@10/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1^(byte/signed byte/word/signed word/dword/signed dword) 6|(byte/signed byte/word/signed word/dword/signed dword) 1&(byte/signed byte/word/signed word/dword/signed dword) 1 main::@2/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2 main::@5/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2 main::@6/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2 main::@7/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1 main::@8/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1^(byte/signed byte/word/signed word/dword/signed dword) 6 main::@9/(byte/signed byte/word/signed word/dword/signed dword) 3+(byte/signed byte/word/signed word/dword/signed dword) 1-(byte/signed byte/word/signed word/dword/signed dword) 1*(byte/signed byte/word/signed word/dword/signed dword) 6/(byte/signed byte/word/signed word/dword/signed dword) 2%(byte/signed byte/word/signed word/dword/signed dword) 2<<(byte/signed byte/word/signed word/dword/signed dword) 2>>(byte/signed byte/word/signed word/dword/signed dword) 1^(byte/signed byte/word/signed word/dword/signed dword) 6|(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [28] *((const byte*) screen1#0 + (byte) test::i#11) ← (byte) test::a#11 + [29] *((const byte*) screen2#0 + (byte) test::i#11) ← *((const byte[]) ref#0 + (byte) test::i#11) [30] if(*((const byte[]) ref#0 + (byte) test::i#11)==(byte) test::a#11) goto test::@1 to:test::@2 test::@2: scope:[test] from test - [31] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) RED#0 + [31] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) RED#0 to:test::@return test::@return: scope:[test] from test::@1 test::@2 [32] return to:@return test::@1: scope:[test] from test - [33] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) GREEN#0 + [33] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) GREEN#0 to:test::@return @@ -828,11 +828,11 @@ main: { test: { .label a = 2 .label i = 3 - //SEG78 [28] *((const byte*) screen1#0 + (byte) test::i#11) ? (byte) test::a#11 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG78 [28] *((const byte*) screen1#0 + (byte) test::i#11) ← (byte) test::a#11 -- pbuc1_derefidx_vbuz1=vbuz2 lda a ldy i sta screen1,y - //SEG79 [29] *((const byte*) screen2#0 + (byte) test::i#11) ? *((const byte[]) ref#0 + (byte) test::i#11) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG79 [29] *((const byte*) screen2#0 + (byte) test::i#11) ← *((const byte[]) ref#0 + (byte) test::i#11) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda ref,y sta screen2,y @@ -844,7 +844,7 @@ test: { jmp b2 //SEG81 test::@2 b2: - //SEG82 [31] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) RED#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG82 [31] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) RED#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #RED ldy i sta cols,y @@ -855,7 +855,7 @@ test: { rts //SEG85 test::@1 b1: - //SEG86 [33] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) GREEN#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG86 [33] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #GREEN ldy i sta cols,y @@ -864,17 +864,17 @@ test: { ref: .byte 3, 4, 3, $12, 9, 1, 4, 2, 4, 5, 1, 0 REGISTER UPLIFT POTENTIAL REGISTERS -Statement [29] *((const byte*) screen2#0 + (byte) test::i#11) ? *((const byte[]) ref#0 + (byte) test::i#11) [ test::a#11 test::i#11 ] ( main:2::test:5 [ test::a#11 test::i#11 ] main:2::test:7 [ test::a#11 test::i#11 ] main:2::test:9 [ test::a#11 test::i#11 ] main:2::test:11 [ test::a#11 test::i#11 ] main:2::test:13 [ test::a#11 test::i#11 ] main:2::test:15 [ test::a#11 test::i#11 ] main:2::test:17 [ test::a#11 test::i#11 ] main:2::test:19 [ test::a#11 test::i#11 ] main:2::test:21 [ test::a#11 test::i#11 ] main:2::test:23 [ test::a#11 test::i#11 ] main:2::test:25 [ test::a#11 test::i#11 ] ) always clobbers reg byte a +Statement [29] *((const byte*) screen2#0 + (byte) test::i#11) ← *((const byte[]) ref#0 + (byte) test::i#11) [ test::a#11 test::i#11 ] ( main:2::test:5 [ test::a#11 test::i#11 ] main:2::test:7 [ test::a#11 test::i#11 ] main:2::test:9 [ test::a#11 test::i#11 ] main:2::test:11 [ test::a#11 test::i#11 ] main:2::test:13 [ test::a#11 test::i#11 ] main:2::test:15 [ test::a#11 test::i#11 ] main:2::test:17 [ test::a#11 test::i#11 ] main:2::test:19 [ test::a#11 test::i#11 ] main:2::test:21 [ test::a#11 test::i#11 ] main:2::test:23 [ test::a#11 test::i#11 ] main:2::test:25 [ test::a#11 test::i#11 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ test::a#11 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ test::i#11 ] Statement [30] if(*((const byte[]) ref#0 + (byte) test::i#11)==(byte) test::a#11) goto test::@1 [ test::i#11 ] ( main:2::test:5 [ test::i#11 ] main:2::test:7 [ test::i#11 ] main:2::test:9 [ test::i#11 ] main:2::test:11 [ test::i#11 ] main:2::test:13 [ test::i#11 ] main:2::test:15 [ test::i#11 ] main:2::test:17 [ test::i#11 ] main:2::test:19 [ test::i#11 ] main:2::test:21 [ test::i#11 ] main:2::test:23 [ test::i#11 ] main:2::test:25 [ test::i#11 ] ) always clobbers reg byte a -Statement [31] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) RED#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a -Statement [33] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) GREEN#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a -Statement [28] *((const byte*) screen1#0 + (byte) test::i#11) ? (byte) test::a#11 [ test::a#11 test::i#11 ] ( main:2::test:5 [ test::a#11 test::i#11 ] main:2::test:7 [ test::a#11 test::i#11 ] main:2::test:9 [ test::a#11 test::i#11 ] main:2::test:11 [ test::a#11 test::i#11 ] main:2::test:13 [ test::a#11 test::i#11 ] main:2::test:15 [ test::a#11 test::i#11 ] main:2::test:17 [ test::a#11 test::i#11 ] main:2::test:19 [ test::a#11 test::i#11 ] main:2::test:21 [ test::a#11 test::i#11 ] main:2::test:23 [ test::a#11 test::i#11 ] main:2::test:25 [ test::a#11 test::i#11 ] ) always clobbers reg byte a -Statement [29] *((const byte*) screen2#0 + (byte) test::i#11) ? *((const byte[]) ref#0 + (byte) test::i#11) [ test::a#11 test::i#11 ] ( main:2::test:5 [ test::a#11 test::i#11 ] main:2::test:7 [ test::a#11 test::i#11 ] main:2::test:9 [ test::a#11 test::i#11 ] main:2::test:11 [ test::a#11 test::i#11 ] main:2::test:13 [ test::a#11 test::i#11 ] main:2::test:15 [ test::a#11 test::i#11 ] main:2::test:17 [ test::a#11 test::i#11 ] main:2::test:19 [ test::a#11 test::i#11 ] main:2::test:21 [ test::a#11 test::i#11 ] main:2::test:23 [ test::a#11 test::i#11 ] main:2::test:25 [ test::a#11 test::i#11 ] ) always clobbers reg byte a +Statement [31] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) RED#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a +Statement [33] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) GREEN#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a +Statement [28] *((const byte*) screen1#0 + (byte) test::i#11) ← (byte) test::a#11 [ test::a#11 test::i#11 ] ( main:2::test:5 [ test::a#11 test::i#11 ] main:2::test:7 [ test::a#11 test::i#11 ] main:2::test:9 [ test::a#11 test::i#11 ] main:2::test:11 [ test::a#11 test::i#11 ] main:2::test:13 [ test::a#11 test::i#11 ] main:2::test:15 [ test::a#11 test::i#11 ] main:2::test:17 [ test::a#11 test::i#11 ] main:2::test:19 [ test::a#11 test::i#11 ] main:2::test:21 [ test::a#11 test::i#11 ] main:2::test:23 [ test::a#11 test::i#11 ] main:2::test:25 [ test::a#11 test::i#11 ] ) always clobbers reg byte a +Statement [29] *((const byte*) screen2#0 + (byte) test::i#11) ← *((const byte[]) ref#0 + (byte) test::i#11) [ test::a#11 test::i#11 ] ( main:2::test:5 [ test::a#11 test::i#11 ] main:2::test:7 [ test::a#11 test::i#11 ] main:2::test:9 [ test::a#11 test::i#11 ] main:2::test:11 [ test::a#11 test::i#11 ] main:2::test:13 [ test::a#11 test::i#11 ] main:2::test:15 [ test::a#11 test::i#11 ] main:2::test:17 [ test::a#11 test::i#11 ] main:2::test:19 [ test::a#11 test::i#11 ] main:2::test:21 [ test::a#11 test::i#11 ] main:2::test:23 [ test::a#11 test::i#11 ] main:2::test:25 [ test::a#11 test::i#11 ] ) always clobbers reg byte a Statement [30] if(*((const byte[]) ref#0 + (byte) test::i#11)==(byte) test::a#11) goto test::@1 [ test::i#11 ] ( main:2::test:5 [ test::i#11 ] main:2::test:7 [ test::i#11 ] main:2::test:9 [ test::i#11 ] main:2::test:11 [ test::i#11 ] main:2::test:13 [ test::i#11 ] main:2::test:15 [ test::i#11 ] main:2::test:17 [ test::i#11 ] main:2::test:19 [ test::i#11 ] main:2::test:21 [ test::i#11 ] main:2::test:23 [ test::i#11 ] main:2::test:25 [ test::i#11 ] ) always clobbers reg byte a -Statement [31] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) RED#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a -Statement [33] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) GREEN#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a +Statement [31] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) RED#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a +Statement [33] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) GREEN#0 [ ] ( main:2::test:5 [ ] main:2::test:7 [ ] main:2::test:9 [ ] main:2::test:11 [ ] main:2::test:13 [ ] main:2::test:15 [ ] main:2::test:17 [ ] main:2::test:19 [ ] main:2::test:21 [ ] main:2::test:23 [ ] main:2::test:25 [ ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ test::a#11 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , Potential registers zp ZP_BYTE:3 [ test::i#11 ] : zp ZP_BYTE:3 , reg byte x , reg byte y , @@ -1079,10 +1079,10 @@ main: { // test(byte register(X) i, byte zeropage(2) a) test: { .label a = 2 - //SEG78 [28] *((const byte*) screen1#0 + (byte) test::i#11) ? (byte) test::a#11 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG78 [28] *((const byte*) screen1#0 + (byte) test::i#11) ← (byte) test::a#11 -- pbuc1_derefidx_vbuxx=vbuz1 lda a sta screen1,x - //SEG79 [29] *((const byte*) screen2#0 + (byte) test::i#11) ? *((const byte[]) ref#0 + (byte) test::i#11) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG79 [29] *((const byte*) screen2#0 + (byte) test::i#11) ← *((const byte[]) ref#0 + (byte) test::i#11) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda ref,x sta screen2,x //SEG80 [30] if(*((const byte[]) ref#0 + (byte) test::i#11)==(byte) test::a#11) goto test::@1 -- pbuc1_derefidx_vbuxx_eq_vbuz1_then_la1 @@ -1092,7 +1092,7 @@ test: { jmp b2 //SEG81 test::@2 b2: - //SEG82 [31] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) RED#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG82 [31] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) RED#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #RED sta cols,x jmp breturn @@ -1102,7 +1102,7 @@ test: { rts //SEG85 test::@1 b1: - //SEG86 [33] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG86 [33] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #GREEN sta cols,x jmp breturn @@ -1358,10 +1358,10 @@ main: { // test(byte register(X) i, byte zeropage(2) a) test: { .label a = 2 - //SEG78 [28] *((const byte*) screen1#0 + (byte) test::i#11) ? (byte) test::a#11 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG78 [28] *((const byte*) screen1#0 + (byte) test::i#11) ← (byte) test::a#11 -- pbuc1_derefidx_vbuxx=vbuz1 lda a sta screen1,x - //SEG79 [29] *((const byte*) screen2#0 + (byte) test::i#11) ? *((const byte[]) ref#0 + (byte) test::i#11) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG79 [29] *((const byte*) screen2#0 + (byte) test::i#11) ← *((const byte[]) ref#0 + (byte) test::i#11) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda ref,x sta screen2,x //SEG80 [30] if(*((const byte[]) ref#0 + (byte) test::i#11)==(byte) test::a#11) goto test::@1 -- pbuc1_derefidx_vbuxx_eq_vbuz1_then_la1 @@ -1369,7 +1369,7 @@ test: { cmp a beq b1 //SEG81 test::@2 - //SEG82 [31] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) RED#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG82 [31] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) RED#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #RED sta cols,x //SEG83 test::@return @@ -1377,7 +1377,7 @@ test: { rts //SEG85 test::@1 b1: - //SEG86 [33] *((const byte*) cols#0 + (byte) test::i#11) ? (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG86 [33] *((const byte*) cols#0 + (byte) test::i#11) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #GREEN sta cols,x rts diff --git a/src/test/ref/bool-pointer.log b/src/test/ref/bool-pointer.log index e13d86eec..ab20c7d5a 100644 --- a/src/test/ref/bool-pointer.log +++ b/src/test/ref/bool-pointer.log @@ -3,21 +3,21 @@ CONTROL FLOW GRAPH SSA @begin: scope:[] from to:@1 main: scope:[main] from @1 - (bool*) main::bscreen#0 ? ((bool*)) (word/signed word/dword/signed dword) $400 - *((bool*) main::bscreen#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? true - *((bool*) main::bscreen#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ? false - (bool*~) main::$0 ? (bool*) main::bscreen#0 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool*) main::bscreen#1 ? (bool*~) main::$0 - *((bool*) main::bscreen#1) ? true - (bool~) main::$1 ? ! *((bool*) main::bscreen#1) + (bool*) main::bscreen#0 ← ((bool*)) (word/signed word/dword/signed dword) $400 + *((bool*) main::bscreen#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← true + *((bool*) main::bscreen#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← false + (bool*~) main::$0 ← (bool*) main::bscreen#0 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool*) main::bscreen#1 ← (bool*~) main::$0 + *((bool*) main::bscreen#1) ← true + (bool~) main::$1 ← ! *((bool*) main::bscreen#1) if((bool~) main::$1) goto main::@1 to:main::@2 main::@1: scope:[main] from main to:main::@return main::@2: scope:[main] from main - (bool*) main::bscreen#3 ? phi( main/(bool*) main::bscreen#1 ) - (bool*) main::bscreen#2 ? ++ (bool*) main::bscreen#3 - *((bool*) main::bscreen#2) ? true + (bool*) main::bscreen#3 ← phi( main/(bool*) main::bscreen#1 ) + (bool*) main::bscreen#2 ← ++ (bool*) main::bscreen#3 + *((bool*) main::bscreen#2) ← true to:main::@return main::@return: scope:[main] from main::@1 main::@2 return @@ -51,7 +51,7 @@ Culled Empty Block (label) @2 Successful SSA optimization Pass2CullEmptyBlocks Alias (bool*) main::bscreen#1 = (bool*~) main::$0 (bool*) main::bscreen#3 Successful SSA optimization Pass2AliasElimination -Rewriting ! if()-condition to reversed if() [6] (bool~) main::$1 ? ! *((bool*) main::bscreen#1) +Rewriting ! if()-condition to reversed if() [6] (bool~) main::$1 ← ! *((bool*) main::bscreen#1) Successful SSA optimization Pass2ConditionalAndOrRewriting Constant (const bool*) main::bscreen#0 = ((bool*))$400 Successful SSA optimization Pass2ConstantIdentification @@ -94,16 +94,16 @@ FINAL CONTROL FLOW GRAPH @end: scope:[] from @1 [3] phi() main: scope:[main] from @1 - [4] *(((bool*))(word/signed word/dword/signed dword) $400) ? true - [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ? false - [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true + [4] *(((bool*))(word/signed word/dword/signed dword) $400) ← true + [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ← false + [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true [7] if(*(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2)) goto main::@1 to:main::@return main::@return: scope:[main] from main main::@1 [8] return to:@return main::@1: scope:[main] from main - [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true + [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true to:main::@return @@ -138,13 +138,13 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *(((bool*))(word/signed word/dword/signed dword) $400) ? true -- _deref_pboc1=vboc2 + //SEG10 [4] *(((bool*))(word/signed word/dword/signed dword) $400) ← true -- _deref_pboc1=vboc2 lda #1 sta $400 - //SEG11 [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ? false -- _deref_pboc1=vboc2 + //SEG11 [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ← false -- _deref_pboc1=vboc2 lda #0 sta $400+1 - //SEG12 [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true -- _deref_pboc1=vboc2 + //SEG12 [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true -- _deref_pboc1=vboc2 lda #1 sta $400+2 //SEG13 [7] if(*(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2)) goto main::@1 -- _deref_pboc1_then_la1 @@ -158,18 +158,18 @@ main: { rts //SEG16 main::@1 b1: - //SEG17 [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true -- _deref_pboc1=vboc2 + //SEG17 [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true -- _deref_pboc1=vboc2 lda #1 sta $400+2+1 jmp breturn } REGISTER UPLIFT POTENTIAL REGISTERS -Statement [4] *(((bool*))(word/signed word/dword/signed dword) $400) ? true [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ? false [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [4] *(((bool*))(word/signed word/dword/signed dword) $400) ← true [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ← false [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true [ ] ( main:2 [ ] ) always clobbers reg byte a Statement [7] if(*(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2)) goto main::@1 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true [ ] ( main:2 [ ] ) always clobbers reg byte a REGISTER UPLIFT SCOPES Uplift Scope [main] @@ -202,13 +202,13 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *(((bool*))(word/signed word/dword/signed dword) $400) ? true -- _deref_pboc1=vboc2 + //SEG10 [4] *(((bool*))(word/signed word/dword/signed dword) $400) ← true -- _deref_pboc1=vboc2 lda #1 sta $400 - //SEG11 [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ? false -- _deref_pboc1=vboc2 + //SEG11 [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ← false -- _deref_pboc1=vboc2 lda #0 sta $400+1 - //SEG12 [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true -- _deref_pboc1=vboc2 + //SEG12 [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true -- _deref_pboc1=vboc2 lda #1 sta $400+2 //SEG13 [7] if(*(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2)) goto main::@1 -- _deref_pboc1_then_la1 @@ -222,7 +222,7 @@ main: { rts //SEG16 main::@1 b1: - //SEG17 [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true -- _deref_pboc1=vboc2 + //SEG17 [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true -- _deref_pboc1=vboc2 lda #1 sta $400+2+1 jmp breturn @@ -279,13 +279,13 @@ Score: 40 //SEG8 @end //SEG9 main main: { - //SEG10 [4] *(((bool*))(word/signed word/dword/signed dword) $400) ? true -- _deref_pboc1=vboc2 + //SEG10 [4] *(((bool*))(word/signed word/dword/signed dword) $400) ← true -- _deref_pboc1=vboc2 lda #1 sta $400 - //SEG11 [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ? false -- _deref_pboc1=vboc2 + //SEG11 [5] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 1) ← false -- _deref_pboc1=vboc2 lda #0 sta $400+1 - //SEG12 [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true -- _deref_pboc1=vboc2 + //SEG12 [6] *(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true -- _deref_pboc1=vboc2 lda #1 sta $400+2 //SEG13 [7] if(*(((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2)) goto main::@1 -- _deref_pboc1_then_la1 @@ -296,7 +296,7 @@ main: { rts //SEG16 main::@1 b1: - //SEG17 [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ? true -- _deref_pboc1=vboc2 + //SEG17 [9] *(++((bool*))(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) 2) ← true -- _deref_pboc1=vboc2 lda #1 sta $400+2+1 rts diff --git a/src/test/ref/c64dtv-gfxexplorer.log b/src/test/ref/c64dtv-gfxexplorer.log index 9da871dab..6f318d8f1 100644 --- a/src/test/ref/c64dtv-gfxexplorer.log +++ b/src/test/ref/c64dtv-gfxexplorer.log @@ -2,1027 +2,1027 @@ Identified constant variable (byte*) dtvSetCpuBankSegment1::cpuBank Identified constant variable (byte*) DTV_BLITTER_ALU Identified constant variable (byte) form_fields_cnt Identified constant variable (byte) gfx_init_vic_bitmap::lines_cnt -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte*) DTV_FEATURE#0 ? ((byte*)) (word/dword/signed dword) $d03f - (byte) DTV_FEATURE_ENABLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_FEATURE_DISABLE_TIL_RESET#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) DTV_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d03c - (byte) DTV_LINEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BORDER_OFF#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_HIGHCOLOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_OVERSCAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_COLORRAM_OFF#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) DTV_BADLINE_OFF#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) DTV_CHUNKY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte*) DTV_PALETTE#0 ? ((byte*)) (word/dword/signed dword) $d200 - (byte[$10]) DTV_PALETTE_DEFAULT#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $36, (byte/word/signed word/dword/signed dword) $be, (byte/signed byte/word/signed word/dword/signed dword) $58, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $26, (byte/signed byte/word/signed word/dword/signed dword) $3b, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $9a, (byte/signed byte/word/signed word/dword/signed dword) $a } - (byte*) DTV_PLANEA_START_LO#0 ? ((byte*)) (word/dword/signed dword) $d03a - (byte*) DTV_PLANEA_START_MI#0 ? ((byte*)) (word/dword/signed dword) $d03b - (byte*) DTV_PLANEA_START_HI#0 ? ((byte*)) (word/dword/signed dword) $d045 - (byte*) DTV_PLANEA_STEP#0 ? ((byte*)) (word/dword/signed dword) $d046 - (byte*) DTV_PLANEA_MODULO_LO#0 ? ((byte*)) (word/dword/signed dword) $d038 - (byte*) DTV_PLANEA_MODULO_HI#0 ? ((byte*)) (word/dword/signed dword) $d039 - (byte*) DTV_PLANEB_START_LO#0 ? ((byte*)) (word/dword/signed dword) $d049 - (byte*) DTV_PLANEB_START_MI#0 ? ((byte*)) (word/dword/signed dword) $d04a - (byte*) DTV_PLANEB_START_HI#0 ? ((byte*)) (word/dword/signed dword) $d04b - (byte*) DTV_PLANEB_STEP#0 ? ((byte*)) (word/dword/signed dword) $d04c - (byte*) DTV_PLANEB_MODULO_LO#0 ? ((byte*)) (word/dword/signed dword) $d047 - (byte*) DTV_PLANEB_MODULO_HI#0 ? ((byte*)) (word/dword/signed dword) $d048 - (byte*) DTV_SPRITE_BANK#0 ? ((byte*)) (word/dword/signed dword) $d04d - (byte*) DTV_COLOR_BANK_LO#0 ? ((byte*)) (word/dword/signed dword) $d036 - (byte*) DTV_COLOR_BANK_HI#0 ? ((byte*)) (word/dword/signed dword) $d037 - (dword) DTV_COLOR_BANK_DEFAULT#0 ? (dword/signed dword) $1d800 - (byte*) DTV_GRAPHICS_VIC_BANK#0 ? ((byte*)) (word/dword/signed dword) $d03d - (byte*) DTV_GRAPHICS_HICOL_BANK#0 ? ((byte*)) (word/dword/signed dword) $d03e + (byte*) DTV_FEATURE#0 ← ((byte*)) (word/dword/signed dword) $d03f + (byte) DTV_FEATURE_ENABLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_FEATURE_DISABLE_TIL_RESET#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) DTV_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d03c + (byte) DTV_LINEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BORDER_OFF#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_HIGHCOLOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_OVERSCAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_COLORRAM_OFF#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) DTV_BADLINE_OFF#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) DTV_CHUNKY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte*) DTV_PALETTE#0 ← ((byte*)) (word/dword/signed dword) $d200 + (byte[$10]) DTV_PALETTE_DEFAULT#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $36, (byte/word/signed word/dword/signed dword) $be, (byte/signed byte/word/signed word/dword/signed dword) $58, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $26, (byte/signed byte/word/signed word/dword/signed dword) $3b, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $9a, (byte/signed byte/word/signed word/dword/signed dword) $a } + (byte*) DTV_PLANEA_START_LO#0 ← ((byte*)) (word/dword/signed dword) $d03a + (byte*) DTV_PLANEA_START_MI#0 ← ((byte*)) (word/dword/signed dword) $d03b + (byte*) DTV_PLANEA_START_HI#0 ← ((byte*)) (word/dword/signed dword) $d045 + (byte*) DTV_PLANEA_STEP#0 ← ((byte*)) (word/dword/signed dword) $d046 + (byte*) DTV_PLANEA_MODULO_LO#0 ← ((byte*)) (word/dword/signed dword) $d038 + (byte*) DTV_PLANEA_MODULO_HI#0 ← ((byte*)) (word/dword/signed dword) $d039 + (byte*) DTV_PLANEB_START_LO#0 ← ((byte*)) (word/dword/signed dword) $d049 + (byte*) DTV_PLANEB_START_MI#0 ← ((byte*)) (word/dword/signed dword) $d04a + (byte*) DTV_PLANEB_START_HI#0 ← ((byte*)) (word/dword/signed dword) $d04b + (byte*) DTV_PLANEB_STEP#0 ← ((byte*)) (word/dword/signed dword) $d04c + (byte*) DTV_PLANEB_MODULO_LO#0 ← ((byte*)) (word/dword/signed dword) $d047 + (byte*) DTV_PLANEB_MODULO_HI#0 ← ((byte*)) (word/dword/signed dword) $d048 + (byte*) DTV_SPRITE_BANK#0 ← ((byte*)) (word/dword/signed dword) $d04d + (byte*) DTV_COLOR_BANK_LO#0 ← ((byte*)) (word/dword/signed dword) $d036 + (byte*) DTV_COLOR_BANK_HI#0 ← ((byte*)) (word/dword/signed dword) $d037 + (dword) DTV_COLOR_BANK_DEFAULT#0 ← (dword/signed dword) $1d800 + (byte*) DTV_GRAPHICS_VIC_BANK#0 ← ((byte*)) (word/dword/signed dword) $d03d + (byte*) DTV_GRAPHICS_HICOL_BANK#0 ← ((byte*)) (word/dword/signed dword) $d03e to:@5 dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@6 gfx_init_plane_charset8 gfx_init_plane_charset8::@8 gfx_init_plane_fill gfx_init_plane_fill::@4 gfx_init_plane_horisontal gfx_init_plane_horisontal2 gfx_init_plane_horisontal2::@4 gfx_init_plane_horisontal::@8 gfx_init_plane_vertical gfx_init_plane_vertical::@4 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 ? phi( gfx_init_plane_8bppchunky/(byte) dtvSetCpuBankSegment1::cpuBankIdx#0 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#2 gfx_init_plane_charset8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#9 gfx_init_plane_charset8::@8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#10 gfx_init_plane_fill/(byte) dtvSetCpuBankSegment1::cpuBankIdx#11 gfx_init_plane_fill::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#12 gfx_init_plane_horisontal/(byte) dtvSetCpuBankSegment1::cpuBankIdx#3 gfx_init_plane_horisontal2/(byte) dtvSetCpuBankSegment1::cpuBankIdx#5 gfx_init_plane_horisontal2::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#6 gfx_init_plane_horisontal::@8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#4 gfx_init_plane_vertical/(byte) dtvSetCpuBankSegment1::cpuBankIdx#7 gfx_init_plane_vertical::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#8 ) - (byte*) dtvSetCpuBankSegment1::cpuBank#0 ? ((byte*)) (byte/word/signed word/dword/signed dword) $ff - *((byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 ← phi( gfx_init_plane_8bppchunky/(byte) dtvSetCpuBankSegment1::cpuBankIdx#0 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#2 gfx_init_plane_charset8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#9 gfx_init_plane_charset8::@8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#10 gfx_init_plane_fill/(byte) dtvSetCpuBankSegment1::cpuBankIdx#11 gfx_init_plane_fill::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#12 gfx_init_plane_horisontal/(byte) dtvSetCpuBankSegment1::cpuBankIdx#3 gfx_init_plane_horisontal2/(byte) dtvSetCpuBankSegment1::cpuBankIdx#5 gfx_init_plane_horisontal2::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#6 gfx_init_plane_horisontal::@8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#4 gfx_init_plane_vertical/(byte) dtvSetCpuBankSegment1::cpuBankIdx#7 gfx_init_plane_vertical::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#8 ) + (byte*) dtvSetCpuBankSegment1::cpuBank#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) $ff + *((byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 asm { .byte$32,$dd lda$ff .byte$32,$00 } to:dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1 return to:@return @5: scope:[] from @4 - (byte*) DTV_BLITTER_SRCA_LO#0 ? ((byte*)) (word/dword/signed dword) $d320 - (byte*) DTV_BLITTER_SRCA_MI#0 ? ((byte*)) (word/dword/signed dword) $d321 - (byte*) DTV_BLITTER_SRCA_HI#0 ? ((byte*)) (word/dword/signed dword) $d322 - (byte*) DTV_BLITTER_SRCA_MOD_LO#0 ? ((byte*)) (word/dword/signed dword) $d323 - (byte*) DTV_BLITTER_SRCA_MOD_HI#0 ? ((byte*)) (word/dword/signed dword) $d324 - (byte*) DTV_BLITTER_SRCA_LIN_LO#0 ? ((byte*)) (word/dword/signed dword) $d325 - (byte*) DTV_BLITTER_SRCA_LIN_HI#0 ? ((byte*)) (word/dword/signed dword) $d326 - (byte*) DTV_BLITTER_SRCA_STEP#0 ? ((byte*)) (word/dword/signed dword) $d327 - (byte*) DTV_BLITTER_SRCB_LO#0 ? ((byte*)) (word/dword/signed dword) $d328 - (byte*) DTV_BLITTER_SRCB_MI#0 ? ((byte*)) (word/dword/signed dword) $d329 - (byte*) DTV_BLITTER_SRCB_HI#0 ? ((byte*)) (word/dword/signed dword) $d32a - (byte*) DTV_BLITTER_SRCB_MOD_LO#0 ? ((byte*)) (word/dword/signed dword) $d32b - (byte*) DTV_BLITTER_SRCB_MOD_HI#0 ? ((byte*)) (word/dword/signed dword) $d32c - (byte*) DTV_BLITTER_SRCB_LIN_LO#0 ? ((byte*)) (word/dword/signed dword) $d32d - (byte*) DTV_BLITTER_SRCB_LIN_HI#0 ? ((byte*)) (word/dword/signed dword) $d32e - (byte*) DTV_BLITTER_SRCB_STEP#0 ? ((byte*)) (word/dword/signed dword) $d32f - (byte*) DTV_BLITTER_DEST_LO#0 ? ((byte*)) (word/dword/signed dword) $d330 - (byte*) DTV_BLITTER_DEST_MI#0 ? ((byte*)) (word/dword/signed dword) $d331 - (byte*) DTV_BLITTER_DEST_HI#0 ? ((byte*)) (word/dword/signed dword) $d332 - (byte*) DTV_BLITTER_DEST_MOD_LO#0 ? ((byte*)) (word/dword/signed dword) $d333 - (byte*) DTV_BLITTER_DEST_MOD_HI#0 ? ((byte*)) (word/dword/signed dword) $d334 - (byte*) DTV_BLITTER_DEST_LIN_LO#0 ? ((byte*)) (word/dword/signed dword) $d335 - (byte*) DTV_BLITTER_DEST_LIN_HI#0 ? ((byte*)) (word/dword/signed dword) $d336 - (byte*) DTV_BLITTER_DEST_STEP#0 ? ((byte*)) (word/dword/signed dword) $d337 - (byte*) DTV_BLITTER_LEN_LO#0 ? ((byte*)) (word/dword/signed dword) $d338 - (byte*) DTV_BLITTER_LEN_HI#0 ? ((byte*)) (word/dword/signed dword) $d339 - (byte*) DTV_BLITTER_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d33a - (byte) DTV_BLIT_FORCE_START#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_SRCA_FWD#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_SRCB_FWD#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_DEST_FWD#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_BLIT_VIC_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) DTV_BLIT_CIA_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) DTV_BLIT_VBLANK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) DTV_BLIT_IRQ_EN#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte*) DTV_BLITTER_TRANSPARANCY#0 ? ((byte*)) (word/dword/signed dword) $d33b - (byte) DTV_BLIT_DISABLE_B#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_WRITE_TRANSPARENT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_WRITE_NONTRANSPARENT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_TRANSPARANCY_NONE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) DTV_BLITTER_ALU#0 ? ((byte*)) (word/dword/signed dword) $d33e - (byte) DTV_BLIT_SHIFT0#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) DTV_BLIT_SHIFT1#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_SHIFT2#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_SHIFT3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) DTV_BLIT_SHIFT4#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_SHIFT5#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) DTV_BLIT_SHIFT6#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) DTV_BLIT_SHIFT7#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) DTV_BLIT_AND#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) DTV_BLIT_NAND#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_BLIT_NOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) DTV_BLIT_OR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte) DTV_BLIT_XOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) DTV_BLIT_XNOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte) DTV_BLIT_ADD#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) DTV_BLIT_SUB#0 ? (byte/signed byte/word/signed word/dword/signed dword) $38 - (byte*) DTV_BLITTER_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d33f - (byte) DTV_BLIT_CLEAR_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_SRCA_CONT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_SRCB_CONT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_DEST_CONT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_BLIT_STATUS_BUSY#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_STATUS_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (byte*) DTV_BLITTER_SRCA_LO#0 ← ((byte*)) (word/dword/signed dword) $d320 + (byte*) DTV_BLITTER_SRCA_MI#0 ← ((byte*)) (word/dword/signed dword) $d321 + (byte*) DTV_BLITTER_SRCA_HI#0 ← ((byte*)) (word/dword/signed dword) $d322 + (byte*) DTV_BLITTER_SRCA_MOD_LO#0 ← ((byte*)) (word/dword/signed dword) $d323 + (byte*) DTV_BLITTER_SRCA_MOD_HI#0 ← ((byte*)) (word/dword/signed dword) $d324 + (byte*) DTV_BLITTER_SRCA_LIN_LO#0 ← ((byte*)) (word/dword/signed dword) $d325 + (byte*) DTV_BLITTER_SRCA_LIN_HI#0 ← ((byte*)) (word/dword/signed dword) $d326 + (byte*) DTV_BLITTER_SRCA_STEP#0 ← ((byte*)) (word/dword/signed dword) $d327 + (byte*) DTV_BLITTER_SRCB_LO#0 ← ((byte*)) (word/dword/signed dword) $d328 + (byte*) DTV_BLITTER_SRCB_MI#0 ← ((byte*)) (word/dword/signed dword) $d329 + (byte*) DTV_BLITTER_SRCB_HI#0 ← ((byte*)) (word/dword/signed dword) $d32a + (byte*) DTV_BLITTER_SRCB_MOD_LO#0 ← ((byte*)) (word/dword/signed dword) $d32b + (byte*) DTV_BLITTER_SRCB_MOD_HI#0 ← ((byte*)) (word/dword/signed dword) $d32c + (byte*) DTV_BLITTER_SRCB_LIN_LO#0 ← ((byte*)) (word/dword/signed dword) $d32d + (byte*) DTV_BLITTER_SRCB_LIN_HI#0 ← ((byte*)) (word/dword/signed dword) $d32e + (byte*) DTV_BLITTER_SRCB_STEP#0 ← ((byte*)) (word/dword/signed dword) $d32f + (byte*) DTV_BLITTER_DEST_LO#0 ← ((byte*)) (word/dword/signed dword) $d330 + (byte*) DTV_BLITTER_DEST_MI#0 ← ((byte*)) (word/dword/signed dword) $d331 + (byte*) DTV_BLITTER_DEST_HI#0 ← ((byte*)) (word/dword/signed dword) $d332 + (byte*) DTV_BLITTER_DEST_MOD_LO#0 ← ((byte*)) (word/dword/signed dword) $d333 + (byte*) DTV_BLITTER_DEST_MOD_HI#0 ← ((byte*)) (word/dword/signed dword) $d334 + (byte*) DTV_BLITTER_DEST_LIN_LO#0 ← ((byte*)) (word/dword/signed dword) $d335 + (byte*) DTV_BLITTER_DEST_LIN_HI#0 ← ((byte*)) (word/dword/signed dword) $d336 + (byte*) DTV_BLITTER_DEST_STEP#0 ← ((byte*)) (word/dword/signed dword) $d337 + (byte*) DTV_BLITTER_LEN_LO#0 ← ((byte*)) (word/dword/signed dword) $d338 + (byte*) DTV_BLITTER_LEN_HI#0 ← ((byte*)) (word/dword/signed dword) $d339 + (byte*) DTV_BLITTER_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d33a + (byte) DTV_BLIT_FORCE_START#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_SRCA_FWD#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_SRCB_FWD#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_DEST_FWD#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_BLIT_VIC_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) DTV_BLIT_CIA_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) DTV_BLIT_VBLANK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) DTV_BLIT_IRQ_EN#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte*) DTV_BLITTER_TRANSPARANCY#0 ← ((byte*)) (word/dword/signed dword) $d33b + (byte) DTV_BLIT_DISABLE_B#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_WRITE_TRANSPARENT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_WRITE_NONTRANSPARENT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_TRANSPARANCY_NONE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) DTV_BLITTER_ALU#0 ← ((byte*)) (word/dword/signed dword) $d33e + (byte) DTV_BLIT_SHIFT0#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) DTV_BLIT_SHIFT1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_SHIFT2#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_SHIFT3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) DTV_BLIT_SHIFT4#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_SHIFT5#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) DTV_BLIT_SHIFT6#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) DTV_BLIT_SHIFT7#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) DTV_BLIT_AND#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) DTV_BLIT_NAND#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_BLIT_NOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) DTV_BLIT_OR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte) DTV_BLIT_XOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) DTV_BLIT_XNOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) DTV_BLIT_ADD#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) DTV_BLIT_SUB#0 ← (byte/signed byte/word/signed word/dword/signed dword) $38 + (byte*) DTV_BLITTER_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d33f + (byte) DTV_BLIT_CLEAR_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_SRCA_CONT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_SRCB_CONT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_DEST_CONT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_BLIT_STATUS_BUSY#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_STATUS_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@17 print_str_lines: scope:[print_str_lines] from form_mode::@22 form_mode::@25 - (byte*) print_line_cursor#45 ? phi( form_mode::@22/(byte*) print_line_cursor#12 form_mode::@25/(byte*) print_line_cursor#15 ) - (byte*) print_char_cursor#47 ? phi( form_mode::@22/(byte*) print_char_cursor#13 form_mode::@25/(byte*) print_char_cursor#16 ) - (byte*) print_str_lines::str#5 ? phi( form_mode::@22/(byte*) print_str_lines::str#1 form_mode::@25/(byte*) print_str_lines::str#2 ) + (byte*) print_line_cursor#45 ← phi( form_mode::@22/(byte*) print_line_cursor#12 form_mode::@25/(byte*) print_line_cursor#15 ) + (byte*) print_char_cursor#47 ← phi( form_mode::@22/(byte*) print_char_cursor#13 form_mode::@25/(byte*) print_char_cursor#16 ) + (byte*) print_str_lines::str#5 ← phi( form_mode::@22/(byte*) print_str_lines::str#1 form_mode::@25/(byte*) print_str_lines::str#2 ) to:print_str_lines::@1 print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@11 - (byte*) print_line_cursor#37 ? phi( print_str_lines/(byte*) print_line_cursor#45 print_str_lines::@11/(byte*) print_line_cursor#1 ) - (byte*) print_char_cursor#39 ? phi( print_str_lines/(byte*) print_char_cursor#47 print_str_lines::@11/(byte*) print_char_cursor#2 ) - (byte*) print_str_lines::str#3 ? phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@11/(byte*) print_str_lines::str#6 ) - (bool~) print_str_lines::$0 ? *((byte*) print_str_lines::str#3) != (byte) '@' + (byte*) print_line_cursor#37 ← phi( print_str_lines/(byte*) print_line_cursor#45 print_str_lines::@11/(byte*) print_line_cursor#1 ) + (byte*) print_char_cursor#39 ← phi( print_str_lines/(byte*) print_char_cursor#47 print_str_lines::@11/(byte*) print_char_cursor#2 ) + (byte*) print_str_lines::str#3 ← phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@11/(byte*) print_str_lines::str#6 ) + (bool~) print_str_lines::$0 ← *((byte*) print_str_lines::str#3) != (byte) '@' if((bool~) print_str_lines::$0) goto print_str_lines::@2 to:print_str_lines::@return print_str_lines::@2: scope:[print_str_lines] from print_str_lines::@1 - (byte*) print_line_cursor#62 ? phi( print_str_lines::@1/(byte*) print_line_cursor#37 ) - (byte*) print_char_cursor#48 ? phi( print_str_lines::@1/(byte*) print_char_cursor#39 ) - (byte*) print_str_lines::str#7 ? phi( print_str_lines::@1/(byte*) print_str_lines::str#3 ) + (byte*) print_line_cursor#62 ← phi( print_str_lines::@1/(byte*) print_line_cursor#37 ) + (byte*) print_char_cursor#48 ← phi( print_str_lines::@1/(byte*) print_char_cursor#39 ) + (byte*) print_str_lines::str#7 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#3 ) to:print_str_lines::@4 print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2 print_str_lines::@5 - (byte*) print_line_cursor#54 ? phi( print_str_lines::@2/(byte*) print_line_cursor#62 print_str_lines::@5/(byte*) print_line_cursor#46 ) - (byte*) print_char_cursor#37 ? phi( print_str_lines::@2/(byte*) print_char_cursor#48 print_str_lines::@5/(byte*) print_char_cursor#49 ) - (byte*) print_str_lines::str#4 ? phi( print_str_lines::@2/(byte*) print_str_lines::str#7 print_str_lines::@5/(byte*) print_str_lines::str#8 ) - (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#4) - (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#4 - (bool~) print_str_lines::$1 ? (byte) print_str_lines::ch#0 != (byte) '@' - (bool~) print_str_lines::$2 ? ! (bool~) print_str_lines::$1 + (byte*) print_line_cursor#54 ← phi( print_str_lines::@2/(byte*) print_line_cursor#62 print_str_lines::@5/(byte*) print_line_cursor#46 ) + (byte*) print_char_cursor#37 ← phi( print_str_lines::@2/(byte*) print_char_cursor#48 print_str_lines::@5/(byte*) print_char_cursor#49 ) + (byte*) print_str_lines::str#4 ← phi( print_str_lines::@2/(byte*) print_str_lines::str#7 print_str_lines::@5/(byte*) print_str_lines::str#8 ) + (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) + (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 + (bool~) print_str_lines::$1 ← (byte) print_str_lines::ch#0 != (byte) '@' + (bool~) print_str_lines::$2 ← ! (bool~) print_str_lines::$1 if((bool~) print_str_lines::$2) goto print_str_lines::@5 to:print_str_lines::@6 print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@4 print_str_lines::@6 - (byte*) print_line_cursor#46 ? phi( print_str_lines::@4/(byte*) print_line_cursor#54 print_str_lines::@6/(byte*) print_line_cursor#55 ) - (byte*) print_char_cursor#49 ? phi( print_str_lines::@4/(byte*) print_char_cursor#37 print_str_lines::@6/(byte*) print_char_cursor#1 ) - (byte*) print_str_lines::str#8 ? phi( print_str_lines::@4/(byte*) print_str_lines::str#0 print_str_lines::@6/(byte*) print_str_lines::str#9 ) - (byte) print_str_lines::ch#1 ? phi( print_str_lines::@4/(byte) print_str_lines::ch#0 print_str_lines::@6/(byte) print_str_lines::ch#2 ) - (bool~) print_str_lines::$3 ? (byte) print_str_lines::ch#1 != (byte) '@' + (byte*) print_line_cursor#46 ← phi( print_str_lines::@4/(byte*) print_line_cursor#54 print_str_lines::@6/(byte*) print_line_cursor#55 ) + (byte*) print_char_cursor#49 ← phi( print_str_lines::@4/(byte*) print_char_cursor#37 print_str_lines::@6/(byte*) print_char_cursor#1 ) + (byte*) print_str_lines::str#8 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 print_str_lines::@6/(byte*) print_str_lines::str#9 ) + (byte) print_str_lines::ch#1 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 print_str_lines::@6/(byte) print_str_lines::ch#2 ) + (bool~) print_str_lines::$3 ← (byte) print_str_lines::ch#1 != (byte) '@' if((bool~) print_str_lines::$3) goto print_str_lines::@4 to:print_str_lines::@7 print_str_lines::@6: scope:[print_str_lines] from print_str_lines::@4 - (byte*) print_line_cursor#55 ? phi( print_str_lines::@4/(byte*) print_line_cursor#54 ) - (byte*) print_str_lines::str#9 ? phi( print_str_lines::@4/(byte*) print_str_lines::str#0 ) - (byte*) print_char_cursor#20 ? phi( print_str_lines::@4/(byte*) print_char_cursor#37 ) - (byte) print_str_lines::ch#2 ? phi( print_str_lines::@4/(byte) print_str_lines::ch#0 ) - *((byte*) print_char_cursor#20) ? (byte) print_str_lines::ch#2 - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#20 + (byte*) print_line_cursor#55 ← phi( print_str_lines::@4/(byte*) print_line_cursor#54 ) + (byte*) print_str_lines::str#9 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 ) + (byte*) print_char_cursor#20 ← phi( print_str_lines::@4/(byte*) print_char_cursor#37 ) + (byte) print_str_lines::ch#2 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 ) + *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#2 + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 to:print_str_lines::@5 print_str_lines::@7: scope:[print_str_lines] from print_str_lines::@5 - (byte*) print_str_lines::str#10 ? phi( print_str_lines::@5/(byte*) print_str_lines::str#8 ) - (byte*) print_char_cursor#38 ? phi( print_str_lines::@5/(byte*) print_char_cursor#49 ) - (byte*) print_line_cursor#36 ? phi( print_str_lines::@5/(byte*) print_line_cursor#46 ) + (byte*) print_str_lines::str#10 ← phi( print_str_lines::@5/(byte*) print_str_lines::str#8 ) + (byte*) print_char_cursor#38 ← phi( print_str_lines::@5/(byte*) print_char_cursor#49 ) + (byte*) print_line_cursor#36 ← phi( print_str_lines::@5/(byte*) print_line_cursor#46 ) call print_ln to:print_str_lines::@11 print_str_lines::@11: scope:[print_str_lines] from print_str_lines::@7 - (byte*) print_str_lines::str#6 ? phi( print_str_lines::@7/(byte*) print_str_lines::str#10 ) - (byte*) print_char_cursor#21 ? phi( print_str_lines::@7/(byte*) print_char_cursor#5 ) - (byte*) print_line_cursor#19 ? phi( print_str_lines::@7/(byte*) print_line_cursor#4 ) - (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#19 - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#21 + (byte*) print_str_lines::str#6 ← phi( print_str_lines::@7/(byte*) print_str_lines::str#10 ) + (byte*) print_char_cursor#21 ← phi( print_str_lines::@7/(byte*) print_char_cursor#5 ) + (byte*) print_line_cursor#19 ← phi( print_str_lines::@7/(byte*) print_line_cursor#4 ) + (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#19 + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#21 to:print_str_lines::@1 print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1 - (byte*) print_line_cursor#20 ? phi( print_str_lines::@1/(byte*) print_line_cursor#37 ) - (byte*) print_char_cursor#22 ? phi( print_str_lines::@1/(byte*) print_char_cursor#39 ) - (byte*) print_char_cursor#3 ? (byte*) print_char_cursor#22 - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#20 + (byte*) print_line_cursor#20 ← phi( print_str_lines::@1/(byte*) print_line_cursor#37 ) + (byte*) print_char_cursor#22 ← phi( print_str_lines::@1/(byte*) print_char_cursor#39 ) + (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#22 + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#20 return to:@return print_str_at: scope:[print_str_at] from render_preset_name::@22 - (byte*) print_str_at::at#4 ? phi( render_preset_name::@22/(byte*) print_str_at::at#1 ) - (byte*) print_str_at::str#4 ? phi( render_preset_name::@22/(byte*) print_str_at::str#1 ) + (byte*) print_str_at::at#4 ← phi( render_preset_name::@22/(byte*) print_str_at::at#1 ) + (byte*) print_str_at::str#4 ← phi( render_preset_name::@22/(byte*) print_str_at::str#1 ) to:print_str_at::@1 print_str_at::@1: scope:[print_str_at] from print_str_at print_str_at::@2 - (byte*) print_str_at::at#3 ? phi( print_str_at/(byte*) print_str_at::at#4 print_str_at::@2/(byte*) print_str_at::at#0 ) - (byte*) print_str_at::str#2 ? phi( print_str_at/(byte*) print_str_at::str#4 print_str_at::@2/(byte*) print_str_at::str#0 ) - (bool~) print_str_at::$0 ? *((byte*) print_str_at::str#2) != (byte) '@' + (byte*) print_str_at::at#3 ← phi( print_str_at/(byte*) print_str_at::at#4 print_str_at::@2/(byte*) print_str_at::at#0 ) + (byte*) print_str_at::str#2 ← phi( print_str_at/(byte*) print_str_at::str#4 print_str_at::@2/(byte*) print_str_at::str#0 ) + (bool~) print_str_at::$0 ← *((byte*) print_str_at::str#2) != (byte) '@' if((bool~) print_str_at::$0) goto print_str_at::@2 to:print_str_at::@return print_str_at::@2: scope:[print_str_at] from print_str_at::@1 - (byte*) print_str_at::at#2 ? phi( print_str_at::@1/(byte*) print_str_at::at#3 ) - (byte*) print_str_at::str#3 ? phi( print_str_at::@1/(byte*) print_str_at::str#2 ) - *((byte*) print_str_at::at#2) ? *((byte*) print_str_at::str#3) - (byte*) print_str_at::at#0 ? ++ (byte*) print_str_at::at#2 - (byte*) print_str_at::str#0 ? ++ (byte*) print_str_at::str#3 + (byte*) print_str_at::at#2 ← phi( print_str_at::@1/(byte*) print_str_at::at#3 ) + (byte*) print_str_at::str#3 ← phi( print_str_at::@1/(byte*) print_str_at::str#2 ) + *((byte*) print_str_at::at#2) ← *((byte*) print_str_at::str#3) + (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#2 + (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#3 to:print_str_at::@1 print_str_at::@return: scope:[print_str_at] from print_str_at::@1 return to:@return print_ln: scope:[print_ln] from print_str_lines::@7 - (byte*) print_char_cursor#40 ? phi( print_str_lines::@7/(byte*) print_char_cursor#38 ) - (byte*) print_line_cursor#38 ? phi( print_str_lines::@7/(byte*) print_line_cursor#36 ) + (byte*) print_char_cursor#40 ← phi( print_str_lines::@7/(byte*) print_char_cursor#38 ) + (byte*) print_line_cursor#38 ← phi( print_str_lines::@7/(byte*) print_line_cursor#36 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) print_char_cursor#23 ? phi( print_ln/(byte*) print_char_cursor#40 print_ln::@1/(byte*) print_char_cursor#23 ) - (byte*) print_line_cursor#21 ? phi( print_ln/(byte*) print_line_cursor#38 print_ln::@1/(byte*) print_line_cursor#3 ) - (byte*~) print_ln::$0 ? (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) print_line_cursor#3 ? (byte*~) print_ln::$0 - (bool~) print_ln::$1 ? (byte*) print_line_cursor#3 < (byte*) print_char_cursor#23 + (byte*) print_char_cursor#23 ← phi( print_ln/(byte*) print_char_cursor#40 print_ln::@1/(byte*) print_char_cursor#23 ) + (byte*) print_line_cursor#21 ← phi( print_ln/(byte*) print_line_cursor#38 print_ln::@1/(byte*) print_line_cursor#3 ) + (byte*~) print_ln::$0 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) print_line_cursor#3 ← (byte*~) print_ln::$0 + (bool~) print_ln::$1 ← (byte*) print_line_cursor#3 < (byte*) print_char_cursor#23 if((bool~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) print_line_cursor#22 ? phi( print_ln::@1/(byte*) print_line_cursor#3 ) - (byte*) print_char_cursor#4 ? (byte*) print_line_cursor#22 + (byte*) print_line_cursor#22 ← phi( print_ln::@1/(byte*) print_line_cursor#3 ) + (byte*) print_char_cursor#4 ← (byte*) print_line_cursor#22 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) print_char_cursor#24 ? phi( print_ln::@2/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#23 ? phi( print_ln::@2/(byte*) print_line_cursor#22 ) - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#23 - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#24 + (byte*) print_char_cursor#24 ← phi( print_ln::@2/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#23 ← phi( print_ln::@2/(byte*) print_line_cursor#22 ) + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#23 + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#24 return to:@return @17: scope:[] from @5 - (byte*) print_char_cursor#76 ? phi( @5/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#76 ? phi( @5/(byte*) print_line_cursor#0 ) - (byte*) print_screen#55 ? phi( @5/(byte*) print_screen#0 ) - (byte[]) print_hextab#0 ? (const string) $69 + (byte*) print_char_cursor#76 ← phi( @5/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#76 ← phi( @5/(byte*) print_line_cursor#0 ) + (byte*) print_screen#55 ← phi( @5/(byte*) print_screen#0 ) + (byte[]) print_hextab#0 ← (const string) $69 to:@24 print_cls: scope:[print_cls] from form_mode::@21 form_mode::@24 - (byte*) print_screen#9 ? phi( form_mode::@21/(byte*) print_screen#5 form_mode::@24/(byte*) print_screen#6 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#9 + (byte*) print_screen#9 ← phi( form_mode::@21/(byte*) print_screen#5 form_mode::@24/(byte*) print_screen#6 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#9 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#10 ? phi( print_cls/(byte*) print_screen#9 print_cls::@1/(byte*) print_screen#10 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#10 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#10 ← phi( print_cls/(byte*) print_screen#9 print_cls::@1/(byte*) print_screen#10 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#10 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#11 ? phi( print_cls::@1/(byte*) print_screen#10 ) - (byte*) print_line_cursor#5 ? (byte*) print_screen#11 - (byte*) print_char_cursor#6 ? (byte*) print_line_cursor#5 + (byte*) print_screen#11 ← phi( print_cls::@1/(byte*) print_screen#10 ) + (byte*) print_line_cursor#5 ← (byte*) print_screen#11 + (byte*) print_char_cursor#6 ← (byte*) print_line_cursor#5 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#25 ? phi( print_cls::@2/(byte*) print_char_cursor#6 ) - (byte*) print_line_cursor#24 ? phi( print_cls::@2/(byte*) print_line_cursor#5 ) - (byte*) print_line_cursor#6 ? (byte*) print_line_cursor#24 - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#25 + (byte*) print_char_cursor#25 ← phi( print_cls::@2/(byte*) print_char_cursor#6 ) + (byte*) print_line_cursor#24 ← phi( print_cls::@2/(byte*) print_line_cursor#5 ) + (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#24 + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#25 return to:@return print_set_screen: scope:[print_set_screen] from form_mode form_mode::@23 - (byte*) print_set_screen::screen#2 ? phi( form_mode/(byte*) print_set_screen::screen#0 form_mode::@23/(byte*) print_set_screen::screen#1 ) - (byte*) print_screen#1 ? (byte*) print_set_screen::screen#2 - (byte*) print_line_cursor#7 ? (byte*) print_screen#1 - (byte*) print_char_cursor#8 ? (byte*) print_line_cursor#7 + (byte*) print_set_screen::screen#2 ← phi( form_mode/(byte*) print_set_screen::screen#0 form_mode::@23/(byte*) print_set_screen::screen#1 ) + (byte*) print_screen#1 ← (byte*) print_set_screen::screen#2 + (byte*) print_line_cursor#7 ← (byte*) print_screen#1 + (byte*) print_char_cursor#8 ← (byte*) print_line_cursor#7 to:print_set_screen::@return print_set_screen::@return: scope:[print_set_screen] from print_set_screen - (byte*) print_char_cursor#26 ? phi( print_set_screen/(byte*) print_char_cursor#8 ) - (byte*) print_line_cursor#25 ? phi( print_set_screen/(byte*) print_line_cursor#7 ) - (byte*) print_screen#12 ? phi( print_set_screen/(byte*) print_screen#1 ) - (byte*) print_screen#2 ? (byte*) print_screen#12 - (byte*) print_line_cursor#8 ? (byte*) print_line_cursor#25 - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#26 + (byte*) print_char_cursor#26 ← phi( print_set_screen/(byte*) print_char_cursor#8 ) + (byte*) print_line_cursor#25 ← phi( print_set_screen/(byte*) print_line_cursor#7 ) + (byte*) print_screen#12 ← phi( print_set_screen/(byte*) print_screen#1 ) + (byte*) print_screen#2 ← (byte*) print_screen#12 + (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#25 + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#26 return to:@return @24: scope:[] from @17 - (byte*) print_char_cursor#75 ? phi( @17/(byte*) print_char_cursor#76 ) - (byte*) print_line_cursor#75 ? phi( @17/(byte*) print_line_cursor#76 ) - (byte*) print_screen#53 ? phi( @17/(byte*) print_screen#55 ) - (byte) KEY_DEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_RETURN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_CRSR_RIGHT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_F7#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) KEY_F1#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_F3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) KEY_F5#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) KEY_CRSR_DOWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) KEY_3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) KEY_W#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) KEY_A#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) KEY_4#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) KEY_Z#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) KEY_S#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) KEY_E#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) KEY_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) KEY_5#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) KEY_R#0 ? (byte/signed byte/word/signed word/dword/signed dword) $11 - (byte) KEY_D#0 ? (byte/signed byte/word/signed word/dword/signed dword) $12 - (byte) KEY_6#0 ? (byte/signed byte/word/signed word/dword/signed dword) $13 - (byte) KEY_C#0 ? (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte) KEY_F#0 ? (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) KEY_T#0 ? (byte/signed byte/word/signed word/dword/signed dword) $16 - (byte) KEY_X#0 ? (byte/signed byte/word/signed word/dword/signed dword) $17 - (byte) KEY_7#0 ? (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte) KEY_Y#0 ? (byte/signed byte/word/signed word/dword/signed dword) $19 - (byte) KEY_G#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1a - (byte) KEY_8#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1b - (byte) KEY_B#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1c - (byte) KEY_H#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1d - (byte) KEY_U#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1e - (byte) KEY_V#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1f - (byte) KEY_9#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) KEY_I#0 ? (byte/signed byte/word/signed word/dword/signed dword) $21 - (byte) KEY_J#0 ? (byte/signed byte/word/signed word/dword/signed dword) $22 - (byte) KEY_0#0 ? (byte/signed byte/word/signed word/dword/signed dword) $23 - (byte) KEY_M#0 ? (byte/signed byte/word/signed word/dword/signed dword) $24 - (byte) KEY_K#0 ? (byte/signed byte/word/signed word/dword/signed dword) $25 - (byte) KEY_O#0 ? (byte/signed byte/word/signed word/dword/signed dword) $26 - (byte) KEY_N#0 ? (byte/signed byte/word/signed word/dword/signed dword) $27 - (byte) KEY_PLUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte) KEY_P#0 ? (byte/signed byte/word/signed word/dword/signed dword) $29 - (byte) KEY_L#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2a - (byte) KEY_MINUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2b - (byte) KEY_DOT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2c - (byte) KEY_COLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2d - (byte) KEY_AT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2e - (byte) KEY_COMMA#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2f - (byte) KEY_POUND#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) KEY_ASTERISK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) KEY_SEMICOLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $32 - (byte) KEY_HOME#0 ? (byte/signed byte/word/signed word/dword/signed dword) $33 - (byte) KEY_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $34 - (byte) KEY_EQUALS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) KEY_ARROW_UP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) KEY_SLASH#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte) KEY_1#0 ? (byte/signed byte/word/signed word/dword/signed dword) $38 - (byte) KEY_ARROW_LEFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $39 - (byte) KEY_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3a - (byte) KEY_2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3b - (byte) KEY_SPACE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3c - (byte) KEY_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3d - (byte) KEY_Q#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3e - (byte) KEY_RUNSTOP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3f - (byte[]) keyboard_char_keycodes#0 ? { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } - (byte[8]) keyboard_matrix_row_bitmask#0 ? { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } - (byte[8]) keyboard_matrix_col_bitmask#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } + (byte*) print_char_cursor#75 ← phi( @17/(byte*) print_char_cursor#76 ) + (byte*) print_line_cursor#75 ← phi( @17/(byte*) print_line_cursor#76 ) + (byte*) print_screen#53 ← phi( @17/(byte*) print_screen#55 ) + (byte) KEY_DEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_RETURN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_CRSR_RIGHT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_F7#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) KEY_F1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_F3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) KEY_F5#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) KEY_CRSR_DOWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) KEY_3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) KEY_W#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) KEY_A#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) KEY_4#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) KEY_Z#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) KEY_S#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) KEY_E#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) KEY_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) KEY_5#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) KEY_R#0 ← (byte/signed byte/word/signed word/dword/signed dword) $11 + (byte) KEY_D#0 ← (byte/signed byte/word/signed word/dword/signed dword) $12 + (byte) KEY_6#0 ← (byte/signed byte/word/signed word/dword/signed dword) $13 + (byte) KEY_C#0 ← (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte) KEY_F#0 ← (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) KEY_T#0 ← (byte/signed byte/word/signed word/dword/signed dword) $16 + (byte) KEY_X#0 ← (byte/signed byte/word/signed word/dword/signed dword) $17 + (byte) KEY_7#0 ← (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte) KEY_Y#0 ← (byte/signed byte/word/signed word/dword/signed dword) $19 + (byte) KEY_G#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1a + (byte) KEY_8#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1b + (byte) KEY_B#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1c + (byte) KEY_H#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1d + (byte) KEY_U#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1e + (byte) KEY_V#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1f + (byte) KEY_9#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) KEY_I#0 ← (byte/signed byte/word/signed word/dword/signed dword) $21 + (byte) KEY_J#0 ← (byte/signed byte/word/signed word/dword/signed dword) $22 + (byte) KEY_0#0 ← (byte/signed byte/word/signed word/dword/signed dword) $23 + (byte) KEY_M#0 ← (byte/signed byte/word/signed word/dword/signed dword) $24 + (byte) KEY_K#0 ← (byte/signed byte/word/signed word/dword/signed dword) $25 + (byte) KEY_O#0 ← (byte/signed byte/word/signed word/dword/signed dword) $26 + (byte) KEY_N#0 ← (byte/signed byte/word/signed word/dword/signed dword) $27 + (byte) KEY_PLUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) KEY_P#0 ← (byte/signed byte/word/signed word/dword/signed dword) $29 + (byte) KEY_L#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2a + (byte) KEY_MINUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2b + (byte) KEY_DOT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2c + (byte) KEY_COLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2d + (byte) KEY_AT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2e + (byte) KEY_COMMA#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2f + (byte) KEY_POUND#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) KEY_ASTERISK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) KEY_SEMICOLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $32 + (byte) KEY_HOME#0 ← (byte/signed byte/word/signed word/dword/signed dword) $33 + (byte) KEY_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $34 + (byte) KEY_EQUALS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) KEY_ARROW_UP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) KEY_SLASH#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte) KEY_1#0 ← (byte/signed byte/word/signed word/dword/signed dword) $38 + (byte) KEY_ARROW_LEFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $39 + (byte) KEY_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3a + (byte) KEY_2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3b + (byte) KEY_SPACE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3c + (byte) KEY_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3d + (byte) KEY_Q#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3e + (byte) KEY_RUNSTOP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3f + (byte[]) keyboard_char_keycodes#0 ← { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } + (byte[8]) keyboard_matrix_row_bitmask#0 ← { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } + (byte[8]) keyboard_matrix_col_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } to:@28 keyboard_init: scope:[keyboard_init] from main - *((byte*) CIA1_PORT_A_DDR#0) ? (byte/word/signed word/dword/signed dword) $ff - *((byte*) CIA1_PORT_B_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) $ff + *((byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_init::@return keyboard_init::@return: scope:[keyboard_init] from keyboard_init return to:@return keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_event_scan::@8 - (byte) keyboard_matrix_read::rowid#1 ? phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::rowid#0 ) - *((byte*) CIA1_PORT_A#0) ? *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) - (byte~) keyboard_matrix_read::$0 ? ~ *((byte*) CIA1_PORT_B#0) - (byte) keyboard_matrix_read::row_pressed_bits#0 ? (byte~) keyboard_matrix_read::$0 - (byte) keyboard_matrix_read::return#0 ? (byte) keyboard_matrix_read::row_pressed_bits#0 + (byte) keyboard_matrix_read::rowid#1 ← phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::rowid#0 ) + *((byte*) CIA1_PORT_A#0) ← *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) + (byte~) keyboard_matrix_read::$0 ← ~ *((byte*) CIA1_PORT_B#0) + (byte) keyboard_matrix_read::row_pressed_bits#0 ← (byte~) keyboard_matrix_read::$0 + (byte) keyboard_matrix_read::return#0 ← (byte) keyboard_matrix_read::row_pressed_bits#0 to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read - (byte) keyboard_matrix_read::return#3 ? phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) - (byte) keyboard_matrix_read::return#1 ? (byte) keyboard_matrix_read::return#3 + (byte) keyboard_matrix_read::return#3 ← phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) + (byte) keyboard_matrix_read::return#1 ← (byte) keyboard_matrix_read::return#3 return to:@return @28: scope:[] from @24 - (byte*) print_char_cursor#74 ? phi( @24/(byte*) print_char_cursor#75 ) - (byte*) print_line_cursor#74 ? phi( @24/(byte*) print_line_cursor#75 ) - (byte*) print_screen#51 ? phi( @24/(byte*) print_screen#53 ) - (byte[8]) keyboard_events#0 ? { fill( 8, 0) } - (byte) keyboard_events_size#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_modifiers#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_MODIFIER_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_MODIFIER_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_MODIFIER_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_MODIFIER_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte~) $0 ? (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 - (byte) KEY_MODIFIER_SHIFT#0 ? (byte~) $0 - (byte[8]) keyboard_scan_values#0 ? { fill( 8, 0) } + (byte*) print_char_cursor#74 ← phi( @24/(byte*) print_char_cursor#75 ) + (byte*) print_line_cursor#74 ← phi( @24/(byte*) print_line_cursor#75 ) + (byte*) print_screen#51 ← phi( @24/(byte*) print_screen#53 ) + (byte[8]) keyboard_events#0 ← { fill( 8, 0) } + (byte) keyboard_events_size#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_MODIFIER_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_MODIFIER_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_MODIFIER_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_MODIFIER_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte~) $0 ← (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 + (byte) KEY_MODIFIER_SHIFT#0 ← (byte~) $0 + (byte[8]) keyboard_scan_values#0 ← { fill( 8, 0) } to:@31 keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 gfx_mode::@36 - (byte) keyboard_events_size#110 ? phi( form_control::@3/(byte) keyboard_events_size#48 gfx_mode::@36/(byte) keyboard_events_size#44 ) - (byte) keyboard_event_scan::keycode#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_event_scan::row#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#110 ← phi( form_control::@3/(byte) keyboard_events_size#48 gfx_mode::@36/(byte) keyboard_events_size#44 ) + (byte) keyboard_event_scan::keycode#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_event_scan::row#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_event_scan::@8 keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@10 - (byte) keyboard_events_size#98 ? phi( keyboard_event_scan/(byte) keyboard_events_size#110 keyboard_event_scan::@10/(byte) keyboard_events_size#111 ) - (byte) keyboard_event_scan::keycode#11 ? phi( keyboard_event_scan/(byte) keyboard_event_scan::keycode#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#14 ) - (byte) keyboard_event_scan::row#2 ? phi( keyboard_event_scan/(byte) keyboard_event_scan::row#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::row#1 ) - (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 + (byte) keyboard_events_size#98 ← phi( keyboard_event_scan/(byte) keyboard_events_size#110 keyboard_event_scan::@10/(byte) keyboard_events_size#111 ) + (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte) keyboard_event_scan::keycode#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#14 ) + (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte) keyboard_event_scan::row#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::row#1 ) + (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 call keyboard_matrix_read - (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#1 + (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#1 to:keyboard_event_scan::@25 keyboard_event_scan::@25: scope:[keyboard_event_scan] from keyboard_event_scan::@8 - (byte) keyboard_events_size#78 ? phi( keyboard_event_scan::@8/(byte) keyboard_events_size#98 ) - (byte) keyboard_event_scan::keycode#7 ? phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#11 ) - (byte) keyboard_event_scan::row#3 ? phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::row#2 ) - (byte) keyboard_matrix_read::return#4 ? phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::return#2 ) - (byte~) keyboard_event_scan::$12 ? (byte) keyboard_matrix_read::return#4 - (byte) keyboard_event_scan::row_scan#0 ? (byte~) keyboard_event_scan::$12 - (bool~) keyboard_event_scan::$13 ? (byte) keyboard_event_scan::row_scan#0 != *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#3) + (byte) keyboard_events_size#78 ← phi( keyboard_event_scan::@8/(byte) keyboard_events_size#98 ) + (byte) keyboard_event_scan::keycode#7 ← phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#11 ) + (byte) keyboard_event_scan::row#3 ← phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::row#2 ) + (byte) keyboard_matrix_read::return#4 ← phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::return#2 ) + (byte~) keyboard_event_scan::$12 ← (byte) keyboard_matrix_read::return#4 + (byte) keyboard_event_scan::row_scan#0 ← (byte~) keyboard_event_scan::$12 + (bool~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row_scan#0 != *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#3) if((bool~) keyboard_event_scan::$13) goto keyboard_event_scan::@9 to:keyboard_event_scan::@21 keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - (byte) keyboard_events_size#55 ? phi( keyboard_event_scan::@25/(byte) keyboard_events_size#78 ) - (byte) keyboard_event_scan::keycode#12 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) - (byte) keyboard_event_scan::row#9 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) - (byte) keyboard_event_scan::row_scan#5 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row_scan#0 ) - (byte) keyboard_event_scan::col#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#55 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#78 ) + (byte) keyboard_event_scan::keycode#12 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) + (byte) keyboard_event_scan::row#9 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) + (byte) keyboard_event_scan::row_scan#5 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row_scan#0 ) + (byte) keyboard_event_scan::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_event_scan::@11 keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - (byte) keyboard_events_size#119 ? phi( keyboard_event_scan::@25/(byte) keyboard_events_size#78 ) - (byte) keyboard_event_scan::row#7 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) - (byte) keyboard_event_scan::keycode#3 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) - (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ? (byte) keyboard_event_scan::keycode#3 + (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) keyboard_event_scan::keycode#1 ? (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 + (byte) keyboard_events_size#119 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#78 ) + (byte) keyboard_event_scan::row#7 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) + (byte) keyboard_event_scan::keycode#3 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) + (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode#3 + (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) keyboard_event_scan::keycode#1 ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 to:keyboard_event_scan::@10 keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@20 keyboard_event_scan::@21 - (byte) keyboard_events_size#111 ? phi( keyboard_event_scan::@20/(byte) keyboard_events_size#118 keyboard_event_scan::@21/(byte) keyboard_events_size#119 ) - (byte) keyboard_event_scan::keycode#14 ? phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@21/(byte) keyboard_event_scan::keycode#1 ) - (byte) keyboard_event_scan::row#4 ? phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::row#6 keyboard_event_scan::@21/(byte) keyboard_event_scan::row#7 ) - (byte) keyboard_event_scan::row#1 ? (byte) keyboard_event_scan::row#4 + rangenext(0,7) - (bool~) keyboard_event_scan::$25 ? (byte) keyboard_event_scan::row#1 != rangelast(0,7) + (byte) keyboard_events_size#111 ← phi( keyboard_event_scan::@20/(byte) keyboard_events_size#118 keyboard_event_scan::@21/(byte) keyboard_events_size#119 ) + (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@21/(byte) keyboard_event_scan::keycode#1 ) + (byte) keyboard_event_scan::row#4 ← phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::row#6 keyboard_event_scan::@21/(byte) keyboard_event_scan::row#7 ) + (byte) keyboard_event_scan::row#1 ← (byte) keyboard_event_scan::row#4 + rangenext(0,7) + (bool~) keyboard_event_scan::$25 ← (byte) keyboard_event_scan::row#1 != rangelast(0,7) if((bool~) keyboard_event_scan::$25) goto keyboard_event_scan::@8 to:keyboard_event_scan::@23 keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@12 keyboard_event_scan::@9 - (byte) keyboard_events_size#37 ? phi( keyboard_event_scan::@12/(byte) keyboard_events_size#54 keyboard_event_scan::@9/(byte) keyboard_events_size#55 ) - (byte) keyboard_event_scan::keycode#8 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 keyboard_event_scan::@9/(byte) keyboard_event_scan::keycode#12 ) - (byte) keyboard_event_scan::col#2 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@9/(byte) keyboard_event_scan::col#0 ) - (byte) keyboard_event_scan::row#5 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 keyboard_event_scan::@9/(byte) keyboard_event_scan::row#9 ) - (byte) keyboard_event_scan::row_scan#1 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 keyboard_event_scan::@9/(byte) keyboard_event_scan::row_scan#5 ) - (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#1 ^ *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#5) - (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) - (bool~) keyboard_event_scan::$17 ? (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$18 ? ! (bool~) keyboard_event_scan::$17 + (byte) keyboard_events_size#37 ← phi( keyboard_event_scan::@12/(byte) keyboard_events_size#54 keyboard_event_scan::@9/(byte) keyboard_events_size#55 ) + (byte) keyboard_event_scan::keycode#8 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 keyboard_event_scan::@9/(byte) keyboard_event_scan::keycode#12 ) + (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@9/(byte) keyboard_event_scan::col#0 ) + (byte) keyboard_event_scan::row#5 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 keyboard_event_scan::@9/(byte) keyboard_event_scan::row#9 ) + (byte) keyboard_event_scan::row_scan#1 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 keyboard_event_scan::@9/(byte) keyboard_event_scan::row_scan#5 ) + (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#1 ^ *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#5) + (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) + (bool~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$18 ← ! (bool~) keyboard_event_scan::$17 if((bool~) keyboard_event_scan::$18) goto keyboard_event_scan::@12 to:keyboard_event_scan::@16 keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@11 keyboard_event_scan::@13 keyboard_event_scan::@14 keyboard_event_scan::@18 - (byte) keyboard_events_size#54 ? phi( keyboard_event_scan::@11/(byte) keyboard_events_size#37 keyboard_event_scan::@13/(byte) keyboard_events_size#79 keyboard_event_scan::@14/(byte) keyboard_events_size#1 keyboard_event_scan::@18/(byte) keyboard_events_size#2 ) - (byte) keyboard_event_scan::row#8 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 keyboard_event_scan::@13/(byte) keyboard_event_scan::row#10 keyboard_event_scan::@14/(byte) keyboard_event_scan::row#11 keyboard_event_scan::@18/(byte) keyboard_event_scan::row#12 ) - (byte) keyboard_event_scan::row_scan#4 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 keyboard_event_scan::@13/(byte) keyboard_event_scan::row_scan#7 keyboard_event_scan::@14/(byte) keyboard_event_scan::row_scan#8 keyboard_event_scan::@18/(byte) keyboard_event_scan::row_scan#9 ) - (byte) keyboard_event_scan::col#3 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 keyboard_event_scan::@13/(byte) keyboard_event_scan::col#5 keyboard_event_scan::@14/(byte) keyboard_event_scan::col#6 keyboard_event_scan::@18/(byte) keyboard_event_scan::col#7 ) - (byte) keyboard_event_scan::keycode#4 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 keyboard_event_scan::@13/(byte) keyboard_event_scan::keycode#9 keyboard_event_scan::@14/(byte) keyboard_event_scan::keycode#5 keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#6 ) - (byte) keyboard_event_scan::keycode#2 ? ++ (byte) keyboard_event_scan::keycode#4 - (byte) keyboard_event_scan::col#1 ? (byte) keyboard_event_scan::col#3 + rangenext(0,7) - (bool~) keyboard_event_scan::$24 ? (byte) keyboard_event_scan::col#1 != rangelast(0,7) + (byte) keyboard_events_size#54 ← phi( keyboard_event_scan::@11/(byte) keyboard_events_size#37 keyboard_event_scan::@13/(byte) keyboard_events_size#79 keyboard_event_scan::@14/(byte) keyboard_events_size#1 keyboard_event_scan::@18/(byte) keyboard_events_size#2 ) + (byte) keyboard_event_scan::row#8 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 keyboard_event_scan::@13/(byte) keyboard_event_scan::row#10 keyboard_event_scan::@14/(byte) keyboard_event_scan::row#11 keyboard_event_scan::@18/(byte) keyboard_event_scan::row#12 ) + (byte) keyboard_event_scan::row_scan#4 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 keyboard_event_scan::@13/(byte) keyboard_event_scan::row_scan#7 keyboard_event_scan::@14/(byte) keyboard_event_scan::row_scan#8 keyboard_event_scan::@18/(byte) keyboard_event_scan::row_scan#9 ) + (byte) keyboard_event_scan::col#3 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 keyboard_event_scan::@13/(byte) keyboard_event_scan::col#5 keyboard_event_scan::@14/(byte) keyboard_event_scan::col#6 keyboard_event_scan::@18/(byte) keyboard_event_scan::col#7 ) + (byte) keyboard_event_scan::keycode#4 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 keyboard_event_scan::@13/(byte) keyboard_event_scan::keycode#9 keyboard_event_scan::@14/(byte) keyboard_event_scan::keycode#5 keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#6 ) + (byte) keyboard_event_scan::keycode#2 ← ++ (byte) keyboard_event_scan::keycode#4 + (byte) keyboard_event_scan::col#1 ← (byte) keyboard_event_scan::col#3 + rangenext(0,7) + (bool~) keyboard_event_scan::$24 ← (byte) keyboard_event_scan::col#1 != rangelast(0,7) if((bool~) keyboard_event_scan::$24) goto keyboard_event_scan::@11 to:keyboard_event_scan::@20 keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@11 - (byte) keyboard_event_scan::row#13 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 ) - (byte) keyboard_event_scan::keycode#13 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 ) - (byte) keyboard_event_scan::col#8 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 ) - (byte) keyboard_event_scan::row_scan#6 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 ) - (byte) keyboard_events_size#18 ? phi( keyboard_event_scan::@11/(byte) keyboard_events_size#37 ) - (bool~) keyboard_event_scan::$19 ? (byte) keyboard_events_size#18 != (byte/signed byte/word/signed word/dword/signed dword) 8 - (bool~) keyboard_event_scan::$20 ? ! (bool~) keyboard_event_scan::$19 + (byte) keyboard_event_scan::row#13 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 ) + (byte) keyboard_event_scan::keycode#13 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 ) + (byte) keyboard_event_scan::col#8 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 ) + (byte) keyboard_event_scan::row_scan#6 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 ) + (byte) keyboard_events_size#18 ← phi( keyboard_event_scan::@11/(byte) keyboard_events_size#37 ) + (bool~) keyboard_event_scan::$19 ← (byte) keyboard_events_size#18 != (byte/signed byte/word/signed word/dword/signed dword) 8 + (bool~) keyboard_event_scan::$20 ← ! (bool~) keyboard_event_scan::$19 if((bool~) keyboard_event_scan::$20) goto keyboard_event_scan::@13 to:keyboard_event_scan::@17 keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@16 - (byte) keyboard_events_size#79 ? phi( keyboard_event_scan::@16/(byte) keyboard_events_size#18 ) - (byte) keyboard_event_scan::row#10 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) - (byte) keyboard_event_scan::row_scan#7 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) - (byte) keyboard_event_scan::col#5 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) - (byte) keyboard_event_scan::keycode#9 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) + (byte) keyboard_events_size#79 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#18 ) + (byte) keyboard_event_scan::row#10 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) + (byte) keyboard_event_scan::row_scan#7 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) + (byte) keyboard_event_scan::col#5 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) + (byte) keyboard_event_scan::keycode#9 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) to:keyboard_event_scan::@12 keyboard_event_scan::@17: scope:[keyboard_event_scan] from keyboard_event_scan::@16 - (byte) keyboard_event_scan::row#14 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) - (byte) keyboard_events_size#38 ? phi( keyboard_event_scan::@16/(byte) keyboard_events_size#18 ) - (byte) keyboard_event_scan::keycode#10 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) - (byte) keyboard_event_scan::col#4 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) - (byte) keyboard_event_scan::row_scan#2 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) - (byte~) keyboard_event_scan::$21 ? (byte) keyboard_event_scan::row_scan#2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#4) - (byte) keyboard_event_scan::event_type#0 ? (byte~) keyboard_event_scan::$21 - (bool~) keyboard_event_scan::$22 ? (byte) keyboard_event_scan::event_type#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_event_scan::row#14 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) + (byte) keyboard_events_size#38 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#18 ) + (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) + (byte) keyboard_event_scan::col#4 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) + (byte) keyboard_event_scan::row_scan#2 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) + (byte~) keyboard_event_scan::$21 ← (byte) keyboard_event_scan::row_scan#2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#4) + (byte) keyboard_event_scan::event_type#0 ← (byte~) keyboard_event_scan::$21 + (bool~) keyboard_event_scan::$22 ← (byte) keyboard_event_scan::event_type#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) keyboard_event_scan::$22) goto keyboard_event_scan::@14 to:keyboard_event_scan::@18 keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@17 - (byte) keyboard_event_scan::row#11 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) - (byte) keyboard_event_scan::row_scan#8 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) - (byte) keyboard_event_scan::col#6 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) - (byte) keyboard_events_size#19 ? phi( keyboard_event_scan::@17/(byte) keyboard_events_size#38 ) - (byte) keyboard_event_scan::keycode#5 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) - (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#5 | (byte/signed byte/word/signed word/dword/signed dword) $40 - *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#19) ? (byte/word/dword~) keyboard_event_scan::$23 - (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#19 + (byte) keyboard_event_scan::row#11 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) + (byte) keyboard_event_scan::row_scan#8 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) + (byte) keyboard_event_scan::col#6 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) + (byte) keyboard_events_size#19 ← phi( keyboard_event_scan::@17/(byte) keyboard_events_size#38 ) + (byte) keyboard_event_scan::keycode#5 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) + (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#5 | (byte/signed byte/word/signed word/dword/signed dword) $40 + *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#19) ← (byte/word/dword~) keyboard_event_scan::$23 + (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#19 to:keyboard_event_scan::@12 keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@17 - (byte) keyboard_event_scan::row#12 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) - (byte) keyboard_event_scan::row_scan#9 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) - (byte) keyboard_event_scan::col#7 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) - (byte) keyboard_events_size#20 ? phi( keyboard_event_scan::@17/(byte) keyboard_events_size#38 ) - (byte) keyboard_event_scan::keycode#6 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) - *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#20) ? (byte) keyboard_event_scan::keycode#6 - (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#20 + (byte) keyboard_event_scan::row#12 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) + (byte) keyboard_event_scan::row_scan#9 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) + (byte) keyboard_event_scan::col#7 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) + (byte) keyboard_events_size#20 ← phi( keyboard_event_scan::@17/(byte) keyboard_events_size#38 ) + (byte) keyboard_event_scan::keycode#6 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) + *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#20) ← (byte) keyboard_event_scan::keycode#6 + (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#20 to:keyboard_event_scan::@12 keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@12 - (byte) keyboard_events_size#118 ? phi( keyboard_event_scan::@12/(byte) keyboard_events_size#54 ) - (byte) keyboard_event_scan::keycode#15 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 ) - (byte) keyboard_event_scan::row#6 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 ) - (byte) keyboard_event_scan::row_scan#3 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 ) - *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#6) ? (byte) keyboard_event_scan::row_scan#3 + (byte) keyboard_events_size#118 ← phi( keyboard_event_scan::@12/(byte) keyboard_events_size#54 ) + (byte) keyboard_event_scan::keycode#15 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 ) + (byte) keyboard_event_scan::row#6 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 ) + (byte) keyboard_event_scan::row_scan#3 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 ) + *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#6) ← (byte) keyboard_event_scan::row_scan#3 to:keyboard_event_scan::@10 keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@10 - (byte) keyboard_events_size#132 ? phi( keyboard_event_scan::@10/(byte) keyboard_events_size#111 ) - (byte) keyboard_modifiers#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_event_pressed::keycode#0 ? (byte) KEY_LSHIFT#0 + (byte) keyboard_events_size#132 ← phi( keyboard_event_scan::@10/(byte) keyboard_events_size#111 ) + (byte) keyboard_modifiers#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_event_pressed::keycode#0 ← (byte) KEY_LSHIFT#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@26 keyboard_event_scan::@26: scope:[keyboard_event_scan] from keyboard_event_scan::@23 - (byte) keyboard_events_size#129 ? phi( keyboard_event_scan::@23/(byte) keyboard_events_size#132 ) - (byte) keyboard_modifiers#34 ? phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#1 ) - (byte) keyboard_event_pressed::return#6 ? phi( keyboard_event_scan::@23/(byte) keyboard_event_pressed::return#0 ) - (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#6 - (bool~) keyboard_event_scan::$1 ? (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$2 ? ! (bool~) keyboard_event_scan::$1 + (byte) keyboard_events_size#129 ← phi( keyboard_event_scan::@23/(byte) keyboard_events_size#132 ) + (byte) keyboard_modifiers#34 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#1 ) + (byte) keyboard_event_pressed::return#6 ← phi( keyboard_event_scan::@23/(byte) keyboard_event_pressed::return#0 ) + (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#6 + (bool~) keyboard_event_scan::$1 ← (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$2 ← ! (bool~) keyboard_event_scan::$1 if((bool~) keyboard_event_scan::$2) goto keyboard_event_scan::@1 to:keyboard_event_scan::@24 keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan::@24 keyboard_event_scan::@26 - (byte) keyboard_events_size#125 ? phi( keyboard_event_scan::@24/(byte) keyboard_events_size#128 keyboard_event_scan::@26/(byte) keyboard_events_size#129 ) - (byte) keyboard_modifiers#54 ? phi( keyboard_event_scan::@24/(byte) keyboard_modifiers#2 keyboard_event_scan::@26/(byte) keyboard_modifiers#34 ) - (byte) keyboard_event_pressed::keycode#1 ? (byte) KEY_RSHIFT#0 + (byte) keyboard_events_size#125 ← phi( keyboard_event_scan::@24/(byte) keyboard_events_size#128 keyboard_event_scan::@26/(byte) keyboard_events_size#129 ) + (byte) keyboard_modifiers#54 ← phi( keyboard_event_scan::@24/(byte) keyboard_modifiers#2 keyboard_event_scan::@26/(byte) keyboard_modifiers#34 ) + (byte) keyboard_event_pressed::keycode#1 ← (byte) KEY_RSHIFT#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@27 keyboard_event_scan::@27: scope:[keyboard_event_scan] from keyboard_event_scan::@1 - (byte) keyboard_events_size#120 ? phi( keyboard_event_scan::@1/(byte) keyboard_events_size#125 ) - (byte) keyboard_modifiers#35 ? phi( keyboard_event_scan::@1/(byte) keyboard_modifiers#54 ) - (byte) keyboard_event_pressed::return#7 ? phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::return#1 ) - (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#7 - (bool~) keyboard_event_scan::$4 ? (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$5 ? ! (bool~) keyboard_event_scan::$4 + (byte) keyboard_events_size#120 ← phi( keyboard_event_scan::@1/(byte) keyboard_events_size#125 ) + (byte) keyboard_modifiers#35 ← phi( keyboard_event_scan::@1/(byte) keyboard_modifiers#54 ) + (byte) keyboard_event_pressed::return#7 ← phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::return#1 ) + (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#7 + (bool~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$5 ← ! (bool~) keyboard_event_scan::$4 if((bool~) keyboard_event_scan::$5) goto keyboard_event_scan::@2 to:keyboard_event_scan::@5 keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@26 - (byte) keyboard_events_size#128 ? phi( keyboard_event_scan::@26/(byte) keyboard_events_size#129 ) - (byte) keyboard_modifiers#17 ? phi( keyboard_event_scan::@26/(byte) keyboard_modifiers#34 ) - (byte~) keyboard_event_scan::$26 ? (byte) keyboard_modifiers#17 | (byte) KEY_MODIFIER_LSHIFT#0 - (byte) keyboard_modifiers#2 ? (byte~) keyboard_event_scan::$26 + (byte) keyboard_events_size#128 ← phi( keyboard_event_scan::@26/(byte) keyboard_events_size#129 ) + (byte) keyboard_modifiers#17 ← phi( keyboard_event_scan::@26/(byte) keyboard_modifiers#34 ) + (byte~) keyboard_event_scan::$26 ← (byte) keyboard_modifiers#17 | (byte) KEY_MODIFIER_LSHIFT#0 + (byte) keyboard_modifiers#2 ← (byte~) keyboard_event_scan::$26 to:keyboard_event_scan::@1 keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@27 keyboard_event_scan::@5 - (byte) keyboard_events_size#112 ? phi( keyboard_event_scan::@27/(byte) keyboard_events_size#120 keyboard_event_scan::@5/(byte) keyboard_events_size#121 ) - (byte) keyboard_modifiers#55 ? phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#35 keyboard_event_scan::@5/(byte) keyboard_modifiers#3 ) - (byte) keyboard_event_pressed::keycode#2 ? (byte) KEY_CTRL#0 + (byte) keyboard_events_size#112 ← phi( keyboard_event_scan::@27/(byte) keyboard_events_size#120 keyboard_event_scan::@5/(byte) keyboard_events_size#121 ) + (byte) keyboard_modifiers#55 ← phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#35 keyboard_event_scan::@5/(byte) keyboard_modifiers#3 ) + (byte) keyboard_event_pressed::keycode#2 ← (byte) KEY_CTRL#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@28 keyboard_event_scan::@28: scope:[keyboard_event_scan] from keyboard_event_scan::@2 - (byte) keyboard_events_size#99 ? phi( keyboard_event_scan::@2/(byte) keyboard_events_size#112 ) - (byte) keyboard_modifiers#36 ? phi( keyboard_event_scan::@2/(byte) keyboard_modifiers#55 ) - (byte) keyboard_event_pressed::return#8 ? phi( keyboard_event_scan::@2/(byte) keyboard_event_pressed::return#2 ) - (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#8 - (bool~) keyboard_event_scan::$7 ? (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$8 ? ! (bool~) keyboard_event_scan::$7 + (byte) keyboard_events_size#99 ← phi( keyboard_event_scan::@2/(byte) keyboard_events_size#112 ) + (byte) keyboard_modifiers#36 ← phi( keyboard_event_scan::@2/(byte) keyboard_modifiers#55 ) + (byte) keyboard_event_pressed::return#8 ← phi( keyboard_event_scan::@2/(byte) keyboard_event_pressed::return#2 ) + (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#8 + (bool~) keyboard_event_scan::$7 ← (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$8 ← ! (bool~) keyboard_event_scan::$7 if((bool~) keyboard_event_scan::$8) goto keyboard_event_scan::@3 to:keyboard_event_scan::@6 keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@27 - (byte) keyboard_events_size#121 ? phi( keyboard_event_scan::@27/(byte) keyboard_events_size#120 ) - (byte) keyboard_modifiers#18 ? phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#35 ) - (byte~) keyboard_event_scan::$27 ? (byte) keyboard_modifiers#18 | (byte) KEY_MODIFIER_RSHIFT#0 - (byte) keyboard_modifiers#3 ? (byte~) keyboard_event_scan::$27 + (byte) keyboard_events_size#121 ← phi( keyboard_event_scan::@27/(byte) keyboard_events_size#120 ) + (byte) keyboard_modifiers#18 ← phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#35 ) + (byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers#18 | (byte) KEY_MODIFIER_RSHIFT#0 + (byte) keyboard_modifiers#3 ← (byte~) keyboard_event_scan::$27 to:keyboard_event_scan::@2 keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@28 keyboard_event_scan::@6 - (byte) keyboard_events_size#80 ? phi( keyboard_event_scan::@28/(byte) keyboard_events_size#99 keyboard_event_scan::@6/(byte) keyboard_events_size#100 ) - (byte) keyboard_modifiers#56 ? phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#36 keyboard_event_scan::@6/(byte) keyboard_modifiers#4 ) - (byte) keyboard_event_pressed::keycode#3 ? (byte) KEY_COMMODORE#0 + (byte) keyboard_events_size#80 ← phi( keyboard_event_scan::@28/(byte) keyboard_events_size#99 keyboard_event_scan::@6/(byte) keyboard_events_size#100 ) + (byte) keyboard_modifiers#56 ← phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#36 keyboard_event_scan::@6/(byte) keyboard_modifiers#4 ) + (byte) keyboard_event_pressed::keycode#3 ← (byte) KEY_COMMODORE#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#3 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@29 keyboard_event_scan::@29: scope:[keyboard_event_scan] from keyboard_event_scan::@3 - (byte) keyboard_events_size#56 ? phi( keyboard_event_scan::@3/(byte) keyboard_events_size#80 ) - (byte) keyboard_modifiers#37 ? phi( keyboard_event_scan::@3/(byte) keyboard_modifiers#56 ) - (byte) keyboard_event_pressed::return#9 ? phi( keyboard_event_scan::@3/(byte) keyboard_event_pressed::return#3 ) - (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#9 - (bool~) keyboard_event_scan::$10 ? (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$11 ? ! (bool~) keyboard_event_scan::$10 + (byte) keyboard_events_size#56 ← phi( keyboard_event_scan::@3/(byte) keyboard_events_size#80 ) + (byte) keyboard_modifiers#37 ← phi( keyboard_event_scan::@3/(byte) keyboard_modifiers#56 ) + (byte) keyboard_event_pressed::return#9 ← phi( keyboard_event_scan::@3/(byte) keyboard_event_pressed::return#3 ) + (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#9 + (bool~) keyboard_event_scan::$10 ← (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$11 ← ! (bool~) keyboard_event_scan::$10 if((bool~) keyboard_event_scan::$11) goto keyboard_event_scan::@4 to:keyboard_event_scan::@7 keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@28 - (byte) keyboard_events_size#100 ? phi( keyboard_event_scan::@28/(byte) keyboard_events_size#99 ) - (byte) keyboard_modifiers#19 ? phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#36 ) - (byte~) keyboard_event_scan::$28 ? (byte) keyboard_modifiers#19 | (byte) KEY_MODIFIER_CTRL#0 - (byte) keyboard_modifiers#4 ? (byte~) keyboard_event_scan::$28 + (byte) keyboard_events_size#100 ← phi( keyboard_event_scan::@28/(byte) keyboard_events_size#99 ) + (byte) keyboard_modifiers#19 ← phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#36 ) + (byte~) keyboard_event_scan::$28 ← (byte) keyboard_modifiers#19 | (byte) KEY_MODIFIER_CTRL#0 + (byte) keyboard_modifiers#4 ← (byte~) keyboard_event_scan::$28 to:keyboard_event_scan::@3 keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - (byte) keyboard_modifiers#38 ? phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#37 ) - (byte) keyboard_events_size#39 ? phi( keyboard_event_scan::@29/(byte) keyboard_events_size#56 ) + (byte) keyboard_modifiers#38 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#37 ) + (byte) keyboard_events_size#39 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#56 ) to:keyboard_event_scan::@return keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - (byte) keyboard_events_size#40 ? phi( keyboard_event_scan::@29/(byte) keyboard_events_size#56 ) - (byte) keyboard_modifiers#20 ? phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#37 ) - (byte~) keyboard_event_scan::$29 ? (byte) keyboard_modifiers#20 | (byte) KEY_MODIFIER_COMMODORE#0 - (byte) keyboard_modifiers#5 ? (byte~) keyboard_event_scan::$29 + (byte) keyboard_events_size#40 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#56 ) + (byte) keyboard_modifiers#20 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#37 ) + (byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers#20 | (byte) KEY_MODIFIER_COMMODORE#0 + (byte) keyboard_modifiers#5 ← (byte~) keyboard_event_scan::$29 to:keyboard_event_scan::@return keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@4 keyboard_event_scan::@7 - (byte) keyboard_modifiers#21 ? phi( keyboard_event_scan::@4/(byte) keyboard_modifiers#38 keyboard_event_scan::@7/(byte) keyboard_modifiers#5 ) - (byte) keyboard_events_size#21 ? phi( keyboard_event_scan::@4/(byte) keyboard_events_size#39 keyboard_event_scan::@7/(byte) keyboard_events_size#40 ) - (byte) keyboard_events_size#3 ? (byte) keyboard_events_size#21 - (byte) keyboard_modifiers#6 ? (byte) keyboard_modifiers#21 + (byte) keyboard_modifiers#21 ← phi( keyboard_event_scan::@4/(byte) keyboard_modifiers#38 keyboard_event_scan::@7/(byte) keyboard_modifiers#5 ) + (byte) keyboard_events_size#21 ← phi( keyboard_event_scan::@4/(byte) keyboard_events_size#39 keyboard_event_scan::@7/(byte) keyboard_events_size#40 ) + (byte) keyboard_events_size#3 ← (byte) keyboard_events_size#21 + (byte) keyboard_modifiers#6 ← (byte) keyboard_modifiers#21 return to:@return keyboard_event_pressed: scope:[keyboard_event_pressed] from keyboard_event_scan::@1 keyboard_event_scan::@2 keyboard_event_scan::@23 keyboard_event_scan::@3 - (byte) keyboard_event_pressed::keycode#4 ? phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::keycode#1 keyboard_event_scan::@2/(byte) keyboard_event_pressed::keycode#2 keyboard_event_scan::@23/(byte) keyboard_event_pressed::keycode#0 keyboard_event_scan::@3/(byte) keyboard_event_pressed::keycode#3 ) - (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) keyboard_event_pressed::row_bits#0 ? *((byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) - (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) keyboard_event_pressed::$2 ? (byte) keyboard_event_pressed::row_bits#0 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) - (byte) keyboard_event_pressed::return#4 ? (byte~) keyboard_event_pressed::$2 + (byte) keyboard_event_pressed::keycode#4 ← phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::keycode#1 keyboard_event_scan::@2/(byte) keyboard_event_pressed::keycode#2 keyboard_event_scan::@23/(byte) keyboard_event_pressed::keycode#0 keyboard_event_scan::@3/(byte) keyboard_event_pressed::keycode#3 ) + (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) keyboard_event_pressed::row_bits#0 ← *((byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) + (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) keyboard_event_pressed::$2 ← (byte) keyboard_event_pressed::row_bits#0 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) + (byte) keyboard_event_pressed::return#4 ← (byte~) keyboard_event_pressed::$2 to:keyboard_event_pressed::@return keyboard_event_pressed::@return: scope:[keyboard_event_pressed] from keyboard_event_pressed - (byte) keyboard_event_pressed::return#10 ? phi( keyboard_event_pressed/(byte) keyboard_event_pressed::return#4 ) - (byte) keyboard_event_pressed::return#5 ? (byte) keyboard_event_pressed::return#10 + (byte) keyboard_event_pressed::return#10 ← phi( keyboard_event_pressed/(byte) keyboard_event_pressed::return#4 ) + (byte) keyboard_event_pressed::return#5 ← (byte) keyboard_event_pressed::return#10 return to:@return keyboard_event_get: scope:[keyboard_event_get] from form_control::@34 gfx_mode::@51 - (byte) keyboard_events_size#22 ? phi( form_control::@34/(byte) keyboard_events_size#14 gfx_mode::@51/(byte) keyboard_events_size#9 ) - (bool~) keyboard_event_get::$0 ? (byte) keyboard_events_size#22 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#22 ← phi( form_control::@34/(byte) keyboard_events_size#14 gfx_mode::@51/(byte) keyboard_events_size#9 ) + (bool~) keyboard_event_get::$0 ← (byte) keyboard_events_size#22 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) keyboard_event_get::$0) goto keyboard_event_get::@1 to:keyboard_event_get::@3 keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get - (byte) keyboard_events_size#41 ? phi( keyboard_event_get/(byte) keyboard_events_size#22 ) - (byte) keyboard_event_get::return#0 ? (byte/word/signed word/dword/signed dword) $ff + (byte) keyboard_events_size#41 ← phi( keyboard_event_get/(byte) keyboard_events_size#22 ) + (byte) keyboard_event_get::return#0 ← (byte/word/signed word/dword/signed dword) $ff to:keyboard_event_get::@return keyboard_event_get::@3: scope:[keyboard_event_get] from keyboard_event_get - (byte) keyboard_events_size#23 ? phi( keyboard_event_get/(byte) keyboard_events_size#22 ) - (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#23 - (byte) keyboard_event_get::return#1 ? *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) + (byte) keyboard_events_size#23 ← phi( keyboard_event_get/(byte) keyboard_events_size#22 ) + (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#23 + (byte) keyboard_event_get::return#1 ← *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) to:keyboard_event_get::@return keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get::@1 keyboard_event_get::@3 - (byte) keyboard_events_size#24 ? phi( keyboard_event_get::@1/(byte) keyboard_events_size#41 keyboard_event_get::@3/(byte) keyboard_events_size#4 ) - (byte) keyboard_event_get::return#5 ? phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get::@3/(byte) keyboard_event_get::return#1 ) - (byte) keyboard_event_get::return#2 ? (byte) keyboard_event_get::return#5 - (byte) keyboard_events_size#5 ? (byte) keyboard_events_size#24 + (byte) keyboard_events_size#24 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#41 keyboard_event_get::@3/(byte) keyboard_events_size#4 ) + (byte) keyboard_event_get::return#5 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get::@3/(byte) keyboard_event_get::return#1 ) + (byte) keyboard_event_get::return#2 ← (byte) keyboard_event_get::return#5 + (byte) keyboard_events_size#5 ← (byte) keyboard_events_size#24 return to:@return @31: scope:[] from @28 - (byte) keyboard_modifiers#106 ? phi( @28/(byte) keyboard_modifiers#0 ) - (byte) keyboard_events_size#122 ? phi( @28/(byte) keyboard_events_size#0 ) - (byte*) print_char_cursor#72 ? phi( @28/(byte*) print_char_cursor#74 ) - (byte*) print_line_cursor#72 ? phi( @28/(byte*) print_line_cursor#74 ) - (byte*) print_screen#49 ? phi( @28/(byte*) print_screen#51 ) - (byte[$100]) bitmap_plot_xlo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_xhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_ylo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_yhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_bit#0 ? { fill( $100, 0) } + (byte) keyboard_modifiers#106 ← phi( @28/(byte) keyboard_modifiers#0 ) + (byte) keyboard_events_size#122 ← phi( @28/(byte) keyboard_events_size#0 ) + (byte*) print_char_cursor#72 ← phi( @28/(byte*) print_char_cursor#74 ) + (byte*) print_line_cursor#72 ← phi( @28/(byte*) print_line_cursor#74 ) + (byte*) print_screen#49 ← phi( @28/(byte*) print_screen#51 ) + (byte[$100]) bitmap_plot_xlo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_xhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_ylo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_yhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_bit#0 ← { fill( $100, 0) } to:@40 bitmap_init: scope:[bitmap_init] from gfx_init_vic_bitmap - (byte*) bitmap_init::bitmap#2 ? phi( gfx_init_vic_bitmap/(byte*) bitmap_init::bitmap#0 ) - (byte) bitmap_init::bits#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) bitmap_init::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::bitmap#2 ← phi( gfx_init_vic_bitmap/(byte*) bitmap_init::bitmap#0 ) + (byte) bitmap_init::bits#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) bitmap_init::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - (byte*) bitmap_init::bitmap#1 ? phi( bitmap_init/(byte*) bitmap_init::bitmap#2 bitmap_init::@2/(byte*) bitmap_init::bitmap#3 ) - (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 - *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 - (byte~) bitmap_init::$1 ? > (byte*) bitmap_init::bitmap#1 - *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$1 - *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - (byte~) bitmap_init::$2 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_init::bits#1 ? (byte~) bitmap_init::$2 - (bool~) bitmap_init::$3 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_init::$4 ? ! (bool~) bitmap_init::$3 + (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + (byte*) bitmap_init::bitmap#1 ← phi( bitmap_init/(byte*) bitmap_init::bitmap#2 bitmap_init::@2/(byte*) bitmap_init::bitmap#3 ) + (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 + *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 + (byte~) bitmap_init::$1 ← > (byte*) bitmap_init::bitmap#1 + *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$1 + *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + (byte~) bitmap_init::$2 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_init::bits#1 ← (byte~) bitmap_init::$2 + (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_init::$4 ← ! (bool~) bitmap_init::$3 if((bool~) bitmap_init::$4) goto bitmap_init::@2 to:bitmap_init::@3 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@3 - (byte) bitmap_init::bits#4 ? phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) - (byte*) bitmap_init::bitmap#3 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) - (byte) bitmap_init::x#3 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) - (byte) bitmap_init::x#1 ? (byte) bitmap_init::x#3 + rangenext(0,$ff) - (bool~) bitmap_init::$5 ? (byte) bitmap_init::x#1 != rangelast(0,$ff) + (byte) bitmap_init::bits#4 ← phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) + (byte*) bitmap_init::bitmap#3 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) + (byte) bitmap_init::x#3 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) + (byte) bitmap_init::x#1 ← (byte) bitmap_init::x#3 + rangenext(0,$ff) + (bool~) bitmap_init::$5 ← (byte) bitmap_init::x#1 != rangelast(0,$ff) if((bool~) bitmap_init::$5) goto bitmap_init::@1 to:bitmap_init::@4 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@1 - (byte*) bitmap_init::bitmap#4 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 ) - (byte) bitmap_init::x#4 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) - (byte) bitmap_init::bits#2 ? (byte/word/signed word/dword/signed dword) $80 + (byte*) bitmap_init::bitmap#4 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 ) + (byte) bitmap_init::x#4 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) + (byte) bitmap_init::bits#2 ← (byte/word/signed word/dword/signed dword) $80 to:bitmap_init::@2 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@2 - (byte*) bitmap_init::yoffs#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bitmap_init::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::yoffs#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_init::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@4 bitmap_init::@6 - (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) - (byte) bitmap_init::y#2 ? phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) - (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 - (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 - *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 - (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 - *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 - (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$11 ? (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$12 ? ! (bool~) bitmap_init::$11 + (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) + (byte) bitmap_init::y#2 ← phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) + (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 + (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 + *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 + (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 + *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 + (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$12 ← ! (bool~) bitmap_init::$11 if((bool~) bitmap_init::$12) goto bitmap_init::@6 to:bitmap_init::@7 bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@5 bitmap_init::@7 - (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) - (byte) bitmap_init::y#3 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) - (byte) bitmap_init::y#1 ? (byte) bitmap_init::y#3 + rangenext(0,$ff) - (bool~) bitmap_init::$15 ? (byte) bitmap_init::y#1 != rangelast(0,$ff) + (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) + (byte) bitmap_init::y#3 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) + (byte) bitmap_init::y#1 ← (byte) bitmap_init::y#3 + rangenext(0,$ff) + (bool~) bitmap_init::$15 ← (byte) bitmap_init::y#1 != rangelast(0,$ff) if((bool~) bitmap_init::$15) goto bitmap_init::@5 to:bitmap_init::@return bitmap_init::@7: scope:[bitmap_init] from bitmap_init::@5 - (byte) bitmap_init::y#4 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) - (byte*) bitmap_init::yoffs#3 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) - (word/signed word/dword/signed dword~) bitmap_init::$13 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*~) bitmap_init::$14 ? (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$13 - (byte*) bitmap_init::yoffs#1 ? (byte*~) bitmap_init::$14 + (byte) bitmap_init::y#4 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) + (byte*) bitmap_init::yoffs#3 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) + (word/signed word/dword/signed dword~) bitmap_init::$13 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*~) bitmap_init::$14 ← (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$13 + (byte*) bitmap_init::yoffs#1 ← (byte*~) bitmap_init::$14 to:bitmap_init::@6 bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@6 return to:@return bitmap_clear: scope:[bitmap_clear] from gfx_init_vic_bitmap::@3 - (byte*~) bitmap_clear::$0 ? ((byte*)) { *((byte[$100]) bitmap_plot_xhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_xlo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } - (byte*) bitmap_clear::bitmap#0 ? (byte*~) bitmap_clear::$0 - (byte) bitmap_clear::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) bitmap_clear::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_xhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_xlo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } + (byte*) bitmap_clear::bitmap#0 ← (byte*~) bitmap_clear::$0 + (byte) bitmap_clear::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) - (byte) bitmap_clear::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) + (byte) bitmap_clear::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - (byte) bitmap_clear::y#3 ? phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - (byte) bitmap_clear::x#1 ? (byte) bitmap_clear::x#2 + rangenext(0,$c7) - (bool~) bitmap_clear::$1 ? (byte) bitmap_clear::x#1 != rangelast(0,$c7) + (byte) bitmap_clear::y#3 ← phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + (byte) bitmap_clear::x#1 ← (byte) bitmap_clear::x#2 + rangenext(0,$c7) + (bool~) bitmap_clear::$1 ← (byte) bitmap_clear::x#1 != rangelast(0,$c7) if((bool~) bitmap_clear::$1) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - (byte*) bitmap_clear::bitmap#4 ? phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - (byte) bitmap_clear::y#2 ? phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::y#1 ? (byte) bitmap_clear::y#2 + rangenext(0,$27) - (bool~) bitmap_clear::$2 ? (byte) bitmap_clear::y#1 != rangelast(0,$27) + (byte*) bitmap_clear::bitmap#4 ← phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + (byte) bitmap_clear::y#2 ← phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::y#1 ← (byte) bitmap_clear::y#2 + rangenext(0,$27) + (bool~) bitmap_clear::$2 ← (byte) bitmap_clear::y#1 != rangelast(0,$27) if((bool~) bitmap_clear::$2) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 return to:@return bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1 - (byte) bitmap_plot::y#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) - (byte) bitmap_plot::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) - (word) bitmap_plot::plotter_x#0 ? { *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4), *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) } - (word) bitmap_plot::plotter_y#0 ? { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) } - (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 - (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$0 - (byte~) bitmap_plot::$1 ? *((byte*) bitmap_plot::plotter#0) | *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) - *((byte*) bitmap_plot::plotter#0) ? (byte~) bitmap_plot::$1 + (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) + (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) + (word) bitmap_plot::plotter_x#0 ← { *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4), *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) } + (word) bitmap_plot::plotter_y#0 ← { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) } + (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 + (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$0 + (byte~) bitmap_plot::$1 ← *((byte*) bitmap_plot::plotter#0) | *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) + *((byte*) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot return to:@return bitmap_line: scope:[bitmap_line] from gfx_init_vic_bitmap::@1 - (byte) bitmap_line::y1#13 ? phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::y1#0 ) - (byte) bitmap_line::y0#13 ? phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::y0#0 ) - (byte) bitmap_line::x1#1 ? phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::x1#0 ) - (byte) bitmap_line::x0#1 ? phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::x0#0 ) - (byte) bitmap_line::xd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bitmap_line::yd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_line::$0 ? (byte) bitmap_line::x0#1 < (byte) bitmap_line::x1#1 + (byte) bitmap_line::y1#13 ← phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::y1#0 ) + (byte) bitmap_line::y0#13 ← phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::y0#0 ) + (byte) bitmap_line::x1#1 ← phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::x1#0 ) + (byte) bitmap_line::x0#1 ← phi( gfx_init_vic_bitmap::@1/(byte) bitmap_line::x0#0 ) + (byte) bitmap_line::xd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_line::yd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_line::$0 ← (byte) bitmap_line::x0#1 < (byte) bitmap_line::x1#1 if((bool~) bitmap_line::$0) goto bitmap_line::@1 to:bitmap_line::@3 bitmap_line::@1: scope:[bitmap_line] from bitmap_line - (byte) bitmap_line::y1#1 ? phi( bitmap_line/(byte) bitmap_line::y1#13 ) - (byte) bitmap_line::y0#1 ? phi( bitmap_line/(byte) bitmap_line::y0#13 ) - (byte) bitmap_line::x0#2 ? phi( bitmap_line/(byte) bitmap_line::x0#1 ) - (byte) bitmap_line::x1#2 ? phi( bitmap_line/(byte) bitmap_line::x1#1 ) - (byte~) bitmap_line::$11 ? (byte) bitmap_line::x1#2 - (byte) bitmap_line::x0#2 - (byte) bitmap_line::xd#1 ? (byte~) bitmap_line::$11 - (bool~) bitmap_line::$12 ? (byte) bitmap_line::y0#1 < (byte) bitmap_line::y1#1 + (byte) bitmap_line::y1#1 ← phi( bitmap_line/(byte) bitmap_line::y1#13 ) + (byte) bitmap_line::y0#1 ← phi( bitmap_line/(byte) bitmap_line::y0#13 ) + (byte) bitmap_line::x0#2 ← phi( bitmap_line/(byte) bitmap_line::x0#1 ) + (byte) bitmap_line::x1#2 ← phi( bitmap_line/(byte) bitmap_line::x1#1 ) + (byte~) bitmap_line::$11 ← (byte) bitmap_line::x1#2 - (byte) bitmap_line::x0#2 + (byte) bitmap_line::xd#1 ← (byte~) bitmap_line::$11 + (bool~) bitmap_line::$12 ← (byte) bitmap_line::y0#1 < (byte) bitmap_line::y1#1 if((bool~) bitmap_line::$12) goto bitmap_line::@20 to:bitmap_line::@7 bitmap_line::@3: scope:[bitmap_line] from bitmap_line - (byte) bitmap_line::y1#2 ? phi( bitmap_line/(byte) bitmap_line::y1#13 ) - (byte) bitmap_line::y0#2 ? phi( bitmap_line/(byte) bitmap_line::y0#13 ) - (byte) bitmap_line::x1#3 ? phi( bitmap_line/(byte) bitmap_line::x1#1 ) - (byte) bitmap_line::x0#3 ? phi( bitmap_line/(byte) bitmap_line::x0#1 ) - (byte~) bitmap_line::$1 ? (byte) bitmap_line::x0#3 - (byte) bitmap_line::x1#3 - (byte) bitmap_line::xd#2 ? (byte~) bitmap_line::$1 - (bool~) bitmap_line::$2 ? (byte) bitmap_line::y0#2 < (byte) bitmap_line::y1#2 + (byte) bitmap_line::y1#2 ← phi( bitmap_line/(byte) bitmap_line::y1#13 ) + (byte) bitmap_line::y0#2 ← phi( bitmap_line/(byte) bitmap_line::y0#13 ) + (byte) bitmap_line::x1#3 ← phi( bitmap_line/(byte) bitmap_line::x1#1 ) + (byte) bitmap_line::x0#3 ← phi( bitmap_line/(byte) bitmap_line::x0#1 ) + (byte~) bitmap_line::$1 ← (byte) bitmap_line::x0#3 - (byte) bitmap_line::x1#3 + (byte) bitmap_line::xd#2 ← (byte~) bitmap_line::$1 + (bool~) bitmap_line::$2 ← (byte) bitmap_line::y0#2 < (byte) bitmap_line::y1#2 if((bool~) bitmap_line::$2) goto bitmap_line::@10 to:bitmap_line::@4 bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@3 - (byte) bitmap_line::x0#11 ? phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) - (byte) bitmap_line::x1#11 ? phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) - (byte) bitmap_line::xd#3 ? phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) - (byte) bitmap_line::y0#3 ? phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) - (byte) bitmap_line::y1#3 ? phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) - (byte~) bitmap_line::$7 ? (byte) bitmap_line::y1#3 - (byte) bitmap_line::y0#3 - (byte) bitmap_line::yd#1 ? (byte~) bitmap_line::$7 - (bool~) bitmap_line::$8 ? (byte) bitmap_line::yd#1 < (byte) bitmap_line::xd#3 + (byte) bitmap_line::x0#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) + (byte) bitmap_line::x1#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) + (byte) bitmap_line::xd#3 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) + (byte) bitmap_line::y0#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) + (byte) bitmap_line::y1#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) + (byte~) bitmap_line::$7 ← (byte) bitmap_line::y1#3 - (byte) bitmap_line::y0#3 + (byte) bitmap_line::yd#1 ← (byte~) bitmap_line::$7 + (bool~) bitmap_line::$8 ← (byte) bitmap_line::yd#1 < (byte) bitmap_line::xd#3 if((bool~) bitmap_line::$8) goto bitmap_line::@15 to:bitmap_line::@17 bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3 - (byte) bitmap_line::x0#10 ? phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) - (byte) bitmap_line::x1#10 ? phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) - (byte) bitmap_line::xd#4 ? phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) - (byte) bitmap_line::y1#4 ? phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) - (byte) bitmap_line::y0#4 ? phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) - (byte~) bitmap_line::$3 ? (byte) bitmap_line::y0#4 - (byte) bitmap_line::y1#4 - (byte) bitmap_line::yd#2 ? (byte~) bitmap_line::$3 - (bool~) bitmap_line::$4 ? (byte) bitmap_line::yd#2 < (byte) bitmap_line::xd#4 + (byte) bitmap_line::x0#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) + (byte) bitmap_line::x1#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) + (byte) bitmap_line::xd#4 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) + (byte) bitmap_line::y1#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) + (byte) bitmap_line::y0#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) + (byte~) bitmap_line::$3 ← (byte) bitmap_line::y0#4 - (byte) bitmap_line::y1#4 + (byte) bitmap_line::yd#2 ← (byte~) bitmap_line::$3 + (bool~) bitmap_line::$4 ← (byte) bitmap_line::yd#2 < (byte) bitmap_line::xd#4 if((bool~) bitmap_line::$4) goto bitmap_line::@11 to:bitmap_line::@5 bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@4 - (byte) bitmap_line::yd#5 ? phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) - (byte) bitmap_line::xd#5 ? phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) - (byte) bitmap_line::x0#4 ? phi( bitmap_line::@4/(byte) bitmap_line::x0#10 ) - (byte) bitmap_line::y1#5 ? phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) - (byte) bitmap_line::x1#4 ? phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) - (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#4 - (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#5 - (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#4 - (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#5 - (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#5 + (byte) bitmap_line::yd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) + (byte) bitmap_line::xd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) + (byte) bitmap_line::x0#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x0#10 ) + (byte) bitmap_line::y1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) + (byte) bitmap_line::x1#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) + (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#4 + (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#5 + (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#4 + (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#5 + (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#5 call bitmap_line_xdyi to:bitmap_line::@29 bitmap_line::@29: scope:[bitmap_line] from bitmap_line::@11 to:bitmap_line::@return bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@4 - (byte) bitmap_line::xd#6 ? phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) - (byte) bitmap_line::yd#6 ? phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) - (byte) bitmap_line::y0#5 ? phi( bitmap_line::@4/(byte) bitmap_line::y0#4 ) - (byte) bitmap_line::x1#5 ? phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) - (byte) bitmap_line::y1#6 ? phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) - (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#6 - (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#5 - (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#5 - (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#6 - (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#6 + (byte) bitmap_line::xd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) + (byte) bitmap_line::yd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) + (byte) bitmap_line::y0#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y0#4 ) + (byte) bitmap_line::x1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) + (byte) bitmap_line::y1#6 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) + (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#6 + (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#5 + (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#5 + (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#6 + (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#6 call bitmap_line_ydxi to:bitmap_line::@30 bitmap_line::@30: scope:[bitmap_line] from bitmap_line::@5 to:bitmap_line::@return bitmap_line::@15: scope:[bitmap_line] from bitmap_line::@10 - (byte) bitmap_line::yd#7 ? phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) - (byte) bitmap_line::xd#7 ? phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) - (byte) bitmap_line::x0#5 ? phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) - (byte) bitmap_line::y1#7 ? phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) - (byte) bitmap_line::x1#6 ? phi( bitmap_line::@10/(byte) bitmap_line::x1#11 ) - (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#6 - (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#7 - (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#5 - (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#7 - (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#7 + (byte) bitmap_line::yd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) + (byte) bitmap_line::xd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) + (byte) bitmap_line::x0#5 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) + (byte) bitmap_line::y1#7 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) + (byte) bitmap_line::x1#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x1#11 ) + (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#6 + (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#7 + (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#5 + (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#7 + (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#7 call bitmap_line_xdyd to:bitmap_line::@31 bitmap_line::@31: scope:[bitmap_line] from bitmap_line::@15 to:bitmap_line::@return bitmap_line::@17: scope:[bitmap_line] from bitmap_line::@10 - (byte) bitmap_line::xd#8 ? phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) - (byte) bitmap_line::yd#8 ? phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) - (byte) bitmap_line::y1#8 ? phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) - (byte) bitmap_line::x0#6 ? phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) - (byte) bitmap_line::y0#6 ? phi( bitmap_line::@10/(byte) bitmap_line::y0#3 ) - (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#6 - (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#6 - (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#8 - (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#8 - (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#8 + (byte) bitmap_line::xd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) + (byte) bitmap_line::yd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) + (byte) bitmap_line::y1#8 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) + (byte) bitmap_line::x0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) + (byte) bitmap_line::y0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::y0#3 ) + (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#6 + (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#6 + (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#8 + (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#8 + (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#8 call bitmap_line_ydxd to:bitmap_line::@32 bitmap_line::@32: scope:[bitmap_line] from bitmap_line::@17 to:bitmap_line::@return bitmap_line::@20: scope:[bitmap_line] from bitmap_line::@1 - (byte) bitmap_line::x1#13 ? phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) - (byte) bitmap_line::x0#13 ? phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) - (byte) bitmap_line::xd#9 ? phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) - (byte) bitmap_line::y0#7 ? phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) - (byte) bitmap_line::y1#9 ? phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) - (byte~) bitmap_line::$17 ? (byte) bitmap_line::y1#9 - (byte) bitmap_line::y0#7 - (byte) bitmap_line::yd#3 ? (byte~) bitmap_line::$17 - (bool~) bitmap_line::$18 ? (byte) bitmap_line::yd#3 < (byte) bitmap_line::xd#9 + (byte) bitmap_line::x1#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) + (byte) bitmap_line::x0#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) + (byte) bitmap_line::xd#9 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) + (byte) bitmap_line::y0#7 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) + (byte) bitmap_line::y1#9 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) + (byte~) bitmap_line::$17 ← (byte) bitmap_line::y1#9 - (byte) bitmap_line::y0#7 + (byte) bitmap_line::yd#3 ← (byte~) bitmap_line::$17 + (bool~) bitmap_line::$18 ← (byte) bitmap_line::yd#3 < (byte) bitmap_line::xd#9 if((bool~) bitmap_line::$18) goto bitmap_line::@25 to:bitmap_line::@27 bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@1 - (byte) bitmap_line::x1#12 ? phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) - (byte) bitmap_line::x0#12 ? phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) - (byte) bitmap_line::xd#10 ? phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) - (byte) bitmap_line::y1#10 ? phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) - (byte) bitmap_line::y0#8 ? phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) - (byte~) bitmap_line::$13 ? (byte) bitmap_line::y0#8 - (byte) bitmap_line::y1#10 - (byte) bitmap_line::yd#4 ? (byte~) bitmap_line::$13 - (bool~) bitmap_line::$14 ? (byte) bitmap_line::yd#4 < (byte) bitmap_line::xd#10 + (byte) bitmap_line::x1#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) + (byte) bitmap_line::x0#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) + (byte) bitmap_line::xd#10 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) + (byte) bitmap_line::y1#10 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) + (byte) bitmap_line::y0#8 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) + (byte~) bitmap_line::$13 ← (byte) bitmap_line::y0#8 - (byte) bitmap_line::y1#10 + (byte) bitmap_line::yd#4 ← (byte~) bitmap_line::$13 + (bool~) bitmap_line::$14 ← (byte) bitmap_line::yd#4 < (byte) bitmap_line::xd#10 if((bool~) bitmap_line::$14) goto bitmap_line::@21 to:bitmap_line::@8 bitmap_line::@21: scope:[bitmap_line] from bitmap_line::@7 - (byte) bitmap_line::yd#9 ? phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) - (byte) bitmap_line::xd#11 ? phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) - (byte) bitmap_line::x1#7 ? phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) - (byte) bitmap_line::y0#9 ? phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) - (byte) bitmap_line::x0#7 ? phi( bitmap_line::@7/(byte) bitmap_line::x0#12 ) - (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#7 - (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#9 - (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#7 - (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#11 - (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#9 + (byte) bitmap_line::yd#9 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) + (byte) bitmap_line::xd#11 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) + (byte) bitmap_line::x1#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) + (byte) bitmap_line::y0#9 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) + (byte) bitmap_line::x0#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x0#12 ) + (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#7 + (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#9 + (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#7 + (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#11 + (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#9 call bitmap_line_xdyd to:bitmap_line::@33 bitmap_line::@33: scope:[bitmap_line] from bitmap_line::@21 to:bitmap_line::@return bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@7 - (byte) bitmap_line::xd#12 ? phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) - (byte) bitmap_line::yd#10 ? phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) - (byte) bitmap_line::y0#10 ? phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) - (byte) bitmap_line::x1#8 ? phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) - (byte) bitmap_line::y1#11 ? phi( bitmap_line::@7/(byte) bitmap_line::y1#10 ) - (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#11 - (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#8 - (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#10 - (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#12 + (byte) bitmap_line::xd#12 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) + (byte) bitmap_line::yd#10 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) + (byte) bitmap_line::y0#10 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) + (byte) bitmap_line::x1#8 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) + (byte) bitmap_line::y1#11 ← phi( bitmap_line::@7/(byte) bitmap_line::y1#10 ) + (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#11 + (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#8 + (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#10 + (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#12 call bitmap_line_ydxd to:bitmap_line::@34 bitmap_line::@34: scope:[bitmap_line] from bitmap_line::@8 to:bitmap_line::@return bitmap_line::@25: scope:[bitmap_line] from bitmap_line::@20 - (byte) bitmap_line::yd#11 ? phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) - (byte) bitmap_line::xd#13 ? phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) - (byte) bitmap_line::x1#9 ? phi( bitmap_line::@20/(byte) bitmap_line::x1#13 ) - (byte) bitmap_line::y0#11 ? phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) - (byte) bitmap_line::x0#8 ? phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) - (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#8 - (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#11 - (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#9 - (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#13 - (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + (byte) bitmap_line::yd#11 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) + (byte) bitmap_line::xd#13 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) + (byte) bitmap_line::x1#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x1#13 ) + (byte) bitmap_line::y0#11 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) + (byte) bitmap_line::x0#8 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) + (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#8 + (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#11 + (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#9 + (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#13 + (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 call bitmap_line_xdyi to:bitmap_line::@35 bitmap_line::@35: scope:[bitmap_line] from bitmap_line::@25 to:bitmap_line::@return bitmap_line::@27: scope:[bitmap_line] from bitmap_line::@20 - (byte) bitmap_line::xd#14 ? phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) - (byte) bitmap_line::yd#12 ? phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) - (byte) bitmap_line::y1#12 ? phi( bitmap_line::@20/(byte) bitmap_line::y1#9 ) - (byte) bitmap_line::x0#9 ? phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) - (byte) bitmap_line::y0#12 ? phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) - (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#12 - (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#9 - (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#12 - (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#12 - (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#14 + (byte) bitmap_line::xd#14 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) + (byte) bitmap_line::yd#12 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) + (byte) bitmap_line::y1#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y1#9 ) + (byte) bitmap_line::x0#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) + (byte) bitmap_line::y0#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) + (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#12 + (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#9 + (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#12 + (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#12 + (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#14 call bitmap_line_ydxi to:bitmap_line::@36 bitmap_line::@36: scope:[bitmap_line] from bitmap_line::@27 @@ -1031,842 +1031,842 @@ bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@29 bitmap_line::@3 return to:@return bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@11 bitmap_line::@25 - (byte) bitmap_line_xdyi::x1#6 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x1#1 ) - (byte) bitmap_line_xdyi::xd#5 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::xd#1 ) - (byte) bitmap_line_xdyi::y#5 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::y#0 bitmap_line::@25/(byte) bitmap_line_xdyi::y#1 ) - (byte) bitmap_line_xdyi::x#6 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x#1 ) - (byte) bitmap_line_xdyi::yd#2 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::yd#1 ) - (byte~) bitmap_line_xdyi::$0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_xdyi::e#0 ? (byte~) bitmap_line_xdyi::$0 + (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x1#1 ) + (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::xd#1 ) + (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::y#0 bitmap_line::@25/(byte) bitmap_line_xdyi::y#1 ) + (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x#1 ) + (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::yd#1 ) + (byte~) bitmap_line_xdyi::$0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_xdyi::e#0 ← (byte~) bitmap_line_xdyi::$0 to:bitmap_line_xdyi::@1 bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2 - (byte) bitmap_line_xdyi::x1#5 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x1#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x1#2 ) - (byte) bitmap_line_xdyi::xd#4 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::xd#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::xd#6 ) - (byte) bitmap_line_xdyi::yd#4 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::yd#2 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::yd#5 ) - (byte) bitmap_line_xdyi::e#5 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) - (byte) bitmap_line_xdyi::y#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) - (byte) bitmap_line_xdyi::x#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#5 ) - (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 + (byte) bitmap_line_xdyi::x1#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x1#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x1#2 ) + (byte) bitmap_line_xdyi::xd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::xd#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::xd#6 ) + (byte) bitmap_line_xdyi::yd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::yd#2 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::yd#5 ) + (byte) bitmap_line_xdyi::e#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) + (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) + (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#5 ) + (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 call bitmap_plot to:bitmap_line_xdyi::@5 bitmap_line_xdyi::@5: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1 - (byte) bitmap_line_xdyi::y#7 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::y#3 ) - (byte) bitmap_line_xdyi::x1#4 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x1#5 ) - (byte) bitmap_line_xdyi::xd#2 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::xd#4 ) - (byte) bitmap_line_xdyi::yd#3 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::yd#4 ) - (byte) bitmap_line_xdyi::e#3 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::e#5 ) - (byte) bitmap_line_xdyi::x#4 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x#3 ) - (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#4 - (byte~) bitmap_line_xdyi::$2 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#3 - (byte) bitmap_line_xdyi::e#1 ? (byte~) bitmap_line_xdyi::$2 - (bool~) bitmap_line_xdyi::$3 ? (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 - (bool~) bitmap_line_xdyi::$4 ? ! (bool~) bitmap_line_xdyi::$3 + (byte) bitmap_line_xdyi::y#7 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::y#3 ) + (byte) bitmap_line_xdyi::x1#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x1#5 ) + (byte) bitmap_line_xdyi::xd#2 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::xd#4 ) + (byte) bitmap_line_xdyi::yd#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::yd#4 ) + (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::e#5 ) + (byte) bitmap_line_xdyi::x#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x#3 ) + (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#4 + (byte~) bitmap_line_xdyi::$2 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#3 + (byte) bitmap_line_xdyi::e#1 ← (byte~) bitmap_line_xdyi::$2 + (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 + (bool~) bitmap_line_xdyi::$4 ← ! (bool~) bitmap_line_xdyi::$3 if((bool~) bitmap_line_xdyi::$4) goto bitmap_line_xdyi::@2 to:bitmap_line_xdyi::@3 bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@5 - (byte) bitmap_line_xdyi::xd#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) - (byte) bitmap_line_xdyi::yd#5 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::yd#6 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) - (byte) bitmap_line_xdyi::e#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) - (byte) bitmap_line_xdyi::y#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) - (byte) bitmap_line_xdyi::x#5 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x#7 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) - (byte) bitmap_line_xdyi::x1#2 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x1#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_xdyi::$7 ? (byte) bitmap_line_xdyi::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 + (byte) bitmap_line_xdyi::xd#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) + (byte) bitmap_line_xdyi::yd#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::yd#6 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) + (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) + (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) + (byte) bitmap_line_xdyi::x#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x#7 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) + (byte) bitmap_line_xdyi::x1#2 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x1#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_xdyi::$7 ← (byte) bitmap_line_xdyi::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 if((bool~) bitmap_line_xdyi::$7) goto bitmap_line_xdyi::@1 to:bitmap_line_xdyi::@return bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@5 - (byte) bitmap_line_xdyi::yd#6 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) - (byte) bitmap_line_xdyi::x#7 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) - (byte) bitmap_line_xdyi::x1#3 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) - (byte) bitmap_line_xdyi::xd#3 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) - (byte) bitmap_line_xdyi::e#4 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) - (byte) bitmap_line_xdyi::y#4 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) - (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#4 - (byte~) bitmap_line_xdyi::$5 ? (byte) bitmap_line_xdyi::e#4 - (byte) bitmap_line_xdyi::xd#3 - (byte) bitmap_line_xdyi::e#2 ? (byte~) bitmap_line_xdyi::$5 + (byte) bitmap_line_xdyi::yd#6 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) + (byte) bitmap_line_xdyi::x#7 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) + (byte) bitmap_line_xdyi::x1#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) + (byte) bitmap_line_xdyi::xd#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) + (byte) bitmap_line_xdyi::e#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) + (byte) bitmap_line_xdyi::y#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) + (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#4 + (byte~) bitmap_line_xdyi::$5 ← (byte) bitmap_line_xdyi::e#4 - (byte) bitmap_line_xdyi::xd#3 + (byte) bitmap_line_xdyi::e#2 ← (byte~) bitmap_line_xdyi::$5 to:bitmap_line_xdyi::@2 bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2 return to:@return bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@15 bitmap_line::@21 - (byte) bitmap_line_xdyd::x1#6 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x1#1 ) - (byte) bitmap_line_xdyd::xd#5 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::xd#1 ) - (byte) bitmap_line_xdyd::y#5 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::y#0 bitmap_line::@21/(byte) bitmap_line_xdyd::y#1 ) - (byte) bitmap_line_xdyd::x#6 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x#1 ) - (byte) bitmap_line_xdyd::yd#2 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::yd#1 ) - (byte~) bitmap_line_xdyd::$0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_xdyd::e#0 ? (byte~) bitmap_line_xdyd::$0 + (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x1#1 ) + (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::xd#1 ) + (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::y#0 bitmap_line::@21/(byte) bitmap_line_xdyd::y#1 ) + (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x#1 ) + (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::yd#1 ) + (byte~) bitmap_line_xdyd::$0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_xdyd::e#0 ← (byte~) bitmap_line_xdyd::$0 to:bitmap_line_xdyd::@1 bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2 - (byte) bitmap_line_xdyd::x1#5 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x1#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x1#2 ) - (byte) bitmap_line_xdyd::xd#4 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::xd#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::xd#6 ) - (byte) bitmap_line_xdyd::yd#4 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::yd#2 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::yd#5 ) - (byte) bitmap_line_xdyd::e#5 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) - (byte) bitmap_line_xdyd::y#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) - (byte) bitmap_line_xdyd::x#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#5 ) - (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 + (byte) bitmap_line_xdyd::x1#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x1#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x1#2 ) + (byte) bitmap_line_xdyd::xd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::xd#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::xd#6 ) + (byte) bitmap_line_xdyd::yd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::yd#2 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::yd#5 ) + (byte) bitmap_line_xdyd::e#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) + (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) + (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#5 ) + (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 call bitmap_plot to:bitmap_line_xdyd::@5 bitmap_line_xdyd::@5: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1 - (byte) bitmap_line_xdyd::y#7 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::y#3 ) - (byte) bitmap_line_xdyd::x1#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x1#5 ) - (byte) bitmap_line_xdyd::xd#2 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::xd#4 ) - (byte) bitmap_line_xdyd::yd#3 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::yd#4 ) - (byte) bitmap_line_xdyd::e#3 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::e#5 ) - (byte) bitmap_line_xdyd::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x#3 ) - (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#4 - (byte~) bitmap_line_xdyd::$2 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#3 - (byte) bitmap_line_xdyd::e#1 ? (byte~) bitmap_line_xdyd::$2 - (bool~) bitmap_line_xdyd::$3 ? (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 - (bool~) bitmap_line_xdyd::$4 ? ! (bool~) bitmap_line_xdyd::$3 + (byte) bitmap_line_xdyd::y#7 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::y#3 ) + (byte) bitmap_line_xdyd::x1#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x1#5 ) + (byte) bitmap_line_xdyd::xd#2 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::xd#4 ) + (byte) bitmap_line_xdyd::yd#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::yd#4 ) + (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::e#5 ) + (byte) bitmap_line_xdyd::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x#3 ) + (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#4 + (byte~) bitmap_line_xdyd::$2 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#3 + (byte) bitmap_line_xdyd::e#1 ← (byte~) bitmap_line_xdyd::$2 + (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 + (bool~) bitmap_line_xdyd::$4 ← ! (bool~) bitmap_line_xdyd::$3 if((bool~) bitmap_line_xdyd::$4) goto bitmap_line_xdyd::@2 to:bitmap_line_xdyd::@3 bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@5 - (byte) bitmap_line_xdyd::xd#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) - (byte) bitmap_line_xdyd::yd#5 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::yd#6 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) - (byte) bitmap_line_xdyd::e#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) - (byte) bitmap_line_xdyd::y#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) - (byte) bitmap_line_xdyd::x#5 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x#7 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) - (byte) bitmap_line_xdyd::x1#2 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x1#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_xdyd::$7 ? (byte) bitmap_line_xdyd::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 + (byte) bitmap_line_xdyd::xd#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) + (byte) bitmap_line_xdyd::yd#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::yd#6 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) + (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) + (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) + (byte) bitmap_line_xdyd::x#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x#7 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) + (byte) bitmap_line_xdyd::x1#2 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x1#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_xdyd::$7 ← (byte) bitmap_line_xdyd::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 if((bool~) bitmap_line_xdyd::$7) goto bitmap_line_xdyd::@1 to:bitmap_line_xdyd::@return bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@5 - (byte) bitmap_line_xdyd::yd#6 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) - (byte) bitmap_line_xdyd::x#7 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) - (byte) bitmap_line_xdyd::x1#3 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) - (byte) bitmap_line_xdyd::xd#3 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) - (byte) bitmap_line_xdyd::e#4 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) - (byte) bitmap_line_xdyd::y#4 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) - (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#4 - (byte~) bitmap_line_xdyd::$5 ? (byte) bitmap_line_xdyd::e#4 - (byte) bitmap_line_xdyd::xd#3 - (byte) bitmap_line_xdyd::e#2 ? (byte~) bitmap_line_xdyd::$5 + (byte) bitmap_line_xdyd::yd#6 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) + (byte) bitmap_line_xdyd::x#7 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) + (byte) bitmap_line_xdyd::x1#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) + (byte) bitmap_line_xdyd::xd#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) + (byte) bitmap_line_xdyd::e#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) + (byte) bitmap_line_xdyd::y#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) + (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#4 + (byte~) bitmap_line_xdyd::$5 ← (byte) bitmap_line_xdyd::e#4 - (byte) bitmap_line_xdyd::xd#3 + (byte) bitmap_line_xdyd::e#2 ← (byte~) bitmap_line_xdyd::$5 to:bitmap_line_xdyd::@2 bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2 return to:@return bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@27 bitmap_line::@5 - (byte) bitmap_line_ydxi::y1#6 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y1#0 ) - (byte) bitmap_line_ydxi::yd#5 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::yd#0 ) - (byte) bitmap_line_ydxi::y#6 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y#0 ) - (byte) bitmap_line_ydxi::x#5 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 bitmap_line::@5/(byte) bitmap_line_ydxi::x#0 ) - (byte) bitmap_line_ydxi::xd#2 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::xd#0 ) - (byte~) bitmap_line_ydxi::$0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_ydxi::e#0 ? (byte~) bitmap_line_ydxi::$0 + (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y1#0 ) + (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::yd#0 ) + (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y#0 ) + (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 bitmap_line::@5/(byte) bitmap_line_ydxi::x#0 ) + (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::xd#0 ) + (byte~) bitmap_line_ydxi::$0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_ydxi::e#0 ← (byte~) bitmap_line_ydxi::$0 to:bitmap_line_ydxi::@1 bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2 - (byte) bitmap_line_ydxi::y1#5 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y1#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y1#2 ) - (byte) bitmap_line_ydxi::yd#4 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::yd#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::yd#6 ) - (byte) bitmap_line_ydxi::xd#4 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::xd#2 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::xd#5 ) - (byte) bitmap_line_ydxi::e#5 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) - (byte) bitmap_line_ydxi::y#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#5 ) - (byte) bitmap_line_ydxi::x#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) - (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 + (byte) bitmap_line_ydxi::y1#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y1#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y1#2 ) + (byte) bitmap_line_ydxi::yd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::yd#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::yd#6 ) + (byte) bitmap_line_ydxi::xd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::xd#2 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::xd#5 ) + (byte) bitmap_line_ydxi::e#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) + (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#5 ) + (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) + (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 call bitmap_plot to:bitmap_line_ydxi::@5 bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1 - (byte) bitmap_line_ydxi::x#7 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::x#3 ) - (byte) bitmap_line_ydxi::y1#4 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y1#5 ) - (byte) bitmap_line_ydxi::yd#2 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::yd#4 ) - (byte) bitmap_line_ydxi::xd#3 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::xd#4 ) - (byte) bitmap_line_ydxi::e#3 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::e#5 ) - (byte) bitmap_line_ydxi::y#4 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y#3 ) - (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#4 - (byte~) bitmap_line_ydxi::$2 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#3 - (byte) bitmap_line_ydxi::e#1 ? (byte~) bitmap_line_ydxi::$2 - (bool~) bitmap_line_ydxi::$3 ? (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 - (bool~) bitmap_line_ydxi::$4 ? ! (bool~) bitmap_line_ydxi::$3 + (byte) bitmap_line_ydxi::x#7 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::x#3 ) + (byte) bitmap_line_ydxi::y1#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y1#5 ) + (byte) bitmap_line_ydxi::yd#2 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::yd#4 ) + (byte) bitmap_line_ydxi::xd#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::xd#4 ) + (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::e#5 ) + (byte) bitmap_line_ydxi::y#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y#3 ) + (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#4 + (byte~) bitmap_line_ydxi::$2 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#3 + (byte) bitmap_line_ydxi::e#1 ← (byte~) bitmap_line_ydxi::$2 + (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 + (bool~) bitmap_line_ydxi::$4 ← ! (bool~) bitmap_line_ydxi::$3 if((bool~) bitmap_line_ydxi::$4) goto bitmap_line_ydxi::@2 to:bitmap_line_ydxi::@3 bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5 - (byte) bitmap_line_ydxi::yd#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) - (byte) bitmap_line_ydxi::xd#5 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::xd#6 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) - (byte) bitmap_line_ydxi::e#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) - (byte) bitmap_line_ydxi::x#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) - (byte) bitmap_line_ydxi::y#5 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y#7 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) - (byte) bitmap_line_ydxi::y1#2 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y1#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_ydxi::$7 ? (byte) bitmap_line_ydxi::y#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 + (byte) bitmap_line_ydxi::yd#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) + (byte) bitmap_line_ydxi::xd#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::xd#6 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) + (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) + (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) + (byte) bitmap_line_ydxi::y#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y#7 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) + (byte) bitmap_line_ydxi::y1#2 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y1#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_ydxi::$7 ← (byte) bitmap_line_ydxi::y#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 if((bool~) bitmap_line_ydxi::$7) goto bitmap_line_ydxi::@1 to:bitmap_line_ydxi::@return bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5 - (byte) bitmap_line_ydxi::xd#6 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) - (byte) bitmap_line_ydxi::y#7 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) - (byte) bitmap_line_ydxi::y1#3 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) - (byte) bitmap_line_ydxi::yd#3 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) - (byte) bitmap_line_ydxi::e#4 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) - (byte) bitmap_line_ydxi::x#4 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) - (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#4 - (byte~) bitmap_line_ydxi::$5 ? (byte) bitmap_line_ydxi::e#4 - (byte) bitmap_line_ydxi::yd#3 - (byte) bitmap_line_ydxi::e#2 ? (byte~) bitmap_line_ydxi::$5 + (byte) bitmap_line_ydxi::xd#6 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) + (byte) bitmap_line_ydxi::y#7 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) + (byte) bitmap_line_ydxi::y1#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) + (byte) bitmap_line_ydxi::yd#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) + (byte) bitmap_line_ydxi::e#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) + (byte) bitmap_line_ydxi::x#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) + (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#4 + (byte~) bitmap_line_ydxi::$5 ← (byte) bitmap_line_ydxi::e#4 - (byte) bitmap_line_ydxi::yd#3 + (byte) bitmap_line_ydxi::e#2 ← (byte~) bitmap_line_ydxi::$5 to:bitmap_line_ydxi::@2 bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2 return to:@return bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@17 bitmap_line::@8 - (byte) bitmap_line_ydxd::y1#6 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y1#1 ) - (byte) bitmap_line_ydxd::yd#5 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::yd#1 ) - (byte) bitmap_line_ydxd::y#7 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y#1 ) - (byte) bitmap_line_ydxd::x#5 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::x#0 bitmap_line::@8/(byte) bitmap_line_ydxd::x#1 ) - (byte) bitmap_line_ydxd::xd#2 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::xd#1 ) - (byte~) bitmap_line_ydxd::$0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_ydxd::e#0 ? (byte~) bitmap_line_ydxd::$0 + (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y1#1 ) + (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::yd#1 ) + (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y#1 ) + (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::x#0 bitmap_line::@8/(byte) bitmap_line_ydxd::x#1 ) + (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::xd#1 ) + (byte~) bitmap_line_ydxd::$0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_ydxd::e#0 ← (byte~) bitmap_line_ydxd::$0 to:bitmap_line_ydxd::@1 bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2 - (byte) bitmap_line_ydxd::y1#5 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y1#6 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y1#2 ) - (byte) bitmap_line_ydxd::yd#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::yd#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::yd#6 ) - (byte) bitmap_line_ydxd::xd#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::xd#2 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::xd#5 ) - (byte) bitmap_line_ydxd::e#5 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) - (byte) bitmap_line_ydxd::y#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#6 ) - (byte) bitmap_line_ydxd::x#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) - (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#4 + (byte) bitmap_line_ydxd::y1#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y1#6 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y1#2 ) + (byte) bitmap_line_ydxd::yd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::yd#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::yd#6 ) + (byte) bitmap_line_ydxd::xd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::xd#2 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::xd#5 ) + (byte) bitmap_line_ydxd::e#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) + (byte) bitmap_line_ydxd::y#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#6 ) + (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) + (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#4 call bitmap_plot to:bitmap_line_ydxd::@5 bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1 - (byte) bitmap_line_ydxd::x#7 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::x#3 ) - (byte) bitmap_line_ydxd::y1#4 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y1#5 ) - (byte) bitmap_line_ydxd::yd#2 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::yd#4 ) - (byte) bitmap_line_ydxd::xd#3 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::xd#4 ) - (byte) bitmap_line_ydxd::e#3 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::e#5 ) - (byte) bitmap_line_ydxd::y#5 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y#4 ) - (byte) bitmap_line_ydxd::y#2 ? (byte) bitmap_line_ydxd::y#5 - (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 - (byte~) bitmap_line_ydxd::$2 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#3 - (byte) bitmap_line_ydxd::e#1 ? (byte~) bitmap_line_ydxd::$2 - (bool~) bitmap_line_ydxd::$3 ? (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 - (bool~) bitmap_line_ydxd::$4 ? ! (bool~) bitmap_line_ydxd::$3 + (byte) bitmap_line_ydxd::x#7 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::x#3 ) + (byte) bitmap_line_ydxd::y1#4 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y1#5 ) + (byte) bitmap_line_ydxd::yd#2 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::yd#4 ) + (byte) bitmap_line_ydxd::xd#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::xd#4 ) + (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::e#5 ) + (byte) bitmap_line_ydxd::y#5 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y#4 ) + (byte) bitmap_line_ydxd::y#2 ← (byte) bitmap_line_ydxd::y#5 + (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 + (byte~) bitmap_line_ydxd::$2 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#3 + (byte) bitmap_line_ydxd::e#1 ← (byte~) bitmap_line_ydxd::$2 + (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 + (bool~) bitmap_line_ydxd::$4 ← ! (bool~) bitmap_line_ydxd::$3 if((bool~) bitmap_line_ydxd::$4) goto bitmap_line_ydxd::@2 to:bitmap_line_ydxd::@3 bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5 - (byte) bitmap_line_ydxd::yd#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) - (byte) bitmap_line_ydxd::xd#5 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::xd#6 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) - (byte) bitmap_line_ydxd::e#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) - (byte) bitmap_line_ydxd::x#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) - (byte) bitmap_line_ydxd::y#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y#8 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) - (byte) bitmap_line_ydxd::y1#2 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y1#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_ydxd::$7 ? (byte) bitmap_line_ydxd::y#6 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 + (byte) bitmap_line_ydxd::yd#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) + (byte) bitmap_line_ydxd::xd#5 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::xd#6 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) + (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) + (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) + (byte) bitmap_line_ydxd::y#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y#8 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) + (byte) bitmap_line_ydxd::y1#2 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y1#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_ydxd::$7 ← (byte) bitmap_line_ydxd::y#6 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 if((bool~) bitmap_line_ydxd::$7) goto bitmap_line_ydxd::@1 to:bitmap_line_ydxd::@return bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5 - (byte) bitmap_line_ydxd::xd#6 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) - (byte) bitmap_line_ydxd::y#8 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) - (byte) bitmap_line_ydxd::y1#3 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) - (byte) bitmap_line_ydxd::yd#3 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) - (byte) bitmap_line_ydxd::e#4 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) - (byte) bitmap_line_ydxd::x#4 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) - (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#4 - (byte~) bitmap_line_ydxd::$5 ? (byte) bitmap_line_ydxd::e#4 - (byte) bitmap_line_ydxd::yd#3 - (byte) bitmap_line_ydxd::e#2 ? (byte~) bitmap_line_ydxd::$5 + (byte) bitmap_line_ydxd::xd#6 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) + (byte) bitmap_line_ydxd::y#8 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) + (byte) bitmap_line_ydxd::y1#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) + (byte) bitmap_line_ydxd::yd#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) + (byte) bitmap_line_ydxd::e#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) + (byte) bitmap_line_ydxd::x#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) + (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#4 + (byte~) bitmap_line_ydxd::$5 ← (byte) bitmap_line_ydxd::e#4 - (byte) bitmap_line_ydxd::yd#3 + (byte) bitmap_line_ydxd::e#2 ← (byte~) bitmap_line_ydxd::$5 to:bitmap_line_ydxd::@2 bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2 return to:@return main: scope:[main] from @68 - (byte) form_field_idx#55 ? phi( @68/(byte) form_field_idx#36 ) - (byte) keyboard_modifiers#94 ? phi( @68/(byte) keyboard_modifiers#53 ) - (byte) keyboard_events_size#101 ? phi( @68/(byte) keyboard_events_size#53 ) - (signed byte) form_cursor_count#47 ? phi( @68/(signed byte) form_cursor_count#26 ) - (byte*) print_char_cursor#63 ? phi( @68/(byte*) print_char_cursor#46 ) - (byte*) print_line_cursor#63 ? phi( @68/(byte*) print_line_cursor#44 ) - (byte*) print_screen#40 ? phi( @68/(byte*) print_screen#25 ) + (byte) form_field_idx#55 ← phi( @68/(byte) form_field_idx#36 ) + (byte) keyboard_modifiers#94 ← phi( @68/(byte) keyboard_modifiers#53 ) + (byte) keyboard_events_size#101 ← phi( @68/(byte) keyboard_events_size#53 ) + (signed byte) form_cursor_count#47 ← phi( @68/(signed byte) form_cursor_count#26 ) + (byte*) print_char_cursor#63 ← phi( @68/(byte*) print_char_cursor#46 ) + (byte*) print_line_cursor#63 ← phi( @68/(byte*) print_line_cursor#44 ) + (byte*) print_screen#40 ← phi( @68/(byte*) print_screen#25 ) asm { sei } - *((byte*) PROCPORT_DDR#0) ? (byte) PROCPORT_DDR_MEMORY_MASK#0 - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_IO#0 - *((byte*) DTV_FEATURE#0) ? (byte) DTV_FEATURE_ENABLE#0 + *((byte*) PROCPORT_DDR#0) ← (byte) PROCPORT_DDR_MEMORY_MASK#0 + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0 + *((byte*) DTV_FEATURE#0) ← (byte) DTV_FEATURE_ENABLE#0 call keyboard_init to:main::@7 main::@7: scope:[main] from main - (byte) form_field_idx#48 ? phi( main/(byte) form_field_idx#55 ) - (byte) keyboard_modifiers#78 ? phi( main/(byte) keyboard_modifiers#94 ) - (byte) keyboard_events_size#81 ? phi( main/(byte) keyboard_events_size#101 ) - (signed byte) form_cursor_count#38 ? phi( main/(signed byte) form_cursor_count#47 ) - (byte*) print_char_cursor#57 ? phi( main/(byte*) print_char_cursor#63 ) - (byte*) print_line_cursor#56 ? phi( main/(byte*) print_line_cursor#63 ) - (byte*) print_screen#34 ? phi( main/(byte*) print_screen#40 ) + (byte) form_field_idx#48 ← phi( main/(byte) form_field_idx#55 ) + (byte) keyboard_modifiers#78 ← phi( main/(byte) keyboard_modifiers#94 ) + (byte) keyboard_events_size#81 ← phi( main/(byte) keyboard_events_size#101 ) + (signed byte) form_cursor_count#38 ← phi( main/(signed byte) form_cursor_count#47 ) + (byte*) print_char_cursor#57 ← phi( main/(byte*) print_char_cursor#63 ) + (byte*) print_line_cursor#56 ← phi( main/(byte*) print_line_cursor#63 ) + (byte*) print_screen#34 ← phi( main/(byte*) print_screen#40 ) call gfx_init to:main::@8 main::@8: scope:[main] from main::@7 - (byte) form_field_idx#38 ? phi( main::@7/(byte) form_field_idx#48 ) - (byte) keyboard_modifiers#57 ? phi( main::@7/(byte) keyboard_modifiers#78 ) - (byte) keyboard_events_size#57 ? phi( main::@7/(byte) keyboard_events_size#81 ) - (signed byte) form_cursor_count#28 ? phi( main::@7/(signed byte) form_cursor_count#38 ) - (byte*) print_char_cursor#51 ? phi( main::@7/(byte*) print_char_cursor#57 ) - (byte*) print_line_cursor#48 ? phi( main::@7/(byte*) print_line_cursor#56 ) - (byte*) print_screen#27 ? phi( main::@7/(byte*) print_screen#34 ) + (byte) form_field_idx#38 ← phi( main::@7/(byte) form_field_idx#48 ) + (byte) keyboard_modifiers#57 ← phi( main::@7/(byte) keyboard_modifiers#78 ) + (byte) keyboard_events_size#57 ← phi( main::@7/(byte) keyboard_events_size#81 ) + (signed byte) form_cursor_count#28 ← phi( main::@7/(signed byte) form_cursor_count#38 ) + (byte*) print_char_cursor#51 ← phi( main::@7/(byte*) print_char_cursor#57 ) + (byte*) print_line_cursor#48 ← phi( main::@7/(byte*) print_line_cursor#56 ) + (byte*) print_screen#27 ← phi( main::@7/(byte*) print_screen#34 ) to:main::@1 main::@1: scope:[main] from main::@10 main::@8 - (byte) form_field_idx#26 ? phi( main::@10/(byte) form_field_idx#37 main::@8/(byte) form_field_idx#38 ) - (byte) keyboard_modifiers#40 ? phi( main::@10/(byte) keyboard_modifiers#8 main::@8/(byte) keyboard_modifiers#57 ) - (byte) keyboard_events_size#43 ? phi( main::@10/(byte) keyboard_events_size#7 main::@8/(byte) keyboard_events_size#57 ) - (signed byte) form_cursor_count#19 ? phi( main::@10/(signed byte) form_cursor_count#27 main::@8/(signed byte) form_cursor_count#28 ) - (byte*) print_char_cursor#42 ? phi( main::@10/(byte*) print_char_cursor#50 main::@8/(byte*) print_char_cursor#51 ) - (byte*) print_line_cursor#40 ? phi( main::@10/(byte*) print_line_cursor#47 main::@8/(byte*) print_line_cursor#48 ) - (byte*) print_screen#20 ? phi( main::@10/(byte*) print_screen#26 main::@8/(byte*) print_screen#27 ) + (byte) form_field_idx#26 ← phi( main::@10/(byte) form_field_idx#37 main::@8/(byte) form_field_idx#38 ) + (byte) keyboard_modifiers#40 ← phi( main::@10/(byte) keyboard_modifiers#8 main::@8/(byte) keyboard_modifiers#57 ) + (byte) keyboard_events_size#43 ← phi( main::@10/(byte) keyboard_events_size#7 main::@8/(byte) keyboard_events_size#57 ) + (signed byte) form_cursor_count#19 ← phi( main::@10/(signed byte) form_cursor_count#27 main::@8/(signed byte) form_cursor_count#28 ) + (byte*) print_char_cursor#42 ← phi( main::@10/(byte*) print_char_cursor#50 main::@8/(byte*) print_char_cursor#51 ) + (byte*) print_line_cursor#40 ← phi( main::@10/(byte*) print_line_cursor#47 main::@8/(byte*) print_line_cursor#48 ) + (byte*) print_screen#20 ← phi( main::@10/(byte*) print_screen#26 main::@8/(byte*) print_screen#27 ) if(true) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte) form_field_idx#25 ? phi( main::@1/(byte) form_field_idx#26 ) - (byte) keyboard_modifiers#39 ? phi( main::@1/(byte) keyboard_modifiers#40 ) - (byte) keyboard_events_size#42 ? phi( main::@1/(byte) keyboard_events_size#43 ) - (signed byte) form_cursor_count#18 ? phi( main::@1/(signed byte) form_cursor_count#19 ) - (byte*) print_char_cursor#41 ? phi( main::@1/(byte*) print_char_cursor#42 ) - (byte*) print_line_cursor#39 ? phi( main::@1/(byte*) print_line_cursor#40 ) - (byte*) print_screen#19 ? phi( main::@1/(byte*) print_screen#20 ) + (byte) form_field_idx#25 ← phi( main::@1/(byte) form_field_idx#26 ) + (byte) keyboard_modifiers#39 ← phi( main::@1/(byte) keyboard_modifiers#40 ) + (byte) keyboard_events_size#42 ← phi( main::@1/(byte) keyboard_events_size#43 ) + (signed byte) form_cursor_count#18 ← phi( main::@1/(signed byte) form_cursor_count#19 ) + (byte*) print_char_cursor#41 ← phi( main::@1/(byte*) print_char_cursor#42 ) + (byte*) print_line_cursor#39 ← phi( main::@1/(byte*) print_line_cursor#40 ) + (byte*) print_screen#19 ← phi( main::@1/(byte*) print_screen#20 ) call form_mode to:main::@9 main::@9: scope:[main] from main::@2 - (byte) form_field_idx#11 ? phi( main::@2/(byte) form_field_idx#3 ) - (byte) keyboard_modifiers#22 ? phi( main::@2/(byte) keyboard_modifiers#13 ) - (byte) keyboard_events_size#25 ? phi( main::@2/(byte) keyboard_events_size#13 ) - (signed byte) form_cursor_count#10 ? phi( main::@2/(signed byte) form_cursor_count#3 ) - (byte*) print_char_cursor#27 ? phi( main::@2/(byte*) print_char_cursor#18 ) - (byte*) print_line_cursor#26 ? phi( main::@2/(byte*) print_line_cursor#17 ) - (byte*) print_screen#13 ? phi( main::@2/(byte*) print_screen#7 ) - (byte*) print_screen#3 ? (byte*) print_screen#13 - (byte*) print_line_cursor#9 ? (byte*) print_line_cursor#26 - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#27 - (signed byte) form_cursor_count#0 ? (signed byte) form_cursor_count#10 - (byte) keyboard_events_size#6 ? (byte) keyboard_events_size#25 - (byte) keyboard_modifiers#7 ? (byte) keyboard_modifiers#22 - (byte) form_field_idx#0 ? (byte) form_field_idx#11 + (byte) form_field_idx#11 ← phi( main::@2/(byte) form_field_idx#3 ) + (byte) keyboard_modifiers#22 ← phi( main::@2/(byte) keyboard_modifiers#13 ) + (byte) keyboard_events_size#25 ← phi( main::@2/(byte) keyboard_events_size#13 ) + (signed byte) form_cursor_count#10 ← phi( main::@2/(signed byte) form_cursor_count#3 ) + (byte*) print_char_cursor#27 ← phi( main::@2/(byte*) print_char_cursor#18 ) + (byte*) print_line_cursor#26 ← phi( main::@2/(byte*) print_line_cursor#17 ) + (byte*) print_screen#13 ← phi( main::@2/(byte*) print_screen#7 ) + (byte*) print_screen#3 ← (byte*) print_screen#13 + (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#26 + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#27 + (signed byte) form_cursor_count#0 ← (signed byte) form_cursor_count#10 + (byte) keyboard_events_size#6 ← (byte) keyboard_events_size#25 + (byte) keyboard_modifiers#7 ← (byte) keyboard_modifiers#22 + (byte) form_field_idx#0 ← (byte) form_field_idx#11 call gfx_mode to:main::@10 main::@10: scope:[main] from main::@9 - (byte) form_field_idx#37 ? phi( main::@9/(byte) form_field_idx#0 ) - (signed byte) form_cursor_count#27 ? phi( main::@9/(signed byte) form_cursor_count#0 ) - (byte*) print_char_cursor#50 ? phi( main::@9/(byte*) print_char_cursor#10 ) - (byte*) print_line_cursor#47 ? phi( main::@9/(byte*) print_line_cursor#9 ) - (byte*) print_screen#26 ? phi( main::@9/(byte*) print_screen#3 ) - (byte) keyboard_modifiers#23 ? phi( main::@9/(byte) keyboard_modifiers#11 ) - (byte) keyboard_events_size#26 ? phi( main::@9/(byte) keyboard_events_size#11 ) - (byte) keyboard_events_size#7 ? (byte) keyboard_events_size#26 - (byte) keyboard_modifiers#8 ? (byte) keyboard_modifiers#23 + (byte) form_field_idx#37 ← phi( main::@9/(byte) form_field_idx#0 ) + (signed byte) form_cursor_count#27 ← phi( main::@9/(signed byte) form_cursor_count#0 ) + (byte*) print_char_cursor#50 ← phi( main::@9/(byte*) print_char_cursor#10 ) + (byte*) print_line_cursor#47 ← phi( main::@9/(byte*) print_line_cursor#9 ) + (byte*) print_screen#26 ← phi( main::@9/(byte*) print_screen#3 ) + (byte) keyboard_modifiers#23 ← phi( main::@9/(byte) keyboard_modifiers#11 ) + (byte) keyboard_events_size#26 ← phi( main::@9/(byte) keyboard_events_size#11 ) + (byte) keyboard_events_size#7 ← (byte) keyboard_events_size#26 + (byte) keyboard_modifiers#8 ← (byte) keyboard_modifiers#23 to:main::@1 main::@return: scope:[main] from main::@1 - (byte) form_field_idx#12 ? phi( main::@1/(byte) form_field_idx#26 ) - (byte) keyboard_modifiers#24 ? phi( main::@1/(byte) keyboard_modifiers#40 ) - (byte) keyboard_events_size#27 ? phi( main::@1/(byte) keyboard_events_size#43 ) - (signed byte) form_cursor_count#11 ? phi( main::@1/(signed byte) form_cursor_count#19 ) - (byte*) print_char_cursor#28 ? phi( main::@1/(byte*) print_char_cursor#42 ) - (byte*) print_line_cursor#27 ? phi( main::@1/(byte*) print_line_cursor#40 ) - (byte*) print_screen#14 ? phi( main::@1/(byte*) print_screen#20 ) - (byte*) print_screen#4 ? (byte*) print_screen#14 - (byte*) print_line_cursor#10 ? (byte*) print_line_cursor#27 - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#28 - (signed byte) form_cursor_count#1 ? (signed byte) form_cursor_count#11 - (byte) keyboard_events_size#8 ? (byte) keyboard_events_size#27 - (byte) keyboard_modifiers#9 ? (byte) keyboard_modifiers#24 - (byte) form_field_idx#1 ? (byte) form_field_idx#12 + (byte) form_field_idx#12 ← phi( main::@1/(byte) form_field_idx#26 ) + (byte) keyboard_modifiers#24 ← phi( main::@1/(byte) keyboard_modifiers#40 ) + (byte) keyboard_events_size#27 ← phi( main::@1/(byte) keyboard_events_size#43 ) + (signed byte) form_cursor_count#11 ← phi( main::@1/(signed byte) form_cursor_count#19 ) + (byte*) print_char_cursor#28 ← phi( main::@1/(byte*) print_char_cursor#42 ) + (byte*) print_line_cursor#27 ← phi( main::@1/(byte*) print_line_cursor#40 ) + (byte*) print_screen#14 ← phi( main::@1/(byte*) print_screen#20 ) + (byte*) print_screen#4 ← (byte*) print_screen#14 + (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#27 + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#28 + (signed byte) form_cursor_count#1 ← (signed byte) form_cursor_count#11 + (byte) keyboard_events_size#8 ← (byte) keyboard_events_size#27 + (byte) keyboard_modifiers#9 ← (byte) keyboard_modifiers#24 + (byte) form_field_idx#1 ← (byte) form_field_idx#12 return to:@return @40: scope:[] from @31 - (byte) keyboard_modifiers#101 ? phi( @31/(byte) keyboard_modifiers#106 ) - (byte) keyboard_events_size#113 ? phi( @31/(byte) keyboard_events_size#122 ) - (byte*) print_char_cursor#69 ? phi( @31/(byte*) print_char_cursor#72 ) - (byte*) print_line_cursor#69 ? phi( @31/(byte*) print_line_cursor#72 ) - (byte*) print_screen#46 ? phi( @31/(byte*) print_screen#49 ) - (byte*) VIC_SCREEN0#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte*) VIC_SCREEN1#0 ? ((byte*)) (word/signed word/dword/signed dword) $4400 - (byte*) VIC_SCREEN2#0 ? ((byte*)) (word/signed word/dword/signed dword) $4800 - (byte*) VIC_SCREEN3#0 ? ((byte*)) (word/signed word/dword/signed dword) $4c00 - (byte*) VIC_SCREEN4#0 ? ((byte*)) (word/signed word/dword/signed dword) $5000 - (byte*) VIC_CHARSET_ROM#0 ? ((byte*)) (word/signed word/dword/signed dword) $5800 - (byte*) VIC_BITMAP#0 ? ((byte*)) (word/signed word/dword/signed dword) $6000 - (dword) PLANE_8BPP_CHUNKY#0 ? (dword/signed dword) $20000 - (dword) PLANE_HORISONTAL#0 ? (dword/signed dword) $30000 - (dword) PLANE_VERTICAL#0 ? (dword/signed dword) $32000 - (dword) PLANE_HORISONTAL2#0 ? (dword/signed dword) $34000 - (dword) PLANE_VERTICAL2#0 ? (dword/signed dword) $36000 - (dword) PLANE_BLANK#0 ? (dword/signed dword) $38000 - (dword) PLANE_FULL#0 ? (dword/signed dword) $3a000 - (dword) PLANE_CHARSET8#0 ? (dword/signed dword) $3c000 + (byte) keyboard_modifiers#101 ← phi( @31/(byte) keyboard_modifiers#106 ) + (byte) keyboard_events_size#113 ← phi( @31/(byte) keyboard_events_size#122 ) + (byte*) print_char_cursor#69 ← phi( @31/(byte*) print_char_cursor#72 ) + (byte*) print_line_cursor#69 ← phi( @31/(byte*) print_line_cursor#72 ) + (byte*) print_screen#46 ← phi( @31/(byte*) print_screen#49 ) + (byte*) VIC_SCREEN0#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte*) VIC_SCREEN1#0 ← ((byte*)) (word/signed word/dword/signed dword) $4400 + (byte*) VIC_SCREEN2#0 ← ((byte*)) (word/signed word/dword/signed dword) $4800 + (byte*) VIC_SCREEN3#0 ← ((byte*)) (word/signed word/dword/signed dword) $4c00 + (byte*) VIC_SCREEN4#0 ← ((byte*)) (word/signed word/dword/signed dword) $5000 + (byte*) VIC_CHARSET_ROM#0 ← ((byte*)) (word/signed word/dword/signed dword) $5800 + (byte*) VIC_BITMAP#0 ← ((byte*)) (word/signed word/dword/signed dword) $6000 + (dword) PLANE_8BPP_CHUNKY#0 ← (dword/signed dword) $20000 + (dword) PLANE_HORISONTAL#0 ← (dword/signed dword) $30000 + (dword) PLANE_VERTICAL#0 ← (dword/signed dword) $32000 + (dword) PLANE_HORISONTAL2#0 ← (dword/signed dword) $34000 + (dword) PLANE_VERTICAL2#0 ← (dword/signed dword) $36000 + (dword) PLANE_BLANK#0 ← (dword/signed dword) $38000 + (dword) PLANE_FULL#0 ← (dword/signed dword) $3a000 + (dword) PLANE_CHARSET8#0 ← (dword/signed dword) $3c000 to:@43 get_plane: scope:[get_plane] from gfx_mode::@46 gfx_mode::@9 - (byte) get_plane::idx#2 ? phi( gfx_mode::@46/(byte) get_plane::idx#1 gfx_mode::@9/(byte) get_plane::idx#0 ) - (bool~) get_plane::$0 ? (byte) get_plane::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) get_plane::idx#2 ← phi( gfx_mode::@46/(byte) get_plane::idx#1 gfx_mode::@9/(byte) get_plane::idx#0 ) + (bool~) get_plane::$0 ← (byte) get_plane::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) get_plane::$0) goto get_plane::@1 to:get_plane::@28 get_plane::@1: scope:[get_plane] from get_plane - (dword~) get_plane::$29 ? ((dword)) (byte*) VIC_SCREEN0#0 - (dword) get_plane::return#0 ? (dword~) get_plane::$29 + (dword~) get_plane::$29 ← ((dword)) (byte*) VIC_SCREEN0#0 + (dword) get_plane::return#0 ← (dword~) get_plane::$29 to:get_plane::@return get_plane::@28: scope:[get_plane] from get_plane - (byte) get_plane::idx#3 ? phi( get_plane/(byte) get_plane::idx#2 ) - (bool~) get_plane::$1 ? (byte) get_plane::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) get_plane::idx#3 ← phi( get_plane/(byte) get_plane::idx#2 ) + (bool~) get_plane::$1 ← (byte) get_plane::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 1 if((bool~) get_plane::$1) goto get_plane::@2 to:get_plane::@29 get_plane::@2: scope:[get_plane] from get_plane::@28 - (dword~) get_plane::$28 ? ((dword)) (byte*) VIC_SCREEN1#0 - (dword) get_plane::return#1 ? (dword~) get_plane::$28 + (dword~) get_plane::$28 ← ((dword)) (byte*) VIC_SCREEN1#0 + (dword) get_plane::return#1 ← (dword~) get_plane::$28 to:get_plane::@return get_plane::@29: scope:[get_plane] from get_plane::@28 - (byte) get_plane::idx#4 ? phi( get_plane::@28/(byte) get_plane::idx#3 ) - (bool~) get_plane::$2 ? (byte) get_plane::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) get_plane::idx#4 ← phi( get_plane::@28/(byte) get_plane::idx#3 ) + (bool~) get_plane::$2 ← (byte) get_plane::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 2 if((bool~) get_plane::$2) goto get_plane::@3 to:get_plane::@30 get_plane::@3: scope:[get_plane] from get_plane::@29 - (dword~) get_plane::$27 ? ((dword)) (byte*) VIC_SCREEN2#0 - (dword) get_plane::return#2 ? (dword~) get_plane::$27 + (dword~) get_plane::$27 ← ((dword)) (byte*) VIC_SCREEN2#0 + (dword) get_plane::return#2 ← (dword~) get_plane::$27 to:get_plane::@return get_plane::@30: scope:[get_plane] from get_plane::@29 - (byte) get_plane::idx#5 ? phi( get_plane::@29/(byte) get_plane::idx#4 ) - (bool~) get_plane::$3 ? (byte) get_plane::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) get_plane::idx#5 ← phi( get_plane::@29/(byte) get_plane::idx#4 ) + (bool~) get_plane::$3 ← (byte) get_plane::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 3 if((bool~) get_plane::$3) goto get_plane::@4 to:get_plane::@31 get_plane::@4: scope:[get_plane] from get_plane::@30 - (dword~) get_plane::$26 ? ((dword)) (byte*) VIC_SCREEN3#0 - (dword) get_plane::return#3 ? (dword~) get_plane::$26 + (dword~) get_plane::$26 ← ((dword)) (byte*) VIC_SCREEN3#0 + (dword) get_plane::return#3 ← (dword~) get_plane::$26 to:get_plane::@return get_plane::@31: scope:[get_plane] from get_plane::@30 - (byte) get_plane::idx#6 ? phi( get_plane::@30/(byte) get_plane::idx#5 ) - (bool~) get_plane::$4 ? (byte) get_plane::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) get_plane::idx#6 ← phi( get_plane::@30/(byte) get_plane::idx#5 ) + (bool~) get_plane::$4 ← (byte) get_plane::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 if((bool~) get_plane::$4) goto get_plane::@5 to:get_plane::@32 get_plane::@5: scope:[get_plane] from get_plane::@31 - (dword~) get_plane::$25 ? ((dword)) (byte*) VIC_BITMAP#0 - (dword) get_plane::return#4 ? (dword~) get_plane::$25 + (dword~) get_plane::$25 ← ((dword)) (byte*) VIC_BITMAP#0 + (dword) get_plane::return#4 ← (dword~) get_plane::$25 to:get_plane::@return get_plane::@32: scope:[get_plane] from get_plane::@31 - (byte) get_plane::idx#7 ? phi( get_plane::@31/(byte) get_plane::idx#6 ) - (bool~) get_plane::$5 ? (byte) get_plane::idx#7 == (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) get_plane::idx#7 ← phi( get_plane::@31/(byte) get_plane::idx#6 ) + (bool~) get_plane::$5 ← (byte) get_plane::idx#7 == (byte/signed byte/word/signed word/dword/signed dword) 5 if((bool~) get_plane::$5) goto get_plane::@6 to:get_plane::@33 get_plane::@6: scope:[get_plane] from get_plane::@32 - (dword~) get_plane::$24 ? ((dword)) (byte*) VIC_CHARSET_ROM#0 - (dword) get_plane::return#5 ? (dword~) get_plane::$24 + (dword~) get_plane::$24 ← ((dword)) (byte*) VIC_CHARSET_ROM#0 + (dword) get_plane::return#5 ← (dword~) get_plane::$24 to:get_plane::@return get_plane::@33: scope:[get_plane] from get_plane::@32 - (byte) get_plane::idx#8 ? phi( get_plane::@32/(byte) get_plane::idx#7 ) - (bool~) get_plane::$6 ? (byte) get_plane::idx#8 == (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) get_plane::idx#8 ← phi( get_plane::@32/(byte) get_plane::idx#7 ) + (bool~) get_plane::$6 ← (byte) get_plane::idx#8 == (byte/signed byte/word/signed word/dword/signed dword) 6 if((bool~) get_plane::$6) goto get_plane::@7 to:get_plane::@34 get_plane::@7: scope:[get_plane] from get_plane::@33 - (dword~) get_plane::$23 ? ((dword)) (dword) PLANE_8BPP_CHUNKY#0 - (dword) get_plane::return#6 ? (dword~) get_plane::$23 + (dword~) get_plane::$23 ← ((dword)) (dword) PLANE_8BPP_CHUNKY#0 + (dword) get_plane::return#6 ← (dword~) get_plane::$23 to:get_plane::@return get_plane::@34: scope:[get_plane] from get_plane::@33 - (byte) get_plane::idx#9 ? phi( get_plane::@33/(byte) get_plane::idx#8 ) - (bool~) get_plane::$7 ? (byte) get_plane::idx#9 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) get_plane::idx#9 ← phi( get_plane::@33/(byte) get_plane::idx#8 ) + (bool~) get_plane::$7 ← (byte) get_plane::idx#9 == (byte/signed byte/word/signed word/dword/signed dword) 7 if((bool~) get_plane::$7) goto get_plane::@8 to:get_plane::@35 get_plane::@8: scope:[get_plane] from get_plane::@34 - (dword~) get_plane::$22 ? ((dword)) (dword) PLANE_HORISONTAL#0 - (dword) get_plane::return#7 ? (dword~) get_plane::$22 + (dword~) get_plane::$22 ← ((dword)) (dword) PLANE_HORISONTAL#0 + (dword) get_plane::return#7 ← (dword~) get_plane::$22 to:get_plane::@return get_plane::@35: scope:[get_plane] from get_plane::@34 - (byte) get_plane::idx#10 ? phi( get_plane::@34/(byte) get_plane::idx#9 ) - (bool~) get_plane::$8 ? (byte) get_plane::idx#10 == (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) get_plane::idx#10 ← phi( get_plane::@34/(byte) get_plane::idx#9 ) + (bool~) get_plane::$8 ← (byte) get_plane::idx#10 == (byte/signed byte/word/signed word/dword/signed dword) 8 if((bool~) get_plane::$8) goto get_plane::@9 to:get_plane::@36 get_plane::@9: scope:[get_plane] from get_plane::@35 - (dword~) get_plane::$21 ? ((dword)) (dword) PLANE_VERTICAL#0 - (dword) get_plane::return#8 ? (dword~) get_plane::$21 + (dword~) get_plane::$21 ← ((dword)) (dword) PLANE_VERTICAL#0 + (dword) get_plane::return#8 ← (dword~) get_plane::$21 to:get_plane::@return get_plane::@36: scope:[get_plane] from get_plane::@35 - (byte) get_plane::idx#11 ? phi( get_plane::@35/(byte) get_plane::idx#10 ) - (bool~) get_plane::$9 ? (byte) get_plane::idx#11 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) get_plane::idx#11 ← phi( get_plane::@35/(byte) get_plane::idx#10 ) + (bool~) get_plane::$9 ← (byte) get_plane::idx#11 == (byte/signed byte/word/signed word/dword/signed dword) 9 if((bool~) get_plane::$9) goto get_plane::@10 to:get_plane::@37 get_plane::@10: scope:[get_plane] from get_plane::@36 - (dword~) get_plane::$20 ? ((dword)) (dword) PLANE_HORISONTAL2#0 - (dword) get_plane::return#9 ? (dword~) get_plane::$20 + (dword~) get_plane::$20 ← ((dword)) (dword) PLANE_HORISONTAL2#0 + (dword) get_plane::return#9 ← (dword~) get_plane::$20 to:get_plane::@return get_plane::@37: scope:[get_plane] from get_plane::@36 - (byte) get_plane::idx#12 ? phi( get_plane::@36/(byte) get_plane::idx#11 ) - (bool~) get_plane::$10 ? (byte) get_plane::idx#12 == (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) get_plane::idx#12 ← phi( get_plane::@36/(byte) get_plane::idx#11 ) + (bool~) get_plane::$10 ← (byte) get_plane::idx#12 == (byte/signed byte/word/signed word/dword/signed dword) $a if((bool~) get_plane::$10) goto get_plane::@11 to:get_plane::@38 get_plane::@11: scope:[get_plane] from get_plane::@37 - (dword~) get_plane::$19 ? ((dword)) (dword) PLANE_VERTICAL2#0 - (dword) get_plane::return#10 ? (dword~) get_plane::$19 + (dword~) get_plane::$19 ← ((dword)) (dword) PLANE_VERTICAL2#0 + (dword) get_plane::return#10 ← (dword~) get_plane::$19 to:get_plane::@return get_plane::@38: scope:[get_plane] from get_plane::@37 - (byte) get_plane::idx#13 ? phi( get_plane::@37/(byte) get_plane::idx#12 ) - (bool~) get_plane::$11 ? (byte) get_plane::idx#13 == (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) get_plane::idx#13 ← phi( get_plane::@37/(byte) get_plane::idx#12 ) + (bool~) get_plane::$11 ← (byte) get_plane::idx#13 == (byte/signed byte/word/signed word/dword/signed dword) $b if((bool~) get_plane::$11) goto get_plane::@12 to:get_plane::@39 get_plane::@12: scope:[get_plane] from get_plane::@38 - (dword~) get_plane::$18 ? ((dword)) (dword) PLANE_CHARSET8#0 - (dword) get_plane::return#11 ? (dword~) get_plane::$18 + (dword~) get_plane::$18 ← ((dword)) (dword) PLANE_CHARSET8#0 + (dword) get_plane::return#11 ← (dword~) get_plane::$18 to:get_plane::@return get_plane::@39: scope:[get_plane] from get_plane::@38 - (byte) get_plane::idx#14 ? phi( get_plane::@38/(byte) get_plane::idx#13 ) - (bool~) get_plane::$12 ? (byte) get_plane::idx#14 == (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) get_plane::idx#14 ← phi( get_plane::@38/(byte) get_plane::idx#13 ) + (bool~) get_plane::$12 ← (byte) get_plane::idx#14 == (byte/signed byte/word/signed word/dword/signed dword) $c if((bool~) get_plane::$12) goto get_plane::@13 to:get_plane::@40 get_plane::@13: scope:[get_plane] from get_plane::@39 - (dword~) get_plane::$17 ? ((dword)) (dword) PLANE_BLANK#0 - (dword) get_plane::return#12 ? (dword~) get_plane::$17 + (dword~) get_plane::$17 ← ((dword)) (dword) PLANE_BLANK#0 + (dword) get_plane::return#12 ← (dword~) get_plane::$17 to:get_plane::@return get_plane::@40: scope:[get_plane] from get_plane::@39 - (byte) get_plane::idx#15 ? phi( get_plane::@39/(byte) get_plane::idx#14 ) - (bool~) get_plane::$13 ? (byte) get_plane::idx#15 == (byte/signed byte/word/signed word/dword/signed dword) $d - (bool~) get_plane::$14 ? ! (bool~) get_plane::$13 + (byte) get_plane::idx#15 ← phi( get_plane::@39/(byte) get_plane::idx#14 ) + (bool~) get_plane::$13 ← (byte) get_plane::idx#15 == (byte/signed byte/word/signed word/dword/signed dword) $d + (bool~) get_plane::$14 ← ! (bool~) get_plane::$13 if((bool~) get_plane::$14) goto get_plane::@14 to:get_plane::@41 get_plane::@14: scope:[get_plane] from get_plane::@40 to:get_plane::@27 get_plane::@41: scope:[get_plane] from get_plane::@40 - (dword~) get_plane::$16 ? ((dword)) (dword) PLANE_FULL#0 - (dword) get_plane::return#13 ? (dword~) get_plane::$16 + (dword~) get_plane::$16 ← ((dword)) (dword) PLANE_FULL#0 + (dword) get_plane::return#13 ← (dword~) get_plane::$16 to:get_plane::@return get_plane::@return: scope:[get_plane] from get_plane::@1 get_plane::@10 get_plane::@11 get_plane::@12 get_plane::@13 get_plane::@2 get_plane::@27 get_plane::@3 get_plane::@4 get_plane::@41 get_plane::@5 get_plane::@6 get_plane::@7 get_plane::@8 get_plane::@9 - (dword) get_plane::return#18 ? phi( get_plane::@1/(dword) get_plane::return#0 get_plane::@10/(dword) get_plane::return#9 get_plane::@11/(dword) get_plane::return#10 get_plane::@12/(dword) get_plane::return#11 get_plane::@13/(dword) get_plane::return#12 get_plane::@2/(dword) get_plane::return#1 get_plane::@27/(dword) get_plane::return#15 get_plane::@3/(dword) get_plane::return#2 get_plane::@4/(dword) get_plane::return#3 get_plane::@41/(dword) get_plane::return#13 get_plane::@5/(dword) get_plane::return#4 get_plane::@6/(dword) get_plane::return#5 get_plane::@7/(dword) get_plane::return#6 get_plane::@8/(dword) get_plane::return#7 get_plane::@9/(dword) get_plane::return#8 ) - (dword) get_plane::return#14 ? (dword) get_plane::return#18 + (dword) get_plane::return#18 ← phi( get_plane::@1/(dword) get_plane::return#0 get_plane::@10/(dword) get_plane::return#9 get_plane::@11/(dword) get_plane::return#10 get_plane::@12/(dword) get_plane::return#11 get_plane::@13/(dword) get_plane::return#12 get_plane::@2/(dword) get_plane::return#1 get_plane::@27/(dword) get_plane::return#15 get_plane::@3/(dword) get_plane::return#2 get_plane::@4/(dword) get_plane::return#3 get_plane::@41/(dword) get_plane::return#13 get_plane::@5/(dword) get_plane::return#4 get_plane::@6/(dword) get_plane::return#5 get_plane::@7/(dword) get_plane::return#6 get_plane::@8/(dword) get_plane::return#7 get_plane::@9/(dword) get_plane::return#8 ) + (dword) get_plane::return#14 ← (dword) get_plane::return#18 return to:@return get_plane::@27: scope:[get_plane] from get_plane::@14 - (dword~) get_plane::$15 ? ((dword)) (byte*) VIC_SCREEN0#0 - (dword) get_plane::return#15 ? (dword~) get_plane::$15 + (dword~) get_plane::$15 ← ((dword)) (byte*) VIC_SCREEN0#0 + (dword) get_plane::return#15 ← (dword~) get_plane::$15 to:get_plane::@return get_vic_screen: scope:[get_vic_screen] from gfx_mode::@47 gfx_mode::@49 - (byte) get_vic_screen::idx#2 ? phi( gfx_mode::@47/(byte) get_vic_screen::idx#0 gfx_mode::@49/(byte) get_vic_screen::idx#1 ) - (bool~) get_vic_screen::$0 ? (byte) get_vic_screen::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) get_vic_screen::idx#2 ← phi( gfx_mode::@47/(byte) get_vic_screen::idx#0 gfx_mode::@49/(byte) get_vic_screen::idx#1 ) + (bool~) get_vic_screen::$0 ← (byte) get_vic_screen::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) get_vic_screen::$0) goto get_vic_screen::@1 to:get_vic_screen::@10 get_vic_screen::@1: scope:[get_vic_screen] from get_vic_screen - (byte*) get_vic_screen::return#0 ? (byte*) VIC_SCREEN0#0 + (byte*) get_vic_screen::return#0 ← (byte*) VIC_SCREEN0#0 to:get_vic_screen::@return get_vic_screen::@10: scope:[get_vic_screen] from get_vic_screen - (byte) get_vic_screen::idx#3 ? phi( get_vic_screen/(byte) get_vic_screen::idx#2 ) - (bool~) get_vic_screen::$1 ? (byte) get_vic_screen::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) get_vic_screen::idx#3 ← phi( get_vic_screen/(byte) get_vic_screen::idx#2 ) + (bool~) get_vic_screen::$1 ← (byte) get_vic_screen::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 1 if((bool~) get_vic_screen::$1) goto get_vic_screen::@2 to:get_vic_screen::@11 get_vic_screen::@2: scope:[get_vic_screen] from get_vic_screen::@10 - (byte*) get_vic_screen::return#1 ? (byte*) VIC_SCREEN1#0 + (byte*) get_vic_screen::return#1 ← (byte*) VIC_SCREEN1#0 to:get_vic_screen::@return get_vic_screen::@11: scope:[get_vic_screen] from get_vic_screen::@10 - (byte) get_vic_screen::idx#4 ? phi( get_vic_screen::@10/(byte) get_vic_screen::idx#3 ) - (bool~) get_vic_screen::$2 ? (byte) get_vic_screen::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) get_vic_screen::idx#4 ← phi( get_vic_screen::@10/(byte) get_vic_screen::idx#3 ) + (bool~) get_vic_screen::$2 ← (byte) get_vic_screen::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 2 if((bool~) get_vic_screen::$2) goto get_vic_screen::@3 to:get_vic_screen::@12 get_vic_screen::@3: scope:[get_vic_screen] from get_vic_screen::@11 - (byte*) get_vic_screen::return#2 ? (byte*) VIC_SCREEN2#0 + (byte*) get_vic_screen::return#2 ← (byte*) VIC_SCREEN2#0 to:get_vic_screen::@return get_vic_screen::@12: scope:[get_vic_screen] from get_vic_screen::@11 - (byte) get_vic_screen::idx#5 ? phi( get_vic_screen::@11/(byte) get_vic_screen::idx#4 ) - (bool~) get_vic_screen::$3 ? (byte) get_vic_screen::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) get_vic_screen::idx#5 ← phi( get_vic_screen::@11/(byte) get_vic_screen::idx#4 ) + (bool~) get_vic_screen::$3 ← (byte) get_vic_screen::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 3 if((bool~) get_vic_screen::$3) goto get_vic_screen::@4 to:get_vic_screen::@13 get_vic_screen::@4: scope:[get_vic_screen] from get_vic_screen::@12 - (byte*) get_vic_screen::return#3 ? (byte*) VIC_SCREEN3#0 + (byte*) get_vic_screen::return#3 ← (byte*) VIC_SCREEN3#0 to:get_vic_screen::@return get_vic_screen::@13: scope:[get_vic_screen] from get_vic_screen::@12 - (byte) get_vic_screen::idx#6 ? phi( get_vic_screen::@12/(byte) get_vic_screen::idx#5 ) - (bool~) get_vic_screen::$4 ? (byte) get_vic_screen::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 - (bool~) get_vic_screen::$5 ? ! (bool~) get_vic_screen::$4 + (byte) get_vic_screen::idx#6 ← phi( get_vic_screen::@12/(byte) get_vic_screen::idx#5 ) + (bool~) get_vic_screen::$4 ← (byte) get_vic_screen::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (bool~) get_vic_screen::$5 ← ! (bool~) get_vic_screen::$4 if((bool~) get_vic_screen::$5) goto get_vic_screen::@5 to:get_vic_screen::@14 get_vic_screen::@5: scope:[get_vic_screen] from get_vic_screen::@13 to:get_vic_screen::@9 get_vic_screen::@14: scope:[get_vic_screen] from get_vic_screen::@13 - (byte*) get_vic_screen::return#4 ? (byte*) VIC_SCREEN4#0 + (byte*) get_vic_screen::return#4 ← (byte*) VIC_SCREEN4#0 to:get_vic_screen::@return get_vic_screen::@return: scope:[get_vic_screen] from get_vic_screen::@1 get_vic_screen::@14 get_vic_screen::@2 get_vic_screen::@3 get_vic_screen::@4 get_vic_screen::@9 - (byte*) get_vic_screen::return#9 ? phi( get_vic_screen::@1/(byte*) get_vic_screen::return#0 get_vic_screen::@14/(byte*) get_vic_screen::return#4 get_vic_screen::@2/(byte*) get_vic_screen::return#1 get_vic_screen::@3/(byte*) get_vic_screen::return#2 get_vic_screen::@4/(byte*) get_vic_screen::return#3 get_vic_screen::@9/(byte*) get_vic_screen::return#6 ) - (byte*) get_vic_screen::return#5 ? (byte*) get_vic_screen::return#9 + (byte*) get_vic_screen::return#9 ← phi( get_vic_screen::@1/(byte*) get_vic_screen::return#0 get_vic_screen::@14/(byte*) get_vic_screen::return#4 get_vic_screen::@2/(byte*) get_vic_screen::return#1 get_vic_screen::@3/(byte*) get_vic_screen::return#2 get_vic_screen::@4/(byte*) get_vic_screen::return#3 get_vic_screen::@9/(byte*) get_vic_screen::return#6 ) + (byte*) get_vic_screen::return#5 ← (byte*) get_vic_screen::return#9 return to:@return get_vic_screen::@9: scope:[get_vic_screen] from get_vic_screen::@5 - (byte*) get_vic_screen::return#6 ? (byte*) VIC_SCREEN0#0 + (byte*) get_vic_screen::return#6 ← (byte*) VIC_SCREEN0#0 to:get_vic_screen::@return get_vic_charset: scope:[get_vic_charset] from gfx_mode::@48 - (byte) get_vic_charset::idx#1 ? phi( gfx_mode::@48/(byte) get_vic_charset::idx#0 ) - (bool~) get_vic_charset::$0 ? (byte) get_vic_charset::idx#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) get_vic_charset::idx#1 ← phi( gfx_mode::@48/(byte) get_vic_charset::idx#0 ) + (bool~) get_vic_charset::$0 ← (byte) get_vic_charset::idx#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) get_vic_charset::$0) goto get_vic_charset::@1 to:get_vic_charset::@4 get_vic_charset::@1: scope:[get_vic_charset] from get_vic_charset - (byte*) get_vic_charset::return#0 ? (byte*) VIC_CHARSET_ROM#0 + (byte*) get_vic_charset::return#0 ← (byte*) VIC_CHARSET_ROM#0 to:get_vic_charset::@return get_vic_charset::@4: scope:[get_vic_charset] from get_vic_charset - (byte) get_vic_charset::idx#2 ? phi( get_vic_charset/(byte) get_vic_charset::idx#1 ) - (bool~) get_vic_charset::$1 ? (byte) get_vic_charset::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) get_vic_charset::$2 ? ! (bool~) get_vic_charset::$1 + (byte) get_vic_charset::idx#2 ← phi( get_vic_charset/(byte) get_vic_charset::idx#1 ) + (bool~) get_vic_charset::$1 ← (byte) get_vic_charset::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) get_vic_charset::$2 ← ! (bool~) get_vic_charset::$1 if((bool~) get_vic_charset::$2) goto get_vic_charset::@2 to:get_vic_charset::@5 get_vic_charset::@2: scope:[get_vic_charset] from get_vic_charset::@4 to:get_vic_charset::@3 get_vic_charset::@5: scope:[get_vic_charset] from get_vic_charset::@4 - (byte*) get_vic_charset::return#1 ? (byte*) VIC_BITMAP#0 + (byte*) get_vic_charset::return#1 ← (byte*) VIC_BITMAP#0 to:get_vic_charset::@return get_vic_charset::@return: scope:[get_vic_charset] from get_vic_charset::@1 get_vic_charset::@3 get_vic_charset::@5 - (byte*) get_vic_charset::return#5 ? phi( get_vic_charset::@1/(byte*) get_vic_charset::return#0 get_vic_charset::@3/(byte*) get_vic_charset::return#3 get_vic_charset::@5/(byte*) get_vic_charset::return#1 ) - (byte*) get_vic_charset::return#2 ? (byte*) get_vic_charset::return#5 + (byte*) get_vic_charset::return#5 ← phi( get_vic_charset::@1/(byte*) get_vic_charset::return#0 get_vic_charset::@3/(byte*) get_vic_charset::return#3 get_vic_charset::@5/(byte*) get_vic_charset::return#1 ) + (byte*) get_vic_charset::return#2 ← (byte*) get_vic_charset::return#5 return to:@return get_vic_charset::@3: scope:[get_vic_charset] from get_vic_charset::@2 - (byte*) get_vic_charset::return#3 ? (byte*) VIC_CHARSET_ROM#0 + (byte*) get_vic_charset::return#3 ← (byte*) VIC_CHARSET_ROM#0 to:get_vic_charset::@return @43: scope:[] from @40 - (byte) keyboard_modifiers#95 ? phi( @40/(byte) keyboard_modifiers#101 ) - (byte) keyboard_events_size#102 ? phi( @40/(byte) keyboard_events_size#113 ) - (byte*) print_char_cursor#64 ? phi( @40/(byte*) print_char_cursor#69 ) - (byte*) print_line_cursor#64 ? phi( @40/(byte*) print_line_cursor#69 ) - (byte*) print_screen#41 ? phi( @40/(byte*) print_screen#46 ) - (byte*) FORM_SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) FORM_CHARSET#0 ? ((byte*)) (word/signed word/dword/signed dword) $1800 - (string~) $1 ? (const string) $70 + (const string) $71 - (string~) $2 ? (string~) $1 + (const string) $72 - (string~) $3 ? (string~) $2 + (const string) $73 - (string~) $4 ? (string~) $3 + (const string) $74 - (string~) $5 ? (string~) $4 + (const string) $75 - (string~) $6 ? (string~) $5 + (const string) $76 - (string~) $7 ? (string~) $6 + (const string) $77 - (string~) $8 ? (string~) $7 + (const string) $78 - (string~) $9 ? (string~) $8 + (const string) $79 - (string~) $10 ? (string~) $9 + (const string) $80 - (string~) $11 ? (string~) $10 + (const string) $81 - (string~) $12 ? (string~) $11 + (const string) $82 - (string~) $13 ? (string~) $12 + (const string) $83 - (string~) $14 ? (string~) $13 + (const string) $84 - (string~) $15 ? (string~) $14 + (const string) $85 - (byte[]) FORM_TEXT#0 ? (string~) $15 - (string~) $16 ? (const string) $86 + (const string) $87 - (string~) $17 ? (string~) $16 + (const string) $88 - (string~) $18 ? (string~) $17 + (const string) $89 - (string~) $19 ? (string~) $18 + (const string) $90 - (string~) $20 ? (string~) $19 + (const string) $91 - (string~) $21 ? (string~) $20 + (const string) $92 - (string~) $22 ? (string~) $21 + (const string) $93 - (string~) $23 ? (string~) $22 + (const string) $94 - (string~) $24 ? (string~) $23 + (const string) $95 - (string~) $25 ? (string~) $24 + (const string) $96 - (string~) $26 ? (string~) $25 + (const string) $97 - (string~) $27 ? (string~) $26 + (const string) $98 - (string~) $28 ? (string~) $27 + (const string) $99 - (string~) $29 ? (string~) $28 + (const string) $100 - (string~) $30 ? (string~) $29 + (const string) $101 - (string~) $31 ? (string~) $30 + (const string) $102 - (byte[]) FORM_COLS#0 ? (string~) $31 - (byte) form_fields_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) $24 - (byte[]) form_fields_x#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25 } - (byte[]) form_fields_y#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) $e } - (byte[]) form_fields_max#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f } - (byte[]) form_fields_val#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_stdchar#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_ecmchar#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 6 } - (byte[]) preset_stdbm#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_mcbm#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_hi_stdchar#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_hi_ecmchar#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c } - (byte[]) preset_twoplane#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_chunky#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_sixsfred#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_sixsfred2#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte[]) preset_8bpppixelcell#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte) keyboard_modifiers#95 ← phi( @40/(byte) keyboard_modifiers#101 ) + (byte) keyboard_events_size#102 ← phi( @40/(byte) keyboard_events_size#113 ) + (byte*) print_char_cursor#64 ← phi( @40/(byte*) print_char_cursor#69 ) + (byte*) print_line_cursor#64 ← phi( @40/(byte*) print_line_cursor#69 ) + (byte*) print_screen#41 ← phi( @40/(byte*) print_screen#46 ) + (byte*) FORM_SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) FORM_CHARSET#0 ← ((byte*)) (word/signed word/dword/signed dword) $1800 + (string~) $1 ← (const string) $70 + (const string) $71 + (string~) $2 ← (string~) $1 + (const string) $72 + (string~) $3 ← (string~) $2 + (const string) $73 + (string~) $4 ← (string~) $3 + (const string) $74 + (string~) $5 ← (string~) $4 + (const string) $75 + (string~) $6 ← (string~) $5 + (const string) $76 + (string~) $7 ← (string~) $6 + (const string) $77 + (string~) $8 ← (string~) $7 + (const string) $78 + (string~) $9 ← (string~) $8 + (const string) $79 + (string~) $10 ← (string~) $9 + (const string) $80 + (string~) $11 ← (string~) $10 + (const string) $81 + (string~) $12 ← (string~) $11 + (const string) $82 + (string~) $13 ← (string~) $12 + (const string) $83 + (string~) $14 ← (string~) $13 + (const string) $84 + (string~) $15 ← (string~) $14 + (const string) $85 + (byte[]) FORM_TEXT#0 ← (string~) $15 + (string~) $16 ← (const string) $86 + (const string) $87 + (string~) $17 ← (string~) $16 + (const string) $88 + (string~) $18 ← (string~) $17 + (const string) $89 + (string~) $19 ← (string~) $18 + (const string) $90 + (string~) $20 ← (string~) $19 + (const string) $91 + (string~) $21 ← (string~) $20 + (const string) $92 + (string~) $22 ← (string~) $21 + (const string) $93 + (string~) $23 ← (string~) $22 + (const string) $94 + (string~) $24 ← (string~) $23 + (const string) $95 + (string~) $25 ← (string~) $24 + (const string) $96 + (string~) $26 ← (string~) $25 + (const string) $97 + (string~) $27 ← (string~) $26 + (const string) $98 + (string~) $28 ← (string~) $27 + (const string) $99 + (string~) $29 ← (string~) $28 + (const string) $100 + (string~) $30 ← (string~) $29 + (const string) $101 + (string~) $31 ← (string~) $30 + (const string) $102 + (byte[]) FORM_COLS#0 ← (string~) $31 + (byte) form_fields_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) $24 + (byte[]) form_fields_x#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $18, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $24, (byte/signed byte/word/signed word/dword/signed dword) $25 } + (byte[]) form_fields_y#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) $e } + (byte[]) form_fields_max#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $f } + (byte[]) form_fields_val#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_stdchar#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_ecmchar#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 6 } + (byte[]) preset_stdbm#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_mcbm#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_hi_stdchar#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_hi_ecmchar#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $c } + (byte[]) preset_twoplane#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_chunky#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_sixsfred#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_sixsfred2#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 9, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte[]) preset_8bpppixelcell#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } to:@45 apply_preset: scope:[apply_preset] from form_mode::@18 - (byte) apply_preset::idx#1 ? phi( form_mode::@18/(byte) apply_preset::idx#0 ) - (byte*) apply_preset::preset#0 ? (byte*) 0 - (bool~) apply_preset::$0 ? (byte) apply_preset::idx#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) apply_preset::idx#1 ← phi( form_mode::@18/(byte) apply_preset::idx#0 ) + (byte*) apply_preset::preset#0 ← (byte*) 0 + (bool~) apply_preset::$0 ← (byte) apply_preset::idx#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) apply_preset::$0) goto apply_preset::@1 to:apply_preset::@23 apply_preset::@1: scope:[apply_preset] from apply_preset - (byte*) apply_preset::preset#1 ? (byte[]) preset_stdchar#0 + (byte*) apply_preset::preset#1 ← (byte[]) preset_stdchar#0 to:apply_preset::@22 apply_preset::@23: scope:[apply_preset] from apply_preset - (byte) apply_preset::idx#2 ? phi( apply_preset/(byte) apply_preset::idx#1 ) - (bool~) apply_preset::$1 ? (byte) apply_preset::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) apply_preset::idx#2 ← phi( apply_preset/(byte) apply_preset::idx#1 ) + (bool~) apply_preset::$1 ← (byte) apply_preset::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 if((bool~) apply_preset::$1) goto apply_preset::@2 to:apply_preset::@24 apply_preset::@2: scope:[apply_preset] from apply_preset::@23 - (byte*) apply_preset::preset#2 ? (byte[]) preset_ecmchar#0 + (byte*) apply_preset::preset#2 ← (byte[]) preset_ecmchar#0 to:apply_preset::@22 apply_preset::@24: scope:[apply_preset] from apply_preset::@23 - (byte) apply_preset::idx#3 ? phi( apply_preset::@23/(byte) apply_preset::idx#2 ) - (bool~) apply_preset::$2 ? (byte) apply_preset::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) apply_preset::idx#3 ← phi( apply_preset::@23/(byte) apply_preset::idx#2 ) + (bool~) apply_preset::$2 ← (byte) apply_preset::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 2 if((bool~) apply_preset::$2) goto apply_preset::@3 to:apply_preset::@25 apply_preset::@3: scope:[apply_preset] from apply_preset::@24 - (byte*) apply_preset::preset#3 ? (byte[]) preset_stdbm#0 + (byte*) apply_preset::preset#3 ← (byte[]) preset_stdbm#0 to:apply_preset::@22 apply_preset::@25: scope:[apply_preset] from apply_preset::@24 - (byte) apply_preset::idx#4 ? phi( apply_preset::@24/(byte) apply_preset::idx#3 ) - (bool~) apply_preset::$3 ? (byte) apply_preset::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) apply_preset::idx#4 ← phi( apply_preset::@24/(byte) apply_preset::idx#3 ) + (bool~) apply_preset::$3 ← (byte) apply_preset::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 3 if((bool~) apply_preset::$3) goto apply_preset::@4 to:apply_preset::@26 apply_preset::@4: scope:[apply_preset] from apply_preset::@25 - (byte*) apply_preset::preset#4 ? (byte[]) preset_mcbm#0 + (byte*) apply_preset::preset#4 ← (byte[]) preset_mcbm#0 to:apply_preset::@22 apply_preset::@26: scope:[apply_preset] from apply_preset::@25 - (byte) apply_preset::idx#5 ? phi( apply_preset::@25/(byte) apply_preset::idx#4 ) - (bool~) apply_preset::$4 ? (byte) apply_preset::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) apply_preset::idx#5 ← phi( apply_preset::@25/(byte) apply_preset::idx#4 ) + (bool~) apply_preset::$4 ← (byte) apply_preset::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 4 if((bool~) apply_preset::$4) goto apply_preset::@5 to:apply_preset::@27 apply_preset::@5: scope:[apply_preset] from apply_preset::@26 - (byte*) apply_preset::preset#5 ? (byte[]) preset_hi_stdchar#0 + (byte*) apply_preset::preset#5 ← (byte[]) preset_hi_stdchar#0 to:apply_preset::@22 apply_preset::@27: scope:[apply_preset] from apply_preset::@26 - (byte) apply_preset::idx#6 ? phi( apply_preset::@26/(byte) apply_preset::idx#5 ) - (bool~) apply_preset::$5 ? (byte) apply_preset::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) apply_preset::idx#6 ← phi( apply_preset::@26/(byte) apply_preset::idx#5 ) + (bool~) apply_preset::$5 ← (byte) apply_preset::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 5 if((bool~) apply_preset::$5) goto apply_preset::@6 to:apply_preset::@28 apply_preset::@6: scope:[apply_preset] from apply_preset::@27 - (byte*) apply_preset::preset#6 ? (byte[]) preset_hi_ecmchar#0 + (byte*) apply_preset::preset#6 ← (byte[]) preset_hi_ecmchar#0 to:apply_preset::@22 apply_preset::@28: scope:[apply_preset] from apply_preset::@27 - (byte) apply_preset::idx#7 ? phi( apply_preset::@27/(byte) apply_preset::idx#6 ) - (bool~) apply_preset::$6 ? (byte) apply_preset::idx#7 == (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) apply_preset::idx#7 ← phi( apply_preset::@27/(byte) apply_preset::idx#6 ) + (bool~) apply_preset::$6 ← (byte) apply_preset::idx#7 == (byte/signed byte/word/signed word/dword/signed dword) 6 if((bool~) apply_preset::$6) goto apply_preset::@7 to:apply_preset::@29 apply_preset::@7: scope:[apply_preset] from apply_preset::@28 - (byte*) apply_preset::preset#7 ? (byte[]) preset_twoplane#0 + (byte*) apply_preset::preset#7 ← (byte[]) preset_twoplane#0 to:apply_preset::@22 apply_preset::@29: scope:[apply_preset] from apply_preset::@28 - (byte) apply_preset::idx#8 ? phi( apply_preset::@28/(byte) apply_preset::idx#7 ) - (bool~) apply_preset::$7 ? (byte) apply_preset::idx#8 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) apply_preset::idx#8 ← phi( apply_preset::@28/(byte) apply_preset::idx#7 ) + (bool~) apply_preset::$7 ← (byte) apply_preset::idx#8 == (byte/signed byte/word/signed word/dword/signed dword) 7 if((bool~) apply_preset::$7) goto apply_preset::@8 to:apply_preset::@30 apply_preset::@8: scope:[apply_preset] from apply_preset::@29 - (byte*) apply_preset::preset#8 ? (byte[]) preset_chunky#0 + (byte*) apply_preset::preset#8 ← (byte[]) preset_chunky#0 to:apply_preset::@22 apply_preset::@30: scope:[apply_preset] from apply_preset::@29 - (byte) apply_preset::idx#9 ? phi( apply_preset::@29/(byte) apply_preset::idx#8 ) - (bool~) apply_preset::$8 ? (byte) apply_preset::idx#9 == (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) apply_preset::idx#9 ← phi( apply_preset::@29/(byte) apply_preset::idx#8 ) + (bool~) apply_preset::$8 ← (byte) apply_preset::idx#9 == (byte/signed byte/word/signed word/dword/signed dword) 8 if((bool~) apply_preset::$8) goto apply_preset::@9 to:apply_preset::@31 apply_preset::@9: scope:[apply_preset] from apply_preset::@30 - (byte*) apply_preset::preset#9 ? (byte[]) preset_sixsfred#0 + (byte*) apply_preset::preset#9 ← (byte[]) preset_sixsfred#0 to:apply_preset::@22 apply_preset::@31: scope:[apply_preset] from apply_preset::@30 - (byte) apply_preset::idx#10 ? phi( apply_preset::@30/(byte) apply_preset::idx#9 ) - (bool~) apply_preset::$9 ? (byte) apply_preset::idx#10 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) apply_preset::idx#10 ← phi( apply_preset::@30/(byte) apply_preset::idx#9 ) + (bool~) apply_preset::$9 ← (byte) apply_preset::idx#10 == (byte/signed byte/word/signed word/dword/signed dword) 9 if((bool~) apply_preset::$9) goto apply_preset::@10 to:apply_preset::@32 apply_preset::@10: scope:[apply_preset] from apply_preset::@31 - (byte*) apply_preset::preset#10 ? (byte[]) preset_sixsfred2#0 + (byte*) apply_preset::preset#10 ← (byte[]) preset_sixsfred2#0 to:apply_preset::@22 apply_preset::@32: scope:[apply_preset] from apply_preset::@31 - (byte) apply_preset::idx#11 ? phi( apply_preset::@31/(byte) apply_preset::idx#10 ) - (bool~) apply_preset::$10 ? (byte) apply_preset::idx#11 == (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) apply_preset::idx#11 ← phi( apply_preset::@31/(byte) apply_preset::idx#10 ) + (bool~) apply_preset::$10 ← (byte) apply_preset::idx#11 == (byte/signed byte/word/signed word/dword/signed dword) $a if((bool~) apply_preset::$10) goto apply_preset::@11 to:apply_preset::@33 apply_preset::@11: scope:[apply_preset] from apply_preset::@32 - (byte*) apply_preset::preset#11 ? (byte[]) preset_8bpppixelcell#0 + (byte*) apply_preset::preset#11 ← (byte[]) preset_8bpppixelcell#0 to:apply_preset::@22 apply_preset::@33: scope:[apply_preset] from apply_preset::@32 - (byte*) apply_preset::preset#12 ? (byte[]) preset_stdchar#0 + (byte*) apply_preset::preset#12 ← (byte[]) preset_stdchar#0 to:apply_preset::@22 apply_preset::@22: scope:[apply_preset] from apply_preset::@1 apply_preset::@10 apply_preset::@11 apply_preset::@2 apply_preset::@3 apply_preset::@33 apply_preset::@4 apply_preset::@5 apply_preset::@6 apply_preset::@7 apply_preset::@8 apply_preset::@9 - (byte*) apply_preset::preset#14 ? phi( apply_preset::@1/(byte*) apply_preset::preset#1 apply_preset::@10/(byte*) apply_preset::preset#10 apply_preset::@11/(byte*) apply_preset::preset#11 apply_preset::@2/(byte*) apply_preset::preset#2 apply_preset::@3/(byte*) apply_preset::preset#3 apply_preset::@33/(byte*) apply_preset::preset#12 apply_preset::@4/(byte*) apply_preset::preset#4 apply_preset::@5/(byte*) apply_preset::preset#5 apply_preset::@6/(byte*) apply_preset::preset#6 apply_preset::@7/(byte*) apply_preset::preset#7 apply_preset::@8/(byte*) apply_preset::preset#8 apply_preset::@9/(byte*) apply_preset::preset#9 ) - (byte) apply_preset::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) apply_preset::preset#14 ← phi( apply_preset::@1/(byte*) apply_preset::preset#1 apply_preset::@10/(byte*) apply_preset::preset#10 apply_preset::@11/(byte*) apply_preset::preset#11 apply_preset::@2/(byte*) apply_preset::preset#2 apply_preset::@3/(byte*) apply_preset::preset#3 apply_preset::@33/(byte*) apply_preset::preset#12 apply_preset::@4/(byte*) apply_preset::preset#4 apply_preset::@5/(byte*) apply_preset::preset#5 apply_preset::@6/(byte*) apply_preset::preset#6 apply_preset::@7/(byte*) apply_preset::preset#7 apply_preset::@8/(byte*) apply_preset::preset#8 apply_preset::@9/(byte*) apply_preset::preset#9 ) + (byte) apply_preset::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:apply_preset::@45 apply_preset::@45: scope:[apply_preset] from apply_preset::@22 apply_preset::@45 - (byte) apply_preset::i#2 ? phi( apply_preset::@22/(byte) apply_preset::i#0 apply_preset::@45/(byte) apply_preset::i#1 ) - (byte*) apply_preset::preset#13 ? phi( apply_preset::@22/(byte*) apply_preset::preset#14 apply_preset::@45/(byte*) apply_preset::preset#13 ) - *((byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ? *((byte*) apply_preset::preset#13 + (byte) apply_preset::i#2) - (byte) apply_preset::i#1 ? ++ (byte) apply_preset::i#2 - (bool~) apply_preset::$11 ? (byte) apply_preset::i#1 != (byte) form_fields_cnt#0 + (byte) apply_preset::i#2 ← phi( apply_preset::@22/(byte) apply_preset::i#0 apply_preset::@45/(byte) apply_preset::i#1 ) + (byte*) apply_preset::preset#13 ← phi( apply_preset::@22/(byte*) apply_preset::preset#14 apply_preset::@45/(byte*) apply_preset::preset#13 ) + *((byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ← *((byte*) apply_preset::preset#13 + (byte) apply_preset::i#2) + (byte) apply_preset::i#1 ← ++ (byte) apply_preset::i#2 + (bool~) apply_preset::$11 ← (byte) apply_preset::i#1 != (byte) form_fields_cnt#0 if((bool~) apply_preset::$11) goto apply_preset::@45 to:apply_preset::@return apply_preset::@return: scope:[apply_preset] from apply_preset::@45 return to:@return render_preset_name: scope:[render_preset_name] from form_mode::@28 form_mode::@32 - (byte) render_preset_name::idx#2 ? phi( form_mode::@28/(byte) render_preset_name::idx#0 form_mode::@32/(byte) render_preset_name::idx#1 ) - (byte*) render_preset_name::name#0 ? (byte*) 0 - (bool~) render_preset_name::$0 ? (byte) render_preset_name::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_preset_name::idx#2 ← phi( form_mode::@28/(byte) render_preset_name::idx#0 form_mode::@32/(byte) render_preset_name::idx#1 ) + (byte*) render_preset_name::name#0 ← (byte*) 0 + (bool~) render_preset_name::$0 ← (byte) render_preset_name::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) render_preset_name::$0) goto render_preset_name::@1 to:render_preset_name::@23 render_preset_name::@1: scope:[render_preset_name] from render_preset_name - (byte*) render_preset_name::name#1 ? (const string) render_preset_name::$15 + (byte*) render_preset_name::name#1 ← (const string) render_preset_name::$15 to:render_preset_name::@22 render_preset_name::@23: scope:[render_preset_name] from render_preset_name - (byte) render_preset_name::idx#3 ? phi( render_preset_name/(byte) render_preset_name::idx#2 ) - (bool~) render_preset_name::$1 ? (byte) render_preset_name::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_preset_name::idx#3 ← phi( render_preset_name/(byte) render_preset_name::idx#2 ) + (bool~) render_preset_name::$1 ← (byte) render_preset_name::idx#3 == (byte/signed byte/word/signed word/dword/signed dword) 1 if((bool~) render_preset_name::$1) goto render_preset_name::@2 to:render_preset_name::@24 render_preset_name::@2: scope:[render_preset_name] from render_preset_name::@23 - (byte*) render_preset_name::name#2 ? (const string) render_preset_name::$16 + (byte*) render_preset_name::name#2 ← (const string) render_preset_name::$16 to:render_preset_name::@22 render_preset_name::@24: scope:[render_preset_name] from render_preset_name::@23 - (byte) render_preset_name::idx#4 ? phi( render_preset_name::@23/(byte) render_preset_name::idx#3 ) - (bool~) render_preset_name::$2 ? (byte) render_preset_name::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_preset_name::idx#4 ← phi( render_preset_name::@23/(byte) render_preset_name::idx#3 ) + (bool~) render_preset_name::$2 ← (byte) render_preset_name::idx#4 == (byte/signed byte/word/signed word/dword/signed dword) 2 if((bool~) render_preset_name::$2) goto render_preset_name::@3 to:render_preset_name::@25 render_preset_name::@3: scope:[render_preset_name] from render_preset_name::@24 - (byte*) render_preset_name::name#3 ? (const string) render_preset_name::$17 + (byte*) render_preset_name::name#3 ← (const string) render_preset_name::$17 to:render_preset_name::@22 render_preset_name::@25: scope:[render_preset_name] from render_preset_name::@24 - (byte) render_preset_name::idx#5 ? phi( render_preset_name::@24/(byte) render_preset_name::idx#4 ) - (bool~) render_preset_name::$3 ? (byte) render_preset_name::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_preset_name::idx#5 ← phi( render_preset_name::@24/(byte) render_preset_name::idx#4 ) + (bool~) render_preset_name::$3 ← (byte) render_preset_name::idx#5 == (byte/signed byte/word/signed word/dword/signed dword) 3 if((bool~) render_preset_name::$3) goto render_preset_name::@4 to:render_preset_name::@26 render_preset_name::@4: scope:[render_preset_name] from render_preset_name::@25 - (byte*) render_preset_name::name#4 ? (const string) render_preset_name::$18 + (byte*) render_preset_name::name#4 ← (const string) render_preset_name::$18 to:render_preset_name::@22 render_preset_name::@26: scope:[render_preset_name] from render_preset_name::@25 - (byte) render_preset_name::idx#6 ? phi( render_preset_name::@25/(byte) render_preset_name::idx#5 ) - (bool~) render_preset_name::$4 ? (byte) render_preset_name::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_preset_name::idx#6 ← phi( render_preset_name::@25/(byte) render_preset_name::idx#5 ) + (bool~) render_preset_name::$4 ← (byte) render_preset_name::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 if((bool~) render_preset_name::$4) goto render_preset_name::@5 to:render_preset_name::@27 render_preset_name::@5: scope:[render_preset_name] from render_preset_name::@26 - (byte*) render_preset_name::name#5 ? (const string) render_preset_name::$19 + (byte*) render_preset_name::name#5 ← (const string) render_preset_name::$19 to:render_preset_name::@22 render_preset_name::@27: scope:[render_preset_name] from render_preset_name::@26 - (byte) render_preset_name::idx#7 ? phi( render_preset_name::@26/(byte) render_preset_name::idx#6 ) - (bool~) render_preset_name::$5 ? (byte) render_preset_name::idx#7 == (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_preset_name::idx#7 ← phi( render_preset_name::@26/(byte) render_preset_name::idx#6 ) + (bool~) render_preset_name::$5 ← (byte) render_preset_name::idx#7 == (byte/signed byte/word/signed word/dword/signed dword) 5 if((bool~) render_preset_name::$5) goto render_preset_name::@6 to:render_preset_name::@28 render_preset_name::@6: scope:[render_preset_name] from render_preset_name::@27 - (byte*) render_preset_name::name#6 ? (const string) render_preset_name::$20 + (byte*) render_preset_name::name#6 ← (const string) render_preset_name::$20 to:render_preset_name::@22 render_preset_name::@28: scope:[render_preset_name] from render_preset_name::@27 - (byte) render_preset_name::idx#8 ? phi( render_preset_name::@27/(byte) render_preset_name::idx#7 ) - (bool~) render_preset_name::$6 ? (byte) render_preset_name::idx#8 == (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) render_preset_name::idx#8 ← phi( render_preset_name::@27/(byte) render_preset_name::idx#7 ) + (bool~) render_preset_name::$6 ← (byte) render_preset_name::idx#8 == (byte/signed byte/word/signed word/dword/signed dword) 6 if((bool~) render_preset_name::$6) goto render_preset_name::@7 to:render_preset_name::@29 render_preset_name::@7: scope:[render_preset_name] from render_preset_name::@28 - (byte*) render_preset_name::name#7 ? (const string) render_preset_name::$21 + (byte*) render_preset_name::name#7 ← (const string) render_preset_name::$21 to:render_preset_name::@22 render_preset_name::@29: scope:[render_preset_name] from render_preset_name::@28 - (byte) render_preset_name::idx#9 ? phi( render_preset_name::@28/(byte) render_preset_name::idx#8 ) - (bool~) render_preset_name::$7 ? (byte) render_preset_name::idx#9 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) render_preset_name::idx#9 ← phi( render_preset_name::@28/(byte) render_preset_name::idx#8 ) + (bool~) render_preset_name::$7 ← (byte) render_preset_name::idx#9 == (byte/signed byte/word/signed word/dword/signed dword) 7 if((bool~) render_preset_name::$7) goto render_preset_name::@8 to:render_preset_name::@30 render_preset_name::@8: scope:[render_preset_name] from render_preset_name::@29 - (byte*) render_preset_name::name#8 ? (const string) render_preset_name::$22 + (byte*) render_preset_name::name#8 ← (const string) render_preset_name::$22 to:render_preset_name::@22 render_preset_name::@30: scope:[render_preset_name] from render_preset_name::@29 - (byte) render_preset_name::idx#10 ? phi( render_preset_name::@29/(byte) render_preset_name::idx#9 ) - (bool~) render_preset_name::$8 ? (byte) render_preset_name::idx#10 == (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) render_preset_name::idx#10 ← phi( render_preset_name::@29/(byte) render_preset_name::idx#9 ) + (bool~) render_preset_name::$8 ← (byte) render_preset_name::idx#10 == (byte/signed byte/word/signed word/dword/signed dword) 8 if((bool~) render_preset_name::$8) goto render_preset_name::@9 to:render_preset_name::@31 render_preset_name::@9: scope:[render_preset_name] from render_preset_name::@30 - (byte*) render_preset_name::name#9 ? (const string) render_preset_name::$23 + (byte*) render_preset_name::name#9 ← (const string) render_preset_name::$23 to:render_preset_name::@22 render_preset_name::@31: scope:[render_preset_name] from render_preset_name::@30 - (byte) render_preset_name::idx#11 ? phi( render_preset_name::@30/(byte) render_preset_name::idx#10 ) - (bool~) render_preset_name::$9 ? (byte) render_preset_name::idx#11 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) render_preset_name::idx#11 ← phi( render_preset_name::@30/(byte) render_preset_name::idx#10 ) + (bool~) render_preset_name::$9 ← (byte) render_preset_name::idx#11 == (byte/signed byte/word/signed word/dword/signed dword) 9 if((bool~) render_preset_name::$9) goto render_preset_name::@10 to:render_preset_name::@32 render_preset_name::@10: scope:[render_preset_name] from render_preset_name::@31 - (byte*) render_preset_name::name#10 ? (const string) render_preset_name::$24 + (byte*) render_preset_name::name#10 ← (const string) render_preset_name::$24 to:render_preset_name::@22 render_preset_name::@32: scope:[render_preset_name] from render_preset_name::@31 - (byte) render_preset_name::idx#12 ? phi( render_preset_name::@31/(byte) render_preset_name::idx#11 ) - (bool~) render_preset_name::$10 ? (byte) render_preset_name::idx#12 == (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) render_preset_name::idx#12 ← phi( render_preset_name::@31/(byte) render_preset_name::idx#11 ) + (bool~) render_preset_name::$10 ← (byte) render_preset_name::idx#12 == (byte/signed byte/word/signed word/dword/signed dword) $a if((bool~) render_preset_name::$10) goto render_preset_name::@11 to:render_preset_name::@33 render_preset_name::@11: scope:[render_preset_name] from render_preset_name::@32 - (byte*) render_preset_name::name#11 ? (const string) render_preset_name::$25 + (byte*) render_preset_name::name#11 ← (const string) render_preset_name::$25 to:render_preset_name::@22 render_preset_name::@33: scope:[render_preset_name] from render_preset_name::@32 - (byte*) render_preset_name::name#12 ? (const string) render_preset_name::$26 + (byte*) render_preset_name::name#12 ← (const string) render_preset_name::$26 to:render_preset_name::@22 render_preset_name::@22: scope:[render_preset_name] from render_preset_name::@1 render_preset_name::@10 render_preset_name::@11 render_preset_name::@2 render_preset_name::@3 render_preset_name::@33 render_preset_name::@4 render_preset_name::@5 render_preset_name::@6 render_preset_name::@7 render_preset_name::@8 render_preset_name::@9 - (byte*) render_preset_name::name#13 ? phi( render_preset_name::@1/(byte*) render_preset_name::name#1 render_preset_name::@10/(byte*) render_preset_name::name#10 render_preset_name::@11/(byte*) render_preset_name::name#11 render_preset_name::@2/(byte*) render_preset_name::name#2 render_preset_name::@3/(byte*) render_preset_name::name#3 render_preset_name::@33/(byte*) render_preset_name::name#12 render_preset_name::@4/(byte*) render_preset_name::name#4 render_preset_name::@5/(byte*) render_preset_name::name#5 render_preset_name::@6/(byte*) render_preset_name::name#6 render_preset_name::@7/(byte*) render_preset_name::name#7 render_preset_name::@8/(byte*) render_preset_name::name#8 render_preset_name::@9/(byte*) render_preset_name::name#9 ) - (byte/signed byte/word/signed word/dword/signed dword~) render_preset_name::$11 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) render_preset_name::$12 ? (byte*) FORM_SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_preset_name::$11 - (byte*~) render_preset_name::$13 ? (byte*~) render_preset_name::$12 + (byte/signed byte/word/signed word/dword/signed dword) $a - (byte*) print_str_at::str#1 ? (byte*) render_preset_name::name#13 - (byte*) print_str_at::at#1 ? (byte*~) render_preset_name::$13 + (byte*) render_preset_name::name#13 ← phi( render_preset_name::@1/(byte*) render_preset_name::name#1 render_preset_name::@10/(byte*) render_preset_name::name#10 render_preset_name::@11/(byte*) render_preset_name::name#11 render_preset_name::@2/(byte*) render_preset_name::name#2 render_preset_name::@3/(byte*) render_preset_name::name#3 render_preset_name::@33/(byte*) render_preset_name::name#12 render_preset_name::@4/(byte*) render_preset_name::name#4 render_preset_name::@5/(byte*) render_preset_name::name#5 render_preset_name::@6/(byte*) render_preset_name::name#6 render_preset_name::@7/(byte*) render_preset_name::name#7 render_preset_name::@8/(byte*) render_preset_name::name#8 render_preset_name::@9/(byte*) render_preset_name::name#9 ) + (byte/signed byte/word/signed word/dword/signed dword~) render_preset_name::$11 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*~) render_preset_name::$12 ← (byte*) FORM_SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_preset_name::$11 + (byte*~) render_preset_name::$13 ← (byte*~) render_preset_name::$12 + (byte/signed byte/word/signed word/dword/signed dword) $a + (byte*) print_str_at::str#1 ← (byte*) render_preset_name::name#13 + (byte*) print_str_at::at#1 ← (byte*~) render_preset_name::$13 call print_str_at to:render_preset_name::@45 render_preset_name::@45: scope:[render_preset_name] from render_preset_name::@22 @@ -1875,470 +1875,470 @@ render_preset_name::@return: scope:[render_preset_name] from render_preset_name return to:@return @45: scope:[] from @43 - (byte) keyboard_modifiers#88 ? phi( @43/(byte) keyboard_modifiers#95 ) - (byte) keyboard_events_size#91 ? phi( @43/(byte) keyboard_events_size#102 ) - (byte*) print_char_cursor#62 ? phi( @43/(byte*) print_char_cursor#64 ) - (byte*) print_line_cursor#61 ? phi( @43/(byte*) print_line_cursor#64 ) - (byte*) print_screen#39 ? phi( @43/(byte*) print_screen#41 ) - (byte*~) $32 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) form_preset#0 ? (byte*~) $32 - (byte*~) $33 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) form_ctrl_bmm#0 ? (byte*~) $33 - (byte*~) $34 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) form_ctrl_mcm#0 ? (byte*~) $34 - (byte*~) $35 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*) form_ctrl_ecm#0 ? (byte*~) $35 - (byte*~) $36 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*) form_ctrl_hicol#0 ? (byte*~) $36 - (byte*~) $37 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte*) form_ctrl_line#0 ? (byte*~) $37 - (byte*~) $38 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*) form_ctrl_colof#0 ? (byte*~) $38 - (byte*~) $39 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) form_ctrl_chunk#0 ? (byte*~) $39 - (byte*~) $40 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) form_ctrl_borof#0 ? (byte*~) $40 - (byte*~) $41 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte*) form_ctrl_overs#0 ? (byte*~) $41 - (byte*~) $42 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a - (byte*) form_a_pattern#0 ? (byte*~) $42 - (byte*~) $43 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $b - (byte*) form_a_start_hi#0 ? (byte*~) $43 - (byte*~) $44 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $c - (byte*) form_a_start_lo#0 ? (byte*~) $44 - (byte*~) $45 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $d - (byte*) form_a_step_hi#0 ? (byte*~) $45 - (byte*~) $46 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $e - (byte*) form_a_step_lo#0 ? (byte*~) $46 - (byte*~) $47 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $f - (byte*) form_a_mod_hi#0 ? (byte*~) $47 - (byte*~) $48 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte*) form_a_mod_lo#0 ? (byte*~) $48 - (byte*~) $49 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $11 - (byte*) form_b_pattern#0 ? (byte*~) $49 - (byte*~) $50 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $12 - (byte*) form_b_start_hi#0 ? (byte*~) $50 - (byte*~) $51 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $13 - (byte*) form_b_start_lo#0 ? (byte*~) $51 - (byte*~) $52 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte*) form_b_step_hi#0 ? (byte*~) $52 - (byte*~) $53 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte*) form_b_step_lo#0 ? (byte*~) $53 - (byte*~) $54 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $16 - (byte*) form_b_mod_hi#0 ? (byte*~) $54 - (byte*~) $55 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $17 - (byte*) form_b_mod_lo#0 ? (byte*~) $55 - (byte*~) $56 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte*) form_vic_screen#0 ? (byte*~) $56 - (byte*~) $57 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $19 - (byte*) form_vic_gfx#0 ? (byte*~) $57 - (byte*~) $58 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1a - (byte*) form_vic_cols#0 ? (byte*~) $58 - (byte*~) $59 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1b - (byte*) form_dtv_palet#0 ? (byte*~) $59 - (byte*~) $60 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1c - (byte*) form_vic_bg0_hi#0 ? (byte*~) $60 - (byte*~) $61 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1d - (byte*) form_vic_bg0_lo#0 ? (byte*~) $61 - (byte*~) $62 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1e - (byte*) form_vic_bg1_hi#0 ? (byte*~) $62 - (byte*~) $63 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1f - (byte*) form_vic_bg1_lo#0 ? (byte*~) $63 - (byte*~) $64 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte*) form_vic_bg2_hi#0 ? (byte*~) $64 - (byte*~) $65 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $21 - (byte*) form_vic_bg2_lo#0 ? (byte*~) $65 - (byte*~) $66 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $22 - (byte*) form_vic_bg3_hi#0 ? (byte*~) $66 - (byte*~) $67 ? (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $23 - (byte*) form_vic_bg3_lo#0 ? (byte*~) $67 + (byte) keyboard_modifiers#88 ← phi( @43/(byte) keyboard_modifiers#95 ) + (byte) keyboard_events_size#91 ← phi( @43/(byte) keyboard_events_size#102 ) + (byte*) print_char_cursor#62 ← phi( @43/(byte*) print_char_cursor#64 ) + (byte*) print_line_cursor#61 ← phi( @43/(byte*) print_line_cursor#64 ) + (byte*) print_screen#39 ← phi( @43/(byte*) print_screen#41 ) + (byte*~) $32 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) form_preset#0 ← (byte*~) $32 + (byte*~) $33 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) form_ctrl_bmm#0 ← (byte*~) $33 + (byte*~) $34 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) form_ctrl_mcm#0 ← (byte*~) $34 + (byte*~) $35 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte*) form_ctrl_ecm#0 ← (byte*~) $35 + (byte*~) $36 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*) form_ctrl_hicol#0 ← (byte*~) $36 + (byte*~) $37 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte*) form_ctrl_line#0 ← (byte*~) $37 + (byte*~) $38 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte*) form_ctrl_colof#0 ← (byte*~) $38 + (byte*~) $39 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) form_ctrl_chunk#0 ← (byte*~) $39 + (byte*~) $40 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) form_ctrl_borof#0 ← (byte*~) $40 + (byte*~) $41 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte*) form_ctrl_overs#0 ← (byte*~) $41 + (byte*~) $42 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a + (byte*) form_a_pattern#0 ← (byte*~) $42 + (byte*~) $43 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $b + (byte*) form_a_start_hi#0 ← (byte*~) $43 + (byte*~) $44 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $c + (byte*) form_a_start_lo#0 ← (byte*~) $44 + (byte*~) $45 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $d + (byte*) form_a_step_hi#0 ← (byte*~) $45 + (byte*~) $46 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $e + (byte*) form_a_step_lo#0 ← (byte*~) $46 + (byte*~) $47 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) form_a_mod_hi#0 ← (byte*~) $47 + (byte*~) $48 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte*) form_a_mod_lo#0 ← (byte*~) $48 + (byte*~) $49 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $11 + (byte*) form_b_pattern#0 ← (byte*~) $49 + (byte*~) $50 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $12 + (byte*) form_b_start_hi#0 ← (byte*~) $50 + (byte*~) $51 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $13 + (byte*) form_b_start_lo#0 ← (byte*~) $51 + (byte*~) $52 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte*) form_b_step_hi#0 ← (byte*~) $52 + (byte*~) $53 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte*) form_b_step_lo#0 ← (byte*~) $53 + (byte*~) $54 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $16 + (byte*) form_b_mod_hi#0 ← (byte*~) $54 + (byte*~) $55 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $17 + (byte*) form_b_mod_lo#0 ← (byte*~) $55 + (byte*~) $56 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte*) form_vic_screen#0 ← (byte*~) $56 + (byte*~) $57 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $19 + (byte*) form_vic_gfx#0 ← (byte*~) $57 + (byte*~) $58 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1a + (byte*) form_vic_cols#0 ← (byte*~) $58 + (byte*~) $59 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1b + (byte*) form_dtv_palet#0 ← (byte*~) $59 + (byte*~) $60 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1c + (byte*) form_vic_bg0_hi#0 ← (byte*~) $60 + (byte*~) $61 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1d + (byte*) form_vic_bg0_lo#0 ← (byte*~) $61 + (byte*~) $62 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1e + (byte*) form_vic_bg1_hi#0 ← (byte*~) $62 + (byte*~) $63 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $1f + (byte*) form_vic_bg1_lo#0 ← (byte*~) $63 + (byte*~) $64 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte*) form_vic_bg2_hi#0 ← (byte*~) $64 + (byte*~) $65 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $21 + (byte*) form_vic_bg2_lo#0 ← (byte*~) $65 + (byte*~) $66 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $22 + (byte*) form_vic_bg3_hi#0 ← (byte*~) $66 + (byte*~) $67 ← (byte[]) form_fields_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $23 + (byte*) form_vic_bg3_lo#0 ← (byte*~) $67 to:@64 gfx_mode: scope:[gfx_mode] from main::@9 - (byte) keyboard_modifiers#139 ? phi( main::@9/(byte) keyboard_modifiers#7 ) - (byte) keyboard_events_size#159 ? phi( main::@9/(byte) keyboard_events_size#6 ) - (byte) gfx_mode::dtv_control#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$0 ? *((byte*) form_ctrl_line#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$1 ? ! (bool~) gfx_mode::$0 + (byte) keyboard_modifiers#139 ← phi( main::@9/(byte) keyboard_modifiers#7 ) + (byte) keyboard_events_size#159 ← phi( main::@9/(byte) keyboard_events_size#6 ) + (byte) gfx_mode::dtv_control#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$0 ← *((byte*) form_ctrl_line#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$1 ← ! (bool~) gfx_mode::$0 if((bool~) gfx_mode::$1) goto gfx_mode::@1 to:gfx_mode::@12 gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@12 - (byte) keyboard_modifiers#137 ? phi( gfx_mode/(byte) keyboard_modifiers#139 gfx_mode::@12/(byte) keyboard_modifiers#140 ) - (byte) keyboard_events_size#157 ? phi( gfx_mode/(byte) keyboard_events_size#159 gfx_mode::@12/(byte) keyboard_events_size#160 ) - (byte) gfx_mode::dtv_control#14 ? phi( gfx_mode/(byte) gfx_mode::dtv_control#0 gfx_mode::@12/(byte) gfx_mode::dtv_control#1 ) - (bool~) gfx_mode::$2 ? *((byte*) form_ctrl_borof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$3 ? ! (bool~) gfx_mode::$2 + (byte) keyboard_modifiers#137 ← phi( gfx_mode/(byte) keyboard_modifiers#139 gfx_mode::@12/(byte) keyboard_modifiers#140 ) + (byte) keyboard_events_size#157 ← phi( gfx_mode/(byte) keyboard_events_size#159 gfx_mode::@12/(byte) keyboard_events_size#160 ) + (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte) gfx_mode::dtv_control#0 gfx_mode::@12/(byte) gfx_mode::dtv_control#1 ) + (bool~) gfx_mode::$2 ← *((byte*) form_ctrl_borof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$3 ← ! (bool~) gfx_mode::$2 if((bool~) gfx_mode::$3) goto gfx_mode::@2 to:gfx_mode::@13 gfx_mode::@12: scope:[gfx_mode] from gfx_mode - (byte) keyboard_modifiers#140 ? phi( gfx_mode/(byte) keyboard_modifiers#139 ) - (byte) keyboard_events_size#160 ? phi( gfx_mode/(byte) keyboard_events_size#159 ) - (byte) gfx_mode::dtv_control#7 ? phi( gfx_mode/(byte) gfx_mode::dtv_control#0 ) - (byte~) gfx_mode::$73 ? (byte) gfx_mode::dtv_control#7 | (byte) DTV_LINEAR#0 - (byte) gfx_mode::dtv_control#1 ? (byte~) gfx_mode::$73 + (byte) keyboard_modifiers#140 ← phi( gfx_mode/(byte) keyboard_modifiers#139 ) + (byte) keyboard_events_size#160 ← phi( gfx_mode/(byte) keyboard_events_size#159 ) + (byte) gfx_mode::dtv_control#7 ← phi( gfx_mode/(byte) gfx_mode::dtv_control#0 ) + (byte~) gfx_mode::$73 ← (byte) gfx_mode::dtv_control#7 | (byte) DTV_LINEAR#0 + (byte) gfx_mode::dtv_control#1 ← (byte~) gfx_mode::$73 to:gfx_mode::@1 gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@13 - (byte) keyboard_modifiers#136 ? phi( gfx_mode::@1/(byte) keyboard_modifiers#137 gfx_mode::@13/(byte) keyboard_modifiers#138 ) - (byte) keyboard_events_size#156 ? phi( gfx_mode::@1/(byte) keyboard_events_size#157 gfx_mode::@13/(byte) keyboard_events_size#158 ) - (byte) gfx_mode::dtv_control#15 ? phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@13/(byte) gfx_mode::dtv_control#2 ) - (bool~) gfx_mode::$4 ? *((byte*) form_ctrl_hicol#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$5 ? ! (bool~) gfx_mode::$4 + (byte) keyboard_modifiers#136 ← phi( gfx_mode::@1/(byte) keyboard_modifiers#137 gfx_mode::@13/(byte) keyboard_modifiers#138 ) + (byte) keyboard_events_size#156 ← phi( gfx_mode::@1/(byte) keyboard_events_size#157 gfx_mode::@13/(byte) keyboard_events_size#158 ) + (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@13/(byte) gfx_mode::dtv_control#2 ) + (bool~) gfx_mode::$4 ← *((byte*) form_ctrl_hicol#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$5 ← ! (bool~) gfx_mode::$4 if((bool~) gfx_mode::$5) goto gfx_mode::@3 to:gfx_mode::@14 gfx_mode::@13: scope:[gfx_mode] from gfx_mode::@1 - (byte) keyboard_modifiers#138 ? phi( gfx_mode::@1/(byte) keyboard_modifiers#137 ) - (byte) keyboard_events_size#158 ? phi( gfx_mode::@1/(byte) keyboard_events_size#157 ) - (byte) gfx_mode::dtv_control#8 ? phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 ) - (byte~) gfx_mode::$74 ? (byte) gfx_mode::dtv_control#8 | (byte) DTV_BORDER_OFF#0 - (byte) gfx_mode::dtv_control#2 ? (byte~) gfx_mode::$74 + (byte) keyboard_modifiers#138 ← phi( gfx_mode::@1/(byte) keyboard_modifiers#137 ) + (byte) keyboard_events_size#158 ← phi( gfx_mode::@1/(byte) keyboard_events_size#157 ) + (byte) gfx_mode::dtv_control#8 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 ) + (byte~) gfx_mode::$74 ← (byte) gfx_mode::dtv_control#8 | (byte) DTV_BORDER_OFF#0 + (byte) gfx_mode::dtv_control#2 ← (byte~) gfx_mode::$74 to:gfx_mode::@2 gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@14 gfx_mode::@2 - (byte) keyboard_modifiers#134 ? phi( gfx_mode::@14/(byte) keyboard_modifiers#135 gfx_mode::@2/(byte) keyboard_modifiers#136 ) - (byte) keyboard_events_size#154 ? phi( gfx_mode::@14/(byte) keyboard_events_size#155 gfx_mode::@2/(byte) keyboard_events_size#156 ) - (byte) gfx_mode::dtv_control#16 ? phi( gfx_mode::@14/(byte) gfx_mode::dtv_control#3 gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) - (bool~) gfx_mode::$6 ? *((byte*) form_ctrl_overs#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$7 ? ! (bool~) gfx_mode::$6 + (byte) keyboard_modifiers#134 ← phi( gfx_mode::@14/(byte) keyboard_modifiers#135 gfx_mode::@2/(byte) keyboard_modifiers#136 ) + (byte) keyboard_events_size#154 ← phi( gfx_mode::@14/(byte) keyboard_events_size#155 gfx_mode::@2/(byte) keyboard_events_size#156 ) + (byte) gfx_mode::dtv_control#16 ← phi( gfx_mode::@14/(byte) gfx_mode::dtv_control#3 gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) + (bool~) gfx_mode::$6 ← *((byte*) form_ctrl_overs#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$7 ← ! (bool~) gfx_mode::$6 if((bool~) gfx_mode::$7) goto gfx_mode::@4 to:gfx_mode::@15 gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@2 - (byte) keyboard_modifiers#135 ? phi( gfx_mode::@2/(byte) keyboard_modifiers#136 ) - (byte) keyboard_events_size#155 ? phi( gfx_mode::@2/(byte) keyboard_events_size#156 ) - (byte) gfx_mode::dtv_control#9 ? phi( gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) - (byte~) gfx_mode::$75 ? (byte) gfx_mode::dtv_control#9 | (byte) DTV_HIGHCOLOR#0 - (byte) gfx_mode::dtv_control#3 ? (byte~) gfx_mode::$75 + (byte) keyboard_modifiers#135 ← phi( gfx_mode::@2/(byte) keyboard_modifiers#136 ) + (byte) keyboard_events_size#155 ← phi( gfx_mode::@2/(byte) keyboard_events_size#156 ) + (byte) gfx_mode::dtv_control#9 ← phi( gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) + (byte~) gfx_mode::$75 ← (byte) gfx_mode::dtv_control#9 | (byte) DTV_HIGHCOLOR#0 + (byte) gfx_mode::dtv_control#3 ← (byte~) gfx_mode::$75 to:gfx_mode::@3 gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@15 gfx_mode::@3 - (byte) keyboard_modifiers#132 ? phi( gfx_mode::@15/(byte) keyboard_modifiers#133 gfx_mode::@3/(byte) keyboard_modifiers#134 ) - (byte) keyboard_events_size#152 ? phi( gfx_mode::@15/(byte) keyboard_events_size#153 gfx_mode::@3/(byte) keyboard_events_size#154 ) - (byte) gfx_mode::dtv_control#17 ? phi( gfx_mode::@15/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#16 ) - (bool~) gfx_mode::$8 ? *((byte*) form_ctrl_colof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$9 ? ! (bool~) gfx_mode::$8 + (byte) keyboard_modifiers#132 ← phi( gfx_mode::@15/(byte) keyboard_modifiers#133 gfx_mode::@3/(byte) keyboard_modifiers#134 ) + (byte) keyboard_events_size#152 ← phi( gfx_mode::@15/(byte) keyboard_events_size#153 gfx_mode::@3/(byte) keyboard_events_size#154 ) + (byte) gfx_mode::dtv_control#17 ← phi( gfx_mode::@15/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#16 ) + (bool~) gfx_mode::$8 ← *((byte*) form_ctrl_colof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$9 ← ! (bool~) gfx_mode::$8 if((bool~) gfx_mode::$9) goto gfx_mode::@5 to:gfx_mode::@16 gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@3 - (byte) keyboard_modifiers#133 ? phi( gfx_mode::@3/(byte) keyboard_modifiers#134 ) - (byte) keyboard_events_size#153 ? phi( gfx_mode::@3/(byte) keyboard_events_size#154 ) - (byte) gfx_mode::dtv_control#10 ? phi( gfx_mode::@3/(byte) gfx_mode::dtv_control#16 ) - (byte~) gfx_mode::$76 ? (byte) gfx_mode::dtv_control#10 | (byte) DTV_OVERSCAN#0 - (byte) gfx_mode::dtv_control#4 ? (byte~) gfx_mode::$76 + (byte) keyboard_modifiers#133 ← phi( gfx_mode::@3/(byte) keyboard_modifiers#134 ) + (byte) keyboard_events_size#153 ← phi( gfx_mode::@3/(byte) keyboard_events_size#154 ) + (byte) gfx_mode::dtv_control#10 ← phi( gfx_mode::@3/(byte) gfx_mode::dtv_control#16 ) + (byte~) gfx_mode::$76 ← (byte) gfx_mode::dtv_control#10 | (byte) DTV_OVERSCAN#0 + (byte) gfx_mode::dtv_control#4 ← (byte~) gfx_mode::$76 to:gfx_mode::@4 gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@4 - (byte) keyboard_modifiers#130 ? phi( gfx_mode::@16/(byte) keyboard_modifiers#131 gfx_mode::@4/(byte) keyboard_modifiers#132 ) - (byte) keyboard_events_size#150 ? phi( gfx_mode::@16/(byte) keyboard_events_size#151 gfx_mode::@4/(byte) keyboard_events_size#152 ) - (byte) gfx_mode::dtv_control#18 ? phi( gfx_mode::@16/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#17 ) - (bool~) gfx_mode::$10 ? *((byte*) form_ctrl_chunk#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$11 ? ! (bool~) gfx_mode::$10 + (byte) keyboard_modifiers#130 ← phi( gfx_mode::@16/(byte) keyboard_modifiers#131 gfx_mode::@4/(byte) keyboard_modifiers#132 ) + (byte) keyboard_events_size#150 ← phi( gfx_mode::@16/(byte) keyboard_events_size#151 gfx_mode::@4/(byte) keyboard_events_size#152 ) + (byte) gfx_mode::dtv_control#18 ← phi( gfx_mode::@16/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#17 ) + (bool~) gfx_mode::$10 ← *((byte*) form_ctrl_chunk#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$11 ← ! (bool~) gfx_mode::$10 if((bool~) gfx_mode::$11) goto gfx_mode::@6 to:gfx_mode::@17 gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@4 - (byte) keyboard_modifiers#131 ? phi( gfx_mode::@4/(byte) keyboard_modifiers#132 ) - (byte) keyboard_events_size#151 ? phi( gfx_mode::@4/(byte) keyboard_events_size#152 ) - (byte) gfx_mode::dtv_control#11 ? phi( gfx_mode::@4/(byte) gfx_mode::dtv_control#17 ) - (byte~) gfx_mode::$77 ? (byte) gfx_mode::dtv_control#11 | (byte) DTV_COLORRAM_OFF#0 - (byte) gfx_mode::dtv_control#5 ? (byte~) gfx_mode::$77 + (byte) keyboard_modifiers#131 ← phi( gfx_mode::@4/(byte) keyboard_modifiers#132 ) + (byte) keyboard_events_size#151 ← phi( gfx_mode::@4/(byte) keyboard_events_size#152 ) + (byte) gfx_mode::dtv_control#11 ← phi( gfx_mode::@4/(byte) gfx_mode::dtv_control#17 ) + (byte~) gfx_mode::$77 ← (byte) gfx_mode::dtv_control#11 | (byte) DTV_COLORRAM_OFF#0 + (byte) gfx_mode::dtv_control#5 ← (byte~) gfx_mode::$77 to:gfx_mode::@5 gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@17 gfx_mode::@5 - (byte) keyboard_modifiers#128 ? phi( gfx_mode::@17/(byte) keyboard_modifiers#129 gfx_mode::@5/(byte) keyboard_modifiers#130 ) - (byte) keyboard_events_size#148 ? phi( gfx_mode::@17/(byte) keyboard_events_size#149 gfx_mode::@5/(byte) keyboard_events_size#150 ) - (byte) gfx_mode::dtv_control#12 ? phi( gfx_mode::@17/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#18 ) - *((byte*) DTV_CONTROL#0) ? (byte) gfx_mode::dtv_control#12 - (byte~) gfx_mode::$12 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) gfx_mode::$13 ? (byte~) gfx_mode::$12 | (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) gfx_mode::vic_control#0 ? (byte/word/dword~) gfx_mode::$13 - (bool~) gfx_mode::$14 ? *((byte*) form_ctrl_ecm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$15 ? ! (bool~) gfx_mode::$14 + (byte) keyboard_modifiers#128 ← phi( gfx_mode::@17/(byte) keyboard_modifiers#129 gfx_mode::@5/(byte) keyboard_modifiers#130 ) + (byte) keyboard_events_size#148 ← phi( gfx_mode::@17/(byte) keyboard_events_size#149 gfx_mode::@5/(byte) keyboard_events_size#150 ) + (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@17/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#18 ) + *((byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 + (byte~) gfx_mode::$12 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) gfx_mode::$13 ← (byte~) gfx_mode::$12 | (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) gfx_mode::vic_control#0 ← (byte/word/dword~) gfx_mode::$13 + (bool~) gfx_mode::$14 ← *((byte*) form_ctrl_ecm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$15 ← ! (bool~) gfx_mode::$14 if((bool~) gfx_mode::$15) goto gfx_mode::@7 to:gfx_mode::@18 gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@5 - (byte) keyboard_modifiers#129 ? phi( gfx_mode::@5/(byte) keyboard_modifiers#130 ) - (byte) keyboard_events_size#149 ? phi( gfx_mode::@5/(byte) keyboard_events_size#150 ) - (byte) gfx_mode::dtv_control#13 ? phi( gfx_mode::@5/(byte) gfx_mode::dtv_control#18 ) - (byte~) gfx_mode::$78 ? (byte) gfx_mode::dtv_control#13 | (byte) DTV_CHUNKY#0 - (byte) gfx_mode::dtv_control#6 ? (byte~) gfx_mode::$78 + (byte) keyboard_modifiers#129 ← phi( gfx_mode::@5/(byte) keyboard_modifiers#130 ) + (byte) keyboard_events_size#149 ← phi( gfx_mode::@5/(byte) keyboard_events_size#150 ) + (byte) gfx_mode::dtv_control#13 ← phi( gfx_mode::@5/(byte) gfx_mode::dtv_control#18 ) + (byte~) gfx_mode::$78 ← (byte) gfx_mode::dtv_control#13 | (byte) DTV_CHUNKY#0 + (byte) gfx_mode::dtv_control#6 ← (byte~) gfx_mode::$78 to:gfx_mode::@6 gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@18 gfx_mode::@6 - (byte) keyboard_modifiers#126 ? phi( gfx_mode::@18/(byte) keyboard_modifiers#127 gfx_mode::@6/(byte) keyboard_modifiers#128 ) - (byte) keyboard_events_size#146 ? phi( gfx_mode::@18/(byte) keyboard_events_size#147 gfx_mode::@6/(byte) keyboard_events_size#148 ) - (byte) gfx_mode::vic_control#6 ? phi( gfx_mode::@18/(byte) gfx_mode::vic_control#1 gfx_mode::@6/(byte) gfx_mode::vic_control#0 ) - (bool~) gfx_mode::$16 ? *((byte*) form_ctrl_bmm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$17 ? ! (bool~) gfx_mode::$16 + (byte) keyboard_modifiers#126 ← phi( gfx_mode::@18/(byte) keyboard_modifiers#127 gfx_mode::@6/(byte) keyboard_modifiers#128 ) + (byte) keyboard_events_size#146 ← phi( gfx_mode::@18/(byte) keyboard_events_size#147 gfx_mode::@6/(byte) keyboard_events_size#148 ) + (byte) gfx_mode::vic_control#6 ← phi( gfx_mode::@18/(byte) gfx_mode::vic_control#1 gfx_mode::@6/(byte) gfx_mode::vic_control#0 ) + (bool~) gfx_mode::$16 ← *((byte*) form_ctrl_bmm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$17 ← ! (bool~) gfx_mode::$16 if((bool~) gfx_mode::$17) goto gfx_mode::@8 to:gfx_mode::@19 gfx_mode::@18: scope:[gfx_mode] from gfx_mode::@6 - (byte) keyboard_modifiers#127 ? phi( gfx_mode::@6/(byte) keyboard_modifiers#128 ) - (byte) keyboard_events_size#147 ? phi( gfx_mode::@6/(byte) keyboard_events_size#148 ) - (byte) gfx_mode::vic_control#3 ? phi( gfx_mode::@6/(byte) gfx_mode::vic_control#0 ) - (byte~) gfx_mode::$79 ? (byte) gfx_mode::vic_control#3 | (byte) VIC_ECM#0 - (byte) gfx_mode::vic_control#1 ? (byte~) gfx_mode::$79 + (byte) keyboard_modifiers#127 ← phi( gfx_mode::@6/(byte) keyboard_modifiers#128 ) + (byte) keyboard_events_size#147 ← phi( gfx_mode::@6/(byte) keyboard_events_size#148 ) + (byte) gfx_mode::vic_control#3 ← phi( gfx_mode::@6/(byte) gfx_mode::vic_control#0 ) + (byte~) gfx_mode::$79 ← (byte) gfx_mode::vic_control#3 | (byte) VIC_ECM#0 + (byte) gfx_mode::vic_control#1 ← (byte~) gfx_mode::$79 to:gfx_mode::@7 gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@7 - (byte) keyboard_modifiers#124 ? phi( gfx_mode::@19/(byte) keyboard_modifiers#125 gfx_mode::@7/(byte) keyboard_modifiers#126 ) - (byte) keyboard_events_size#144 ? phi( gfx_mode::@19/(byte) keyboard_events_size#145 gfx_mode::@7/(byte) keyboard_events_size#146 ) - (byte) gfx_mode::vic_control#4 ? phi( gfx_mode::@19/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#6 ) - *((byte*) VIC_CONTROL#0) ? (byte) gfx_mode::vic_control#4 - (byte) gfx_mode::vic_control2#0 ? (byte) VIC_CSEL#0 - (bool~) gfx_mode::$18 ? *((byte*) form_ctrl_mcm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_mode::$19 ? ! (bool~) gfx_mode::$18 + (byte) keyboard_modifiers#124 ← phi( gfx_mode::@19/(byte) keyboard_modifiers#125 gfx_mode::@7/(byte) keyboard_modifiers#126 ) + (byte) keyboard_events_size#144 ← phi( gfx_mode::@19/(byte) keyboard_events_size#145 gfx_mode::@7/(byte) keyboard_events_size#146 ) + (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@19/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#6 ) + *((byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 + (byte) gfx_mode::vic_control2#0 ← (byte) VIC_CSEL#0 + (bool~) gfx_mode::$18 ← *((byte*) form_ctrl_mcm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_mode::$19 ← ! (bool~) gfx_mode::$18 if((bool~) gfx_mode::$19) goto gfx_mode::@9 to:gfx_mode::@20 gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@7 - (byte) keyboard_modifiers#125 ? phi( gfx_mode::@7/(byte) keyboard_modifiers#126 ) - (byte) keyboard_events_size#145 ? phi( gfx_mode::@7/(byte) keyboard_events_size#146 ) - (byte) gfx_mode::vic_control#5 ? phi( gfx_mode::@7/(byte) gfx_mode::vic_control#6 ) - (byte~) gfx_mode::$80 ? (byte) gfx_mode::vic_control#5 | (byte) VIC_BMM#0 - (byte) gfx_mode::vic_control#2 ? (byte~) gfx_mode::$80 + (byte) keyboard_modifiers#125 ← phi( gfx_mode::@7/(byte) keyboard_modifiers#126 ) + (byte) keyboard_events_size#145 ← phi( gfx_mode::@7/(byte) keyboard_events_size#146 ) + (byte) gfx_mode::vic_control#5 ← phi( gfx_mode::@7/(byte) gfx_mode::vic_control#6 ) + (byte~) gfx_mode::$80 ← (byte) gfx_mode::vic_control#5 | (byte) VIC_BMM#0 + (byte) gfx_mode::vic_control#2 ← (byte~) gfx_mode::$80 to:gfx_mode::@8 gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@20 gfx_mode::@8 - (byte) keyboard_modifiers#121 ? phi( gfx_mode::@20/(byte) keyboard_modifiers#123 gfx_mode::@8/(byte) keyboard_modifiers#124 ) - (byte) keyboard_events_size#141 ? phi( gfx_mode::@20/(byte) keyboard_events_size#143 gfx_mode::@8/(byte) keyboard_events_size#144 ) - (byte) gfx_mode::vic_control2#2 ? phi( gfx_mode::@20/(byte) gfx_mode::vic_control2#1 gfx_mode::@8/(byte) gfx_mode::vic_control2#0 ) - *((byte*) VIC_CONTROL2#0) ? (byte) gfx_mode::vic_control2#2 - (byte~) gfx_mode::$20 ? *((byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$21 ? (byte~) gfx_mode::$20 | *((byte*) form_a_start_lo#0) - (byte) gfx_mode::plane_a_offs#0 ? (byte~) gfx_mode::$21 - (byte) get_plane::idx#0 ? *((byte*) form_a_pattern#0) + (byte) keyboard_modifiers#121 ← phi( gfx_mode::@20/(byte) keyboard_modifiers#123 gfx_mode::@8/(byte) keyboard_modifiers#124 ) + (byte) keyboard_events_size#141 ← phi( gfx_mode::@20/(byte) keyboard_events_size#143 gfx_mode::@8/(byte) keyboard_events_size#144 ) + (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@20/(byte) gfx_mode::vic_control2#1 gfx_mode::@8/(byte) gfx_mode::vic_control2#0 ) + *((byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 + (byte~) gfx_mode::$20 ← *((byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$21 ← (byte~) gfx_mode::$20 | *((byte*) form_a_start_lo#0) + (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$21 + (byte) get_plane::idx#0 ← *((byte*) form_a_pattern#0) call get_plane - (dword) get_plane::return#16 ? (dword) get_plane::return#14 + (dword) get_plane::return#16 ← (dword) get_plane::return#14 to:gfx_mode::@46 gfx_mode::@46: scope:[gfx_mode] from gfx_mode::@9 - (byte) keyboard_modifiers#119 ? phi( gfx_mode::@9/(byte) keyboard_modifiers#121 ) - (byte) keyboard_events_size#139 ? phi( gfx_mode::@9/(byte) keyboard_events_size#141 ) - (byte) gfx_mode::plane_a_offs#1 ? phi( gfx_mode::@9/(byte) gfx_mode::plane_a_offs#0 ) - (dword) get_plane::return#19 ? phi( gfx_mode::@9/(dword) get_plane::return#16 ) - (dword~) gfx_mode::$22 ? (dword) get_plane::return#19 - (dword~) gfx_mode::$23 ? (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#1 - (dword) gfx_mode::plane_a#0 ? (dword~) gfx_mode::$23 - (word~) gfx_mode::$24 ? < (dword) gfx_mode::plane_a#0 - (byte~) gfx_mode::$25 ? < (word~) gfx_mode::$24 - *((byte*) DTV_PLANEA_START_LO#0) ? (byte~) gfx_mode::$25 - (word~) gfx_mode::$26 ? < (dword) gfx_mode::plane_a#0 - (byte~) gfx_mode::$27 ? > (word~) gfx_mode::$26 - *((byte*) DTV_PLANEA_START_MI#0) ? (byte~) gfx_mode::$27 - (word~) gfx_mode::$28 ? > (dword) gfx_mode::plane_a#0 - (byte~) gfx_mode::$29 ? < (word~) gfx_mode::$28 - *((byte*) DTV_PLANEA_START_HI#0) ? (byte~) gfx_mode::$29 - (byte~) gfx_mode::$30 ? *((byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$31 ? (byte~) gfx_mode::$30 | *((byte*) form_a_step_lo#0) - *((byte*) DTV_PLANEA_STEP#0) ? (byte~) gfx_mode::$31 - (byte~) gfx_mode::$32 ? *((byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$33 ? (byte~) gfx_mode::$32 | *((byte*) form_a_mod_lo#0) - *((byte*) DTV_PLANEA_MODULO_LO#0) ? (byte~) gfx_mode::$33 - *((byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) gfx_mode::$34 ? *((byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$35 ? (byte~) gfx_mode::$34 | *((byte*) form_b_start_lo#0) - (byte) gfx_mode::plane_b_offs#0 ? (byte~) gfx_mode::$35 - (byte) get_plane::idx#1 ? *((byte*) form_b_pattern#0) + (byte) keyboard_modifiers#119 ← phi( gfx_mode::@9/(byte) keyboard_modifiers#121 ) + (byte) keyboard_events_size#139 ← phi( gfx_mode::@9/(byte) keyboard_events_size#141 ) + (byte) gfx_mode::plane_a_offs#1 ← phi( gfx_mode::@9/(byte) gfx_mode::plane_a_offs#0 ) + (dword) get_plane::return#19 ← phi( gfx_mode::@9/(dword) get_plane::return#16 ) + (dword~) gfx_mode::$22 ← (dword) get_plane::return#19 + (dword~) gfx_mode::$23 ← (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#1 + (dword) gfx_mode::plane_a#0 ← (dword~) gfx_mode::$23 + (word~) gfx_mode::$24 ← < (dword) gfx_mode::plane_a#0 + (byte~) gfx_mode::$25 ← < (word~) gfx_mode::$24 + *((byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$25 + (word~) gfx_mode::$26 ← < (dword) gfx_mode::plane_a#0 + (byte~) gfx_mode::$27 ← > (word~) gfx_mode::$26 + *((byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$27 + (word~) gfx_mode::$28 ← > (dword) gfx_mode::plane_a#0 + (byte~) gfx_mode::$29 ← < (word~) gfx_mode::$28 + *((byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$29 + (byte~) gfx_mode::$30 ← *((byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$31 ← (byte~) gfx_mode::$30 | *((byte*) form_a_step_lo#0) + *((byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$31 + (byte~) gfx_mode::$32 ← *((byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$33 ← (byte~) gfx_mode::$32 | *((byte*) form_a_mod_lo#0) + *((byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$33 + *((byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) gfx_mode::$34 ← *((byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$35 ← (byte~) gfx_mode::$34 | *((byte*) form_b_start_lo#0) + (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$35 + (byte) get_plane::idx#1 ← *((byte*) form_b_pattern#0) call get_plane - (dword) get_plane::return#17 ? (dword) get_plane::return#14 + (dword) get_plane::return#17 ← (dword) get_plane::return#14 to:gfx_mode::@47 gfx_mode::@47: scope:[gfx_mode] from gfx_mode::@46 - (byte) keyboard_modifiers#117 ? phi( gfx_mode::@46/(byte) keyboard_modifiers#119 ) - (byte) keyboard_events_size#137 ? phi( gfx_mode::@46/(byte) keyboard_events_size#139 ) - (byte) gfx_mode::plane_b_offs#1 ? phi( gfx_mode::@46/(byte) gfx_mode::plane_b_offs#0 ) - (dword) get_plane::return#20 ? phi( gfx_mode::@46/(dword) get_plane::return#17 ) - (dword~) gfx_mode::$36 ? (dword) get_plane::return#20 - (dword~) gfx_mode::$37 ? (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#1 - (dword) gfx_mode::plane_b#0 ? (dword~) gfx_mode::$37 - (word~) gfx_mode::$38 ? < (dword) gfx_mode::plane_b#0 - (byte~) gfx_mode::$39 ? < (word~) gfx_mode::$38 - *((byte*) DTV_PLANEB_START_LO#0) ? (byte~) gfx_mode::$39 - (word~) gfx_mode::$40 ? < (dword) gfx_mode::plane_b#0 - (byte~) gfx_mode::$41 ? > (word~) gfx_mode::$40 - *((byte*) DTV_PLANEB_START_MI#0) ? (byte~) gfx_mode::$41 - (word~) gfx_mode::$42 ? > (dword) gfx_mode::plane_b#0 - (byte~) gfx_mode::$43 ? < (word~) gfx_mode::$42 - *((byte*) DTV_PLANEB_START_HI#0) ? (byte~) gfx_mode::$43 - (byte~) gfx_mode::$44 ? *((byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$45 ? (byte~) gfx_mode::$44 | *((byte*) form_b_step_lo#0) - *((byte*) DTV_PLANEB_STEP#0) ? (byte~) gfx_mode::$45 - (byte~) gfx_mode::$46 ? *((byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$47 ? (byte~) gfx_mode::$46 | *((byte*) form_b_mod_lo#0) - *((byte*) DTV_PLANEB_MODULO_LO#0) ? (byte~) gfx_mode::$47 - *((byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) gfx_mode::$48 ? ((word)) (byte*) VIC_SCREEN0#0 - (word/signed dword/dword~) gfx_mode::$49 ? (word~) gfx_mode::$48 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_mode::$50 ? ((byte)) (word/signed dword/dword~) gfx_mode::$49 - (byte/word/dword~) gfx_mode::$51 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) gfx_mode::$50 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) gfx_mode::$51 - (byte) get_vic_screen::idx#0 ? *((byte*) form_vic_screen#0) + (byte) keyboard_modifiers#117 ← phi( gfx_mode::@46/(byte) keyboard_modifiers#119 ) + (byte) keyboard_events_size#137 ← phi( gfx_mode::@46/(byte) keyboard_events_size#139 ) + (byte) gfx_mode::plane_b_offs#1 ← phi( gfx_mode::@46/(byte) gfx_mode::plane_b_offs#0 ) + (dword) get_plane::return#20 ← phi( gfx_mode::@46/(dword) get_plane::return#17 ) + (dword~) gfx_mode::$36 ← (dword) get_plane::return#20 + (dword~) gfx_mode::$37 ← (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#1 + (dword) gfx_mode::plane_b#0 ← (dword~) gfx_mode::$37 + (word~) gfx_mode::$38 ← < (dword) gfx_mode::plane_b#0 + (byte~) gfx_mode::$39 ← < (word~) gfx_mode::$38 + *((byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$39 + (word~) gfx_mode::$40 ← < (dword) gfx_mode::plane_b#0 + (byte~) gfx_mode::$41 ← > (word~) gfx_mode::$40 + *((byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$41 + (word~) gfx_mode::$42 ← > (dword) gfx_mode::plane_b#0 + (byte~) gfx_mode::$43 ← < (word~) gfx_mode::$42 + *((byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$43 + (byte~) gfx_mode::$44 ← *((byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$45 ← (byte~) gfx_mode::$44 | *((byte*) form_b_step_lo#0) + *((byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$45 + (byte~) gfx_mode::$46 ← *((byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$47 ← (byte~) gfx_mode::$46 | *((byte*) form_b_mod_lo#0) + *((byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$47 + *((byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) gfx_mode::$48 ← ((word)) (byte*) VIC_SCREEN0#0 + (word/signed dword/dword~) gfx_mode::$49 ← (word~) gfx_mode::$48 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_mode::$50 ← ((byte)) (word/signed dword/dword~) gfx_mode::$49 + (byte/word/dword~) gfx_mode::$51 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) gfx_mode::$50 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) gfx_mode::$51 + (byte) get_vic_screen::idx#0 ← *((byte*) form_vic_screen#0) call get_vic_screen - (byte*) get_vic_screen::return#7 ? (byte*) get_vic_screen::return#5 + (byte*) get_vic_screen::return#7 ← (byte*) get_vic_screen::return#5 to:gfx_mode::@48 gfx_mode::@48: scope:[gfx_mode] from gfx_mode::@47 - (byte) keyboard_modifiers#115 ? phi( gfx_mode::@47/(byte) keyboard_modifiers#117 ) - (byte) keyboard_events_size#135 ? phi( gfx_mode::@47/(byte) keyboard_events_size#137 ) - (byte*) get_vic_screen::return#10 ? phi( gfx_mode::@47/(byte*) get_vic_screen::return#7 ) - (byte*~) gfx_mode::$52 ? (byte*) get_vic_screen::return#10 - (word~) gfx_mode::$53 ? ((word)) (byte*~) gfx_mode::$52 - (word~) gfx_mode::$54 ? (word~) gfx_mode::$53 & (word/signed word/dword/signed dword) $3fff - (word~) gfx_mode::$55 ? (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte~) gfx_mode::$56 ? ((byte)) (word~) gfx_mode::$55 - (byte) get_vic_charset::idx#0 ? *((byte*) form_vic_gfx#0) + (byte) keyboard_modifiers#115 ← phi( gfx_mode::@47/(byte) keyboard_modifiers#117 ) + (byte) keyboard_events_size#135 ← phi( gfx_mode::@47/(byte) keyboard_events_size#137 ) + (byte*) get_vic_screen::return#10 ← phi( gfx_mode::@47/(byte*) get_vic_screen::return#7 ) + (byte*~) gfx_mode::$52 ← (byte*) get_vic_screen::return#10 + (word~) gfx_mode::$53 ← ((word)) (byte*~) gfx_mode::$52 + (word~) gfx_mode::$54 ← (word~) gfx_mode::$53 & (word/signed word/dword/signed dword) $3fff + (word~) gfx_mode::$55 ← (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte~) gfx_mode::$56 ← ((byte)) (word~) gfx_mode::$55 + (byte) get_vic_charset::idx#0 ← *((byte*) form_vic_gfx#0) call get_vic_charset - (byte*) get_vic_charset::return#4 ? (byte*) get_vic_charset::return#2 + (byte*) get_vic_charset::return#4 ← (byte*) get_vic_charset::return#2 to:gfx_mode::@49 gfx_mode::@49: scope:[gfx_mode] from gfx_mode::@48 - (byte) keyboard_modifiers#113 ? phi( gfx_mode::@48/(byte) keyboard_modifiers#115 ) - (byte) keyboard_events_size#133 ? phi( gfx_mode::@48/(byte) keyboard_events_size#135 ) - (byte*) get_vic_charset::return#6 ? phi( gfx_mode::@48/(byte*) get_vic_charset::return#4 ) - (byte*~) gfx_mode::$57 ? (byte*) get_vic_charset::return#6 - (word~) gfx_mode::$58 ? ((word)) (byte*~) gfx_mode::$57 - (word~) gfx_mode::$59 ? (word~) gfx_mode::$58 & (word/signed word/dword/signed dword) $3fff - (byte~) gfx_mode::$60 ? > (word~) gfx_mode::$59 - (byte~) gfx_mode::$61 ? (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte~) gfx_mode::$62 ? (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 - *((byte*) VIC_MEMORY#0) ? (byte~) gfx_mode::$62 - (byte) get_vic_screen::idx#1 ? *((byte*) form_vic_cols#0) + (byte) keyboard_modifiers#113 ← phi( gfx_mode::@48/(byte) keyboard_modifiers#115 ) + (byte) keyboard_events_size#133 ← phi( gfx_mode::@48/(byte) keyboard_events_size#135 ) + (byte*) get_vic_charset::return#6 ← phi( gfx_mode::@48/(byte*) get_vic_charset::return#4 ) + (byte*~) gfx_mode::$57 ← (byte*) get_vic_charset::return#6 + (word~) gfx_mode::$58 ← ((word)) (byte*~) gfx_mode::$57 + (word~) gfx_mode::$59 ← (word~) gfx_mode::$58 & (word/signed word/dword/signed dword) $3fff + (byte~) gfx_mode::$60 ← > (word~) gfx_mode::$59 + (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte~) gfx_mode::$62 ← (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 + *((byte*) VIC_MEMORY#0) ← (byte~) gfx_mode::$62 + (byte) get_vic_screen::idx#1 ← *((byte*) form_vic_cols#0) call get_vic_screen - (byte*) get_vic_screen::return#8 ? (byte*) get_vic_screen::return#5 + (byte*) get_vic_screen::return#8 ← (byte*) get_vic_screen::return#5 to:gfx_mode::@50 gfx_mode::@50: scope:[gfx_mode] from gfx_mode::@49 - (byte) keyboard_modifiers#111 ? phi( gfx_mode::@49/(byte) keyboard_modifiers#113 ) - (byte) keyboard_events_size#130 ? phi( gfx_mode::@49/(byte) keyboard_events_size#133 ) - (byte*) get_vic_screen::return#11 ? phi( gfx_mode::@49/(byte*) get_vic_screen::return#8 ) - (byte*~) gfx_mode::$63 ? (byte*) get_vic_screen::return#11 - (byte*) gfx_mode::vic_colors#0 ? (byte*~) gfx_mode::$63 - (byte*) gfx_mode::col#0 ? (byte*) COLS#0 - (byte) gfx_mode::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#111 ← phi( gfx_mode::@49/(byte) keyboard_modifiers#113 ) + (byte) keyboard_events_size#130 ← phi( gfx_mode::@49/(byte) keyboard_events_size#133 ) + (byte*) get_vic_screen::return#11 ← phi( gfx_mode::@49/(byte*) get_vic_screen::return#8 ) + (byte*~) gfx_mode::$63 ← (byte*) get_vic_screen::return#11 + (byte*) gfx_mode::vic_colors#0 ← (byte*~) gfx_mode::$63 + (byte*) gfx_mode::col#0 ← (byte*) COLS#0 + (byte) gfx_mode::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_mode::@21 gfx_mode::@20: scope:[gfx_mode] from gfx_mode::@8 - (byte) keyboard_modifiers#123 ? phi( gfx_mode::@8/(byte) keyboard_modifiers#124 ) - (byte) keyboard_events_size#143 ? phi( gfx_mode::@8/(byte) keyboard_events_size#144 ) - (byte) gfx_mode::vic_control2#3 ? phi( gfx_mode::@8/(byte) gfx_mode::vic_control2#0 ) - (byte~) gfx_mode::$81 ? (byte) gfx_mode::vic_control2#3 | (byte) VIC_MCM#0 - (byte) gfx_mode::vic_control2#1 ? (byte~) gfx_mode::$81 + (byte) keyboard_modifiers#123 ← phi( gfx_mode::@8/(byte) keyboard_modifiers#124 ) + (byte) keyboard_events_size#143 ← phi( gfx_mode::@8/(byte) keyboard_events_size#144 ) + (byte) gfx_mode::vic_control2#3 ← phi( gfx_mode::@8/(byte) gfx_mode::vic_control2#0 ) + (byte~) gfx_mode::$81 ← (byte) gfx_mode::vic_control2#3 | (byte) VIC_MCM#0 + (byte) gfx_mode::vic_control2#1 ← (byte~) gfx_mode::$81 to:gfx_mode::@9 gfx_mode::@21: scope:[gfx_mode] from gfx_mode::@23 gfx_mode::@50 - (byte) keyboard_modifiers#109 ? phi( gfx_mode::@23/(byte) keyboard_modifiers#102 gfx_mode::@50/(byte) keyboard_modifiers#111 ) - (byte) keyboard_events_size#126 ? phi( gfx_mode::@23/(byte) keyboard_events_size#114 gfx_mode::@50/(byte) keyboard_events_size#130 ) - (byte) gfx_mode::cy#4 ? phi( gfx_mode::@23/(byte) gfx_mode::cy#1 gfx_mode::@50/(byte) gfx_mode::cy#0 ) - (byte*) gfx_mode::col#3 ? phi( gfx_mode::@23/(byte*) gfx_mode::col#4 gfx_mode::@50/(byte*) gfx_mode::col#0 ) - (byte*) gfx_mode::vic_colors#3 ? phi( gfx_mode::@23/(byte*) gfx_mode::vic_colors#4 gfx_mode::@50/(byte*) gfx_mode::vic_colors#0 ) - (byte) gfx_mode::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#109 ← phi( gfx_mode::@23/(byte) keyboard_modifiers#102 gfx_mode::@50/(byte) keyboard_modifiers#111 ) + (byte) keyboard_events_size#126 ← phi( gfx_mode::@23/(byte) keyboard_events_size#114 gfx_mode::@50/(byte) keyboard_events_size#130 ) + (byte) gfx_mode::cy#4 ← phi( gfx_mode::@23/(byte) gfx_mode::cy#1 gfx_mode::@50/(byte) gfx_mode::cy#0 ) + (byte*) gfx_mode::col#3 ← phi( gfx_mode::@23/(byte*) gfx_mode::col#4 gfx_mode::@50/(byte*) gfx_mode::col#0 ) + (byte*) gfx_mode::vic_colors#3 ← phi( gfx_mode::@23/(byte*) gfx_mode::vic_colors#4 gfx_mode::@50/(byte*) gfx_mode::vic_colors#0 ) + (byte) gfx_mode::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_mode::@22 gfx_mode::@22: scope:[gfx_mode] from gfx_mode::@21 gfx_mode::@22 - (byte) keyboard_modifiers#107 ? phi( gfx_mode::@21/(byte) keyboard_modifiers#109 gfx_mode::@22/(byte) keyboard_modifiers#107 ) - (byte) keyboard_events_size#123 ? phi( gfx_mode::@21/(byte) keyboard_events_size#126 gfx_mode::@22/(byte) keyboard_events_size#123 ) - (byte) gfx_mode::cy#3 ? phi( gfx_mode::@21/(byte) gfx_mode::cy#4 gfx_mode::@22/(byte) gfx_mode::cy#3 ) - (byte) gfx_mode::cx#2 ? phi( gfx_mode::@21/(byte) gfx_mode::cx#0 gfx_mode::@22/(byte) gfx_mode::cx#1 ) - (byte*) gfx_mode::col#2 ? phi( gfx_mode::@21/(byte*) gfx_mode::col#3 gfx_mode::@22/(byte*) gfx_mode::col#1 ) - (byte*) gfx_mode::vic_colors#2 ? phi( gfx_mode::@21/(byte*) gfx_mode::vic_colors#3 gfx_mode::@22/(byte*) gfx_mode::vic_colors#1 ) - *((byte*) gfx_mode::col#2) ? *((byte*) gfx_mode::vic_colors#2) - (byte*) gfx_mode::col#1 ? ++ (byte*) gfx_mode::col#2 - (byte*) gfx_mode::vic_colors#1 ? ++ (byte*) gfx_mode::vic_colors#2 - (byte) gfx_mode::cx#1 ? (byte) gfx_mode::cx#2 + rangenext(0,$27) - (bool~) gfx_mode::$82 ? (byte) gfx_mode::cx#1 != rangelast(0,$27) + (byte) keyboard_modifiers#107 ← phi( gfx_mode::@21/(byte) keyboard_modifiers#109 gfx_mode::@22/(byte) keyboard_modifiers#107 ) + (byte) keyboard_events_size#123 ← phi( gfx_mode::@21/(byte) keyboard_events_size#126 gfx_mode::@22/(byte) keyboard_events_size#123 ) + (byte) gfx_mode::cy#3 ← phi( gfx_mode::@21/(byte) gfx_mode::cy#4 gfx_mode::@22/(byte) gfx_mode::cy#3 ) + (byte) gfx_mode::cx#2 ← phi( gfx_mode::@21/(byte) gfx_mode::cx#0 gfx_mode::@22/(byte) gfx_mode::cx#1 ) + (byte*) gfx_mode::col#2 ← phi( gfx_mode::@21/(byte*) gfx_mode::col#3 gfx_mode::@22/(byte*) gfx_mode::col#1 ) + (byte*) gfx_mode::vic_colors#2 ← phi( gfx_mode::@21/(byte*) gfx_mode::vic_colors#3 gfx_mode::@22/(byte*) gfx_mode::vic_colors#1 ) + *((byte*) gfx_mode::col#2) ← *((byte*) gfx_mode::vic_colors#2) + (byte*) gfx_mode::col#1 ← ++ (byte*) gfx_mode::col#2 + (byte*) gfx_mode::vic_colors#1 ← ++ (byte*) gfx_mode::vic_colors#2 + (byte) gfx_mode::cx#1 ← (byte) gfx_mode::cx#2 + rangenext(0,$27) + (bool~) gfx_mode::$82 ← (byte) gfx_mode::cx#1 != rangelast(0,$27) if((bool~) gfx_mode::$82) goto gfx_mode::@22 to:gfx_mode::@23 gfx_mode::@23: scope:[gfx_mode] from gfx_mode::@22 - (byte) keyboard_modifiers#102 ? phi( gfx_mode::@22/(byte) keyboard_modifiers#107 ) - (byte) keyboard_events_size#114 ? phi( gfx_mode::@22/(byte) keyboard_events_size#123 ) - (byte*) gfx_mode::col#4 ? phi( gfx_mode::@22/(byte*) gfx_mode::col#1 ) - (byte*) gfx_mode::vic_colors#4 ? phi( gfx_mode::@22/(byte*) gfx_mode::vic_colors#1 ) - (byte) gfx_mode::cy#2 ? phi( gfx_mode::@22/(byte) gfx_mode::cy#3 ) - (byte) gfx_mode::cy#1 ? (byte) gfx_mode::cy#2 + rangenext(0,$18) - (bool~) gfx_mode::$83 ? (byte) gfx_mode::cy#1 != rangelast(0,$18) + (byte) keyboard_modifiers#102 ← phi( gfx_mode::@22/(byte) keyboard_modifiers#107 ) + (byte) keyboard_events_size#114 ← phi( gfx_mode::@22/(byte) keyboard_events_size#123 ) + (byte*) gfx_mode::col#4 ← phi( gfx_mode::@22/(byte*) gfx_mode::col#1 ) + (byte*) gfx_mode::vic_colors#4 ← phi( gfx_mode::@22/(byte*) gfx_mode::vic_colors#1 ) + (byte) gfx_mode::cy#2 ← phi( gfx_mode::@22/(byte) gfx_mode::cy#3 ) + (byte) gfx_mode::cy#1 ← (byte) gfx_mode::cy#2 + rangenext(0,$18) + (bool~) gfx_mode::$83 ← (byte) gfx_mode::cy#1 != rangelast(0,$18) if((bool~) gfx_mode::$83) goto gfx_mode::@21 to:gfx_mode::@24 gfx_mode::@24: scope:[gfx_mode] from gfx_mode::@23 - (byte) keyboard_modifiers#96 ? phi( gfx_mode::@23/(byte) keyboard_modifiers#102 ) - (byte) keyboard_events_size#103 ? phi( gfx_mode::@23/(byte) keyboard_events_size#114 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) gfx_mode::$64 ? *((byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$65 ? (byte~) gfx_mode::$64 | *((byte*) form_vic_bg0_lo#0) - *((byte*) BGCOL1#0) ? (byte~) gfx_mode::$65 - (byte~) gfx_mode::$66 ? *((byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$67 ? (byte~) gfx_mode::$66 | *((byte*) form_vic_bg1_lo#0) - *((byte*) BGCOL2#0) ? (byte~) gfx_mode::$67 - (byte~) gfx_mode::$68 ? *((byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$69 ? (byte~) gfx_mode::$68 | *((byte*) form_vic_bg2_lo#0) - *((byte*) BGCOL3#0) ? (byte~) gfx_mode::$69 - (byte~) gfx_mode::$70 ? *((byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_mode::$71 ? (byte~) gfx_mode::$70 | *((byte*) form_vic_bg3_lo#0) - *((byte*) BGCOL4#0) ? (byte~) gfx_mode::$71 - (bool~) gfx_mode::$72 ? *((byte*) form_dtv_palet#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#96 ← phi( gfx_mode::@23/(byte) keyboard_modifiers#102 ) + (byte) keyboard_events_size#103 ← phi( gfx_mode::@23/(byte) keyboard_events_size#114 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) gfx_mode::$64 ← *((byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$65 ← (byte~) gfx_mode::$64 | *((byte*) form_vic_bg0_lo#0) + *((byte*) BGCOL1#0) ← (byte~) gfx_mode::$65 + (byte~) gfx_mode::$66 ← *((byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$67 ← (byte~) gfx_mode::$66 | *((byte*) form_vic_bg1_lo#0) + *((byte*) BGCOL2#0) ← (byte~) gfx_mode::$67 + (byte~) gfx_mode::$68 ← *((byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$69 ← (byte~) gfx_mode::$68 | *((byte*) form_vic_bg2_lo#0) + *((byte*) BGCOL3#0) ← (byte~) gfx_mode::$69 + (byte~) gfx_mode::$70 ← *((byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_mode::$71 ← (byte~) gfx_mode::$70 | *((byte*) form_vic_bg3_lo#0) + *((byte*) BGCOL4#0) ← (byte~) gfx_mode::$71 + (bool~) gfx_mode::$72 ← *((byte*) form_dtv_palet#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) gfx_mode::$72) goto gfx_mode::@10 to:gfx_mode::@25 gfx_mode::@10: scope:[gfx_mode] from gfx_mode::@24 - (byte) keyboard_modifiers#80 ? phi( gfx_mode::@24/(byte) keyboard_modifiers#96 ) - (byte) keyboard_events_size#83 ? phi( gfx_mode::@24/(byte) keyboard_events_size#103 ) - (byte) gfx_mode::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#80 ← phi( gfx_mode::@24/(byte) keyboard_modifiers#96 ) + (byte) keyboard_events_size#83 ← phi( gfx_mode::@24/(byte) keyboard_events_size#103 ) + (byte) gfx_mode::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_mode::@29 gfx_mode::@25: scope:[gfx_mode] from gfx_mode::@24 - (byte) keyboard_modifiers#79 ? phi( gfx_mode::@24/(byte) keyboard_modifiers#96 ) - (byte) keyboard_events_size#82 ? phi( gfx_mode::@24/(byte) keyboard_events_size#103 ) - (byte) gfx_mode::j#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#79 ← phi( gfx_mode::@24/(byte) keyboard_modifiers#96 ) + (byte) keyboard_events_size#82 ← phi( gfx_mode::@24/(byte) keyboard_events_size#103 ) + (byte) gfx_mode::j#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_mode::@26 gfx_mode::@26: scope:[gfx_mode] from gfx_mode::@25 gfx_mode::@26 - (byte) keyboard_modifiers#58 ? phi( gfx_mode::@25/(byte) keyboard_modifiers#79 gfx_mode::@26/(byte) keyboard_modifiers#58 ) - (byte) keyboard_events_size#58 ? phi( gfx_mode::@25/(byte) keyboard_events_size#82 gfx_mode::@26/(byte) keyboard_events_size#58 ) - (byte) gfx_mode::j#2 ? phi( gfx_mode::@25/(byte) gfx_mode::j#0 gfx_mode::@26/(byte) gfx_mode::j#1 ) - *((byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ? (byte) gfx_mode::j#2 - (byte) gfx_mode::j#1 ? (byte) gfx_mode::j#2 + rangenext(0,$f) - (bool~) gfx_mode::$84 ? (byte) gfx_mode::j#1 != rangelast(0,$f) + (byte) keyboard_modifiers#58 ← phi( gfx_mode::@25/(byte) keyboard_modifiers#79 gfx_mode::@26/(byte) keyboard_modifiers#58 ) + (byte) keyboard_events_size#58 ← phi( gfx_mode::@25/(byte) keyboard_events_size#82 gfx_mode::@26/(byte) keyboard_events_size#58 ) + (byte) gfx_mode::j#2 ← phi( gfx_mode::@25/(byte) gfx_mode::j#0 gfx_mode::@26/(byte) gfx_mode::j#1 ) + *((byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ← (byte) gfx_mode::j#2 + (byte) gfx_mode::j#1 ← (byte) gfx_mode::j#2 + rangenext(0,$f) + (bool~) gfx_mode::$84 ← (byte) gfx_mode::j#1 != rangelast(0,$f) if((bool~) gfx_mode::$84) goto gfx_mode::@26 to:gfx_mode::@31 gfx_mode::@29: scope:[gfx_mode] from gfx_mode::@10 gfx_mode::@29 - (byte) keyboard_modifiers#59 ? phi( gfx_mode::@10/(byte) keyboard_modifiers#80 gfx_mode::@29/(byte) keyboard_modifiers#59 ) - (byte) keyboard_events_size#59 ? phi( gfx_mode::@10/(byte) keyboard_events_size#83 gfx_mode::@29/(byte) keyboard_events_size#59 ) - (byte) gfx_mode::i#2 ? phi( gfx_mode::@10/(byte) gfx_mode::i#0 gfx_mode::@29/(byte) gfx_mode::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ? *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) - (byte) gfx_mode::i#1 ? (byte) gfx_mode::i#2 + rangenext(0,$f) - (bool~) gfx_mode::$85 ? (byte) gfx_mode::i#1 != rangelast(0,$f) + (byte) keyboard_modifiers#59 ← phi( gfx_mode::@10/(byte) keyboard_modifiers#80 gfx_mode::@29/(byte) keyboard_modifiers#59 ) + (byte) keyboard_events_size#59 ← phi( gfx_mode::@10/(byte) keyboard_events_size#83 gfx_mode::@29/(byte) keyboard_events_size#59 ) + (byte) gfx_mode::i#2 ← phi( gfx_mode::@10/(byte) gfx_mode::i#0 gfx_mode::@29/(byte) gfx_mode::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) + (byte) gfx_mode::i#1 ← (byte) gfx_mode::i#2 + rangenext(0,$f) + (bool~) gfx_mode::$85 ← (byte) gfx_mode::i#1 != rangelast(0,$f) if((bool~) gfx_mode::$85) goto gfx_mode::@29 to:gfx_mode::@31 gfx_mode::@31: scope:[gfx_mode] from gfx_mode::@26 gfx_mode::@29 gfx_mode::@42 - (byte) keyboard_modifiers#42 ? phi( gfx_mode::@26/(byte) keyboard_modifiers#58 gfx_mode::@29/(byte) keyboard_modifiers#59 gfx_mode::@42/(byte) keyboard_modifiers#60 ) - (byte) keyboard_events_size#45 ? phi( gfx_mode::@26/(byte) keyboard_events_size#58 gfx_mode::@29/(byte) keyboard_events_size#59 gfx_mode::@42/(byte) keyboard_events_size#60 ) + (byte) keyboard_modifiers#42 ← phi( gfx_mode::@26/(byte) keyboard_modifiers#58 gfx_mode::@29/(byte) keyboard_modifiers#59 gfx_mode::@42/(byte) keyboard_modifiers#60 ) + (byte) keyboard_events_size#45 ← phi( gfx_mode::@26/(byte) keyboard_events_size#58 gfx_mode::@29/(byte) keyboard_events_size#59 gfx_mode::@42/(byte) keyboard_events_size#60 ) if(true) goto gfx_mode::@32 to:gfx_mode::@return gfx_mode::@32: scope:[gfx_mode] from gfx_mode::@31 - (byte) keyboard_modifiers#81 ? phi( gfx_mode::@31/(byte) keyboard_modifiers#42 ) - (byte) keyboard_events_size#84 ? phi( gfx_mode::@31/(byte) keyboard_events_size#45 ) + (byte) keyboard_modifiers#81 ← phi( gfx_mode::@31/(byte) keyboard_modifiers#42 ) + (byte) keyboard_events_size#84 ← phi( gfx_mode::@31/(byte) keyboard_events_size#45 ) to:gfx_mode::@34 gfx_mode::@34: scope:[gfx_mode] from gfx_mode::@32 gfx_mode::@35 - (byte) keyboard_modifiers#61 ? phi( gfx_mode::@32/(byte) keyboard_modifiers#81 gfx_mode::@35/(byte) keyboard_modifiers#82 ) - (byte) keyboard_events_size#61 ? phi( gfx_mode::@32/(byte) keyboard_events_size#84 gfx_mode::@35/(byte) keyboard_events_size#85 ) - (bool~) gfx_mode::$86 ? *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff + (byte) keyboard_modifiers#61 ← phi( gfx_mode::@32/(byte) keyboard_modifiers#81 gfx_mode::@35/(byte) keyboard_modifiers#82 ) + (byte) keyboard_events_size#61 ← phi( gfx_mode::@32/(byte) keyboard_events_size#84 gfx_mode::@35/(byte) keyboard_events_size#85 ) + (bool~) gfx_mode::$86 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff if((bool~) gfx_mode::$86) goto gfx_mode::@35 to:gfx_mode::@36 gfx_mode::@35: scope:[gfx_mode] from gfx_mode::@34 - (byte) keyboard_modifiers#82 ? phi( gfx_mode::@34/(byte) keyboard_modifiers#61 ) - (byte) keyboard_events_size#85 ? phi( gfx_mode::@34/(byte) keyboard_events_size#61 ) + (byte) keyboard_modifiers#82 ← phi( gfx_mode::@34/(byte) keyboard_modifiers#61 ) + (byte) keyboard_events_size#85 ← phi( gfx_mode::@34/(byte) keyboard_events_size#61 ) to:gfx_mode::@34 gfx_mode::@36: scope:[gfx_mode] from gfx_mode::@34 - (byte) keyboard_modifiers#41 ? phi( gfx_mode::@34/(byte) keyboard_modifiers#61 ) - (byte) keyboard_events_size#44 ? phi( gfx_mode::@34/(byte) keyboard_events_size#61 ) + (byte) keyboard_modifiers#41 ← phi( gfx_mode::@34/(byte) keyboard_modifiers#61 ) + (byte) keyboard_events_size#44 ← phi( gfx_mode::@34/(byte) keyboard_events_size#61 ) call keyboard_event_scan to:gfx_mode::@51 gfx_mode::@51: scope:[gfx_mode] from gfx_mode::@36 - (byte) keyboard_modifiers#25 ? phi( gfx_mode::@36/(byte) keyboard_modifiers#6 ) - (byte) keyboard_events_size#28 ? phi( gfx_mode::@36/(byte) keyboard_events_size#3 ) - (byte) keyboard_events_size#9 ? (byte) keyboard_events_size#28 - (byte) keyboard_modifiers#10 ? (byte) keyboard_modifiers#25 + (byte) keyboard_modifiers#25 ← phi( gfx_mode::@36/(byte) keyboard_modifiers#6 ) + (byte) keyboard_events_size#28 ← phi( gfx_mode::@36/(byte) keyboard_events_size#3 ) + (byte) keyboard_events_size#9 ← (byte) keyboard_events_size#28 + (byte) keyboard_modifiers#10 ← (byte) keyboard_modifiers#25 call keyboard_event_get - (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 to:gfx_mode::@52 gfx_mode::@52: scope:[gfx_mode] from gfx_mode::@51 - (byte) keyboard_modifiers#43 ? phi( gfx_mode::@51/(byte) keyboard_modifiers#10 ) - (byte) keyboard_events_size#29 ? phi( gfx_mode::@51/(byte) keyboard_events_size#5 ) - (byte) keyboard_event_get::return#6 ? phi( gfx_mode::@51/(byte) keyboard_event_get::return#3 ) - (byte~) gfx_mode::$88 ? (byte) keyboard_event_get::return#6 - (byte) keyboard_events_size#10 ? (byte) keyboard_events_size#29 - (byte) gfx_mode::keyboard_event#0 ? (byte~) gfx_mode::$88 - (bool~) gfx_mode::$89 ? (byte) gfx_mode::keyboard_event#0 == (byte) KEY_SPACE#0 - (bool~) gfx_mode::$90 ? ! (bool~) gfx_mode::$89 + (byte) keyboard_modifiers#43 ← phi( gfx_mode::@51/(byte) keyboard_modifiers#10 ) + (byte) keyboard_events_size#29 ← phi( gfx_mode::@51/(byte) keyboard_events_size#5 ) + (byte) keyboard_event_get::return#6 ← phi( gfx_mode::@51/(byte) keyboard_event_get::return#3 ) + (byte~) gfx_mode::$88 ← (byte) keyboard_event_get::return#6 + (byte) keyboard_events_size#10 ← (byte) keyboard_events_size#29 + (byte) gfx_mode::keyboard_event#0 ← (byte~) gfx_mode::$88 + (bool~) gfx_mode::$89 ← (byte) gfx_mode::keyboard_event#0 == (byte) KEY_SPACE#0 + (bool~) gfx_mode::$90 ← ! (bool~) gfx_mode::$89 if((bool~) gfx_mode::$90) goto gfx_mode::@42 to:gfx_mode::@return gfx_mode::@42: scope:[gfx_mode] from gfx_mode::@52 - (byte) keyboard_modifiers#60 ? phi( gfx_mode::@52/(byte) keyboard_modifiers#43 ) - (byte) keyboard_events_size#60 ? phi( gfx_mode::@52/(byte) keyboard_events_size#10 ) + (byte) keyboard_modifiers#60 ← phi( gfx_mode::@52/(byte) keyboard_modifiers#43 ) + (byte) keyboard_events_size#60 ← phi( gfx_mode::@52/(byte) keyboard_events_size#10 ) to:gfx_mode::@31 gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@31 gfx_mode::@52 - (byte) keyboard_modifiers#26 ? phi( gfx_mode::@31/(byte) keyboard_modifiers#42 gfx_mode::@52/(byte) keyboard_modifiers#43 ) - (byte) keyboard_events_size#30 ? phi( gfx_mode::@31/(byte) keyboard_events_size#45 gfx_mode::@52/(byte) keyboard_events_size#10 ) - (byte) keyboard_events_size#11 ? (byte) keyboard_events_size#30 - (byte) keyboard_modifiers#11 ? (byte) keyboard_modifiers#26 + (byte) keyboard_modifiers#26 ← phi( gfx_mode::@31/(byte) keyboard_modifiers#42 gfx_mode::@52/(byte) keyboard_modifiers#43 ) + (byte) keyboard_events_size#30 ← phi( gfx_mode::@31/(byte) keyboard_events_size#45 gfx_mode::@52/(byte) keyboard_events_size#10 ) + (byte) keyboard_events_size#11 ← (byte) keyboard_events_size#30 + (byte) keyboard_modifiers#11 ← (byte) keyboard_modifiers#26 return to:@return gfx_init: scope:[gfx_init] from main::@7 @@ -2392,305 +2392,305 @@ gfx_init::@return: scope:[gfx_init] from gfx_init::@15 return to:@return gfx_init_charset: scope:[gfx_init_charset] from gfx_init::@5 - *((byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $32 - (byte*) gfx_init_charset::chargen#0 ? (byte*) CHARGEN#0 - (byte*) gfx_init_charset::charset#0 ? (byte*) VIC_CHARSET_ROM#0 - (byte) gfx_init_charset::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $32 + (byte*) gfx_init_charset::chargen#0 ← (byte*) CHARGEN#0 + (byte*) gfx_init_charset::charset#0 ← (byte*) VIC_CHARSET_ROM#0 + (byte) gfx_init_charset::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_charset::@1 gfx_init_charset::@1: scope:[gfx_init_charset] from gfx_init_charset gfx_init_charset::@3 - (byte) gfx_init_charset::c#4 ? phi( gfx_init_charset/(byte) gfx_init_charset::c#0 gfx_init_charset::@3/(byte) gfx_init_charset::c#1 ) - (byte*) gfx_init_charset::charset#3 ? phi( gfx_init_charset/(byte*) gfx_init_charset::charset#0 gfx_init_charset::@3/(byte*) gfx_init_charset::charset#4 ) - (byte*) gfx_init_charset::chargen#3 ? phi( gfx_init_charset/(byte*) gfx_init_charset::chargen#0 gfx_init_charset::@3/(byte*) gfx_init_charset::chargen#4 ) - (byte) gfx_init_charset::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_charset::c#4 ← phi( gfx_init_charset/(byte) gfx_init_charset::c#0 gfx_init_charset::@3/(byte) gfx_init_charset::c#1 ) + (byte*) gfx_init_charset::charset#3 ← phi( gfx_init_charset/(byte*) gfx_init_charset::charset#0 gfx_init_charset::@3/(byte*) gfx_init_charset::charset#4 ) + (byte*) gfx_init_charset::chargen#3 ← phi( gfx_init_charset/(byte*) gfx_init_charset::chargen#0 gfx_init_charset::@3/(byte*) gfx_init_charset::chargen#4 ) + (byte) gfx_init_charset::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_charset::@2 gfx_init_charset::@2: scope:[gfx_init_charset] from gfx_init_charset::@1 gfx_init_charset::@2 - (byte) gfx_init_charset::c#3 ? phi( gfx_init_charset::@1/(byte) gfx_init_charset::c#4 gfx_init_charset::@2/(byte) gfx_init_charset::c#3 ) - (byte) gfx_init_charset::l#2 ? phi( gfx_init_charset::@1/(byte) gfx_init_charset::l#0 gfx_init_charset::@2/(byte) gfx_init_charset::l#1 ) - (byte*) gfx_init_charset::charset#2 ? phi( gfx_init_charset::@1/(byte*) gfx_init_charset::charset#3 gfx_init_charset::@2/(byte*) gfx_init_charset::charset#1 ) - (byte*) gfx_init_charset::chargen#2 ? phi( gfx_init_charset::@1/(byte*) gfx_init_charset::chargen#3 gfx_init_charset::@2/(byte*) gfx_init_charset::chargen#1 ) - *((byte*) gfx_init_charset::charset#2) ? *((byte*) gfx_init_charset::chargen#2) - (byte*) gfx_init_charset::charset#1 ? ++ (byte*) gfx_init_charset::charset#2 - (byte*) gfx_init_charset::chargen#1 ? ++ (byte*) gfx_init_charset::chargen#2 - (byte) gfx_init_charset::l#1 ? (byte) gfx_init_charset::l#2 + rangenext(0,7) - (bool~) gfx_init_charset::$0 ? (byte) gfx_init_charset::l#1 != rangelast(0,7) + (byte) gfx_init_charset::c#3 ← phi( gfx_init_charset::@1/(byte) gfx_init_charset::c#4 gfx_init_charset::@2/(byte) gfx_init_charset::c#3 ) + (byte) gfx_init_charset::l#2 ← phi( gfx_init_charset::@1/(byte) gfx_init_charset::l#0 gfx_init_charset::@2/(byte) gfx_init_charset::l#1 ) + (byte*) gfx_init_charset::charset#2 ← phi( gfx_init_charset::@1/(byte*) gfx_init_charset::charset#3 gfx_init_charset::@2/(byte*) gfx_init_charset::charset#1 ) + (byte*) gfx_init_charset::chargen#2 ← phi( gfx_init_charset::@1/(byte*) gfx_init_charset::chargen#3 gfx_init_charset::@2/(byte*) gfx_init_charset::chargen#1 ) + *((byte*) gfx_init_charset::charset#2) ← *((byte*) gfx_init_charset::chargen#2) + (byte*) gfx_init_charset::charset#1 ← ++ (byte*) gfx_init_charset::charset#2 + (byte*) gfx_init_charset::chargen#1 ← ++ (byte*) gfx_init_charset::chargen#2 + (byte) gfx_init_charset::l#1 ← (byte) gfx_init_charset::l#2 + rangenext(0,7) + (bool~) gfx_init_charset::$0 ← (byte) gfx_init_charset::l#1 != rangelast(0,7) if((bool~) gfx_init_charset::$0) goto gfx_init_charset::@2 to:gfx_init_charset::@3 gfx_init_charset::@3: scope:[gfx_init_charset] from gfx_init_charset::@2 - (byte*) gfx_init_charset::charset#4 ? phi( gfx_init_charset::@2/(byte*) gfx_init_charset::charset#1 ) - (byte*) gfx_init_charset::chargen#4 ? phi( gfx_init_charset::@2/(byte*) gfx_init_charset::chargen#1 ) - (byte) gfx_init_charset::c#2 ? phi( gfx_init_charset::@2/(byte) gfx_init_charset::c#3 ) - (byte) gfx_init_charset::c#1 ? (byte) gfx_init_charset::c#2 + rangenext(0,$ff) - (bool~) gfx_init_charset::$1 ? (byte) gfx_init_charset::c#1 != rangelast(0,$ff) + (byte*) gfx_init_charset::charset#4 ← phi( gfx_init_charset::@2/(byte*) gfx_init_charset::charset#1 ) + (byte*) gfx_init_charset::chargen#4 ← phi( gfx_init_charset::@2/(byte*) gfx_init_charset::chargen#1 ) + (byte) gfx_init_charset::c#2 ← phi( gfx_init_charset::@2/(byte) gfx_init_charset::c#3 ) + (byte) gfx_init_charset::c#1 ← (byte) gfx_init_charset::c#2 + rangenext(0,$ff) + (bool~) gfx_init_charset::$1 ← (byte) gfx_init_charset::c#1 != rangelast(0,$ff) if((bool~) gfx_init_charset::$1) goto gfx_init_charset::@1 to:gfx_init_charset::@4 gfx_init_charset::@4: scope:[gfx_init_charset] from gfx_init_charset::@3 - *((byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $37 + *((byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $37 to:gfx_init_charset::@return gfx_init_charset::@return: scope:[gfx_init_charset] from gfx_init_charset::@4 return to:@return gfx_init_screen0: scope:[gfx_init_screen0] from gfx_init - (byte*) gfx_init_screen0::ch#0 ? (byte*) VIC_SCREEN0#0 - (byte) gfx_init_screen0::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen0::ch#0 ← (byte*) VIC_SCREEN0#0 + (byte) gfx_init_screen0::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen0::@1 gfx_init_screen0::@1: scope:[gfx_init_screen0] from gfx_init_screen0 gfx_init_screen0::@3 - (byte*) gfx_init_screen0::ch#3 ? phi( gfx_init_screen0/(byte*) gfx_init_screen0::ch#0 gfx_init_screen0::@3/(byte*) gfx_init_screen0::ch#4 ) - (byte) gfx_init_screen0::cy#4 ? phi( gfx_init_screen0/(byte) gfx_init_screen0::cy#0 gfx_init_screen0::@3/(byte) gfx_init_screen0::cy#1 ) - (byte) gfx_init_screen0::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen0::ch#3 ← phi( gfx_init_screen0/(byte*) gfx_init_screen0::ch#0 gfx_init_screen0::@3/(byte*) gfx_init_screen0::ch#4 ) + (byte) gfx_init_screen0::cy#4 ← phi( gfx_init_screen0/(byte) gfx_init_screen0::cy#0 gfx_init_screen0::@3/(byte) gfx_init_screen0::cy#1 ) + (byte) gfx_init_screen0::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen0::@2 gfx_init_screen0::@2: scope:[gfx_init_screen0] from gfx_init_screen0::@1 gfx_init_screen0::@2 - (byte*) gfx_init_screen0::ch#2 ? phi( gfx_init_screen0::@1/(byte*) gfx_init_screen0::ch#3 gfx_init_screen0::@2/(byte*) gfx_init_screen0::ch#1 ) - (byte) gfx_init_screen0::cx#2 ? phi( gfx_init_screen0::@1/(byte) gfx_init_screen0::cx#0 gfx_init_screen0::@2/(byte) gfx_init_screen0::cx#1 ) - (byte) gfx_init_screen0::cy#2 ? phi( gfx_init_screen0::@1/(byte) gfx_init_screen0::cy#4 gfx_init_screen0::@2/(byte) gfx_init_screen0::cy#2 ) - (byte~) gfx_init_screen0::$0 ? (byte) gfx_init_screen0::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) gfx_init_screen0::$1 ? (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_init_screen0::$2 ? (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) gfx_init_screen0::$3 ? (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 - *((byte*) gfx_init_screen0::ch#2) ? (byte~) gfx_init_screen0::$3 - (byte*) gfx_init_screen0::ch#1 ? ++ (byte*) gfx_init_screen0::ch#2 - (byte) gfx_init_screen0::cx#1 ? (byte) gfx_init_screen0::cx#2 + rangenext(0,$27) - (bool~) gfx_init_screen0::$4 ? (byte) gfx_init_screen0::cx#1 != rangelast(0,$27) + (byte*) gfx_init_screen0::ch#2 ← phi( gfx_init_screen0::@1/(byte*) gfx_init_screen0::ch#3 gfx_init_screen0::@2/(byte*) gfx_init_screen0::ch#1 ) + (byte) gfx_init_screen0::cx#2 ← phi( gfx_init_screen0::@1/(byte) gfx_init_screen0::cx#0 gfx_init_screen0::@2/(byte) gfx_init_screen0::cx#1 ) + (byte) gfx_init_screen0::cy#2 ← phi( gfx_init_screen0::@1/(byte) gfx_init_screen0::cy#4 gfx_init_screen0::@2/(byte) gfx_init_screen0::cy#2 ) + (byte~) gfx_init_screen0::$0 ← (byte) gfx_init_screen0::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) gfx_init_screen0::$1 ← (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_init_screen0::$2 ← (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) gfx_init_screen0::$3 ← (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 + *((byte*) gfx_init_screen0::ch#2) ← (byte~) gfx_init_screen0::$3 + (byte*) gfx_init_screen0::ch#1 ← ++ (byte*) gfx_init_screen0::ch#2 + (byte) gfx_init_screen0::cx#1 ← (byte) gfx_init_screen0::cx#2 + rangenext(0,$27) + (bool~) gfx_init_screen0::$4 ← (byte) gfx_init_screen0::cx#1 != rangelast(0,$27) if((bool~) gfx_init_screen0::$4) goto gfx_init_screen0::@2 to:gfx_init_screen0::@3 gfx_init_screen0::@3: scope:[gfx_init_screen0] from gfx_init_screen0::@2 - (byte*) gfx_init_screen0::ch#4 ? phi( gfx_init_screen0::@2/(byte*) gfx_init_screen0::ch#1 ) - (byte) gfx_init_screen0::cy#3 ? phi( gfx_init_screen0::@2/(byte) gfx_init_screen0::cy#2 ) - (byte) gfx_init_screen0::cy#1 ? (byte) gfx_init_screen0::cy#3 + rangenext(0,$18) - (bool~) gfx_init_screen0::$5 ? (byte) gfx_init_screen0::cy#1 != rangelast(0,$18) + (byte*) gfx_init_screen0::ch#4 ← phi( gfx_init_screen0::@2/(byte*) gfx_init_screen0::ch#1 ) + (byte) gfx_init_screen0::cy#3 ← phi( gfx_init_screen0::@2/(byte) gfx_init_screen0::cy#2 ) + (byte) gfx_init_screen0::cy#1 ← (byte) gfx_init_screen0::cy#3 + rangenext(0,$18) + (bool~) gfx_init_screen0::$5 ← (byte) gfx_init_screen0::cy#1 != rangelast(0,$18) if((bool~) gfx_init_screen0::$5) goto gfx_init_screen0::@1 to:gfx_init_screen0::@return gfx_init_screen0::@return: scope:[gfx_init_screen0] from gfx_init_screen0::@3 return to:@return gfx_init_screen1: scope:[gfx_init_screen1] from gfx_init::@1 - (byte*) gfx_init_screen1::ch#0 ? (byte*) VIC_SCREEN1#0 - (byte) gfx_init_screen1::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen1::ch#0 ← (byte*) VIC_SCREEN1#0 + (byte) gfx_init_screen1::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen1::@1 gfx_init_screen1::@1: scope:[gfx_init_screen1] from gfx_init_screen1 gfx_init_screen1::@3 - (byte*) gfx_init_screen1::ch#3 ? phi( gfx_init_screen1/(byte*) gfx_init_screen1::ch#0 gfx_init_screen1::@3/(byte*) gfx_init_screen1::ch#4 ) - (byte) gfx_init_screen1::cy#4 ? phi( gfx_init_screen1/(byte) gfx_init_screen1::cy#0 gfx_init_screen1::@3/(byte) gfx_init_screen1::cy#1 ) - (byte) gfx_init_screen1::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen1::ch#3 ← phi( gfx_init_screen1/(byte*) gfx_init_screen1::ch#0 gfx_init_screen1::@3/(byte*) gfx_init_screen1::ch#4 ) + (byte) gfx_init_screen1::cy#4 ← phi( gfx_init_screen1/(byte) gfx_init_screen1::cy#0 gfx_init_screen1::@3/(byte) gfx_init_screen1::cy#1 ) + (byte) gfx_init_screen1::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen1::@2 gfx_init_screen1::@2: scope:[gfx_init_screen1] from gfx_init_screen1::@1 gfx_init_screen1::@2 - (byte*) gfx_init_screen1::ch#2 ? phi( gfx_init_screen1::@1/(byte*) gfx_init_screen1::ch#3 gfx_init_screen1::@2/(byte*) gfx_init_screen1::ch#1 ) - (byte) gfx_init_screen1::cy#2 ? phi( gfx_init_screen1::@1/(byte) gfx_init_screen1::cy#4 gfx_init_screen1::@2/(byte) gfx_init_screen1::cy#2 ) - (byte) gfx_init_screen1::cx#2 ? phi( gfx_init_screen1::@1/(byte) gfx_init_screen1::cx#0 gfx_init_screen1::@2/(byte) gfx_init_screen1::cx#1 ) - (byte~) gfx_init_screen1::$0 ? (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#2 - (byte~) gfx_init_screen1::$1 ? (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f - *((byte*) gfx_init_screen1::ch#2) ? (byte~) gfx_init_screen1::$1 - (byte*) gfx_init_screen1::ch#1 ? ++ (byte*) gfx_init_screen1::ch#2 - (byte) gfx_init_screen1::cx#1 ? (byte) gfx_init_screen1::cx#2 + rangenext(0,$27) - (bool~) gfx_init_screen1::$2 ? (byte) gfx_init_screen1::cx#1 != rangelast(0,$27) + (byte*) gfx_init_screen1::ch#2 ← phi( gfx_init_screen1::@1/(byte*) gfx_init_screen1::ch#3 gfx_init_screen1::@2/(byte*) gfx_init_screen1::ch#1 ) + (byte) gfx_init_screen1::cy#2 ← phi( gfx_init_screen1::@1/(byte) gfx_init_screen1::cy#4 gfx_init_screen1::@2/(byte) gfx_init_screen1::cy#2 ) + (byte) gfx_init_screen1::cx#2 ← phi( gfx_init_screen1::@1/(byte) gfx_init_screen1::cx#0 gfx_init_screen1::@2/(byte) gfx_init_screen1::cx#1 ) + (byte~) gfx_init_screen1::$0 ← (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#2 + (byte~) gfx_init_screen1::$1 ← (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f + *((byte*) gfx_init_screen1::ch#2) ← (byte~) gfx_init_screen1::$1 + (byte*) gfx_init_screen1::ch#1 ← ++ (byte*) gfx_init_screen1::ch#2 + (byte) gfx_init_screen1::cx#1 ← (byte) gfx_init_screen1::cx#2 + rangenext(0,$27) + (bool~) gfx_init_screen1::$2 ← (byte) gfx_init_screen1::cx#1 != rangelast(0,$27) if((bool~) gfx_init_screen1::$2) goto gfx_init_screen1::@2 to:gfx_init_screen1::@3 gfx_init_screen1::@3: scope:[gfx_init_screen1] from gfx_init_screen1::@2 - (byte*) gfx_init_screen1::ch#4 ? phi( gfx_init_screen1::@2/(byte*) gfx_init_screen1::ch#1 ) - (byte) gfx_init_screen1::cy#3 ? phi( gfx_init_screen1::@2/(byte) gfx_init_screen1::cy#2 ) - (byte) gfx_init_screen1::cy#1 ? (byte) gfx_init_screen1::cy#3 + rangenext(0,$18) - (bool~) gfx_init_screen1::$3 ? (byte) gfx_init_screen1::cy#1 != rangelast(0,$18) + (byte*) gfx_init_screen1::ch#4 ← phi( gfx_init_screen1::@2/(byte*) gfx_init_screen1::ch#1 ) + (byte) gfx_init_screen1::cy#3 ← phi( gfx_init_screen1::@2/(byte) gfx_init_screen1::cy#2 ) + (byte) gfx_init_screen1::cy#1 ← (byte) gfx_init_screen1::cy#3 + rangenext(0,$18) + (bool~) gfx_init_screen1::$3 ← (byte) gfx_init_screen1::cy#1 != rangelast(0,$18) if((bool~) gfx_init_screen1::$3) goto gfx_init_screen1::@1 to:gfx_init_screen1::@return gfx_init_screen1::@return: scope:[gfx_init_screen1] from gfx_init_screen1::@3 return to:@return gfx_init_screen2: scope:[gfx_init_screen2] from gfx_init::@2 - (byte*) gfx_init_screen2::ch#0 ? (byte*) VIC_SCREEN2#0 - (byte) gfx_init_screen2::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen2::ch#0 ← (byte*) VIC_SCREEN2#0 + (byte) gfx_init_screen2::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen2::@1 gfx_init_screen2::@1: scope:[gfx_init_screen2] from gfx_init_screen2 gfx_init_screen2::@3 - (byte*) gfx_init_screen2::ch#3 ? phi( gfx_init_screen2/(byte*) gfx_init_screen2::ch#0 gfx_init_screen2::@3/(byte*) gfx_init_screen2::ch#4 ) - (byte) gfx_init_screen2::cy#4 ? phi( gfx_init_screen2/(byte) gfx_init_screen2::cy#0 gfx_init_screen2::@3/(byte) gfx_init_screen2::cy#1 ) - (byte) gfx_init_screen2::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen2::ch#3 ← phi( gfx_init_screen2/(byte*) gfx_init_screen2::ch#0 gfx_init_screen2::@3/(byte*) gfx_init_screen2::ch#4 ) + (byte) gfx_init_screen2::cy#4 ← phi( gfx_init_screen2/(byte) gfx_init_screen2::cy#0 gfx_init_screen2::@3/(byte) gfx_init_screen2::cy#1 ) + (byte) gfx_init_screen2::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen2::@2 gfx_init_screen2::@2: scope:[gfx_init_screen2] from gfx_init_screen2::@1 gfx_init_screen2::@2 - (byte*) gfx_init_screen2::ch#2 ? phi( gfx_init_screen2::@1/(byte*) gfx_init_screen2::ch#3 gfx_init_screen2::@2/(byte*) gfx_init_screen2::ch#1 ) - (byte) gfx_init_screen2::cy#2 ? phi( gfx_init_screen2::@1/(byte) gfx_init_screen2::cy#4 gfx_init_screen2::@2/(byte) gfx_init_screen2::cy#2 ) - (byte) gfx_init_screen2::cx#2 ? phi( gfx_init_screen2::@1/(byte) gfx_init_screen2::cx#0 gfx_init_screen2::@2/(byte) gfx_init_screen2::cx#1 ) - (byte~) gfx_init_screen2::$0 ? (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#2 - (byte~) gfx_init_screen2::$1 ? (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 ? (byte~) gfx_init_screen2::$1 - (byte/signed word/word/dword/signed dword~) gfx_init_screen2::$2 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 - (byte) gfx_init_screen2::col2#0 ? (byte/signed word/word/dword/signed dword~) gfx_init_screen2::$2 - (byte~) gfx_init_screen2::$3 ? (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_init_screen2::$4 ? (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 - *((byte*) gfx_init_screen2::ch#2) ? (byte~) gfx_init_screen2::$4 - (byte*) gfx_init_screen2::ch#1 ? ++ (byte*) gfx_init_screen2::ch#2 - (byte) gfx_init_screen2::cx#1 ? (byte) gfx_init_screen2::cx#2 + rangenext(0,$27) - (bool~) gfx_init_screen2::$5 ? (byte) gfx_init_screen2::cx#1 != rangelast(0,$27) + (byte*) gfx_init_screen2::ch#2 ← phi( gfx_init_screen2::@1/(byte*) gfx_init_screen2::ch#3 gfx_init_screen2::@2/(byte*) gfx_init_screen2::ch#1 ) + (byte) gfx_init_screen2::cy#2 ← phi( gfx_init_screen2::@1/(byte) gfx_init_screen2::cy#4 gfx_init_screen2::@2/(byte) gfx_init_screen2::cy#2 ) + (byte) gfx_init_screen2::cx#2 ← phi( gfx_init_screen2::@1/(byte) gfx_init_screen2::cx#0 gfx_init_screen2::@2/(byte) gfx_init_screen2::cx#1 ) + (byte~) gfx_init_screen2::$0 ← (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#2 + (byte~) gfx_init_screen2::$1 ← (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) gfx_init_screen2::col#0 ← (byte~) gfx_init_screen2::$1 + (byte/signed word/word/dword/signed dword~) gfx_init_screen2::$2 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 + (byte) gfx_init_screen2::col2#0 ← (byte/signed word/word/dword/signed dword~) gfx_init_screen2::$2 + (byte~) gfx_init_screen2::$3 ← (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_init_screen2::$4 ← (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 + *((byte*) gfx_init_screen2::ch#2) ← (byte~) gfx_init_screen2::$4 + (byte*) gfx_init_screen2::ch#1 ← ++ (byte*) gfx_init_screen2::ch#2 + (byte) gfx_init_screen2::cx#1 ← (byte) gfx_init_screen2::cx#2 + rangenext(0,$27) + (bool~) gfx_init_screen2::$5 ← (byte) gfx_init_screen2::cx#1 != rangelast(0,$27) if((bool~) gfx_init_screen2::$5) goto gfx_init_screen2::@2 to:gfx_init_screen2::@3 gfx_init_screen2::@3: scope:[gfx_init_screen2] from gfx_init_screen2::@2 - (byte*) gfx_init_screen2::ch#4 ? phi( gfx_init_screen2::@2/(byte*) gfx_init_screen2::ch#1 ) - (byte) gfx_init_screen2::cy#3 ? phi( gfx_init_screen2::@2/(byte) gfx_init_screen2::cy#2 ) - (byte) gfx_init_screen2::cy#1 ? (byte) gfx_init_screen2::cy#3 + rangenext(0,$18) - (bool~) gfx_init_screen2::$6 ? (byte) gfx_init_screen2::cy#1 != rangelast(0,$18) + (byte*) gfx_init_screen2::ch#4 ← phi( gfx_init_screen2::@2/(byte*) gfx_init_screen2::ch#1 ) + (byte) gfx_init_screen2::cy#3 ← phi( gfx_init_screen2::@2/(byte) gfx_init_screen2::cy#2 ) + (byte) gfx_init_screen2::cy#1 ← (byte) gfx_init_screen2::cy#3 + rangenext(0,$18) + (bool~) gfx_init_screen2::$6 ← (byte) gfx_init_screen2::cy#1 != rangelast(0,$18) if((bool~) gfx_init_screen2::$6) goto gfx_init_screen2::@1 to:gfx_init_screen2::@return gfx_init_screen2::@return: scope:[gfx_init_screen2] from gfx_init_screen2::@3 return to:@return gfx_init_screen3: scope:[gfx_init_screen3] from gfx_init::@3 - (byte*) gfx_init_screen3::ch#0 ? (byte*) VIC_SCREEN3#0 - (byte) gfx_init_screen3::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen3::ch#0 ← (byte*) VIC_SCREEN3#0 + (byte) gfx_init_screen3::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen3::@1 gfx_init_screen3::@1: scope:[gfx_init_screen3] from gfx_init_screen3 gfx_init_screen3::@3 - (byte*) gfx_init_screen3::ch#3 ? phi( gfx_init_screen3/(byte*) gfx_init_screen3::ch#0 gfx_init_screen3::@3/(byte*) gfx_init_screen3::ch#4 ) - (byte) gfx_init_screen3::cy#4 ? phi( gfx_init_screen3/(byte) gfx_init_screen3::cy#0 gfx_init_screen3::@3/(byte) gfx_init_screen3::cy#1 ) - (byte) gfx_init_screen3::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen3::ch#3 ← phi( gfx_init_screen3/(byte*) gfx_init_screen3::ch#0 gfx_init_screen3::@3/(byte*) gfx_init_screen3::ch#4 ) + (byte) gfx_init_screen3::cy#4 ← phi( gfx_init_screen3/(byte) gfx_init_screen3::cy#0 gfx_init_screen3::@3/(byte) gfx_init_screen3::cy#1 ) + (byte) gfx_init_screen3::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen3::@2 gfx_init_screen3::@2: scope:[gfx_init_screen3] from gfx_init_screen3::@1 gfx_init_screen3::@2 - (byte*) gfx_init_screen3::ch#2 ? phi( gfx_init_screen3::@1/(byte*) gfx_init_screen3::ch#3 gfx_init_screen3::@2/(byte*) gfx_init_screen3::ch#1 ) - (byte) gfx_init_screen3::cy#2 ? phi( gfx_init_screen3::@1/(byte) gfx_init_screen3::cy#4 gfx_init_screen3::@2/(byte) gfx_init_screen3::cy#2 ) - (byte) gfx_init_screen3::cx#2 ? phi( gfx_init_screen3::@1/(byte) gfx_init_screen3::cx#0 gfx_init_screen3::@2/(byte) gfx_init_screen3::cx#1 ) - (byte~) gfx_init_screen3::$0 ? (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte~) gfx_init_screen3::$1 ? (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) gfx_init_screen3::$2 ? (byte) gfx_init_screen3::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte~) gfx_init_screen3::$3 ? (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 - *((byte*) gfx_init_screen3::ch#2) ? (byte~) gfx_init_screen3::$3 - (byte*) gfx_init_screen3::ch#1 ? ++ (byte*) gfx_init_screen3::ch#2 - (byte) gfx_init_screen3::cx#1 ? (byte) gfx_init_screen3::cx#2 + rangenext(0,$27) - (bool~) gfx_init_screen3::$4 ? (byte) gfx_init_screen3::cx#1 != rangelast(0,$27) + (byte*) gfx_init_screen3::ch#2 ← phi( gfx_init_screen3::@1/(byte*) gfx_init_screen3::ch#3 gfx_init_screen3::@2/(byte*) gfx_init_screen3::ch#1 ) + (byte) gfx_init_screen3::cy#2 ← phi( gfx_init_screen3::@1/(byte) gfx_init_screen3::cy#4 gfx_init_screen3::@2/(byte) gfx_init_screen3::cy#2 ) + (byte) gfx_init_screen3::cx#2 ← phi( gfx_init_screen3::@1/(byte) gfx_init_screen3::cx#0 gfx_init_screen3::@2/(byte) gfx_init_screen3::cx#1 ) + (byte~) gfx_init_screen3::$0 ← (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte~) gfx_init_screen3::$1 ← (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) gfx_init_screen3::$2 ← (byte) gfx_init_screen3::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte~) gfx_init_screen3::$3 ← (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 + *((byte*) gfx_init_screen3::ch#2) ← (byte~) gfx_init_screen3::$3 + (byte*) gfx_init_screen3::ch#1 ← ++ (byte*) gfx_init_screen3::ch#2 + (byte) gfx_init_screen3::cx#1 ← (byte) gfx_init_screen3::cx#2 + rangenext(0,$27) + (bool~) gfx_init_screen3::$4 ← (byte) gfx_init_screen3::cx#1 != rangelast(0,$27) if((bool~) gfx_init_screen3::$4) goto gfx_init_screen3::@2 to:gfx_init_screen3::@3 gfx_init_screen3::@3: scope:[gfx_init_screen3] from gfx_init_screen3::@2 - (byte*) gfx_init_screen3::ch#4 ? phi( gfx_init_screen3::@2/(byte*) gfx_init_screen3::ch#1 ) - (byte) gfx_init_screen3::cy#3 ? phi( gfx_init_screen3::@2/(byte) gfx_init_screen3::cy#2 ) - (byte) gfx_init_screen3::cy#1 ? (byte) gfx_init_screen3::cy#3 + rangenext(0,$18) - (bool~) gfx_init_screen3::$5 ? (byte) gfx_init_screen3::cy#1 != rangelast(0,$18) + (byte*) gfx_init_screen3::ch#4 ← phi( gfx_init_screen3::@2/(byte*) gfx_init_screen3::ch#1 ) + (byte) gfx_init_screen3::cy#3 ← phi( gfx_init_screen3::@2/(byte) gfx_init_screen3::cy#2 ) + (byte) gfx_init_screen3::cy#1 ← (byte) gfx_init_screen3::cy#3 + rangenext(0,$18) + (bool~) gfx_init_screen3::$5 ← (byte) gfx_init_screen3::cy#1 != rangelast(0,$18) if((bool~) gfx_init_screen3::$5) goto gfx_init_screen3::@1 to:gfx_init_screen3::@return gfx_init_screen3::@return: scope:[gfx_init_screen3] from gfx_init_screen3::@3 return to:@return gfx_init_screen4: scope:[gfx_init_screen4] from gfx_init::@4 - (byte*) gfx_init_screen4::ch#0 ? (byte*) VIC_SCREEN4#0 - (byte) gfx_init_screen4::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen4::ch#0 ← (byte*) VIC_SCREEN4#0 + (byte) gfx_init_screen4::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen4::@1 gfx_init_screen4::@1: scope:[gfx_init_screen4] from gfx_init_screen4 gfx_init_screen4::@3 - (byte) gfx_init_screen4::cy#4 ? phi( gfx_init_screen4/(byte) gfx_init_screen4::cy#0 gfx_init_screen4::@3/(byte) gfx_init_screen4::cy#1 ) - (byte*) gfx_init_screen4::ch#3 ? phi( gfx_init_screen4/(byte*) gfx_init_screen4::ch#0 gfx_init_screen4::@3/(byte*) gfx_init_screen4::ch#4 ) - (byte) gfx_init_screen4::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_screen4::cy#4 ← phi( gfx_init_screen4/(byte) gfx_init_screen4::cy#0 gfx_init_screen4::@3/(byte) gfx_init_screen4::cy#1 ) + (byte*) gfx_init_screen4::ch#3 ← phi( gfx_init_screen4/(byte*) gfx_init_screen4::ch#0 gfx_init_screen4::@3/(byte*) gfx_init_screen4::ch#4 ) + (byte) gfx_init_screen4::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_screen4::@2 gfx_init_screen4::@2: scope:[gfx_init_screen4] from gfx_init_screen4::@1 gfx_init_screen4::@2 - (byte) gfx_init_screen4::cy#3 ? phi( gfx_init_screen4::@1/(byte) gfx_init_screen4::cy#4 gfx_init_screen4::@2/(byte) gfx_init_screen4::cy#3 ) - (byte) gfx_init_screen4::cx#2 ? phi( gfx_init_screen4::@1/(byte) gfx_init_screen4::cx#0 gfx_init_screen4::@2/(byte) gfx_init_screen4::cx#1 ) - (byte*) gfx_init_screen4::ch#2 ? phi( gfx_init_screen4::@1/(byte*) gfx_init_screen4::ch#3 gfx_init_screen4::@2/(byte*) gfx_init_screen4::ch#1 ) - *((byte*) gfx_init_screen4::ch#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) gfx_init_screen4::ch#1 ? ++ (byte*) gfx_init_screen4::ch#2 - (byte) gfx_init_screen4::cx#1 ? (byte) gfx_init_screen4::cx#2 + rangenext(0,$27) - (bool~) gfx_init_screen4::$0 ? (byte) gfx_init_screen4::cx#1 != rangelast(0,$27) + (byte) gfx_init_screen4::cy#3 ← phi( gfx_init_screen4::@1/(byte) gfx_init_screen4::cy#4 gfx_init_screen4::@2/(byte) gfx_init_screen4::cy#3 ) + (byte) gfx_init_screen4::cx#2 ← phi( gfx_init_screen4::@1/(byte) gfx_init_screen4::cx#0 gfx_init_screen4::@2/(byte) gfx_init_screen4::cx#1 ) + (byte*) gfx_init_screen4::ch#2 ← phi( gfx_init_screen4::@1/(byte*) gfx_init_screen4::ch#3 gfx_init_screen4::@2/(byte*) gfx_init_screen4::ch#1 ) + *((byte*) gfx_init_screen4::ch#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_screen4::ch#1 ← ++ (byte*) gfx_init_screen4::ch#2 + (byte) gfx_init_screen4::cx#1 ← (byte) gfx_init_screen4::cx#2 + rangenext(0,$27) + (bool~) gfx_init_screen4::$0 ← (byte) gfx_init_screen4::cx#1 != rangelast(0,$27) if((bool~) gfx_init_screen4::$0) goto gfx_init_screen4::@2 to:gfx_init_screen4::@3 gfx_init_screen4::@3: scope:[gfx_init_screen4] from gfx_init_screen4::@2 - (byte*) gfx_init_screen4::ch#4 ? phi( gfx_init_screen4::@2/(byte*) gfx_init_screen4::ch#1 ) - (byte) gfx_init_screen4::cy#2 ? phi( gfx_init_screen4::@2/(byte) gfx_init_screen4::cy#3 ) - (byte) gfx_init_screen4::cy#1 ? (byte) gfx_init_screen4::cy#2 + rangenext(0,$18) - (bool~) gfx_init_screen4::$1 ? (byte) gfx_init_screen4::cy#1 != rangelast(0,$18) + (byte*) gfx_init_screen4::ch#4 ← phi( gfx_init_screen4::@2/(byte*) gfx_init_screen4::ch#1 ) + (byte) gfx_init_screen4::cy#2 ← phi( gfx_init_screen4::@2/(byte) gfx_init_screen4::cy#3 ) + (byte) gfx_init_screen4::cy#1 ← (byte) gfx_init_screen4::cy#2 + rangenext(0,$18) + (bool~) gfx_init_screen4::$1 ← (byte) gfx_init_screen4::cy#1 != rangelast(0,$18) if((bool~) gfx_init_screen4::$1) goto gfx_init_screen4::@1 to:gfx_init_screen4::@return gfx_init_screen4::@return: scope:[gfx_init_screen4] from gfx_init_screen4::@3 return to:@return gfx_init_vic_bitmap: scope:[gfx_init_vic_bitmap] from gfx_init::@6 - (byte*) bitmap_init::bitmap#0 ? (byte*) VIC_BITMAP#0 + (byte*) bitmap_init::bitmap#0 ← (byte*) VIC_BITMAP#0 call bitmap_init to:gfx_init_vic_bitmap::@3 gfx_init_vic_bitmap::@3: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap call bitmap_clear to:gfx_init_vic_bitmap::@4 gfx_init_vic_bitmap::@4: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap::@3 - (byte[]) gfx_init_vic_bitmap::lines_x#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $80, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80 } - (byte[]) gfx_init_vic_bitmap::lines_y#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $c7, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte) gfx_init_vic_bitmap::lines_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) gfx_init_vic_bitmap::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte[]) gfx_init_vic_bitmap::lines_x#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $80, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80 } + (byte[]) gfx_init_vic_bitmap::lines_y#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $c7, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte) gfx_init_vic_bitmap::lines_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) gfx_init_vic_bitmap::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_vic_bitmap::@1 gfx_init_vic_bitmap::@1: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap::@4 gfx_init_vic_bitmap::@5 - (byte) gfx_init_vic_bitmap::l#2 ? phi( gfx_init_vic_bitmap::@4/(byte) gfx_init_vic_bitmap::l#0 gfx_init_vic_bitmap::@5/(byte) gfx_init_vic_bitmap::l#1 ) - (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$2 ? (byte) gfx_init_vic_bitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$3 ? (byte) gfx_init_vic_bitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line::x0#0 ? *((byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) - (byte) bitmap_line::x1#0 ? *((byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$2) - (byte) bitmap_line::y0#0 ? *((byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) - (byte) bitmap_line::y1#0 ? *((byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$3) + (byte) gfx_init_vic_bitmap::l#2 ← phi( gfx_init_vic_bitmap::@4/(byte) gfx_init_vic_bitmap::l#0 gfx_init_vic_bitmap::@5/(byte) gfx_init_vic_bitmap::l#1 ) + (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$2 ← (byte) gfx_init_vic_bitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$3 ← (byte) gfx_init_vic_bitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line::x0#0 ← *((byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) + (byte) bitmap_line::x1#0 ← *((byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$2) + (byte) bitmap_line::y0#0 ← *((byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) + (byte) bitmap_line::y1#0 ← *((byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$3) call bitmap_line to:gfx_init_vic_bitmap::@5 gfx_init_vic_bitmap::@5: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap::@1 - (byte) gfx_init_vic_bitmap::l#3 ? phi( gfx_init_vic_bitmap::@1/(byte) gfx_init_vic_bitmap::l#2 ) - (byte) gfx_init_vic_bitmap::l#1 ? ++ (byte) gfx_init_vic_bitmap::l#3 - (bool~) gfx_init_vic_bitmap::$5 ? (byte) gfx_init_vic_bitmap::l#1 < (byte) gfx_init_vic_bitmap::lines_cnt#0 + (byte) gfx_init_vic_bitmap::l#3 ← phi( gfx_init_vic_bitmap::@1/(byte) gfx_init_vic_bitmap::l#2 ) + (byte) gfx_init_vic_bitmap::l#1 ← ++ (byte) gfx_init_vic_bitmap::l#3 + (bool~) gfx_init_vic_bitmap::$5 ← (byte) gfx_init_vic_bitmap::l#1 < (byte) gfx_init_vic_bitmap::lines_cnt#0 if((bool~) gfx_init_vic_bitmap::$5) goto gfx_init_vic_bitmap::@1 to:gfx_init_vic_bitmap::@return gfx_init_vic_bitmap::@return: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap::@5 return to:@return gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init::@7 - (dword~) gfx_init_plane_8bppchunky::$0 ? (dword) PLANE_8BPP_CHUNKY#0 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_8bppchunky::$1 ? ((byte)) (dword~) gfx_init_plane_8bppchunky::$0 - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 ? (byte~) gfx_init_plane_8bppchunky::$1 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#0 ? (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 + (dword~) gfx_init_plane_8bppchunky::$0 ← (dword) PLANE_8BPP_CHUNKY#0 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_8bppchunky::$1 ← ((byte)) (dword~) gfx_init_plane_8bppchunky::$0 + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 ← (byte~) gfx_init_plane_8bppchunky::$1 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#0 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 call dtvSetCpuBankSegment1 to:gfx_init_plane_8bppchunky::@7 gfx_init_plane_8bppchunky::@7: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#3 ? phi( gfx_init_plane_8bppchunky/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 ) - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#3 - (byte*) gfx_init_plane_8bppchunky::gfxb#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte) gfx_init_plane_8bppchunky::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#3 ← phi( gfx_init_plane_8bppchunky/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#0 ) + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#3 + (byte*) gfx_init_plane_8bppchunky::gfxb#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte) gfx_init_plane_8bppchunky::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@1: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@7 - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ? phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#9 gfx_init_plane_8bppchunky::@7/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#1 ) - (byte) gfx_init_plane_8bppchunky::y#6 ? phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::@7/(byte) gfx_init_plane_8bppchunky::y#0 ) - (byte*) gfx_init_plane_8bppchunky::gfxb#5 ? phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#6 gfx_init_plane_8bppchunky::@7/(byte*) gfx_init_plane_8bppchunky::gfxb#0 ) - (word) gfx_init_plane_8bppchunky::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#9 gfx_init_plane_8bppchunky::@7/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#1 ) + (byte) gfx_init_plane_8bppchunky::y#6 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky::@7/(byte) gfx_init_plane_8bppchunky::y#0 ) + (byte*) gfx_init_plane_8bppchunky::gfxb#5 ← phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#6 gfx_init_plane_8bppchunky::@7/(byte*) gfx_init_plane_8bppchunky::gfxb#0 ) + (word) gfx_init_plane_8bppchunky::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@2: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@3 - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#6 ? phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) - (byte) gfx_init_plane_8bppchunky::y#4 ? phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::y#2 ) - (word) gfx_init_plane_8bppchunky::x#3 ? phi( gfx_init_plane_8bppchunky::@1/(word) gfx_init_plane_8bppchunky::x#0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) - (byte*) gfx_init_plane_8bppchunky::gfxb#3 ? phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) - (bool~) gfx_init_plane_8bppchunky::$6 ? (byte*) gfx_init_plane_8bppchunky::gfxb#3 == (word/dword/signed dword) $8000 - (bool~) gfx_init_plane_8bppchunky::$7 ? ! (bool~) gfx_init_plane_8bppchunky::$6 + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#6 ← phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) + (byte) gfx_init_plane_8bppchunky::y#4 ← phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::y#2 ) + (word) gfx_init_plane_8bppchunky::x#3 ← phi( gfx_init_plane_8bppchunky::@1/(word) gfx_init_plane_8bppchunky::x#0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) + (byte*) gfx_init_plane_8bppchunky::gfxb#3 ← phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) + (bool~) gfx_init_plane_8bppchunky::$6 ← (byte*) gfx_init_plane_8bppchunky::gfxb#3 == (word/dword/signed dword) $8000 + (bool~) gfx_init_plane_8bppchunky::$7 ← ! (bool~) gfx_init_plane_8bppchunky::$6 if((bool~) gfx_init_plane_8bppchunky::$7) goto gfx_init_plane_8bppchunky::@3 to:gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@3: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@8 - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ? phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#6 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) - (byte*) gfx_init_plane_8bppchunky::gfxb#4 ? phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@8/(byte*) gfx_init_plane_8bppchunky::gfxb#2 ) - (byte) gfx_init_plane_8bppchunky::y#2 ? phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::y#4 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::y#5 ) - (word) gfx_init_plane_8bppchunky::x#2 ? phi( gfx_init_plane_8bppchunky::@2/(word) gfx_init_plane_8bppchunky::x#3 gfx_init_plane_8bppchunky::@8/(word) gfx_init_plane_8bppchunky::x#4 ) - (word~) gfx_init_plane_8bppchunky::$9 ? (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#2 - (byte~) gfx_init_plane_8bppchunky::$10 ? ((byte)) (word~) gfx_init_plane_8bppchunky::$9 - (byte) gfx_init_plane_8bppchunky::c#0 ? (byte~) gfx_init_plane_8bppchunky::$10 - *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ? (byte) gfx_init_plane_8bppchunky::c#0 - (byte*) gfx_init_plane_8bppchunky::gfxb#1 ? ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 - (word) gfx_init_plane_8bppchunky::x#1 ? (word) gfx_init_plane_8bppchunky::x#2 + rangenext(0,$13f) - (bool~) gfx_init_plane_8bppchunky::$11 ? (word) gfx_init_plane_8bppchunky::x#1 != rangelast(0,$13f) + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#6 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) + (byte*) gfx_init_plane_8bppchunky::gfxb#4 ← phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@8/(byte*) gfx_init_plane_8bppchunky::gfxb#2 ) + (byte) gfx_init_plane_8bppchunky::y#2 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::y#4 gfx_init_plane_8bppchunky::@8/(byte) gfx_init_plane_8bppchunky::y#5 ) + (word) gfx_init_plane_8bppchunky::x#2 ← phi( gfx_init_plane_8bppchunky::@2/(word) gfx_init_plane_8bppchunky::x#3 gfx_init_plane_8bppchunky::@8/(word) gfx_init_plane_8bppchunky::x#4 ) + (word~) gfx_init_plane_8bppchunky::$9 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#2 + (byte~) gfx_init_plane_8bppchunky::$10 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$9 + (byte) gfx_init_plane_8bppchunky::c#0 ← (byte~) gfx_init_plane_8bppchunky::$10 + *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 + (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 + (word) gfx_init_plane_8bppchunky::x#1 ← (word) gfx_init_plane_8bppchunky::x#2 + rangenext(0,$13f) + (bool~) gfx_init_plane_8bppchunky::$11 ← (word) gfx_init_plane_8bppchunky::x#1 != rangelast(0,$13f) if((bool~) gfx_init_plane_8bppchunky::$11) goto gfx_init_plane_8bppchunky::@2 to:gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@4: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 - (byte) gfx_init_plane_8bppchunky::y#7 ? phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::y#4 ) - (word) gfx_init_plane_8bppchunky::x#5 ? phi( gfx_init_plane_8bppchunky::@2/(word) gfx_init_plane_8bppchunky::x#3 ) - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ? phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#6 ) - (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 + (byte) gfx_init_plane_8bppchunky::y#7 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::y#4 ) + (word) gfx_init_plane_8bppchunky::x#5 ← phi( gfx_init_plane_8bppchunky::@2/(word) gfx_init_plane_8bppchunky::x#3 ) + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#6 ) + (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 call dtvSetCpuBankSegment1 to:gfx_init_plane_8bppchunky::@8 gfx_init_plane_8bppchunky::@8: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@4 - (byte) gfx_init_plane_8bppchunky::y#5 ? phi( gfx_init_plane_8bppchunky::@4/(byte) gfx_init_plane_8bppchunky::y#7 ) - (word) gfx_init_plane_8bppchunky::x#4 ? phi( gfx_init_plane_8bppchunky::@4/(word) gfx_init_plane_8bppchunky::x#5 ) - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#5 ? phi( gfx_init_plane_8bppchunky::@4/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ) - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ? ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#5 - (byte*) gfx_init_plane_8bppchunky::gfxb#2 ? ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte) gfx_init_plane_8bppchunky::y#5 ← phi( gfx_init_plane_8bppchunky::@4/(byte) gfx_init_plane_8bppchunky::y#7 ) + (word) gfx_init_plane_8bppchunky::x#4 ← phi( gfx_init_plane_8bppchunky::@4/(word) gfx_init_plane_8bppchunky::x#5 ) + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#5 ← phi( gfx_init_plane_8bppchunky::@4/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ) + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#5 + (byte*) gfx_init_plane_8bppchunky::gfxb#2 ← ((byte*)) (word/signed word/dword/signed dword) $4000 to:gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@5: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@3 - (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#9 ? phi( gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) - (byte*) gfx_init_plane_8bppchunky::gfxb#6 ? phi( gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) - (byte) gfx_init_plane_8bppchunky::y#3 ? phi( gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::y#2 ) - (byte) gfx_init_plane_8bppchunky::y#1 ? (byte) gfx_init_plane_8bppchunky::y#3 + rangenext(0,$c7) - (bool~) gfx_init_plane_8bppchunky::$12 ? (byte) gfx_init_plane_8bppchunky::y#1 != rangelast(0,$c7) + (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#9 ← phi( gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) + (byte*) gfx_init_plane_8bppchunky::gfxb#6 ← phi( gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) + (byte) gfx_init_plane_8bppchunky::y#3 ← phi( gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::y#2 ) + (byte) gfx_init_plane_8bppchunky::y#1 ← (byte) gfx_init_plane_8bppchunky::y#3 + rangenext(0,$c7) + (bool~) gfx_init_plane_8bppchunky::$12 ← (byte) gfx_init_plane_8bppchunky::y#1 != rangelast(0,$c7) if((bool~) gfx_init_plane_8bppchunky::$12) goto gfx_init_plane_8bppchunky::@1 to:gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@6: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@5 - (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_8bppchunky::$3 ? (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_8bppchunky::$4 ? ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_8bppchunky::$3 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ? (byte~) gfx_init_plane_8bppchunky::$4 + (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_8bppchunky::$3 ← (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_8bppchunky::$4 ← ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_8bppchunky::$3 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ← (byte~) gfx_init_plane_8bppchunky::$4 call dtvSetCpuBankSegment1 to:gfx_init_plane_8bppchunky::@9 gfx_init_plane_8bppchunky::@9: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@6 @@ -2699,66 +2699,66 @@ gfx_init_plane_8bppchunky::@return: scope:[gfx_init_plane_8bppchunky] from gfx_ return to:@return gfx_init_plane_horisontal: scope:[gfx_init_plane_horisontal] from gfx_init::@9 - (dword~) gfx_init_plane_horisontal::$0 ? (dword) PLANE_HORISONTAL#0 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_horisontal::$1 ? ((byte)) (dword~) gfx_init_plane_horisontal::$0 - (byte) gfx_init_plane_horisontal::gfxbCpuBank#0 ? (byte~) gfx_init_plane_horisontal::$1 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ? (byte) gfx_init_plane_horisontal::gfxbCpuBank#0 + (dword~) gfx_init_plane_horisontal::$0 ← (dword) PLANE_HORISONTAL#0 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_horisontal::$1 ← ((byte)) (dword~) gfx_init_plane_horisontal::$0 + (byte) gfx_init_plane_horisontal::gfxbCpuBank#0 ← (byte~) gfx_init_plane_horisontal::$1 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← (byte) gfx_init_plane_horisontal::gfxbCpuBank#0 call dtvSetCpuBankSegment1 to:gfx_init_plane_horisontal::@9 gfx_init_plane_horisontal::@9: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal - (byte) gfx_init_plane_horisontal::gfxbCpuBank#2 ? phi( gfx_init_plane_horisontal/(byte) gfx_init_plane_horisontal::gfxbCpuBank#0 ) - (byte) gfx_init_plane_horisontal::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_horisontal::gfxbCpuBank#2 - (word/dword~) gfx_init_plane_horisontal::$3 ? (dword) PLANE_HORISONTAL#0 & (word/signed word/dword/signed dword) $3fff - (word/dword/signed dword~) gfx_init_plane_horisontal::$4 ? (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_horisontal::$3 - (byte*) gfx_init_plane_horisontal::gfxa#0 ? ((byte*)) (word/dword/signed dword~) gfx_init_plane_horisontal::$4 - (byte) gfx_init_plane_horisontal::ay#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_horisontal::gfxbCpuBank#2 ← phi( gfx_init_plane_horisontal/(byte) gfx_init_plane_horisontal::gfxbCpuBank#0 ) + (byte) gfx_init_plane_horisontal::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_horisontal::gfxbCpuBank#2 + (word/dword~) gfx_init_plane_horisontal::$3 ← (dword) PLANE_HORISONTAL#0 & (word/signed word/dword/signed dword) $3fff + (word/dword/signed dword~) gfx_init_plane_horisontal::$4 ← (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_horisontal::$3 + (byte*) gfx_init_plane_horisontal::gfxa#0 ← ((byte*)) (word/dword/signed dword~) gfx_init_plane_horisontal::$4 + (byte) gfx_init_plane_horisontal::ay#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_horisontal::@1 gfx_init_plane_horisontal::@1: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@7 gfx_init_plane_horisontal::@9 - (byte*) gfx_init_plane_horisontal::gfxa#6 ? phi( gfx_init_plane_horisontal::@7/(byte*) gfx_init_plane_horisontal::gfxa#8 gfx_init_plane_horisontal::@9/(byte*) gfx_init_plane_horisontal::gfxa#0 ) - (byte) gfx_init_plane_horisontal::ay#4 ? phi( gfx_init_plane_horisontal::@7/(byte) gfx_init_plane_horisontal::ay#1 gfx_init_plane_horisontal::@9/(byte) gfx_init_plane_horisontal::ay#0 ) - (byte) gfx_init_plane_horisontal::ax#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_plane_horisontal::gfxa#6 ← phi( gfx_init_plane_horisontal::@7/(byte*) gfx_init_plane_horisontal::gfxa#8 gfx_init_plane_horisontal::@9/(byte*) gfx_init_plane_horisontal::gfxa#0 ) + (byte) gfx_init_plane_horisontal::ay#4 ← phi( gfx_init_plane_horisontal::@7/(byte) gfx_init_plane_horisontal::ay#1 gfx_init_plane_horisontal::@9/(byte) gfx_init_plane_horisontal::ay#0 ) + (byte) gfx_init_plane_horisontal::ax#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_horisontal::@2 gfx_init_plane_horisontal::@2: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@1 gfx_init_plane_horisontal::@4 - (byte) gfx_init_plane_horisontal::ax#5 ? phi( gfx_init_plane_horisontal::@1/(byte) gfx_init_plane_horisontal::ax#0 gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ax#1 ) - (byte*) gfx_init_plane_horisontal::gfxa#5 ? phi( gfx_init_plane_horisontal::@1/(byte*) gfx_init_plane_horisontal::gfxa#6 gfx_init_plane_horisontal::@4/(byte*) gfx_init_plane_horisontal::gfxa#7 ) - (byte) gfx_init_plane_horisontal::ay#2 ? phi( gfx_init_plane_horisontal::@1/(byte) gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ay#5 ) - (byte~) gfx_init_plane_horisontal::$8 ? (byte) gfx_init_plane_horisontal::ay#2 & (byte/signed byte/word/signed word/dword/signed dword) 4 - (bool~) gfx_init_plane_horisontal::$9 ? (byte~) gfx_init_plane_horisontal::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_horisontal::ax#5 ← phi( gfx_init_plane_horisontal::@1/(byte) gfx_init_plane_horisontal::ax#0 gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ax#1 ) + (byte*) gfx_init_plane_horisontal::gfxa#5 ← phi( gfx_init_plane_horisontal::@1/(byte*) gfx_init_plane_horisontal::gfxa#6 gfx_init_plane_horisontal::@4/(byte*) gfx_init_plane_horisontal::gfxa#7 ) + (byte) gfx_init_plane_horisontal::ay#2 ← phi( gfx_init_plane_horisontal::@1/(byte) gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ay#5 ) + (byte~) gfx_init_plane_horisontal::$8 ← (byte) gfx_init_plane_horisontal::ay#2 & (byte/signed byte/word/signed word/dword/signed dword) 4 + (bool~) gfx_init_plane_horisontal::$9 ← (byte~) gfx_init_plane_horisontal::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) gfx_init_plane_horisontal::$9) goto gfx_init_plane_horisontal::@3 to:gfx_init_plane_horisontal::@5 gfx_init_plane_horisontal::@3: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@2 - (byte) gfx_init_plane_horisontal::ay#6 ? phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ay#2 ) - (byte) gfx_init_plane_horisontal::ax#3 ? phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ax#5 ) - (byte*) gfx_init_plane_horisontal::gfxa#3 ? phi( gfx_init_plane_horisontal::@2/(byte*) gfx_init_plane_horisontal::gfxa#5 ) - *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) gfx_init_plane_horisontal::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 + (byte) gfx_init_plane_horisontal::ay#6 ← phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ay#2 ) + (byte) gfx_init_plane_horisontal::ax#3 ← phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ax#5 ) + (byte*) gfx_init_plane_horisontal::gfxa#3 ← phi( gfx_init_plane_horisontal::@2/(byte*) gfx_init_plane_horisontal::gfxa#5 ) + *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_plane_horisontal::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 to:gfx_init_plane_horisontal::@4 gfx_init_plane_horisontal::@5: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@2 - (byte) gfx_init_plane_horisontal::ay#7 ? phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ay#2 ) - (byte) gfx_init_plane_horisontal::ax#4 ? phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ax#5 ) - (byte*) gfx_init_plane_horisontal::gfxa#4 ? phi( gfx_init_plane_horisontal::@2/(byte*) gfx_init_plane_horisontal::gfxa#5 ) - *((byte*) gfx_init_plane_horisontal::gfxa#4) ? (byte/word/signed word/dword/signed dword) $ff - (byte*) gfx_init_plane_horisontal::gfxa#2 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#4 + (byte) gfx_init_plane_horisontal::ay#7 ← phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ay#2 ) + (byte) gfx_init_plane_horisontal::ax#4 ← phi( gfx_init_plane_horisontal::@2/(byte) gfx_init_plane_horisontal::ax#5 ) + (byte*) gfx_init_plane_horisontal::gfxa#4 ← phi( gfx_init_plane_horisontal::@2/(byte*) gfx_init_plane_horisontal::gfxa#5 ) + *((byte*) gfx_init_plane_horisontal::gfxa#4) ← (byte/word/signed word/dword/signed dword) $ff + (byte*) gfx_init_plane_horisontal::gfxa#2 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#4 to:gfx_init_plane_horisontal::@4 gfx_init_plane_horisontal::@4: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@3 gfx_init_plane_horisontal::@5 - (byte*) gfx_init_plane_horisontal::gfxa#7 ? phi( gfx_init_plane_horisontal::@3/(byte*) gfx_init_plane_horisontal::gfxa#1 gfx_init_plane_horisontal::@5/(byte*) gfx_init_plane_horisontal::gfxa#2 ) - (byte) gfx_init_plane_horisontal::ay#5 ? phi( gfx_init_plane_horisontal::@3/(byte) gfx_init_plane_horisontal::ay#6 gfx_init_plane_horisontal::@5/(byte) gfx_init_plane_horisontal::ay#7 ) - (byte) gfx_init_plane_horisontal::ax#2 ? phi( gfx_init_plane_horisontal::@3/(byte) gfx_init_plane_horisontal::ax#3 gfx_init_plane_horisontal::@5/(byte) gfx_init_plane_horisontal::ax#4 ) - (byte) gfx_init_plane_horisontal::ax#1 ? (byte) gfx_init_plane_horisontal::ax#2 + rangenext(0,$27) - (bool~) gfx_init_plane_horisontal::$10 ? (byte) gfx_init_plane_horisontal::ax#1 != rangelast(0,$27) + (byte*) gfx_init_plane_horisontal::gfxa#7 ← phi( gfx_init_plane_horisontal::@3/(byte*) gfx_init_plane_horisontal::gfxa#1 gfx_init_plane_horisontal::@5/(byte*) gfx_init_plane_horisontal::gfxa#2 ) + (byte) gfx_init_plane_horisontal::ay#5 ← phi( gfx_init_plane_horisontal::@3/(byte) gfx_init_plane_horisontal::ay#6 gfx_init_plane_horisontal::@5/(byte) gfx_init_plane_horisontal::ay#7 ) + (byte) gfx_init_plane_horisontal::ax#2 ← phi( gfx_init_plane_horisontal::@3/(byte) gfx_init_plane_horisontal::ax#3 gfx_init_plane_horisontal::@5/(byte) gfx_init_plane_horisontal::ax#4 ) + (byte) gfx_init_plane_horisontal::ax#1 ← (byte) gfx_init_plane_horisontal::ax#2 + rangenext(0,$27) + (bool~) gfx_init_plane_horisontal::$10 ← (byte) gfx_init_plane_horisontal::ax#1 != rangelast(0,$27) if((bool~) gfx_init_plane_horisontal::$10) goto gfx_init_plane_horisontal::@2 to:gfx_init_plane_horisontal::@7 gfx_init_plane_horisontal::@7: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@4 - (byte*) gfx_init_plane_horisontal::gfxa#8 ? phi( gfx_init_plane_horisontal::@4/(byte*) gfx_init_plane_horisontal::gfxa#7 ) - (byte) gfx_init_plane_horisontal::ay#3 ? phi( gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ay#5 ) - (byte) gfx_init_plane_horisontal::ay#1 ? (byte) gfx_init_plane_horisontal::ay#3 + rangenext(0,$c7) - (bool~) gfx_init_plane_horisontal::$11 ? (byte) gfx_init_plane_horisontal::ay#1 != rangelast(0,$c7) + (byte*) gfx_init_plane_horisontal::gfxa#8 ← phi( gfx_init_plane_horisontal::@4/(byte*) gfx_init_plane_horisontal::gfxa#7 ) + (byte) gfx_init_plane_horisontal::ay#3 ← phi( gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ay#5 ) + (byte) gfx_init_plane_horisontal::ay#1 ← (byte) gfx_init_plane_horisontal::ay#3 + rangenext(0,$c7) + (bool~) gfx_init_plane_horisontal::$11 ← (byte) gfx_init_plane_horisontal::ay#1 != rangelast(0,$c7) if((bool~) gfx_init_plane_horisontal::$11) goto gfx_init_plane_horisontal::@1 to:gfx_init_plane_horisontal::@8 gfx_init_plane_horisontal::@8: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@7 - (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal::$5 ? (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_horisontal::$6 ? ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal::$5 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#4 ? (byte~) gfx_init_plane_horisontal::$6 + (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal::$5 ← (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_horisontal::$6 ← ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal::$5 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#4 ← (byte~) gfx_init_plane_horisontal::$6 call dtvSetCpuBankSegment1 to:gfx_init_plane_horisontal::@10 gfx_init_plane_horisontal::@10: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@8 @@ -2767,50 +2767,50 @@ gfx_init_plane_horisontal::@return: scope:[gfx_init_plane_horisontal] from gfx_ return to:@return gfx_init_plane_horisontal2: scope:[gfx_init_plane_horisontal2] from gfx_init::@11 - (dword~) gfx_init_plane_horisontal2::$0 ? (dword) PLANE_HORISONTAL2#0 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_horisontal2::$1 ? ((byte)) (dword~) gfx_init_plane_horisontal2::$0 - (byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 ? (byte~) gfx_init_plane_horisontal2::$1 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#5 ? (byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 + (dword~) gfx_init_plane_horisontal2::$0 ← (dword) PLANE_HORISONTAL2#0 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_horisontal2::$1 ← ((byte)) (dword~) gfx_init_plane_horisontal2::$0 + (byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 ← (byte~) gfx_init_plane_horisontal2::$1 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#5 ← (byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 call dtvSetCpuBankSegment1 to:gfx_init_plane_horisontal2::@5 gfx_init_plane_horisontal2::@5: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2 - (byte) gfx_init_plane_horisontal2::gfxbCpuBank#2 ? phi( gfx_init_plane_horisontal2/(byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 ) - (byte) gfx_init_plane_horisontal2::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_horisontal2::gfxbCpuBank#2 - (word/dword~) gfx_init_plane_horisontal2::$3 ? (dword) PLANE_HORISONTAL2#0 & (word/signed word/dword/signed dword) $3fff - (word/dword/signed dword~) gfx_init_plane_horisontal2::$4 ? (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_horisontal2::$3 - (byte*) gfx_init_plane_horisontal2::gfxa#0 ? ((byte*)) (word/dword/signed dword~) gfx_init_plane_horisontal2::$4 - (byte[]) gfx_init_plane_horisontal2::row_bitmask#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $55, (byte/word/signed word/dword/signed dword) $aa, (byte/word/signed word/dword/signed dword) $ff } - (byte) gfx_init_plane_horisontal2::ay#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_horisontal2::gfxbCpuBank#2 ← phi( gfx_init_plane_horisontal2/(byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 ) + (byte) gfx_init_plane_horisontal2::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_horisontal2::gfxbCpuBank#2 + (word/dword~) gfx_init_plane_horisontal2::$3 ← (dword) PLANE_HORISONTAL2#0 & (word/signed word/dword/signed dword) $3fff + (word/dword/signed dword~) gfx_init_plane_horisontal2::$4 ← (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_horisontal2::$3 + (byte*) gfx_init_plane_horisontal2::gfxa#0 ← ((byte*)) (word/dword/signed dword~) gfx_init_plane_horisontal2::$4 + (byte[]) gfx_init_plane_horisontal2::row_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $55, (byte/word/signed word/dword/signed dword) $aa, (byte/word/signed word/dword/signed dword) $ff } + (byte) gfx_init_plane_horisontal2::ay#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_horisontal2::@1 gfx_init_plane_horisontal2::@1: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@3 gfx_init_plane_horisontal2::@5 - (byte*) gfx_init_plane_horisontal2::gfxa#3 ? phi( gfx_init_plane_horisontal2::@3/(byte*) gfx_init_plane_horisontal2::gfxa#4 gfx_init_plane_horisontal2::@5/(byte*) gfx_init_plane_horisontal2::gfxa#0 ) - (byte) gfx_init_plane_horisontal2::ay#4 ? phi( gfx_init_plane_horisontal2::@3/(byte) gfx_init_plane_horisontal2::ay#1 gfx_init_plane_horisontal2::@5/(byte) gfx_init_plane_horisontal2::ay#0 ) - (byte) gfx_init_plane_horisontal2::ax#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) gfx_init_plane_horisontal2::gfxa#3 ← phi( gfx_init_plane_horisontal2::@3/(byte*) gfx_init_plane_horisontal2::gfxa#4 gfx_init_plane_horisontal2::@5/(byte*) gfx_init_plane_horisontal2::gfxa#0 ) + (byte) gfx_init_plane_horisontal2::ay#4 ← phi( gfx_init_plane_horisontal2::@3/(byte) gfx_init_plane_horisontal2::ay#1 gfx_init_plane_horisontal2::@5/(byte) gfx_init_plane_horisontal2::ay#0 ) + (byte) gfx_init_plane_horisontal2::ax#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_horisontal2::@2 gfx_init_plane_horisontal2::@2: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@1 gfx_init_plane_horisontal2::@2 - (byte) gfx_init_plane_horisontal2::ax#2 ? phi( gfx_init_plane_horisontal2::@1/(byte) gfx_init_plane_horisontal2::ax#0 gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ax#1 ) - (byte*) gfx_init_plane_horisontal2::gfxa#2 ? phi( gfx_init_plane_horisontal2::@1/(byte*) gfx_init_plane_horisontal2::gfxa#3 gfx_init_plane_horisontal2::@2/(byte*) gfx_init_plane_horisontal2::gfxa#1 ) - (byte) gfx_init_plane_horisontal2::ay#2 ? phi( gfx_init_plane_horisontal2::@1/(byte) gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ay#2 ) - (byte~) gfx_init_plane_horisontal2::$8 ? (byte) gfx_init_plane_horisontal2::ay#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) gfx_init_plane_horisontal2::$9 ? (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) gfx_init_plane_horisontal2::row#0 ? (byte~) gfx_init_plane_horisontal2::$9 - *((byte*) gfx_init_plane_horisontal2::gfxa#2) ? *((byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) - (byte*) gfx_init_plane_horisontal2::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 - (byte) gfx_init_plane_horisontal2::ax#1 ? (byte) gfx_init_plane_horisontal2::ax#2 + rangenext(0,$27) - (bool~) gfx_init_plane_horisontal2::$10 ? (byte) gfx_init_plane_horisontal2::ax#1 != rangelast(0,$27) + (byte) gfx_init_plane_horisontal2::ax#2 ← phi( gfx_init_plane_horisontal2::@1/(byte) gfx_init_plane_horisontal2::ax#0 gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ax#1 ) + (byte*) gfx_init_plane_horisontal2::gfxa#2 ← phi( gfx_init_plane_horisontal2::@1/(byte*) gfx_init_plane_horisontal2::gfxa#3 gfx_init_plane_horisontal2::@2/(byte*) gfx_init_plane_horisontal2::gfxa#1 ) + (byte) gfx_init_plane_horisontal2::ay#2 ← phi( gfx_init_plane_horisontal2::@1/(byte) gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ay#2 ) + (byte~) gfx_init_plane_horisontal2::$8 ← (byte) gfx_init_plane_horisontal2::ay#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) gfx_init_plane_horisontal2::$9 ← (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) gfx_init_plane_horisontal2::row#0 ← (byte~) gfx_init_plane_horisontal2::$9 + *((byte*) gfx_init_plane_horisontal2::gfxa#2) ← *((byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) + (byte*) gfx_init_plane_horisontal2::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 + (byte) gfx_init_plane_horisontal2::ax#1 ← (byte) gfx_init_plane_horisontal2::ax#2 + rangenext(0,$27) + (bool~) gfx_init_plane_horisontal2::$10 ← (byte) gfx_init_plane_horisontal2::ax#1 != rangelast(0,$27) if((bool~) gfx_init_plane_horisontal2::$10) goto gfx_init_plane_horisontal2::@2 to:gfx_init_plane_horisontal2::@3 gfx_init_plane_horisontal2::@3: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@2 - (byte*) gfx_init_plane_horisontal2::gfxa#4 ? phi( gfx_init_plane_horisontal2::@2/(byte*) gfx_init_plane_horisontal2::gfxa#1 ) - (byte) gfx_init_plane_horisontal2::ay#3 ? phi( gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ay#2 ) - (byte) gfx_init_plane_horisontal2::ay#1 ? (byte) gfx_init_plane_horisontal2::ay#3 + rangenext(0,$c7) - (bool~) gfx_init_plane_horisontal2::$11 ? (byte) gfx_init_plane_horisontal2::ay#1 != rangelast(0,$c7) + (byte*) gfx_init_plane_horisontal2::gfxa#4 ← phi( gfx_init_plane_horisontal2::@2/(byte*) gfx_init_plane_horisontal2::gfxa#1 ) + (byte) gfx_init_plane_horisontal2::ay#3 ← phi( gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ay#2 ) + (byte) gfx_init_plane_horisontal2::ay#1 ← (byte) gfx_init_plane_horisontal2::ay#3 + rangenext(0,$c7) + (bool~) gfx_init_plane_horisontal2::$11 ← (byte) gfx_init_plane_horisontal2::ay#1 != rangelast(0,$c7) if((bool~) gfx_init_plane_horisontal2::$11) goto gfx_init_plane_horisontal2::@1 to:gfx_init_plane_horisontal2::@4 gfx_init_plane_horisontal2::@4: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@3 - (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal2::$5 ? (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_horisontal2::$6 ? ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal2::$5 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#6 ? (byte~) gfx_init_plane_horisontal2::$6 + (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal2::$5 ← (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_horisontal2::$6 ← ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_horisontal2::$5 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#6 ← (byte~) gfx_init_plane_horisontal2::$6 call dtvSetCpuBankSegment1 to:gfx_init_plane_horisontal2::@6 gfx_init_plane_horisontal2::@6: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@4 @@ -2819,46 +2819,46 @@ gfx_init_plane_horisontal2::@return: scope:[gfx_init_plane_horisontal2] from gf return to:@return gfx_init_plane_vertical: scope:[gfx_init_plane_vertical] from gfx_init::@10 - (dword~) gfx_init_plane_vertical::$0 ? (dword) PLANE_VERTICAL#0 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_vertical::$1 ? ((byte)) (dword~) gfx_init_plane_vertical::$0 - (byte) gfx_init_plane_vertical::gfxbCpuBank#0 ? (byte~) gfx_init_plane_vertical::$1 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#7 ? (byte) gfx_init_plane_vertical::gfxbCpuBank#0 + (dword~) gfx_init_plane_vertical::$0 ← (dword) PLANE_VERTICAL#0 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_vertical::$1 ← ((byte)) (dword~) gfx_init_plane_vertical::$0 + (byte) gfx_init_plane_vertical::gfxbCpuBank#0 ← (byte~) gfx_init_plane_vertical::$1 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#7 ← (byte) gfx_init_plane_vertical::gfxbCpuBank#0 call dtvSetCpuBankSegment1 to:gfx_init_plane_vertical::@5 gfx_init_plane_vertical::@5: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical - (byte) gfx_init_plane_vertical::gfxbCpuBank#2 ? phi( gfx_init_plane_vertical/(byte) gfx_init_plane_vertical::gfxbCpuBank#0 ) - (byte) gfx_init_plane_vertical::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_vertical::gfxbCpuBank#2 - (word/dword~) gfx_init_plane_vertical::$3 ? (dword) PLANE_VERTICAL#0 & (word/signed word/dword/signed dword) $3fff - (word/dword/signed dword~) gfx_init_plane_vertical::$4 ? (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_vertical::$3 - (byte*) gfx_init_plane_vertical::gfxb#0 ? ((byte*)) (word/dword/signed dword~) gfx_init_plane_vertical::$4 - (byte) gfx_init_plane_vertical::by#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_vertical::gfxbCpuBank#2 ← phi( gfx_init_plane_vertical/(byte) gfx_init_plane_vertical::gfxbCpuBank#0 ) + (byte) gfx_init_plane_vertical::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_vertical::gfxbCpuBank#2 + (word/dword~) gfx_init_plane_vertical::$3 ← (dword) PLANE_VERTICAL#0 & (word/signed word/dword/signed dword) $3fff + (word/dword/signed dword~) gfx_init_plane_vertical::$4 ← (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_vertical::$3 + (byte*) gfx_init_plane_vertical::gfxb#0 ← ((byte*)) (word/dword/signed dword~) gfx_init_plane_vertical::$4 + (byte) gfx_init_plane_vertical::by#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_vertical::@1 gfx_init_plane_vertical::@1: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@3 gfx_init_plane_vertical::@5 - (byte) gfx_init_plane_vertical::by#4 ? phi( gfx_init_plane_vertical::@3/(byte) gfx_init_plane_vertical::by#1 gfx_init_plane_vertical::@5/(byte) gfx_init_plane_vertical::by#0 ) - (byte*) gfx_init_plane_vertical::gfxb#3 ? phi( gfx_init_plane_vertical::@3/(byte*) gfx_init_plane_vertical::gfxb#4 gfx_init_plane_vertical::@5/(byte*) gfx_init_plane_vertical::gfxb#0 ) - (byte) gfx_init_plane_vertical::bx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_vertical::by#4 ← phi( gfx_init_plane_vertical::@3/(byte) gfx_init_plane_vertical::by#1 gfx_init_plane_vertical::@5/(byte) gfx_init_plane_vertical::by#0 ) + (byte*) gfx_init_plane_vertical::gfxb#3 ← phi( gfx_init_plane_vertical::@3/(byte*) gfx_init_plane_vertical::gfxb#4 gfx_init_plane_vertical::@5/(byte*) gfx_init_plane_vertical::gfxb#0 ) + (byte) gfx_init_plane_vertical::bx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_vertical::@2 gfx_init_plane_vertical::@2: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@1 gfx_init_plane_vertical::@2 - (byte) gfx_init_plane_vertical::by#3 ? phi( gfx_init_plane_vertical::@1/(byte) gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::by#3 ) - (byte) gfx_init_plane_vertical::bx#2 ? phi( gfx_init_plane_vertical::@1/(byte) gfx_init_plane_vertical::bx#0 gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::bx#1 ) - (byte*) gfx_init_plane_vertical::gfxb#2 ? phi( gfx_init_plane_vertical::@1/(byte*) gfx_init_plane_vertical::gfxb#3 gfx_init_plane_vertical::@2/(byte*) gfx_init_plane_vertical::gfxb#1 ) - *((byte*) gfx_init_plane_vertical::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte*) gfx_init_plane_vertical::gfxb#1 ? ++ (byte*) gfx_init_plane_vertical::gfxb#2 - (byte) gfx_init_plane_vertical::bx#1 ? (byte) gfx_init_plane_vertical::bx#2 + rangenext(0,$27) - (bool~) gfx_init_plane_vertical::$8 ? (byte) gfx_init_plane_vertical::bx#1 != rangelast(0,$27) + (byte) gfx_init_plane_vertical::by#3 ← phi( gfx_init_plane_vertical::@1/(byte) gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::by#3 ) + (byte) gfx_init_plane_vertical::bx#2 ← phi( gfx_init_plane_vertical::@1/(byte) gfx_init_plane_vertical::bx#0 gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::bx#1 ) + (byte*) gfx_init_plane_vertical::gfxb#2 ← phi( gfx_init_plane_vertical::@1/(byte*) gfx_init_plane_vertical::gfxb#3 gfx_init_plane_vertical::@2/(byte*) gfx_init_plane_vertical::gfxb#1 ) + *((byte*) gfx_init_plane_vertical::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) gfx_init_plane_vertical::gfxb#1 ← ++ (byte*) gfx_init_plane_vertical::gfxb#2 + (byte) gfx_init_plane_vertical::bx#1 ← (byte) gfx_init_plane_vertical::bx#2 + rangenext(0,$27) + (bool~) gfx_init_plane_vertical::$8 ← (byte) gfx_init_plane_vertical::bx#1 != rangelast(0,$27) if((bool~) gfx_init_plane_vertical::$8) goto gfx_init_plane_vertical::@2 to:gfx_init_plane_vertical::@3 gfx_init_plane_vertical::@3: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@2 - (byte*) gfx_init_plane_vertical::gfxb#4 ? phi( gfx_init_plane_vertical::@2/(byte*) gfx_init_plane_vertical::gfxb#1 ) - (byte) gfx_init_plane_vertical::by#2 ? phi( gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::by#3 ) - (byte) gfx_init_plane_vertical::by#1 ? (byte) gfx_init_plane_vertical::by#2 + rangenext(0,$c7) - (bool~) gfx_init_plane_vertical::$9 ? (byte) gfx_init_plane_vertical::by#1 != rangelast(0,$c7) + (byte*) gfx_init_plane_vertical::gfxb#4 ← phi( gfx_init_plane_vertical::@2/(byte*) gfx_init_plane_vertical::gfxb#1 ) + (byte) gfx_init_plane_vertical::by#2 ← phi( gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::by#3 ) + (byte) gfx_init_plane_vertical::by#1 ← (byte) gfx_init_plane_vertical::by#2 + rangenext(0,$c7) + (bool~) gfx_init_plane_vertical::$9 ← (byte) gfx_init_plane_vertical::by#1 != rangelast(0,$c7) if((bool~) gfx_init_plane_vertical::$9) goto gfx_init_plane_vertical::@1 to:gfx_init_plane_vertical::@4 gfx_init_plane_vertical::@4: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@3 - (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_vertical::$5 ? (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_vertical::$6 ? ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_vertical::$5 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#8 ? (byte~) gfx_init_plane_vertical::$6 + (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_vertical::$5 ← (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_vertical::$6 ← ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_vertical::$5 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#8 ← (byte~) gfx_init_plane_vertical::$6 call dtvSetCpuBankSegment1 to:gfx_init_plane_vertical::@6 gfx_init_plane_vertical::@6: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@4 @@ -2867,106 +2867,106 @@ gfx_init_plane_vertical::@return: scope:[gfx_init_plane_vertical] from gfx_init return to:@return gfx_init_plane_charset8: scope:[gfx_init_plane_charset8] from gfx_init::@8 - (dword~) gfx_init_plane_charset8::$0 ? (dword) PLANE_CHARSET8#0 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_charset8::$1 ? ((byte)) (dword~) gfx_init_plane_charset8::$0 - (byte) gfx_init_plane_charset8::gfxbCpuBank#0 ? (byte~) gfx_init_plane_charset8::$1 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#9 ? (byte) gfx_init_plane_charset8::gfxbCpuBank#0 + (dword~) gfx_init_plane_charset8::$0 ← (dword) PLANE_CHARSET8#0 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_charset8::$1 ← ((byte)) (dword~) gfx_init_plane_charset8::$0 + (byte) gfx_init_plane_charset8::gfxbCpuBank#0 ← (byte~) gfx_init_plane_charset8::$1 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#9 ← (byte) gfx_init_plane_charset8::gfxbCpuBank#0 call dtvSetCpuBankSegment1 to:gfx_init_plane_charset8::@9 gfx_init_plane_charset8::@9: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8 - (byte) gfx_init_plane_charset8::gfxbCpuBank#2 ? phi( gfx_init_plane_charset8/(byte) gfx_init_plane_charset8::gfxbCpuBank#0 ) - (byte) gfx_init_plane_charset8::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_charset8::gfxbCpuBank#2 - (word/dword~) gfx_init_plane_charset8::$3 ? (dword) PLANE_CHARSET8#0 & (word/signed word/dword/signed dword) $3fff - (word/dword/signed dword~) gfx_init_plane_charset8::$4 ? (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_charset8::$3 - (byte*) gfx_init_plane_charset8::gfxa#0 ? ((byte*)) (word/dword/signed dword~) gfx_init_plane_charset8::$4 - (byte*) gfx_init_plane_charset8::chargen#0 ? (byte*) CHARGEN#0 - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_CHARROM#0 - (byte) gfx_init_plane_charset8::col#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) gfx_init_plane_charset8::ch#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_charset8::gfxbCpuBank#2 ← phi( gfx_init_plane_charset8/(byte) gfx_init_plane_charset8::gfxbCpuBank#0 ) + (byte) gfx_init_plane_charset8::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_charset8::gfxbCpuBank#2 + (word/dword~) gfx_init_plane_charset8::$3 ← (dword) PLANE_CHARSET8#0 & (word/signed word/dword/signed dword) $3fff + (word/dword/signed dword~) gfx_init_plane_charset8::$4 ← (word/signed word/dword/signed dword) $4000 + (word/dword~) gfx_init_plane_charset8::$3 + (byte*) gfx_init_plane_charset8::gfxa#0 ← ((byte*)) (word/dword/signed dword~) gfx_init_plane_charset8::$4 + (byte*) gfx_init_plane_charset8::chargen#0 ← (byte*) CHARGEN#0 + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_CHARROM#0 + (byte) gfx_init_plane_charset8::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_charset8::ch#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_charset8::@1 gfx_init_plane_charset8::@1: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@7 gfx_init_plane_charset8::@9 - (byte) gfx_init_plane_charset8::ch#8 ? phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::ch#1 gfx_init_plane_charset8::@9/(byte) gfx_init_plane_charset8::ch#0 ) - (byte) gfx_init_plane_charset8::col#6 ? phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::col#8 gfx_init_plane_charset8::@9/(byte) gfx_init_plane_charset8::col#0 ) - (byte*) gfx_init_plane_charset8::gfxa#6 ? phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::gfxa#8 gfx_init_plane_charset8::@9/(byte*) gfx_init_plane_charset8::gfxa#0 ) - (byte*) gfx_init_plane_charset8::chargen#3 ? phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::chargen#5 gfx_init_plane_charset8::@9/(byte*) gfx_init_plane_charset8::chargen#0 ) - (byte) gfx_init_plane_charset8::cr#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_charset8::ch#8 ← phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::ch#1 gfx_init_plane_charset8::@9/(byte) gfx_init_plane_charset8::ch#0 ) + (byte) gfx_init_plane_charset8::col#6 ← phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::col#8 gfx_init_plane_charset8::@9/(byte) gfx_init_plane_charset8::col#0 ) + (byte*) gfx_init_plane_charset8::gfxa#6 ← phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::gfxa#8 gfx_init_plane_charset8::@9/(byte*) gfx_init_plane_charset8::gfxa#0 ) + (byte*) gfx_init_plane_charset8::chargen#3 ← phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::chargen#5 gfx_init_plane_charset8::@9/(byte*) gfx_init_plane_charset8::chargen#0 ) + (byte) gfx_init_plane_charset8::cr#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_charset8::@2 gfx_init_plane_charset8::@2: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@1 gfx_init_plane_charset8::@6 - (byte) gfx_init_plane_charset8::ch#7 ? phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::ch#3 ) - (byte) gfx_init_plane_charset8::cr#6 ? phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::cr#0 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::cr#1 ) - (byte) gfx_init_plane_charset8::col#5 ? phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::col#7 ) - (byte*) gfx_init_plane_charset8::gfxa#5 ? phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::gfxa#6 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::gfxa#7 ) - (byte*) gfx_init_plane_charset8::chargen#2 ? phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::chargen#3 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::chargen#4 ) - (byte) gfx_init_plane_charset8::bits#0 ? *((byte*) gfx_init_plane_charset8::chargen#2) - (byte*) gfx_init_plane_charset8::chargen#1 ? ++ (byte*) gfx_init_plane_charset8::chargen#2 - (byte) gfx_init_plane_charset8::cp#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_charset8::ch#7 ← phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::ch#3 ) + (byte) gfx_init_plane_charset8::cr#6 ← phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::cr#0 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::cr#1 ) + (byte) gfx_init_plane_charset8::col#5 ← phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::col#7 ) + (byte*) gfx_init_plane_charset8::gfxa#5 ← phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::gfxa#6 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::gfxa#7 ) + (byte*) gfx_init_plane_charset8::chargen#2 ← phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::chargen#3 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::chargen#4 ) + (byte) gfx_init_plane_charset8::bits#0 ← *((byte*) gfx_init_plane_charset8::chargen#2) + (byte*) gfx_init_plane_charset8::chargen#1 ← ++ (byte*) gfx_init_plane_charset8::chargen#2 + (byte) gfx_init_plane_charset8::cp#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_charset8::@3 gfx_init_plane_charset8::@3: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@2 gfx_init_plane_charset8::@4 - (byte) gfx_init_plane_charset8::ch#5 ? phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::ch#7 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::ch#4 ) - (byte*) gfx_init_plane_charset8::chargen#7 ? phi( gfx_init_plane_charset8::@2/(byte*) gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::chargen#6 ) - (byte) gfx_init_plane_charset8::cr#4 ? phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cr#3 ) - (byte) gfx_init_plane_charset8::cp#3 ? phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::cp#0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cp#1 ) - (byte) gfx_init_plane_charset8::col#4 ? phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::col#1 ) - (byte*) gfx_init_plane_charset8::gfxa#3 ? phi( gfx_init_plane_charset8::@2/(byte*) gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::gfxa#1 ) - (byte) gfx_init_plane_charset8::bits#2 ? phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::bits#0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::bits#1 ) - (byte) gfx_init_plane_charset8::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) gfx_init_plane_charset8::$8 ? (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 - (bool~) gfx_init_plane_charset8::$9 ? (byte~) gfx_init_plane_charset8::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) gfx_init_plane_charset8::$10 ? ! (bool~) gfx_init_plane_charset8::$9 + (byte) gfx_init_plane_charset8::ch#5 ← phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::ch#7 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::ch#4 ) + (byte*) gfx_init_plane_charset8::chargen#7 ← phi( gfx_init_plane_charset8::@2/(byte*) gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::chargen#6 ) + (byte) gfx_init_plane_charset8::cr#4 ← phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cr#3 ) + (byte) gfx_init_plane_charset8::cp#3 ← phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::cp#0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cp#1 ) + (byte) gfx_init_plane_charset8::col#4 ← phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::col#1 ) + (byte*) gfx_init_plane_charset8::gfxa#3 ← phi( gfx_init_plane_charset8::@2/(byte*) gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::gfxa#1 ) + (byte) gfx_init_plane_charset8::bits#2 ← phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::bits#0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::bits#1 ) + (byte) gfx_init_plane_charset8::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) gfx_init_plane_charset8::$8 ← (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 + (bool~) gfx_init_plane_charset8::$9 ← (byte~) gfx_init_plane_charset8::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) gfx_init_plane_charset8::$10 ← ! (bool~) gfx_init_plane_charset8::$9 if((bool~) gfx_init_plane_charset8::$10) goto gfx_init_plane_charset8::@4 to:gfx_init_plane_charset8::@5 gfx_init_plane_charset8::@4: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@3 gfx_init_plane_charset8::@5 - (byte) gfx_init_plane_charset8::ch#4 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::ch#5 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::ch#6 ) - (byte*) gfx_init_plane_charset8::chargen#6 ? phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::chargen#7 gfx_init_plane_charset8::@5/(byte*) gfx_init_plane_charset8::chargen#8 ) - (byte) gfx_init_plane_charset8::cr#3 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cr#4 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::cr#5 ) - (byte) gfx_init_plane_charset8::cp#2 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cp#3 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::cp#4 ) - (byte) gfx_init_plane_charset8::col#2 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::col#4 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::col#3 ) - (byte) gfx_init_plane_charset8::bits#3 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::bits#4 ) - (byte*) gfx_init_plane_charset8::gfxa#2 ? phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::gfxa#3 gfx_init_plane_charset8::@5/(byte*) gfx_init_plane_charset8::gfxa#4 ) - (byte) gfx_init_plane_charset8::c#2 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::c#0 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::c#1 ) - *((byte*) gfx_init_plane_charset8::gfxa#2) ? (byte) gfx_init_plane_charset8::c#2 - (byte*) gfx_init_plane_charset8::gfxa#1 ? ++ (byte*) gfx_init_plane_charset8::gfxa#2 - (byte~) gfx_init_plane_charset8::$11 ? (byte) gfx_init_plane_charset8::bits#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) gfx_init_plane_charset8::bits#1 ? (byte~) gfx_init_plane_charset8::$11 - (byte) gfx_init_plane_charset8::col#1 ? ++ (byte) gfx_init_plane_charset8::col#2 - (byte) gfx_init_plane_charset8::cp#1 ? (byte) gfx_init_plane_charset8::cp#2 + rangenext(0,7) - (bool~) gfx_init_plane_charset8::$12 ? (byte) gfx_init_plane_charset8::cp#1 != rangelast(0,7) + (byte) gfx_init_plane_charset8::ch#4 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::ch#5 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::ch#6 ) + (byte*) gfx_init_plane_charset8::chargen#6 ← phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::chargen#7 gfx_init_plane_charset8::@5/(byte*) gfx_init_plane_charset8::chargen#8 ) + (byte) gfx_init_plane_charset8::cr#3 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cr#4 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::cr#5 ) + (byte) gfx_init_plane_charset8::cp#2 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cp#3 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::cp#4 ) + (byte) gfx_init_plane_charset8::col#2 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::col#4 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::col#3 ) + (byte) gfx_init_plane_charset8::bits#3 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::bits#4 ) + (byte*) gfx_init_plane_charset8::gfxa#2 ← phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::gfxa#3 gfx_init_plane_charset8::@5/(byte*) gfx_init_plane_charset8::gfxa#4 ) + (byte) gfx_init_plane_charset8::c#2 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::c#0 gfx_init_plane_charset8::@5/(byte) gfx_init_plane_charset8::c#1 ) + *((byte*) gfx_init_plane_charset8::gfxa#2) ← (byte) gfx_init_plane_charset8::c#2 + (byte*) gfx_init_plane_charset8::gfxa#1 ← ++ (byte*) gfx_init_plane_charset8::gfxa#2 + (byte~) gfx_init_plane_charset8::$11 ← (byte) gfx_init_plane_charset8::bits#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_plane_charset8::bits#1 ← (byte~) gfx_init_plane_charset8::$11 + (byte) gfx_init_plane_charset8::col#1 ← ++ (byte) gfx_init_plane_charset8::col#2 + (byte) gfx_init_plane_charset8::cp#1 ← (byte) gfx_init_plane_charset8::cp#2 + rangenext(0,7) + (bool~) gfx_init_plane_charset8::$12 ← (byte) gfx_init_plane_charset8::cp#1 != rangelast(0,7) if((bool~) gfx_init_plane_charset8::$12) goto gfx_init_plane_charset8::@3 to:gfx_init_plane_charset8::@6 gfx_init_plane_charset8::@5: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@3 - (byte) gfx_init_plane_charset8::ch#6 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::ch#5 ) - (byte*) gfx_init_plane_charset8::chargen#8 ? phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::chargen#7 ) - (byte) gfx_init_plane_charset8::cr#5 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cr#4 ) - (byte) gfx_init_plane_charset8::cp#4 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cp#3 ) - (byte) gfx_init_plane_charset8::bits#4 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::bits#2 ) - (byte*) gfx_init_plane_charset8::gfxa#4 ? phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::gfxa#3 ) - (byte) gfx_init_plane_charset8::col#3 ? phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::col#4 ) - (byte) gfx_init_plane_charset8::c#1 ? (byte) gfx_init_plane_charset8::col#3 + (byte) gfx_init_plane_charset8::ch#6 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::ch#5 ) + (byte*) gfx_init_plane_charset8::chargen#8 ← phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::chargen#7 ) + (byte) gfx_init_plane_charset8::cr#5 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cr#4 ) + (byte) gfx_init_plane_charset8::cp#4 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::cp#3 ) + (byte) gfx_init_plane_charset8::bits#4 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::bits#2 ) + (byte*) gfx_init_plane_charset8::gfxa#4 ← phi( gfx_init_plane_charset8::@3/(byte*) gfx_init_plane_charset8::gfxa#3 ) + (byte) gfx_init_plane_charset8::col#3 ← phi( gfx_init_plane_charset8::@3/(byte) gfx_init_plane_charset8::col#4 ) + (byte) gfx_init_plane_charset8::c#1 ← (byte) gfx_init_plane_charset8::col#3 to:gfx_init_plane_charset8::@4 gfx_init_plane_charset8::@6: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@4 - (byte) gfx_init_plane_charset8::col#7 ? phi( gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::col#1 ) - (byte*) gfx_init_plane_charset8::gfxa#7 ? phi( gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::gfxa#1 ) - (byte) gfx_init_plane_charset8::ch#3 ? phi( gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::ch#4 ) - (byte*) gfx_init_plane_charset8::chargen#4 ? phi( gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::chargen#6 ) - (byte) gfx_init_plane_charset8::cr#2 ? phi( gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cr#3 ) - (byte) gfx_init_plane_charset8::cr#1 ? (byte) gfx_init_plane_charset8::cr#2 + rangenext(0,7) - (bool~) gfx_init_plane_charset8::$13 ? (byte) gfx_init_plane_charset8::cr#1 != rangelast(0,7) + (byte) gfx_init_plane_charset8::col#7 ← phi( gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::col#1 ) + (byte*) gfx_init_plane_charset8::gfxa#7 ← phi( gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::gfxa#1 ) + (byte) gfx_init_plane_charset8::ch#3 ← phi( gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::ch#4 ) + (byte*) gfx_init_plane_charset8::chargen#4 ← phi( gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::chargen#6 ) + (byte) gfx_init_plane_charset8::cr#2 ← phi( gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cr#3 ) + (byte) gfx_init_plane_charset8::cr#1 ← (byte) gfx_init_plane_charset8::cr#2 + rangenext(0,7) + (bool~) gfx_init_plane_charset8::$13 ← (byte) gfx_init_plane_charset8::cr#1 != rangelast(0,7) if((bool~) gfx_init_plane_charset8::$13) goto gfx_init_plane_charset8::@2 to:gfx_init_plane_charset8::@7 gfx_init_plane_charset8::@7: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@6 - (byte) gfx_init_plane_charset8::col#8 ? phi( gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::col#7 ) - (byte*) gfx_init_plane_charset8::gfxa#8 ? phi( gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::gfxa#7 ) - (byte*) gfx_init_plane_charset8::chargen#5 ? phi( gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::chargen#4 ) - (byte) gfx_init_plane_charset8::ch#2 ? phi( gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::ch#3 ) - (byte) gfx_init_plane_charset8::ch#1 ? (byte) gfx_init_plane_charset8::ch#2 + rangenext(0,$ff) - (bool~) gfx_init_plane_charset8::$14 ? (byte) gfx_init_plane_charset8::ch#1 != rangelast(0,$ff) + (byte) gfx_init_plane_charset8::col#8 ← phi( gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::col#7 ) + (byte*) gfx_init_plane_charset8::gfxa#8 ← phi( gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::gfxa#7 ) + (byte*) gfx_init_plane_charset8::chargen#5 ← phi( gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::chargen#4 ) + (byte) gfx_init_plane_charset8::ch#2 ← phi( gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::ch#3 ) + (byte) gfx_init_plane_charset8::ch#1 ← (byte) gfx_init_plane_charset8::ch#2 + rangenext(0,$ff) + (bool~) gfx_init_plane_charset8::$14 ← (byte) gfx_init_plane_charset8::ch#1 != rangelast(0,$ff) if((bool~) gfx_init_plane_charset8::$14) goto gfx_init_plane_charset8::@1 to:gfx_init_plane_charset8::@8 gfx_init_plane_charset8::@8: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@7 - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_IO#0 - (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_charset8::$5 ? (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_charset8::$6 ? ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_charset8::$5 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#10 ? (byte~) gfx_init_plane_charset8::$6 + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0 + (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_charset8::$5 ← (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_charset8::$6 ← ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_charset8::$5 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#10 ← (byte~) gfx_init_plane_charset8::$6 call dtvSetCpuBankSegment1 to:gfx_init_plane_charset8::@10 gfx_init_plane_charset8::@10: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@8 @@ -2975,8 +2975,8 @@ gfx_init_plane_charset8::@return: scope:[gfx_init_plane_charset8] from gfx_init return to:@return gfx_init_plane_vertical2: scope:[gfx_init_plane_vertical2] from gfx_init::@12 - (dword) gfx_init_plane_fill::plane_addr#0 ? (dword) PLANE_VERTICAL2#0 - (byte) gfx_init_plane_fill::fill#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1b + (dword) gfx_init_plane_fill::plane_addr#0 ← (dword) PLANE_VERTICAL2#0 + (byte) gfx_init_plane_fill::fill#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1b call gfx_init_plane_fill to:gfx_init_plane_vertical2::@1 gfx_init_plane_vertical2::@1: scope:[gfx_init_plane_vertical2] from gfx_init_plane_vertical2 @@ -2985,8 +2985,8 @@ gfx_init_plane_vertical2::@return: scope:[gfx_init_plane_vertical2] from gfx_in return to:@return gfx_init_plane_blank: scope:[gfx_init_plane_blank] from gfx_init::@13 - (dword) gfx_init_plane_fill::plane_addr#1 ? (dword) PLANE_BLANK#0 - (byte) gfx_init_plane_fill::fill#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) gfx_init_plane_fill::plane_addr#1 ← (dword) PLANE_BLANK#0 + (byte) gfx_init_plane_fill::fill#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call gfx_init_plane_fill to:gfx_init_plane_blank::@1 gfx_init_plane_blank::@1: scope:[gfx_init_plane_blank] from gfx_init_plane_blank @@ -2995,8 +2995,8 @@ gfx_init_plane_blank::@return: scope:[gfx_init_plane_blank] from gfx_init_plane return to:@return gfx_init_plane_full: scope:[gfx_init_plane_full] from gfx_init::@14 - (dword) gfx_init_plane_fill::plane_addr#2 ? (dword) PLANE_FULL#0 - (byte) gfx_init_plane_fill::fill#2 ? (byte/word/signed word/dword/signed dword) $ff + (dword) gfx_init_plane_fill::plane_addr#2 ← (dword) PLANE_FULL#0 + (byte) gfx_init_plane_fill::fill#2 ← (byte/word/signed word/dword/signed dword) $ff call gfx_init_plane_fill to:gfx_init_plane_full::@1 gfx_init_plane_full::@1: scope:[gfx_init_plane_full] from gfx_init_plane_full @@ -3005,55 +3005,55 @@ gfx_init_plane_full::@return: scope:[gfx_init_plane_full] from gfx_init_plane_f return to:@return gfx_init_plane_fill: scope:[gfx_init_plane_fill] from gfx_init_plane_blank gfx_init_plane_full gfx_init_plane_vertical2 - (byte) gfx_init_plane_fill::fill#7 ? phi( gfx_init_plane_blank/(byte) gfx_init_plane_fill::fill#1 gfx_init_plane_full/(byte) gfx_init_plane_fill::fill#2 gfx_init_plane_vertical2/(byte) gfx_init_plane_fill::fill#0 ) - (dword) gfx_init_plane_fill::plane_addr#3 ? phi( gfx_init_plane_blank/(dword) gfx_init_plane_fill::plane_addr#1 gfx_init_plane_full/(dword) gfx_init_plane_fill::plane_addr#2 gfx_init_plane_vertical2/(dword) gfx_init_plane_fill::plane_addr#0 ) - (dword~) gfx_init_plane_fill::$0 ? (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (word~) gfx_init_plane_fill::$1 ? > (dword~) gfx_init_plane_fill::$0 - (byte~) gfx_init_plane_fill::$2 ? < (word~) gfx_init_plane_fill::$1 - (byte) gfx_init_plane_fill::gfxbCpuBank#0 ? (byte~) gfx_init_plane_fill::$2 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ? (byte) gfx_init_plane_fill::gfxbCpuBank#0 + (byte) gfx_init_plane_fill::fill#7 ← phi( gfx_init_plane_blank/(byte) gfx_init_plane_fill::fill#1 gfx_init_plane_full/(byte) gfx_init_plane_fill::fill#2 gfx_init_plane_vertical2/(byte) gfx_init_plane_fill::fill#0 ) + (dword) gfx_init_plane_fill::plane_addr#3 ← phi( gfx_init_plane_blank/(dword) gfx_init_plane_fill::plane_addr#1 gfx_init_plane_full/(dword) gfx_init_plane_fill::plane_addr#2 gfx_init_plane_vertical2/(dword) gfx_init_plane_fill::plane_addr#0 ) + (dword~) gfx_init_plane_fill::$0 ← (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (word~) gfx_init_plane_fill::$1 ← > (dword~) gfx_init_plane_fill::$0 + (byte~) gfx_init_plane_fill::$2 ← < (word~) gfx_init_plane_fill::$1 + (byte) gfx_init_plane_fill::gfxbCpuBank#0 ← (byte~) gfx_init_plane_fill::$2 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ← (byte) gfx_init_plane_fill::gfxbCpuBank#0 call dtvSetCpuBankSegment1 to:gfx_init_plane_fill::@5 gfx_init_plane_fill::@5: scope:[gfx_init_plane_fill] from gfx_init_plane_fill - (byte) gfx_init_plane_fill::fill#6 ? phi( gfx_init_plane_fill/(byte) gfx_init_plane_fill::fill#7 ) - (dword) gfx_init_plane_fill::plane_addr#4 ? phi( gfx_init_plane_fill/(dword) gfx_init_plane_fill::plane_addr#3 ) - (byte) gfx_init_plane_fill::gfxbCpuBank#2 ? phi( gfx_init_plane_fill/(byte) gfx_init_plane_fill::gfxbCpuBank#0 ) - (byte) gfx_init_plane_fill::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_fill::gfxbCpuBank#2 - (word~) gfx_init_plane_fill::$4 ? < (dword) gfx_init_plane_fill::plane_addr#4 - (word~) gfx_init_plane_fill::$5 ? (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) gfx_init_plane_fill::$6 ? (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 - (byte*) gfx_init_plane_fill::gfxb#0 ? ((byte*)) (word/signed dword/dword~) gfx_init_plane_fill::$6 - (byte) gfx_init_plane_fill::by#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_fill::fill#6 ← phi( gfx_init_plane_fill/(byte) gfx_init_plane_fill::fill#7 ) + (dword) gfx_init_plane_fill::plane_addr#4 ← phi( gfx_init_plane_fill/(dword) gfx_init_plane_fill::plane_addr#3 ) + (byte) gfx_init_plane_fill::gfxbCpuBank#2 ← phi( gfx_init_plane_fill/(byte) gfx_init_plane_fill::gfxbCpuBank#0 ) + (byte) gfx_init_plane_fill::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_fill::gfxbCpuBank#2 + (word~) gfx_init_plane_fill::$4 ← < (dword) gfx_init_plane_fill::plane_addr#4 + (word~) gfx_init_plane_fill::$5 ← (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) gfx_init_plane_fill::$6 ← (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 + (byte*) gfx_init_plane_fill::gfxb#0 ← ((byte*)) (word/signed dword/dword~) gfx_init_plane_fill::$6 + (byte) gfx_init_plane_fill::by#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_fill::@1 gfx_init_plane_fill::@1: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@3 gfx_init_plane_fill::@5 - (byte) gfx_init_plane_fill::by#4 ? phi( gfx_init_plane_fill::@3/(byte) gfx_init_plane_fill::by#1 gfx_init_plane_fill::@5/(byte) gfx_init_plane_fill::by#0 ) - (byte*) gfx_init_plane_fill::gfxb#3 ? phi( gfx_init_plane_fill::@3/(byte*) gfx_init_plane_fill::gfxb#4 gfx_init_plane_fill::@5/(byte*) gfx_init_plane_fill::gfxb#0 ) - (byte) gfx_init_plane_fill::fill#4 ? phi( gfx_init_plane_fill::@3/(byte) gfx_init_plane_fill::fill#5 gfx_init_plane_fill::@5/(byte) gfx_init_plane_fill::fill#6 ) - (byte) gfx_init_plane_fill::bx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) gfx_init_plane_fill::by#4 ← phi( gfx_init_plane_fill::@3/(byte) gfx_init_plane_fill::by#1 gfx_init_plane_fill::@5/(byte) gfx_init_plane_fill::by#0 ) + (byte*) gfx_init_plane_fill::gfxb#3 ← phi( gfx_init_plane_fill::@3/(byte*) gfx_init_plane_fill::gfxb#4 gfx_init_plane_fill::@5/(byte*) gfx_init_plane_fill::gfxb#0 ) + (byte) gfx_init_plane_fill::fill#4 ← phi( gfx_init_plane_fill::@3/(byte) gfx_init_plane_fill::fill#5 gfx_init_plane_fill::@5/(byte) gfx_init_plane_fill::fill#6 ) + (byte) gfx_init_plane_fill::bx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:gfx_init_plane_fill::@2 gfx_init_plane_fill::@2: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@1 gfx_init_plane_fill::@2 - (byte) gfx_init_plane_fill::by#3 ? phi( gfx_init_plane_fill::@1/(byte) gfx_init_plane_fill::by#4 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::by#3 ) - (byte) gfx_init_plane_fill::bx#2 ? phi( gfx_init_plane_fill::@1/(byte) gfx_init_plane_fill::bx#0 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::bx#1 ) - (byte*) gfx_init_plane_fill::gfxb#2 ? phi( gfx_init_plane_fill::@1/(byte*) gfx_init_plane_fill::gfxb#3 gfx_init_plane_fill::@2/(byte*) gfx_init_plane_fill::gfxb#1 ) - (byte) gfx_init_plane_fill::fill#3 ? phi( gfx_init_plane_fill::@1/(byte) gfx_init_plane_fill::fill#4 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::fill#3 ) - *((byte*) gfx_init_plane_fill::gfxb#2) ? (byte) gfx_init_plane_fill::fill#3 - (byte*) gfx_init_plane_fill::gfxb#1 ? ++ (byte*) gfx_init_plane_fill::gfxb#2 - (byte) gfx_init_plane_fill::bx#1 ? (byte) gfx_init_plane_fill::bx#2 + rangenext(0,$27) - (bool~) gfx_init_plane_fill::$10 ? (byte) gfx_init_plane_fill::bx#1 != rangelast(0,$27) + (byte) gfx_init_plane_fill::by#3 ← phi( gfx_init_plane_fill::@1/(byte) gfx_init_plane_fill::by#4 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::by#3 ) + (byte) gfx_init_plane_fill::bx#2 ← phi( gfx_init_plane_fill::@1/(byte) gfx_init_plane_fill::bx#0 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::bx#1 ) + (byte*) gfx_init_plane_fill::gfxb#2 ← phi( gfx_init_plane_fill::@1/(byte*) gfx_init_plane_fill::gfxb#3 gfx_init_plane_fill::@2/(byte*) gfx_init_plane_fill::gfxb#1 ) + (byte) gfx_init_plane_fill::fill#3 ← phi( gfx_init_plane_fill::@1/(byte) gfx_init_plane_fill::fill#4 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::fill#3 ) + *((byte*) gfx_init_plane_fill::gfxb#2) ← (byte) gfx_init_plane_fill::fill#3 + (byte*) gfx_init_plane_fill::gfxb#1 ← ++ (byte*) gfx_init_plane_fill::gfxb#2 + (byte) gfx_init_plane_fill::bx#1 ← (byte) gfx_init_plane_fill::bx#2 + rangenext(0,$27) + (bool~) gfx_init_plane_fill::$10 ← (byte) gfx_init_plane_fill::bx#1 != rangelast(0,$27) if((bool~) gfx_init_plane_fill::$10) goto gfx_init_plane_fill::@2 to:gfx_init_plane_fill::@3 gfx_init_plane_fill::@3: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@2 - (byte*) gfx_init_plane_fill::gfxb#4 ? phi( gfx_init_plane_fill::@2/(byte*) gfx_init_plane_fill::gfxb#1 ) - (byte) gfx_init_plane_fill::fill#5 ? phi( gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::fill#3 ) - (byte) gfx_init_plane_fill::by#2 ? phi( gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::by#3 ) - (byte) gfx_init_plane_fill::by#1 ? (byte) gfx_init_plane_fill::by#2 + rangenext(0,$c7) - (bool~) gfx_init_plane_fill::$11 ? (byte) gfx_init_plane_fill::by#1 != rangelast(0,$c7) + (byte*) gfx_init_plane_fill::gfxb#4 ← phi( gfx_init_plane_fill::@2/(byte*) gfx_init_plane_fill::gfxb#1 ) + (byte) gfx_init_plane_fill::fill#5 ← phi( gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::fill#3 ) + (byte) gfx_init_plane_fill::by#2 ← phi( gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::by#3 ) + (byte) gfx_init_plane_fill::by#1 ← (byte) gfx_init_plane_fill::by#2 + rangenext(0,$c7) + (bool~) gfx_init_plane_fill::$11 ← (byte) gfx_init_plane_fill::by#1 != rangelast(0,$c7) if((bool~) gfx_init_plane_fill::$11) goto gfx_init_plane_fill::@1 to:gfx_init_plane_fill::@4 gfx_init_plane_fill::@4: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@3 - (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_fill::$7 ? (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 - (byte~) gfx_init_plane_fill::$8 ? ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_fill::$7 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#12 ? (byte~) gfx_init_plane_fill::$8 + (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_fill::$7 ← (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 + (byte~) gfx_init_plane_fill::$8 ← ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) gfx_init_plane_fill::$7 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#12 ← (byte~) gfx_init_plane_fill::$8 call dtvSetCpuBankSegment1 to:gfx_init_plane_fill::@6 gfx_init_plane_fill::@6: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@4 @@ -3062,709 +3062,709 @@ gfx_init_plane_fill::@return: scope:[gfx_init_plane_fill] from gfx_init_plane_f return to:@return form_mode: scope:[form_mode] from main::@2 - (byte) form_field_idx#73 ? phi( main::@2/(byte) form_field_idx#25 ) - (byte) keyboard_modifiers#122 ? phi( main::@2/(byte) keyboard_modifiers#39 ) - (byte) keyboard_events_size#142 ? phi( main::@2/(byte) keyboard_events_size#42 ) - (signed byte) form_cursor_count#65 ? phi( main::@2/(signed byte) form_cursor_count#18 ) - (byte*) print_char_cursor#43 ? phi( main::@2/(byte*) print_char_cursor#41 ) - (byte*) print_line_cursor#41 ? phi( main::@2/(byte*) print_line_cursor#39 ) - (byte*) print_screen#21 ? phi( main::@2/(byte*) print_screen#19 ) - (byte*) print_set_screen::screen#0 ? (byte*) COLS#0 + (byte) form_field_idx#73 ← phi( main::@2/(byte) form_field_idx#25 ) + (byte) keyboard_modifiers#122 ← phi( main::@2/(byte) keyboard_modifiers#39 ) + (byte) keyboard_events_size#142 ← phi( main::@2/(byte) keyboard_events_size#42 ) + (signed byte) form_cursor_count#65 ← phi( main::@2/(signed byte) form_cursor_count#18 ) + (byte*) print_char_cursor#43 ← phi( main::@2/(byte*) print_char_cursor#41 ) + (byte*) print_line_cursor#41 ← phi( main::@2/(byte*) print_line_cursor#39 ) + (byte*) print_screen#21 ← phi( main::@2/(byte*) print_screen#19 ) + (byte*) print_set_screen::screen#0 ← (byte*) COLS#0 call print_set_screen to:form_mode::@21 form_mode::@21: scope:[form_mode] from form_mode - (byte) form_field_idx#72 ? phi( form_mode/(byte) form_field_idx#73 ) - (byte) keyboard_modifiers#120 ? phi( form_mode/(byte) keyboard_modifiers#122 ) - (byte) keyboard_events_size#140 ? phi( form_mode/(byte) keyboard_events_size#142 ) - (signed byte) form_cursor_count#64 ? phi( form_mode/(signed byte) form_cursor_count#65 ) - (byte*) print_char_cursor#29 ? phi( form_mode/(byte*) print_char_cursor#9 ) - (byte*) print_line_cursor#28 ? phi( form_mode/(byte*) print_line_cursor#8 ) - (byte*) print_screen#15 ? phi( form_mode/(byte*) print_screen#2 ) - (byte*) print_screen#5 ? (byte*) print_screen#15 - (byte*) print_line_cursor#11 ? (byte*) print_line_cursor#28 - (byte*) print_char_cursor#12 ? (byte*) print_char_cursor#29 + (byte) form_field_idx#72 ← phi( form_mode/(byte) form_field_idx#73 ) + (byte) keyboard_modifiers#120 ← phi( form_mode/(byte) keyboard_modifiers#122 ) + (byte) keyboard_events_size#140 ← phi( form_mode/(byte) keyboard_events_size#142 ) + (signed byte) form_cursor_count#64 ← phi( form_mode/(signed byte) form_cursor_count#65 ) + (byte*) print_char_cursor#29 ← phi( form_mode/(byte*) print_char_cursor#9 ) + (byte*) print_line_cursor#28 ← phi( form_mode/(byte*) print_line_cursor#8 ) + (byte*) print_screen#15 ← phi( form_mode/(byte*) print_screen#2 ) + (byte*) print_screen#5 ← (byte*) print_screen#15 + (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#28 + (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#29 call print_cls to:form_mode::@22 form_mode::@22: scope:[form_mode] from form_mode::@21 - (byte) form_field_idx#71 ? phi( form_mode::@21/(byte) form_field_idx#72 ) - (byte) keyboard_modifiers#118 ? phi( form_mode::@21/(byte) keyboard_modifiers#120 ) - (byte) keyboard_events_size#138 ? phi( form_mode::@21/(byte) keyboard_events_size#140 ) - (signed byte) form_cursor_count#63 ? phi( form_mode::@21/(signed byte) form_cursor_count#64 ) - (byte*) print_screen#28 ? phi( form_mode::@21/(byte*) print_screen#5 ) - (byte*) print_char_cursor#30 ? phi( form_mode::@21/(byte*) print_char_cursor#7 ) - (byte*) print_line_cursor#29 ? phi( form_mode::@21/(byte*) print_line_cursor#6 ) - (byte*) print_line_cursor#12 ? (byte*) print_line_cursor#29 - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#30 - (byte*) print_str_lines::str#1 ? (byte[]) FORM_COLS#0 + (byte) form_field_idx#71 ← phi( form_mode::@21/(byte) form_field_idx#72 ) + (byte) keyboard_modifiers#118 ← phi( form_mode::@21/(byte) keyboard_modifiers#120 ) + (byte) keyboard_events_size#138 ← phi( form_mode::@21/(byte) keyboard_events_size#140 ) + (signed byte) form_cursor_count#63 ← phi( form_mode::@21/(signed byte) form_cursor_count#64 ) + (byte*) print_screen#28 ← phi( form_mode::@21/(byte*) print_screen#5 ) + (byte*) print_char_cursor#30 ← phi( form_mode::@21/(byte*) print_char_cursor#7 ) + (byte*) print_line_cursor#29 ← phi( form_mode::@21/(byte*) print_line_cursor#6 ) + (byte*) print_line_cursor#12 ← (byte*) print_line_cursor#29 + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#30 + (byte*) print_str_lines::str#1 ← (byte[]) FORM_COLS#0 call print_str_lines to:form_mode::@23 form_mode::@23: scope:[form_mode] from form_mode::@22 - (byte) form_field_idx#70 ? phi( form_mode::@22/(byte) form_field_idx#71 ) - (byte) keyboard_modifiers#116 ? phi( form_mode::@22/(byte) keyboard_modifiers#118 ) - (byte) keyboard_events_size#136 ? phi( form_mode::@22/(byte) keyboard_events_size#138 ) - (signed byte) form_cursor_count#62 ? phi( form_mode::@22/(signed byte) form_cursor_count#63 ) - (byte*) print_screen#22 ? phi( form_mode::@22/(byte*) print_screen#28 ) - (byte*) print_line_cursor#30 ? phi( form_mode::@22/(byte*) print_line_cursor#2 ) - (byte*) print_char_cursor#31 ? phi( form_mode::@22/(byte*) print_char_cursor#3 ) - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#31 - (byte*) print_line_cursor#13 ? (byte*) print_line_cursor#30 - (byte*) print_set_screen::screen#1 ? (byte*) FORM_SCREEN#0 + (byte) form_field_idx#70 ← phi( form_mode::@22/(byte) form_field_idx#71 ) + (byte) keyboard_modifiers#116 ← phi( form_mode::@22/(byte) keyboard_modifiers#118 ) + (byte) keyboard_events_size#136 ← phi( form_mode::@22/(byte) keyboard_events_size#138 ) + (signed byte) form_cursor_count#62 ← phi( form_mode::@22/(signed byte) form_cursor_count#63 ) + (byte*) print_screen#22 ← phi( form_mode::@22/(byte*) print_screen#28 ) + (byte*) print_line_cursor#30 ← phi( form_mode::@22/(byte*) print_line_cursor#2 ) + (byte*) print_char_cursor#31 ← phi( form_mode::@22/(byte*) print_char_cursor#3 ) + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#31 + (byte*) print_line_cursor#13 ← (byte*) print_line_cursor#30 + (byte*) print_set_screen::screen#1 ← (byte*) FORM_SCREEN#0 call print_set_screen to:form_mode::@24 form_mode::@24: scope:[form_mode] from form_mode::@23 - (byte) form_field_idx#69 ? phi( form_mode::@23/(byte) form_field_idx#70 ) - (byte) keyboard_modifiers#114 ? phi( form_mode::@23/(byte) keyboard_modifiers#116 ) - (byte) keyboard_events_size#134 ? phi( form_mode::@23/(byte) keyboard_events_size#136 ) - (signed byte) form_cursor_count#61 ? phi( form_mode::@23/(signed byte) form_cursor_count#62 ) - (byte*) print_char_cursor#32 ? phi( form_mode::@23/(byte*) print_char_cursor#9 ) - (byte*) print_line_cursor#31 ? phi( form_mode::@23/(byte*) print_line_cursor#8 ) - (byte*) print_screen#16 ? phi( form_mode::@23/(byte*) print_screen#2 ) - (byte*) print_screen#6 ? (byte*) print_screen#16 - (byte*) print_line_cursor#14 ? (byte*) print_line_cursor#31 - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#32 + (byte) form_field_idx#69 ← phi( form_mode::@23/(byte) form_field_idx#70 ) + (byte) keyboard_modifiers#114 ← phi( form_mode::@23/(byte) keyboard_modifiers#116 ) + (byte) keyboard_events_size#134 ← phi( form_mode::@23/(byte) keyboard_events_size#136 ) + (signed byte) form_cursor_count#61 ← phi( form_mode::@23/(signed byte) form_cursor_count#62 ) + (byte*) print_char_cursor#32 ← phi( form_mode::@23/(byte*) print_char_cursor#9 ) + (byte*) print_line_cursor#31 ← phi( form_mode::@23/(byte*) print_line_cursor#8 ) + (byte*) print_screen#16 ← phi( form_mode::@23/(byte*) print_screen#2 ) + (byte*) print_screen#6 ← (byte*) print_screen#16 + (byte*) print_line_cursor#14 ← (byte*) print_line_cursor#31 + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#32 call print_cls to:form_mode::@25 form_mode::@25: scope:[form_mode] from form_mode::@24 - (byte) form_field_idx#68 ? phi( form_mode::@24/(byte) form_field_idx#69 ) - (byte) keyboard_modifiers#112 ? phi( form_mode::@24/(byte) keyboard_modifiers#114 ) - (byte) keyboard_events_size#131 ? phi( form_mode::@24/(byte) keyboard_events_size#134 ) - (signed byte) form_cursor_count#60 ? phi( form_mode::@24/(signed byte) form_cursor_count#61 ) - (byte*) print_screen#54 ? phi( form_mode::@24/(byte*) print_screen#6 ) - (byte*) print_char_cursor#33 ? phi( form_mode::@24/(byte*) print_char_cursor#7 ) - (byte*) print_line_cursor#32 ? phi( form_mode::@24/(byte*) print_line_cursor#6 ) - (byte*) print_line_cursor#15 ? (byte*) print_line_cursor#32 - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#33 - (byte*) print_str_lines::str#2 ? (byte[]) FORM_TEXT#0 + (byte) form_field_idx#68 ← phi( form_mode::@24/(byte) form_field_idx#69 ) + (byte) keyboard_modifiers#112 ← phi( form_mode::@24/(byte) keyboard_modifiers#114 ) + (byte) keyboard_events_size#131 ← phi( form_mode::@24/(byte) keyboard_events_size#134 ) + (signed byte) form_cursor_count#60 ← phi( form_mode::@24/(signed byte) form_cursor_count#61 ) + (byte*) print_screen#54 ← phi( form_mode::@24/(byte*) print_screen#6 ) + (byte*) print_char_cursor#33 ← phi( form_mode::@24/(byte*) print_char_cursor#7 ) + (byte*) print_line_cursor#32 ← phi( form_mode::@24/(byte*) print_line_cursor#6 ) + (byte*) print_line_cursor#15 ← (byte*) print_line_cursor#32 + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#33 + (byte*) print_str_lines::str#2 ← (byte[]) FORM_TEXT#0 call print_str_lines to:form_mode::@26 form_mode::@26: scope:[form_mode] from form_mode::@25 - (byte) form_field_idx#65 ? phi( form_mode::@25/(byte) form_field_idx#68 ) - (byte) keyboard_modifiers#110 ? phi( form_mode::@25/(byte) keyboard_modifiers#112 ) - (byte) keyboard_events_size#127 ? phi( form_mode::@25/(byte) keyboard_events_size#131 ) - (signed byte) form_cursor_count#57 ? phi( form_mode::@25/(signed byte) form_cursor_count#60 ) - (byte*) print_screen#52 ? phi( form_mode::@25/(byte*) print_screen#54 ) - (byte*) print_line_cursor#33 ? phi( form_mode::@25/(byte*) print_line_cursor#2 ) - (byte*) print_char_cursor#34 ? phi( form_mode::@25/(byte*) print_char_cursor#3 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#34 - (byte*) print_line_cursor#16 ? (byte*) print_line_cursor#33 - (byte*) form_set_screen::screen#0 ? (byte*) FORM_SCREEN#0 + (byte) form_field_idx#65 ← phi( form_mode::@25/(byte) form_field_idx#68 ) + (byte) keyboard_modifiers#110 ← phi( form_mode::@25/(byte) keyboard_modifiers#112 ) + (byte) keyboard_events_size#127 ← phi( form_mode::@25/(byte) keyboard_events_size#131 ) + (signed byte) form_cursor_count#57 ← phi( form_mode::@25/(signed byte) form_cursor_count#60 ) + (byte*) print_screen#52 ← phi( form_mode::@25/(byte*) print_screen#54 ) + (byte*) print_line_cursor#33 ← phi( form_mode::@25/(byte*) print_line_cursor#2 ) + (byte*) print_char_cursor#34 ← phi( form_mode::@25/(byte*) print_char_cursor#3 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#34 + (byte*) print_line_cursor#16 ← (byte*) print_line_cursor#33 + (byte*) form_set_screen::screen#0 ← (byte*) FORM_SCREEN#0 call form_set_screen to:form_mode::@27 form_mode::@27: scope:[form_mode] from form_mode::@26 - (byte) form_field_idx#63 ? phi( form_mode::@26/(byte) form_field_idx#65 ) - (byte) keyboard_modifiers#108 ? phi( form_mode::@26/(byte) keyboard_modifiers#110 ) - (byte) keyboard_events_size#124 ? phi( form_mode::@26/(byte) keyboard_events_size#127 ) - (signed byte) form_cursor_count#55 ? phi( form_mode::@26/(signed byte) form_cursor_count#57 ) - (byte*) print_char_cursor#73 ? phi( form_mode::@26/(byte*) print_char_cursor#17 ) - (byte*) print_line_cursor#73 ? phi( form_mode::@26/(byte*) print_line_cursor#16 ) - (byte*) print_screen#50 ? phi( form_mode::@26/(byte*) print_screen#52 ) + (byte) form_field_idx#63 ← phi( form_mode::@26/(byte) form_field_idx#65 ) + (byte) keyboard_modifiers#108 ← phi( form_mode::@26/(byte) keyboard_modifiers#110 ) + (byte) keyboard_events_size#124 ← phi( form_mode::@26/(byte) keyboard_events_size#127 ) + (signed byte) form_cursor_count#55 ← phi( form_mode::@26/(signed byte) form_cursor_count#57 ) + (byte*) print_char_cursor#73 ← phi( form_mode::@26/(byte*) print_char_cursor#17 ) + (byte*) print_line_cursor#73 ← phi( form_mode::@26/(byte*) print_line_cursor#16 ) + (byte*) print_screen#50 ← phi( form_mode::@26/(byte*) print_screen#52 ) call form_render_values to:form_mode::@28 form_mode::@28: scope:[form_mode] from form_mode::@27 - (byte) form_field_idx#59 ? phi( form_mode::@27/(byte) form_field_idx#63 ) - (byte) keyboard_modifiers#103 ? phi( form_mode::@27/(byte) keyboard_modifiers#108 ) - (byte) keyboard_events_size#115 ? phi( form_mode::@27/(byte) keyboard_events_size#124 ) - (signed byte) form_cursor_count#52 ? phi( form_mode::@27/(signed byte) form_cursor_count#55 ) - (byte*) print_char_cursor#70 ? phi( form_mode::@27/(byte*) print_char_cursor#73 ) - (byte*) print_line_cursor#70 ? phi( form_mode::@27/(byte*) print_line_cursor#73 ) - (byte*) print_screen#47 ? phi( form_mode::@27/(byte*) print_screen#50 ) - (byte) render_preset_name::idx#0 ? *((byte*) form_preset#0) + (byte) form_field_idx#59 ← phi( form_mode::@27/(byte) form_field_idx#63 ) + (byte) keyboard_modifiers#103 ← phi( form_mode::@27/(byte) keyboard_modifiers#108 ) + (byte) keyboard_events_size#115 ← phi( form_mode::@27/(byte) keyboard_events_size#124 ) + (signed byte) form_cursor_count#52 ← phi( form_mode::@27/(signed byte) form_cursor_count#55 ) + (byte*) print_char_cursor#70 ← phi( form_mode::@27/(byte*) print_char_cursor#73 ) + (byte*) print_line_cursor#70 ← phi( form_mode::@27/(byte*) print_line_cursor#73 ) + (byte*) print_screen#47 ← phi( form_mode::@27/(byte*) print_screen#50 ) + (byte) render_preset_name::idx#0 ← *((byte*) form_preset#0) call render_preset_name to:form_mode::@29 form_mode::@29: scope:[form_mode] from form_mode::@28 - (byte) form_field_idx#56 ? phi( form_mode::@28/(byte) form_field_idx#59 ) - (byte) keyboard_modifiers#97 ? phi( form_mode::@28/(byte) keyboard_modifiers#103 ) - (byte) keyboard_events_size#104 ? phi( form_mode::@28/(byte) keyboard_events_size#115 ) - (signed byte) form_cursor_count#48 ? phi( form_mode::@28/(signed byte) form_cursor_count#52 ) - (byte*) print_char_cursor#65 ? phi( form_mode::@28/(byte*) print_char_cursor#70 ) - (byte*) print_line_cursor#65 ? phi( form_mode::@28/(byte*) print_line_cursor#70 ) - (byte*) print_screen#42 ? phi( form_mode::@28/(byte*) print_screen#47 ) - (dword~) form_mode::$9 ? ((dword)) (byte*) FORM_CHARSET#0 - (dword~) form_mode::$10 ? (dword~) form_mode::$9 / (dword/signed dword) $10000 - (byte~) form_mode::$11 ? ((byte)) (dword~) form_mode::$10 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) form_mode::$11 - (dword~) form_mode::$12 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) form_mode::$13 ? ((word)) (dword~) form_mode::$12 - (byte~) form_mode::$14 ? < (word~) form_mode::$13 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) form_mode::$14 - (dword~) form_mode::$15 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) form_mode::$16 ? ((word)) (dword~) form_mode::$15 - (byte~) form_mode::$17 ? > (word~) form_mode::$16 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) form_mode::$17 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) form_mode::$18 ? ((word)) (byte*) FORM_CHARSET#0 - (word/signed dword/dword~) form_mode::$19 ? (word~) form_mode::$18 / (word/signed word/dword/signed dword) $4000 - (byte~) form_mode::$20 ? ((byte)) (word/signed dword/dword~) form_mode::$19 - (byte/word/dword~) form_mode::$21 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) form_mode::$20 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) form_mode::$21 - *((byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) form_mode::$22 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) form_mode::$23 ? (byte~) form_mode::$22 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) form_mode::$23 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (word~) form_mode::$24 ? ((word)) (byte*) FORM_SCREEN#0 - (word~) form_mode::$25 ? (word~) form_mode::$24 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) form_mode::$26 ? (word~) form_mode::$25 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) form_mode::$27 ? ((word)) (byte*) FORM_CHARSET#0 - (word~) form_mode::$28 ? (word~) form_mode::$27 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) form_mode::$29 ? (word~) form_mode::$28 / (word/signed word/dword/signed dword) $400 - (word/dword~) form_mode::$30 ? (word/signed dword/dword~) form_mode::$26 | (word/signed dword/dword~) form_mode::$29 - (byte~) form_mode::$31 ? ((byte)) (word/dword~) form_mode::$30 - *((byte*) VIC_MEMORY#0) ? (byte~) form_mode::$31 - (byte~) form_mode::$32 ? < (byte*) FORM_SCREEN#0 - *((byte*) DTV_PLANEA_START_LO#0) ? (byte~) form_mode::$32 - (byte~) form_mode::$33 ? > (byte*) FORM_SCREEN#0 - *((byte*) DTV_PLANEA_START_MI#0) ? (byte~) form_mode::$33 - *((byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) form_mode::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) form_field_idx#56 ← phi( form_mode::@28/(byte) form_field_idx#59 ) + (byte) keyboard_modifiers#97 ← phi( form_mode::@28/(byte) keyboard_modifiers#103 ) + (byte) keyboard_events_size#104 ← phi( form_mode::@28/(byte) keyboard_events_size#115 ) + (signed byte) form_cursor_count#48 ← phi( form_mode::@28/(signed byte) form_cursor_count#52 ) + (byte*) print_char_cursor#65 ← phi( form_mode::@28/(byte*) print_char_cursor#70 ) + (byte*) print_line_cursor#65 ← phi( form_mode::@28/(byte*) print_line_cursor#70 ) + (byte*) print_screen#42 ← phi( form_mode::@28/(byte*) print_screen#47 ) + (dword~) form_mode::$9 ← ((dword)) (byte*) FORM_CHARSET#0 + (dword~) form_mode::$10 ← (dword~) form_mode::$9 / (dword/signed dword) $10000 + (byte~) form_mode::$11 ← ((byte)) (dword~) form_mode::$10 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) form_mode::$11 + (dword~) form_mode::$12 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) form_mode::$13 ← ((word)) (dword~) form_mode::$12 + (byte~) form_mode::$14 ← < (word~) form_mode::$13 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) form_mode::$14 + (dword~) form_mode::$15 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) form_mode::$16 ← ((word)) (dword~) form_mode::$15 + (byte~) form_mode::$17 ← > (word~) form_mode::$16 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) form_mode::$17 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) form_mode::$18 ← ((word)) (byte*) FORM_CHARSET#0 + (word/signed dword/dword~) form_mode::$19 ← (word~) form_mode::$18 / (word/signed word/dword/signed dword) $4000 + (byte~) form_mode::$20 ← ((byte)) (word/signed dword/dword~) form_mode::$19 + (byte/word/dword~) form_mode::$21 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) form_mode::$20 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) form_mode::$21 + *((byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) form_mode::$22 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) form_mode::$23 ← (byte~) form_mode::$22 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) form_mode::$23 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (word~) form_mode::$24 ← ((word)) (byte*) FORM_SCREEN#0 + (word~) form_mode::$25 ← (word~) form_mode::$24 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) form_mode::$26 ← (word~) form_mode::$25 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) form_mode::$27 ← ((word)) (byte*) FORM_CHARSET#0 + (word~) form_mode::$28 ← (word~) form_mode::$27 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) form_mode::$29 ← (word~) form_mode::$28 / (word/signed word/dword/signed dword) $400 + (word/dword~) form_mode::$30 ← (word/signed dword/dword~) form_mode::$26 | (word/signed dword/dword~) form_mode::$29 + (byte~) form_mode::$31 ← ((byte)) (word/dword~) form_mode::$30 + *((byte*) VIC_MEMORY#0) ← (byte~) form_mode::$31 + (byte~) form_mode::$32 ← < (byte*) FORM_SCREEN#0 + *((byte*) DTV_PLANEA_START_LO#0) ← (byte~) form_mode::$32 + (byte~) form_mode::$33 ← > (byte*) FORM_SCREEN#0 + *((byte*) DTV_PLANEA_START_MI#0) ← (byte~) form_mode::$33 + *((byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) form_mode::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_mode::@1 form_mode::@1: scope:[form_mode] from form_mode::@1 form_mode::@29 - (byte) form_field_idx#49 ? phi( form_mode::@1/(byte) form_field_idx#49 form_mode::@29/(byte) form_field_idx#56 ) - (byte) keyboard_modifiers#83 ? phi( form_mode::@1/(byte) keyboard_modifiers#83 form_mode::@29/(byte) keyboard_modifiers#97 ) - (byte) keyboard_events_size#86 ? phi( form_mode::@1/(byte) keyboard_events_size#86 form_mode::@29/(byte) keyboard_events_size#104 ) - (signed byte) form_cursor_count#39 ? phi( form_mode::@1/(signed byte) form_cursor_count#39 form_mode::@29/(signed byte) form_cursor_count#48 ) - (byte*) print_char_cursor#58 ? phi( form_mode::@1/(byte*) print_char_cursor#58 form_mode::@29/(byte*) print_char_cursor#65 ) - (byte*) print_line_cursor#57 ? phi( form_mode::@1/(byte*) print_line_cursor#57 form_mode::@29/(byte*) print_line_cursor#65 ) - (byte*) print_screen#35 ? phi( form_mode::@1/(byte*) print_screen#35 form_mode::@29/(byte*) print_screen#42 ) - (byte) form_mode::i#2 ? phi( form_mode::@1/(byte) form_mode::i#1 form_mode::@29/(byte) form_mode::i#0 ) - *((byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ? *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) - (byte) form_mode::i#1 ? (byte) form_mode::i#2 + rangenext(0,$f) - (bool~) form_mode::$34 ? (byte) form_mode::i#1 != rangelast(0,$f) + (byte) form_field_idx#49 ← phi( form_mode::@1/(byte) form_field_idx#49 form_mode::@29/(byte) form_field_idx#56 ) + (byte) keyboard_modifiers#83 ← phi( form_mode::@1/(byte) keyboard_modifiers#83 form_mode::@29/(byte) keyboard_modifiers#97 ) + (byte) keyboard_events_size#86 ← phi( form_mode::@1/(byte) keyboard_events_size#86 form_mode::@29/(byte) keyboard_events_size#104 ) + (signed byte) form_cursor_count#39 ← phi( form_mode::@1/(signed byte) form_cursor_count#39 form_mode::@29/(signed byte) form_cursor_count#48 ) + (byte*) print_char_cursor#58 ← phi( form_mode::@1/(byte*) print_char_cursor#58 form_mode::@29/(byte*) print_char_cursor#65 ) + (byte*) print_line_cursor#57 ← phi( form_mode::@1/(byte*) print_line_cursor#57 form_mode::@29/(byte*) print_line_cursor#65 ) + (byte*) print_screen#35 ← phi( form_mode::@1/(byte*) print_screen#35 form_mode::@29/(byte*) print_screen#42 ) + (byte) form_mode::i#2 ← phi( form_mode::@1/(byte) form_mode::i#1 form_mode::@29/(byte) form_mode::i#0 ) + *((byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) + (byte) form_mode::i#1 ← (byte) form_mode::i#2 + rangenext(0,$f) + (bool~) form_mode::$34 ← (byte) form_mode::i#1 != rangelast(0,$f) if((bool~) form_mode::$34) goto form_mode::@1 to:form_mode::@2 form_mode::@2: scope:[form_mode] from form_mode::@1 - (byte) form_field_idx#40 ? phi( form_mode::@1/(byte) form_field_idx#49 ) - (byte) keyboard_modifiers#63 ? phi( form_mode::@1/(byte) keyboard_modifiers#83 ) - (byte) keyboard_events_size#63 ? phi( form_mode::@1/(byte) keyboard_events_size#86 ) - (signed byte) form_cursor_count#30 ? phi( form_mode::@1/(signed byte) form_cursor_count#39 ) - (byte*) print_char_cursor#53 ? phi( form_mode::@1/(byte*) print_char_cursor#58 ) - (byte*) print_line_cursor#50 ? phi( form_mode::@1/(byte*) print_line_cursor#57 ) - (byte*) print_screen#30 ? phi( form_mode::@1/(byte*) print_screen#35 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) form_mode::preset_current#0 ? *((byte*) form_preset#0) + (byte) form_field_idx#40 ← phi( form_mode::@1/(byte) form_field_idx#49 ) + (byte) keyboard_modifiers#63 ← phi( form_mode::@1/(byte) keyboard_modifiers#83 ) + (byte) keyboard_events_size#63 ← phi( form_mode::@1/(byte) keyboard_events_size#86 ) + (signed byte) form_cursor_count#30 ← phi( form_mode::@1/(signed byte) form_cursor_count#39 ) + (byte*) print_char_cursor#53 ← phi( form_mode::@1/(byte*) print_char_cursor#58 ) + (byte*) print_line_cursor#50 ← phi( form_mode::@1/(byte*) print_line_cursor#57 ) + (byte*) print_screen#30 ← phi( form_mode::@1/(byte*) print_screen#35 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) form_mode::preset_current#0 ← *((byte*) form_preset#0) to:form_mode::@3 form_mode::@3: scope:[form_mode] from form_mode::@15 form_mode::@2 form_mode::@33 - (byte) form_mode::preset_current#8 ? phi( form_mode::@15/(byte) form_mode::preset_current#9 form_mode::@2/(byte) form_mode::preset_current#0 form_mode::@33/(byte) form_mode::preset_current#10 ) - (byte) form_field_idx#28 ? phi( form_mode::@15/(byte) form_field_idx#39 form_mode::@2/(byte) form_field_idx#40 form_mode::@33/(byte) form_field_idx#41 ) - (byte) keyboard_modifiers#45 ? phi( form_mode::@15/(byte) keyboard_modifiers#62 form_mode::@2/(byte) keyboard_modifiers#63 form_mode::@33/(byte) keyboard_modifiers#64 ) - (byte) keyboard_events_size#47 ? phi( form_mode::@15/(byte) keyboard_events_size#62 form_mode::@2/(byte) keyboard_events_size#63 form_mode::@33/(byte) keyboard_events_size#64 ) - (signed byte) form_cursor_count#21 ? phi( form_mode::@15/(signed byte) form_cursor_count#29 form_mode::@2/(signed byte) form_cursor_count#30 form_mode::@33/(signed byte) form_cursor_count#31 ) - (byte*) print_char_cursor#44 ? phi( form_mode::@15/(byte*) print_char_cursor#52 form_mode::@2/(byte*) print_char_cursor#53 form_mode::@33/(byte*) print_char_cursor#54 ) - (byte*) print_line_cursor#42 ? phi( form_mode::@15/(byte*) print_line_cursor#49 form_mode::@2/(byte*) print_line_cursor#50 form_mode::@33/(byte*) print_line_cursor#51 ) - (byte*) print_screen#23 ? phi( form_mode::@15/(byte*) print_screen#29 form_mode::@2/(byte*) print_screen#30 form_mode::@33/(byte*) print_screen#31 ) + (byte) form_mode::preset_current#8 ← phi( form_mode::@15/(byte) form_mode::preset_current#9 form_mode::@2/(byte) form_mode::preset_current#0 form_mode::@33/(byte) form_mode::preset_current#10 ) + (byte) form_field_idx#28 ← phi( form_mode::@15/(byte) form_field_idx#39 form_mode::@2/(byte) form_field_idx#40 form_mode::@33/(byte) form_field_idx#41 ) + (byte) keyboard_modifiers#45 ← phi( form_mode::@15/(byte) keyboard_modifiers#62 form_mode::@2/(byte) keyboard_modifiers#63 form_mode::@33/(byte) keyboard_modifiers#64 ) + (byte) keyboard_events_size#47 ← phi( form_mode::@15/(byte) keyboard_events_size#62 form_mode::@2/(byte) keyboard_events_size#63 form_mode::@33/(byte) keyboard_events_size#64 ) + (signed byte) form_cursor_count#21 ← phi( form_mode::@15/(signed byte) form_cursor_count#29 form_mode::@2/(signed byte) form_cursor_count#30 form_mode::@33/(signed byte) form_cursor_count#31 ) + (byte*) print_char_cursor#44 ← phi( form_mode::@15/(byte*) print_char_cursor#52 form_mode::@2/(byte*) print_char_cursor#53 form_mode::@33/(byte*) print_char_cursor#54 ) + (byte*) print_line_cursor#42 ← phi( form_mode::@15/(byte*) print_line_cursor#49 form_mode::@2/(byte*) print_line_cursor#50 form_mode::@33/(byte*) print_line_cursor#51 ) + (byte*) print_screen#23 ← phi( form_mode::@15/(byte*) print_screen#29 form_mode::@2/(byte*) print_screen#30 form_mode::@33/(byte*) print_screen#31 ) if(true) goto form_mode::@4 to:form_mode::@return form_mode::@4: scope:[form_mode] from form_mode::@3 - (byte*) print_char_cursor#66 ? phi( form_mode::@3/(byte*) print_char_cursor#44 ) - (byte*) print_line_cursor#66 ? phi( form_mode::@3/(byte*) print_line_cursor#42 ) - (byte*) print_screen#43 ? phi( form_mode::@3/(byte*) print_screen#23 ) - (byte) form_mode::preset_current#6 ? phi( form_mode::@3/(byte) form_mode::preset_current#8 ) - (byte) form_field_idx#50 ? phi( form_mode::@3/(byte) form_field_idx#28 ) - (byte) keyboard_modifiers#84 ? phi( form_mode::@3/(byte) keyboard_modifiers#45 ) - (byte) keyboard_events_size#87 ? phi( form_mode::@3/(byte) keyboard_events_size#47 ) - (signed byte) form_cursor_count#40 ? phi( form_mode::@3/(signed byte) form_cursor_count#21 ) + (byte*) print_char_cursor#66 ← phi( form_mode::@3/(byte*) print_char_cursor#44 ) + (byte*) print_line_cursor#66 ← phi( form_mode::@3/(byte*) print_line_cursor#42 ) + (byte*) print_screen#43 ← phi( form_mode::@3/(byte*) print_screen#23 ) + (byte) form_mode::preset_current#6 ← phi( form_mode::@3/(byte) form_mode::preset_current#8 ) + (byte) form_field_idx#50 ← phi( form_mode::@3/(byte) form_field_idx#28 ) + (byte) keyboard_modifiers#84 ← phi( form_mode::@3/(byte) keyboard_modifiers#45 ) + (byte) keyboard_events_size#87 ← phi( form_mode::@3/(byte) keyboard_events_size#47 ) + (signed byte) form_cursor_count#40 ← phi( form_mode::@3/(signed byte) form_cursor_count#21 ) to:form_mode::@6 form_mode::@6: scope:[form_mode] from form_mode::@4 form_mode::@7 - (byte*) print_char_cursor#59 ? phi( form_mode::@4/(byte*) print_char_cursor#66 form_mode::@7/(byte*) print_char_cursor#67 ) - (byte*) print_line_cursor#58 ? phi( form_mode::@4/(byte*) print_line_cursor#66 form_mode::@7/(byte*) print_line_cursor#67 ) - (byte*) print_screen#36 ? phi( form_mode::@4/(byte*) print_screen#43 form_mode::@7/(byte*) print_screen#44 ) - (byte) form_mode::preset_current#5 ? phi( form_mode::@4/(byte) form_mode::preset_current#6 form_mode::@7/(byte) form_mode::preset_current#7 ) - (byte) form_field_idx#42 ? phi( form_mode::@4/(byte) form_field_idx#50 form_mode::@7/(byte) form_field_idx#51 ) - (byte) keyboard_modifiers#65 ? phi( form_mode::@4/(byte) keyboard_modifiers#84 form_mode::@7/(byte) keyboard_modifiers#85 ) - (byte) keyboard_events_size#65 ? phi( form_mode::@4/(byte) keyboard_events_size#87 form_mode::@7/(byte) keyboard_events_size#88 ) - (signed byte) form_cursor_count#32 ? phi( form_mode::@4/(signed byte) form_cursor_count#40 form_mode::@7/(signed byte) form_cursor_count#41 ) - (bool~) form_mode::$35 ? *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff + (byte*) print_char_cursor#59 ← phi( form_mode::@4/(byte*) print_char_cursor#66 form_mode::@7/(byte*) print_char_cursor#67 ) + (byte*) print_line_cursor#58 ← phi( form_mode::@4/(byte*) print_line_cursor#66 form_mode::@7/(byte*) print_line_cursor#67 ) + (byte*) print_screen#36 ← phi( form_mode::@4/(byte*) print_screen#43 form_mode::@7/(byte*) print_screen#44 ) + (byte) form_mode::preset_current#5 ← phi( form_mode::@4/(byte) form_mode::preset_current#6 form_mode::@7/(byte) form_mode::preset_current#7 ) + (byte) form_field_idx#42 ← phi( form_mode::@4/(byte) form_field_idx#50 form_mode::@7/(byte) form_field_idx#51 ) + (byte) keyboard_modifiers#65 ← phi( form_mode::@4/(byte) keyboard_modifiers#84 form_mode::@7/(byte) keyboard_modifiers#85 ) + (byte) keyboard_events_size#65 ← phi( form_mode::@4/(byte) keyboard_events_size#87 form_mode::@7/(byte) keyboard_events_size#88 ) + (signed byte) form_cursor_count#32 ← phi( form_mode::@4/(signed byte) form_cursor_count#40 form_mode::@7/(signed byte) form_cursor_count#41 ) + (bool~) form_mode::$35 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff if((bool~) form_mode::$35) goto form_mode::@7 to:form_mode::@8 form_mode::@7: scope:[form_mode] from form_mode::@6 - (byte*) print_char_cursor#67 ? phi( form_mode::@6/(byte*) print_char_cursor#59 ) - (byte*) print_line_cursor#67 ? phi( form_mode::@6/(byte*) print_line_cursor#58 ) - (byte*) print_screen#44 ? phi( form_mode::@6/(byte*) print_screen#36 ) - (byte) form_mode::preset_current#7 ? phi( form_mode::@6/(byte) form_mode::preset_current#5 ) - (byte) form_field_idx#51 ? phi( form_mode::@6/(byte) form_field_idx#42 ) - (byte) keyboard_modifiers#85 ? phi( form_mode::@6/(byte) keyboard_modifiers#65 ) - (byte) keyboard_events_size#88 ? phi( form_mode::@6/(byte) keyboard_events_size#65 ) - (signed byte) form_cursor_count#41 ? phi( form_mode::@6/(signed byte) form_cursor_count#32 ) + (byte*) print_char_cursor#67 ← phi( form_mode::@6/(byte*) print_char_cursor#59 ) + (byte*) print_line_cursor#67 ← phi( form_mode::@6/(byte*) print_line_cursor#58 ) + (byte*) print_screen#44 ← phi( form_mode::@6/(byte*) print_screen#36 ) + (byte) form_mode::preset_current#7 ← phi( form_mode::@6/(byte) form_mode::preset_current#5 ) + (byte) form_field_idx#51 ← phi( form_mode::@6/(byte) form_field_idx#42 ) + (byte) keyboard_modifiers#85 ← phi( form_mode::@6/(byte) keyboard_modifiers#65 ) + (byte) keyboard_events_size#88 ← phi( form_mode::@6/(byte) keyboard_events_size#65 ) + (signed byte) form_cursor_count#41 ← phi( form_mode::@6/(signed byte) form_cursor_count#32 ) to:form_mode::@6 form_mode::@8: scope:[form_mode] from form_mode::@6 - (byte*) print_char_cursor#55 ? phi( form_mode::@6/(byte*) print_char_cursor#59 ) - (byte*) print_line_cursor#52 ? phi( form_mode::@6/(byte*) print_line_cursor#58 ) - (byte*) print_screen#32 ? phi( form_mode::@6/(byte*) print_screen#36 ) - (byte) form_mode::preset_current#4 ? phi( form_mode::@6/(byte) form_mode::preset_current#5 ) - (byte) form_field_idx#27 ? phi( form_mode::@6/(byte) form_field_idx#42 ) - (byte) keyboard_modifiers#44 ? phi( form_mode::@6/(byte) keyboard_modifiers#65 ) - (byte) keyboard_events_size#46 ? phi( form_mode::@6/(byte) keyboard_events_size#65 ) - (signed byte) form_cursor_count#20 ? phi( form_mode::@6/(signed byte) form_cursor_count#32 ) + (byte*) print_char_cursor#55 ← phi( form_mode::@6/(byte*) print_char_cursor#59 ) + (byte*) print_line_cursor#52 ← phi( form_mode::@6/(byte*) print_line_cursor#58 ) + (byte*) print_screen#32 ← phi( form_mode::@6/(byte*) print_screen#36 ) + (byte) form_mode::preset_current#4 ← phi( form_mode::@6/(byte) form_mode::preset_current#5 ) + (byte) form_field_idx#27 ← phi( form_mode::@6/(byte) form_field_idx#42 ) + (byte) keyboard_modifiers#44 ← phi( form_mode::@6/(byte) keyboard_modifiers#65 ) + (byte) keyboard_events_size#46 ← phi( form_mode::@6/(byte) keyboard_events_size#65 ) + (signed byte) form_cursor_count#20 ← phi( form_mode::@6/(signed byte) form_cursor_count#32 ) call form_control - (byte) form_control::return#0 ? (byte) form_control::return#2 + (byte) form_control::return#0 ← (byte) form_control::return#2 to:form_mode::@30 form_mode::@30: scope:[form_mode] from form_mode::@8 - (byte*) print_char_cursor#45 ? phi( form_mode::@8/(byte*) print_char_cursor#55 ) - (byte*) print_line_cursor#43 ? phi( form_mode::@8/(byte*) print_line_cursor#52 ) - (byte*) print_screen#24 ? phi( form_mode::@8/(byte*) print_screen#32 ) - (byte) form_mode::preset_current#3 ? phi( form_mode::@8/(byte) form_mode::preset_current#4 ) - (byte) form_field_idx#13 ? phi( form_mode::@8/(byte) form_field_idx#9 ) - (byte) keyboard_modifiers#27 ? phi( form_mode::@8/(byte) keyboard_modifiers#15 ) - (byte) keyboard_events_size#31 ? phi( form_mode::@8/(byte) keyboard_events_size#16 ) - (signed byte) form_cursor_count#12 ? phi( form_mode::@8/(signed byte) form_cursor_count#8 ) - (byte) form_control::return#6 ? phi( form_mode::@8/(byte) form_control::return#0 ) - (byte~) form_mode::$36 ? (byte) form_control::return#6 - (signed byte) form_cursor_count#2 ? (signed byte) form_cursor_count#12 - (byte) keyboard_events_size#12 ? (byte) keyboard_events_size#31 - (byte) keyboard_modifiers#12 ? (byte) keyboard_modifiers#27 - (byte) form_field_idx#2 ? (byte) form_field_idx#13 - (bool~) form_mode::$37 ? (byte~) form_mode::$36 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) form_mode::$38 ? ! (bool~) form_mode::$37 + (byte*) print_char_cursor#45 ← phi( form_mode::@8/(byte*) print_char_cursor#55 ) + (byte*) print_line_cursor#43 ← phi( form_mode::@8/(byte*) print_line_cursor#52 ) + (byte*) print_screen#24 ← phi( form_mode::@8/(byte*) print_screen#32 ) + (byte) form_mode::preset_current#3 ← phi( form_mode::@8/(byte) form_mode::preset_current#4 ) + (byte) form_field_idx#13 ← phi( form_mode::@8/(byte) form_field_idx#9 ) + (byte) keyboard_modifiers#27 ← phi( form_mode::@8/(byte) keyboard_modifiers#15 ) + (byte) keyboard_events_size#31 ← phi( form_mode::@8/(byte) keyboard_events_size#16 ) + (signed byte) form_cursor_count#12 ← phi( form_mode::@8/(signed byte) form_cursor_count#8 ) + (byte) form_control::return#6 ← phi( form_mode::@8/(byte) form_control::return#0 ) + (byte~) form_mode::$36 ← (byte) form_control::return#6 + (signed byte) form_cursor_count#2 ← (signed byte) form_cursor_count#12 + (byte) keyboard_events_size#12 ← (byte) keyboard_events_size#31 + (byte) keyboard_modifiers#12 ← (byte) keyboard_modifiers#27 + (byte) form_field_idx#2 ← (byte) form_field_idx#13 + (bool~) form_mode::$37 ← (byte~) form_mode::$36 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) form_mode::$38 ← ! (bool~) form_mode::$37 if((bool~) form_mode::$38) goto form_mode::@14 to:form_mode::@return form_mode::@14: scope:[form_mode] from form_mode::@30 - (byte) form_field_idx#52 ? phi( form_mode::@30/(byte) form_field_idx#2 ) - (byte) keyboard_modifiers#86 ? phi( form_mode::@30/(byte) keyboard_modifiers#12 ) - (byte) keyboard_events_size#89 ? phi( form_mode::@30/(byte) keyboard_events_size#12 ) - (signed byte) form_cursor_count#42 ? phi( form_mode::@30/(signed byte) form_cursor_count#2 ) - (byte*) print_char_cursor#60 ? phi( form_mode::@30/(byte*) print_char_cursor#45 ) - (byte*) print_line_cursor#59 ? phi( form_mode::@30/(byte*) print_line_cursor#43 ) - (byte*) print_screen#37 ? phi( form_mode::@30/(byte*) print_screen#24 ) - (byte) form_mode::preset_current#2 ? phi( form_mode::@30/(byte) form_mode::preset_current#3 ) - (bool~) form_mode::$39 ? (byte) form_mode::preset_current#2 != *((byte*) form_preset#0) - (bool~) form_mode::$40 ? ! (bool~) form_mode::$39 + (byte) form_field_idx#52 ← phi( form_mode::@30/(byte) form_field_idx#2 ) + (byte) keyboard_modifiers#86 ← phi( form_mode::@30/(byte) keyboard_modifiers#12 ) + (byte) keyboard_events_size#89 ← phi( form_mode::@30/(byte) keyboard_events_size#12 ) + (signed byte) form_cursor_count#42 ← phi( form_mode::@30/(signed byte) form_cursor_count#2 ) + (byte*) print_char_cursor#60 ← phi( form_mode::@30/(byte*) print_char_cursor#45 ) + (byte*) print_line_cursor#59 ← phi( form_mode::@30/(byte*) print_line_cursor#43 ) + (byte*) print_screen#37 ← phi( form_mode::@30/(byte*) print_screen#24 ) + (byte) form_mode::preset_current#2 ← phi( form_mode::@30/(byte) form_mode::preset_current#3 ) + (bool~) form_mode::$39 ← (byte) form_mode::preset_current#2 != *((byte*) form_preset#0) + (bool~) form_mode::$40 ← ! (bool~) form_mode::$39 if((bool~) form_mode::$40) goto form_mode::@15 to:form_mode::@18 form_mode::@return: scope:[form_mode] from form_mode::@3 form_mode::@30 - (byte) form_field_idx#14 ? phi( form_mode::@3/(byte) form_field_idx#28 form_mode::@30/(byte) form_field_idx#2 ) - (byte) keyboard_modifiers#28 ? phi( form_mode::@3/(byte) keyboard_modifiers#45 form_mode::@30/(byte) keyboard_modifiers#12 ) - (byte) keyboard_events_size#32 ? phi( form_mode::@3/(byte) keyboard_events_size#47 form_mode::@30/(byte) keyboard_events_size#12 ) - (signed byte) form_cursor_count#13 ? phi( form_mode::@3/(signed byte) form_cursor_count#21 form_mode::@30/(signed byte) form_cursor_count#2 ) - (byte*) print_char_cursor#35 ? phi( form_mode::@3/(byte*) print_char_cursor#44 form_mode::@30/(byte*) print_char_cursor#45 ) - (byte*) print_line_cursor#34 ? phi( form_mode::@3/(byte*) print_line_cursor#42 form_mode::@30/(byte*) print_line_cursor#43 ) - (byte*) print_screen#17 ? phi( form_mode::@3/(byte*) print_screen#23 form_mode::@30/(byte*) print_screen#24 ) - (byte*) print_screen#7 ? (byte*) print_screen#17 - (byte*) print_line_cursor#17 ? (byte*) print_line_cursor#34 - (byte*) print_char_cursor#18 ? (byte*) print_char_cursor#35 - (signed byte) form_cursor_count#3 ? (signed byte) form_cursor_count#13 - (byte) keyboard_events_size#13 ? (byte) keyboard_events_size#32 - (byte) keyboard_modifiers#13 ? (byte) keyboard_modifiers#28 - (byte) form_field_idx#3 ? (byte) form_field_idx#14 + (byte) form_field_idx#14 ← phi( form_mode::@3/(byte) form_field_idx#28 form_mode::@30/(byte) form_field_idx#2 ) + (byte) keyboard_modifiers#28 ← phi( form_mode::@3/(byte) keyboard_modifiers#45 form_mode::@30/(byte) keyboard_modifiers#12 ) + (byte) keyboard_events_size#32 ← phi( form_mode::@3/(byte) keyboard_events_size#47 form_mode::@30/(byte) keyboard_events_size#12 ) + (signed byte) form_cursor_count#13 ← phi( form_mode::@3/(signed byte) form_cursor_count#21 form_mode::@30/(signed byte) form_cursor_count#2 ) + (byte*) print_char_cursor#35 ← phi( form_mode::@3/(byte*) print_char_cursor#44 form_mode::@30/(byte*) print_char_cursor#45 ) + (byte*) print_line_cursor#34 ← phi( form_mode::@3/(byte*) print_line_cursor#42 form_mode::@30/(byte*) print_line_cursor#43 ) + (byte*) print_screen#17 ← phi( form_mode::@3/(byte*) print_screen#23 form_mode::@30/(byte*) print_screen#24 ) + (byte*) print_screen#7 ← (byte*) print_screen#17 + (byte*) print_line_cursor#17 ← (byte*) print_line_cursor#34 + (byte*) print_char_cursor#18 ← (byte*) print_char_cursor#35 + (signed byte) form_cursor_count#3 ← (signed byte) form_cursor_count#13 + (byte) keyboard_events_size#13 ← (byte) keyboard_events_size#32 + (byte) keyboard_modifiers#13 ← (byte) keyboard_modifiers#28 + (byte) form_field_idx#3 ← (byte) form_field_idx#14 return to:@return form_mode::@15: scope:[form_mode] from form_mode::@14 - (byte) form_mode::preset_current#9 ? phi( form_mode::@14/(byte) form_mode::preset_current#2 ) - (byte) form_field_idx#39 ? phi( form_mode::@14/(byte) form_field_idx#52 ) - (byte) keyboard_modifiers#62 ? phi( form_mode::@14/(byte) keyboard_modifiers#86 ) - (byte) keyboard_events_size#62 ? phi( form_mode::@14/(byte) keyboard_events_size#89 ) - (signed byte) form_cursor_count#29 ? phi( form_mode::@14/(signed byte) form_cursor_count#42 ) - (byte*) print_char_cursor#52 ? phi( form_mode::@14/(byte*) print_char_cursor#60 ) - (byte*) print_line_cursor#49 ? phi( form_mode::@14/(byte*) print_line_cursor#59 ) - (byte*) print_screen#29 ? phi( form_mode::@14/(byte*) print_screen#37 ) + (byte) form_mode::preset_current#9 ← phi( form_mode::@14/(byte) form_mode::preset_current#2 ) + (byte) form_field_idx#39 ← phi( form_mode::@14/(byte) form_field_idx#52 ) + (byte) keyboard_modifiers#62 ← phi( form_mode::@14/(byte) keyboard_modifiers#86 ) + (byte) keyboard_events_size#62 ← phi( form_mode::@14/(byte) keyboard_events_size#89 ) + (signed byte) form_cursor_count#29 ← phi( form_mode::@14/(signed byte) form_cursor_count#42 ) + (byte*) print_char_cursor#52 ← phi( form_mode::@14/(byte*) print_char_cursor#60 ) + (byte*) print_line_cursor#49 ← phi( form_mode::@14/(byte*) print_line_cursor#59 ) + (byte*) print_screen#29 ← phi( form_mode::@14/(byte*) print_screen#37 ) to:form_mode::@3 form_mode::@18: scope:[form_mode] from form_mode::@14 - (byte) form_field_idx#60 ? phi( form_mode::@14/(byte) form_field_idx#52 ) - (byte) keyboard_modifiers#104 ? phi( form_mode::@14/(byte) keyboard_modifiers#86 ) - (byte) keyboard_events_size#116 ? phi( form_mode::@14/(byte) keyboard_events_size#89 ) - (signed byte) form_cursor_count#53 ? phi( form_mode::@14/(signed byte) form_cursor_count#42 ) - (byte*) print_char_cursor#71 ? phi( form_mode::@14/(byte*) print_char_cursor#60 ) - (byte*) print_line_cursor#71 ? phi( form_mode::@14/(byte*) print_line_cursor#59 ) - (byte*) print_screen#48 ? phi( form_mode::@14/(byte*) print_screen#37 ) - (byte) apply_preset::idx#0 ? *((byte*) form_preset#0) + (byte) form_field_idx#60 ← phi( form_mode::@14/(byte) form_field_idx#52 ) + (byte) keyboard_modifiers#104 ← phi( form_mode::@14/(byte) keyboard_modifiers#86 ) + (byte) keyboard_events_size#116 ← phi( form_mode::@14/(byte) keyboard_events_size#89 ) + (signed byte) form_cursor_count#53 ← phi( form_mode::@14/(signed byte) form_cursor_count#42 ) + (byte*) print_char_cursor#71 ← phi( form_mode::@14/(byte*) print_char_cursor#60 ) + (byte*) print_line_cursor#71 ← phi( form_mode::@14/(byte*) print_line_cursor#59 ) + (byte*) print_screen#48 ← phi( form_mode::@14/(byte*) print_screen#37 ) + (byte) apply_preset::idx#0 ← *((byte*) form_preset#0) call apply_preset to:form_mode::@31 form_mode::@31: scope:[form_mode] from form_mode::@18 - (byte) form_field_idx#57 ? phi( form_mode::@18/(byte) form_field_idx#60 ) - (byte) keyboard_modifiers#98 ? phi( form_mode::@18/(byte) keyboard_modifiers#104 ) - (byte) keyboard_events_size#105 ? phi( form_mode::@18/(byte) keyboard_events_size#116 ) - (signed byte) form_cursor_count#49 ? phi( form_mode::@18/(signed byte) form_cursor_count#53 ) - (byte*) print_char_cursor#68 ? phi( form_mode::@18/(byte*) print_char_cursor#71 ) - (byte*) print_line_cursor#68 ? phi( form_mode::@18/(byte*) print_line_cursor#71 ) - (byte*) print_screen#45 ? phi( form_mode::@18/(byte*) print_screen#48 ) - (byte) form_mode::preset_current#1 ? *((byte*) form_preset#0) + (byte) form_field_idx#57 ← phi( form_mode::@18/(byte) form_field_idx#60 ) + (byte) keyboard_modifiers#98 ← phi( form_mode::@18/(byte) keyboard_modifiers#104 ) + (byte) keyboard_events_size#105 ← phi( form_mode::@18/(byte) keyboard_events_size#116 ) + (signed byte) form_cursor_count#49 ← phi( form_mode::@18/(signed byte) form_cursor_count#53 ) + (byte*) print_char_cursor#68 ← phi( form_mode::@18/(byte*) print_char_cursor#71 ) + (byte*) print_line_cursor#68 ← phi( form_mode::@18/(byte*) print_line_cursor#71 ) + (byte*) print_screen#45 ← phi( form_mode::@18/(byte*) print_screen#48 ) + (byte) form_mode::preset_current#1 ← *((byte*) form_preset#0) call form_render_values to:form_mode::@32 form_mode::@32: scope:[form_mode] from form_mode::@31 - (byte) form_mode::preset_current#11 ? phi( form_mode::@31/(byte) form_mode::preset_current#1 ) - (byte) form_field_idx#53 ? phi( form_mode::@31/(byte) form_field_idx#57 ) - (byte) keyboard_modifiers#87 ? phi( form_mode::@31/(byte) keyboard_modifiers#98 ) - (byte) keyboard_events_size#90 ? phi( form_mode::@31/(byte) keyboard_events_size#105 ) - (signed byte) form_cursor_count#43 ? phi( form_mode::@31/(signed byte) form_cursor_count#49 ) - (byte*) print_char_cursor#61 ? phi( form_mode::@31/(byte*) print_char_cursor#68 ) - (byte*) print_line_cursor#60 ? phi( form_mode::@31/(byte*) print_line_cursor#68 ) - (byte*) print_screen#38 ? phi( form_mode::@31/(byte*) print_screen#45 ) - (byte) render_preset_name::idx#1 ? *((byte*) form_preset#0) + (byte) form_mode::preset_current#11 ← phi( form_mode::@31/(byte) form_mode::preset_current#1 ) + (byte) form_field_idx#53 ← phi( form_mode::@31/(byte) form_field_idx#57 ) + (byte) keyboard_modifiers#87 ← phi( form_mode::@31/(byte) keyboard_modifiers#98 ) + (byte) keyboard_events_size#90 ← phi( form_mode::@31/(byte) keyboard_events_size#105 ) + (signed byte) form_cursor_count#43 ← phi( form_mode::@31/(signed byte) form_cursor_count#49 ) + (byte*) print_char_cursor#61 ← phi( form_mode::@31/(byte*) print_char_cursor#68 ) + (byte*) print_line_cursor#60 ← phi( form_mode::@31/(byte*) print_line_cursor#68 ) + (byte*) print_screen#38 ← phi( form_mode::@31/(byte*) print_screen#45 ) + (byte) render_preset_name::idx#1 ← *((byte*) form_preset#0) call render_preset_name to:form_mode::@33 form_mode::@33: scope:[form_mode] from form_mode::@32 - (byte) form_mode::preset_current#10 ? phi( form_mode::@32/(byte) form_mode::preset_current#11 ) - (byte) form_field_idx#41 ? phi( form_mode::@32/(byte) form_field_idx#53 ) - (byte) keyboard_modifiers#64 ? phi( form_mode::@32/(byte) keyboard_modifiers#87 ) - (byte) keyboard_events_size#64 ? phi( form_mode::@32/(byte) keyboard_events_size#90 ) - (signed byte) form_cursor_count#31 ? phi( form_mode::@32/(signed byte) form_cursor_count#43 ) - (byte*) print_char_cursor#54 ? phi( form_mode::@32/(byte*) print_char_cursor#61 ) - (byte*) print_line_cursor#51 ? phi( form_mode::@32/(byte*) print_line_cursor#60 ) - (byte*) print_screen#31 ? phi( form_mode::@32/(byte*) print_screen#38 ) + (byte) form_mode::preset_current#10 ← phi( form_mode::@32/(byte) form_mode::preset_current#11 ) + (byte) form_field_idx#41 ← phi( form_mode::@32/(byte) form_field_idx#53 ) + (byte) keyboard_modifiers#64 ← phi( form_mode::@32/(byte) keyboard_modifiers#87 ) + (byte) keyboard_events_size#64 ← phi( form_mode::@32/(byte) keyboard_events_size#90 ) + (signed byte) form_cursor_count#31 ← phi( form_mode::@32/(signed byte) form_cursor_count#43 ) + (byte*) print_char_cursor#54 ← phi( form_mode::@32/(byte*) print_char_cursor#61 ) + (byte*) print_line_cursor#51 ← phi( form_mode::@32/(byte*) print_line_cursor#60 ) + (byte*) print_screen#31 ← phi( form_mode::@32/(byte*) print_screen#38 ) to:form_mode::@3 @64: scope:[] from @45 - (byte) keyboard_modifiers#77 ? phi( @45/(byte) keyboard_modifiers#88 ) - (byte) keyboard_events_size#77 ? phi( @45/(byte) keyboard_events_size#91 ) - (byte*) print_char_cursor#56 ? phi( @45/(byte*) print_char_cursor#62 ) - (byte*) print_line_cursor#53 ? phi( @45/(byte*) print_line_cursor#61 ) - (byte*) print_screen#33 ? phi( @45/(byte*) print_screen#39 ) - (byte[$19]) form_line_lo#0 ? { fill( $19, 0) } - (byte[$19]) form_line_hi#0 ? { fill( $19, 0) } - (byte) form_field_idx#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (signed byte) FORM_CURSOR_BLINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 - (signed word/signed byte/signed dword~) $68 ? (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) form_cursor_count#4 ? (signed word/signed byte/signed dword~) $68 + (byte) keyboard_modifiers#77 ← phi( @45/(byte) keyboard_modifiers#88 ) + (byte) keyboard_events_size#77 ← phi( @45/(byte) keyboard_events_size#91 ) + (byte*) print_char_cursor#56 ← phi( @45/(byte*) print_char_cursor#62 ) + (byte*) print_line_cursor#53 ← phi( @45/(byte*) print_line_cursor#61 ) + (byte*) print_screen#33 ← phi( @45/(byte*) print_screen#39 ) + (byte[$19]) form_line_lo#0 ← { fill( $19, 0) } + (byte[$19]) form_line_hi#0 ← { fill( $19, 0) } + (byte) form_field_idx#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) FORM_CURSOR_BLINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 + (signed word/signed byte/signed dword~) $68 ← (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed byte) form_cursor_count#4 ← (signed word/signed byte/signed dword~) $68 to:@68 form_set_screen: scope:[form_set_screen] from form_mode::@26 - (byte*) form_set_screen::screen#1 ? phi( form_mode::@26/(byte*) form_set_screen::screen#0 ) - (byte*) form_set_screen::line#0 ? (byte*) form_set_screen::screen#1 - (byte) form_set_screen::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) form_set_screen::screen#1 ← phi( form_mode::@26/(byte*) form_set_screen::screen#0 ) + (byte*) form_set_screen::line#0 ← (byte*) form_set_screen::screen#1 + (byte) form_set_screen::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_set_screen::@1 form_set_screen::@1: scope:[form_set_screen] from form_set_screen form_set_screen::@1 - (byte) form_set_screen::y#2 ? phi( form_set_screen/(byte) form_set_screen::y#0 form_set_screen::@1/(byte) form_set_screen::y#1 ) - (byte*) form_set_screen::line#2 ? phi( form_set_screen/(byte*) form_set_screen::line#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) - (byte~) form_set_screen::$0 ? < (byte*) form_set_screen::line#2 - *((byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$0 - (byte~) form_set_screen::$1 ? > (byte*) form_set_screen::line#2 - *((byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$1 - (byte*~) form_set_screen::$2 ? (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) form_set_screen::line#1 ? (byte*~) form_set_screen::$2 - (byte) form_set_screen::y#1 ? (byte) form_set_screen::y#2 + rangenext(0,$18) - (bool~) form_set_screen::$3 ? (byte) form_set_screen::y#1 != rangelast(0,$18) + (byte) form_set_screen::y#2 ← phi( form_set_screen/(byte) form_set_screen::y#0 form_set_screen::@1/(byte) form_set_screen::y#1 ) + (byte*) form_set_screen::line#2 ← phi( form_set_screen/(byte*) form_set_screen::line#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) + (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 + *((byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 + (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 + *((byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 + (byte*~) form_set_screen::$2 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) form_set_screen::line#1 ← (byte*~) form_set_screen::$2 + (byte) form_set_screen::y#1 ← (byte) form_set_screen::y#2 + rangenext(0,$18) + (bool~) form_set_screen::$3 ← (byte) form_set_screen::y#1 != rangelast(0,$18) if((bool~) form_set_screen::$3) goto form_set_screen::@1 to:form_set_screen::@return form_set_screen::@return: scope:[form_set_screen] from form_set_screen::@1 return to:@return form_field_ptr: scope:[form_field_ptr] from form_control form_render_values::@1 - (byte) form_field_ptr::field_idx#2 ? phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) - (byte) form_field_ptr::y#0 ? *((byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) - (byte*~) form_field_ptr::$0 ? ((byte*)) { *((byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0), *((byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) } - (byte*) form_field_ptr::line#0 ? (byte*~) form_field_ptr::$0 - (byte) form_field_ptr::x#0 ? *((byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) - (byte*~) form_field_ptr::$1 ? (byte*) form_field_ptr::line#0 + (byte) form_field_ptr::x#0 - (byte*) form_field_ptr::field#0 ? (byte*~) form_field_ptr::$1 - (byte*) form_field_ptr::return#0 ? (byte*) form_field_ptr::field#0 + (byte) form_field_ptr::field_idx#2 ← phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) + (byte) form_field_ptr::y#0 ← *((byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) + (byte*~) form_field_ptr::$0 ← ((byte*)) { *((byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0), *((byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) } + (byte*) form_field_ptr::line#0 ← (byte*~) form_field_ptr::$0 + (byte) form_field_ptr::x#0 ← *((byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) + (byte*~) form_field_ptr::$1 ← (byte*) form_field_ptr::line#0 + (byte) form_field_ptr::x#0 + (byte*) form_field_ptr::field#0 ← (byte*~) form_field_ptr::$1 + (byte*) form_field_ptr::return#0 ← (byte*) form_field_ptr::field#0 to:form_field_ptr::@return form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr - (byte*) form_field_ptr::return#4 ? phi( form_field_ptr/(byte*) form_field_ptr::return#0 ) - (byte*) form_field_ptr::return#1 ? (byte*) form_field_ptr::return#4 + (byte*) form_field_ptr::return#4 ← phi( form_field_ptr/(byte*) form_field_ptr::return#0 ) + (byte*) form_field_ptr::return#1 ← (byte*) form_field_ptr::return#4 return to:@return form_render_values: scope:[form_render_values] from form_mode::@27 form_mode::@31 - (byte) form_render_values::idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) form_render_values::idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_render_values::@1 form_render_values::@1: scope:[form_render_values] from form_render_values form_render_values::@3 - (byte) form_render_values::idx#2 ? phi( form_render_values/(byte) form_render_values::idx#0 form_render_values::@3/(byte) form_render_values::idx#1 ) - (byte) form_field_ptr::field_idx#0 ? (byte) form_render_values::idx#2 + (byte) form_render_values::idx#2 ← phi( form_render_values/(byte) form_render_values::idx#0 form_render_values::@3/(byte) form_render_values::idx#1 ) + (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 call form_field_ptr - (byte*) form_field_ptr::return#2 ? (byte*) form_field_ptr::return#1 + (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#1 to:form_render_values::@3 form_render_values::@3: scope:[form_render_values] from form_render_values::@1 - (byte) form_render_values::idx#3 ? phi( form_render_values::@1/(byte) form_render_values::idx#2 ) - (byte*) form_field_ptr::return#5 ? phi( form_render_values::@1/(byte*) form_field_ptr::return#2 ) - (byte*~) form_render_values::$0 ? (byte*) form_field_ptr::return#5 - (byte*) form_render_values::field#0 ? (byte*~) form_render_values::$0 - *((byte*) form_render_values::field#0) ? *((byte[]) print_hextab#0 + *((byte[]) form_fields_val#0 + (byte) form_render_values::idx#3)) - (byte) form_render_values::idx#1 ? ++ (byte) form_render_values::idx#3 - (bool~) form_render_values::$1 ? (byte) form_render_values::idx#1 < (byte) form_fields_cnt#0 + (byte) form_render_values::idx#3 ← phi( form_render_values::@1/(byte) form_render_values::idx#2 ) + (byte*) form_field_ptr::return#5 ← phi( form_render_values::@1/(byte*) form_field_ptr::return#2 ) + (byte*~) form_render_values::$0 ← (byte*) form_field_ptr::return#5 + (byte*) form_render_values::field#0 ← (byte*~) form_render_values::$0 + *((byte*) form_render_values::field#0) ← *((byte[]) print_hextab#0 + *((byte[]) form_fields_val#0 + (byte) form_render_values::idx#3)) + (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#3 + (bool~) form_render_values::$1 ← (byte) form_render_values::idx#1 < (byte) form_fields_cnt#0 if((bool~) form_render_values::$1) goto form_render_values::@1 to:form_render_values::@return form_render_values::@return: scope:[form_render_values] from form_render_values::@3 return to:@return form_control: scope:[form_control] from form_mode::@8 - (byte) keyboard_modifiers#105 ? phi( form_mode::@8/(byte) keyboard_modifiers#44 ) - (byte) keyboard_events_size#117 ? phi( form_mode::@8/(byte) keyboard_events_size#46 ) - (signed byte) form_cursor_count#22 ? phi( form_mode::@8/(signed byte) form_cursor_count#20 ) - (byte) form_field_idx#15 ? phi( form_mode::@8/(byte) form_field_idx#27 ) - (byte) form_field_ptr::field_idx#1 ? (byte) form_field_idx#15 + (byte) keyboard_modifiers#105 ← phi( form_mode::@8/(byte) keyboard_modifiers#44 ) + (byte) keyboard_events_size#117 ← phi( form_mode::@8/(byte) keyboard_events_size#46 ) + (signed byte) form_cursor_count#22 ← phi( form_mode::@8/(signed byte) form_cursor_count#20 ) + (byte) form_field_idx#15 ← phi( form_mode::@8/(byte) form_field_idx#27 ) + (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#15 call form_field_ptr - (byte*) form_field_ptr::return#3 ? (byte*) form_field_ptr::return#1 + (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#1 to:form_control::@33 form_control::@33: scope:[form_control] from form_control - (byte) form_field_idx#66 ? phi( form_control/(byte) form_field_idx#15 ) - (byte) keyboard_modifiers#99 ? phi( form_control/(byte) keyboard_modifiers#105 ) - (byte) keyboard_events_size#106 ? phi( form_control/(byte) keyboard_events_size#117 ) - (signed byte) form_cursor_count#14 ? phi( form_control/(signed byte) form_cursor_count#22 ) - (byte*) form_field_ptr::return#6 ? phi( form_control/(byte*) form_field_ptr::return#3 ) - (byte*~) form_control::$0 ? (byte*) form_field_ptr::return#6 - (byte*) form_control::field#0 ? (byte*~) form_control::$0 - (signed byte) form_cursor_count#5 ? -- (signed byte) form_cursor_count#14 - (bool~) form_control::$1 ? (signed byte) form_cursor_count#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) form_control::$2 ? ! (bool~) form_control::$1 + (byte) form_field_idx#66 ← phi( form_control/(byte) form_field_idx#15 ) + (byte) keyboard_modifiers#99 ← phi( form_control/(byte) keyboard_modifiers#105 ) + (byte) keyboard_events_size#106 ← phi( form_control/(byte) keyboard_events_size#117 ) + (signed byte) form_cursor_count#14 ← phi( form_control/(signed byte) form_cursor_count#22 ) + (byte*) form_field_ptr::return#6 ← phi( form_control/(byte*) form_field_ptr::return#3 ) + (byte*~) form_control::$0 ← (byte*) form_field_ptr::return#6 + (byte*) form_control::field#0 ← (byte*~) form_control::$0 + (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#14 + (bool~) form_control::$1 ← (signed byte) form_cursor_count#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) form_control::$2 ← ! (bool~) form_control::$1 if((bool~) form_control::$2) goto form_control::@1 to:form_control::@7 form_control::@1: scope:[form_control] from form_control::@33 form_control::@7 - (byte) form_field_idx#64 ? phi( form_control::@33/(byte) form_field_idx#66 form_control::@7/(byte) form_field_idx#67 ) - (byte) keyboard_modifiers#89 ? phi( form_control::@33/(byte) keyboard_modifiers#99 form_control::@7/(byte) keyboard_modifiers#100 ) - (byte) keyboard_events_size#92 ? phi( form_control::@33/(byte) keyboard_events_size#106 form_control::@7/(byte) keyboard_events_size#107 ) - (byte*) form_control::field#5 ? phi( form_control::@33/(byte*) form_control::field#0 form_control::@7/(byte*) form_control::field#11 ) - (signed byte) form_cursor_count#15 ? phi( form_control::@33/(signed byte) form_cursor_count#5 form_control::@7/(signed byte) form_cursor_count#6 ) - (signed word/signed byte/signed dword~) form_control::$3 ? (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool~) form_control::$4 ? (signed byte) form_cursor_count#15 < (signed word/signed byte/signed dword~) form_control::$3 + (byte) form_field_idx#64 ← phi( form_control::@33/(byte) form_field_idx#66 form_control::@7/(byte) form_field_idx#67 ) + (byte) keyboard_modifiers#89 ← phi( form_control::@33/(byte) keyboard_modifiers#99 form_control::@7/(byte) keyboard_modifiers#100 ) + (byte) keyboard_events_size#92 ← phi( form_control::@33/(byte) keyboard_events_size#106 form_control::@7/(byte) keyboard_events_size#107 ) + (byte*) form_control::field#5 ← phi( form_control::@33/(byte*) form_control::field#0 form_control::@7/(byte*) form_control::field#11 ) + (signed byte) form_cursor_count#15 ← phi( form_control::@33/(signed byte) form_cursor_count#5 form_control::@7/(signed byte) form_cursor_count#6 ) + (signed word/signed byte/signed dword~) form_control::$3 ← (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool~) form_control::$4 ← (signed byte) form_cursor_count#15 < (signed word/signed byte/signed dword~) form_control::$3 if((bool~) form_control::$4) goto form_control::@2 to:form_control::@8 form_control::@7: scope:[form_control] from form_control::@33 - (byte) form_field_idx#67 ? phi( form_control::@33/(byte) form_field_idx#66 ) - (byte) keyboard_modifiers#100 ? phi( form_control::@33/(byte) keyboard_modifiers#99 ) - (byte) keyboard_events_size#107 ? phi( form_control::@33/(byte) keyboard_events_size#106 ) - (byte*) form_control::field#11 ? phi( form_control::@33/(byte*) form_control::field#0 ) - (signed byte) form_cursor_count#6 ? (signed byte) FORM_CURSOR_BLINK#0 + (byte) form_field_idx#67 ← phi( form_control::@33/(byte) form_field_idx#66 ) + (byte) keyboard_modifiers#100 ← phi( form_control::@33/(byte) keyboard_modifiers#99 ) + (byte) keyboard_events_size#107 ← phi( form_control::@33/(byte) keyboard_events_size#106 ) + (byte*) form_control::field#11 ← phi( form_control::@33/(byte*) form_control::field#0 ) + (signed byte) form_cursor_count#6 ← (signed byte) FORM_CURSOR_BLINK#0 to:form_control::@1 form_control::@2: scope:[form_control] from form_control::@1 - (signed byte) form_cursor_count#58 ? phi( form_control::@1/(signed byte) form_cursor_count#15 ) - (byte) form_field_idx#61 ? phi( form_control::@1/(byte) form_field_idx#64 ) - (byte) keyboard_modifiers#66 ? phi( form_control::@1/(byte) keyboard_modifiers#89 ) - (byte) keyboard_events_size#66 ? phi( form_control::@1/(byte) keyboard_events_size#92 ) - (byte*) form_control::field#1 ? phi( form_control::@1/(byte*) form_control::field#5 ) - (byte/word/dword~) form_control::$14 ? *((byte*) form_control::field#1) | (byte/word/signed word/dword/signed dword) $80 - *((byte*) form_control::field#1) ? (byte/word/dword~) form_control::$14 + (signed byte) form_cursor_count#58 ← phi( form_control::@1/(signed byte) form_cursor_count#15 ) + (byte) form_field_idx#61 ← phi( form_control::@1/(byte) form_field_idx#64 ) + (byte) keyboard_modifiers#66 ← phi( form_control::@1/(byte) keyboard_modifiers#89 ) + (byte) keyboard_events_size#66 ← phi( form_control::@1/(byte) keyboard_events_size#92 ) + (byte*) form_control::field#1 ← phi( form_control::@1/(byte*) form_control::field#5 ) + (byte/word/dword~) form_control::$14 ← *((byte*) form_control::field#1) | (byte/word/signed word/dword/signed dword) $80 + *((byte*) form_control::field#1) ← (byte/word/dword~) form_control::$14 to:form_control::@3 form_control::@8: scope:[form_control] from form_control::@1 - (signed byte) form_cursor_count#59 ? phi( form_control::@1/(signed byte) form_cursor_count#15 ) - (byte) form_field_idx#62 ? phi( form_control::@1/(byte) form_field_idx#64 ) - (byte) keyboard_modifiers#67 ? phi( form_control::@1/(byte) keyboard_modifiers#89 ) - (byte) keyboard_events_size#67 ? phi( form_control::@1/(byte) keyboard_events_size#92 ) - (byte*) form_control::field#2 ? phi( form_control::@1/(byte*) form_control::field#5 ) - (byte~) form_control::$13 ? *((byte*) form_control::field#2) & (byte/signed byte/word/signed word/dword/signed dword) $7f - *((byte*) form_control::field#2) ? (byte~) form_control::$13 + (signed byte) form_cursor_count#59 ← phi( form_control::@1/(signed byte) form_cursor_count#15 ) + (byte) form_field_idx#62 ← phi( form_control::@1/(byte) form_field_idx#64 ) + (byte) keyboard_modifiers#67 ← phi( form_control::@1/(byte) keyboard_modifiers#89 ) + (byte) keyboard_events_size#67 ← phi( form_control::@1/(byte) keyboard_events_size#92 ) + (byte*) form_control::field#2 ← phi( form_control::@1/(byte*) form_control::field#5 ) + (byte~) form_control::$13 ← *((byte*) form_control::field#2) & (byte/signed byte/word/signed word/dword/signed dword) $7f + *((byte*) form_control::field#2) ← (byte~) form_control::$13 to:form_control::@3 form_control::@3: scope:[form_control] from form_control::@2 form_control::@8 - (signed byte) form_cursor_count#56 ? phi( form_control::@2/(signed byte) form_cursor_count#58 form_control::@8/(signed byte) form_cursor_count#59 ) - (byte) form_field_idx#58 ? phi( form_control::@2/(byte) form_field_idx#61 form_control::@8/(byte) form_field_idx#62 ) - (byte*) form_control::field#15 ? phi( form_control::@2/(byte*) form_control::field#1 form_control::@8/(byte*) form_control::field#2 ) - (byte) keyboard_modifiers#46 ? phi( form_control::@2/(byte) keyboard_modifiers#66 form_control::@8/(byte) keyboard_modifiers#67 ) - (byte) keyboard_events_size#48 ? phi( form_control::@2/(byte) keyboard_events_size#66 form_control::@8/(byte) keyboard_events_size#67 ) + (signed byte) form_cursor_count#56 ← phi( form_control::@2/(signed byte) form_cursor_count#58 form_control::@8/(signed byte) form_cursor_count#59 ) + (byte) form_field_idx#58 ← phi( form_control::@2/(byte) form_field_idx#61 form_control::@8/(byte) form_field_idx#62 ) + (byte*) form_control::field#15 ← phi( form_control::@2/(byte*) form_control::field#1 form_control::@8/(byte*) form_control::field#2 ) + (byte) keyboard_modifiers#46 ← phi( form_control::@2/(byte) keyboard_modifiers#66 form_control::@8/(byte) keyboard_modifiers#67 ) + (byte) keyboard_events_size#48 ← phi( form_control::@2/(byte) keyboard_events_size#66 form_control::@8/(byte) keyboard_events_size#67 ) call keyboard_event_scan to:form_control::@34 form_control::@34: scope:[form_control] from form_control::@3 - (signed byte) form_cursor_count#54 ? phi( form_control::@3/(signed byte) form_cursor_count#56 ) - (byte) form_field_idx#54 ? phi( form_control::@3/(byte) form_field_idx#58 ) - (byte*) form_control::field#12 ? phi( form_control::@3/(byte*) form_control::field#15 ) - (byte) keyboard_modifiers#29 ? phi( form_control::@3/(byte) keyboard_modifiers#6 ) - (byte) keyboard_events_size#33 ? phi( form_control::@3/(byte) keyboard_events_size#3 ) - (byte) keyboard_events_size#14 ? (byte) keyboard_events_size#33 - (byte) keyboard_modifiers#14 ? (byte) keyboard_modifiers#29 + (signed byte) form_cursor_count#54 ← phi( form_control::@3/(signed byte) form_cursor_count#56 ) + (byte) form_field_idx#54 ← phi( form_control::@3/(byte) form_field_idx#58 ) + (byte*) form_control::field#12 ← phi( form_control::@3/(byte*) form_control::field#15 ) + (byte) keyboard_modifiers#29 ← phi( form_control::@3/(byte) keyboard_modifiers#6 ) + (byte) keyboard_events_size#33 ← phi( form_control::@3/(byte) keyboard_events_size#3 ) + (byte) keyboard_events_size#14 ← (byte) keyboard_events_size#33 + (byte) keyboard_modifiers#14 ← (byte) keyboard_modifiers#29 call keyboard_event_get - (byte) keyboard_event_get::return#4 ? (byte) keyboard_event_get::return#2 + (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 to:form_control::@35 form_control::@35: scope:[form_control] from form_control::@34 - (signed byte) form_cursor_count#50 ? phi( form_control::@34/(signed byte) form_cursor_count#54 ) - (byte) form_field_idx#43 ? phi( form_control::@34/(byte) form_field_idx#54 ) - (byte) keyboard_modifiers#47 ? phi( form_control::@34/(byte) keyboard_modifiers#14 ) - (byte*) form_control::field#6 ? phi( form_control::@34/(byte*) form_control::field#12 ) - (byte) keyboard_events_size#34 ? phi( form_control::@34/(byte) keyboard_events_size#5 ) - (byte) keyboard_event_get::return#7 ? phi( form_control::@34/(byte) keyboard_event_get::return#4 ) - (byte~) form_control::$6 ? (byte) keyboard_event_get::return#7 - (byte) keyboard_events_size#15 ? (byte) keyboard_events_size#34 - (byte) form_control::key_event#0 ? (byte~) form_control::$6 - (bool~) form_control::$7 ? (byte) form_control::key_event#0 == (byte) KEY_CRSR_DOWN#0 - (bool~) form_control::$8 ? ! (bool~) form_control::$7 + (signed byte) form_cursor_count#50 ← phi( form_control::@34/(signed byte) form_cursor_count#54 ) + (byte) form_field_idx#43 ← phi( form_control::@34/(byte) form_field_idx#54 ) + (byte) keyboard_modifiers#47 ← phi( form_control::@34/(byte) keyboard_modifiers#14 ) + (byte*) form_control::field#6 ← phi( form_control::@34/(byte*) form_control::field#12 ) + (byte) keyboard_events_size#34 ← phi( form_control::@34/(byte) keyboard_events_size#5 ) + (byte) keyboard_event_get::return#7 ← phi( form_control::@34/(byte) keyboard_event_get::return#4 ) + (byte~) form_control::$6 ← (byte) keyboard_event_get::return#7 + (byte) keyboard_events_size#15 ← (byte) keyboard_events_size#34 + (byte) form_control::key_event#0 ← (byte~) form_control::$6 + (bool~) form_control::$7 ← (byte) form_control::key_event#0 == (byte) KEY_CRSR_DOWN#0 + (bool~) form_control::$8 ← ! (bool~) form_control::$7 if((bool~) form_control::$8) goto form_control::@4 to:form_control::@10 form_control::@4: scope:[form_control] from form_control::@35 - (byte*) form_control::field#17 ? phi( form_control::@35/(byte*) form_control::field#6 ) - (byte) keyboard_events_size#95 ? phi( form_control::@35/(byte) keyboard_events_size#15 ) - (signed byte) form_cursor_count#44 ? phi( form_control::@35/(signed byte) form_cursor_count#50 ) - (byte) form_field_idx#46 ? phi( form_control::@35/(byte) form_field_idx#43 ) - (byte) keyboard_modifiers#52 ? phi( form_control::@35/(byte) keyboard_modifiers#47 ) - (byte) form_control::key_event#1 ? phi( form_control::@35/(byte) form_control::key_event#0 ) - (bool~) form_control::$9 ? (byte) form_control::key_event#1 == (byte) KEY_CRSR_RIGHT#0 - (bool~) form_control::$10 ? ! (bool~) form_control::$9 + (byte*) form_control::field#17 ← phi( form_control::@35/(byte*) form_control::field#6 ) + (byte) keyboard_events_size#95 ← phi( form_control::@35/(byte) keyboard_events_size#15 ) + (signed byte) form_cursor_count#44 ← phi( form_control::@35/(signed byte) form_cursor_count#50 ) + (byte) form_field_idx#46 ← phi( form_control::@35/(byte) form_field_idx#43 ) + (byte) keyboard_modifiers#52 ← phi( form_control::@35/(byte) keyboard_modifiers#47 ) + (byte) form_control::key_event#1 ← phi( form_control::@35/(byte) form_control::key_event#0 ) + (bool~) form_control::$9 ← (byte) form_control::key_event#1 == (byte) KEY_CRSR_RIGHT#0 + (bool~) form_control::$10 ← ! (bool~) form_control::$9 if((bool~) form_control::$10) goto form_control::@5 to:form_control::@13 form_control::@10: scope:[form_control] from form_control::@35 - (byte) keyboard_events_size#108 ? phi( form_control::@35/(byte) keyboard_events_size#15 ) - (byte) form_field_idx#29 ? phi( form_control::@35/(byte) form_field_idx#43 ) - (byte) keyboard_modifiers#30 ? phi( form_control::@35/(byte) keyboard_modifiers#47 ) - (byte*) form_control::field#3 ? phi( form_control::@35/(byte*) form_control::field#6 ) - (byte~) form_control::$15 ? *((byte*) form_control::field#3) & (byte/signed byte/word/signed word/dword/signed dword) $7f - *((byte*) form_control::field#3) ? (byte~) form_control::$15 - (byte~) form_control::$16 ? (byte) keyboard_modifiers#30 & (byte) KEY_MODIFIER_SHIFT#0 - (bool~) form_control::$17 ? (byte~) form_control::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#108 ← phi( form_control::@35/(byte) keyboard_events_size#15 ) + (byte) form_field_idx#29 ← phi( form_control::@35/(byte) form_field_idx#43 ) + (byte) keyboard_modifiers#30 ← phi( form_control::@35/(byte) keyboard_modifiers#47 ) + (byte*) form_control::field#3 ← phi( form_control::@35/(byte*) form_control::field#6 ) + (byte~) form_control::$15 ← *((byte*) form_control::field#3) & (byte/signed byte/word/signed word/dword/signed dword) $7f + *((byte*) form_control::field#3) ← (byte~) form_control::$15 + (byte~) form_control::$16 ← (byte) keyboard_modifiers#30 & (byte) KEY_MODIFIER_SHIFT#0 + (bool~) form_control::$17 ← (byte~) form_control::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) form_control::$17) goto form_control::@19 to:form_control::@11 form_control::@19: scope:[form_control] from form_control::@10 - (byte) keyboard_modifiers#91 ? phi( form_control::@10/(byte) keyboard_modifiers#30 ) - (byte) keyboard_events_size#94 ? phi( form_control::@10/(byte) keyboard_events_size#108 ) - (byte) form_field_idx#16 ? phi( form_control::@10/(byte) form_field_idx#29 ) - (byte) form_field_idx#5 ? ++ (byte) form_field_idx#16 - (bool~) form_control::$21 ? (byte) form_field_idx#5 == (byte) form_fields_cnt#0 - (bool~) form_control::$22 ? ! (bool~) form_control::$21 + (byte) keyboard_modifiers#91 ← phi( form_control::@10/(byte) keyboard_modifiers#30 ) + (byte) keyboard_events_size#94 ← phi( form_control::@10/(byte) keyboard_events_size#108 ) + (byte) form_field_idx#16 ← phi( form_control::@10/(byte) form_field_idx#29 ) + (byte) form_field_idx#5 ← ++ (byte) form_field_idx#16 + (bool~) form_control::$21 ← (byte) form_field_idx#5 == (byte) form_fields_cnt#0 + (bool~) form_control::$22 ← ! (bool~) form_control::$21 if((bool~) form_control::$22) goto form_control::@23 to:form_control::@24 form_control::@11: scope:[form_control] from form_control::@10 - (byte) keyboard_modifiers#90 ? phi( form_control::@10/(byte) keyboard_modifiers#30 ) - (byte) keyboard_events_size#93 ? phi( form_control::@10/(byte) keyboard_events_size#108 ) - (byte) form_field_idx#17 ? phi( form_control::@10/(byte) form_field_idx#29 ) - (byte) form_field_idx#6 ? -- (byte) form_field_idx#17 - (bool~) form_control::$18 ? (byte) form_field_idx#6 == (byte/word/signed word/dword/signed dword) $ff - (bool~) form_control::$19 ? ! (bool~) form_control::$18 + (byte) keyboard_modifiers#90 ← phi( form_control::@10/(byte) keyboard_modifiers#30 ) + (byte) keyboard_events_size#93 ← phi( form_control::@10/(byte) keyboard_events_size#108 ) + (byte) form_field_idx#17 ← phi( form_control::@10/(byte) form_field_idx#29 ) + (byte) form_field_idx#6 ← -- (byte) form_field_idx#17 + (bool~) form_control::$18 ← (byte) form_field_idx#6 == (byte/word/signed word/dword/signed dword) $ff + (bool~) form_control::$19 ← ! (bool~) form_control::$18 if((bool~) form_control::$19) goto form_control::@20 to:form_control::@12 form_control::@20: scope:[form_control] from form_control::@11 - (byte) form_field_idx#44 ? phi( form_control::@11/(byte) form_field_idx#6 ) - (byte) keyboard_modifiers#69 ? phi( form_control::@11/(byte) keyboard_modifiers#90 ) - (byte) keyboard_events_size#69 ? phi( form_control::@11/(byte) keyboard_events_size#93 ) + (byte) form_field_idx#44 ← phi( form_control::@11/(byte) form_field_idx#6 ) + (byte) keyboard_modifiers#69 ← phi( form_control::@11/(byte) keyboard_modifiers#90 ) + (byte) keyboard_events_size#69 ← phi( form_control::@11/(byte) keyboard_events_size#93 ) to:form_control::@22 form_control::@12: scope:[form_control] from form_control::@11 - (byte) keyboard_modifiers#68 ? phi( form_control::@11/(byte) keyboard_modifiers#90 ) - (byte) keyboard_events_size#68 ? phi( form_control::@11/(byte) keyboard_events_size#93 ) - (byte/signed word/word/dword/signed dword~) form_control::$20 ? (byte) form_fields_cnt#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) form_field_idx#7 ? (byte/signed word/word/dword/signed dword~) form_control::$20 + (byte) keyboard_modifiers#68 ← phi( form_control::@11/(byte) keyboard_modifiers#90 ) + (byte) keyboard_events_size#68 ← phi( form_control::@11/(byte) keyboard_events_size#93 ) + (byte/signed word/word/dword/signed dword~) form_control::$20 ← (byte) form_fields_cnt#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) form_field_idx#7 ← (byte/signed word/word/dword/signed dword~) form_control::$20 to:form_control::@22 form_control::@22: scope:[form_control] from form_control::@12 form_control::@20 form_control::@23 form_control::@24 - (byte) form_field_idx#31 ? phi( form_control::@12/(byte) form_field_idx#7 form_control::@20/(byte) form_field_idx#44 form_control::@23/(byte) form_field_idx#45 form_control::@24/(byte) form_field_idx#8 ) - (byte) keyboard_modifiers#49 ? phi( form_control::@12/(byte) keyboard_modifiers#68 form_control::@20/(byte) keyboard_modifiers#69 form_control::@23/(byte) keyboard_modifiers#70 form_control::@24/(byte) keyboard_modifiers#71 ) - (byte) keyboard_events_size#50 ? phi( form_control::@12/(byte) keyboard_events_size#68 form_control::@20/(byte) keyboard_events_size#69 form_control::@23/(byte) keyboard_events_size#70 form_control::@24/(byte) keyboard_events_size#71 ) - (signed word/signed byte/signed dword~) form_control::$23 ? (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) form_cursor_count#7 ? (signed word/signed byte/signed dword~) form_control::$23 - (byte) form_control::return#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) form_field_idx#31 ← phi( form_control::@12/(byte) form_field_idx#7 form_control::@20/(byte) form_field_idx#44 form_control::@23/(byte) form_field_idx#45 form_control::@24/(byte) form_field_idx#8 ) + (byte) keyboard_modifiers#49 ← phi( form_control::@12/(byte) keyboard_modifiers#68 form_control::@20/(byte) keyboard_modifiers#69 form_control::@23/(byte) keyboard_modifiers#70 form_control::@24/(byte) keyboard_modifiers#71 ) + (byte) keyboard_events_size#50 ← phi( form_control::@12/(byte) keyboard_events_size#68 form_control::@20/(byte) keyboard_events_size#69 form_control::@23/(byte) keyboard_events_size#70 form_control::@24/(byte) keyboard_events_size#71 ) + (signed word/signed byte/signed dword~) form_control::$23 ← (signed byte) FORM_CURSOR_BLINK#0 / (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed byte) form_cursor_count#7 ← (signed word/signed byte/signed dword~) form_control::$23 + (byte) form_control::return#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@return form_control::@23: scope:[form_control] from form_control::@19 - (byte) form_field_idx#45 ? phi( form_control::@19/(byte) form_field_idx#5 ) - (byte) keyboard_modifiers#70 ? phi( form_control::@19/(byte) keyboard_modifiers#91 ) - (byte) keyboard_events_size#70 ? phi( form_control::@19/(byte) keyboard_events_size#94 ) + (byte) form_field_idx#45 ← phi( form_control::@19/(byte) form_field_idx#5 ) + (byte) keyboard_modifiers#70 ← phi( form_control::@19/(byte) keyboard_modifiers#91 ) + (byte) keyboard_events_size#70 ← phi( form_control::@19/(byte) keyboard_events_size#94 ) to:form_control::@22 form_control::@24: scope:[form_control] from form_control::@19 - (byte) keyboard_modifiers#71 ? phi( form_control::@19/(byte) keyboard_modifiers#91 ) - (byte) keyboard_events_size#71 ? phi( form_control::@19/(byte) keyboard_events_size#94 ) - (byte) form_field_idx#8 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#71 ← phi( form_control::@19/(byte) keyboard_modifiers#91 ) + (byte) keyboard_events_size#71 ← phi( form_control::@19/(byte) keyboard_events_size#94 ) + (byte) form_field_idx#8 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@22 form_control::@return: scope:[form_control] from form_control::@16 form_control::@22 form_control::@29 form_control::@6 - (byte) form_field_idx#18 ? phi( form_control::@16/(byte) form_field_idx#30 form_control::@22/(byte) form_field_idx#31 form_control::@29/(byte) form_field_idx#22 form_control::@6/(byte) form_field_idx#32 ) - (byte) keyboard_modifiers#31 ? phi( form_control::@16/(byte) keyboard_modifiers#48 form_control::@22/(byte) keyboard_modifiers#49 form_control::@29/(byte) keyboard_modifiers#50 form_control::@6/(byte) keyboard_modifiers#51 ) - (byte) keyboard_events_size#35 ? phi( form_control::@16/(byte) keyboard_events_size#49 form_control::@22/(byte) keyboard_events_size#50 form_control::@29/(byte) keyboard_events_size#51 form_control::@6/(byte) keyboard_events_size#52 ) - (signed byte) form_cursor_count#16 ? phi( form_control::@16/(signed byte) form_cursor_count#23 form_control::@22/(signed byte) form_cursor_count#7 form_control::@29/(signed byte) form_cursor_count#24 form_control::@6/(signed byte) form_cursor_count#25 ) - (byte) form_control::return#7 ? phi( form_control::@16/(byte) form_control::return#5 form_control::@22/(byte) form_control::return#1 form_control::@29/(byte) form_control::return#3 form_control::@6/(byte) form_control::return#4 ) - (byte) form_control::return#2 ? (byte) form_control::return#7 - (signed byte) form_cursor_count#8 ? (signed byte) form_cursor_count#16 - (byte) keyboard_events_size#16 ? (byte) keyboard_events_size#35 - (byte) keyboard_modifiers#15 ? (byte) keyboard_modifiers#31 - (byte) form_field_idx#9 ? (byte) form_field_idx#18 + (byte) form_field_idx#18 ← phi( form_control::@16/(byte) form_field_idx#30 form_control::@22/(byte) form_field_idx#31 form_control::@29/(byte) form_field_idx#22 form_control::@6/(byte) form_field_idx#32 ) + (byte) keyboard_modifiers#31 ← phi( form_control::@16/(byte) keyboard_modifiers#48 form_control::@22/(byte) keyboard_modifiers#49 form_control::@29/(byte) keyboard_modifiers#50 form_control::@6/(byte) keyboard_modifiers#51 ) + (byte) keyboard_events_size#35 ← phi( form_control::@16/(byte) keyboard_events_size#49 form_control::@22/(byte) keyboard_events_size#50 form_control::@29/(byte) keyboard_events_size#51 form_control::@6/(byte) keyboard_events_size#52 ) + (signed byte) form_cursor_count#16 ← phi( form_control::@16/(signed byte) form_cursor_count#23 form_control::@22/(signed byte) form_cursor_count#7 form_control::@29/(signed byte) form_cursor_count#24 form_control::@6/(signed byte) form_cursor_count#25 ) + (byte) form_control::return#7 ← phi( form_control::@16/(byte) form_control::return#5 form_control::@22/(byte) form_control::return#1 form_control::@29/(byte) form_control::return#3 form_control::@6/(byte) form_control::return#4 ) + (byte) form_control::return#2 ← (byte) form_control::return#7 + (signed byte) form_cursor_count#8 ← (signed byte) form_cursor_count#16 + (byte) keyboard_events_size#16 ← (byte) keyboard_events_size#35 + (byte) keyboard_modifiers#15 ← (byte) keyboard_modifiers#31 + (byte) form_field_idx#9 ← (byte) form_field_idx#18 return to:@return form_control::@5: scope:[form_control] from form_control::@4 - (byte) form_field_idx#47 ? phi( form_control::@4/(byte) form_field_idx#46 ) - (byte) keyboard_modifiers#76 ? phi( form_control::@4/(byte) keyboard_modifiers#52 ) - (byte) keyboard_events_size#76 ? phi( form_control::@4/(byte) keyboard_events_size#95 ) - (signed byte) form_cursor_count#37 ? phi( form_control::@4/(signed byte) form_cursor_count#44 ) - (byte) form_control::key_event#2 ? phi( form_control::@4/(byte) form_control::key_event#1 ) - (bool~) form_control::$11 ? (byte) form_control::key_event#2 == (byte) KEY_SPACE#0 - (bool~) form_control::$12 ? ! (bool~) form_control::$11 + (byte) form_field_idx#47 ← phi( form_control::@4/(byte) form_field_idx#46 ) + (byte) keyboard_modifiers#76 ← phi( form_control::@4/(byte) keyboard_modifiers#52 ) + (byte) keyboard_events_size#76 ← phi( form_control::@4/(byte) keyboard_events_size#95 ) + (signed byte) form_cursor_count#37 ← phi( form_control::@4/(signed byte) form_cursor_count#44 ) + (byte) form_control::key_event#2 ← phi( form_control::@4/(byte) form_control::key_event#1 ) + (bool~) form_control::$11 ← (byte) form_control::key_event#2 == (byte) KEY_SPACE#0 + (bool~) form_control::$12 ← ! (bool~) form_control::$11 if((bool~) form_control::$12) goto form_control::@6 to:form_control::@16 form_control::@13: scope:[form_control] from form_control::@4 - (byte) keyboard_events_size#109 ? phi( form_control::@4/(byte) keyboard_events_size#95 ) - (signed byte) form_cursor_count#51 ? phi( form_control::@4/(signed byte) form_cursor_count#44 ) - (byte*) form_control::field#16 ? phi( form_control::@4/(byte*) form_control::field#17 ) - (byte) form_field_idx#33 ? phi( form_control::@4/(byte) form_field_idx#46 ) - (byte) keyboard_modifiers#32 ? phi( form_control::@4/(byte) keyboard_modifiers#52 ) - (byte~) form_control::$24 ? (byte) keyboard_modifiers#32 & (byte) KEY_MODIFIER_SHIFT#0 - (bool~) form_control::$25 ? (byte~) form_control::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#109 ← phi( form_control::@4/(byte) keyboard_events_size#95 ) + (signed byte) form_cursor_count#51 ← phi( form_control::@4/(signed byte) form_cursor_count#44 ) + (byte*) form_control::field#16 ← phi( form_control::@4/(byte*) form_control::field#17 ) + (byte) form_field_idx#33 ← phi( form_control::@4/(byte) form_field_idx#46 ) + (byte) keyboard_modifiers#32 ← phi( form_control::@4/(byte) keyboard_modifiers#52 ) + (byte~) form_control::$24 ← (byte) keyboard_modifiers#32 & (byte) KEY_MODIFIER_SHIFT#0 + (bool~) form_control::$25 ← (byte~) form_control::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) form_control::$25) goto form_control::@26 to:form_control::@14 form_control::@26: scope:[form_control] from form_control::@13 - (byte) keyboard_modifiers#93 ? phi( form_control::@13/(byte) keyboard_modifiers#32 ) - (byte) keyboard_events_size#97 ? phi( form_control::@13/(byte) keyboard_events_size#109 ) - (signed byte) form_cursor_count#46 ? phi( form_control::@13/(signed byte) form_cursor_count#51 ) - (byte*) form_control::field#14 ? phi( form_control::@13/(byte*) form_control::field#16 ) - (byte) form_field_idx#19 ? phi( form_control::@13/(byte) form_field_idx#33 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) ? ++ *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) - (bool~) form_control::$28 ? *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#19) - (bool~) form_control::$29 ? ! (bool~) form_control::$28 + (byte) keyboard_modifiers#93 ← phi( form_control::@13/(byte) keyboard_modifiers#32 ) + (byte) keyboard_events_size#97 ← phi( form_control::@13/(byte) keyboard_events_size#109 ) + (signed byte) form_cursor_count#46 ← phi( form_control::@13/(signed byte) form_cursor_count#51 ) + (byte*) form_control::field#14 ← phi( form_control::@13/(byte*) form_control::field#16 ) + (byte) form_field_idx#19 ← phi( form_control::@13/(byte) form_field_idx#33 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) ← ++ *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) + (bool~) form_control::$28 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#19) + (bool~) form_control::$29 ← ! (bool~) form_control::$28 if((bool~) form_control::$29) goto form_control::@30 to:form_control::@31 form_control::@14: scope:[form_control] from form_control::@13 - (byte) keyboard_modifiers#92 ? phi( form_control::@13/(byte) keyboard_modifiers#32 ) - (byte) keyboard_events_size#96 ? phi( form_control::@13/(byte) keyboard_events_size#109 ) - (signed byte) form_cursor_count#45 ? phi( form_control::@13/(signed byte) form_cursor_count#51 ) - (byte*) form_control::field#13 ? phi( form_control::@13/(byte*) form_control::field#16 ) - (byte) form_field_idx#20 ? phi( form_control::@13/(byte) form_field_idx#33 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) ? -- *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) - (bool~) form_control::$26 ? *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) == (byte/word/signed word/dword/signed dword) $ff - (bool~) form_control::$27 ? ! (bool~) form_control::$26 + (byte) keyboard_modifiers#92 ← phi( form_control::@13/(byte) keyboard_modifiers#32 ) + (byte) keyboard_events_size#96 ← phi( form_control::@13/(byte) keyboard_events_size#109 ) + (signed byte) form_cursor_count#45 ← phi( form_control::@13/(signed byte) form_cursor_count#51 ) + (byte*) form_control::field#13 ← phi( form_control::@13/(byte*) form_control::field#16 ) + (byte) form_field_idx#20 ← phi( form_control::@13/(byte) form_field_idx#33 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) ← -- *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) + (bool~) form_control::$26 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) == (byte/word/signed word/dword/signed dword) $ff + (bool~) form_control::$27 ← ! (bool~) form_control::$26 if((bool~) form_control::$27) goto form_control::@27 to:form_control::@15 form_control::@27: scope:[form_control] from form_control::@14 - (byte) keyboard_modifiers#73 ? phi( form_control::@14/(byte) keyboard_modifiers#92 ) - (byte) keyboard_events_size#73 ? phi( form_control::@14/(byte) keyboard_events_size#96 ) - (signed byte) form_cursor_count#34 ? phi( form_control::@14/(signed byte) form_cursor_count#45 ) - (byte*) form_control::field#8 ? phi( form_control::@14/(byte*) form_control::field#13 ) - (byte) form_field_idx#34 ? phi( form_control::@14/(byte) form_field_idx#20 ) + (byte) keyboard_modifiers#73 ← phi( form_control::@14/(byte) keyboard_modifiers#92 ) + (byte) keyboard_events_size#73 ← phi( form_control::@14/(byte) keyboard_events_size#96 ) + (signed byte) form_cursor_count#34 ← phi( form_control::@14/(signed byte) form_cursor_count#45 ) + (byte*) form_control::field#8 ← phi( form_control::@14/(byte*) form_control::field#13 ) + (byte) form_field_idx#34 ← phi( form_control::@14/(byte) form_field_idx#20 ) to:form_control::@29 form_control::@15: scope:[form_control] from form_control::@14 - (byte) keyboard_modifiers#72 ? phi( form_control::@14/(byte) keyboard_modifiers#92 ) - (byte) keyboard_events_size#72 ? phi( form_control::@14/(byte) keyboard_events_size#96 ) - (signed byte) form_cursor_count#33 ? phi( form_control::@14/(signed byte) form_cursor_count#45 ) - (byte*) form_control::field#7 ? phi( form_control::@14/(byte*) form_control::field#13 ) - (byte) form_field_idx#21 ? phi( form_control::@14/(byte) form_field_idx#20 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#21) ? *((byte[]) form_fields_max#0 + (byte) form_field_idx#21) + (byte) keyboard_modifiers#72 ← phi( form_control::@14/(byte) keyboard_modifiers#92 ) + (byte) keyboard_events_size#72 ← phi( form_control::@14/(byte) keyboard_events_size#96 ) + (signed byte) form_cursor_count#33 ← phi( form_control::@14/(signed byte) form_cursor_count#45 ) + (byte*) form_control::field#7 ← phi( form_control::@14/(byte*) form_control::field#13 ) + (byte) form_field_idx#21 ← phi( form_control::@14/(byte) form_field_idx#20 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#21) ← *((byte[]) form_fields_max#0 + (byte) form_field_idx#21) to:form_control::@29 form_control::@29: scope:[form_control] from form_control::@15 form_control::@27 form_control::@30 form_control::@31 - (byte) keyboard_modifiers#50 ? phi( form_control::@15/(byte) keyboard_modifiers#72 form_control::@27/(byte) keyboard_modifiers#73 form_control::@30/(byte) keyboard_modifiers#74 form_control::@31/(byte) keyboard_modifiers#75 ) - (byte) keyboard_events_size#51 ? phi( form_control::@15/(byte) keyboard_events_size#72 form_control::@27/(byte) keyboard_events_size#73 form_control::@30/(byte) keyboard_events_size#74 form_control::@31/(byte) keyboard_events_size#75 ) - (signed byte) form_cursor_count#24 ? phi( form_control::@15/(signed byte) form_cursor_count#33 form_control::@27/(signed byte) form_cursor_count#34 form_control::@30/(signed byte) form_cursor_count#35 form_control::@31/(signed byte) form_cursor_count#36 ) - (byte*) form_control::field#4 ? phi( form_control::@15/(byte*) form_control::field#7 form_control::@27/(byte*) form_control::field#8 form_control::@30/(byte*) form_control::field#9 form_control::@31/(byte*) form_control::field#10 ) - (byte) form_field_idx#22 ? phi( form_control::@15/(byte) form_field_idx#21 form_control::@27/(byte) form_field_idx#34 form_control::@30/(byte) form_field_idx#35 form_control::@31/(byte) form_field_idx#23 ) - *((byte*) form_control::field#4) ? *((byte[]) print_hextab#0 + *((byte[]) form_fields_val#0 + (byte) form_field_idx#22)) - (byte) form_control::return#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#50 ← phi( form_control::@15/(byte) keyboard_modifiers#72 form_control::@27/(byte) keyboard_modifiers#73 form_control::@30/(byte) keyboard_modifiers#74 form_control::@31/(byte) keyboard_modifiers#75 ) + (byte) keyboard_events_size#51 ← phi( form_control::@15/(byte) keyboard_events_size#72 form_control::@27/(byte) keyboard_events_size#73 form_control::@30/(byte) keyboard_events_size#74 form_control::@31/(byte) keyboard_events_size#75 ) + (signed byte) form_cursor_count#24 ← phi( form_control::@15/(signed byte) form_cursor_count#33 form_control::@27/(signed byte) form_cursor_count#34 form_control::@30/(signed byte) form_cursor_count#35 form_control::@31/(signed byte) form_cursor_count#36 ) + (byte*) form_control::field#4 ← phi( form_control::@15/(byte*) form_control::field#7 form_control::@27/(byte*) form_control::field#8 form_control::@30/(byte*) form_control::field#9 form_control::@31/(byte*) form_control::field#10 ) + (byte) form_field_idx#22 ← phi( form_control::@15/(byte) form_field_idx#21 form_control::@27/(byte) form_field_idx#34 form_control::@30/(byte) form_field_idx#35 form_control::@31/(byte) form_field_idx#23 ) + *((byte*) form_control::field#4) ← *((byte[]) print_hextab#0 + *((byte[]) form_fields_val#0 + (byte) form_field_idx#22)) + (byte) form_control::return#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@return form_control::@30: scope:[form_control] from form_control::@26 - (byte) keyboard_modifiers#74 ? phi( form_control::@26/(byte) keyboard_modifiers#93 ) - (byte) keyboard_events_size#74 ? phi( form_control::@26/(byte) keyboard_events_size#97 ) - (signed byte) form_cursor_count#35 ? phi( form_control::@26/(signed byte) form_cursor_count#46 ) - (byte*) form_control::field#9 ? phi( form_control::@26/(byte*) form_control::field#14 ) - (byte) form_field_idx#35 ? phi( form_control::@26/(byte) form_field_idx#19 ) + (byte) keyboard_modifiers#74 ← phi( form_control::@26/(byte) keyboard_modifiers#93 ) + (byte) keyboard_events_size#74 ← phi( form_control::@26/(byte) keyboard_events_size#97 ) + (signed byte) form_cursor_count#35 ← phi( form_control::@26/(signed byte) form_cursor_count#46 ) + (byte*) form_control::field#9 ← phi( form_control::@26/(byte*) form_control::field#14 ) + (byte) form_field_idx#35 ← phi( form_control::@26/(byte) form_field_idx#19 ) to:form_control::@29 form_control::@31: scope:[form_control] from form_control::@26 - (byte) keyboard_modifiers#75 ? phi( form_control::@26/(byte) keyboard_modifiers#93 ) - (byte) keyboard_events_size#75 ? phi( form_control::@26/(byte) keyboard_events_size#97 ) - (signed byte) form_cursor_count#36 ? phi( form_control::@26/(signed byte) form_cursor_count#46 ) - (byte*) form_control::field#10 ? phi( form_control::@26/(byte*) form_control::field#14 ) - (byte) form_field_idx#23 ? phi( form_control::@26/(byte) form_field_idx#19 ) - *((byte[]) form_fields_val#0 + (byte) form_field_idx#23) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#75 ← phi( form_control::@26/(byte) keyboard_modifiers#93 ) + (byte) keyboard_events_size#75 ← phi( form_control::@26/(byte) keyboard_events_size#97 ) + (signed byte) form_cursor_count#36 ← phi( form_control::@26/(signed byte) form_cursor_count#46 ) + (byte*) form_control::field#10 ← phi( form_control::@26/(byte*) form_control::field#14 ) + (byte) form_field_idx#23 ← phi( form_control::@26/(byte) form_field_idx#19 ) + *((byte[]) form_fields_val#0 + (byte) form_field_idx#23) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@29 form_control::@6: scope:[form_control] from form_control::@5 - (byte) form_field_idx#32 ? phi( form_control::@5/(byte) form_field_idx#47 ) - (byte) keyboard_modifiers#51 ? phi( form_control::@5/(byte) keyboard_modifiers#76 ) - (byte) keyboard_events_size#52 ? phi( form_control::@5/(byte) keyboard_events_size#76 ) - (signed byte) form_cursor_count#25 ? phi( form_control::@5/(signed byte) form_cursor_count#37 ) - (byte) form_control::return#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) form_field_idx#32 ← phi( form_control::@5/(byte) form_field_idx#47 ) + (byte) keyboard_modifiers#51 ← phi( form_control::@5/(byte) keyboard_modifiers#76 ) + (byte) keyboard_events_size#52 ← phi( form_control::@5/(byte) keyboard_events_size#76 ) + (signed byte) form_cursor_count#25 ← phi( form_control::@5/(signed byte) form_cursor_count#37 ) + (byte) form_control::return#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@return form_control::@16: scope:[form_control] from form_control::@5 - (byte) form_field_idx#30 ? phi( form_control::@5/(byte) form_field_idx#47 ) - (byte) keyboard_modifiers#48 ? phi( form_control::@5/(byte) keyboard_modifiers#76 ) - (byte) keyboard_events_size#49 ? phi( form_control::@5/(byte) keyboard_events_size#76 ) - (signed byte) form_cursor_count#23 ? phi( form_control::@5/(signed byte) form_cursor_count#37 ) - (byte) form_control::return#5 ? (byte/word/signed word/dword/signed dword) $ff + (byte) form_field_idx#30 ← phi( form_control::@5/(byte) form_field_idx#47 ) + (byte) keyboard_modifiers#48 ← phi( form_control::@5/(byte) keyboard_modifiers#76 ) + (byte) keyboard_events_size#49 ← phi( form_control::@5/(byte) keyboard_events_size#76 ) + (signed byte) form_cursor_count#23 ← phi( form_control::@5/(signed byte) form_cursor_count#37 ) + (byte) form_control::return#5 ← (byte/word/signed word/dword/signed dword) $ff to:form_control::@return @68: scope:[] from @64 - (byte) form_field_idx#36 ? phi( @64/(byte) form_field_idx#4 ) - (byte) keyboard_modifiers#53 ? phi( @64/(byte) keyboard_modifiers#77 ) - (byte) keyboard_events_size#53 ? phi( @64/(byte) keyboard_events_size#77 ) - (signed byte) form_cursor_count#26 ? phi( @64/(signed byte) form_cursor_count#4 ) - (byte*) print_char_cursor#46 ? phi( @64/(byte*) print_char_cursor#56 ) - (byte*) print_line_cursor#44 ? phi( @64/(byte*) print_line_cursor#53 ) - (byte*) print_screen#25 ? phi( @64/(byte*) print_screen#33 ) + (byte) form_field_idx#36 ← phi( @64/(byte) form_field_idx#4 ) + (byte) keyboard_modifiers#53 ← phi( @64/(byte) keyboard_modifiers#77 ) + (byte) keyboard_events_size#53 ← phi( @64/(byte) keyboard_events_size#77 ) + (signed byte) form_cursor_count#26 ← phi( @64/(signed byte) form_cursor_count#4 ) + (byte*) print_char_cursor#46 ← phi( @64/(byte*) print_char_cursor#56 ) + (byte*) print_line_cursor#44 ← phi( @64/(byte*) print_line_cursor#53 ) + (byte*) print_screen#25 ← phi( @64/(byte*) print_screen#33 ) call main to:@69 @69: scope:[] from @68 - (byte) form_field_idx#24 ? phi( @68/(byte) form_field_idx#1 ) - (byte) keyboard_modifiers#33 ? phi( @68/(byte) keyboard_modifiers#9 ) - (byte) keyboard_events_size#36 ? phi( @68/(byte) keyboard_events_size#8 ) - (signed byte) form_cursor_count#17 ? phi( @68/(signed byte) form_cursor_count#1 ) - (byte*) print_char_cursor#36 ? phi( @68/(byte*) print_char_cursor#11 ) - (byte*) print_line_cursor#35 ? phi( @68/(byte*) print_line_cursor#10 ) - (byte*) print_screen#18 ? phi( @68/(byte*) print_screen#4 ) - (byte*) print_screen#8 ? (byte*) print_screen#18 - (byte*) print_line_cursor#18 ? (byte*) print_line_cursor#35 - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#36 - (signed byte) form_cursor_count#9 ? (signed byte) form_cursor_count#17 - (byte) keyboard_events_size#17 ? (byte) keyboard_events_size#36 - (byte) keyboard_modifiers#16 ? (byte) keyboard_modifiers#33 - (byte) form_field_idx#10 ? (byte) form_field_idx#24 + (byte) form_field_idx#24 ← phi( @68/(byte) form_field_idx#1 ) + (byte) keyboard_modifiers#33 ← phi( @68/(byte) keyboard_modifiers#9 ) + (byte) keyboard_events_size#36 ← phi( @68/(byte) keyboard_events_size#8 ) + (signed byte) form_cursor_count#17 ← phi( @68/(signed byte) form_cursor_count#1 ) + (byte*) print_char_cursor#36 ← phi( @68/(byte*) print_char_cursor#11 ) + (byte*) print_line_cursor#35 ← phi( @68/(byte*) print_line_cursor#10 ) + (byte*) print_screen#18 ← phi( @68/(byte*) print_screen#4 ) + (byte*) print_screen#8 ← (byte*) print_screen#18 + (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#35 + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#36 + (signed byte) form_cursor_count#9 ← (signed byte) form_cursor_count#17 + (byte) keyboard_events_size#17 ← (byte) keyboard_events_size#36 + (byte) keyboard_modifiers#16 ← (byte) keyboard_modifiers#33 + (byte) form_field_idx#10 ← (byte) form_field_idx#24 to:@end @end: scope:[] from @69 @@ -7253,44 +7253,44 @@ Culled Empty Block (label) gfx_init_plane_blank::@1 Culled Empty Block (label) gfx_init_plane_full::@1 Culled Empty Block (label) gfx_init_plane_fill::@6 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [191] (bool~) print_str_lines::$2 ? (byte) print_str_lines::ch#0 == (byte) '@' from [190] (bool~) print_str_lines::$1 ? (byte) print_str_lines::ch#0 != (byte) '@' -Inversing boolean not [370] (bool~) keyboard_event_scan::$18 ? (byte~) keyboard_event_scan::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [369] (bool~) keyboard_event_scan::$17 ? (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [379] (bool~) keyboard_event_scan::$20 ? (byte) keyboard_events_size#18 == (byte/signed byte/word/signed word/dword/signed dword) 8 from [378] (bool~) keyboard_event_scan::$19 ? (byte) keyboard_events_size#18 != (byte/signed byte/word/signed word/dword/signed dword) 8 -Inversing boolean not [404] (bool~) keyboard_event_scan::$2 ? (byte~) keyboard_event_scan::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [403] (bool~) keyboard_event_scan::$1 ? (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [413] (bool~) keyboard_event_scan::$5 ? (byte~) keyboard_event_scan::$3 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [412] (bool~) keyboard_event_scan::$4 ? (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [425] (bool~) keyboard_event_scan::$8 ? (byte~) keyboard_event_scan::$6 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [424] (bool~) keyboard_event_scan::$7 ? (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [437] (bool~) keyboard_event_scan::$11 ? (byte~) keyboard_event_scan::$9 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [436] (bool~) keyboard_event_scan::$10 ? (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [489] (bool~) bitmap_init::$4 ? (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [488] (bool~) bitmap_init::$3 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [508] (bool~) bitmap_init::$12 ? (byte~) bitmap_init::$10 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [507] (bool~) bitmap_init::$11 ? (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [647] (bool~) bitmap_line_xdyi::$4 ? (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [646] (bool~) bitmap_line_xdyi::$3 ? (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 -Inversing boolean not [670] (bool~) bitmap_line_xdyd::$4 ? (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [669] (bool~) bitmap_line_xdyd::$3 ? (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 -Inversing boolean not [693] (bool~) bitmap_line_ydxi::$4 ? (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [692] (bool~) bitmap_line_ydxi::$3 ? (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 -Inversing boolean not [717] (bool~) bitmap_line_ydxd::$4 ? (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [716] (bool~) bitmap_line_ydxd::$3 ? (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 -Inversing boolean not [845] (bool~) get_plane::$14 ? (byte) get_plane::idx#15 != (byte/signed byte/word/signed word/dword/signed dword) $d from [844] (bool~) get_plane::$13 ? (byte) get_plane::idx#15 == (byte/signed byte/word/signed word/dword/signed dword) $d -Inversing boolean not [872] (bool~) get_vic_screen::$5 ? (byte) get_vic_screen::idx#6 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [871] (bool~) get_vic_screen::$4 ? (byte) get_vic_screen::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 -Inversing boolean not [885] (bool~) get_vic_charset::$2 ? (byte) get_vic_charset::idx#2 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [884] (bool~) get_vic_charset::$1 ? (byte) get_vic_charset::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 -Inversing boolean not [1128] (bool~) gfx_mode::$1 ? *((byte*) form_ctrl_line#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1127] (bool~) gfx_mode::$0 ? *((byte*) form_ctrl_line#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1132] (bool~) gfx_mode::$3 ? *((byte*) form_ctrl_borof#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1131] (bool~) gfx_mode::$2 ? *((byte*) form_ctrl_borof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1139] (bool~) gfx_mode::$5 ? *((byte*) form_ctrl_hicol#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1138] (bool~) gfx_mode::$4 ? *((byte*) form_ctrl_hicol#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1146] (bool~) gfx_mode::$7 ? *((byte*) form_ctrl_overs#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1145] (bool~) gfx_mode::$6 ? *((byte*) form_ctrl_overs#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1153] (bool~) gfx_mode::$9 ? *((byte*) form_ctrl_colof#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1152] (bool~) gfx_mode::$8 ? *((byte*) form_ctrl_colof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1160] (bool~) gfx_mode::$11 ? *((byte*) form_ctrl_chunk#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1159] (bool~) gfx_mode::$10 ? *((byte*) form_ctrl_chunk#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1171] (bool~) gfx_mode::$15 ? *((byte*) form_ctrl_ecm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1170] (bool~) gfx_mode::$14 ? *((byte*) form_ctrl_ecm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1178] (bool~) gfx_mode::$17 ? *((byte*) form_ctrl_bmm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1177] (bool~) gfx_mode::$16 ? *((byte*) form_ctrl_bmm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1187] (bool~) gfx_mode::$19 ? *((byte*) form_ctrl_mcm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1186] (bool~) gfx_mode::$18 ? *((byte*) form_ctrl_mcm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1345] (bool~) gfx_mode::$90 ? (byte) gfx_mode::keyboard_event#0 != (byte) KEY_SPACE#0 from [1344] (bool~) gfx_mode::$89 ? (byte) gfx_mode::keyboard_event#0 == (byte) KEY_SPACE#0 -Inversing boolean not [1512] (bool~) gfx_init_plane_8bppchunky::$7 ? (byte*) gfx_init_plane_8bppchunky::gfxb#3 != (word/dword/signed dword) $8000 from [1511] (bool~) gfx_init_plane_8bppchunky::$6 ? (byte*) gfx_init_plane_8bppchunky::gfxb#3 == (word/dword/signed dword) $8000 -Inversing boolean not [1658] (bool~) gfx_init_plane_charset8::$10 ? (byte~) gfx_init_plane_charset8::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1657] (bool~) gfx_init_plane_charset8::$9 ? (byte~) gfx_init_plane_charset8::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1831] (bool~) form_mode::$38 ? (byte~) form_mode::$36 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1830] (bool~) form_mode::$37 ? (byte~) form_mode::$36 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1835] (bool~) form_mode::$40 ? (byte) form_mode::preset_current#2 == *((byte*) form_preset#0) from [1834] (bool~) form_mode::$39 ? (byte) form_mode::preset_current#2 != *((byte*) form_preset#0) -Inversing boolean not [1911] (bool~) form_control::$2 ? (signed byte) form_cursor_count#5 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [1910] (bool~) form_control::$1 ? (signed byte) form_cursor_count#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1937] (bool~) form_control::$8 ? (byte) form_control::key_event#0 != (byte) KEY_CRSR_DOWN#0 from [1936] (bool~) form_control::$7 ? (byte) form_control::key_event#0 == (byte) KEY_CRSR_DOWN#0 -Inversing boolean not [1941] (bool~) form_control::$10 ? (byte) form_control::key_event#1 != (byte) KEY_CRSR_RIGHT#0 from [1940] (bool~) form_control::$9 ? (byte) form_control::key_event#1 == (byte) KEY_CRSR_RIGHT#0 -Inversing boolean not [1952] (bool~) form_control::$22 ? (byte) form_field_idx#5 != (byte) form_fields_cnt#0 from [1951] (bool~) form_control::$21 ? (byte) form_field_idx#5 == (byte) form_fields_cnt#0 -Inversing boolean not [1957] (bool~) form_control::$19 ? (byte) form_field_idx#6 != (byte/word/signed word/dword/signed dword) $ff from [1956] (bool~) form_control::$18 ? (byte) form_field_idx#6 == (byte/word/signed word/dword/signed dword) $ff -Inversing boolean not [1979] (bool~) form_control::$12 ? (byte) form_control::key_event#2 != (byte) KEY_SPACE#0 from [1978] (bool~) form_control::$11 ? (byte) form_control::key_event#2 == (byte) KEY_SPACE#0 -Inversing boolean not [1988] (bool~) form_control::$29 ? *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) <= *((byte[]) form_fields_max#0 + (byte) form_field_idx#19) from [1987] (bool~) form_control::$28 ? *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#19) -Inversing boolean not [1993] (bool~) form_control::$27 ? *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) != (byte/word/signed word/dword/signed dword) $ff from [1992] (bool~) form_control::$26 ? *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) == (byte/word/signed word/dword/signed dword) $ff +Inversing boolean not [191] (bool~) print_str_lines::$2 ← (byte) print_str_lines::ch#0 == (byte) '@' from [190] (bool~) print_str_lines::$1 ← (byte) print_str_lines::ch#0 != (byte) '@' +Inversing boolean not [370] (bool~) keyboard_event_scan::$18 ← (byte~) keyboard_event_scan::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [369] (bool~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [379] (bool~) keyboard_event_scan::$20 ← (byte) keyboard_events_size#18 == (byte/signed byte/word/signed word/dword/signed dword) 8 from [378] (bool~) keyboard_event_scan::$19 ← (byte) keyboard_events_size#18 != (byte/signed byte/word/signed word/dword/signed dword) 8 +Inversing boolean not [404] (bool~) keyboard_event_scan::$2 ← (byte~) keyboard_event_scan::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [403] (bool~) keyboard_event_scan::$1 ← (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [413] (bool~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$3 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [412] (bool~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [425] (bool~) keyboard_event_scan::$8 ← (byte~) keyboard_event_scan::$6 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [424] (bool~) keyboard_event_scan::$7 ← (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [437] (bool~) keyboard_event_scan::$11 ← (byte~) keyboard_event_scan::$9 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [436] (bool~) keyboard_event_scan::$10 ← (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [489] (bool~) bitmap_init::$4 ← (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [488] (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [508] (bool~) bitmap_init::$12 ← (byte~) bitmap_init::$10 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [507] (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [647] (bool~) bitmap_line_xdyi::$4 ← (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [646] (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 +Inversing boolean not [670] (bool~) bitmap_line_xdyd::$4 ← (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [669] (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 +Inversing boolean not [693] (bool~) bitmap_line_ydxi::$4 ← (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [692] (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 +Inversing boolean not [717] (bool~) bitmap_line_ydxd::$4 ← (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [716] (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 +Inversing boolean not [845] (bool~) get_plane::$14 ← (byte) get_plane::idx#15 != (byte/signed byte/word/signed word/dword/signed dword) $d from [844] (bool~) get_plane::$13 ← (byte) get_plane::idx#15 == (byte/signed byte/word/signed word/dword/signed dword) $d +Inversing boolean not [872] (bool~) get_vic_screen::$5 ← (byte) get_vic_screen::idx#6 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [871] (bool~) get_vic_screen::$4 ← (byte) get_vic_screen::idx#6 == (byte/signed byte/word/signed word/dword/signed dword) 4 +Inversing boolean not [885] (bool~) get_vic_charset::$2 ← (byte) get_vic_charset::idx#2 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [884] (bool~) get_vic_charset::$1 ← (byte) get_vic_charset::idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 +Inversing boolean not [1128] (bool~) gfx_mode::$1 ← *((byte*) form_ctrl_line#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1127] (bool~) gfx_mode::$0 ← *((byte*) form_ctrl_line#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1132] (bool~) gfx_mode::$3 ← *((byte*) form_ctrl_borof#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1131] (bool~) gfx_mode::$2 ← *((byte*) form_ctrl_borof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1139] (bool~) gfx_mode::$5 ← *((byte*) form_ctrl_hicol#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1138] (bool~) gfx_mode::$4 ← *((byte*) form_ctrl_hicol#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1146] (bool~) gfx_mode::$7 ← *((byte*) form_ctrl_overs#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1145] (bool~) gfx_mode::$6 ← *((byte*) form_ctrl_overs#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1153] (bool~) gfx_mode::$9 ← *((byte*) form_ctrl_colof#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1152] (bool~) gfx_mode::$8 ← *((byte*) form_ctrl_colof#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1160] (bool~) gfx_mode::$11 ← *((byte*) form_ctrl_chunk#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1159] (bool~) gfx_mode::$10 ← *((byte*) form_ctrl_chunk#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1171] (bool~) gfx_mode::$15 ← *((byte*) form_ctrl_ecm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1170] (bool~) gfx_mode::$14 ← *((byte*) form_ctrl_ecm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1178] (bool~) gfx_mode::$17 ← *((byte*) form_ctrl_bmm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1177] (bool~) gfx_mode::$16 ← *((byte*) form_ctrl_bmm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1187] (bool~) gfx_mode::$19 ← *((byte*) form_ctrl_mcm#0) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1186] (bool~) gfx_mode::$18 ← *((byte*) form_ctrl_mcm#0) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1345] (bool~) gfx_mode::$90 ← (byte) gfx_mode::keyboard_event#0 != (byte) KEY_SPACE#0 from [1344] (bool~) gfx_mode::$89 ← (byte) gfx_mode::keyboard_event#0 == (byte) KEY_SPACE#0 +Inversing boolean not [1512] (bool~) gfx_init_plane_8bppchunky::$7 ← (byte*) gfx_init_plane_8bppchunky::gfxb#3 != (word/dword/signed dword) $8000 from [1511] (bool~) gfx_init_plane_8bppchunky::$6 ← (byte*) gfx_init_plane_8bppchunky::gfxb#3 == (word/dword/signed dword) $8000 +Inversing boolean not [1658] (bool~) gfx_init_plane_charset8::$10 ← (byte~) gfx_init_plane_charset8::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1657] (bool~) gfx_init_plane_charset8::$9 ← (byte~) gfx_init_plane_charset8::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1831] (bool~) form_mode::$38 ← (byte~) form_mode::$36 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1830] (bool~) form_mode::$37 ← (byte~) form_mode::$36 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1835] (bool~) form_mode::$40 ← (byte) form_mode::preset_current#2 == *((byte*) form_preset#0) from [1834] (bool~) form_mode::$39 ← (byte) form_mode::preset_current#2 != *((byte*) form_preset#0) +Inversing boolean not [1911] (bool~) form_control::$2 ← (signed byte) form_cursor_count#5 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [1910] (bool~) form_control::$1 ← (signed byte) form_cursor_count#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1937] (bool~) form_control::$8 ← (byte) form_control::key_event#0 != (byte) KEY_CRSR_DOWN#0 from [1936] (bool~) form_control::$7 ← (byte) form_control::key_event#0 == (byte) KEY_CRSR_DOWN#0 +Inversing boolean not [1941] (bool~) form_control::$10 ← (byte) form_control::key_event#1 != (byte) KEY_CRSR_RIGHT#0 from [1940] (bool~) form_control::$9 ← (byte) form_control::key_event#1 == (byte) KEY_CRSR_RIGHT#0 +Inversing boolean not [1952] (bool~) form_control::$22 ← (byte) form_field_idx#5 != (byte) form_fields_cnt#0 from [1951] (bool~) form_control::$21 ← (byte) form_field_idx#5 == (byte) form_fields_cnt#0 +Inversing boolean not [1957] (bool~) form_control::$19 ← (byte) form_field_idx#6 != (byte/word/signed word/dword/signed dword) $ff from [1956] (bool~) form_control::$18 ← (byte) form_field_idx#6 == (byte/word/signed word/dword/signed dword) $ff +Inversing boolean not [1979] (bool~) form_control::$12 ← (byte) form_control::key_event#2 != (byte) KEY_SPACE#0 from [1978] (bool~) form_control::$11 ← (byte) form_control::key_event#2 == (byte) KEY_SPACE#0 +Inversing boolean not [1988] (bool~) form_control::$29 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) <= *((byte[]) form_fields_max#0 + (byte) form_field_idx#19) from [1987] (bool~) form_control::$28 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#19) > *((byte[]) form_fields_max#0 + (byte) form_field_idx#19) +Inversing boolean not [1993] (bool~) form_control::$27 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) != (byte/word/signed word/dword/signed dword) $ff from [1992] (bool~) form_control::$26 ← *((byte[]) form_fields_val#0 + (byte) form_field_idx#20) == (byte/word/signed word/dword/signed dword) $ff Successful SSA optimization Pass2UnaryNotSimplification Alias (byte*) print_screen#0 = (byte*) print_line_cursor#0 (byte*) print_char_cursor#0 (byte*) print_screen#55 (byte*) print_line_cursor#76 (byte*) print_char_cursor#76 (byte*) print_screen#53 (byte*) print_line_cursor#75 (byte*) print_char_cursor#75 (byte*) print_screen#51 (byte*) print_line_cursor#74 (byte*) print_char_cursor#74 (byte*) print_screen#49 (byte*) print_line_cursor#72 (byte*) print_char_cursor#72 (byte*) print_screen#46 (byte*) print_line_cursor#69 (byte*) print_char_cursor#69 (byte*) print_screen#41 (byte*) print_line_cursor#64 (byte*) print_char_cursor#64 (byte*) print_screen#39 (byte*) print_line_cursor#61 (byte*) print_char_cursor#62 (byte*) print_screen#33 (byte*) print_line_cursor#53 (byte*) print_char_cursor#56 (byte*) print_screen#25 (byte*) print_line_cursor#44 (byte*) print_char_cursor#46 Alias (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#7 @@ -8744,98 +8744,98 @@ Removing PHI-reference to removed block (form_mode::@3) in block form_mode::@ret if() condition always true - replacing block destination [720] if(true) goto form_mode::@4 Successful SSA optimization Pass2ConstantIfs Successful SSA optimization Pass2ConstantStringConsolidation -Fixing inline constructor with bitmap_clear::$3 ? *(bitmap_plot_xhi#0+0) w= *(bitmap_plot_xlo#0+0) -Fixing inline constructor with bitmap_plot::$2 ? *(bitmap_plot_xhi#0 + bitmap_plot::x#4) w= *(bitmap_plot_xlo#0 + bitmap_plot::x#4) -Fixing inline constructor with bitmap_plot::$3 ? *(bitmap_plot_yhi#0 + bitmap_plot::y#4) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#4) -Fixing inline constructor with form_field_ptr::$2 ? *(form_line_hi#0 + form_field_ptr::y#0) w= *(form_line_lo#0 + form_field_ptr::y#0) +Fixing inline constructor with bitmap_clear::$3 ← *(bitmap_plot_xhi#0+0) w= *(bitmap_plot_xlo#0+0) +Fixing inline constructor with bitmap_plot::$2 ← *(bitmap_plot_xhi#0 + bitmap_plot::x#4) w= *(bitmap_plot_xlo#0 + bitmap_plot::x#4) +Fixing inline constructor with bitmap_plot::$3 ← *(bitmap_plot_yhi#0 + bitmap_plot::y#4) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#4) +Fixing inline constructor with form_field_ptr::$2 ← *(form_line_hi#0 + form_field_ptr::y#0) w= *(form_line_lo#0 + form_field_ptr::y#0) Successful SSA optimization Pass2FixInlineConstructors -Inferred type updated to byte in [572] (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$2 ? (byte) gfx_init_vic_bitmap::l#2 -Inferred type updated to byte in [573] (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$3 ? (byte) gfx_init_vic_bitmap::l#2 +Inferred type updated to byte in [572] (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$2 ← (byte) gfx_init_vic_bitmap::l#2 +Inferred type updated to byte in [573] (byte/signed word/word/dword/signed dword~) gfx_init_vic_bitmap::$3 ← (byte) gfx_init_vic_bitmap::l#2 Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ? ((byte*)) (word~) bitmap_clear::$3 -Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$0 -Eliminating Noop Cast (word~) gfx_mode::$53 ? ((word)) (byte*~) gfx_mode::$52 -Eliminating Noop Cast (word~) gfx_mode::$58 ? ((word)) (byte*~) gfx_mode::$57 -Eliminating Noop Cast (byte*) gfx_init_plane_fill::gfxb#0 ? ((byte*)) (word/signed dword/dword~) gfx_init_plane_fill::$6 -Eliminating Noop Cast (byte*) form_field_ptr::line#0 ? ((byte*)) (word~) form_field_ptr::$2 +Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ← ((byte*)) (word~) bitmap_clear::$3 +Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$0 +Eliminating Noop Cast (word~) gfx_mode::$53 ← ((word)) (byte*~) gfx_mode::$52 +Eliminating Noop Cast (word~) gfx_mode::$58 ← ((word)) (byte*~) gfx_mode::$57 +Eliminating Noop Cast (byte*) gfx_init_plane_fill::gfxb#0 ← ((byte*)) (word/signed dword/dword~) gfx_init_plane_fill::$6 +Eliminating Noop Cast (byte*) form_field_ptr::line#0 ← ((byte*)) (word~) form_field_ptr::$2 Successful SSA optimization Pass2NopCastElimination Removing unused block main::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value keyboard_event_scan::row#1 ? ++ keyboard_event_scan::row#2 to ++ +Resolved ranged next value keyboard_event_scan::row#1 ← ++ keyboard_event_scan::row#2 to ++ Resolved ranged comparison value if(keyboard_event_scan::row#1!=rangelast(0,7)) goto keyboard_event_scan::@8 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value keyboard_event_scan::col#1 ? ++ keyboard_event_scan::col#2 to ++ +Resolved ranged next value keyboard_event_scan::col#1 ← ++ keyboard_event_scan::col#2 to ++ Resolved ranged comparison value if(keyboard_event_scan::col#1!=rangelast(0,7)) goto keyboard_event_scan::@11 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value bitmap_init::x#1 ? ++ bitmap_init::x#2 to ++ +Resolved ranged next value bitmap_init::x#1 ← ++ bitmap_init::x#2 to ++ Resolved ranged comparison value if(bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_init::y#1 ? ++ bitmap_init::y#2 to ++ +Resolved ranged next value bitmap_init::y#1 ← ++ bitmap_init::y#2 to ++ Resolved ranged comparison value if(bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_clear::x#1 ? ++ bitmap_clear::x#2 to ++ +Resolved ranged next value bitmap_clear::x#1 ← ++ bitmap_clear::x#2 to ++ Resolved ranged comparison value if(bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value bitmap_clear::y#1 ? ++ bitmap_clear::y#4 to ++ +Resolved ranged next value bitmap_clear::y#1 ← ++ bitmap_clear::y#4 to ++ Resolved ranged comparison value if(bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_mode::cx#1 ? ++ gfx_mode::cx#2 to ++ +Resolved ranged next value gfx_mode::cx#1 ← ++ gfx_mode::cx#2 to ++ Resolved ranged comparison value if(gfx_mode::cx#1!=rangelast(0,$27)) goto gfx_mode::@22 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_mode::cy#1 ? ++ gfx_mode::cy#4 to ++ +Resolved ranged next value gfx_mode::cy#1 ← ++ gfx_mode::cy#4 to ++ Resolved ranged comparison value if(gfx_mode::cy#1!=rangelast(0,$18)) goto gfx_mode::@21 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value gfx_mode::j#1 ? ++ gfx_mode::j#2 to ++ +Resolved ranged next value gfx_mode::j#1 ← ++ gfx_mode::j#2 to ++ Resolved ranged comparison value if(gfx_mode::j#1!=rangelast(0,$f)) goto gfx_mode::@26 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value gfx_mode::i#1 ? ++ gfx_mode::i#2 to ++ +Resolved ranged next value gfx_mode::i#1 ← ++ gfx_mode::i#2 to ++ Resolved ranged comparison value if(gfx_mode::i#1!=rangelast(0,$f)) goto gfx_mode::@29 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value gfx_init_charset::l#1 ? ++ gfx_init_charset::l#2 to ++ +Resolved ranged next value gfx_init_charset::l#1 ← ++ gfx_init_charset::l#2 to ++ Resolved ranged comparison value if(gfx_init_charset::l#1!=rangelast(0,7)) goto gfx_init_charset::@2 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value gfx_init_charset::c#1 ? ++ gfx_init_charset::c#4 to ++ +Resolved ranged next value gfx_init_charset::c#1 ← ++ gfx_init_charset::c#4 to ++ Resolved ranged comparison value if(gfx_init_charset::c#1!=rangelast(0,$ff)) goto gfx_init_charset::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value gfx_init_screen0::cx#1 ? ++ gfx_init_screen0::cx#2 to ++ +Resolved ranged next value gfx_init_screen0::cx#1 ← ++ gfx_init_screen0::cx#2 to ++ Resolved ranged comparison value if(gfx_init_screen0::cx#1!=rangelast(0,$27)) goto gfx_init_screen0::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_screen0::cy#1 ? ++ gfx_init_screen0::cy#4 to ++ +Resolved ranged next value gfx_init_screen0::cy#1 ← ++ gfx_init_screen0::cy#4 to ++ Resolved ranged comparison value if(gfx_init_screen0::cy#1!=rangelast(0,$18)) goto gfx_init_screen0::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value gfx_init_screen1::cx#1 ? ++ gfx_init_screen1::cx#2 to ++ +Resolved ranged next value gfx_init_screen1::cx#1 ← ++ gfx_init_screen1::cx#2 to ++ Resolved ranged comparison value if(gfx_init_screen1::cx#1!=rangelast(0,$27)) goto gfx_init_screen1::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_screen1::cy#1 ? ++ gfx_init_screen1::cy#4 to ++ +Resolved ranged next value gfx_init_screen1::cy#1 ← ++ gfx_init_screen1::cy#4 to ++ Resolved ranged comparison value if(gfx_init_screen1::cy#1!=rangelast(0,$18)) goto gfx_init_screen1::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value gfx_init_screen2::cx#1 ? ++ gfx_init_screen2::cx#2 to ++ +Resolved ranged next value gfx_init_screen2::cx#1 ← ++ gfx_init_screen2::cx#2 to ++ Resolved ranged comparison value if(gfx_init_screen2::cx#1!=rangelast(0,$27)) goto gfx_init_screen2::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_screen2::cy#1 ? ++ gfx_init_screen2::cy#4 to ++ +Resolved ranged next value gfx_init_screen2::cy#1 ← ++ gfx_init_screen2::cy#4 to ++ Resolved ranged comparison value if(gfx_init_screen2::cy#1!=rangelast(0,$18)) goto gfx_init_screen2::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value gfx_init_screen3::cx#1 ? ++ gfx_init_screen3::cx#2 to ++ +Resolved ranged next value gfx_init_screen3::cx#1 ← ++ gfx_init_screen3::cx#2 to ++ Resolved ranged comparison value if(gfx_init_screen3::cx#1!=rangelast(0,$27)) goto gfx_init_screen3::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_screen3::cy#1 ? ++ gfx_init_screen3::cy#4 to ++ +Resolved ranged next value gfx_init_screen3::cy#1 ← ++ gfx_init_screen3::cy#4 to ++ Resolved ranged comparison value if(gfx_init_screen3::cy#1!=rangelast(0,$18)) goto gfx_init_screen3::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value gfx_init_screen4::cx#1 ? ++ gfx_init_screen4::cx#2 to ++ +Resolved ranged next value gfx_init_screen4::cx#1 ← ++ gfx_init_screen4::cx#2 to ++ Resolved ranged comparison value if(gfx_init_screen4::cx#1!=rangelast(0,$27)) goto gfx_init_screen4::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_screen4::cy#1 ? ++ gfx_init_screen4::cy#4 to ++ +Resolved ranged next value gfx_init_screen4::cy#1 ← ++ gfx_init_screen4::cy#4 to ++ Resolved ranged comparison value if(gfx_init_screen4::cy#1!=rangelast(0,$18)) goto gfx_init_screen4::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value gfx_init_plane_8bppchunky::x#1 ? ++ gfx_init_plane_8bppchunky::x#2 to ++ +Resolved ranged next value gfx_init_plane_8bppchunky::x#1 ← ++ gfx_init_plane_8bppchunky::x#2 to ++ Resolved ranged comparison value if(gfx_init_plane_8bppchunky::x#1!=rangelast(0,$13f)) goto gfx_init_plane_8bppchunky::@2 to (word/signed word/dword/signed dword) $140 -Resolved ranged next value gfx_init_plane_8bppchunky::y#1 ? ++ gfx_init_plane_8bppchunky::y#6 to ++ +Resolved ranged next value gfx_init_plane_8bppchunky::y#1 ← ++ gfx_init_plane_8bppchunky::y#6 to ++ Resolved ranged comparison value if(gfx_init_plane_8bppchunky::y#1!=rangelast(0,$c7)) goto gfx_init_plane_8bppchunky::@1 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value gfx_init_plane_horisontal::ax#1 ? ++ gfx_init_plane_horisontal::ax#2 to ++ +Resolved ranged next value gfx_init_plane_horisontal::ax#1 ← ++ gfx_init_plane_horisontal::ax#2 to ++ Resolved ranged comparison value if(gfx_init_plane_horisontal::ax#1!=rangelast(0,$27)) goto gfx_init_plane_horisontal::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_plane_horisontal::ay#1 ? ++ gfx_init_plane_horisontal::ay#4 to ++ +Resolved ranged next value gfx_init_plane_horisontal::ay#1 ← ++ gfx_init_plane_horisontal::ay#4 to ++ Resolved ranged comparison value if(gfx_init_plane_horisontal::ay#1!=rangelast(0,$c7)) goto gfx_init_plane_horisontal::@1 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value gfx_init_plane_horisontal2::ax#1 ? ++ gfx_init_plane_horisontal2::ax#2 to ++ +Resolved ranged next value gfx_init_plane_horisontal2::ax#1 ← ++ gfx_init_plane_horisontal2::ax#2 to ++ Resolved ranged comparison value if(gfx_init_plane_horisontal2::ax#1!=rangelast(0,$27)) goto gfx_init_plane_horisontal2::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_plane_horisontal2::ay#1 ? ++ gfx_init_plane_horisontal2::ay#4 to ++ +Resolved ranged next value gfx_init_plane_horisontal2::ay#1 ← ++ gfx_init_plane_horisontal2::ay#4 to ++ Resolved ranged comparison value if(gfx_init_plane_horisontal2::ay#1!=rangelast(0,$c7)) goto gfx_init_plane_horisontal2::@1 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value gfx_init_plane_vertical::bx#1 ? ++ gfx_init_plane_vertical::bx#2 to ++ +Resolved ranged next value gfx_init_plane_vertical::bx#1 ← ++ gfx_init_plane_vertical::bx#2 to ++ Resolved ranged comparison value if(gfx_init_plane_vertical::bx#1!=rangelast(0,$27)) goto gfx_init_plane_vertical::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_plane_vertical::by#1 ? ++ gfx_init_plane_vertical::by#4 to ++ +Resolved ranged next value gfx_init_plane_vertical::by#1 ← ++ gfx_init_plane_vertical::by#4 to ++ Resolved ranged comparison value if(gfx_init_plane_vertical::by#1!=rangelast(0,$c7)) goto gfx_init_plane_vertical::@1 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value gfx_init_plane_charset8::cp#1 ? ++ gfx_init_plane_charset8::cp#2 to ++ +Resolved ranged next value gfx_init_plane_charset8::cp#1 ← ++ gfx_init_plane_charset8::cp#2 to ++ Resolved ranged comparison value if(gfx_init_plane_charset8::cp#1!=rangelast(0,7)) goto gfx_init_plane_charset8::@3 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value gfx_init_plane_charset8::cr#1 ? ++ gfx_init_plane_charset8::cr#6 to ++ +Resolved ranged next value gfx_init_plane_charset8::cr#1 ← ++ gfx_init_plane_charset8::cr#6 to ++ Resolved ranged comparison value if(gfx_init_plane_charset8::cr#1!=rangelast(0,7)) goto gfx_init_plane_charset8::@2 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value gfx_init_plane_charset8::ch#1 ? ++ gfx_init_plane_charset8::ch#7 to ++ +Resolved ranged next value gfx_init_plane_charset8::ch#1 ← ++ gfx_init_plane_charset8::ch#7 to ++ Resolved ranged comparison value if(gfx_init_plane_charset8::ch#1!=rangelast(0,$ff)) goto gfx_init_plane_charset8::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value gfx_init_plane_fill::bx#1 ? ++ gfx_init_plane_fill::bx#2 to ++ +Resolved ranged next value gfx_init_plane_fill::bx#1 ← ++ gfx_init_plane_fill::bx#2 to ++ Resolved ranged comparison value if(gfx_init_plane_fill::bx#1!=rangelast(0,$27)) goto gfx_init_plane_fill::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value gfx_init_plane_fill::by#1 ? ++ gfx_init_plane_fill::by#4 to ++ +Resolved ranged next value gfx_init_plane_fill::by#1 ← ++ gfx_init_plane_fill::by#4 to ++ Resolved ranged comparison value if(gfx_init_plane_fill::by#1!=rangelast(0,$c7)) goto gfx_init_plane_fill::@1 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value form_mode::i#1 ? ++ form_mode::i#2 to ++ +Resolved ranged next value form_mode::i#1 ← ++ form_mode::i#2 to ++ Resolved ranged comparison value if(form_mode::i#1!=rangelast(0,$f)) goto form_mode::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value form_set_screen::y#1 ? ++ form_set_screen::y#2 to ++ +Resolved ranged next value form_set_screen::y#1 ← ++ form_set_screen::y#2 to ++ Resolved ranged comparison value if(form_set_screen::y#1!=rangelast(0,$18)) goto form_set_screen::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 Culled Empty Block (label) @4 Culled Empty Block (label) @5 @@ -9543,302 +9543,302 @@ Calls in [bitmap_line_xdyd] to bitmap_plot:947 Calls in [bitmap_line_ydxd] to bitmap_plot:974 Created 192 initial phi equivalence classes -Coalesced [16] form_cursor_count#66 ? form_cursor_count#16 -Coalesced [17] keyboard_events_size#161 ? keyboard_events_size#24 -Coalesced [18] form_field_idx#74 ? form_field_idx#18 -Coalesced [24] gfx_mode::dtv_control#20 ? gfx_mode::dtv_control#2 -Coalesced [28] gfx_mode::dtv_control#21 ? gfx_mode::dtv_control#3 -Coalesced [32] gfx_mode::dtv_control#23 ? gfx_mode::dtv_control#4 -Coalesced [36] gfx_mode::dtv_control#25 ? gfx_mode::dtv_control#5 -Coalesced [40] gfx_mode::dtv_control#27 ? gfx_mode::dtv_control#6 -Coalesced [48] gfx_mode::vic_control#7 ? gfx_mode::vic_control#2 -Coalesced [58] get_plane::idx#17 ? get_plane::idx#0 -Coalesced [82] get_plane::idx#16 ? get_plane::idx#1 -Coalesced [106] get_vic_screen::idx#7 ? get_vic_screen::idx#0 -Coalesced [123] get_vic_screen::idx#8 ? get_vic_screen::idx#1 -Coalesced [127] gfx_mode::vic_colors#6 ? gfx_mode::vic_colors#0 -Coalesced [129] gfx_mode::vic_colors#7 ? gfx_mode::vic_colors#3 -Coalesced [130] gfx_mode::col#6 ? gfx_mode::col#3 -Coalesced [158] keyboard_events_size#165 ? keyboard_events_size#24 -Coalesced [166] gfx_mode::j#3 ? gfx_mode::j#1 -Coalesced [171] gfx_mode::i#3 ? gfx_mode::i#1 -Coalesced [172] gfx_mode::vic_colors#5 ? gfx_mode::vic_colors#1 -Coalesced [173] gfx_mode::col#5 ? gfx_mode::col#1 -Coalesced [174] gfx_mode::cy#5 ? gfx_mode::cy#1 -Coalesced (already) [175] gfx_mode::vic_colors#8 ? gfx_mode::vic_colors#1 -Coalesced (already) [176] gfx_mode::col#7 ? gfx_mode::col#1 -Coalesced [177] gfx_mode::cx#3 ? gfx_mode::cx#1 -Coalesced [178] gfx_mode::vic_control#8 ? gfx_mode::vic_control#5 -Coalesced [179] gfx_mode::dtv_control#28 ? gfx_mode::dtv_control#13 -Coalesced [180] gfx_mode::dtv_control#26 ? gfx_mode::dtv_control#11 -Coalesced [181] gfx_mode::dtv_control#24 ? gfx_mode::dtv_control#10 -Coalesced [182] gfx_mode::dtv_control#22 ? gfx_mode::dtv_control#15 -Coalesced [183] gfx_mode::dtv_control#19 ? gfx_mode::dtv_control#14 -Coalesced [187] keyboard_event_get::return#8 ? keyboard_event_get::return#1 -Coalesced [188] keyboard_events_size#163 ? keyboard_events_size#4 -Coalesced [191] keyboard_events_size#162 ? keyboard_events_size#100 -Coalesced [193] keyboard_events_size#166 ? keyboard_events_size#110 -Coalesced [201] keyboard_event_scan::keycode#18 ? keyboard_event_scan::keycode#1 -Coalesced (already) [202] keyboard_events_size#169 ? keyboard_events_size#119 -Coalesced [218] keyboard_modifiers#142 ? keyboard_modifiers#3 -Coalesced [225] keyboard_modifiers#144 ? keyboard_modifiers#4 -Coalesced [232] keyboard_modifiers#146 ? keyboard_modifiers#5 -Coalesced [235] keyboard_modifiers#145 ? keyboard_modifiers#20 -Coalesced [236] keyboard_modifiers#143 ? keyboard_modifiers#19 -Coalesced [237] keyboard_modifiers#141 ? keyboard_modifiers#18 -Coalesced [238] keyboard_event_scan::row#15 ? keyboard_event_scan::row#1 -Coalesced [239] keyboard_event_scan::keycode#16 ? keyboard_event_scan::keycode#14 -Coalesced (already) [240] keyboard_events_size#167 ? keyboard_events_size#100 -Coalesced [241] keyboard_event_scan::keycode#20 ? keyboard_event_scan::keycode#11 -Coalesced [242] keyboard_events_size#171 ? keyboard_events_size#119 -Coalesced [252] keyboard_events_size#175 ? keyboard_events_size#2 -Coalesced [258] keyboard_event_scan::keycode#17 ? keyboard_event_scan::keycode#15 -Coalesced [259] keyboard_events_size#168 ? keyboard_events_size#118 -Coalesced [260] keyboard_event_scan::col#9 ? keyboard_event_scan::col#1 -Coalesced (already) [261] keyboard_event_scan::keycode#19 ? keyboard_event_scan::keycode#15 -Coalesced (already) [262] keyboard_events_size#170 ? keyboard_events_size#118 -Coalesced [266] keyboard_events_size#174 ? keyboard_events_size#1 -Coalesced (already) [267] keyboard_events_size#173 ? keyboard_events_size#18 -Coalesced (already) [268] keyboard_events_size#172 ? keyboard_events_size#18 -Coalesced [327] render_preset_name::idx#13 ? render_preset_name::idx#0 -Coalesced [348] form_cursor_count#68 ? form_cursor_count#1 -Coalesced [349] keyboard_events_size#177 ? keyboard_events_size#27 -Coalesced [350] form_field_idx#76 ? form_field_idx#1 -Coalesced [351] form_mode::preset_current#12 ? form_mode::preset_current#0 -Coalesced [366] render_preset_name::idx#14 ? render_preset_name::idx#1 -Coalesced (already) [368] form_cursor_count#69 ? form_cursor_count#16 -Coalesced (already) [369] keyboard_events_size#178 ? keyboard_events_size#24 -Coalesced (already) [370] form_field_idx#77 ? form_field_idx#18 -Coalesced [371] form_mode::preset_current#13 ? form_mode::preset_current#1 -Coalesced (already) [372] form_cursor_count#67 ? form_cursor_count#16 -Coalesced (already) [373] keyboard_events_size#176 ? keyboard_events_size#24 -Coalesced (already) [374] form_field_idx#75 ? form_field_idx#18 -Coalesced [375] form_mode::i#3 ? form_mode::i#1 -Coalesced [393] print_str_at::str#5 ? print_str_at::str#1 -Coalesced [400] print_str_at::str#6 ? print_str_at::str#0 -Coalesced [401] print_str_at::at#5 ? print_str_at::at#0 -Coalesced [405] form_field_ptr::field_idx#4 ? form_field_ptr::field_idx#0 -Coalesced [413] form_render_values::idx#4 ? form_render_values::idx#1 -Coalesced [438] apply_preset::i#3 ? apply_preset::i#1 -Coalesced [440] form_field_ptr::field_idx#3 ? form_field_ptr::field_idx#1 -Coalesced (already) [451] keyboard_events_size#164 ? keyboard_events_size#47 -Coalesced [466] form_field_idx#81 ? form_field_idx#31 -Coalesced [469] form_field_idx#78 ? form_field_idx#44 -Coalesced [473] form_field_idx#79 ? form_field_idx#45 -Coalesced [481] form_cursor_count#72 ? form_cursor_count#15 -Coalesced (already) [482] form_field_idx#82 ? form_field_idx#28 -Coalesced (already) [487] form_cursor_count#71 ? form_cursor_count#15 -Coalesced (already) [488] form_field_idx#80 ? form_field_idx#28 -Coalesced (already) [489] form_cursor_count#73 ? form_cursor_count#15 -Coalesced (already) [490] form_field_idx#83 ? form_field_idx#28 -Coalesced [493] form_cursor_count#70 ? form_cursor_count#5 -Coalesced [504] form_set_screen::line#3 ? form_set_screen::line#1 -Coalesced [505] form_set_screen::y#3 ? form_set_screen::y#1 -Coalesced [507] print_str_lines::str#11 ? print_str_lines::str#5 -Not coalescing [508] print_char_cursor#77 ? print_screen#1 -Coalesced [509] print_line_cursor#77 ? print_screen#1 -Coalesced [513] print_str_lines::str#13 ? print_str_lines::str#3 -Coalesced [514] print_char_cursor#79 ? print_char_cursor#22 -Coalesced [521] print_char_cursor#82 ? print_char_cursor#1 -Coalesced [526] print_str_lines::str#12 ? print_str_lines::str#0 -Not coalescing [527] print_char_cursor#78 ? print_line_cursor#22 -Coalesced [528] print_line_cursor#78 ? print_line_cursor#22 -Coalesced (already) [529] print_str_lines::str#14 ? print_str_lines::str#0 -Coalesced [530] print_char_cursor#80 ? print_char_cursor#38 -Coalesced (already) [531] print_char_cursor#81 ? print_char_cursor#20 -Coalesced [532] print_line_cursor#79 ? print_line_cursor#2 -Coalesced (already) [537] print_line_cursor#80 ? print_line_cursor#22 -Coalesced [539] print_cls::sc#3 ? print_cls::sc#0 -Coalesced [546] print_cls::sc#4 ? print_cls::sc#1 -Coalesced [548] print_screen#1 ? print_set_screen::screen#2 -Coalesced [589] dtvSetCpuBankSegment1::cpuBankIdx#15 ? dtvSetCpuBankSegment1::cpuBankIdx#11 -Coalesced [597] gfx_init_plane_fill::gfxb#7 ? gfx_init_plane_fill::gfxb#3 -Coalesced [608] gfx_init_plane_fill::gfxb#5 ? gfx_init_plane_fill::gfxb#1 -Coalesced [609] gfx_init_plane_fill::by#5 ? gfx_init_plane_fill::by#1 -Coalesced (already) [610] gfx_init_plane_fill::gfxb#8 ? gfx_init_plane_fill::gfxb#1 -Coalesced [611] gfx_init_plane_fill::bx#3 ? gfx_init_plane_fill::bx#1 -Coalesced [625] gfx_init_plane_horisontal2::gfxa#6 ? gfx_init_plane_horisontal2::gfxa#3 -Coalesced [638] gfx_init_plane_horisontal2::ay#5 ? gfx_init_plane_horisontal2::ay#1 -Coalesced [639] gfx_init_plane_horisontal2::gfxa#5 ? gfx_init_plane_horisontal2::gfxa#1 -Coalesced (already) [640] gfx_init_plane_horisontal2::gfxa#7 ? gfx_init_plane_horisontal2::gfxa#1 -Coalesced [641] gfx_init_plane_horisontal2::ax#3 ? gfx_init_plane_horisontal2::ax#1 -Coalesced [645] gfx_init_plane_vertical::gfxb#6 ? gfx_init_plane_vertical::gfxb#3 -Coalesced [656] gfx_init_plane_vertical::gfxb#5 ? gfx_init_plane_vertical::gfxb#1 -Coalesced [657] gfx_init_plane_vertical::by#5 ? gfx_init_plane_vertical::by#1 -Coalesced (already) [658] gfx_init_plane_vertical::gfxb#7 ? gfx_init_plane_vertical::gfxb#1 -Coalesced [659] gfx_init_plane_vertical::bx#3 ? gfx_init_plane_vertical::bx#1 -Coalesced [663] gfx_init_plane_horisontal::gfxa#10 ? gfx_init_plane_horisontal::gfxa#6 -Coalesced [669] gfx_init_plane_horisontal::gfxa#13 ? gfx_init_plane_horisontal::gfxa#2 -Coalesced [678] gfx_init_plane_horisontal::ay#8 ? gfx_init_plane_horisontal::ay#1 -Coalesced [679] gfx_init_plane_horisontal::gfxa#9 ? gfx_init_plane_horisontal::gfxa#7 -Coalesced (already) [680] gfx_init_plane_horisontal::gfxa#11 ? gfx_init_plane_horisontal::gfxa#7 -Coalesced [681] gfx_init_plane_horisontal::ax#6 ? gfx_init_plane_horisontal::ax#1 -Coalesced [684] gfx_init_plane_horisontal::gfxa#12 ? gfx_init_plane_horisontal::gfxa#1 -Coalesced [689] gfx_init_plane_charset8::chargen#10 ? gfx_init_plane_charset8::chargen#3 -Coalesced [690] gfx_init_plane_charset8::gfxa#10 ? gfx_init_plane_charset8::gfxa#6 -Coalesced [691] gfx_init_plane_charset8::col#10 ? gfx_init_plane_charset8::col#6 -Coalesced [695] gfx_init_plane_charset8::bits#5 ? gfx_init_plane_charset8::bits#0 -Coalesced [696] gfx_init_plane_charset8::gfxa#12 ? gfx_init_plane_charset8::gfxa#5 -Coalesced [697] gfx_init_plane_charset8::col#12 ? gfx_init_plane_charset8::col#5 -Not coalescing [701] gfx_init_plane_charset8::c#3 ? gfx_init_plane_charset8::col#2 -Coalesced [716] gfx_init_plane_charset8::chargen#9 ? gfx_init_plane_charset8::chargen#1 -Coalesced [717] gfx_init_plane_charset8::gfxa#9 ? gfx_init_plane_charset8::gfxa#1 -Coalesced [718] gfx_init_plane_charset8::col#9 ? gfx_init_plane_charset8::col#1 -Coalesced [719] gfx_init_plane_charset8::ch#9 ? gfx_init_plane_charset8::ch#1 -Coalesced (already) [720] gfx_init_plane_charset8::chargen#11 ? gfx_init_plane_charset8::chargen#1 -Coalesced (already) [721] gfx_init_plane_charset8::gfxa#11 ? gfx_init_plane_charset8::gfxa#1 -Coalesced (already) [722] gfx_init_plane_charset8::col#11 ? gfx_init_plane_charset8::col#1 -Coalesced [723] gfx_init_plane_charset8::cr#7 ? gfx_init_plane_charset8::cr#1 -Coalesced [724] gfx_init_plane_charset8::bits#6 ? gfx_init_plane_charset8::bits#1 -Coalesced (already) [725] gfx_init_plane_charset8::gfxa#13 ? gfx_init_plane_charset8::gfxa#1 -Coalesced (already) [726] gfx_init_plane_charset8::col#13 ? gfx_init_plane_charset8::col#1 -Coalesced [727] gfx_init_plane_charset8::cp#5 ? gfx_init_plane_charset8::cp#1 -Coalesced [731] gfx_init_plane_8bppchunky::gfxb#8 ? gfx_init_plane_8bppchunky::gfxb#5 -Coalesced [732] gfx_init_plane_8bppchunky::gfxbCpuBank#11 ? gfx_init_plane_8bppchunky::gfxbCpuBank#7 -Coalesced [736] dtvSetCpuBankSegment1::cpuBankIdx#14 ? dtvSetCpuBankSegment1::cpuBankIdx#1 -Coalesced [739] gfx_init_plane_8bppchunky::gfxbCpuBank#14 ? gfx_init_plane_8bppchunky::gfxbCpuBank#2 -Coalesced [752] gfx_init_plane_8bppchunky::gfxb#7 ? gfx_init_plane_8bppchunky::gfxb#1 -Coalesced [753] gfx_init_plane_8bppchunky::y#8 ? gfx_init_plane_8bppchunky::y#1 -Coalesced [754] gfx_init_plane_8bppchunky::gfxbCpuBank#10 ? gfx_init_plane_8bppchunky::gfxbCpuBank#8 -Coalesced (already) [755] gfx_init_plane_8bppchunky::gfxb#9 ? gfx_init_plane_8bppchunky::gfxb#1 -Coalesced [756] gfx_init_plane_8bppchunky::x#6 ? gfx_init_plane_8bppchunky::x#1 -Coalesced (already) [757] gfx_init_plane_8bppchunky::gfxbCpuBank#12 ? gfx_init_plane_8bppchunky::gfxbCpuBank#8 -Coalesced [758] gfx_init_plane_8bppchunky::gfxb#10 ? gfx_init_plane_8bppchunky::gfxb#3 -Coalesced (already) [759] gfx_init_plane_8bppchunky::gfxbCpuBank#13 ? gfx_init_plane_8bppchunky::gfxbCpuBank#4 -Coalesced [773] gfx_init_vic_bitmap::l#4 ? gfx_init_vic_bitmap::l#1 -Coalesced [784] bitmap_line_ydxi::xd#8 ? bitmap_line_ydxi::xd#0 -Coalesced [785] bitmap_line_ydxi::x#9 ? bitmap_line_ydxi::x#0 -Coalesced [786] bitmap_line_ydxi::y#9 ? bitmap_line_ydxi::y#0 -Coalesced [787] bitmap_line_ydxi::yd#8 ? bitmap_line_ydxi::yd#0 -Coalesced [788] bitmap_line_ydxi::y1#8 ? bitmap_line_ydxi::y1#0 -Coalesced [796] bitmap_line_xdyi::yd#7 ? bitmap_line_xdyi::yd#0 -Coalesced [797] bitmap_line_xdyi::x#8 ? bitmap_line_xdyi::x#0 -Coalesced [798] bitmap_line_xdyi::y#8 ? bitmap_line_xdyi::y#0 -Coalesced [799] bitmap_line_xdyi::xd#7 ? bitmap_line_xdyi::xd#0 -Coalesced [800] bitmap_line_xdyi::x1#7 ? bitmap_line_xdyi::x1#0 -Coalesced [809] bitmap_line_ydxd::xd#7 ? bitmap_line_ydxd::xd#0 -Coalesced [810] bitmap_line_ydxd::x#8 ? bitmap_line_ydxd::x#0 -Coalesced [811] bitmap_line_ydxd::y#9 ? bitmap_line_ydxd::y#0 -Coalesced [812] bitmap_line_ydxd::yd#7 ? bitmap_line_ydxd::yd#0 -Coalesced [813] bitmap_line_ydxd::y1#7 ? bitmap_line_ydxd::y1#0 -Coalesced [820] bitmap_line_xdyd::yd#7 ? bitmap_line_xdyd::yd#0 -Coalesced [821] bitmap_line_xdyd::x#8 ? bitmap_line_xdyd::x#0 -Coalesced [822] bitmap_line_xdyd::y#8 ? bitmap_line_xdyd::y#0 -Coalesced [823] bitmap_line_xdyd::xd#7 ? bitmap_line_xdyd::xd#0 -Coalesced [824] bitmap_line_xdyd::x1#7 ? bitmap_line_xdyd::x1#0 -Coalesced [835] bitmap_line_ydxd::xd#8 ? bitmap_line_ydxd::xd#1 -Coalesced [836] bitmap_line_ydxd::x#9 ? bitmap_line_ydxd::x#1 -Coalesced [837] bitmap_line_ydxd::y#10 ? bitmap_line_ydxd::y#1 -Coalesced [838] bitmap_line_ydxd::yd#8 ? bitmap_line_ydxd::yd#1 -Coalesced [839] bitmap_line_ydxd::y1#8 ? bitmap_line_ydxd::y1#1 -Coalesced [846] bitmap_line_xdyd::yd#8 ? bitmap_line_xdyd::yd#1 -Coalesced [847] bitmap_line_xdyd::x#9 ? bitmap_line_xdyd::x#1 -Coalesced [848] bitmap_line_xdyd::y#9 ? bitmap_line_xdyd::y#1 -Coalesced [849] bitmap_line_xdyd::xd#8 ? bitmap_line_xdyd::xd#1 -Coalesced [850] bitmap_line_xdyd::x1#8 ? bitmap_line_xdyd::x1#1 -Coalesced [859] bitmap_line_ydxi::xd#7 ? bitmap_line_ydxi::xd#1 -Coalesced [860] bitmap_line_ydxi::x#8 ? bitmap_line_ydxi::x#1 -Coalesced [861] bitmap_line_ydxi::y#8 ? bitmap_line_ydxi::y#1 -Coalesced [862] bitmap_line_ydxi::yd#7 ? bitmap_line_ydxi::yd#1 -Coalesced [863] bitmap_line_ydxi::y1#7 ? bitmap_line_ydxi::y1#1 -Coalesced [870] bitmap_line_xdyi::yd#8 ? bitmap_line_xdyi::yd#1 -Coalesced [871] bitmap_line_xdyi::x#9 ? bitmap_line_xdyi::x#1 -Coalesced [872] bitmap_line_xdyi::y#9 ? bitmap_line_xdyi::y#1 -Coalesced [873] bitmap_line_xdyi::xd#8 ? bitmap_line_xdyi::xd#1 -Coalesced [874] bitmap_line_xdyi::x1#8 ? bitmap_line_xdyi::x1#1 -Coalesced [878] bitmap_line_xdyi::x#10 ? bitmap_line_xdyi::x#6 -Coalesced [879] bitmap_line_xdyi::y#10 ? bitmap_line_xdyi::y#5 -Coalesced [880] bitmap_line_xdyi::e#7 ? bitmap_line_xdyi::e#0 -Coalesced [884] bitmap_plot::x#6 ? bitmap_plot::x#0 -Coalesced [885] bitmap_plot::y#6 ? bitmap_plot::y#0 -Coalesced [892] bitmap_line_xdyi::y#12 ? bitmap_line_xdyi::y#2 -Coalesced [893] bitmap_line_xdyi::e#9 ? bitmap_line_xdyi::e#2 -Coalesced [898] bitmap_line_xdyi::x#11 ? bitmap_line_xdyi::x#2 -Coalesced [899] bitmap_line_xdyi::y#11 ? bitmap_line_xdyi::y#6 -Coalesced [900] bitmap_line_xdyi::e#8 ? bitmap_line_xdyi::e#6 -Coalesced (already) [901] bitmap_line_xdyi::y#13 ? bitmap_line_xdyi::y#3 -Coalesced [902] bitmap_line_xdyi::e#10 ? bitmap_line_xdyi::e#1 -Coalesced [912] bitmap_line_ydxi::x#10 ? bitmap_line_ydxi::x#5 -Coalesced [913] bitmap_line_ydxi::y#10 ? bitmap_line_ydxi::y#6 -Coalesced [914] bitmap_line_ydxi::e#7 ? bitmap_line_ydxi::e#0 -Coalesced [918] bitmap_plot::x#8 ? bitmap_plot::x#2 -Coalesced [919] bitmap_plot::y#8 ? bitmap_plot::y#2 -Coalesced [926] bitmap_line_ydxi::x#12 ? bitmap_line_ydxi::x#2 -Coalesced [927] bitmap_line_ydxi::e#9 ? bitmap_line_ydxi::e#2 -Coalesced [932] bitmap_line_ydxi::x#11 ? bitmap_line_ydxi::x#6 -Coalesced [933] bitmap_line_ydxi::y#11 ? bitmap_line_ydxi::y#2 -Coalesced [934] bitmap_line_ydxi::e#8 ? bitmap_line_ydxi::e#6 -Coalesced (already) [935] bitmap_line_ydxi::x#13 ? bitmap_line_ydxi::x#3 -Coalesced [936] bitmap_line_ydxi::e#10 ? bitmap_line_ydxi::e#1 -Coalesced [939] bitmap_line_xdyd::x#10 ? bitmap_line_xdyd::x#6 -Coalesced [940] bitmap_line_xdyd::y#10 ? bitmap_line_xdyd::y#5 -Coalesced [941] bitmap_line_xdyd::e#7 ? bitmap_line_xdyd::e#0 -Coalesced [945] bitmap_plot::x#5 ? bitmap_plot::x#1 -Coalesced [946] bitmap_plot::y#5 ? bitmap_plot::y#1 -Coalesced [953] bitmap_line_xdyd::y#12 ? bitmap_line_xdyd::y#2 -Coalesced [954] bitmap_line_xdyd::e#9 ? bitmap_line_xdyd::e#2 -Coalesced [959] bitmap_line_xdyd::x#11 ? bitmap_line_xdyd::x#2 -Coalesced [960] bitmap_line_xdyd::y#11 ? bitmap_line_xdyd::y#6 -Coalesced [961] bitmap_line_xdyd::e#8 ? bitmap_line_xdyd::e#6 -Coalesced (already) [962] bitmap_line_xdyd::y#13 ? bitmap_line_xdyd::y#3 -Coalesced [963] bitmap_line_xdyd::e#10 ? bitmap_line_xdyd::e#1 -Coalesced [966] bitmap_line_ydxd::x#10 ? bitmap_line_ydxd::x#5 -Coalesced [967] bitmap_line_ydxd::y#11 ? bitmap_line_ydxd::y#7 -Coalesced [968] bitmap_line_ydxd::e#7 ? bitmap_line_ydxd::e#0 -Coalesced [972] bitmap_plot::x#7 ? bitmap_plot::x#3 -Coalesced [973] bitmap_plot::y#7 ? bitmap_plot::y#3 -Coalesced [980] bitmap_line_ydxd::x#12 ? bitmap_line_ydxd::x#2 -Coalesced [981] bitmap_line_ydxd::e#9 ? bitmap_line_ydxd::e#2 -Coalesced [986] bitmap_line_ydxd::x#11 ? bitmap_line_ydxd::x#6 -Coalesced [987] bitmap_line_ydxd::y#12 ? bitmap_line_ydxd::y#3 -Coalesced [988] bitmap_line_ydxd::e#8 ? bitmap_line_ydxd::e#6 -Coalesced (already) [989] bitmap_line_ydxd::x#13 ? bitmap_line_ydxd::x#3 -Coalesced [990] bitmap_line_ydxd::e#10 ? bitmap_line_ydxd::e#1 -Coalesced [994] bitmap_clear::bitmap#7 ? bitmap_clear::bitmap#3 -Coalesced [1003] bitmap_clear::bitmap#6 ? bitmap_clear::bitmap#1 -Coalesced [1004] bitmap_clear::y#5 ? bitmap_clear::y#1 -Coalesced (already) [1005] bitmap_clear::bitmap#8 ? bitmap_clear::bitmap#1 -Coalesced [1006] bitmap_clear::x#3 ? bitmap_clear::x#1 -Coalesced [1029] bitmap_init::yoffs#7 ? bitmap_init::yoffs#1 -Coalesced [1034] bitmap_init::y#5 ? bitmap_init::y#1 -Coalesced [1035] bitmap_init::yoffs#5 ? bitmap_init::yoffs#4 -Coalesced (already) [1036] bitmap_init::yoffs#6 ? bitmap_init::yoffs#2 -Coalesced [1037] bitmap_init::x#5 ? bitmap_init::x#1 -Coalesced [1038] bitmap_init::bits#5 ? bitmap_init::bits#4 -Coalesced [1039] bitmap_init::bits#6 ? bitmap_init::bits#1 -Coalesced [1042] gfx_init_charset::chargen#6 ? gfx_init_charset::chargen#3 -Coalesced [1043] gfx_init_charset::charset#6 ? gfx_init_charset::charset#3 -Coalesced [1054] gfx_init_charset::chargen#5 ? gfx_init_charset::chargen#1 -Coalesced [1055] gfx_init_charset::charset#5 ? gfx_init_charset::charset#1 -Coalesced [1056] gfx_init_charset::c#5 ? gfx_init_charset::c#1 -Coalesced (already) [1057] gfx_init_charset::chargen#7 ? gfx_init_charset::chargen#1 -Coalesced (already) [1058] gfx_init_charset::charset#7 ? gfx_init_charset::charset#1 -Coalesced [1059] gfx_init_charset::l#3 ? gfx_init_charset::l#1 -Coalesced [1062] gfx_init_screen4::ch#6 ? gfx_init_screen4::ch#3 -Coalesced [1071] gfx_init_screen4::ch#5 ? gfx_init_screen4::ch#1 -Coalesced [1072] gfx_init_screen4::cy#5 ? gfx_init_screen4::cy#1 -Coalesced (already) [1073] gfx_init_screen4::ch#7 ? gfx_init_screen4::ch#1 -Coalesced [1074] gfx_init_screen4::cx#3 ? gfx_init_screen4::cx#1 -Coalesced [1077] gfx_init_screen3::ch#6 ? gfx_init_screen3::ch#3 -Coalesced [1090] gfx_init_screen3::cy#5 ? gfx_init_screen3::cy#1 -Coalesced [1091] gfx_init_screen3::ch#5 ? gfx_init_screen3::ch#1 -Coalesced [1092] gfx_init_screen3::cx#3 ? gfx_init_screen3::cx#1 -Coalesced (already) [1093] gfx_init_screen3::ch#7 ? gfx_init_screen3::ch#1 -Coalesced [1096] gfx_init_screen2::ch#6 ? gfx_init_screen2::ch#3 -Coalesced [1110] gfx_init_screen2::cy#5 ? gfx_init_screen2::cy#1 -Coalesced [1111] gfx_init_screen2::ch#5 ? gfx_init_screen2::ch#1 -Coalesced [1112] gfx_init_screen2::cx#3 ? gfx_init_screen2::cx#1 -Coalesced (already) [1113] gfx_init_screen2::ch#7 ? gfx_init_screen2::ch#1 -Coalesced [1116] gfx_init_screen1::ch#6 ? gfx_init_screen1::ch#3 -Coalesced [1127] gfx_init_screen1::cy#5 ? gfx_init_screen1::cy#1 -Coalesced [1128] gfx_init_screen1::ch#5 ? gfx_init_screen1::ch#1 -Coalesced [1129] gfx_init_screen1::cx#3 ? gfx_init_screen1::cx#1 -Coalesced (already) [1130] gfx_init_screen1::ch#7 ? gfx_init_screen1::ch#1 -Coalesced [1133] gfx_init_screen0::ch#6 ? gfx_init_screen0::ch#3 -Coalesced [1146] gfx_init_screen0::cy#5 ? gfx_init_screen0::cy#1 -Coalesced [1147] gfx_init_screen0::ch#5 ? gfx_init_screen0::ch#1 -Coalesced [1148] gfx_init_screen0::cx#3 ? gfx_init_screen0::cx#1 -Coalesced (already) [1149] gfx_init_screen0::ch#7 ? gfx_init_screen0::ch#1 +Coalesced [16] form_cursor_count#66 ← form_cursor_count#16 +Coalesced [17] keyboard_events_size#161 ← keyboard_events_size#24 +Coalesced [18] form_field_idx#74 ← form_field_idx#18 +Coalesced [24] gfx_mode::dtv_control#20 ← gfx_mode::dtv_control#2 +Coalesced [28] gfx_mode::dtv_control#21 ← gfx_mode::dtv_control#3 +Coalesced [32] gfx_mode::dtv_control#23 ← gfx_mode::dtv_control#4 +Coalesced [36] gfx_mode::dtv_control#25 ← gfx_mode::dtv_control#5 +Coalesced [40] gfx_mode::dtv_control#27 ← gfx_mode::dtv_control#6 +Coalesced [48] gfx_mode::vic_control#7 ← gfx_mode::vic_control#2 +Coalesced [58] get_plane::idx#17 ← get_plane::idx#0 +Coalesced [82] get_plane::idx#16 ← get_plane::idx#1 +Coalesced [106] get_vic_screen::idx#7 ← get_vic_screen::idx#0 +Coalesced [123] get_vic_screen::idx#8 ← get_vic_screen::idx#1 +Coalesced [127] gfx_mode::vic_colors#6 ← gfx_mode::vic_colors#0 +Coalesced [129] gfx_mode::vic_colors#7 ← gfx_mode::vic_colors#3 +Coalesced [130] gfx_mode::col#6 ← gfx_mode::col#3 +Coalesced [158] keyboard_events_size#165 ← keyboard_events_size#24 +Coalesced [166] gfx_mode::j#3 ← gfx_mode::j#1 +Coalesced [171] gfx_mode::i#3 ← gfx_mode::i#1 +Coalesced [172] gfx_mode::vic_colors#5 ← gfx_mode::vic_colors#1 +Coalesced [173] gfx_mode::col#5 ← gfx_mode::col#1 +Coalesced [174] gfx_mode::cy#5 ← gfx_mode::cy#1 +Coalesced (already) [175] gfx_mode::vic_colors#8 ← gfx_mode::vic_colors#1 +Coalesced (already) [176] gfx_mode::col#7 ← gfx_mode::col#1 +Coalesced [177] gfx_mode::cx#3 ← gfx_mode::cx#1 +Coalesced [178] gfx_mode::vic_control#8 ← gfx_mode::vic_control#5 +Coalesced [179] gfx_mode::dtv_control#28 ← gfx_mode::dtv_control#13 +Coalesced [180] gfx_mode::dtv_control#26 ← gfx_mode::dtv_control#11 +Coalesced [181] gfx_mode::dtv_control#24 ← gfx_mode::dtv_control#10 +Coalesced [182] gfx_mode::dtv_control#22 ← gfx_mode::dtv_control#15 +Coalesced [183] gfx_mode::dtv_control#19 ← gfx_mode::dtv_control#14 +Coalesced [187] keyboard_event_get::return#8 ← keyboard_event_get::return#1 +Coalesced [188] keyboard_events_size#163 ← keyboard_events_size#4 +Coalesced [191] keyboard_events_size#162 ← keyboard_events_size#100 +Coalesced [193] keyboard_events_size#166 ← keyboard_events_size#110 +Coalesced [201] keyboard_event_scan::keycode#18 ← keyboard_event_scan::keycode#1 +Coalesced (already) [202] keyboard_events_size#169 ← keyboard_events_size#119 +Coalesced [218] keyboard_modifiers#142 ← keyboard_modifiers#3 +Coalesced [225] keyboard_modifiers#144 ← keyboard_modifiers#4 +Coalesced [232] keyboard_modifiers#146 ← keyboard_modifiers#5 +Coalesced [235] keyboard_modifiers#145 ← keyboard_modifiers#20 +Coalesced [236] keyboard_modifiers#143 ← keyboard_modifiers#19 +Coalesced [237] keyboard_modifiers#141 ← keyboard_modifiers#18 +Coalesced [238] keyboard_event_scan::row#15 ← keyboard_event_scan::row#1 +Coalesced [239] keyboard_event_scan::keycode#16 ← keyboard_event_scan::keycode#14 +Coalesced (already) [240] keyboard_events_size#167 ← keyboard_events_size#100 +Coalesced [241] keyboard_event_scan::keycode#20 ← keyboard_event_scan::keycode#11 +Coalesced [242] keyboard_events_size#171 ← keyboard_events_size#119 +Coalesced [252] keyboard_events_size#175 ← keyboard_events_size#2 +Coalesced [258] keyboard_event_scan::keycode#17 ← keyboard_event_scan::keycode#15 +Coalesced [259] keyboard_events_size#168 ← keyboard_events_size#118 +Coalesced [260] keyboard_event_scan::col#9 ← keyboard_event_scan::col#1 +Coalesced (already) [261] keyboard_event_scan::keycode#19 ← keyboard_event_scan::keycode#15 +Coalesced (already) [262] keyboard_events_size#170 ← keyboard_events_size#118 +Coalesced [266] keyboard_events_size#174 ← keyboard_events_size#1 +Coalesced (already) [267] keyboard_events_size#173 ← keyboard_events_size#18 +Coalesced (already) [268] keyboard_events_size#172 ← keyboard_events_size#18 +Coalesced [327] render_preset_name::idx#13 ← render_preset_name::idx#0 +Coalesced [348] form_cursor_count#68 ← form_cursor_count#1 +Coalesced [349] keyboard_events_size#177 ← keyboard_events_size#27 +Coalesced [350] form_field_idx#76 ← form_field_idx#1 +Coalesced [351] form_mode::preset_current#12 ← form_mode::preset_current#0 +Coalesced [366] render_preset_name::idx#14 ← render_preset_name::idx#1 +Coalesced (already) [368] form_cursor_count#69 ← form_cursor_count#16 +Coalesced (already) [369] keyboard_events_size#178 ← keyboard_events_size#24 +Coalesced (already) [370] form_field_idx#77 ← form_field_idx#18 +Coalesced [371] form_mode::preset_current#13 ← form_mode::preset_current#1 +Coalesced (already) [372] form_cursor_count#67 ← form_cursor_count#16 +Coalesced (already) [373] keyboard_events_size#176 ← keyboard_events_size#24 +Coalesced (already) [374] form_field_idx#75 ← form_field_idx#18 +Coalesced [375] form_mode::i#3 ← form_mode::i#1 +Coalesced [393] print_str_at::str#5 ← print_str_at::str#1 +Coalesced [400] print_str_at::str#6 ← print_str_at::str#0 +Coalesced [401] print_str_at::at#5 ← print_str_at::at#0 +Coalesced [405] form_field_ptr::field_idx#4 ← form_field_ptr::field_idx#0 +Coalesced [413] form_render_values::idx#4 ← form_render_values::idx#1 +Coalesced [438] apply_preset::i#3 ← apply_preset::i#1 +Coalesced [440] form_field_ptr::field_idx#3 ← form_field_ptr::field_idx#1 +Coalesced (already) [451] keyboard_events_size#164 ← keyboard_events_size#47 +Coalesced [466] form_field_idx#81 ← form_field_idx#31 +Coalesced [469] form_field_idx#78 ← form_field_idx#44 +Coalesced [473] form_field_idx#79 ← form_field_idx#45 +Coalesced [481] form_cursor_count#72 ← form_cursor_count#15 +Coalesced (already) [482] form_field_idx#82 ← form_field_idx#28 +Coalesced (already) [487] form_cursor_count#71 ← form_cursor_count#15 +Coalesced (already) [488] form_field_idx#80 ← form_field_idx#28 +Coalesced (already) [489] form_cursor_count#73 ← form_cursor_count#15 +Coalesced (already) [490] form_field_idx#83 ← form_field_idx#28 +Coalesced [493] form_cursor_count#70 ← form_cursor_count#5 +Coalesced [504] form_set_screen::line#3 ← form_set_screen::line#1 +Coalesced [505] form_set_screen::y#3 ← form_set_screen::y#1 +Coalesced [507] print_str_lines::str#11 ← print_str_lines::str#5 +Not coalescing [508] print_char_cursor#77 ← print_screen#1 +Coalesced [509] print_line_cursor#77 ← print_screen#1 +Coalesced [513] print_str_lines::str#13 ← print_str_lines::str#3 +Coalesced [514] print_char_cursor#79 ← print_char_cursor#22 +Coalesced [521] print_char_cursor#82 ← print_char_cursor#1 +Coalesced [526] print_str_lines::str#12 ← print_str_lines::str#0 +Not coalescing [527] print_char_cursor#78 ← print_line_cursor#22 +Coalesced [528] print_line_cursor#78 ← print_line_cursor#22 +Coalesced (already) [529] print_str_lines::str#14 ← print_str_lines::str#0 +Coalesced [530] print_char_cursor#80 ← print_char_cursor#38 +Coalesced (already) [531] print_char_cursor#81 ← print_char_cursor#20 +Coalesced [532] print_line_cursor#79 ← print_line_cursor#2 +Coalesced (already) [537] print_line_cursor#80 ← print_line_cursor#22 +Coalesced [539] print_cls::sc#3 ← print_cls::sc#0 +Coalesced [546] print_cls::sc#4 ← print_cls::sc#1 +Coalesced [548] print_screen#1 ← print_set_screen::screen#2 +Coalesced [589] dtvSetCpuBankSegment1::cpuBankIdx#15 ← dtvSetCpuBankSegment1::cpuBankIdx#11 +Coalesced [597] gfx_init_plane_fill::gfxb#7 ← gfx_init_plane_fill::gfxb#3 +Coalesced [608] gfx_init_plane_fill::gfxb#5 ← gfx_init_plane_fill::gfxb#1 +Coalesced [609] gfx_init_plane_fill::by#5 ← gfx_init_plane_fill::by#1 +Coalesced (already) [610] gfx_init_plane_fill::gfxb#8 ← gfx_init_plane_fill::gfxb#1 +Coalesced [611] gfx_init_plane_fill::bx#3 ← gfx_init_plane_fill::bx#1 +Coalesced [625] gfx_init_plane_horisontal2::gfxa#6 ← gfx_init_plane_horisontal2::gfxa#3 +Coalesced [638] gfx_init_plane_horisontal2::ay#5 ← gfx_init_plane_horisontal2::ay#1 +Coalesced [639] gfx_init_plane_horisontal2::gfxa#5 ← gfx_init_plane_horisontal2::gfxa#1 +Coalesced (already) [640] gfx_init_plane_horisontal2::gfxa#7 ← gfx_init_plane_horisontal2::gfxa#1 +Coalesced [641] gfx_init_plane_horisontal2::ax#3 ← gfx_init_plane_horisontal2::ax#1 +Coalesced [645] gfx_init_plane_vertical::gfxb#6 ← gfx_init_plane_vertical::gfxb#3 +Coalesced [656] gfx_init_plane_vertical::gfxb#5 ← gfx_init_plane_vertical::gfxb#1 +Coalesced [657] gfx_init_plane_vertical::by#5 ← gfx_init_plane_vertical::by#1 +Coalesced (already) [658] gfx_init_plane_vertical::gfxb#7 ← gfx_init_plane_vertical::gfxb#1 +Coalesced [659] gfx_init_plane_vertical::bx#3 ← gfx_init_plane_vertical::bx#1 +Coalesced [663] gfx_init_plane_horisontal::gfxa#10 ← gfx_init_plane_horisontal::gfxa#6 +Coalesced [669] gfx_init_plane_horisontal::gfxa#13 ← gfx_init_plane_horisontal::gfxa#2 +Coalesced [678] gfx_init_plane_horisontal::ay#8 ← gfx_init_plane_horisontal::ay#1 +Coalesced [679] gfx_init_plane_horisontal::gfxa#9 ← gfx_init_plane_horisontal::gfxa#7 +Coalesced (already) [680] gfx_init_plane_horisontal::gfxa#11 ← gfx_init_plane_horisontal::gfxa#7 +Coalesced [681] gfx_init_plane_horisontal::ax#6 ← gfx_init_plane_horisontal::ax#1 +Coalesced [684] gfx_init_plane_horisontal::gfxa#12 ← gfx_init_plane_horisontal::gfxa#1 +Coalesced [689] gfx_init_plane_charset8::chargen#10 ← gfx_init_plane_charset8::chargen#3 +Coalesced [690] gfx_init_plane_charset8::gfxa#10 ← gfx_init_plane_charset8::gfxa#6 +Coalesced [691] gfx_init_plane_charset8::col#10 ← gfx_init_plane_charset8::col#6 +Coalesced [695] gfx_init_plane_charset8::bits#5 ← gfx_init_plane_charset8::bits#0 +Coalesced [696] gfx_init_plane_charset8::gfxa#12 ← gfx_init_plane_charset8::gfxa#5 +Coalesced [697] gfx_init_plane_charset8::col#12 ← gfx_init_plane_charset8::col#5 +Not coalescing [701] gfx_init_plane_charset8::c#3 ← gfx_init_plane_charset8::col#2 +Coalesced [716] gfx_init_plane_charset8::chargen#9 ← gfx_init_plane_charset8::chargen#1 +Coalesced [717] gfx_init_plane_charset8::gfxa#9 ← gfx_init_plane_charset8::gfxa#1 +Coalesced [718] gfx_init_plane_charset8::col#9 ← gfx_init_plane_charset8::col#1 +Coalesced [719] gfx_init_plane_charset8::ch#9 ← gfx_init_plane_charset8::ch#1 +Coalesced (already) [720] gfx_init_plane_charset8::chargen#11 ← gfx_init_plane_charset8::chargen#1 +Coalesced (already) [721] gfx_init_plane_charset8::gfxa#11 ← gfx_init_plane_charset8::gfxa#1 +Coalesced (already) [722] gfx_init_plane_charset8::col#11 ← gfx_init_plane_charset8::col#1 +Coalesced [723] gfx_init_plane_charset8::cr#7 ← gfx_init_plane_charset8::cr#1 +Coalesced [724] gfx_init_plane_charset8::bits#6 ← gfx_init_plane_charset8::bits#1 +Coalesced (already) [725] gfx_init_plane_charset8::gfxa#13 ← gfx_init_plane_charset8::gfxa#1 +Coalesced (already) [726] gfx_init_plane_charset8::col#13 ← gfx_init_plane_charset8::col#1 +Coalesced [727] gfx_init_plane_charset8::cp#5 ← gfx_init_plane_charset8::cp#1 +Coalesced [731] gfx_init_plane_8bppchunky::gfxb#8 ← gfx_init_plane_8bppchunky::gfxb#5 +Coalesced [732] gfx_init_plane_8bppchunky::gfxbCpuBank#11 ← gfx_init_plane_8bppchunky::gfxbCpuBank#7 +Coalesced [736] dtvSetCpuBankSegment1::cpuBankIdx#14 ← dtvSetCpuBankSegment1::cpuBankIdx#1 +Coalesced [739] gfx_init_plane_8bppchunky::gfxbCpuBank#14 ← gfx_init_plane_8bppchunky::gfxbCpuBank#2 +Coalesced [752] gfx_init_plane_8bppchunky::gfxb#7 ← gfx_init_plane_8bppchunky::gfxb#1 +Coalesced [753] gfx_init_plane_8bppchunky::y#8 ← gfx_init_plane_8bppchunky::y#1 +Coalesced [754] gfx_init_plane_8bppchunky::gfxbCpuBank#10 ← gfx_init_plane_8bppchunky::gfxbCpuBank#8 +Coalesced (already) [755] gfx_init_plane_8bppchunky::gfxb#9 ← gfx_init_plane_8bppchunky::gfxb#1 +Coalesced [756] gfx_init_plane_8bppchunky::x#6 ← gfx_init_plane_8bppchunky::x#1 +Coalesced (already) [757] gfx_init_plane_8bppchunky::gfxbCpuBank#12 ← gfx_init_plane_8bppchunky::gfxbCpuBank#8 +Coalesced [758] gfx_init_plane_8bppchunky::gfxb#10 ← gfx_init_plane_8bppchunky::gfxb#3 +Coalesced (already) [759] gfx_init_plane_8bppchunky::gfxbCpuBank#13 ← gfx_init_plane_8bppchunky::gfxbCpuBank#4 +Coalesced [773] gfx_init_vic_bitmap::l#4 ← gfx_init_vic_bitmap::l#1 +Coalesced [784] bitmap_line_ydxi::xd#8 ← bitmap_line_ydxi::xd#0 +Coalesced [785] bitmap_line_ydxi::x#9 ← bitmap_line_ydxi::x#0 +Coalesced [786] bitmap_line_ydxi::y#9 ← bitmap_line_ydxi::y#0 +Coalesced [787] bitmap_line_ydxi::yd#8 ← bitmap_line_ydxi::yd#0 +Coalesced [788] bitmap_line_ydxi::y1#8 ← bitmap_line_ydxi::y1#0 +Coalesced [796] bitmap_line_xdyi::yd#7 ← bitmap_line_xdyi::yd#0 +Coalesced [797] bitmap_line_xdyi::x#8 ← bitmap_line_xdyi::x#0 +Coalesced [798] bitmap_line_xdyi::y#8 ← bitmap_line_xdyi::y#0 +Coalesced [799] bitmap_line_xdyi::xd#7 ← bitmap_line_xdyi::xd#0 +Coalesced [800] bitmap_line_xdyi::x1#7 ← bitmap_line_xdyi::x1#0 +Coalesced [809] bitmap_line_ydxd::xd#7 ← bitmap_line_ydxd::xd#0 +Coalesced [810] bitmap_line_ydxd::x#8 ← bitmap_line_ydxd::x#0 +Coalesced [811] bitmap_line_ydxd::y#9 ← bitmap_line_ydxd::y#0 +Coalesced [812] bitmap_line_ydxd::yd#7 ← bitmap_line_ydxd::yd#0 +Coalesced [813] bitmap_line_ydxd::y1#7 ← bitmap_line_ydxd::y1#0 +Coalesced [820] bitmap_line_xdyd::yd#7 ← bitmap_line_xdyd::yd#0 +Coalesced [821] bitmap_line_xdyd::x#8 ← bitmap_line_xdyd::x#0 +Coalesced [822] bitmap_line_xdyd::y#8 ← bitmap_line_xdyd::y#0 +Coalesced [823] bitmap_line_xdyd::xd#7 ← bitmap_line_xdyd::xd#0 +Coalesced [824] bitmap_line_xdyd::x1#7 ← bitmap_line_xdyd::x1#0 +Coalesced [835] bitmap_line_ydxd::xd#8 ← bitmap_line_ydxd::xd#1 +Coalesced [836] bitmap_line_ydxd::x#9 ← bitmap_line_ydxd::x#1 +Coalesced [837] bitmap_line_ydxd::y#10 ← bitmap_line_ydxd::y#1 +Coalesced [838] bitmap_line_ydxd::yd#8 ← bitmap_line_ydxd::yd#1 +Coalesced [839] bitmap_line_ydxd::y1#8 ← bitmap_line_ydxd::y1#1 +Coalesced [846] bitmap_line_xdyd::yd#8 ← bitmap_line_xdyd::yd#1 +Coalesced [847] bitmap_line_xdyd::x#9 ← bitmap_line_xdyd::x#1 +Coalesced [848] bitmap_line_xdyd::y#9 ← bitmap_line_xdyd::y#1 +Coalesced [849] bitmap_line_xdyd::xd#8 ← bitmap_line_xdyd::xd#1 +Coalesced [850] bitmap_line_xdyd::x1#8 ← bitmap_line_xdyd::x1#1 +Coalesced [859] bitmap_line_ydxi::xd#7 ← bitmap_line_ydxi::xd#1 +Coalesced [860] bitmap_line_ydxi::x#8 ← bitmap_line_ydxi::x#1 +Coalesced [861] bitmap_line_ydxi::y#8 ← bitmap_line_ydxi::y#1 +Coalesced [862] bitmap_line_ydxi::yd#7 ← bitmap_line_ydxi::yd#1 +Coalesced [863] bitmap_line_ydxi::y1#7 ← bitmap_line_ydxi::y1#1 +Coalesced [870] bitmap_line_xdyi::yd#8 ← bitmap_line_xdyi::yd#1 +Coalesced [871] bitmap_line_xdyi::x#9 ← bitmap_line_xdyi::x#1 +Coalesced [872] bitmap_line_xdyi::y#9 ← bitmap_line_xdyi::y#1 +Coalesced [873] bitmap_line_xdyi::xd#8 ← bitmap_line_xdyi::xd#1 +Coalesced [874] bitmap_line_xdyi::x1#8 ← bitmap_line_xdyi::x1#1 +Coalesced [878] bitmap_line_xdyi::x#10 ← bitmap_line_xdyi::x#6 +Coalesced [879] bitmap_line_xdyi::y#10 ← bitmap_line_xdyi::y#5 +Coalesced [880] bitmap_line_xdyi::e#7 ← bitmap_line_xdyi::e#0 +Coalesced [884] bitmap_plot::x#6 ← bitmap_plot::x#0 +Coalesced [885] bitmap_plot::y#6 ← bitmap_plot::y#0 +Coalesced [892] bitmap_line_xdyi::y#12 ← bitmap_line_xdyi::y#2 +Coalesced [893] bitmap_line_xdyi::e#9 ← bitmap_line_xdyi::e#2 +Coalesced [898] bitmap_line_xdyi::x#11 ← bitmap_line_xdyi::x#2 +Coalesced [899] bitmap_line_xdyi::y#11 ← bitmap_line_xdyi::y#6 +Coalesced [900] bitmap_line_xdyi::e#8 ← bitmap_line_xdyi::e#6 +Coalesced (already) [901] bitmap_line_xdyi::y#13 ← bitmap_line_xdyi::y#3 +Coalesced [902] bitmap_line_xdyi::e#10 ← bitmap_line_xdyi::e#1 +Coalesced [912] bitmap_line_ydxi::x#10 ← bitmap_line_ydxi::x#5 +Coalesced [913] bitmap_line_ydxi::y#10 ← bitmap_line_ydxi::y#6 +Coalesced [914] bitmap_line_ydxi::e#7 ← bitmap_line_ydxi::e#0 +Coalesced [918] bitmap_plot::x#8 ← bitmap_plot::x#2 +Coalesced [919] bitmap_plot::y#8 ← bitmap_plot::y#2 +Coalesced [926] bitmap_line_ydxi::x#12 ← bitmap_line_ydxi::x#2 +Coalesced [927] bitmap_line_ydxi::e#9 ← bitmap_line_ydxi::e#2 +Coalesced [932] bitmap_line_ydxi::x#11 ← bitmap_line_ydxi::x#6 +Coalesced [933] bitmap_line_ydxi::y#11 ← bitmap_line_ydxi::y#2 +Coalesced [934] bitmap_line_ydxi::e#8 ← bitmap_line_ydxi::e#6 +Coalesced (already) [935] bitmap_line_ydxi::x#13 ← bitmap_line_ydxi::x#3 +Coalesced [936] bitmap_line_ydxi::e#10 ← bitmap_line_ydxi::e#1 +Coalesced [939] bitmap_line_xdyd::x#10 ← bitmap_line_xdyd::x#6 +Coalesced [940] bitmap_line_xdyd::y#10 ← bitmap_line_xdyd::y#5 +Coalesced [941] bitmap_line_xdyd::e#7 ← bitmap_line_xdyd::e#0 +Coalesced [945] bitmap_plot::x#5 ← bitmap_plot::x#1 +Coalesced [946] bitmap_plot::y#5 ← bitmap_plot::y#1 +Coalesced [953] bitmap_line_xdyd::y#12 ← bitmap_line_xdyd::y#2 +Coalesced [954] bitmap_line_xdyd::e#9 ← bitmap_line_xdyd::e#2 +Coalesced [959] bitmap_line_xdyd::x#11 ← bitmap_line_xdyd::x#2 +Coalesced [960] bitmap_line_xdyd::y#11 ← bitmap_line_xdyd::y#6 +Coalesced [961] bitmap_line_xdyd::e#8 ← bitmap_line_xdyd::e#6 +Coalesced (already) [962] bitmap_line_xdyd::y#13 ← bitmap_line_xdyd::y#3 +Coalesced [963] bitmap_line_xdyd::e#10 ← bitmap_line_xdyd::e#1 +Coalesced [966] bitmap_line_ydxd::x#10 ← bitmap_line_ydxd::x#5 +Coalesced [967] bitmap_line_ydxd::y#11 ← bitmap_line_ydxd::y#7 +Coalesced [968] bitmap_line_ydxd::e#7 ← bitmap_line_ydxd::e#0 +Coalesced [972] bitmap_plot::x#7 ← bitmap_plot::x#3 +Coalesced [973] bitmap_plot::y#7 ← bitmap_plot::y#3 +Coalesced [980] bitmap_line_ydxd::x#12 ← bitmap_line_ydxd::x#2 +Coalesced [981] bitmap_line_ydxd::e#9 ← bitmap_line_ydxd::e#2 +Coalesced [986] bitmap_line_ydxd::x#11 ← bitmap_line_ydxd::x#6 +Coalesced [987] bitmap_line_ydxd::y#12 ← bitmap_line_ydxd::y#3 +Coalesced [988] bitmap_line_ydxd::e#8 ← bitmap_line_ydxd::e#6 +Coalesced (already) [989] bitmap_line_ydxd::x#13 ← bitmap_line_ydxd::x#3 +Coalesced [990] bitmap_line_ydxd::e#10 ← bitmap_line_ydxd::e#1 +Coalesced [994] bitmap_clear::bitmap#7 ← bitmap_clear::bitmap#3 +Coalesced [1003] bitmap_clear::bitmap#6 ← bitmap_clear::bitmap#1 +Coalesced [1004] bitmap_clear::y#5 ← bitmap_clear::y#1 +Coalesced (already) [1005] bitmap_clear::bitmap#8 ← bitmap_clear::bitmap#1 +Coalesced [1006] bitmap_clear::x#3 ← bitmap_clear::x#1 +Coalesced [1029] bitmap_init::yoffs#7 ← bitmap_init::yoffs#1 +Coalesced [1034] bitmap_init::y#5 ← bitmap_init::y#1 +Coalesced [1035] bitmap_init::yoffs#5 ← bitmap_init::yoffs#4 +Coalesced (already) [1036] bitmap_init::yoffs#6 ← bitmap_init::yoffs#2 +Coalesced [1037] bitmap_init::x#5 ← bitmap_init::x#1 +Coalesced [1038] bitmap_init::bits#5 ← bitmap_init::bits#4 +Coalesced [1039] bitmap_init::bits#6 ← bitmap_init::bits#1 +Coalesced [1042] gfx_init_charset::chargen#6 ← gfx_init_charset::chargen#3 +Coalesced [1043] gfx_init_charset::charset#6 ← gfx_init_charset::charset#3 +Coalesced [1054] gfx_init_charset::chargen#5 ← gfx_init_charset::chargen#1 +Coalesced [1055] gfx_init_charset::charset#5 ← gfx_init_charset::charset#1 +Coalesced [1056] gfx_init_charset::c#5 ← gfx_init_charset::c#1 +Coalesced (already) [1057] gfx_init_charset::chargen#7 ← gfx_init_charset::chargen#1 +Coalesced (already) [1058] gfx_init_charset::charset#7 ← gfx_init_charset::charset#1 +Coalesced [1059] gfx_init_charset::l#3 ← gfx_init_charset::l#1 +Coalesced [1062] gfx_init_screen4::ch#6 ← gfx_init_screen4::ch#3 +Coalesced [1071] gfx_init_screen4::ch#5 ← gfx_init_screen4::ch#1 +Coalesced [1072] gfx_init_screen4::cy#5 ← gfx_init_screen4::cy#1 +Coalesced (already) [1073] gfx_init_screen4::ch#7 ← gfx_init_screen4::ch#1 +Coalesced [1074] gfx_init_screen4::cx#3 ← gfx_init_screen4::cx#1 +Coalesced [1077] gfx_init_screen3::ch#6 ← gfx_init_screen3::ch#3 +Coalesced [1090] gfx_init_screen3::cy#5 ← gfx_init_screen3::cy#1 +Coalesced [1091] gfx_init_screen3::ch#5 ← gfx_init_screen3::ch#1 +Coalesced [1092] gfx_init_screen3::cx#3 ← gfx_init_screen3::cx#1 +Coalesced (already) [1093] gfx_init_screen3::ch#7 ← gfx_init_screen3::ch#1 +Coalesced [1096] gfx_init_screen2::ch#6 ← gfx_init_screen2::ch#3 +Coalesced [1110] gfx_init_screen2::cy#5 ← gfx_init_screen2::cy#1 +Coalesced [1111] gfx_init_screen2::ch#5 ← gfx_init_screen2::ch#1 +Coalesced [1112] gfx_init_screen2::cx#3 ← gfx_init_screen2::cx#1 +Coalesced (already) [1113] gfx_init_screen2::ch#7 ← gfx_init_screen2::ch#1 +Coalesced [1116] gfx_init_screen1::ch#6 ← gfx_init_screen1::ch#3 +Coalesced [1127] gfx_init_screen1::cy#5 ← gfx_init_screen1::cy#1 +Coalesced [1128] gfx_init_screen1::ch#5 ← gfx_init_screen1::ch#1 +Coalesced [1129] gfx_init_screen1::cx#3 ← gfx_init_screen1::cx#1 +Coalesced (already) [1130] gfx_init_screen1::ch#7 ← gfx_init_screen1::ch#1 +Coalesced [1133] gfx_init_screen0::ch#6 ← gfx_init_screen0::ch#3 +Coalesced [1146] gfx_init_screen0::cy#5 ← gfx_init_screen0::cy#1 +Coalesced [1147] gfx_init_screen0::ch#5 ← gfx_init_screen0::ch#1 +Coalesced [1148] gfx_init_screen0::cx#3 ← gfx_init_screen0::cx#1 +Coalesced (already) [1149] gfx_init_screen0::ch#7 ← gfx_init_screen0::ch#1 Coalesced down to 120 phi equivalence classes Culled Empty Block (label) gfx_mode::@61 Culled Empty Block (label) gfx_mode::@62 @@ -10161,9 +10161,9 @@ FINAL CONTROL FLOW GRAPH [3] phi() main: scope:[main] from @1 asm { sei } - [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 - [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 - [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 + [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 + [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 + [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [8] call keyboard_init to:main::@3 main::@3: scope:[main] from main @@ -10171,9 +10171,9 @@ main::@3: scope:[main] from main [10] call gfx_init to:main::@1 main::@1: scope:[main] from main::@3 main::@4 - [11] (byte) form_field_idx#1 ? phi( main::@4/(byte) form_field_idx#18 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [11] (byte) keyboard_events_size#27 ? phi( main::@4/(byte) keyboard_events_size#24 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [11] (signed byte) form_cursor_count#1 ? phi( main::@4/(signed byte) form_cursor_count#16 main::@3/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 ) + [11] (byte) form_field_idx#1 ← phi( main::@4/(byte) form_field_idx#18 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [11] (byte) keyboard_events_size#27 ← phi( main::@4/(byte) keyboard_events_size#24 main::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [11] (signed byte) form_cursor_count#1 ← phi( main::@4/(signed byte) form_cursor_count#16 main::@3/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 ) to:main::@2 main::@2: scope:[main] from main::@1 [12] phi() @@ -10190,184 +10190,184 @@ gfx_mode::@10: scope:[gfx_mode] from gfx_mode [17] phi() to:gfx_mode::@1 gfx_mode::@1: scope:[gfx_mode] from gfx_mode gfx_mode::@10 - [18] (byte) gfx_mode::dtv_control#14 ? phi( gfx_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@10/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 ) + [18] (byte) gfx_mode::dtv_control#14 ← phi( gfx_mode/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@10/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) DTV_LINEAR#0 ) [19] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 to:gfx_mode::@11 gfx_mode::@11: scope:[gfx_mode] from gfx_mode::@1 - [20] (byte) gfx_mode::dtv_control#2 ? (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 + [20] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 to:gfx_mode::@2 gfx_mode::@2: scope:[gfx_mode] from gfx_mode::@1 gfx_mode::@11 - [21] (byte) gfx_mode::dtv_control#15 ? phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@11/(byte) gfx_mode::dtv_control#2 ) + [21] (byte) gfx_mode::dtv_control#15 ← phi( gfx_mode::@1/(byte) gfx_mode::dtv_control#14 gfx_mode::@11/(byte) gfx_mode::dtv_control#2 ) [22] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 to:gfx_mode::@12 gfx_mode::@12: scope:[gfx_mode] from gfx_mode::@2 - [23] (byte) gfx_mode::dtv_control#3 ? (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 + [23] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 to:gfx_mode::@3 gfx_mode::@3: scope:[gfx_mode] from gfx_mode::@12 gfx_mode::@2 - [24] (byte) gfx_mode::dtv_control#10 ? phi( gfx_mode::@12/(byte) gfx_mode::dtv_control#3 gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) + [24] (byte) gfx_mode::dtv_control#10 ← phi( gfx_mode::@12/(byte) gfx_mode::dtv_control#3 gfx_mode::@2/(byte) gfx_mode::dtv_control#15 ) [25] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 to:gfx_mode::@13 gfx_mode::@13: scope:[gfx_mode] from gfx_mode::@3 - [26] (byte) gfx_mode::dtv_control#4 ? (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 + [26] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 to:gfx_mode::@4 gfx_mode::@4: scope:[gfx_mode] from gfx_mode::@13 gfx_mode::@3 - [27] (byte) gfx_mode::dtv_control#11 ? phi( gfx_mode::@13/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#10 ) + [27] (byte) gfx_mode::dtv_control#11 ← phi( gfx_mode::@13/(byte) gfx_mode::dtv_control#4 gfx_mode::@3/(byte) gfx_mode::dtv_control#10 ) [28] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 to:gfx_mode::@14 gfx_mode::@14: scope:[gfx_mode] from gfx_mode::@4 - [29] (byte) gfx_mode::dtv_control#5 ? (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 + [29] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 to:gfx_mode::@5 gfx_mode::@5: scope:[gfx_mode] from gfx_mode::@14 gfx_mode::@4 - [30] (byte) gfx_mode::dtv_control#13 ? phi( gfx_mode::@14/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#11 ) + [30] (byte) gfx_mode::dtv_control#13 ← phi( gfx_mode::@14/(byte) gfx_mode::dtv_control#5 gfx_mode::@4/(byte) gfx_mode::dtv_control#11 ) [31] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 to:gfx_mode::@15 gfx_mode::@15: scope:[gfx_mode] from gfx_mode::@5 - [32] (byte) gfx_mode::dtv_control#6 ? (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 + [32] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 to:gfx_mode::@6 gfx_mode::@6: scope:[gfx_mode] from gfx_mode::@15 gfx_mode::@5 - [33] (byte) gfx_mode::dtv_control#12 ? phi( gfx_mode::@15/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#13 ) - [34] *((const byte*) DTV_CONTROL#0) ? (byte) gfx_mode::dtv_control#12 + [33] (byte) gfx_mode::dtv_control#12 ← phi( gfx_mode::@15/(byte) gfx_mode::dtv_control#6 gfx_mode::@5/(byte) gfx_mode::dtv_control#13 ) + [34] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 [35] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 to:gfx_mode::@16 gfx_mode::@16: scope:[gfx_mode] from gfx_mode::@6 [36] phi() to:gfx_mode::@7 gfx_mode::@7: scope:[gfx_mode] from gfx_mode::@16 gfx_mode::@6 - [37] (byte) gfx_mode::vic_control#5 ? phi( gfx_mode::@16/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 gfx_mode::@6/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 ) + [37] (byte) gfx_mode::vic_control#5 ← phi( gfx_mode::@16/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3|(const byte) VIC_ECM#0 gfx_mode::@6/(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 ) [38] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 to:gfx_mode::@17 gfx_mode::@17: scope:[gfx_mode] from gfx_mode::@7 - [39] (byte) gfx_mode::vic_control#2 ? (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 + [39] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 to:gfx_mode::@8 gfx_mode::@8: scope:[gfx_mode] from gfx_mode::@17 gfx_mode::@7 - [40] (byte) gfx_mode::vic_control#4 ? phi( gfx_mode::@17/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#5 ) - [41] *((const byte*) VIC_CONTROL#0) ? (byte) gfx_mode::vic_control#4 + [40] (byte) gfx_mode::vic_control#4 ← phi( gfx_mode::@17/(byte) gfx_mode::vic_control#2 gfx_mode::@7/(byte) gfx_mode::vic_control#5 ) + [41] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 [42] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 to:gfx_mode::@18 gfx_mode::@18: scope:[gfx_mode] from gfx_mode::@8 [43] phi() to:gfx_mode::@9 gfx_mode::@9: scope:[gfx_mode] from gfx_mode::@18 gfx_mode::@8 - [44] (byte) gfx_mode::vic_control2#2 ? phi( gfx_mode::@18/(const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 gfx_mode::@8/(const byte) VIC_CSEL#0 ) - [45] *((const byte*) VIC_CONTROL2#0) ? (byte) gfx_mode::vic_control2#2 - [46] (byte~) gfx_mode::$20 ? *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [47] (byte) gfx_mode::plane_a_offs#0 ? (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) - [48] (byte) get_plane::idx#0 ? *((const byte*) form_a_pattern#0) + [44] (byte) gfx_mode::vic_control2#2 ← phi( gfx_mode::@18/(const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 gfx_mode::@8/(const byte) VIC_CSEL#0 ) + [45] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 + [46] (byte~) gfx_mode::$20 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [47] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) + [48] (byte) get_plane::idx#0 ← *((const byte*) form_a_pattern#0) [49] call get_plane - [50] (dword) get_plane::return#16 ? (dword) get_plane::return#14 + [50] (dword) get_plane::return#16 ← (dword) get_plane::return#14 to:gfx_mode::@27 gfx_mode::@27: scope:[gfx_mode] from gfx_mode::@9 - [51] (dword~) gfx_mode::$22 ? (dword) get_plane::return#16 - [52] (dword) gfx_mode::plane_a#0 ? (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 - [53] (word~) gfx_mode::$24 ? < (dword) gfx_mode::plane_a#0 - [54] (byte~) gfx_mode::$25 ? < (word~) gfx_mode::$24 - [55] *((const byte*) DTV_PLANEA_START_LO#0) ? (byte~) gfx_mode::$25 - [56] (word~) gfx_mode::$26 ? < (dword) gfx_mode::plane_a#0 - [57] (byte~) gfx_mode::$27 ? > (word~) gfx_mode::$26 - [58] *((const byte*) DTV_PLANEA_START_MI#0) ? (byte~) gfx_mode::$27 - [59] (word~) gfx_mode::$28 ? > (dword) gfx_mode::plane_a#0 - [60] (byte~) gfx_mode::$29 ? < (word~) gfx_mode::$28 - [61] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte~) gfx_mode::$29 - [62] (byte~) gfx_mode::$30 ? *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [63] (byte~) gfx_mode::$31 ? (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) - [64] *((const byte*) DTV_PLANEA_STEP#0) ? (byte~) gfx_mode::$31 - [65] (byte~) gfx_mode::$32 ? *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [66] (byte~) gfx_mode::$33 ? (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) - [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte~) gfx_mode::$33 - [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [69] (byte~) gfx_mode::$34 ? *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [70] (byte) gfx_mode::plane_b_offs#0 ? (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) - [71] (byte) get_plane::idx#1 ? *((const byte*) form_b_pattern#0) + [51] (dword~) gfx_mode::$22 ← (dword) get_plane::return#16 + [52] (dword) gfx_mode::plane_a#0 ← (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 + [53] (word~) gfx_mode::$24 ← < (dword) gfx_mode::plane_a#0 + [54] (byte~) gfx_mode::$25 ← < (word~) gfx_mode::$24 + [55] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$25 + [56] (word~) gfx_mode::$26 ← < (dword) gfx_mode::plane_a#0 + [57] (byte~) gfx_mode::$27 ← > (word~) gfx_mode::$26 + [58] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$27 + [59] (word~) gfx_mode::$28 ← > (dword) gfx_mode::plane_a#0 + [60] (byte~) gfx_mode::$29 ← < (word~) gfx_mode::$28 + [61] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$29 + [62] (byte~) gfx_mode::$30 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [63] (byte~) gfx_mode::$31 ← (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) + [64] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$31 + [65] (byte~) gfx_mode::$32 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [66] (byte~) gfx_mode::$33 ← (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) + [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$33 + [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [69] (byte~) gfx_mode::$34 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [70] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) + [71] (byte) get_plane::idx#1 ← *((const byte*) form_b_pattern#0) [72] call get_plane - [73] (dword) get_plane::return#17 ? (dword) get_plane::return#14 + [73] (dword) get_plane::return#17 ← (dword) get_plane::return#14 to:gfx_mode::@28 gfx_mode::@28: scope:[gfx_mode] from gfx_mode::@27 - [74] (dword~) gfx_mode::$36 ? (dword) get_plane::return#17 - [75] (dword) gfx_mode::plane_b#0 ? (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 - [76] (word~) gfx_mode::$38 ? < (dword) gfx_mode::plane_b#0 - [77] (byte~) gfx_mode::$39 ? < (word~) gfx_mode::$38 - [78] *((const byte*) DTV_PLANEB_START_LO#0) ? (byte~) gfx_mode::$39 - [79] (word~) gfx_mode::$40 ? < (dword) gfx_mode::plane_b#0 - [80] (byte~) gfx_mode::$41 ? > (word~) gfx_mode::$40 - [81] *((const byte*) DTV_PLANEB_START_MI#0) ? (byte~) gfx_mode::$41 - [82] (word~) gfx_mode::$42 ? > (dword) gfx_mode::plane_b#0 - [83] (byte~) gfx_mode::$43 ? < (word~) gfx_mode::$42 - [84] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte~) gfx_mode::$43 - [85] (byte~) gfx_mode::$44 ? *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [86] (byte~) gfx_mode::$45 ? (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) - [87] *((const byte*) DTV_PLANEB_STEP#0) ? (byte~) gfx_mode::$45 - [88] (byte~) gfx_mode::$46 ? *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [89] (byte~) gfx_mode::$47 ? (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) - [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte~) gfx_mode::$47 - [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [92] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [93] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 - [94] (byte) get_vic_screen::idx#0 ? *((const byte*) form_vic_screen#0) + [74] (dword~) gfx_mode::$36 ← (dword) get_plane::return#17 + [75] (dword) gfx_mode::plane_b#0 ← (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 + [76] (word~) gfx_mode::$38 ← < (dword) gfx_mode::plane_b#0 + [77] (byte~) gfx_mode::$39 ← < (word~) gfx_mode::$38 + [78] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$39 + [79] (word~) gfx_mode::$40 ← < (dword) gfx_mode::plane_b#0 + [80] (byte~) gfx_mode::$41 ← > (word~) gfx_mode::$40 + [81] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$41 + [82] (word~) gfx_mode::$42 ← > (dword) gfx_mode::plane_b#0 + [83] (byte~) gfx_mode::$43 ← < (word~) gfx_mode::$42 + [84] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$43 + [85] (byte~) gfx_mode::$44 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [86] (byte~) gfx_mode::$45 ← (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) + [87] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$45 + [88] (byte~) gfx_mode::$46 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [89] (byte~) gfx_mode::$47 ← (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) + [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$47 + [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [92] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [93] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 + [94] (byte) get_vic_screen::idx#0 ← *((const byte*) form_vic_screen#0) [95] call get_vic_screen - [96] (byte*) get_vic_screen::return#10 ? (byte*) get_vic_screen::return#5 + [96] (byte*) get_vic_screen::return#10 ← (byte*) get_vic_screen::return#5 to:gfx_mode::@29 gfx_mode::@29: scope:[gfx_mode] from gfx_mode::@28 - [97] (byte*~) gfx_mode::$52 ? (byte*) get_vic_screen::return#10 - [98] (word~) gfx_mode::$54 ? (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff - [99] (word~) gfx_mode::$55 ? (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 - [100] (byte~) gfx_mode::$56 ? ((byte)) (word~) gfx_mode::$55 - [101] (byte) get_vic_charset::idx#0 ? *((const byte*) form_vic_gfx#0) + [97] (byte*~) gfx_mode::$52 ← (byte*) get_vic_screen::return#10 + [98] (word~) gfx_mode::$54 ← (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff + [99] (word~) gfx_mode::$55 ← (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 + [100] (byte~) gfx_mode::$56 ← ((byte)) (word~) gfx_mode::$55 + [101] (byte) get_vic_charset::idx#0 ← *((const byte*) form_vic_gfx#0) [102] call get_vic_charset - [103] (byte*) get_vic_charset::return#4 ? (byte*) get_vic_charset::return#2 + [103] (byte*) get_vic_charset::return#4 ← (byte*) get_vic_charset::return#2 to:gfx_mode::@30 gfx_mode::@30: scope:[gfx_mode] from gfx_mode::@29 - [104] (byte*~) gfx_mode::$57 ? (byte*) get_vic_charset::return#4 - [105] (word~) gfx_mode::$59 ? (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff - [106] (byte~) gfx_mode::$60 ? > (word~) gfx_mode::$59 - [107] (byte~) gfx_mode::$61 ? (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 - [108] (byte~) gfx_mode::$62 ? (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 - [109] *((const byte*) VIC_MEMORY#0) ? (byte~) gfx_mode::$62 - [110] (byte) get_vic_screen::idx#1 ? *((const byte*) form_vic_cols#0) + [104] (byte*~) gfx_mode::$57 ← (byte*) get_vic_charset::return#4 + [105] (word~) gfx_mode::$59 ← (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff + [106] (byte~) gfx_mode::$60 ← > (word~) gfx_mode::$59 + [107] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 + [108] (byte~) gfx_mode::$62 ← (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 + [109] *((const byte*) VIC_MEMORY#0) ← (byte~) gfx_mode::$62 + [110] (byte) get_vic_screen::idx#1 ← *((const byte*) form_vic_cols#0) [111] call get_vic_screen - [112] (byte*) get_vic_screen::return#11 ? (byte*) get_vic_screen::return#5 + [112] (byte*) get_vic_screen::return#11 ← (byte*) get_vic_screen::return#5 to:gfx_mode::@31 gfx_mode::@31: scope:[gfx_mode] from gfx_mode::@30 - [113] (byte*) gfx_mode::vic_colors#0 ? (byte*) get_vic_screen::return#11 + [113] (byte*) gfx_mode::vic_colors#0 ← (byte*) get_vic_screen::return#11 to:gfx_mode::@19 gfx_mode::@19: scope:[gfx_mode] from gfx_mode::@21 gfx_mode::@31 - [114] (byte) gfx_mode::cy#4 ? phi( gfx_mode::@21/(byte) gfx_mode::cy#1 gfx_mode::@31/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [114] (byte*) gfx_mode::col#3 ? phi( gfx_mode::@21/(byte*) gfx_mode::col#1 gfx_mode::@31/(const byte*) COLS#0 ) - [114] (byte*) gfx_mode::vic_colors#3 ? phi( gfx_mode::@21/(byte*) gfx_mode::vic_colors#1 gfx_mode::@31/(byte*) gfx_mode::vic_colors#0 ) + [114] (byte) gfx_mode::cy#4 ← phi( gfx_mode::@21/(byte) gfx_mode::cy#1 gfx_mode::@31/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [114] (byte*) gfx_mode::col#3 ← phi( gfx_mode::@21/(byte*) gfx_mode::col#1 gfx_mode::@31/(const byte*) COLS#0 ) + [114] (byte*) gfx_mode::vic_colors#3 ← phi( gfx_mode::@21/(byte*) gfx_mode::vic_colors#1 gfx_mode::@31/(byte*) gfx_mode::vic_colors#0 ) to:gfx_mode::@20 gfx_mode::@20: scope:[gfx_mode] from gfx_mode::@19 gfx_mode::@20 - [115] (byte) gfx_mode::cx#2 ? phi( gfx_mode::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@20/(byte) gfx_mode::cx#1 ) - [115] (byte*) gfx_mode::col#2 ? phi( gfx_mode::@19/(byte*) gfx_mode::col#3 gfx_mode::@20/(byte*) gfx_mode::col#1 ) - [115] (byte*) gfx_mode::vic_colors#2 ? phi( gfx_mode::@19/(byte*) gfx_mode::vic_colors#3 gfx_mode::@20/(byte*) gfx_mode::vic_colors#1 ) - [116] *((byte*) gfx_mode::col#2) ? *((byte*) gfx_mode::vic_colors#2) - [117] (byte*) gfx_mode::col#1 ? ++ (byte*) gfx_mode::col#2 - [118] (byte*) gfx_mode::vic_colors#1 ? ++ (byte*) gfx_mode::vic_colors#2 - [119] (byte) gfx_mode::cx#1 ? ++ (byte) gfx_mode::cx#2 + [115] (byte) gfx_mode::cx#2 ← phi( gfx_mode::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@20/(byte) gfx_mode::cx#1 ) + [115] (byte*) gfx_mode::col#2 ← phi( gfx_mode::@19/(byte*) gfx_mode::col#3 gfx_mode::@20/(byte*) gfx_mode::col#1 ) + [115] (byte*) gfx_mode::vic_colors#2 ← phi( gfx_mode::@19/(byte*) gfx_mode::vic_colors#3 gfx_mode::@20/(byte*) gfx_mode::vic_colors#1 ) + [116] *((byte*) gfx_mode::col#2) ← *((byte*) gfx_mode::vic_colors#2) + [117] (byte*) gfx_mode::col#1 ← ++ (byte*) gfx_mode::col#2 + [118] (byte*) gfx_mode::vic_colors#1 ← ++ (byte*) gfx_mode::vic_colors#2 + [119] (byte) gfx_mode::cx#1 ← ++ (byte) gfx_mode::cx#2 [120] if((byte) gfx_mode::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_mode::@20 to:gfx_mode::@21 gfx_mode::@21: scope:[gfx_mode] from gfx_mode::@20 - [121] (byte) gfx_mode::cy#1 ? ++ (byte) gfx_mode::cy#4 + [121] (byte) gfx_mode::cy#1 ← ++ (byte) gfx_mode::cy#4 [122] if((byte) gfx_mode::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_mode::@19 to:gfx_mode::@22 gfx_mode::@22: scope:[gfx_mode] from gfx_mode::@21 - [123] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [124] (byte~) gfx_mode::$64 ? *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [125] (byte~) gfx_mode::$65 ? (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) - [126] *((const byte*) BGCOL1#0) ? (byte~) gfx_mode::$65 - [127] (byte~) gfx_mode::$66 ? *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [128] (byte~) gfx_mode::$67 ? (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) - [129] *((const byte*) BGCOL2#0) ? (byte~) gfx_mode::$67 - [130] (byte~) gfx_mode::$68 ? *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [131] (byte~) gfx_mode::$69 ? (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) - [132] *((const byte*) BGCOL3#0) ? (byte~) gfx_mode::$69 - [133] (byte~) gfx_mode::$70 ? *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [134] (byte~) gfx_mode::$71 ? (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) - [135] *((const byte*) BGCOL4#0) ? (byte~) gfx_mode::$71 + [123] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [124] (byte~) gfx_mode::$64 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [125] (byte~) gfx_mode::$65 ← (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) + [126] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$65 + [127] (byte~) gfx_mode::$66 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [128] (byte~) gfx_mode::$67 ← (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) + [129] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$67 + [130] (byte~) gfx_mode::$68 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [131] (byte~) gfx_mode::$69 ← (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) + [132] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$69 + [133] (byte~) gfx_mode::$70 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [134] (byte~) gfx_mode::$71 ← (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) + [135] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$71 [136] if(*((const byte*) form_dtv_palet#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@24 to:gfx_mode::@23 gfx_mode::@23: scope:[gfx_mode] from gfx_mode::@22 gfx_mode::@23 - [137] (byte) gfx_mode::j#2 ? phi( gfx_mode::@22/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@23/(byte) gfx_mode::j#1 ) - [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ? (byte) gfx_mode::j#2 - [139] (byte) gfx_mode::j#1 ? ++ (byte) gfx_mode::j#2 + [137] (byte) gfx_mode::j#2 ← phi( gfx_mode::@22/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@23/(byte) gfx_mode::j#1 ) + [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ← (byte) gfx_mode::j#2 + [139] (byte) gfx_mode::j#1 ← ++ (byte) gfx_mode::j#2 [140] if((byte) gfx_mode::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@23 to:gfx_mode::@25 gfx_mode::@25: scope:[gfx_mode] from gfx_mode::@23 gfx_mode::@24 gfx_mode::@25 gfx_mode::@33 @@ -10380,161 +10380,161 @@ gfx_mode::@26: scope:[gfx_mode] from gfx_mode::@25 gfx_mode::@32: scope:[gfx_mode] from gfx_mode::@26 [144] phi() [145] call keyboard_event_get - [146] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + [146] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 to:gfx_mode::@33 gfx_mode::@33: scope:[gfx_mode] from gfx_mode::@32 - [147] (byte) gfx_mode::keyboard_event#0 ? (byte) keyboard_event_get::return#3 + [147] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 [148] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@25 to:gfx_mode::@return gfx_mode::@return: scope:[gfx_mode] from gfx_mode::@33 [149] return to:@return gfx_mode::@24: scope:[gfx_mode] from gfx_mode::@22 gfx_mode::@24 - [150] (byte) gfx_mode::i#2 ? phi( gfx_mode::@22/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@24/(byte) gfx_mode::i#1 ) - [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) - [152] (byte) gfx_mode::i#1 ? ++ (byte) gfx_mode::i#2 + [150] (byte) gfx_mode::i#2 ← phi( gfx_mode::@22/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_mode::@24/(byte) gfx_mode::i#1 ) + [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) + [152] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 [153] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@24 to:gfx_mode::@25 keyboard_event_get: scope:[keyboard_event_get] from form_control::@18 gfx_mode::@32 [154] if((byte) keyboard_events_size#100==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@return to:keyboard_event_get::@1 keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get - [155] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#100 - [156] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) + [155] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#100 + [156] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) to:keyboard_event_get::@return keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get keyboard_event_get::@1 - [157] (byte) keyboard_events_size#24 ? phi( keyboard_event_get/(byte) keyboard_events_size#100 keyboard_event_get::@1/(byte) keyboard_events_size#4 ) - [157] (byte) keyboard_event_get::return#2 ? phi( keyboard_event_get/(byte/word/signed word/dword/signed dword) $ff keyboard_event_get::@1/(byte) keyboard_event_get::return#1 ) + [157] (byte) keyboard_events_size#24 ← phi( keyboard_event_get/(byte) keyboard_events_size#100 keyboard_event_get::@1/(byte) keyboard_events_size#4 ) + [157] (byte) keyboard_event_get::return#2 ← phi( keyboard_event_get/(byte/word/signed word/dword/signed dword) $ff keyboard_event_get::@1/(byte) keyboard_event_get::return#1 ) [158] return to:@return keyboard_event_scan: scope:[keyboard_event_scan] from form_control::@3 gfx_mode::@26 - [159] (byte) keyboard_events_size#110 ? phi( form_control::@3/(byte) keyboard_events_size#47 gfx_mode::@26/(byte) keyboard_events_size#24 ) + [159] (byte) keyboard_events_size#110 ← phi( form_control::@3/(byte) keyboard_events_size#47 gfx_mode::@26/(byte) keyboard_events_size#24 ) to:keyboard_event_scan::@7 keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8 - [160] (byte) keyboard_events_size#119 ? phi( keyboard_event_scan/(byte) keyboard_events_size#110 keyboard_event_scan::@8/(byte) keyboard_events_size#100 ) - [160] (byte) keyboard_event_scan::keycode#11 ? phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) - [160] (byte) keyboard_event_scan::row#2 ? phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) - [161] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 + [160] (byte) keyboard_events_size#119 ← phi( keyboard_event_scan/(byte) keyboard_events_size#110 keyboard_event_scan::@8/(byte) keyboard_events_size#100 ) + [160] (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) + [160] (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) + [161] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [162] call keyboard_matrix_read - [163] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + [163] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 to:keyboard_event_scan::@19 keyboard_event_scan::@19: scope:[keyboard_event_scan] from keyboard_event_scan::@7 - [164] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 + [164] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [165] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 to:keyboard_event_scan::@16 keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@19 - [166] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 + [166] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 to:keyboard_event_scan::@8 keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@16 - [167] (byte) keyboard_events_size#100 ? phi( keyboard_event_scan::@15/(byte) keyboard_events_size#118 keyboard_event_scan::@16/(byte) keyboard_events_size#119 ) - [167] (byte) keyboard_event_scan::keycode#14 ? phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#1 ) - [168] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 + [167] (byte) keyboard_events_size#100 ← phi( keyboard_event_scan::@15/(byte) keyboard_events_size#118 keyboard_event_scan::@16/(byte) keyboard_events_size#119 ) + [167] (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#1 ) + [168] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [169] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 to:keyboard_event_scan::@17 keyboard_event_scan::@17: scope:[keyboard_event_scan] from keyboard_event_scan::@8 [170] phi() [171] call keyboard_event_pressed - [172] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#10 + [172] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 to:keyboard_event_scan::@20 keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@17 - [173] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 + [173] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 [174] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 to:keyboard_event_scan::@18 keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@20 [175] phi() to:keyboard_event_scan::@1 keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@20 - [176] (byte) keyboard_modifiers#18 ? phi( keyboard_event_scan::@18/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [176] (byte) keyboard_modifiers#18 ← phi( keyboard_event_scan::@18/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [177] call keyboard_event_pressed - [178] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#10 + [178] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 to:keyboard_event_scan::@21 keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@1 - [179] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 + [179] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 [180] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 to:keyboard_event_scan::@4 keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@21 - [181] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 + [181] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 to:keyboard_event_scan::@2 keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@21 keyboard_event_scan::@4 - [182] (byte) keyboard_modifiers#19 ? phi( keyboard_event_scan::@21/(byte) keyboard_modifiers#18 keyboard_event_scan::@4/(byte) keyboard_modifiers#3 ) + [182] (byte) keyboard_modifiers#19 ← phi( keyboard_event_scan::@21/(byte) keyboard_modifiers#18 keyboard_event_scan::@4/(byte) keyboard_modifiers#3 ) [183] call keyboard_event_pressed - [184] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#10 + [184] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 to:keyboard_event_scan::@22 keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@2 - [185] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 + [185] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 [186] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 to:keyboard_event_scan::@5 keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@22 - [187] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 + [187] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 to:keyboard_event_scan::@3 keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@5 - [188] (byte) keyboard_modifiers#20 ? phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#19 keyboard_event_scan::@5/(byte) keyboard_modifiers#4 ) + [188] (byte) keyboard_modifiers#20 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#19 keyboard_event_scan::@5/(byte) keyboard_modifiers#4 ) [189] call keyboard_event_pressed - [190] (byte) keyboard_event_pressed::return#3 ? (byte) keyboard_event_pressed::return#10 + [190] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 to:keyboard_event_scan::@23 keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@3 - [191] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#3 + [191] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#3 [192] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return to:keyboard_event_scan::@6 keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@23 - [193] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 + [193] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 to:keyboard_event_scan::@return keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@23 keyboard_event_scan::@6 - [194] (byte) keyboard_modifiers#21 ? phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#20 keyboard_event_scan::@6/(byte) keyboard_modifiers#5 ) + [194] (byte) keyboard_modifiers#21 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#20 keyboard_event_scan::@6/(byte) keyboard_modifiers#5 ) [195] return to:@return keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@10 keyboard_event_scan::@19 - [196] (byte) keyboard_events_size#18 ? phi( keyboard_event_scan::@10/(byte) keyboard_events_size#118 keyboard_event_scan::@19/(byte) keyboard_events_size#119 ) - [196] (byte) keyboard_event_scan::keycode#10 ? phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@19/(byte) keyboard_event_scan::keycode#11 ) - [196] (byte) keyboard_event_scan::col#2 ? phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [197] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) - [198] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) + [196] (byte) keyboard_events_size#18 ← phi( keyboard_event_scan::@10/(byte) keyboard_events_size#118 keyboard_event_scan::@19/(byte) keyboard_events_size#119 ) + [196] (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@19/(byte) keyboard_event_scan::keycode#11 ) + [196] (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [197] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) + [198] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [199] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 to:keyboard_event_scan::@12 keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@9 [200] if((byte) keyboard_events_size#18==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@10 to:keyboard_event_scan::@13 keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@12 - [201] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) + [201] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [202] if((byte) keyboard_event_scan::event_type#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 to:keyboard_event_scan::@14 keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@13 - [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte) keyboard_event_scan::keycode#10 - [204] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#18 + [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 + [204] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 to:keyboard_event_scan::@10 keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 - [205] (byte) keyboard_events_size#118 ? phi( keyboard_event_scan::@9/(byte) keyboard_events_size#18 keyboard_event_scan::@12/(byte) keyboard_events_size#18 keyboard_event_scan::@11/(byte) keyboard_events_size#1 keyboard_event_scan::@14/(byte) keyboard_events_size#2 ) - [206] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 - [207] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 + [205] (byte) keyboard_events_size#118 ← phi( keyboard_event_scan::@9/(byte) keyboard_events_size#18 keyboard_event_scan::@12/(byte) keyboard_events_size#18 keyboard_event_scan::@11/(byte) keyboard_events_size#1 keyboard_event_scan::@14/(byte) keyboard_events_size#2 ) + [206] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 + [207] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [208] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 to:keyboard_event_scan::@15 keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@10 - [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 + [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 to:keyboard_event_scan::@8 keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@13 - [210] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 - [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte/word/dword~) keyboard_event_scan::$23 - [212] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#18 + [210] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 + [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$23 + [212] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 to:keyboard_event_scan::@10 keyboard_event_pressed: scope:[keyboard_event_pressed] from keyboard_event_scan::@1 keyboard_event_scan::@17 keyboard_event_scan::@2 keyboard_event_scan::@3 - [213] (byte) keyboard_event_pressed::keycode#4 ? phi( keyboard_event_scan::@1/(const byte) KEY_RSHIFT#0 keyboard_event_scan::@2/(const byte) KEY_CTRL#0 keyboard_event_scan::@17/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@3/(const byte) KEY_COMMODORE#0 ) - [214] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - [215] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) - [216] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [217] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) + [213] (byte) keyboard_event_pressed::keycode#4 ← phi( keyboard_event_scan::@1/(const byte) KEY_RSHIFT#0 keyboard_event_scan::@2/(const byte) KEY_CTRL#0 keyboard_event_scan::@17/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@3/(const byte) KEY_COMMODORE#0 ) + [214] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + [215] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) + [216] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [217] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) to:keyboard_event_pressed::@return keyboard_event_pressed::@return: scope:[keyboard_event_pressed] from keyboard_event_pressed [218] return to:@return keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_event_scan::@7 - [219] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) - [220] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) + [219] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) + [220] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read [221] return to:@return get_vic_screen: scope:[get_vic_screen] from gfx_mode::@28 gfx_mode::@30 - [222] (byte) get_vic_screen::idx#2 ? phi( gfx_mode::@28/(byte) get_vic_screen::idx#0 gfx_mode::@30/(byte) get_vic_screen::idx#1 ) + [222] (byte) get_vic_screen::idx#2 ← phi( gfx_mode::@28/(byte) get_vic_screen::idx#0 gfx_mode::@30/(byte) get_vic_screen::idx#1 ) [223] if((byte) get_vic_screen::idx#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto get_vic_screen::@return to:get_vic_screen::@2 get_vic_screen::@2: scope:[get_vic_screen] from get_vic_screen @@ -10550,7 +10550,7 @@ get_vic_screen::@5: scope:[get_vic_screen] from get_vic_screen::@4 [227] if((byte) get_vic_screen::idx#2!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto get_vic_screen::@1 to:get_vic_screen::@return get_vic_screen::@return: scope:[get_vic_screen] from get_vic_screen get_vic_screen::@1 get_vic_screen::@2 get_vic_screen::@3 get_vic_screen::@4 get_vic_screen::@5 - [228] (byte*) get_vic_screen::return#5 ? phi( get_vic_screen/(const byte*) VIC_SCREEN0#0 get_vic_screen::@5/(const byte*) VIC_SCREEN4#0 get_vic_screen::@2/(const byte*) VIC_SCREEN1#0 get_vic_screen::@3/(const byte*) VIC_SCREEN2#0 get_vic_screen::@4/(const byte*) VIC_SCREEN3#0 get_vic_screen::@1/(const byte*) VIC_SCREEN0#0 ) + [228] (byte*) get_vic_screen::return#5 ← phi( get_vic_screen/(const byte*) VIC_SCREEN0#0 get_vic_screen::@5/(const byte*) VIC_SCREEN4#0 get_vic_screen::@2/(const byte*) VIC_SCREEN1#0 get_vic_screen::@3/(const byte*) VIC_SCREEN2#0 get_vic_screen::@4/(const byte*) VIC_SCREEN3#0 get_vic_screen::@1/(const byte*) VIC_SCREEN0#0 ) [229] return to:@return get_vic_screen::@1: scope:[get_vic_screen] from get_vic_screen::@5 @@ -10563,14 +10563,14 @@ get_vic_charset::@2: scope:[get_vic_charset] from get_vic_charset [232] if((byte) get_vic_charset::idx#0!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto get_vic_charset::@1 to:get_vic_charset::@return get_vic_charset::@return: scope:[get_vic_charset] from get_vic_charset get_vic_charset::@1 get_vic_charset::@2 - [233] (byte*) get_vic_charset::return#2 ? phi( get_vic_charset/(const byte*) VIC_CHARSET_ROM#0 get_vic_charset::@1/(const byte*) VIC_CHARSET_ROM#0 get_vic_charset::@2/(const byte*) VIC_BITMAP#0 ) + [233] (byte*) get_vic_charset::return#2 ← phi( get_vic_charset/(const byte*) VIC_CHARSET_ROM#0 get_vic_charset::@1/(const byte*) VIC_CHARSET_ROM#0 get_vic_charset::@2/(const byte*) VIC_BITMAP#0 ) [234] return to:@return get_vic_charset::@1: scope:[get_vic_charset] from get_vic_charset::@2 [235] phi() to:get_vic_charset::@return get_plane: scope:[get_plane] from gfx_mode::@27 gfx_mode::@9 - [236] (byte) get_plane::idx#10 ? phi( gfx_mode::@27/(byte) get_plane::idx#1 gfx_mode::@9/(byte) get_plane::idx#0 ) + [236] (byte) get_plane::idx#10 ← phi( gfx_mode::@27/(byte) get_plane::idx#1 gfx_mode::@9/(byte) get_plane::idx#0 ) [237] if((byte) get_plane::idx#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto get_plane::@return to:get_plane::@2 get_plane::@2: scope:[get_plane] from get_plane @@ -10613,7 +10613,7 @@ get_plane::@14: scope:[get_plane] from get_plane::@13 [250] if((byte) get_plane::idx#10!=(byte/signed byte/word/signed word/dword/signed dword) $d) goto get_plane::@1 to:get_plane::@return get_plane::@return: scope:[get_plane] from get_plane get_plane::@1 get_plane::@10 get_plane::@11 get_plane::@12 get_plane::@13 get_plane::@14 get_plane::@2 get_plane::@3 get_plane::@4 get_plane::@5 get_plane::@6 get_plane::@7 get_plane::@8 get_plane::@9 - [251] (dword) get_plane::return#14 ? phi( get_plane/((dword))(const byte*) VIC_SCREEN0#0 get_plane::@10/((dword))(const dword) PLANE_HORISONTAL2#0 get_plane::@11/((dword))(const dword) PLANE_VERTICAL2#0 get_plane::@12/((dword))(const dword) PLANE_CHARSET8#0 get_plane::@13/((dword))(const dword) PLANE_BLANK#0 get_plane::@2/((dword))(const byte*) VIC_SCREEN1#0 get_plane::@1/((dword))(const byte*) VIC_SCREEN0#0 get_plane::@3/((dword))(const byte*) VIC_SCREEN2#0 get_plane::@4/((dword))(const byte*) VIC_SCREEN3#0 get_plane::@14/((dword))(const dword) PLANE_FULL#0 get_plane::@5/((dword))(const byte*) VIC_BITMAP#0 get_plane::@6/((dword))(const byte*) VIC_CHARSET_ROM#0 get_plane::@7/((dword))(const dword) PLANE_8BPP_CHUNKY#0 get_plane::@8/((dword))(const dword) PLANE_HORISONTAL#0 get_plane::@9/((dword))(const dword) PLANE_VERTICAL#0 ) + [251] (dword) get_plane::return#14 ← phi( get_plane/((dword))(const byte*) VIC_SCREEN0#0 get_plane::@10/((dword))(const dword) PLANE_HORISONTAL2#0 get_plane::@11/((dword))(const dword) PLANE_VERTICAL2#0 get_plane::@12/((dword))(const dword) PLANE_CHARSET8#0 get_plane::@13/((dword))(const dword) PLANE_BLANK#0 get_plane::@2/((dword))(const byte*) VIC_SCREEN1#0 get_plane::@1/((dword))(const byte*) VIC_SCREEN0#0 get_plane::@3/((dword))(const byte*) VIC_SCREEN2#0 get_plane::@4/((dword))(const byte*) VIC_SCREEN3#0 get_plane::@14/((dword))(const dword) PLANE_FULL#0 get_plane::@5/((dword))(const byte*) VIC_BITMAP#0 get_plane::@6/((dword))(const byte*) VIC_CHARSET_ROM#0 get_plane::@7/((dword))(const dword) PLANE_8BPP_CHUNKY#0 get_plane::@8/((dword))(const dword) PLANE_HORISONTAL#0 get_plane::@9/((dword))(const dword) PLANE_VERTICAL#0 ) [252] return to:@return get_plane::@1: scope:[get_plane] from get_plane::@14 @@ -10652,39 +10652,39 @@ form_mode::@14: scope:[form_mode] from form_mode::@13 [269] call form_render_values to:form_mode::@15 form_mode::@15: scope:[form_mode] from form_mode::@14 - [270] (byte) render_preset_name::idx#0 ? *((const byte[]) form_fields_val#0) + [270] (byte) render_preset_name::idx#0 ← *((const byte[]) form_fields_val#0) [271] call render_preset_name to:form_mode::@16 form_mode::@16: scope:[form_mode] from form_mode::@15 - [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 - [273] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [274] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [275] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [276] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 - [277] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [278] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [279] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [280] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 - [281] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) FORM_SCREEN#0 - [282] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) FORM_SCREEN#0 - [283] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 + [273] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [274] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [275] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [276] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 + [277] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [278] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [279] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [280] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [281] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) FORM_SCREEN#0 + [282] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) FORM_SCREEN#0 + [283] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_mode::@1 form_mode::@1: scope:[form_mode] from form_mode::@1 form_mode::@16 - [284] (byte) form_mode::i#2 ? phi( form_mode::@1/(byte) form_mode::i#1 form_mode::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) - [286] (byte) form_mode::i#1 ? ++ (byte) form_mode::i#2 + [284] (byte) form_mode::i#2 ← phi( form_mode::@1/(byte) form_mode::i#1 form_mode::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) + [286] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 [287] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto form_mode::@1 to:form_mode::@2 form_mode::@2: scope:[form_mode] from form_mode::@1 - [288] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [289] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [290] (byte) form_mode::preset_current#0 ? *((const byte[]) form_fields_val#0) + [288] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [289] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [290] (byte) form_mode::preset_current#0 ← *((const byte[]) form_fields_val#0) to:form_mode::@3 form_mode::@3: scope:[form_mode] from form_mode::@19 form_mode::@2 form_mode::@6 - [291] (byte) form_mode::preset_current#6 ? phi( form_mode::@2/(byte) form_mode::preset_current#0 form_mode::@19/(byte) form_mode::preset_current#1 ) - [291] (byte) form_field_idx#28 ? phi( form_mode::@6/(byte) form_field_idx#18 form_mode::@2/(byte) form_field_idx#1 form_mode::@19/(byte) form_field_idx#18 ) - [291] (byte) keyboard_events_size#47 ? phi( form_mode::@6/(byte) keyboard_events_size#24 form_mode::@2/(byte) keyboard_events_size#27 form_mode::@19/(byte) keyboard_events_size#24 ) - [291] (signed byte) form_cursor_count#21 ? phi( form_mode::@6/(signed byte) form_cursor_count#16 form_mode::@2/(signed byte) form_cursor_count#1 form_mode::@19/(signed byte) form_cursor_count#16 ) + [291] (byte) form_mode::preset_current#6 ← phi( form_mode::@2/(byte) form_mode::preset_current#0 form_mode::@19/(byte) form_mode::preset_current#1 ) + [291] (byte) form_field_idx#28 ← phi( form_mode::@6/(byte) form_field_idx#18 form_mode::@2/(byte) form_field_idx#1 form_mode::@19/(byte) form_field_idx#18 ) + [291] (byte) keyboard_events_size#47 ← phi( form_mode::@6/(byte) keyboard_events_size#24 form_mode::@2/(byte) keyboard_events_size#27 form_mode::@19/(byte) keyboard_events_size#24 ) + [291] (signed byte) form_cursor_count#21 ← phi( form_mode::@6/(signed byte) form_cursor_count#16 form_mode::@2/(signed byte) form_cursor_count#1 form_mode::@19/(signed byte) form_cursor_count#16 ) to:form_mode::@4 form_mode::@4: scope:[form_mode] from form_mode::@3 form_mode::@4 [292] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto form_mode::@4 @@ -10692,10 +10692,10 @@ form_mode::@4: scope:[form_mode] from form_mode::@3 form_mode::@4 form_mode::@5: scope:[form_mode] from form_mode::@4 [293] phi() [294] call form_control - [295] (byte) form_control::return#0 ? (byte) form_control::return#2 + [295] (byte) form_control::return#0 ← (byte) form_control::return#2 to:form_mode::@17 form_mode::@17: scope:[form_mode] from form_mode::@5 - [296] (byte~) form_mode::$36 ? (byte) form_control::return#0 + [296] (byte~) form_mode::$36 ← (byte) form_control::return#0 [297] if((byte~) form_mode::$36==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@6 to:form_mode::@return form_mode::@return: scope:[form_mode] from form_mode::@17 @@ -10705,19 +10705,19 @@ form_mode::@6: scope:[form_mode] from form_mode::@17 [299] if((byte) form_mode::preset_current#6==*((const byte[]) form_fields_val#0)) goto form_mode::@3 to:form_mode::@7 form_mode::@7: scope:[form_mode] from form_mode::@6 - [300] (byte) apply_preset::idx#0 ? *((const byte[]) form_fields_val#0) + [300] (byte) apply_preset::idx#0 ← *((const byte[]) form_fields_val#0) [301] call apply_preset to:form_mode::@18 form_mode::@18: scope:[form_mode] from form_mode::@7 - [302] (byte) form_mode::preset_current#1 ? *((const byte[]) form_fields_val#0) + [302] (byte) form_mode::preset_current#1 ← *((const byte[]) form_fields_val#0) [303] call form_render_values to:form_mode::@19 form_mode::@19: scope:[form_mode] from form_mode::@18 - [304] (byte) render_preset_name::idx#1 ? *((const byte[]) form_fields_val#0) + [304] (byte) render_preset_name::idx#1 ← *((const byte[]) form_fields_val#0) [305] call render_preset_name to:form_mode::@3 render_preset_name: scope:[render_preset_name] from form_mode::@15 form_mode::@19 - [306] (byte) render_preset_name::idx#10 ? phi( form_mode::@15/(byte) render_preset_name::idx#0 form_mode::@19/(byte) render_preset_name::idx#1 ) + [306] (byte) render_preset_name::idx#10 ← phi( form_mode::@15/(byte) render_preset_name::idx#0 form_mode::@19/(byte) render_preset_name::idx#1 ) [307] if((byte) render_preset_name::idx#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_preset_name::@1 to:render_preset_name::@2 render_preset_name::@2: scope:[render_preset_name] from render_preset_name @@ -10754,8 +10754,8 @@ render_preset_name::@12: scope:[render_preset_name] from render_preset_name::@1 [318] phi() to:render_preset_name::@1 render_preset_name::@1: scope:[render_preset_name] from render_preset_name render_preset_name::@10 render_preset_name::@11 render_preset_name::@12 render_preset_name::@2 render_preset_name::@3 render_preset_name::@4 render_preset_name::@5 render_preset_name::@6 render_preset_name::@7 render_preset_name::@8 render_preset_name::@9 - [319] (byte*) render_preset_name::name#13 ? phi( render_preset_name/(const byte*) render_preset_name::name#1 render_preset_name::@10/(const byte*) render_preset_name::name#10 render_preset_name::@11/(const byte*) render_preset_name::name#11 render_preset_name::@2/(const byte*) render_preset_name::name#2 render_preset_name::@3/(const byte*) render_preset_name::name#3 render_preset_name::@12/(const byte*) render_preset_name::name#1 render_preset_name::@4/(const byte*) render_preset_name::name#4 render_preset_name::@5/(const byte*) render_preset_name::name#5 render_preset_name::@6/(const byte*) render_preset_name::name#6 render_preset_name::@7/(const byte*) render_preset_name::name#7 render_preset_name::@8/(const byte*) render_preset_name::name#8 render_preset_name::@9/(const byte*) render_preset_name::name#9 ) - [320] (byte*) print_str_at::str#1 ? (byte*) render_preset_name::name#13 + [319] (byte*) render_preset_name::name#13 ← phi( render_preset_name/(const byte*) render_preset_name::name#1 render_preset_name::@10/(const byte*) render_preset_name::name#10 render_preset_name::@11/(const byte*) render_preset_name::name#11 render_preset_name::@2/(const byte*) render_preset_name::name#2 render_preset_name::@3/(const byte*) render_preset_name::name#3 render_preset_name::@12/(const byte*) render_preset_name::name#1 render_preset_name::@4/(const byte*) render_preset_name::name#4 render_preset_name::@5/(const byte*) render_preset_name::name#5 render_preset_name::@6/(const byte*) render_preset_name::name#6 render_preset_name::@7/(const byte*) render_preset_name::name#7 render_preset_name::@8/(const byte*) render_preset_name::name#8 render_preset_name::@9/(const byte*) render_preset_name::name#9 ) + [320] (byte*) print_str_at::str#1 ← (byte*) render_preset_name::name#13 [321] call print_str_at to:render_preset_name::@return render_preset_name::@return: scope:[render_preset_name] from render_preset_name::@1 @@ -10765,42 +10765,42 @@ print_str_at: scope:[print_str_at] from render_preset_name::@1 [323] phi() to:print_str_at::@1 print_str_at::@1: scope:[print_str_at] from print_str_at print_str_at::@2 - [324] (byte*) print_str_at::at#2 ? phi( print_str_at/(const byte*) FORM_SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) $a print_str_at::@2/(byte*) print_str_at::at#0 ) - [324] (byte*) print_str_at::str#2 ? phi( print_str_at/(byte*) print_str_at::str#1 print_str_at::@2/(byte*) print_str_at::str#0 ) + [324] (byte*) print_str_at::at#2 ← phi( print_str_at/(const byte*) FORM_SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) $a print_str_at::@2/(byte*) print_str_at::at#0 ) + [324] (byte*) print_str_at::str#2 ← phi( print_str_at/(byte*) print_str_at::str#1 print_str_at::@2/(byte*) print_str_at::str#0 ) [325] if(*((byte*) print_str_at::str#2)!=(byte) '@') goto print_str_at::@2 to:print_str_at::@return print_str_at::@return: scope:[print_str_at] from print_str_at::@1 [326] return to:@return print_str_at::@2: scope:[print_str_at] from print_str_at::@1 - [327] *((byte*) print_str_at::at#2) ? *((byte*) print_str_at::str#2) - [328] (byte*) print_str_at::at#0 ? ++ (byte*) print_str_at::at#2 - [329] (byte*) print_str_at::str#0 ? ++ (byte*) print_str_at::str#2 + [327] *((byte*) print_str_at::at#2) ← *((byte*) print_str_at::str#2) + [328] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#2 + [329] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#2 to:print_str_at::@1 form_render_values: scope:[form_render_values] from form_mode::@14 form_mode::@18 [330] phi() to:form_render_values::@1 form_render_values::@1: scope:[form_render_values] from form_render_values form_render_values::@2 - [331] (byte) form_render_values::idx#2 ? phi( form_render_values/(byte/signed byte/word/signed word/dword/signed dword) 0 form_render_values::@2/(byte) form_render_values::idx#1 ) - [332] (byte) form_field_ptr::field_idx#0 ? (byte) form_render_values::idx#2 + [331] (byte) form_render_values::idx#2 ← phi( form_render_values/(byte/signed byte/word/signed word/dword/signed dword) 0 form_render_values::@2/(byte) form_render_values::idx#1 ) + [332] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 [333] call form_field_ptr - [334] (byte*) form_field_ptr::return#2 ? (byte*) form_field_ptr::return#0 + [334] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 to:form_render_values::@2 form_render_values::@2: scope:[form_render_values] from form_render_values::@1 - [335] (byte*) form_render_values::field#0 ? (byte*) form_field_ptr::return#2 - [336] *((byte*) form_render_values::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) - [337] (byte) form_render_values::idx#1 ? ++ (byte) form_render_values::idx#2 + [335] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 + [336] *((byte*) form_render_values::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) + [337] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 [338] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 to:form_render_values::@return form_render_values::@return: scope:[form_render_values] from form_render_values::@2 [339] return to:@return form_field_ptr: scope:[form_field_ptr] from form_control form_render_values::@1 - [340] (byte) form_field_ptr::field_idx#2 ? phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) - [341] (byte) form_field_ptr::y#0 ? *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) - [342] (word~) form_field_ptr::$2 ? *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) - [343] (byte) form_field_ptr::x#0 ? *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) - [344] (byte*) form_field_ptr::return#0 ? (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 + [340] (byte) form_field_ptr::field_idx#2 ← phi( form_control/(byte) form_field_ptr::field_idx#1 form_render_values::@1/(byte) form_field_ptr::field_idx#0 ) + [341] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) + [342] (word~) form_field_ptr::$2 ← *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) + [343] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) + [344] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 to:form_field_ptr::@return form_field_ptr::@return: scope:[form_field_ptr] from form_field_ptr [345] return @@ -10842,34 +10842,34 @@ apply_preset::@12: scope:[apply_preset] from apply_preset::@11 [357] phi() to:apply_preset::@1 apply_preset::@1: scope:[apply_preset] from apply_preset apply_preset::@10 apply_preset::@11 apply_preset::@12 apply_preset::@2 apply_preset::@3 apply_preset::@4 apply_preset::@5 apply_preset::@6 apply_preset::@7 apply_preset::@8 apply_preset::@9 - [358] (byte*) apply_preset::preset#14 ? phi( apply_preset/(const byte[]) preset_stdchar#0 apply_preset::@10/(const byte[]) preset_sixsfred2#0 apply_preset::@11/(const byte[]) preset_8bpppixelcell#0 apply_preset::@2/(const byte[]) preset_ecmchar#0 apply_preset::@3/(const byte[]) preset_stdbm#0 apply_preset::@12/(const byte[]) preset_stdchar#0 apply_preset::@4/(const byte[]) preset_mcbm#0 apply_preset::@5/(const byte[]) preset_hi_stdchar#0 apply_preset::@6/(const byte[]) preset_hi_ecmchar#0 apply_preset::@7/(const byte[]) preset_twoplane#0 apply_preset::@8/(const byte[]) preset_chunky#0 apply_preset::@9/(const byte[]) preset_sixsfred#0 ) + [358] (byte*) apply_preset::preset#14 ← phi( apply_preset/(const byte[]) preset_stdchar#0 apply_preset::@10/(const byte[]) preset_sixsfred2#0 apply_preset::@11/(const byte[]) preset_8bpppixelcell#0 apply_preset::@2/(const byte[]) preset_ecmchar#0 apply_preset::@3/(const byte[]) preset_stdbm#0 apply_preset::@12/(const byte[]) preset_stdchar#0 apply_preset::@4/(const byte[]) preset_mcbm#0 apply_preset::@5/(const byte[]) preset_hi_stdchar#0 apply_preset::@6/(const byte[]) preset_hi_ecmchar#0 apply_preset::@7/(const byte[]) preset_twoplane#0 apply_preset::@8/(const byte[]) preset_chunky#0 apply_preset::@9/(const byte[]) preset_sixsfred#0 ) to:apply_preset::@13 apply_preset::@13: scope:[apply_preset] from apply_preset::@1 apply_preset::@13 - [359] (byte) apply_preset::i#2 ? phi( apply_preset::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 apply_preset::@13/(byte) apply_preset::i#1 ) - [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ? *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) - [361] (byte) apply_preset::i#1 ? ++ (byte) apply_preset::i#2 + [359] (byte) apply_preset::i#2 ← phi( apply_preset::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 apply_preset::@13/(byte) apply_preset::i#1 ) + [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ← *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) + [361] (byte) apply_preset::i#1 ← ++ (byte) apply_preset::i#2 [362] if((byte) apply_preset::i#1!=(const byte) form_fields_cnt#0) goto apply_preset::@13 to:apply_preset::@return apply_preset::@return: scope:[apply_preset] from apply_preset::@13 [363] return to:@return form_control: scope:[form_control] from form_mode::@5 - [364] (byte) form_field_ptr::field_idx#1 ? (byte) form_field_idx#28 + [364] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 [365] call form_field_ptr - [366] (byte*) form_field_ptr::return#3 ? (byte*) form_field_ptr::return#0 + [366] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 to:form_control::@17 form_control::@17: scope:[form_control] from form_control - [367] (byte*) form_control::field#0 ? (byte*) form_field_ptr::return#3 - [368] (signed byte) form_cursor_count#5 ? -- (signed byte) form_cursor_count#21 + [367] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 + [368] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 [369] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@20 to:form_control::@1 form_control::@1: scope:[form_control] from form_control::@17 form_control::@20 - [370] (signed byte) form_cursor_count#15 ? phi( form_control::@20/(signed byte) form_cursor_count#5 form_control::@17/(const signed byte) FORM_CURSOR_BLINK#0 ) + [370] (signed byte) form_cursor_count#15 ← phi( form_control::@20/(signed byte) form_cursor_count#5 form_control::@17/(const signed byte) FORM_CURSOR_BLINK#0 ) [371] if((signed byte) form_cursor_count#15<(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 to:form_control::@6 form_control::@6: scope:[form_control] from form_control::@1 - [372] (byte~) form_control::$13 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f - [373] *((byte*) form_control::field#0) ? (byte~) form_control::$13 + [372] (byte~) form_control::$13 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f + [373] *((byte*) form_control::field#0) ← (byte~) form_control::$13 to:form_control::@3 form_control::@3: scope:[form_control] from form_control::@2 form_control::@6 [374] phi() @@ -10878,36 +10878,36 @@ form_control::@3: scope:[form_control] from form_control::@2 form_control::@6 form_control::@18: scope:[form_control] from form_control::@3 [376] phi() [377] call keyboard_event_get - [378] (byte) keyboard_event_get::return#4 ? (byte) keyboard_event_get::return#2 + [378] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 to:form_control::@19 form_control::@19: scope:[form_control] from form_control::@18 - [379] (byte) form_control::key_event#0 ? (byte) keyboard_event_get::return#4 + [379] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 [380] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 to:form_control::@7 form_control::@7: scope:[form_control] from form_control::@19 - [381] (byte~) form_control::$15 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f - [382] *((byte*) form_control::field#0) ? (byte~) form_control::$15 - [383] (byte~) form_control::$16 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 + [381] (byte~) form_control::$15 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f + [382] *((byte*) form_control::field#0) ← (byte~) form_control::$15 + [383] (byte~) form_control::$16 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [384] if((byte~) form_control::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@12 to:form_control::@8 form_control::@8: scope:[form_control] from form_control::@7 - [385] (byte) form_field_idx#44 ? -- (byte) form_field_idx#28 + [385] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 [386] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@21 to:form_control::@13 form_control::@13: scope:[form_control] from form_control::@12 form_control::@21 form_control::@22 form_control::@8 - [387] (byte) form_field_idx#31 ? phi( form_control::@8/(const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 form_control::@21/(byte) form_field_idx#44 form_control::@22/(byte) form_field_idx#45 form_control::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [387] (byte) form_field_idx#31 ← phi( form_control::@8/(const byte) form_fields_cnt#0-(byte/signed byte/word/signed word/dword/signed dword) 1 form_control::@21/(byte) form_field_idx#44 form_control::@22/(byte) form_field_idx#45 form_control::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 ) to:form_control::@return form_control::@return: scope:[form_control] from form_control::@13 form_control::@15 form_control::@23 form_control::@5 - [388] (byte) form_field_idx#18 ? phi( form_control::@5/(byte) form_field_idx#28 form_control::@13/(byte) form_field_idx#31 form_control::@15/(byte) form_field_idx#28 form_control::@23/(byte) form_field_idx#28 ) - [388] (signed byte) form_cursor_count#16 ? phi( form_control::@5/(signed byte) form_cursor_count#15 form_control::@13/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 form_control::@15/(signed byte) form_cursor_count#15 form_control::@23/(signed byte) form_cursor_count#15 ) - [388] (byte) form_control::return#2 ? phi( form_control::@5/(byte/word/signed word/dword/signed dword) $ff form_control::@13/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@23/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [388] (byte) form_field_idx#18 ← phi( form_control::@5/(byte) form_field_idx#28 form_control::@13/(byte) form_field_idx#31 form_control::@15/(byte) form_field_idx#28 form_control::@23/(byte) form_field_idx#28 ) + [388] (signed byte) form_cursor_count#16 ← phi( form_control::@5/(signed byte) form_cursor_count#15 form_control::@13/(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2 form_control::@15/(signed byte) form_cursor_count#15 form_control::@23/(signed byte) form_cursor_count#15 ) + [388] (byte) form_control::return#2 ← phi( form_control::@5/(byte/word/signed word/dword/signed dword) $ff form_control::@13/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@15/(byte/signed byte/word/signed word/dword/signed dword) 0 form_control::@23/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [389] return to:@return form_control::@21: scope:[form_control] from form_control::@8 [390] phi() to:form_control::@13 form_control::@12: scope:[form_control] from form_control::@7 - [391] (byte) form_field_idx#45 ? ++ (byte) form_field_idx#28 + [391] (byte) form_field_idx#45 ← ++ (byte) form_field_idx#28 [392] if((byte) form_field_idx#45!=(const byte) form_fields_cnt#0) goto form_control::@22 to:form_control::@13 form_control::@22: scope:[form_control] from form_control::@12 @@ -10917,25 +10917,25 @@ form_control::@4: scope:[form_control] from form_control::@19 [394] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_RIGHT#0) goto form_control::@5 to:form_control::@9 form_control::@9: scope:[form_control] from form_control::@4 - [395] (byte~) form_control::$24 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 + [395] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [396] if((byte~) form_control::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@14 to:form_control::@10 form_control::@10: scope:[form_control] from form_control::@9 - [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) + [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [398] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@15 to:form_control::@11 form_control::@11: scope:[form_control] from form_control::@10 - [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) + [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) to:form_control::@15 form_control::@15: scope:[form_control] from form_control::@10 form_control::@11 form_control::@14 form_control::@16 - [400] *((byte*) form_control::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) + [400] *((byte*) form_control::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) to:form_control::@return form_control::@14: scope:[form_control] from form_control::@9 - [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) + [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) [402] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@15 to:form_control::@16 form_control::@16: scope:[form_control] from form_control::@14 - [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:form_control::@15 form_control::@5: scope:[form_control] from form_control::@4 [404] if((byte) form_control::key_event#0!=(const byte) KEY_SPACE#0) goto form_control::@23 @@ -10944,8 +10944,8 @@ form_control::@23: scope:[form_control] from form_control::@5 [405] phi() to:form_control::@return form_control::@2: scope:[form_control] from form_control::@1 - [406] (byte/word/dword~) form_control::$14 ? *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 - [407] *((byte*) form_control::field#0) ? (byte/word/dword~) form_control::$14 + [406] (byte/word/dword~) form_control::$14 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 + [407] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$14 to:form_control::@3 form_control::@20: scope:[form_control] from form_control::@17 [408] phi() @@ -10954,78 +10954,78 @@ form_set_screen: scope:[form_set_screen] from form_mode::@13 [409] phi() to:form_set_screen::@1 form_set_screen::@1: scope:[form_set_screen] from form_set_screen form_set_screen::@1 - [410] (byte) form_set_screen::y#2 ? phi( form_set_screen/(byte/signed byte/word/signed word/dword/signed dword) 0 form_set_screen::@1/(byte) form_set_screen::y#1 ) - [410] (byte*) form_set_screen::line#2 ? phi( form_set_screen/(const byte*) FORM_SCREEN#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) - [411] (byte~) form_set_screen::$0 ? < (byte*) form_set_screen::line#2 - [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$0 - [413] (byte~) form_set_screen::$1 ? > (byte*) form_set_screen::line#2 - [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$1 - [415] (byte*) form_set_screen::line#1 ? (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 - [416] (byte) form_set_screen::y#1 ? ++ (byte) form_set_screen::y#2 + [410] (byte) form_set_screen::y#2 ← phi( form_set_screen/(byte/signed byte/word/signed word/dword/signed dword) 0 form_set_screen::@1/(byte) form_set_screen::y#1 ) + [410] (byte*) form_set_screen::line#2 ← phi( form_set_screen/(const byte*) FORM_SCREEN#0 form_set_screen::@1/(byte*) form_set_screen::line#1 ) + [411] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 + [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 + [413] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 + [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 + [415] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [416] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 [417] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto form_set_screen::@1 to:form_set_screen::@return form_set_screen::@return: scope:[form_set_screen] from form_set_screen::@1 [418] return to:@return print_str_lines: scope:[print_str_lines] from form_mode::@12 form_mode::@9 - [419] (byte*) print_str_lines::str#5 ? phi( form_mode::@9/(const byte[]) FORM_COLS#0 form_mode::@12/(const byte[]) FORM_TEXT#0 ) - [420] (byte*~) print_char_cursor#77 ? (byte*) print_set_screen::screen#2 + [419] (byte*) print_str_lines::str#5 ← phi( form_mode::@9/(const byte[]) FORM_COLS#0 form_mode::@12/(const byte[]) FORM_TEXT#0 ) + [420] (byte*~) print_char_cursor#77 ← (byte*) print_set_screen::screen#2 to:print_str_lines::@1 print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@5 - [421] (byte*) print_line_cursor#2 ? phi( print_str_lines/(byte*) print_set_screen::screen#2 print_str_lines::@5/(byte*) print_line_cursor#22 ) - [421] (byte*) print_char_cursor#22 ? phi( print_str_lines/(byte*~) print_char_cursor#77 print_str_lines::@5/(byte*~) print_char_cursor#78 ) - [421] (byte*) print_str_lines::str#3 ? phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@5/(byte*) print_str_lines::str#0 ) + [421] (byte*) print_line_cursor#2 ← phi( print_str_lines/(byte*) print_set_screen::screen#2 print_str_lines::@5/(byte*) print_line_cursor#22 ) + [421] (byte*) print_char_cursor#22 ← phi( print_str_lines/(byte*~) print_char_cursor#77 print_str_lines::@5/(byte*~) print_char_cursor#78 ) + [421] (byte*) print_str_lines::str#3 ← phi( print_str_lines/(byte*) print_str_lines::str#5 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [422] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@2 to:print_str_lines::@return print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1 [423] return to:@return print_str_lines::@2: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@3 - [424] (byte*) print_char_cursor#20 ? phi( print_str_lines::@1/(byte*) print_char_cursor#22 print_str_lines::@3/(byte*) print_char_cursor#38 ) - [424] (byte*) print_str_lines::str#4 ? phi( print_str_lines::@1/(byte*) print_str_lines::str#3 print_str_lines::@3/(byte*) print_str_lines::str#0 ) - [425] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#4) - [426] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#4 + [424] (byte*) print_char_cursor#20 ← phi( print_str_lines::@1/(byte*) print_char_cursor#22 print_str_lines::@3/(byte*) print_char_cursor#38 ) + [424] (byte*) print_str_lines::str#4 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#3 print_str_lines::@3/(byte*) print_str_lines::str#0 ) + [425] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) + [426] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 [427] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@3 to:print_str_lines::@4 print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2 - [428] *((byte*) print_char_cursor#20) ? (byte) print_str_lines::ch#0 - [429] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#20 + [428] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 + [429] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 to:print_str_lines::@3 print_str_lines::@3: scope:[print_str_lines] from print_str_lines::@2 print_str_lines::@4 - [430] (byte*) print_char_cursor#38 ? phi( print_str_lines::@2/(byte*) print_char_cursor#20 print_str_lines::@4/(byte*) print_char_cursor#1 ) + [430] (byte*) print_char_cursor#38 ← phi( print_str_lines::@2/(byte*) print_char_cursor#20 print_str_lines::@4/(byte*) print_char_cursor#1 ) [431] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@2 to:print_str_lines::@5 print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@3 [432] phi() [433] call print_ln - [434] (byte*~) print_char_cursor#78 ? (byte*) print_line_cursor#22 + [434] (byte*~) print_char_cursor#78 ← (byte*) print_line_cursor#22 to:print_str_lines::@1 print_ln: scope:[print_ln] from print_str_lines::@5 [435] phi() to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [436] (byte*) print_line_cursor#21 ? phi( print_ln/(byte*) print_line_cursor#2 print_ln::@1/(byte*) print_line_cursor#22 ) - [437] (byte*) print_line_cursor#22 ? (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [436] (byte*) print_line_cursor#21 ← phi( print_ln/(byte*) print_line_cursor#2 print_ln::@1/(byte*) print_line_cursor#22 ) + [437] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 [438] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 [439] return to:@return print_cls: scope:[print_cls] from form_mode::@11 form_mode::@8 - [440] (byte*) print_cls::sc#0 ? (byte*) print_set_screen::screen#2 + [440] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [441] (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [442] *((byte*) print_cls::sc#2) ? (byte) ' ' - [443] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - [444] (byte*~) print_cls::$0 ? (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 + [441] (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + [442] *((byte*) print_cls::sc#2) ← (byte) ' ' + [443] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + [444] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 [445] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 [446] return to:@return print_set_screen: scope:[print_set_screen] from form_mode form_mode::@10 - [447] (byte*) print_set_screen::screen#2 ? phi( form_mode/(const byte*) COLS#0 form_mode::@10/(const byte*) FORM_SCREEN#0 ) + [447] (byte*) print_set_screen::screen#2 ← phi( form_mode/(const byte*) COLS#0 form_mode::@10/(const byte*) FORM_SCREEN#0 ) to:print_set_screen::@return print_set_screen::@return: scope:[print_set_screen] from print_set_screen [448] return @@ -11101,35 +11101,35 @@ gfx_init_plane_full::@return: scope:[gfx_init_plane_full] from gfx_init_plane_f [482] return to:@return gfx_init_plane_fill: scope:[gfx_init_plane_fill] from gfx_init_plane_blank gfx_init_plane_full gfx_init_plane_vertical2 - [483] (byte) gfx_init_plane_fill::fill#6 ? phi( gfx_init_plane_blank/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_full/(byte/word/signed word/dword/signed dword) $ff gfx_init_plane_vertical2/(byte/signed byte/word/signed word/dword/signed dword) $1b ) - [483] (dword) gfx_init_plane_fill::plane_addr#3 ? phi( gfx_init_plane_blank/(const dword) PLANE_BLANK#0 gfx_init_plane_full/(const dword) PLANE_FULL#0 gfx_init_plane_vertical2/(const dword) PLANE_VERTICAL2#0 ) - [484] (dword~) gfx_init_plane_fill::$0 ? (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 - [485] (word~) gfx_init_plane_fill::$1 ? > (dword~) gfx_init_plane_fill::$0 - [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ? < (word~) gfx_init_plane_fill::$1 - [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ? (byte) gfx_init_plane_fill::gfxbCpuBank#0 + [483] (byte) gfx_init_plane_fill::fill#6 ← phi( gfx_init_plane_blank/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_full/(byte/word/signed word/dword/signed dword) $ff gfx_init_plane_vertical2/(byte/signed byte/word/signed word/dword/signed dword) $1b ) + [483] (dword) gfx_init_plane_fill::plane_addr#3 ← phi( gfx_init_plane_blank/(const dword) PLANE_BLANK#0 gfx_init_plane_full/(const dword) PLANE_FULL#0 gfx_init_plane_vertical2/(const dword) PLANE_VERTICAL2#0 ) + [484] (dword~) gfx_init_plane_fill::$0 ← (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 + [485] (word~) gfx_init_plane_fill::$1 ← > (dword~) gfx_init_plane_fill::$0 + [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ← < (word~) gfx_init_plane_fill::$1 + [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ← (byte) gfx_init_plane_fill::gfxbCpuBank#0 [488] call dtvSetCpuBankSegment1 to:gfx_init_plane_fill::@5 gfx_init_plane_fill::@5: scope:[gfx_init_plane_fill] from gfx_init_plane_fill - [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 - [490] (word~) gfx_init_plane_fill::$4 ? < (dword) gfx_init_plane_fill::plane_addr#3 - [491] (word~) gfx_init_plane_fill::$5 ? (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff - [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ? (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 - [493] (byte*~) gfx_init_plane_fill::gfxb#6 ? (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 + [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 + [490] (word~) gfx_init_plane_fill::$4 ← < (dword) gfx_init_plane_fill::plane_addr#3 + [491] (word~) gfx_init_plane_fill::$5 ← (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff + [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ← (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 + [493] (byte*~) gfx_init_plane_fill::gfxb#6 ← (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 to:gfx_init_plane_fill::@1 gfx_init_plane_fill::@1: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@3 gfx_init_plane_fill::@5 - [494] (byte) gfx_init_plane_fill::by#4 ? phi( gfx_init_plane_fill::@3/(byte) gfx_init_plane_fill::by#1 gfx_init_plane_fill::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [494] (byte*) gfx_init_plane_fill::gfxb#3 ? phi( gfx_init_plane_fill::@3/(byte*) gfx_init_plane_fill::gfxb#1 gfx_init_plane_fill::@5/(byte*~) gfx_init_plane_fill::gfxb#6 ) + [494] (byte) gfx_init_plane_fill::by#4 ← phi( gfx_init_plane_fill::@3/(byte) gfx_init_plane_fill::by#1 gfx_init_plane_fill::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [494] (byte*) gfx_init_plane_fill::gfxb#3 ← phi( gfx_init_plane_fill::@3/(byte*) gfx_init_plane_fill::gfxb#1 gfx_init_plane_fill::@5/(byte*~) gfx_init_plane_fill::gfxb#6 ) to:gfx_init_plane_fill::@2 gfx_init_plane_fill::@2: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@1 gfx_init_plane_fill::@2 - [495] (byte) gfx_init_plane_fill::bx#2 ? phi( gfx_init_plane_fill::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::bx#1 ) - [495] (byte*) gfx_init_plane_fill::gfxb#2 ? phi( gfx_init_plane_fill::@1/(byte*) gfx_init_plane_fill::gfxb#3 gfx_init_plane_fill::@2/(byte*) gfx_init_plane_fill::gfxb#1 ) - [496] *((byte*) gfx_init_plane_fill::gfxb#2) ? (byte) gfx_init_plane_fill::fill#6 - [497] (byte*) gfx_init_plane_fill::gfxb#1 ? ++ (byte*) gfx_init_plane_fill::gfxb#2 - [498] (byte) gfx_init_plane_fill::bx#1 ? ++ (byte) gfx_init_plane_fill::bx#2 + [495] (byte) gfx_init_plane_fill::bx#2 ← phi( gfx_init_plane_fill::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_fill::@2/(byte) gfx_init_plane_fill::bx#1 ) + [495] (byte*) gfx_init_plane_fill::gfxb#2 ← phi( gfx_init_plane_fill::@1/(byte*) gfx_init_plane_fill::gfxb#3 gfx_init_plane_fill::@2/(byte*) gfx_init_plane_fill::gfxb#1 ) + [496] *((byte*) gfx_init_plane_fill::gfxb#2) ← (byte) gfx_init_plane_fill::fill#6 + [497] (byte*) gfx_init_plane_fill::gfxb#1 ← ++ (byte*) gfx_init_plane_fill::gfxb#2 + [498] (byte) gfx_init_plane_fill::bx#1 ← ++ (byte) gfx_init_plane_fill::bx#2 [499] if((byte) gfx_init_plane_fill::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_fill::@2 to:gfx_init_plane_fill::@3 gfx_init_plane_fill::@3: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@2 - [500] (byte) gfx_init_plane_fill::by#1 ? ++ (byte) gfx_init_plane_fill::by#4 + [500] (byte) gfx_init_plane_fill::by#1 ← ++ (byte) gfx_init_plane_fill::by#4 [501] if((byte) gfx_init_plane_fill::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_fill::@1 to:gfx_init_plane_fill::@4 gfx_init_plane_fill::@4: scope:[gfx_init_plane_fill] from gfx_init_plane_fill::@3 @@ -11140,8 +11140,8 @@ gfx_init_plane_fill::@return: scope:[gfx_init_plane_fill] from gfx_init_plane_f [504] return to:@return dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@6 gfx_init_plane_charset8 gfx_init_plane_charset8::@8 gfx_init_plane_fill gfx_init_plane_fill::@4 gfx_init_plane_horisontal gfx_init_plane_horisontal2 gfx_init_plane_horisontal2::@4 gfx_init_plane_horisontal::@7 gfx_init_plane_vertical gfx_init_plane_vertical::@4 - [505] (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 ? phi( gfx_init_plane_8bppchunky/((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) $4000 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_charset8/(const byte) gfx_init_plane_charset8::gfxbCpuBank#0 gfx_init_plane_charset8::@8/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_fill/(byte) dtvSetCpuBankSegment1::cpuBankIdx#11 gfx_init_plane_fill::@4/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_horisontal/(const byte) gfx_init_plane_horisontal::gfxbCpuBank#0 gfx_init_plane_horisontal2/(const byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 gfx_init_plane_horisontal2::@4/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_horisontal::@7/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_vertical/(const byte) gfx_init_plane_vertical::gfxbCpuBank#0 gfx_init_plane_vertical::@4/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 ) - [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 + [505] (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 ← phi( gfx_init_plane_8bppchunky/((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) $4000 gfx_init_plane_8bppchunky::@4/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 gfx_init_plane_8bppchunky::@6/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_charset8/(const byte) gfx_init_plane_charset8::gfxbCpuBank#0 gfx_init_plane_charset8::@8/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_fill/(byte) dtvSetCpuBankSegment1::cpuBankIdx#11 gfx_init_plane_fill::@4/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_horisontal/(const byte) gfx_init_plane_horisontal::gfxbCpuBank#0 gfx_init_plane_horisontal2/(const byte) gfx_init_plane_horisontal2::gfxbCpuBank#0 gfx_init_plane_horisontal2::@4/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_horisontal::@7/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 gfx_init_plane_vertical/(const byte) gfx_init_plane_vertical::gfxbCpuBank#0 gfx_init_plane_vertical::@4/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 ) + [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 asm { .byte$32,$dd lda$ff .byte$32,$00 } to:dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1 @@ -11166,21 +11166,21 @@ gfx_init_plane_horisontal2: scope:[gfx_init_plane_horisontal2] from gfx_init::@ [516] call dtvSetCpuBankSegment1 to:gfx_init_plane_horisontal2::@1 gfx_init_plane_horisontal2::@1: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2 gfx_init_plane_horisontal2::@3 - [517] (byte*) gfx_init_plane_horisontal2::gfxa#3 ? phi( gfx_init_plane_horisontal2::@3/(byte*) gfx_init_plane_horisontal2::gfxa#1 gfx_init_plane_horisontal2/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_HORISONTAL2#0&(word/signed word/dword/signed dword) $3fff ) - [517] (byte) gfx_init_plane_horisontal2::ay#4 ? phi( gfx_init_plane_horisontal2::@3/(byte) gfx_init_plane_horisontal2::ay#1 gfx_init_plane_horisontal2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [517] (byte*) gfx_init_plane_horisontal2::gfxa#3 ← phi( gfx_init_plane_horisontal2::@3/(byte*) gfx_init_plane_horisontal2::gfxa#1 gfx_init_plane_horisontal2/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_HORISONTAL2#0&(word/signed word/dword/signed dword) $3fff ) + [517] (byte) gfx_init_plane_horisontal2::ay#4 ← phi( gfx_init_plane_horisontal2::@3/(byte) gfx_init_plane_horisontal2::ay#1 gfx_init_plane_horisontal2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) to:gfx_init_plane_horisontal2::@2 gfx_init_plane_horisontal2::@2: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@1 gfx_init_plane_horisontal2::@2 - [518] (byte) gfx_init_plane_horisontal2::ax#2 ? phi( gfx_init_plane_horisontal2::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ax#1 ) - [518] (byte*) gfx_init_plane_horisontal2::gfxa#2 ? phi( gfx_init_plane_horisontal2::@1/(byte*) gfx_init_plane_horisontal2::gfxa#3 gfx_init_plane_horisontal2::@2/(byte*) gfx_init_plane_horisontal2::gfxa#1 ) - [519] (byte~) gfx_init_plane_horisontal2::$8 ? (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [520] (byte) gfx_init_plane_horisontal2::row#0 ? (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 - [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ? *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) - [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 - [523] (byte) gfx_init_plane_horisontal2::ax#1 ? ++ (byte) gfx_init_plane_horisontal2::ax#2 + [518] (byte) gfx_init_plane_horisontal2::ax#2 ← phi( gfx_init_plane_horisontal2::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_horisontal2::@2/(byte) gfx_init_plane_horisontal2::ax#1 ) + [518] (byte*) gfx_init_plane_horisontal2::gfxa#2 ← phi( gfx_init_plane_horisontal2::@1/(byte*) gfx_init_plane_horisontal2::gfxa#3 gfx_init_plane_horisontal2::@2/(byte*) gfx_init_plane_horisontal2::gfxa#1 ) + [519] (byte~) gfx_init_plane_horisontal2::$8 ← (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [520] (byte) gfx_init_plane_horisontal2::row#0 ← (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 + [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ← *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) + [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 + [523] (byte) gfx_init_plane_horisontal2::ax#1 ← ++ (byte) gfx_init_plane_horisontal2::ax#2 [524] if((byte) gfx_init_plane_horisontal2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal2::@2 to:gfx_init_plane_horisontal2::@3 gfx_init_plane_horisontal2::@3: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@2 - [525] (byte) gfx_init_plane_horisontal2::ay#1 ? ++ (byte) gfx_init_plane_horisontal2::ay#4 + [525] (byte) gfx_init_plane_horisontal2::ay#1 ← ++ (byte) gfx_init_plane_horisontal2::ay#4 [526] if((byte) gfx_init_plane_horisontal2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal2::@1 to:gfx_init_plane_horisontal2::@4 gfx_init_plane_horisontal2::@4: scope:[gfx_init_plane_horisontal2] from gfx_init_plane_horisontal2::@3 @@ -11195,19 +11195,19 @@ gfx_init_plane_vertical: scope:[gfx_init_plane_vertical] from gfx_init::@10 [531] call dtvSetCpuBankSegment1 to:gfx_init_plane_vertical::@1 gfx_init_plane_vertical::@1: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical gfx_init_plane_vertical::@3 - [532] (byte) gfx_init_plane_vertical::by#4 ? phi( gfx_init_plane_vertical::@3/(byte) gfx_init_plane_vertical::by#1 gfx_init_plane_vertical/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [532] (byte*) gfx_init_plane_vertical::gfxb#3 ? phi( gfx_init_plane_vertical::@3/(byte*) gfx_init_plane_vertical::gfxb#1 gfx_init_plane_vertical/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_VERTICAL#0&(word/signed word/dword/signed dword) $3fff ) + [532] (byte) gfx_init_plane_vertical::by#4 ← phi( gfx_init_plane_vertical::@3/(byte) gfx_init_plane_vertical::by#1 gfx_init_plane_vertical/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [532] (byte*) gfx_init_plane_vertical::gfxb#3 ← phi( gfx_init_plane_vertical::@3/(byte*) gfx_init_plane_vertical::gfxb#1 gfx_init_plane_vertical/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_VERTICAL#0&(word/signed word/dword/signed dword) $3fff ) to:gfx_init_plane_vertical::@2 gfx_init_plane_vertical::@2: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@1 gfx_init_plane_vertical::@2 - [533] (byte) gfx_init_plane_vertical::bx#2 ? phi( gfx_init_plane_vertical::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::bx#1 ) - [533] (byte*) gfx_init_plane_vertical::gfxb#2 ? phi( gfx_init_plane_vertical::@1/(byte*) gfx_init_plane_vertical::gfxb#3 gfx_init_plane_vertical::@2/(byte*) gfx_init_plane_vertical::gfxb#1 ) - [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f - [535] (byte*) gfx_init_plane_vertical::gfxb#1 ? ++ (byte*) gfx_init_plane_vertical::gfxb#2 - [536] (byte) gfx_init_plane_vertical::bx#1 ? ++ (byte) gfx_init_plane_vertical::bx#2 + [533] (byte) gfx_init_plane_vertical::bx#2 ← phi( gfx_init_plane_vertical::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_vertical::@2/(byte) gfx_init_plane_vertical::bx#1 ) + [533] (byte*) gfx_init_plane_vertical::gfxb#2 ← phi( gfx_init_plane_vertical::@1/(byte*) gfx_init_plane_vertical::gfxb#3 gfx_init_plane_vertical::@2/(byte*) gfx_init_plane_vertical::gfxb#1 ) + [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f + [535] (byte*) gfx_init_plane_vertical::gfxb#1 ← ++ (byte*) gfx_init_plane_vertical::gfxb#2 + [536] (byte) gfx_init_plane_vertical::bx#1 ← ++ (byte) gfx_init_plane_vertical::bx#2 [537] if((byte) gfx_init_plane_vertical::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_vertical::@2 to:gfx_init_plane_vertical::@3 gfx_init_plane_vertical::@3: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@2 - [538] (byte) gfx_init_plane_vertical::by#1 ? ++ (byte) gfx_init_plane_vertical::by#4 + [538] (byte) gfx_init_plane_vertical::by#1 ← ++ (byte) gfx_init_plane_vertical::by#4 [539] if((byte) gfx_init_plane_vertical::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_vertical::@1 to:gfx_init_plane_vertical::@4 gfx_init_plane_vertical::@4: scope:[gfx_init_plane_vertical] from gfx_init_plane_vertical::@3 @@ -11222,26 +11222,26 @@ gfx_init_plane_horisontal: scope:[gfx_init_plane_horisontal] from gfx_init::@9 [544] call dtvSetCpuBankSegment1 to:gfx_init_plane_horisontal::@1 gfx_init_plane_horisontal::@1: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal gfx_init_plane_horisontal::@6 - [545] (byte*) gfx_init_plane_horisontal::gfxa#6 ? phi( gfx_init_plane_horisontal::@6/(byte*) gfx_init_plane_horisontal::gfxa#7 gfx_init_plane_horisontal/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_HORISONTAL#0&(word/signed word/dword/signed dword) $3fff ) - [545] (byte) gfx_init_plane_horisontal::ay#4 ? phi( gfx_init_plane_horisontal::@6/(byte) gfx_init_plane_horisontal::ay#1 gfx_init_plane_horisontal/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [545] (byte*) gfx_init_plane_horisontal::gfxa#6 ← phi( gfx_init_plane_horisontal::@6/(byte*) gfx_init_plane_horisontal::gfxa#7 gfx_init_plane_horisontal/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_HORISONTAL#0&(word/signed word/dword/signed dword) $3fff ) + [545] (byte) gfx_init_plane_horisontal::ay#4 ← phi( gfx_init_plane_horisontal::@6/(byte) gfx_init_plane_horisontal::ay#1 gfx_init_plane_horisontal/(byte/signed byte/word/signed word/dword/signed dword) 0 ) to:gfx_init_plane_horisontal::@2 gfx_init_plane_horisontal::@2: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@1 gfx_init_plane_horisontal::@4 - [546] (byte) gfx_init_plane_horisontal::ax#2 ? phi( gfx_init_plane_horisontal::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ax#1 ) - [546] (byte*) gfx_init_plane_horisontal::gfxa#3 ? phi( gfx_init_plane_horisontal::@1/(byte*) gfx_init_plane_horisontal::gfxa#6 gfx_init_plane_horisontal::@4/(byte*) gfx_init_plane_horisontal::gfxa#7 ) - [547] (byte~) gfx_init_plane_horisontal::$8 ? (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 + [546] (byte) gfx_init_plane_horisontal::ax#2 ← phi( gfx_init_plane_horisontal::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_horisontal::@4/(byte) gfx_init_plane_horisontal::ax#1 ) + [546] (byte*) gfx_init_plane_horisontal::gfxa#3 ← phi( gfx_init_plane_horisontal::@1/(byte*) gfx_init_plane_horisontal::gfxa#6 gfx_init_plane_horisontal::@4/(byte*) gfx_init_plane_horisontal::gfxa#7 ) + [547] (byte~) gfx_init_plane_horisontal::$8 ← (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 [548] if((byte~) gfx_init_plane_horisontal::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_horisontal::@3 to:gfx_init_plane_horisontal::@5 gfx_init_plane_horisontal::@5: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@2 - [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff - [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 + [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff + [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 to:gfx_init_plane_horisontal::@4 gfx_init_plane_horisontal::@4: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@3 gfx_init_plane_horisontal::@5 - [551] (byte*) gfx_init_plane_horisontal::gfxa#7 ? phi( gfx_init_plane_horisontal::@3/(byte*) gfx_init_plane_horisontal::gfxa#1 gfx_init_plane_horisontal::@5/(byte*) gfx_init_plane_horisontal::gfxa#2 ) - [552] (byte) gfx_init_plane_horisontal::ax#1 ? ++ (byte) gfx_init_plane_horisontal::ax#2 + [551] (byte*) gfx_init_plane_horisontal::gfxa#7 ← phi( gfx_init_plane_horisontal::@3/(byte*) gfx_init_plane_horisontal::gfxa#1 gfx_init_plane_horisontal::@5/(byte*) gfx_init_plane_horisontal::gfxa#2 ) + [552] (byte) gfx_init_plane_horisontal::ax#1 ← ++ (byte) gfx_init_plane_horisontal::ax#2 [553] if((byte) gfx_init_plane_horisontal::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal::@2 to:gfx_init_plane_horisontal::@6 gfx_init_plane_horisontal::@6: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@4 - [554] (byte) gfx_init_plane_horisontal::ay#1 ? ++ (byte) gfx_init_plane_horisontal::ay#4 + [554] (byte) gfx_init_plane_horisontal::ay#1 ← ++ (byte) gfx_init_plane_horisontal::ay#4 [555] if((byte) gfx_init_plane_horisontal::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal::@1 to:gfx_init_plane_horisontal::@7 gfx_init_plane_horisontal::@7: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@6 @@ -11252,60 +11252,60 @@ gfx_init_plane_horisontal::@return: scope:[gfx_init_plane_horisontal] from gfx_ [558] return to:@return gfx_init_plane_horisontal::@3: scope:[gfx_init_plane_horisontal] from gfx_init_plane_horisontal::@2 - [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 + [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 to:gfx_init_plane_horisontal::@4 gfx_init_plane_charset8: scope:[gfx_init_plane_charset8] from gfx_init::@8 [561] phi() [562] call dtvSetCpuBankSegment1 to:gfx_init_plane_charset8::@9 gfx_init_plane_charset8::@9: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8 - [563] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 + [563] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 to:gfx_init_plane_charset8::@1 gfx_init_plane_charset8::@1: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@7 gfx_init_plane_charset8::@9 - [564] (byte) gfx_init_plane_charset8::ch#8 ? phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::ch#1 gfx_init_plane_charset8::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [564] (byte) gfx_init_plane_charset8::col#6 ? phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::col#1 gfx_init_plane_charset8::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [564] (byte*) gfx_init_plane_charset8::gfxa#6 ? phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::gfxa#1 gfx_init_plane_charset8::@9/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_CHARSET8#0&(word/signed word/dword/signed dword) $3fff ) - [564] (byte*) gfx_init_plane_charset8::chargen#3 ? phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::@9/(const byte*) CHARGEN#0 ) + [564] (byte) gfx_init_plane_charset8::ch#8 ← phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::ch#1 gfx_init_plane_charset8::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [564] (byte) gfx_init_plane_charset8::col#6 ← phi( gfx_init_plane_charset8::@7/(byte) gfx_init_plane_charset8::col#1 gfx_init_plane_charset8::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [564] (byte*) gfx_init_plane_charset8::gfxa#6 ← phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::gfxa#1 gfx_init_plane_charset8::@9/((byte*))(word/signed word/dword/signed dword) $4000+(const dword) PLANE_CHARSET8#0&(word/signed word/dword/signed dword) $3fff ) + [564] (byte*) gfx_init_plane_charset8::chargen#3 ← phi( gfx_init_plane_charset8::@7/(byte*) gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::@9/(const byte*) CHARGEN#0 ) to:gfx_init_plane_charset8::@2 gfx_init_plane_charset8::@2: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@1 gfx_init_plane_charset8::@6 - [565] (byte) gfx_init_plane_charset8::cr#6 ? phi( gfx_init_plane_charset8::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::cr#1 ) - [565] (byte) gfx_init_plane_charset8::col#5 ? phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::col#1 ) - [565] (byte*) gfx_init_plane_charset8::gfxa#5 ? phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::gfxa#6 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::gfxa#1 ) - [565] (byte*) gfx_init_plane_charset8::chargen#2 ? phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::chargen#3 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::chargen#1 ) - [566] (byte) gfx_init_plane_charset8::bits#0 ? *((byte*) gfx_init_plane_charset8::chargen#2) - [567] (byte*) gfx_init_plane_charset8::chargen#1 ? ++ (byte*) gfx_init_plane_charset8::chargen#2 + [565] (byte) gfx_init_plane_charset8::cr#6 ← phi( gfx_init_plane_charset8::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::cr#1 ) + [565] (byte) gfx_init_plane_charset8::col#5 ← phi( gfx_init_plane_charset8::@1/(byte) gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::@6/(byte) gfx_init_plane_charset8::col#1 ) + [565] (byte*) gfx_init_plane_charset8::gfxa#5 ← phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::gfxa#6 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::gfxa#1 ) + [565] (byte*) gfx_init_plane_charset8::chargen#2 ← phi( gfx_init_plane_charset8::@1/(byte*) gfx_init_plane_charset8::chargen#3 gfx_init_plane_charset8::@6/(byte*) gfx_init_plane_charset8::chargen#1 ) + [566] (byte) gfx_init_plane_charset8::bits#0 ← *((byte*) gfx_init_plane_charset8::chargen#2) + [567] (byte*) gfx_init_plane_charset8::chargen#1 ← ++ (byte*) gfx_init_plane_charset8::chargen#2 to:gfx_init_plane_charset8::@3 gfx_init_plane_charset8::@3: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@2 gfx_init_plane_charset8::@4 - [568] (byte) gfx_init_plane_charset8::cp#2 ? phi( gfx_init_plane_charset8::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cp#1 ) - [568] (byte) gfx_init_plane_charset8::col#2 ? phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::col#1 ) - [568] (byte*) gfx_init_plane_charset8::gfxa#2 ? phi( gfx_init_plane_charset8::@2/(byte*) gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::gfxa#1 ) - [568] (byte) gfx_init_plane_charset8::bits#2 ? phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::bits#0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::bits#1 ) - [569] (byte~) gfx_init_plane_charset8::$8 ? (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 + [568] (byte) gfx_init_plane_charset8::cp#2 ← phi( gfx_init_plane_charset8::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::cp#1 ) + [568] (byte) gfx_init_plane_charset8::col#2 ← phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::col#1 ) + [568] (byte*) gfx_init_plane_charset8::gfxa#2 ← phi( gfx_init_plane_charset8::@2/(byte*) gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::@4/(byte*) gfx_init_plane_charset8::gfxa#1 ) + [568] (byte) gfx_init_plane_charset8::bits#2 ← phi( gfx_init_plane_charset8::@2/(byte) gfx_init_plane_charset8::bits#0 gfx_init_plane_charset8::@4/(byte) gfx_init_plane_charset8::bits#1 ) + [569] (byte~) gfx_init_plane_charset8::$8 ← (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 [570] if((byte~) gfx_init_plane_charset8::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_charset8::@4 to:gfx_init_plane_charset8::@5 gfx_init_plane_charset8::@5: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@3 - [571] (byte~) gfx_init_plane_charset8::c#3 ? (byte) gfx_init_plane_charset8::col#2 + [571] (byte~) gfx_init_plane_charset8::c#3 ← (byte) gfx_init_plane_charset8::col#2 to:gfx_init_plane_charset8::@4 gfx_init_plane_charset8::@4: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@3 gfx_init_plane_charset8::@5 - [572] (byte) gfx_init_plane_charset8::c#2 ? phi( gfx_init_plane_charset8::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_charset8::@5/(byte~) gfx_init_plane_charset8::c#3 ) - [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ? (byte) gfx_init_plane_charset8::c#2 - [574] (byte*) gfx_init_plane_charset8::gfxa#1 ? ++ (byte*) gfx_init_plane_charset8::gfxa#2 - [575] (byte) gfx_init_plane_charset8::bits#1 ? (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [576] (byte) gfx_init_plane_charset8::col#1 ? ++ (byte) gfx_init_plane_charset8::col#2 - [577] (byte) gfx_init_plane_charset8::cp#1 ? ++ (byte) gfx_init_plane_charset8::cp#2 + [572] (byte) gfx_init_plane_charset8::c#2 ← phi( gfx_init_plane_charset8::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_charset8::@5/(byte~) gfx_init_plane_charset8::c#3 ) + [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ← (byte) gfx_init_plane_charset8::c#2 + [574] (byte*) gfx_init_plane_charset8::gfxa#1 ← ++ (byte*) gfx_init_plane_charset8::gfxa#2 + [575] (byte) gfx_init_plane_charset8::bits#1 ← (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [576] (byte) gfx_init_plane_charset8::col#1 ← ++ (byte) gfx_init_plane_charset8::col#2 + [577] (byte) gfx_init_plane_charset8::cp#1 ← ++ (byte) gfx_init_plane_charset8::cp#2 [578] if((byte) gfx_init_plane_charset8::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@3 to:gfx_init_plane_charset8::@6 gfx_init_plane_charset8::@6: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@4 - [579] (byte) gfx_init_plane_charset8::cr#1 ? ++ (byte) gfx_init_plane_charset8::cr#6 + [579] (byte) gfx_init_plane_charset8::cr#1 ← ++ (byte) gfx_init_plane_charset8::cr#6 [580] if((byte) gfx_init_plane_charset8::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@2 to:gfx_init_plane_charset8::@7 gfx_init_plane_charset8::@7: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@6 - [581] (byte) gfx_init_plane_charset8::ch#1 ? ++ (byte) gfx_init_plane_charset8::ch#8 + [581] (byte) gfx_init_plane_charset8::ch#1 ← ++ (byte) gfx_init_plane_charset8::ch#8 [582] if((byte) gfx_init_plane_charset8::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_charset8::@1 to:gfx_init_plane_charset8::@8 gfx_init_plane_charset8::@8: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@7 - [583] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 + [583] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [584] call dtvSetCpuBankSegment1 to:gfx_init_plane_charset8::@return gfx_init_plane_charset8::@return: scope:[gfx_init_plane_charset8] from gfx_init_plane_charset8::@8 @@ -11316,35 +11316,35 @@ gfx_init_plane_8bppchunky: scope:[gfx_init_plane_8bppchunky] from gfx_init::@7 [587] call dtvSetCpuBankSegment1 to:gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@1: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky gfx_init_plane_8bppchunky::@5 - [588] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ? phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky/++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) $4000 ) - [588] (byte) gfx_init_plane_8bppchunky::y#6 ? phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [588] (byte*) gfx_init_plane_8bppchunky::gfxb#5 ? phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky/((byte*))(word/signed word/dword/signed dword) $4000 ) + [588] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky/++((byte))(const dword) PLANE_8BPP_CHUNKY#0/(word/signed word/dword/signed dword) $4000 ) + [588] (byte) gfx_init_plane_8bppchunky::y#6 ← phi( gfx_init_plane_8bppchunky::@5/(byte) gfx_init_plane_8bppchunky::y#1 gfx_init_plane_8bppchunky/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [588] (byte*) gfx_init_plane_8bppchunky::gfxb#5 ← phi( gfx_init_plane_8bppchunky::@5/(byte*) gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky/((byte*))(word/signed word/dword/signed dword) $4000 ) to:gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@2: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@1 gfx_init_plane_8bppchunky::@3 - [589] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ? phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) - [589] (word) gfx_init_plane_8bppchunky::x#2 ? phi( gfx_init_plane_8bppchunky::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) - [589] (byte*) gfx_init_plane_8bppchunky::gfxb#3 ? phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) + [589] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 ← phi( gfx_init_plane_8bppchunky::@1/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::@3/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ) + [589] (word) gfx_init_plane_8bppchunky::x#2 ← phi( gfx_init_plane_8bppchunky::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_plane_8bppchunky::@3/(word) gfx_init_plane_8bppchunky::x#1 ) + [589] (byte*) gfx_init_plane_8bppchunky::gfxb#3 ← phi( gfx_init_plane_8bppchunky::@1/(byte*) gfx_init_plane_8bppchunky::gfxb#5 gfx_init_plane_8bppchunky::@3/(byte*) gfx_init_plane_8bppchunky::gfxb#1 ) [590] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) $8000) goto gfx_init_plane_8bppchunky::@3 to:gfx_init_plane_8bppchunky::@4 gfx_init_plane_8bppchunky::@4: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 - [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 + [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 [592] call dtvSetCpuBankSegment1 to:gfx_init_plane_8bppchunky::@7 gfx_init_plane_8bppchunky::@7: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@4 - [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ? ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 + [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 to:gfx_init_plane_8bppchunky::@3 gfx_init_plane_8bppchunky::@3: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@2 gfx_init_plane_8bppchunky::@7 - [594] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ? phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::@7/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) - [594] (byte*) gfx_init_plane_8bppchunky::gfxb#4 ? phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@7/((byte*))(word/signed word/dword/signed dword) $4000 ) - [595] (word~) gfx_init_plane_8bppchunky::$9 ? (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 - [596] (byte) gfx_init_plane_8bppchunky::c#0 ? ((byte)) (word~) gfx_init_plane_8bppchunky::$9 - [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ? (byte) gfx_init_plane_8bppchunky::c#0 - [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ? ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 - [599] (word) gfx_init_plane_8bppchunky::x#1 ? ++ (word) gfx_init_plane_8bppchunky::x#2 + [594] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 ← phi( gfx_init_plane_8bppchunky::@2/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::@7/(byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ) + [594] (byte*) gfx_init_plane_8bppchunky::gfxb#4 ← phi( gfx_init_plane_8bppchunky::@2/(byte*) gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::@7/((byte*))(word/signed word/dword/signed dword) $4000 ) + [595] (word~) gfx_init_plane_8bppchunky::$9 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 + [596] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$9 + [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 + [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 + [599] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 [600] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) $140) goto gfx_init_plane_8bppchunky::@2 to:gfx_init_plane_8bppchunky::@5 gfx_init_plane_8bppchunky::@5: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@3 - [601] (byte) gfx_init_plane_8bppchunky::y#1 ? ++ (byte) gfx_init_plane_8bppchunky::y#6 + [601] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 [602] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_8bppchunky::@1 to:gfx_init_plane_8bppchunky::@6 gfx_init_plane_8bppchunky::@6: scope:[gfx_init_plane_8bppchunky] from gfx_init_plane_8bppchunky::@5 @@ -11363,15 +11363,15 @@ gfx_init_vic_bitmap::@2: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap [609] call bitmap_clear to:gfx_init_vic_bitmap::@1 gfx_init_vic_bitmap::@1: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap::@2 gfx_init_vic_bitmap::@3 - [610] (byte) gfx_init_vic_bitmap::l#2 ? phi( gfx_init_vic_bitmap::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_vic_bitmap::@3/(byte) gfx_init_vic_bitmap::l#1 ) - [611] (byte) bitmap_line::x0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) - [612] (byte) bitmap_line::x1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) - [613] (byte) bitmap_line::y0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) - [614] (byte) bitmap_line::y1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) + [610] (byte) gfx_init_vic_bitmap::l#2 ← phi( gfx_init_vic_bitmap::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_vic_bitmap::@3/(byte) gfx_init_vic_bitmap::l#1 ) + [611] (byte) bitmap_line::x0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) + [612] (byte) bitmap_line::x1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) + [613] (byte) bitmap_line::y0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) + [614] (byte) bitmap_line::y1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) [615] call bitmap_line to:gfx_init_vic_bitmap::@3 gfx_init_vic_bitmap::@3: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap::@1 - [616] (byte) gfx_init_vic_bitmap::l#1 ? ++ (byte) gfx_init_vic_bitmap::l#2 + [616] (byte) gfx_init_vic_bitmap::l#1 ← ++ (byte) gfx_init_vic_bitmap::l#2 [617] if((byte) gfx_init_vic_bitmap::l#1<(const byte) gfx_init_vic_bitmap::lines_cnt#0) goto gfx_init_vic_bitmap::@1 to:gfx_init_vic_bitmap::@return gfx_init_vic_bitmap::@return: scope:[gfx_init_vic_bitmap] from gfx_init_vic_bitmap::@3 @@ -11381,262 +11381,262 @@ bitmap_line: scope:[bitmap_line] from gfx_init_vic_bitmap::@1 [619] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 to:bitmap_line::@2 bitmap_line::@2: scope:[bitmap_line] from bitmap_line - [620] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 + [620] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [621] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 to:bitmap_line::@3 bitmap_line::@3: scope:[bitmap_line] from bitmap_line::@2 - [622] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 + [622] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [623] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8 to:bitmap_line::@4 bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3 - [624] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 - [625] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 - [626] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 - [627] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 - [628] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + [624] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 + [625] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 + [626] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 + [627] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 + [628] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 [629] call bitmap_line_ydxi to:bitmap_line::@return bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@10 bitmap_line::@12 bitmap_line::@13 bitmap_line::@14 bitmap_line::@4 bitmap_line::@6 bitmap_line::@8 bitmap_line::@9 [630] return to:@return bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@3 - [631] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 - [632] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 - [633] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - [634] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - [635] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 + [631] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 + [632] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 + [633] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + [634] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + [635] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 [636] call bitmap_line_xdyi to:bitmap_line::@return bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@2 - [637] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 + [637] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [638] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9 to:bitmap_line::@10 bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@7 - [639] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 - [640] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 - [641] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 - [642] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 - [643] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + [639] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 + [640] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 + [641] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 + [642] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 + [643] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 [644] call bitmap_line_ydxd to:bitmap_line::@return bitmap_line::@9: scope:[bitmap_line] from bitmap_line::@7 - [645] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 - [646] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 - [647] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 - [648] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - [649] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 + [645] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 + [646] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 + [647] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 + [648] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + [649] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 [650] call bitmap_line_xdyd to:bitmap_line::@return bitmap_line::@1: scope:[bitmap_line] from bitmap_line - [651] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 + [651] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [652] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11 to:bitmap_line::@5 bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@1 - [653] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 + [653] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [654] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12 to:bitmap_line::@6 bitmap_line::@6: scope:[bitmap_line] from bitmap_line::@5 - [655] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 - [656] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 - [657] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - [658] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - [659] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + [655] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 + [656] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 + [657] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + [658] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + [659] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 [660] call bitmap_line_ydxd to:bitmap_line::@return bitmap_line::@12: scope:[bitmap_line] from bitmap_line::@5 - [661] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 - [662] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - [663] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 - [664] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - [665] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 + [661] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 + [662] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + [663] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 + [664] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + [665] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 [666] call bitmap_line_xdyd to:bitmap_line::@return bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@1 - [667] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 + [667] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [668] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13 to:bitmap_line::@14 bitmap_line::@14: scope:[bitmap_line] from bitmap_line::@11 - [669] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 - [670] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 - [671] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 - [672] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 - [673] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + [669] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 + [670] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 + [671] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 + [672] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 + [673] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 [674] call bitmap_line_ydxi to:bitmap_line::@return bitmap_line::@13: scope:[bitmap_line] from bitmap_line::@11 - [675] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 - [676] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - [677] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 - [678] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - [679] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + [675] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 + [676] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + [677] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 + [678] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + [679] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 [680] call bitmap_line_xdyi to:bitmap_line::@return bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@8 - [681] (byte) bitmap_line_xdyi::x1#6 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 ) - [681] (byte) bitmap_line_xdyi::xd#5 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 ) - [681] (byte) bitmap_line_xdyi::y#5 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 ) - [681] (byte) bitmap_line_xdyi::x#6 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 ) - [681] (byte) bitmap_line_xdyi::yd#2 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 ) - [682] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [681] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 ) + [681] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 ) + [681] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 ) + [681] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 ) + [681] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 ) + [682] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_xdyi::@1 bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2 - [683] (byte) bitmap_line_xdyi::e#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) - [683] (byte) bitmap_line_xdyi::y#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) - [683] (byte) bitmap_line_xdyi::x#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) - [684] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - [685] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 + [683] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) + [683] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) + [683] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) + [684] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + [685] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 [686] call bitmap_plot to:bitmap_line_xdyi::@4 bitmap_line_xdyi::@4: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1 - [687] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 - [688] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 + [687] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 + [688] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [689] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 to:bitmap_line_xdyi::@3 bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@4 - [690] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 - [691] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 + [690] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 + [691] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 to:bitmap_line_xdyi::@2 bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@4 - [692] (byte) bitmap_line_xdyi::e#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 ) - [692] (byte) bitmap_line_xdyi::y#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::y#3 ) - [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [692] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 ) + [692] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::y#3 ) + [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [694] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 to:bitmap_line_xdyi::@return bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2 [695] return to:@return bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1 - [696] (byte) bitmap_plot::y#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) - [696] (byte) bitmap_plot::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) - [697] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) - [698] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) - [699] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 - [700] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) - [701] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 + [696] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) + [696] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) + [697] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) + [698] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) + [699] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 + [700] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) + [701] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot [702] return to:@return bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@14 bitmap_line::@4 - [703] (byte) bitmap_line_ydxi::y1#6 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y1#0 ) - [703] (byte) bitmap_line_ydxi::yd#5 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::yd#0 ) - [703] (byte) bitmap_line_ydxi::y#6 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y#0 ) - [703] (byte) bitmap_line_ydxi::x#5 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::x#1 bitmap_line::@4/(byte) bitmap_line_ydxi::x#0 ) - [703] (byte) bitmap_line_ydxi::xd#2 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::xd#0 ) - [704] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [703] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y1#0 ) + [703] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::yd#0 ) + [703] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y#0 ) + [703] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::x#1 bitmap_line::@4/(byte) bitmap_line_ydxi::x#0 ) + [703] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::xd#0 ) + [704] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_ydxi::@1 bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2 - [705] (byte) bitmap_line_ydxi::e#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) - [705] (byte) bitmap_line_ydxi::y#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) - [705] (byte) bitmap_line_ydxi::x#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) - [706] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - [707] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 + [705] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) + [705] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) + [705] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) + [706] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + [707] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 [708] call bitmap_plot to:bitmap_line_ydxi::@4 bitmap_line_ydxi::@4: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1 - [709] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 - [710] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 + [709] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 + [710] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [711] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 to:bitmap_line_ydxi::@3 bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@4 - [712] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 - [713] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 + [712] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 + [713] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 to:bitmap_line_ydxi::@2 bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@4 - [714] (byte) bitmap_line_ydxi::e#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 ) - [714] (byte) bitmap_line_ydxi::x#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::x#3 ) - [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [714] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 ) + [714] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::x#3 ) + [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [716] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 to:bitmap_line_ydxi::@return bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2 [717] return to:@return bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@12 bitmap_line::@9 - [718] (byte) bitmap_line_xdyd::x1#6 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 ) - [718] (byte) bitmap_line_xdyd::xd#5 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 ) - [718] (byte) bitmap_line_xdyd::y#5 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 ) - [718] (byte) bitmap_line_xdyd::x#6 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 ) - [718] (byte) bitmap_line_xdyd::yd#2 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 ) - [719] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [718] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 ) + [718] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 ) + [718] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 ) + [718] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 ) + [718] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 ) + [719] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_xdyd::@1 bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2 - [720] (byte) bitmap_line_xdyd::e#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) - [720] (byte) bitmap_line_xdyd::y#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) - [720] (byte) bitmap_line_xdyd::x#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) - [721] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - [722] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 + [720] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) + [720] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) + [720] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) + [721] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + [722] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 [723] call bitmap_plot to:bitmap_line_xdyd::@4 bitmap_line_xdyd::@4: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1 - [724] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 - [725] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 + [724] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 + [725] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [726] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 to:bitmap_line_xdyd::@3 bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@4 - [727] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 - [728] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 + [727] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 + [728] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 to:bitmap_line_xdyd::@2 bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@4 - [729] (byte) bitmap_line_xdyd::e#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 ) - [729] (byte) bitmap_line_xdyd::y#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::y#3 ) - [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [729] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 ) + [729] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::y#3 ) + [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [731] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 to:bitmap_line_xdyd::@return bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2 [732] return to:@return bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@10 bitmap_line::@6 - [733] (byte) bitmap_line_ydxd::y1#6 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#1 ) - [733] (byte) bitmap_line_ydxd::yd#5 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#1 ) - [733] (byte) bitmap_line_ydxd::y#7 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y#1 ) - [733] (byte) bitmap_line_ydxd::x#5 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#0 bitmap_line::@6/(byte) bitmap_line_ydxd::x#1 ) - [733] (byte) bitmap_line_ydxd::xd#2 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#1 ) - [734] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [733] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#1 ) + [733] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#1 ) + [733] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y#1 ) + [733] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#0 bitmap_line::@6/(byte) bitmap_line_ydxd::x#1 ) + [733] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#1 ) + [734] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_ydxd::@1 bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2 - [735] (byte) bitmap_line_ydxd::e#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) - [735] (byte) bitmap_line_ydxd::y#2 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) - [735] (byte) bitmap_line_ydxd::x#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) - [736] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - [737] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 + [735] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) + [735] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) + [735] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) + [736] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + [737] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 [738] call bitmap_plot to:bitmap_line_ydxd::@4 bitmap_line_ydxd::@4: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1 - [739] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 - [740] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 + [739] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 + [740] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [741] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 to:bitmap_line_ydxd::@3 bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@4 - [742] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 - [743] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 + [742] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 + [743] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 to:bitmap_line_ydxd::@2 bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@4 - [744] (byte) bitmap_line_ydxd::e#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 ) - [744] (byte) bitmap_line_ydxd::x#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::x#3 ) - [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [744] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 ) + [744] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::x#3 ) + [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [746] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 to:bitmap_line_ydxd::@return bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2 [747] return to:@return bitmap_clear: scope:[bitmap_clear] from gfx_init_vic_bitmap::@2 - [748] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) - [749] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + [748] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) + [749] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - [750] (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - [750] (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) + [750] (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + [750] (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - [751] (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - [751] (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - [752] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [753] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - [754] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 + [751] (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + [751] (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + [752] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [753] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + [754] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 [755] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - [756] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 + [756] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 [757] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 @@ -11646,38 +11646,38 @@ bitmap_init: scope:[bitmap_init] from gfx_init_vic_bitmap [759] phi() to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - [760] (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - [760] (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - [761] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 - [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 - [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) VIC_BITMAP#0 - [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - [765] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [760] (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + [760] (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + [761] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 + [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 + [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) VIC_BITMAP#0 + [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + [765] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [766] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 to:bitmap_init::@2 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@6 - [767] (byte) bitmap_init::bits#4 ? phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) - [768] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 + [767] (byte) bitmap_init::bits#4 ← phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) + [768] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 [769] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 to:bitmap_init::@3 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@2 bitmap_init::@4 - [770] (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@2/((byte*))(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) - [770] (byte) bitmap_init::y#2 ? phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) - [771] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [772] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 - [773] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 - [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 - [775] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 - [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 - [777] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [770] (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@2/((byte*))(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) + [770] (byte) bitmap_init::y#2 ← phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) + [771] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [772] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 + [773] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 + [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 + [775] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 + [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 + [777] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [778] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@3 - [779] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 + [779] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 to:bitmap_init::@4 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@3 bitmap_init::@5 - [780] (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) - [781] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 + [780] (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) + [781] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 [782] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 to:bitmap_init::@return bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@4 @@ -11687,29 +11687,29 @@ bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@1 [784] phi() to:bitmap_init::@2 gfx_init_charset: scope:[gfx_init_charset] from gfx_init::@5 - [785] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $32 + [785] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $32 to:gfx_init_charset::@1 gfx_init_charset::@1: scope:[gfx_init_charset] from gfx_init_charset gfx_init_charset::@3 - [786] (byte) gfx_init_charset::c#4 ? phi( gfx_init_charset/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_charset::@3/(byte) gfx_init_charset::c#1 ) - [786] (byte*) gfx_init_charset::charset#3 ? phi( gfx_init_charset/(const byte*) VIC_CHARSET_ROM#0 gfx_init_charset::@3/(byte*) gfx_init_charset::charset#1 ) - [786] (byte*) gfx_init_charset::chargen#3 ? phi( gfx_init_charset/(const byte*) CHARGEN#0 gfx_init_charset::@3/(byte*) gfx_init_charset::chargen#1 ) + [786] (byte) gfx_init_charset::c#4 ← phi( gfx_init_charset/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_charset::@3/(byte) gfx_init_charset::c#1 ) + [786] (byte*) gfx_init_charset::charset#3 ← phi( gfx_init_charset/(const byte*) VIC_CHARSET_ROM#0 gfx_init_charset::@3/(byte*) gfx_init_charset::charset#1 ) + [786] (byte*) gfx_init_charset::chargen#3 ← phi( gfx_init_charset/(const byte*) CHARGEN#0 gfx_init_charset::@3/(byte*) gfx_init_charset::chargen#1 ) to:gfx_init_charset::@2 gfx_init_charset::@2: scope:[gfx_init_charset] from gfx_init_charset::@1 gfx_init_charset::@2 - [787] (byte) gfx_init_charset::l#2 ? phi( gfx_init_charset::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_charset::@2/(byte) gfx_init_charset::l#1 ) - [787] (byte*) gfx_init_charset::charset#2 ? phi( gfx_init_charset::@1/(byte*) gfx_init_charset::charset#3 gfx_init_charset::@2/(byte*) gfx_init_charset::charset#1 ) - [787] (byte*) gfx_init_charset::chargen#2 ? phi( gfx_init_charset::@1/(byte*) gfx_init_charset::chargen#3 gfx_init_charset::@2/(byte*) gfx_init_charset::chargen#1 ) - [788] *((byte*) gfx_init_charset::charset#2) ? *((byte*) gfx_init_charset::chargen#2) - [789] (byte*) gfx_init_charset::charset#1 ? ++ (byte*) gfx_init_charset::charset#2 - [790] (byte*) gfx_init_charset::chargen#1 ? ++ (byte*) gfx_init_charset::chargen#2 - [791] (byte) gfx_init_charset::l#1 ? ++ (byte) gfx_init_charset::l#2 + [787] (byte) gfx_init_charset::l#2 ← phi( gfx_init_charset::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_charset::@2/(byte) gfx_init_charset::l#1 ) + [787] (byte*) gfx_init_charset::charset#2 ← phi( gfx_init_charset::@1/(byte*) gfx_init_charset::charset#3 gfx_init_charset::@2/(byte*) gfx_init_charset::charset#1 ) + [787] (byte*) gfx_init_charset::chargen#2 ← phi( gfx_init_charset::@1/(byte*) gfx_init_charset::chargen#3 gfx_init_charset::@2/(byte*) gfx_init_charset::chargen#1 ) + [788] *((byte*) gfx_init_charset::charset#2) ← *((byte*) gfx_init_charset::chargen#2) + [789] (byte*) gfx_init_charset::charset#1 ← ++ (byte*) gfx_init_charset::charset#2 + [790] (byte*) gfx_init_charset::chargen#1 ← ++ (byte*) gfx_init_charset::chargen#2 + [791] (byte) gfx_init_charset::l#1 ← ++ (byte) gfx_init_charset::l#2 [792] if((byte) gfx_init_charset::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_charset::@2 to:gfx_init_charset::@3 gfx_init_charset::@3: scope:[gfx_init_charset] from gfx_init_charset::@2 - [793] (byte) gfx_init_charset::c#1 ? ++ (byte) gfx_init_charset::c#4 + [793] (byte) gfx_init_charset::c#1 ← ++ (byte) gfx_init_charset::c#4 [794] if((byte) gfx_init_charset::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_charset::@1 to:gfx_init_charset::@4 gfx_init_charset::@4: scope:[gfx_init_charset] from gfx_init_charset::@3 - [795] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $37 + [795] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $37 to:gfx_init_charset::@return gfx_init_charset::@return: scope:[gfx_init_charset] from gfx_init_charset::@4 [796] return @@ -11718,19 +11718,19 @@ gfx_init_screen4: scope:[gfx_init_screen4] from gfx_init::@4 [797] phi() to:gfx_init_screen4::@1 gfx_init_screen4::@1: scope:[gfx_init_screen4] from gfx_init_screen4 gfx_init_screen4::@3 - [798] (byte) gfx_init_screen4::cy#4 ? phi( gfx_init_screen4/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen4::@3/(byte) gfx_init_screen4::cy#1 ) - [798] (byte*) gfx_init_screen4::ch#3 ? phi( gfx_init_screen4/(const byte*) VIC_SCREEN4#0 gfx_init_screen4::@3/(byte*) gfx_init_screen4::ch#1 ) + [798] (byte) gfx_init_screen4::cy#4 ← phi( gfx_init_screen4/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen4::@3/(byte) gfx_init_screen4::cy#1 ) + [798] (byte*) gfx_init_screen4::ch#3 ← phi( gfx_init_screen4/(const byte*) VIC_SCREEN4#0 gfx_init_screen4::@3/(byte*) gfx_init_screen4::ch#1 ) to:gfx_init_screen4::@2 gfx_init_screen4::@2: scope:[gfx_init_screen4] from gfx_init_screen4::@1 gfx_init_screen4::@2 - [799] (byte) gfx_init_screen4::cx#2 ? phi( gfx_init_screen4::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen4::@2/(byte) gfx_init_screen4::cx#1 ) - [799] (byte*) gfx_init_screen4::ch#2 ? phi( gfx_init_screen4::@1/(byte*) gfx_init_screen4::ch#3 gfx_init_screen4::@2/(byte*) gfx_init_screen4::ch#1 ) - [800] *((byte*) gfx_init_screen4::ch#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [801] (byte*) gfx_init_screen4::ch#1 ? ++ (byte*) gfx_init_screen4::ch#2 - [802] (byte) gfx_init_screen4::cx#1 ? ++ (byte) gfx_init_screen4::cx#2 + [799] (byte) gfx_init_screen4::cx#2 ← phi( gfx_init_screen4::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen4::@2/(byte) gfx_init_screen4::cx#1 ) + [799] (byte*) gfx_init_screen4::ch#2 ← phi( gfx_init_screen4::@1/(byte*) gfx_init_screen4::ch#3 gfx_init_screen4::@2/(byte*) gfx_init_screen4::ch#1 ) + [800] *((byte*) gfx_init_screen4::ch#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [801] (byte*) gfx_init_screen4::ch#1 ← ++ (byte*) gfx_init_screen4::ch#2 + [802] (byte) gfx_init_screen4::cx#1 ← ++ (byte) gfx_init_screen4::cx#2 [803] if((byte) gfx_init_screen4::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen4::@2 to:gfx_init_screen4::@3 gfx_init_screen4::@3: scope:[gfx_init_screen4] from gfx_init_screen4::@2 - [804] (byte) gfx_init_screen4::cy#1 ? ++ (byte) gfx_init_screen4::cy#4 + [804] (byte) gfx_init_screen4::cy#1 ← ++ (byte) gfx_init_screen4::cy#4 [805] if((byte) gfx_init_screen4::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen4::@1 to:gfx_init_screen4::@return gfx_init_screen4::@return: scope:[gfx_init_screen4] from gfx_init_screen4::@3 @@ -11740,23 +11740,23 @@ gfx_init_screen3: scope:[gfx_init_screen3] from gfx_init::@3 [807] phi() to:gfx_init_screen3::@1 gfx_init_screen3::@1: scope:[gfx_init_screen3] from gfx_init_screen3 gfx_init_screen3::@3 - [808] (byte*) gfx_init_screen3::ch#3 ? phi( gfx_init_screen3/(const byte*) VIC_SCREEN3#0 gfx_init_screen3::@3/(byte*) gfx_init_screen3::ch#1 ) - [808] (byte) gfx_init_screen3::cy#4 ? phi( gfx_init_screen3/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen3::@3/(byte) gfx_init_screen3::cy#1 ) + [808] (byte*) gfx_init_screen3::ch#3 ← phi( gfx_init_screen3/(const byte*) VIC_SCREEN3#0 gfx_init_screen3::@3/(byte*) gfx_init_screen3::ch#1 ) + [808] (byte) gfx_init_screen3::cy#4 ← phi( gfx_init_screen3/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen3::@3/(byte) gfx_init_screen3::cy#1 ) to:gfx_init_screen3::@2 gfx_init_screen3::@2: scope:[gfx_init_screen3] from gfx_init_screen3::@1 gfx_init_screen3::@2 - [809] (byte*) gfx_init_screen3::ch#2 ? phi( gfx_init_screen3::@1/(byte*) gfx_init_screen3::ch#3 gfx_init_screen3::@2/(byte*) gfx_init_screen3::ch#1 ) - [809] (byte) gfx_init_screen3::cx#2 ? phi( gfx_init_screen3::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen3::@2/(byte) gfx_init_screen3::cx#1 ) - [810] (byte~) gfx_init_screen3::$0 ? (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 - [811] (byte~) gfx_init_screen3::$1 ? (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [812] (byte~) gfx_init_screen3::$2 ? (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 - [813] (byte~) gfx_init_screen3::$3 ? (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 - [814] *((byte*) gfx_init_screen3::ch#2) ? (byte~) gfx_init_screen3::$3 - [815] (byte*) gfx_init_screen3::ch#1 ? ++ (byte*) gfx_init_screen3::ch#2 - [816] (byte) gfx_init_screen3::cx#1 ? ++ (byte) gfx_init_screen3::cx#2 + [809] (byte*) gfx_init_screen3::ch#2 ← phi( gfx_init_screen3::@1/(byte*) gfx_init_screen3::ch#3 gfx_init_screen3::@2/(byte*) gfx_init_screen3::ch#1 ) + [809] (byte) gfx_init_screen3::cx#2 ← phi( gfx_init_screen3::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen3::@2/(byte) gfx_init_screen3::cx#1 ) + [810] (byte~) gfx_init_screen3::$0 ← (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 + [811] (byte~) gfx_init_screen3::$1 ← (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [812] (byte~) gfx_init_screen3::$2 ← (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 + [813] (byte~) gfx_init_screen3::$3 ← (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 + [814] *((byte*) gfx_init_screen3::ch#2) ← (byte~) gfx_init_screen3::$3 + [815] (byte*) gfx_init_screen3::ch#1 ← ++ (byte*) gfx_init_screen3::ch#2 + [816] (byte) gfx_init_screen3::cx#1 ← ++ (byte) gfx_init_screen3::cx#2 [817] if((byte) gfx_init_screen3::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen3::@2 to:gfx_init_screen3::@3 gfx_init_screen3::@3: scope:[gfx_init_screen3] from gfx_init_screen3::@2 - [818] (byte) gfx_init_screen3::cy#1 ? ++ (byte) gfx_init_screen3::cy#4 + [818] (byte) gfx_init_screen3::cy#1 ← ++ (byte) gfx_init_screen3::cy#4 [819] if((byte) gfx_init_screen3::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen3::@1 to:gfx_init_screen3::@return gfx_init_screen3::@return: scope:[gfx_init_screen3] from gfx_init_screen3::@3 @@ -11766,24 +11766,24 @@ gfx_init_screen2: scope:[gfx_init_screen2] from gfx_init::@2 [821] phi() to:gfx_init_screen2::@1 gfx_init_screen2::@1: scope:[gfx_init_screen2] from gfx_init_screen2 gfx_init_screen2::@3 - [822] (byte*) gfx_init_screen2::ch#3 ? phi( gfx_init_screen2/(const byte*) VIC_SCREEN2#0 gfx_init_screen2::@3/(byte*) gfx_init_screen2::ch#1 ) - [822] (byte) gfx_init_screen2::cy#4 ? phi( gfx_init_screen2/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen2::@3/(byte) gfx_init_screen2::cy#1 ) + [822] (byte*) gfx_init_screen2::ch#3 ← phi( gfx_init_screen2/(const byte*) VIC_SCREEN2#0 gfx_init_screen2::@3/(byte*) gfx_init_screen2::ch#1 ) + [822] (byte) gfx_init_screen2::cy#4 ← phi( gfx_init_screen2/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen2::@3/(byte) gfx_init_screen2::cy#1 ) to:gfx_init_screen2::@2 gfx_init_screen2::@2: scope:[gfx_init_screen2] from gfx_init_screen2::@1 gfx_init_screen2::@2 - [823] (byte*) gfx_init_screen2::ch#2 ? phi( gfx_init_screen2::@1/(byte*) gfx_init_screen2::ch#3 gfx_init_screen2::@2/(byte*) gfx_init_screen2::ch#1 ) - [823] (byte) gfx_init_screen2::cx#2 ? phi( gfx_init_screen2::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen2::@2/(byte) gfx_init_screen2::cx#1 ) - [824] (byte~) gfx_init_screen2::$0 ? (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 - [825] (byte) gfx_init_screen2::col#0 ? (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f - [826] (byte) gfx_init_screen2::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 - [827] (byte~) gfx_init_screen2::$3 ? (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [828] (byte~) gfx_init_screen2::$4 ? (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 - [829] *((byte*) gfx_init_screen2::ch#2) ? (byte~) gfx_init_screen2::$4 - [830] (byte*) gfx_init_screen2::ch#1 ? ++ (byte*) gfx_init_screen2::ch#2 - [831] (byte) gfx_init_screen2::cx#1 ? ++ (byte) gfx_init_screen2::cx#2 + [823] (byte*) gfx_init_screen2::ch#2 ← phi( gfx_init_screen2::@1/(byte*) gfx_init_screen2::ch#3 gfx_init_screen2::@2/(byte*) gfx_init_screen2::ch#1 ) + [823] (byte) gfx_init_screen2::cx#2 ← phi( gfx_init_screen2::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen2::@2/(byte) gfx_init_screen2::cx#1 ) + [824] (byte~) gfx_init_screen2::$0 ← (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 + [825] (byte) gfx_init_screen2::col#0 ← (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f + [826] (byte) gfx_init_screen2::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 + [827] (byte~) gfx_init_screen2::$3 ← (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [828] (byte~) gfx_init_screen2::$4 ← (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 + [829] *((byte*) gfx_init_screen2::ch#2) ← (byte~) gfx_init_screen2::$4 + [830] (byte*) gfx_init_screen2::ch#1 ← ++ (byte*) gfx_init_screen2::ch#2 + [831] (byte) gfx_init_screen2::cx#1 ← ++ (byte) gfx_init_screen2::cx#2 [832] if((byte) gfx_init_screen2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen2::@2 to:gfx_init_screen2::@3 gfx_init_screen2::@3: scope:[gfx_init_screen2] from gfx_init_screen2::@2 - [833] (byte) gfx_init_screen2::cy#1 ? ++ (byte) gfx_init_screen2::cy#4 + [833] (byte) gfx_init_screen2::cy#1 ← ++ (byte) gfx_init_screen2::cy#4 [834] if((byte) gfx_init_screen2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen2::@1 to:gfx_init_screen2::@return gfx_init_screen2::@return: scope:[gfx_init_screen2] from gfx_init_screen2::@3 @@ -11793,21 +11793,21 @@ gfx_init_screen1: scope:[gfx_init_screen1] from gfx_init::@1 [836] phi() to:gfx_init_screen1::@1 gfx_init_screen1::@1: scope:[gfx_init_screen1] from gfx_init_screen1 gfx_init_screen1::@3 - [837] (byte*) gfx_init_screen1::ch#3 ? phi( gfx_init_screen1/(const byte*) VIC_SCREEN1#0 gfx_init_screen1::@3/(byte*) gfx_init_screen1::ch#1 ) - [837] (byte) gfx_init_screen1::cy#4 ? phi( gfx_init_screen1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen1::@3/(byte) gfx_init_screen1::cy#1 ) + [837] (byte*) gfx_init_screen1::ch#3 ← phi( gfx_init_screen1/(const byte*) VIC_SCREEN1#0 gfx_init_screen1::@3/(byte*) gfx_init_screen1::ch#1 ) + [837] (byte) gfx_init_screen1::cy#4 ← phi( gfx_init_screen1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen1::@3/(byte) gfx_init_screen1::cy#1 ) to:gfx_init_screen1::@2 gfx_init_screen1::@2: scope:[gfx_init_screen1] from gfx_init_screen1::@1 gfx_init_screen1::@2 - [838] (byte*) gfx_init_screen1::ch#2 ? phi( gfx_init_screen1::@1/(byte*) gfx_init_screen1::ch#3 gfx_init_screen1::@2/(byte*) gfx_init_screen1::ch#1 ) - [838] (byte) gfx_init_screen1::cx#2 ? phi( gfx_init_screen1::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen1::@2/(byte) gfx_init_screen1::cx#1 ) - [839] (byte~) gfx_init_screen1::$0 ? (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 - [840] (byte~) gfx_init_screen1::$1 ? (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f - [841] *((byte*) gfx_init_screen1::ch#2) ? (byte~) gfx_init_screen1::$1 - [842] (byte*) gfx_init_screen1::ch#1 ? ++ (byte*) gfx_init_screen1::ch#2 - [843] (byte) gfx_init_screen1::cx#1 ? ++ (byte) gfx_init_screen1::cx#2 + [838] (byte*) gfx_init_screen1::ch#2 ← phi( gfx_init_screen1::@1/(byte*) gfx_init_screen1::ch#3 gfx_init_screen1::@2/(byte*) gfx_init_screen1::ch#1 ) + [838] (byte) gfx_init_screen1::cx#2 ← phi( gfx_init_screen1::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen1::@2/(byte) gfx_init_screen1::cx#1 ) + [839] (byte~) gfx_init_screen1::$0 ← (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 + [840] (byte~) gfx_init_screen1::$1 ← (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f + [841] *((byte*) gfx_init_screen1::ch#2) ← (byte~) gfx_init_screen1::$1 + [842] (byte*) gfx_init_screen1::ch#1 ← ++ (byte*) gfx_init_screen1::ch#2 + [843] (byte) gfx_init_screen1::cx#1 ← ++ (byte) gfx_init_screen1::cx#2 [844] if((byte) gfx_init_screen1::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen1::@2 to:gfx_init_screen1::@3 gfx_init_screen1::@3: scope:[gfx_init_screen1] from gfx_init_screen1::@2 - [845] (byte) gfx_init_screen1::cy#1 ? ++ (byte) gfx_init_screen1::cy#4 + [845] (byte) gfx_init_screen1::cy#1 ← ++ (byte) gfx_init_screen1::cy#4 [846] if((byte) gfx_init_screen1::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen1::@1 to:gfx_init_screen1::@return gfx_init_screen1::@return: scope:[gfx_init_screen1] from gfx_init_screen1::@3 @@ -11817,31 +11817,31 @@ gfx_init_screen0: scope:[gfx_init_screen0] from gfx_init [848] phi() to:gfx_init_screen0::@1 gfx_init_screen0::@1: scope:[gfx_init_screen0] from gfx_init_screen0 gfx_init_screen0::@3 - [849] (byte*) gfx_init_screen0::ch#3 ? phi( gfx_init_screen0/(const byte*) VIC_SCREEN0#0 gfx_init_screen0::@3/(byte*) gfx_init_screen0::ch#1 ) - [849] (byte) gfx_init_screen0::cy#4 ? phi( gfx_init_screen0/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen0::@3/(byte) gfx_init_screen0::cy#1 ) + [849] (byte*) gfx_init_screen0::ch#3 ← phi( gfx_init_screen0/(const byte*) VIC_SCREEN0#0 gfx_init_screen0::@3/(byte*) gfx_init_screen0::ch#1 ) + [849] (byte) gfx_init_screen0::cy#4 ← phi( gfx_init_screen0/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen0::@3/(byte) gfx_init_screen0::cy#1 ) to:gfx_init_screen0::@2 gfx_init_screen0::@2: scope:[gfx_init_screen0] from gfx_init_screen0::@1 gfx_init_screen0::@2 - [850] (byte*) gfx_init_screen0::ch#2 ? phi( gfx_init_screen0::@1/(byte*) gfx_init_screen0::ch#3 gfx_init_screen0::@2/(byte*) gfx_init_screen0::ch#1 ) - [850] (byte) gfx_init_screen0::cx#2 ? phi( gfx_init_screen0::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen0::@2/(byte) gfx_init_screen0::cx#1 ) - [851] (byte~) gfx_init_screen0::$0 ? (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [852] (byte~) gfx_init_screen0::$1 ? (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [853] (byte~) gfx_init_screen0::$2 ? (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [854] (byte~) gfx_init_screen0::$3 ? (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 - [855] *((byte*) gfx_init_screen0::ch#2) ? (byte~) gfx_init_screen0::$3 - [856] (byte*) gfx_init_screen0::ch#1 ? ++ (byte*) gfx_init_screen0::ch#2 - [857] (byte) gfx_init_screen0::cx#1 ? ++ (byte) gfx_init_screen0::cx#2 + [850] (byte*) gfx_init_screen0::ch#2 ← phi( gfx_init_screen0::@1/(byte*) gfx_init_screen0::ch#3 gfx_init_screen0::@2/(byte*) gfx_init_screen0::ch#1 ) + [850] (byte) gfx_init_screen0::cx#2 ← phi( gfx_init_screen0::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 gfx_init_screen0::@2/(byte) gfx_init_screen0::cx#1 ) + [851] (byte~) gfx_init_screen0::$0 ← (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [852] (byte~) gfx_init_screen0::$1 ← (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [853] (byte~) gfx_init_screen0::$2 ← (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [854] (byte~) gfx_init_screen0::$3 ← (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 + [855] *((byte*) gfx_init_screen0::ch#2) ← (byte~) gfx_init_screen0::$3 + [856] (byte*) gfx_init_screen0::ch#1 ← ++ (byte*) gfx_init_screen0::ch#2 + [857] (byte) gfx_init_screen0::cx#1 ← ++ (byte) gfx_init_screen0::cx#2 [858] if((byte) gfx_init_screen0::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen0::@2 to:gfx_init_screen0::@3 gfx_init_screen0::@3: scope:[gfx_init_screen0] from gfx_init_screen0::@2 - [859] (byte) gfx_init_screen0::cy#1 ? ++ (byte) gfx_init_screen0::cy#4 + [859] (byte) gfx_init_screen0::cy#1 ← ++ (byte) gfx_init_screen0::cy#4 [860] if((byte) gfx_init_screen0::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen0::@1 to:gfx_init_screen0::@return gfx_init_screen0::@return: scope:[gfx_init_screen0] from gfx_init_screen0::@3 [861] return to:@return keyboard_init: scope:[keyboard_init] from main - [862] *((const byte*) CIA1_PORT_A_DDR#0) ? (byte/word/signed word/dword/signed dword) $ff - [863] *((const byte*) CIA1_PORT_B_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [862] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) $ff + [863] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_init::@return keyboard_init::@return: scope:[keyboard_init] from keyboard_init [864] return @@ -13915,15 +13915,15 @@ bend: main: { //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal) // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 // Enable DTV extended modes lda #DTV_FEATURE_ENABLE sta DTV_FEATURE @@ -14063,7 +14063,7 @@ gfx_mode: { jmp b11 //SEG45 gfx_mode::@11 b11: - //SEG46 [20] (byte) gfx_mode::dtv_control#2 ? (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG46 [20] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_BORDER_OFF ora dtv_control sta dtv_control @@ -14081,7 +14081,7 @@ gfx_mode: { jmp b12 //SEG51 gfx_mode::@12 b12: - //SEG52 [23] (byte) gfx_mode::dtv_control#3 ? (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG52 [23] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_HIGHCOLOR ora dtv_control sta dtv_control @@ -14099,7 +14099,7 @@ gfx_mode: { jmp b13 //SEG57 gfx_mode::@13 b13: - //SEG58 [26] (byte) gfx_mode::dtv_control#4 ? (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG58 [26] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_OVERSCAN ora dtv_control sta dtv_control @@ -14117,7 +14117,7 @@ gfx_mode: { jmp b14 //SEG63 gfx_mode::@14 b14: - //SEG64 [29] (byte) gfx_mode::dtv_control#5 ? (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG64 [29] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_COLORRAM_OFF ora dtv_control sta dtv_control @@ -14135,7 +14135,7 @@ gfx_mode: { jmp b15 //SEG69 gfx_mode::@15 b15: - //SEG70 [32] (byte) gfx_mode::dtv_control#6 ? (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG70 [32] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_CHUNKY ora dtv_control sta dtv_control @@ -14146,7 +14146,7 @@ gfx_mode: { jmp b6 //SEG73 gfx_mode::@6 b6: - //SEG74 [34] *((const byte*) DTV_CONTROL#0) ? (byte) gfx_mode::dtv_control#12 -- _deref_pbuc1=vbuz1 + //SEG74 [34] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 -- _deref_pbuc1=vbuz1 lda dtv_control sta DTV_CONTROL //SEG75 [35] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 -- _deref_pbuc1_eq_0_then_la1 @@ -14179,7 +14179,7 @@ gfx_mode: { jmp b17 //SEG84 gfx_mode::@17 b17: - //SEG85 [39] (byte) gfx_mode::vic_control#2 ? (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG85 [39] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 -- vbuz1=vbuz1_bor_vbuc1 lda #VIC_BMM ora vic_control sta vic_control @@ -14190,7 +14190,7 @@ gfx_mode: { jmp b8 //SEG88 gfx_mode::@8 b8: - //SEG89 [41] *((const byte*) VIC_CONTROL#0) ? (byte) gfx_mode::vic_control#4 -- _deref_pbuc1=vbuz1 + //SEG89 [41] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 -- _deref_pbuc1=vbuz1 lda vic_control sta VIC_CONTROL //SEG90 [42] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 -- _deref_pbuc1_eq_0_then_la1 @@ -14216,21 +14216,21 @@ gfx_mode: { jmp b9 //SEG97 gfx_mode::@9 b9: - //SEG98 [45] *((const byte*) VIC_CONTROL2#0) ? (byte) gfx_mode::vic_control2#2 -- _deref_pbuc1=vbuz1 + //SEG98 [45] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 -- _deref_pbuc1=vbuz1 lda vic_control2 sta VIC_CONTROL2 - //SEG99 [46] (byte~) gfx_mode::$20 ? *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG99 [46] (byte~) gfx_mode::$20 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_a_start_hi asl asl asl asl sta _20 - //SEG100 [47] (byte) gfx_mode::plane_a_offs#0 ? (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG100 [47] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_a_start_lo ora _20 sta plane_a_offs - //SEG101 [48] (byte) get_plane::idx#0 ? *((const byte*) form_a_pattern#0) -- vbuz1=_deref_pbuc1 + //SEG101 [48] (byte) get_plane::idx#0 ← *((const byte*) form_a_pattern#0) -- vbuz1=_deref_pbuc1 lda form_a_pattern sta get_plane.idx //SEG102 [49] call get_plane @@ -14238,7 +14238,7 @@ gfx_mode: { get_plane_from_b9: //SEG104 [236] phi (byte) get_plane::idx#10 = (byte) get_plane::idx#0 [phi:gfx_mode::@9->get_plane#0] -- register_copy jsr get_plane - //SEG105 [50] (dword) get_plane::return#16 ? (dword) get_plane::return#14 -- vduz1=vduz2 + //SEG105 [50] (dword) get_plane::return#16 ← (dword) get_plane::return#14 -- vduz1=vduz2 lda get_plane.return sta get_plane.return_16 lda get_plane.return+1 @@ -14250,7 +14250,7 @@ gfx_mode: { jmp b27 //SEG106 gfx_mode::@27 b27: - //SEG107 [51] (dword~) gfx_mode::$22 ? (dword) get_plane::return#16 -- vduz1=vduz2 + //SEG107 [51] (dword~) gfx_mode::$22 ← (dword) get_plane::return#16 -- vduz1=vduz2 lda get_plane.return_16 sta _22 lda get_plane.return_16+1 @@ -14259,7 +14259,7 @@ gfx_mode: { sta _22+2 lda get_plane.return_16+3 sta _22+3 - //SEG108 [52] (dword) gfx_mode::plane_a#0 ? (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 -- vduz1=vduz2_plus_vbuz3 + //SEG108 [52] (dword) gfx_mode::plane_a#0 ← (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 -- vduz1=vduz2_plus_vbuz3 lda plane_a_offs clc adc _22 @@ -14273,82 +14273,82 @@ gfx_mode: { lda _22+3 adc #0 sta plane_a+3 - //SEG109 [53] (word~) gfx_mode::$24 ? < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 + //SEG109 [53] (word~) gfx_mode::$24 ← < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 lda plane_a sta _24 lda plane_a+1 sta _24+1 - //SEG110 [54] (byte~) gfx_mode::$25 ? < (word~) gfx_mode::$24 -- vbuz1=_lo_vwuz2 + //SEG110 [54] (byte~) gfx_mode::$25 ← < (word~) gfx_mode::$24 -- vbuz1=_lo_vwuz2 lda _24 sta _25 - //SEG111 [55] *((const byte*) DTV_PLANEA_START_LO#0) ? (byte~) gfx_mode::$25 -- _deref_pbuc1=vbuz1 + //SEG111 [55] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$25 -- _deref_pbuc1=vbuz1 lda _25 sta DTV_PLANEA_START_LO - //SEG112 [56] (word~) gfx_mode::$26 ? < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 + //SEG112 [56] (word~) gfx_mode::$26 ← < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 lda plane_a sta _26 lda plane_a+1 sta _26+1 - //SEG113 [57] (byte~) gfx_mode::$27 ? > (word~) gfx_mode::$26 -- vbuz1=_hi_vwuz2 + //SEG113 [57] (byte~) gfx_mode::$27 ← > (word~) gfx_mode::$26 -- vbuz1=_hi_vwuz2 lda _26+1 sta _27 - //SEG114 [58] *((const byte*) DTV_PLANEA_START_MI#0) ? (byte~) gfx_mode::$27 -- _deref_pbuc1=vbuz1 + //SEG114 [58] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$27 -- _deref_pbuc1=vbuz1 lda _27 sta DTV_PLANEA_START_MI - //SEG115 [59] (word~) gfx_mode::$28 ? > (dword) gfx_mode::plane_a#0 -- vwuz1=_hi_vduz2 + //SEG115 [59] (word~) gfx_mode::$28 ← > (dword) gfx_mode::plane_a#0 -- vwuz1=_hi_vduz2 lda plane_a+2 sta _28 lda plane_a+3 sta _28+1 - //SEG116 [60] (byte~) gfx_mode::$29 ? < (word~) gfx_mode::$28 -- vbuz1=_lo_vwuz2 + //SEG116 [60] (byte~) gfx_mode::$29 ← < (word~) gfx_mode::$28 -- vbuz1=_lo_vwuz2 lda _28 sta _29 - //SEG117 [61] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte~) gfx_mode::$29 -- _deref_pbuc1=vbuz1 + //SEG117 [61] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$29 -- _deref_pbuc1=vbuz1 lda _29 sta DTV_PLANEA_START_HI - //SEG118 [62] (byte~) gfx_mode::$30 ? *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG118 [62] (byte~) gfx_mode::$30 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_a_step_hi asl asl asl asl sta _30 - //SEG119 [63] (byte~) gfx_mode::$31 ? (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG119 [63] (byte~) gfx_mode::$31 ← (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_a_step_lo ora _30 sta _31 - //SEG120 [64] *((const byte*) DTV_PLANEA_STEP#0) ? (byte~) gfx_mode::$31 -- _deref_pbuc1=vbuz1 + //SEG120 [64] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$31 -- _deref_pbuc1=vbuz1 lda _31 sta DTV_PLANEA_STEP - //SEG121 [65] (byte~) gfx_mode::$32 ? *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG121 [65] (byte~) gfx_mode::$32 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_a_mod_hi asl asl asl asl sta _32 - //SEG122 [66] (byte~) gfx_mode::$33 ? (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG122 [66] (byte~) gfx_mode::$33 ← (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_a_mod_lo ora _32 sta _33 - //SEG123 [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte~) gfx_mode::$33 -- _deref_pbuc1=vbuz1 + //SEG123 [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$33 -- _deref_pbuc1=vbuz1 lda _33 sta DTV_PLANEA_MODULO_LO - //SEG124 [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG124 [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG125 [69] (byte~) gfx_mode::$34 ? *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG125 [69] (byte~) gfx_mode::$34 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_b_start_hi asl asl asl asl sta _34 - //SEG126 [70] (byte) gfx_mode::plane_b_offs#0 ? (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG126 [70] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_b_start_lo ora _34 sta plane_b_offs - //SEG127 [71] (byte) get_plane::idx#1 ? *((const byte*) form_b_pattern#0) -- vbuz1=_deref_pbuc1 + //SEG127 [71] (byte) get_plane::idx#1 ← *((const byte*) form_b_pattern#0) -- vbuz1=_deref_pbuc1 lda form_b_pattern sta get_plane.idx //SEG128 [72] call get_plane @@ -14356,7 +14356,7 @@ gfx_mode: { get_plane_from_b27: //SEG130 [236] phi (byte) get_plane::idx#10 = (byte) get_plane::idx#1 [phi:gfx_mode::@27->get_plane#0] -- register_copy jsr get_plane - //SEG131 [73] (dword) get_plane::return#17 ? (dword) get_plane::return#14 -- vduz1=vduz2 + //SEG131 [73] (dword) get_plane::return#17 ← (dword) get_plane::return#14 -- vduz1=vduz2 lda get_plane.return sta get_plane.return_17 lda get_plane.return+1 @@ -14368,7 +14368,7 @@ gfx_mode: { jmp b28 //SEG132 gfx_mode::@28 b28: - //SEG133 [74] (dword~) gfx_mode::$36 ? (dword) get_plane::return#17 -- vduz1=vduz2 + //SEG133 [74] (dword~) gfx_mode::$36 ← (dword) get_plane::return#17 -- vduz1=vduz2 lda get_plane.return_17 sta _36 lda get_plane.return_17+1 @@ -14377,7 +14377,7 @@ gfx_mode: { sta _36+2 lda get_plane.return_17+3 sta _36+3 - //SEG134 [75] (dword) gfx_mode::plane_b#0 ? (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 -- vduz1=vduz2_plus_vbuz3 + //SEG134 [75] (dword) gfx_mode::plane_b#0 ← (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 -- vduz1=vduz2_plus_vbuz3 lda plane_b_offs clc adc _36 @@ -14391,79 +14391,79 @@ gfx_mode: { lda _36+3 adc #0 sta plane_b+3 - //SEG135 [76] (word~) gfx_mode::$38 ? < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 + //SEG135 [76] (word~) gfx_mode::$38 ← < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 lda plane_b sta _38 lda plane_b+1 sta _38+1 - //SEG136 [77] (byte~) gfx_mode::$39 ? < (word~) gfx_mode::$38 -- vbuz1=_lo_vwuz2 + //SEG136 [77] (byte~) gfx_mode::$39 ← < (word~) gfx_mode::$38 -- vbuz1=_lo_vwuz2 lda _38 sta _39 - //SEG137 [78] *((const byte*) DTV_PLANEB_START_LO#0) ? (byte~) gfx_mode::$39 -- _deref_pbuc1=vbuz1 + //SEG137 [78] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$39 -- _deref_pbuc1=vbuz1 lda _39 sta DTV_PLANEB_START_LO - //SEG138 [79] (word~) gfx_mode::$40 ? < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 + //SEG138 [79] (word~) gfx_mode::$40 ← < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 lda plane_b sta _40 lda plane_b+1 sta _40+1 - //SEG139 [80] (byte~) gfx_mode::$41 ? > (word~) gfx_mode::$40 -- vbuz1=_hi_vwuz2 + //SEG139 [80] (byte~) gfx_mode::$41 ← > (word~) gfx_mode::$40 -- vbuz1=_hi_vwuz2 lda _40+1 sta _41 - //SEG140 [81] *((const byte*) DTV_PLANEB_START_MI#0) ? (byte~) gfx_mode::$41 -- _deref_pbuc1=vbuz1 + //SEG140 [81] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$41 -- _deref_pbuc1=vbuz1 lda _41 sta DTV_PLANEB_START_MI - //SEG141 [82] (word~) gfx_mode::$42 ? > (dword) gfx_mode::plane_b#0 -- vwuz1=_hi_vduz2 + //SEG141 [82] (word~) gfx_mode::$42 ← > (dword) gfx_mode::plane_b#0 -- vwuz1=_hi_vduz2 lda plane_b+2 sta _42 lda plane_b+3 sta _42+1 - //SEG142 [83] (byte~) gfx_mode::$43 ? < (word~) gfx_mode::$42 -- vbuz1=_lo_vwuz2 + //SEG142 [83] (byte~) gfx_mode::$43 ← < (word~) gfx_mode::$42 -- vbuz1=_lo_vwuz2 lda _42 sta _43 - //SEG143 [84] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte~) gfx_mode::$43 -- _deref_pbuc1=vbuz1 + //SEG143 [84] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$43 -- _deref_pbuc1=vbuz1 lda _43 sta DTV_PLANEB_START_HI - //SEG144 [85] (byte~) gfx_mode::$44 ? *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG144 [85] (byte~) gfx_mode::$44 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_b_step_hi asl asl asl asl sta _44 - //SEG145 [86] (byte~) gfx_mode::$45 ? (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG145 [86] (byte~) gfx_mode::$45 ← (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_b_step_lo ora _44 sta _45 - //SEG146 [87] *((const byte*) DTV_PLANEB_STEP#0) ? (byte~) gfx_mode::$45 -- _deref_pbuc1=vbuz1 + //SEG146 [87] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$45 -- _deref_pbuc1=vbuz1 lda _45 sta DTV_PLANEB_STEP - //SEG147 [88] (byte~) gfx_mode::$46 ? *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG147 [88] (byte~) gfx_mode::$46 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_b_mod_hi asl asl asl asl sta _46 - //SEG148 [89] (byte~) gfx_mode::$47 ? (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG148 [89] (byte~) gfx_mode::$47 ← (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_b_mod_lo ora _46 sta _47 - //SEG149 [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte~) gfx_mode::$47 -- _deref_pbuc1=vbuz1 + //SEG149 [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$47 -- _deref_pbuc1=vbuz1 lda _47 sta DTV_PLANEB_MODULO_LO - //SEG150 [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG150 [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG151 [92] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG151 [92] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG152 [93] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG152 [93] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^VIC_SCREEN0/$4000 sta CIA2_PORT_A - //SEG153 [94] (byte) get_vic_screen::idx#0 ? *((const byte*) form_vic_screen#0) -- vbuz1=_deref_pbuc1 + //SEG153 [94] (byte) get_vic_screen::idx#0 ← *((const byte*) form_vic_screen#0) -- vbuz1=_deref_pbuc1 lda form_vic_screen sta get_vic_screen.idx //SEG154 [95] call get_vic_screen @@ -14471,7 +14471,7 @@ gfx_mode: { get_vic_screen_from_b28: //SEG156 [222] phi (byte) get_vic_screen::idx#2 = (byte) get_vic_screen::idx#0 [phi:gfx_mode::@28->get_vic_screen#0] -- register_copy jsr get_vic_screen - //SEG157 [96] (byte*) get_vic_screen::return#10 ? (byte*) get_vic_screen::return#5 -- pbuz1=pbuz2 + //SEG157 [96] (byte*) get_vic_screen::return#10 ← (byte*) get_vic_screen::return#5 -- pbuz1=pbuz2 lda get_vic_screen.return sta get_vic_screen.return_10 lda get_vic_screen.return+1 @@ -14479,19 +14479,19 @@ gfx_mode: { jmp b29 //SEG158 gfx_mode::@29 b29: - //SEG159 [97] (byte*~) gfx_mode::$52 ? (byte*) get_vic_screen::return#10 -- pbuz1=pbuz2 + //SEG159 [97] (byte*~) gfx_mode::$52 ← (byte*) get_vic_screen::return#10 -- pbuz1=pbuz2 lda get_vic_screen.return_10 sta _52 lda get_vic_screen.return_10+1 sta _52+1 - //SEG160 [98] (word~) gfx_mode::$54 ? (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz2_band_vwuc1 + //SEG160 [98] (word~) gfx_mode::$54 ← (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz2_band_vwuc1 lda _52 and #<$3fff sta _54 lda _52+1 and #>$3fff sta _54+1 - //SEG161 [99] (word~) gfx_mode::$55 ? (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 -- vwuz1=vwuz2_ror_6 + //SEG161 [99] (word~) gfx_mode::$55 ← (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 -- vwuz1=vwuz2_ror_6 lda _54+1 sta _55+1 lda _54 @@ -14502,15 +14502,15 @@ gfx_mode: { ror _55 dey bne !- - //SEG162 [100] (byte~) gfx_mode::$56 ? ((byte)) (word~) gfx_mode::$55 -- vbuz1=_byte_vwuz2 + //SEG162 [100] (byte~) gfx_mode::$56 ← ((byte)) (word~) gfx_mode::$55 -- vbuz1=_byte_vwuz2 lda _55 sta _56 - //SEG163 [101] (byte) get_vic_charset::idx#0 ? *((const byte*) form_vic_gfx#0) -- vbuz1=_deref_pbuc1 + //SEG163 [101] (byte) get_vic_charset::idx#0 ← *((const byte*) form_vic_gfx#0) -- vbuz1=_deref_pbuc1 lda form_vic_gfx sta get_vic_charset.idx //SEG164 [102] call get_vic_charset jsr get_vic_charset - //SEG165 [103] (byte*) get_vic_charset::return#4 ? (byte*) get_vic_charset::return#2 -- pbuz1=pbuz2 + //SEG165 [103] (byte*) get_vic_charset::return#4 ← (byte*) get_vic_charset::return#2 -- pbuz1=pbuz2 lda get_vic_charset.return sta get_vic_charset.return_4 lda get_vic_charset.return+1 @@ -14518,36 +14518,36 @@ gfx_mode: { jmp b30 //SEG166 gfx_mode::@30 b30: - //SEG167 [104] (byte*~) gfx_mode::$57 ? (byte*) get_vic_charset::return#4 -- pbuz1=pbuz2 + //SEG167 [104] (byte*~) gfx_mode::$57 ← (byte*) get_vic_charset::return#4 -- pbuz1=pbuz2 lda get_vic_charset.return_4 sta _57 lda get_vic_charset.return_4+1 sta _57+1 - //SEG168 [105] (word~) gfx_mode::$59 ? (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz2_band_vwuc1 + //SEG168 [105] (word~) gfx_mode::$59 ← (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz2_band_vwuc1 lda _57 and #<$3fff sta _59 lda _57+1 and #>$3fff sta _59+1 - //SEG169 [106] (byte~) gfx_mode::$60 ? > (word~) gfx_mode::$59 -- vbuz1=_hi_vwuz2 + //SEG169 [106] (byte~) gfx_mode::$60 ← > (word~) gfx_mode::$59 -- vbuz1=_hi_vwuz2 lda _59+1 sta _60 - //SEG170 [107] (byte~) gfx_mode::$61 ? (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_ror_2 + //SEG170 [107] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_ror_2 lda _60 lsr lsr sta _61 - //SEG171 [108] (byte~) gfx_mode::$62 ? (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 -- vbuz1=vbuz2_bor_vbuz3 + //SEG171 [108] (byte~) gfx_mode::$62 ← (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 -- vbuz1=vbuz2_bor_vbuz3 lda _56 ora _61 sta _62 - //SEG172 [109] *((const byte*) VIC_MEMORY#0) ? (byte~) gfx_mode::$62 -- _deref_pbuc1=vbuz1 + //SEG172 [109] *((const byte*) VIC_MEMORY#0) ← (byte~) gfx_mode::$62 -- _deref_pbuc1=vbuz1 // Set VIC Bank // VIC memory lda _62 sta VIC_MEMORY - //SEG173 [110] (byte) get_vic_screen::idx#1 ? *((const byte*) form_vic_cols#0) -- vbuz1=_deref_pbuc1 + //SEG173 [110] (byte) get_vic_screen::idx#1 ← *((const byte*) form_vic_cols#0) -- vbuz1=_deref_pbuc1 lda form_vic_cols sta get_vic_screen.idx //SEG174 [111] call get_vic_screen @@ -14555,7 +14555,7 @@ gfx_mode: { get_vic_screen_from_b30: //SEG176 [222] phi (byte) get_vic_screen::idx#2 = (byte) get_vic_screen::idx#1 [phi:gfx_mode::@30->get_vic_screen#0] -- register_copy jsr get_vic_screen - //SEG177 [112] (byte*) get_vic_screen::return#11 ? (byte*) get_vic_screen::return#5 -- pbuz1=pbuz2 + //SEG177 [112] (byte*) get_vic_screen::return#11 ← (byte*) get_vic_screen::return#5 -- pbuz1=pbuz2 lda get_vic_screen.return sta get_vic_screen.return_11 lda get_vic_screen.return+1 @@ -14563,7 +14563,7 @@ gfx_mode: { jmp b31 //SEG178 gfx_mode::@31 b31: - //SEG179 [113] (byte*) gfx_mode::vic_colors#0 ? (byte*) get_vic_screen::return#11 -- pbuz1=pbuz2 + //SEG179 [113] (byte*) gfx_mode::vic_colors#0 ← (byte*) get_vic_screen::return#11 -- pbuz1=pbuz2 lda get_vic_screen.return_11 sta vic_colors lda get_vic_screen.return_11+1 @@ -14604,22 +14604,22 @@ gfx_mode: { jmp b20 //SEG197 gfx_mode::@20 b20: - //SEG198 [116] *((byte*) gfx_mode::col#2) ? *((byte*) gfx_mode::vic_colors#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG198 [116] *((byte*) gfx_mode::col#2) ← *((byte*) gfx_mode::vic_colors#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (vic_colors),y ldy #0 sta (col),y - //SEG199 [117] (byte*) gfx_mode::col#1 ? ++ (byte*) gfx_mode::col#2 -- pbuz1=_inc_pbuz1 + //SEG199 [117] (byte*) gfx_mode::col#1 ← ++ (byte*) gfx_mode::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG200 [118] (byte*) gfx_mode::vic_colors#1 ? ++ (byte*) gfx_mode::vic_colors#2 -- pbuz1=_inc_pbuz1 + //SEG200 [118] (byte*) gfx_mode::vic_colors#1 ← ++ (byte*) gfx_mode::vic_colors#2 -- pbuz1=_inc_pbuz1 inc vic_colors bne !+ inc vic_colors+1 !: - //SEG201 [119] (byte) gfx_mode::cx#1 ? ++ (byte) gfx_mode::cx#2 -- vbuz1=_inc_vbuz1 + //SEG201 [119] (byte) gfx_mode::cx#1 ← ++ (byte) gfx_mode::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG202 [120] if((byte) gfx_mode::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_mode::@20 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -14628,7 +14628,7 @@ gfx_mode: { jmp b21 //SEG203 gfx_mode::@21 b21: - //SEG204 [121] (byte) gfx_mode::cy#1 ? ++ (byte) gfx_mode::cy#4 -- vbuz1=_inc_vbuz1 + //SEG204 [121] (byte) gfx_mode::cy#1 ← ++ (byte) gfx_mode::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG205 [122] if((byte) gfx_mode::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_mode::@19 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -14637,64 +14637,64 @@ gfx_mode: { jmp b22 //SEG206 gfx_mode::@22 b22: - //SEG207 [123] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG207 [123] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Background colors lda #0 sta BORDERCOL - //SEG208 [124] (byte~) gfx_mode::$64 ? *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG208 [124] (byte~) gfx_mode::$64 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg0_hi asl asl asl asl sta _64 - //SEG209 [125] (byte~) gfx_mode::$65 ? (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG209 [125] (byte~) gfx_mode::$65 ← (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg0_lo ora _64 sta _65 - //SEG210 [126] *((const byte*) BGCOL1#0) ? (byte~) gfx_mode::$65 -- _deref_pbuc1=vbuz1 + //SEG210 [126] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$65 -- _deref_pbuc1=vbuz1 lda _65 sta BGCOL1 - //SEG211 [127] (byte~) gfx_mode::$66 ? *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG211 [127] (byte~) gfx_mode::$66 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg1_hi asl asl asl asl sta _66 - //SEG212 [128] (byte~) gfx_mode::$67 ? (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG212 [128] (byte~) gfx_mode::$67 ← (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg1_lo ora _66 sta _67 - //SEG213 [129] *((const byte*) BGCOL2#0) ? (byte~) gfx_mode::$67 -- _deref_pbuc1=vbuz1 + //SEG213 [129] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$67 -- _deref_pbuc1=vbuz1 lda _67 sta BGCOL2 - //SEG214 [130] (byte~) gfx_mode::$68 ? *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG214 [130] (byte~) gfx_mode::$68 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg2_hi asl asl asl asl sta _68 - //SEG215 [131] (byte~) gfx_mode::$69 ? (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG215 [131] (byte~) gfx_mode::$69 ← (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg2_lo ora _68 sta _69 - //SEG216 [132] *((const byte*) BGCOL3#0) ? (byte~) gfx_mode::$69 -- _deref_pbuc1=vbuz1 + //SEG216 [132] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$69 -- _deref_pbuc1=vbuz1 lda _69 sta BGCOL3 - //SEG217 [133] (byte~) gfx_mode::$70 ? *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 + //SEG217 [133] (byte~) gfx_mode::$70 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=_deref_pbuc1_rol_4 lda form_vic_bg3_hi asl asl asl asl sta _70 - //SEG218 [134] (byte~) gfx_mode::$71 ? (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 + //SEG218 [134] (byte~) gfx_mode::$71 ← (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) -- vbuz1=vbuz2_bor__deref_pbuc1 lda form_vic_bg3_lo ora _70 sta _71 - //SEG219 [135] *((const byte*) BGCOL4#0) ? (byte~) gfx_mode::$71 -- _deref_pbuc1=vbuz1 + //SEG219 [135] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$71 -- _deref_pbuc1=vbuz1 lda _71 sta BGCOL4 //SEG220 [136] if(*((const byte*) form_dtv_palet#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@24 -- _deref_pbuc1_eq_0_then_la1 @@ -14715,11 +14715,11 @@ gfx_mode: { jmp b23 //SEG225 gfx_mode::@23 b23: - //SEG226 [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ? (byte) gfx_mode::j#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG226 [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ← (byte) gfx_mode::j#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy j tya sta DTV_PALETTE,y - //SEG227 [139] (byte) gfx_mode::j#1 ? ++ (byte) gfx_mode::j#2 -- vbuz1=_inc_vbuz1 + //SEG227 [139] (byte) gfx_mode::j#1 ← ++ (byte) gfx_mode::j#2 -- vbuz1=_inc_vbuz1 inc j //SEG228 [140] if((byte) gfx_mode::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@23 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -14749,13 +14749,13 @@ gfx_mode: { b32: //SEG238 [145] call keyboard_event_get jsr keyboard_event_get - //SEG239 [146] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 -- vbuz1=vbuz2 + //SEG239 [146] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 -- vbuz1=vbuz2 lda keyboard_event_get.return sta keyboard_event_get.return_3 jmp b33 //SEG240 gfx_mode::@33 b33: - //SEG241 [147] (byte) gfx_mode::keyboard_event#0 ? (byte) keyboard_event_get::return#3 -- vbuz1=vbuz2 + //SEG241 [147] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 -- vbuz1=vbuz2 lda keyboard_event_get.return_3 sta keyboard_event //SEG242 [148] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@25 -- vbuz1_neq_vbuc1_then_la1 @@ -14780,11 +14780,11 @@ gfx_mode: { jmp b24 //SEG249 gfx_mode::@24 b24: - //SEG250 [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG250 [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda DTV_PALETTE_DEFAULT,y sta DTV_PALETTE,y - //SEG251 [152] (byte) gfx_mode::i#1 ? ++ (byte) gfx_mode::i#2 -- vbuz1=_inc_vbuz1 + //SEG251 [152] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG252 [153] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@24 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -14807,9 +14807,9 @@ keyboard_event_get: { jmp b1 //SEG255 keyboard_event_get::@1 b1: - //SEG256 [155] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#100 -- vbuz1=_dec_vbuz1 + //SEG256 [155] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#100 -- vbuz1=_dec_vbuz1 dec keyboard_events_size - //SEG257 [156] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG257 [156] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuz1=pbuc1_derefidx_vbuz2 ldy keyboard_events_size lda keyboard_events,y sta return @@ -14866,18 +14866,18 @@ keyboard_event_scan: { jmp b7 //SEG275 keyboard_event_scan::@7 b7: - //SEG276 [161] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 -- vbuz1=vbuz2 + //SEG276 [161] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 -- vbuz1=vbuz2 lda row sta keyboard_matrix_read.rowid //SEG277 [162] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG278 [163] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 + //SEG278 [163] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 lda keyboard_matrix_read.return sta keyboard_matrix_read.return_2 jmp b19 //SEG279 keyboard_event_scan::@19 b19: - //SEG280 [164] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 + //SEG280 [164] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 lda keyboard_matrix_read.return_2 sta row_scan //SEG281 [165] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 -- vbuz1_neq_pbuc1_derefidx_vbuz2_then_la1 @@ -14888,7 +14888,7 @@ keyboard_event_scan: { jmp b16 //SEG282 keyboard_event_scan::@16 b16: - //SEG283 [166] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 + //SEG283 [166] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 lax keycode axs #-[8] stx keycode @@ -14900,7 +14900,7 @@ keyboard_event_scan: { jmp b8 //SEG287 keyboard_event_scan::@8 b8: - //SEG288 [168] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 + //SEG288 [168] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 inc row //SEG289 [169] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -14918,13 +14918,13 @@ keyboard_event_scan: { lda #KEY_LSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG295 [172] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 + //SEG295 [172] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_10 sta keyboard_event_pressed.return jmp b20 //SEG296 keyboard_event_scan::@20 b20: - //SEG297 [173] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 -- vbuz1=vbuz2 + //SEG297 [173] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_event_pressed.return sta _0 //SEG298 [174] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 -- vbuz1_eq_0_then_la1 @@ -14957,13 +14957,13 @@ keyboard_event_scan: { lda #KEY_RSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG309 [178] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 + //SEG309 [178] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_10 sta keyboard_event_pressed.return_1 jmp b21 //SEG310 keyboard_event_scan::@21 b21: - //SEG311 [179] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 -- vbuz1=vbuz2 + //SEG311 [179] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_1 sta _3 //SEG312 [180] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 -- vbuz1_eq_0_then_la1 @@ -14973,7 +14973,7 @@ keyboard_event_scan: { jmp b4 //SEG313 keyboard_event_scan::@4 b4: - //SEG314 [181] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG314 [181] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuz1=vbuz1_bor_vbuc1 lda #KEY_MODIFIER_RSHIFT ora keyboard_modifiers sta keyboard_modifiers @@ -14991,13 +14991,13 @@ keyboard_event_scan: { lda #KEY_CTRL sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG321 [184] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 + //SEG321 [184] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_10 sta keyboard_event_pressed.return_2 jmp b22 //SEG322 keyboard_event_scan::@22 b22: - //SEG323 [185] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 -- vbuz1=vbuz2 + //SEG323 [185] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_2 sta _6 //SEG324 [186] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 -- vbuz1_eq_0_then_la1 @@ -15007,7 +15007,7 @@ keyboard_event_scan: { jmp b5 //SEG325 keyboard_event_scan::@5 b5: - //SEG326 [187] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG326 [187] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuz1=vbuz1_bor_vbuc1 lda #KEY_MODIFIER_CTRL ora keyboard_modifiers sta keyboard_modifiers @@ -15025,13 +15025,13 @@ keyboard_event_scan: { lda #KEY_COMMODORE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG333 [190] (byte) keyboard_event_pressed::return#3 ? (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 + //SEG333 [190] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_10 sta keyboard_event_pressed.return_3 jmp b23 //SEG334 keyboard_event_scan::@23 b23: - //SEG335 [191] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#3 -- vbuz1=vbuz2 + //SEG335 [191] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#3 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_3 sta _9 //SEG336 [192] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return -- vbuz1_eq_0_then_la1 @@ -15041,7 +15041,7 @@ keyboard_event_scan: { jmp b6 //SEG337 keyboard_event_scan::@6 b6: - //SEG338 [193] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG338 [193] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuz1=vbuz1_bor_vbuc1 lda #KEY_MODIFIER_COMMODORE ora keyboard_modifiers sta keyboard_modifiers @@ -15071,12 +15071,12 @@ keyboard_event_scan: { jmp b9 //SEG351 keyboard_event_scan::@9 b9: - //SEG352 [197] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuz1=vbuz2_bxor_pbuc1_derefidx_vbuz3 + //SEG352 [197] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuz1=vbuz2_bxor_pbuc1_derefidx_vbuz3 lda row_scan ldy row eor keyboard_scan_values,y sta _15 - //SEG353 [198] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG353 [198] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda _15 ldy col and keyboard_matrix_col_bitmask,y @@ -15095,7 +15095,7 @@ keyboard_event_scan: { jmp b13 //SEG357 keyboard_event_scan::@13 b13: - //SEG358 [201] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG358 [201] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda row_scan ldy col and keyboard_matrix_col_bitmask,y @@ -15107,12 +15107,12 @@ keyboard_event_scan: { jmp b14 //SEG360 keyboard_event_scan::@14 b14: - //SEG361 [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG361 [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 // Key pressed lda keycode ldy keyboard_events_size sta keyboard_events,y - //SEG362 [204] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 + //SEG362 [204] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 inc keyboard_events_size //SEG363 [205] phi from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10] b10_from_b11: @@ -15123,9 +15123,9 @@ keyboard_event_scan: { jmp b10 //SEG365 keyboard_event_scan::@10 b10: - //SEG366 [206] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 + //SEG366 [206] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 inc keycode - //SEG367 [207] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 -- vbuz1=_inc_vbuz1 + //SEG367 [207] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 -- vbuz1=_inc_vbuz1 inc col //SEG368 [208] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -15134,7 +15134,7 @@ keyboard_event_scan: { jmp b15 //SEG369 keyboard_event_scan::@15 b15: - //SEG370 [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG370 [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 // Store the current keyboard status for the row to debounce lda row_scan ldy row @@ -15142,16 +15142,16 @@ keyboard_event_scan: { jmp b8_from_b15 //SEG371 keyboard_event_scan::@11 b11: - //SEG372 [210] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz2_bor_vbuc1 + //SEG372 [210] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz2_bor_vbuc1 lda #$40 ora keycode sta _23 - //SEG373 [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG373 [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuz2 // Key released lda _23 ldy keyboard_events_size sta keyboard_events,y - //SEG374 [212] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 + //SEG374 [212] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 inc keyboard_events_size jmp b10_from_b11 } @@ -15169,21 +15169,21 @@ keyboard_event_pressed: { .label row_bits = $103 .label keycode = $13 .label return_10 = $105 - //SEG376 [214] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 + //SEG376 [214] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 lda keycode lsr lsr lsr sta _0 - //SEG377 [215] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG377 [215] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda keyboard_scan_values,y sta row_bits - //SEG378 [216] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG378 [216] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and keycode sta _1 - //SEG379 [217] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG379 [217] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda row_bits ldy _1 and keyboard_matrix_col_bitmask,y @@ -15205,11 +15205,11 @@ keyboard_matrix_read: { .label return = $106 .label rowid = $f3 .label return_2 = $f4 - //SEG383 [219] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG383 [219] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy rowid lda keyboard_matrix_row_bitmask,y sta CIA1_PORT_A - //SEG384 [220] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 + //SEG384 [220] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff sta return @@ -15732,7 +15732,7 @@ form_mode: { jmp b15 //SEG516 form_mode::@15 b15: - //SEG517 [270] (byte) render_preset_name::idx#0 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG517 [270] (byte) render_preset_name::idx#0 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta render_preset_name.idx //SEG518 [271] call render_preset_name @@ -15743,49 +15743,49 @@ form_mode: { jmp b16 //SEG521 form_mode::@16 b16: - //SEG522 [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG522 [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&FORM_CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG523 [273] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG523 [273] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG524 [274] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG524 [274] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG525 [275] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG525 [275] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG526 [276] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG526 [276] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^FORM_CHARSET/$4000 sta CIA2_PORT_A - //SEG527 [277] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG527 [277] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Set VIC Bank // DTV Graphics Mode lda #0 sta DTV_CONTROL - //SEG528 [278] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG528 [278] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG529 [279] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG529 [279] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG530 [280] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG530 [280] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 sta VIC_MEMORY - //SEG531 [281] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 + //SEG531 [281] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 // DTV Plane A to FORM_SCREEN also lda #(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 + //SEG532 [282] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 lda #>FORM_SCREEN sta DTV_PLANEA_START_MI - //SEG533 [283] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG533 [283] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI //SEG534 [284] phi from form_mode::@16 to form_mode::@1 [phi:form_mode::@16->form_mode::@1] @@ -15801,11 +15801,11 @@ form_mode: { jmp b1 //SEG538 form_mode::@1 b1: - //SEG539 [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG539 [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda DTV_PALETTE_DEFAULT,y sta DTV_PALETTE,y - //SEG540 [286] (byte) form_mode::i#1 ? ++ (byte) form_mode::i#2 -- vbuz1=_inc_vbuz1 + //SEG540 [286] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG541 [287] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto form_mode::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -15814,14 +15814,14 @@ form_mode: { jmp b2 //SEG542 form_mode::@2 b2: - //SEG543 [288] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG543 [288] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG544 [289] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG544 [289] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL - //SEG545 [290] (byte) form_mode::preset_current#0 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG545 [290] (byte) form_mode::preset_current#0 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta preset_current //SEG546 [291] phi from form_mode::@19 form_mode::@2 to form_mode::@3 [phi:form_mode::@19/form_mode::@2->form_mode::@3] @@ -15855,13 +15855,13 @@ form_mode: { b5: //SEG560 [294] call form_control jsr form_control - //SEG561 [295] (byte) form_control::return#0 ? (byte) form_control::return#2 -- vbuz1=vbuz2 + //SEG561 [295] (byte) form_control::return#0 ← (byte) form_control::return#2 -- vbuz1=vbuz2 lda form_control.return_2 sta form_control.return jmp b17 //SEG562 form_mode::@17 b17: - //SEG563 [296] (byte~) form_mode::$36 ? (byte) form_control::return#0 -- vbuz1=vbuz2 + //SEG563 [296] (byte~) form_mode::$36 ← (byte) form_control::return#0 -- vbuz1=vbuz2 lda form_control.return sta _36 //SEG564 [297] if((byte~) form_mode::$36==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@6 -- vbuz1_eq_0_then_la1 @@ -15882,7 +15882,7 @@ form_mode: { jmp b7 //SEG569 form_mode::@7 b7: - //SEG570 [300] (byte) apply_preset::idx#0 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG570 [300] (byte) apply_preset::idx#0 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta apply_preset.idx //SEG571 [301] call apply_preset @@ -15890,7 +15890,7 @@ form_mode: { jmp b18 //SEG572 form_mode::@18 b18: - //SEG573 [302] (byte) form_mode::preset_current#1 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG573 [302] (byte) form_mode::preset_current#1 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta preset_current //SEG574 [303] call form_render_values @@ -15900,7 +15900,7 @@ form_mode: { jmp b19 //SEG576 form_mode::@19 b19: - //SEG577 [304] (byte) render_preset_name::idx#1 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG577 [304] (byte) render_preset_name::idx#1 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta render_preset_name.idx //SEG578 [305] call render_preset_name @@ -16087,7 +16087,7 @@ render_preset_name: { jmp b1 //SEG627 render_preset_name::@1 b1: - //SEG628 [320] (byte*) print_str_at::str#1 ? (byte*) render_preset_name::name#13 -- pbuz1=pbuz2 + //SEG628 [320] (byte*) print_str_at::str#1 ← (byte*) render_preset_name::name#13 -- pbuz1=pbuz2 lda name sta print_str_at.str lda name+1 @@ -16142,17 +16142,17 @@ print_str_at: { rts //SEG641 print_str_at::@2 b2: - //SEG642 [327] *((byte*) print_str_at::at#2) ? *((byte*) print_str_at::str#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG642 [327] *((byte*) print_str_at::at#2) ← *((byte*) print_str_at::str#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (at),y - //SEG643 [328] (byte*) print_str_at::at#0 ? ++ (byte*) print_str_at::at#2 -- pbuz1=_inc_pbuz1 + //SEG643 [328] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#2 -- pbuz1=_inc_pbuz1 inc at bne !+ inc at+1 !: - //SEG644 [329] (byte*) print_str_at::str#0 ? ++ (byte*) print_str_at::str#2 -- pbuz1=_inc_pbuz1 + //SEG644 [329] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#2 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -16180,7 +16180,7 @@ form_render_values: { jmp b1 //SEG653 form_render_values::@1 b1: - //SEG654 [332] (byte) form_field_ptr::field_idx#0 ? (byte) form_render_values::idx#2 -- vbuz1=vbuz2 + //SEG654 [332] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 -- vbuz1=vbuz2 lda idx sta form_field_ptr.field_idx //SEG655 [333] call form_field_ptr @@ -16188,7 +16188,7 @@ form_render_values: { form_field_ptr_from_b1: //SEG657 [340] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG658 [334] (byte*) form_field_ptr::return#2 ? (byte*) form_field_ptr::return#0 -- pbuz1=pbuz2 + //SEG658 [334] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 -- pbuz1=pbuz2 lda form_field_ptr.return sta form_field_ptr.return_2 lda form_field_ptr.return+1 @@ -16196,18 +16196,18 @@ form_render_values: { jmp b2 //SEG659 form_render_values::@2 b2: - //SEG660 [335] (byte*) form_render_values::field#0 ? (byte*) form_field_ptr::return#2 -- pbuz1=pbuz2 + //SEG660 [335] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 -- pbuz1=pbuz2 lda form_field_ptr.return_2 sta field lda form_field_ptr.return_2+1 sta field+1 - //SEG661 [336] *((byte*) form_render_values::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG661 [336] *((byte*) form_render_values::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldx idx ldy form_fields_val,x lda print_hextab,y ldy #0 sta (field),y - //SEG662 [337] (byte) form_render_values::idx#1 ? ++ (byte) form_render_values::idx#2 -- vbuz1=_inc_vbuz1 + //SEG662 [337] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 -- vbuz1=_inc_vbuz1 inc idx //SEG663 [338] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 -- vbuz1_lt_vbuc1_then_la1 lda idx @@ -16231,21 +16231,21 @@ form_field_ptr: { .label return_2 = $10a .label return_3 = $114 .label _2 = $10f - //SEG667 [341] (byte) form_field_ptr::y#0 ? *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG667 [341] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy field_idx lda form_fields_y,y sta y - //SEG668 [342] (word~) form_field_ptr::$2 ? *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG668 [342] (word~) form_field_ptr::$2 ← *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy y lda form_line_hi,y sta _2+1 lda form_line_lo,y sta _2 - //SEG669 [343] (byte) form_field_ptr::x#0 ? *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG669 [343] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy field_idx lda form_fields_x,y sta x - //SEG670 [344] (byte*) form_field_ptr::return#0 ? (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 -- pbuz1=pbuz2_plus_vbuz3 + //SEG670 [344] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 -- pbuz1=pbuz2_plus_vbuz3 lda x clc adc _2 @@ -16450,11 +16450,11 @@ apply_preset: { jmp b13 //SEG724 apply_preset::@13 b13: - //SEG725 [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ? *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) -- pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuz1 + //SEG725 [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ← *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) -- pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuz1 ldy i lda (preset),y sta form_fields_val,y - //SEG726 [361] (byte) apply_preset::i#1 ? ++ (byte) apply_preset::i#2 -- vbuz1=_inc_vbuz1 + //SEG726 [361] (byte) apply_preset::i#1 ← ++ (byte) apply_preset::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG727 [362] if((byte) apply_preset::i#1!=(const byte) form_fields_cnt#0) goto apply_preset::@13 -- vbuz1_neq_vbuc1_then_la1 lda #form_fields_cnt @@ -16479,7 +16479,7 @@ form_control: { .label field = $116 .label key_event = $11a .label return_2 = $2e - //SEG731 [364] (byte) form_field_ptr::field_idx#1 ? (byte) form_field_idx#28 -- vbuz1=vbuz2 + //SEG731 [364] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 -- vbuz1=vbuz2 lda form_field_idx sta form_field_ptr.field_idx //SEG732 [365] call form_field_ptr @@ -16487,7 +16487,7 @@ form_control: { form_field_ptr_from_form_control: //SEG734 [340] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG735 [366] (byte*) form_field_ptr::return#3 ? (byte*) form_field_ptr::return#0 -- pbuz1=pbuz2 + //SEG735 [366] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 -- pbuz1=pbuz2 lda form_field_ptr.return sta form_field_ptr.return_3 lda form_field_ptr.return+1 @@ -16495,12 +16495,12 @@ form_control: { jmp b17 //SEG736 form_control::@17 b17: - //SEG737 [367] (byte*) form_control::field#0 ? (byte*) form_field_ptr::return#3 -- pbuz1=pbuz2 + //SEG737 [367] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 -- pbuz1=pbuz2 lda form_field_ptr.return_3 sta field lda form_field_ptr.return_3+1 sta field+1 - //SEG738 [368] (signed byte) form_cursor_count#5 ? -- (signed byte) form_cursor_count#21 -- vbsz1=_dec_vbsz1 + //SEG738 [368] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 -- vbsz1=_dec_vbsz1 dec form_cursor_count //SEG739 [369] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@20 -- vbsz1_ge_0_then_la1 lda form_cursor_count @@ -16525,12 +16525,12 @@ form_control: { jmp b6 //SEG744 form_control::@6 b6: - //SEG745 [372] (byte~) form_control::$13 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuz1=_deref_pbuz2_band_vbuc1 + //SEG745 [372] (byte~) form_control::$13 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuz1=_deref_pbuz2_band_vbuc1 lda #$7f ldy #0 and (field),y sta _13 - //SEG746 [373] *((byte*) form_control::field#0) ? (byte~) form_control::$13 -- _deref_pbuz1=vbuz2 + //SEG746 [373] *((byte*) form_control::field#0) ← (byte~) form_control::$13 -- _deref_pbuz1=vbuz2 lda _13 ldy #0 sta (field),y @@ -16552,13 +16552,13 @@ form_control: { b18: //SEG754 [377] call keyboard_event_get jsr keyboard_event_get - //SEG755 [378] (byte) keyboard_event_get::return#4 ? (byte) keyboard_event_get::return#2 -- vbuz1=vbuz2 + //SEG755 [378] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 -- vbuz1=vbuz2 lda keyboard_event_get.return sta keyboard_event_get.return_4 jmp b19 //SEG756 form_control::@19 b19: - //SEG757 [379] (byte) form_control::key_event#0 ? (byte) keyboard_event_get::return#4 -- vbuz1=vbuz2 + //SEG757 [379] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 -- vbuz1=vbuz2 lda keyboard_event_get.return_4 sta key_event //SEG758 [380] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 -- vbuz1_neq_vbuc1_then_la1 @@ -16568,17 +16568,17 @@ form_control: { jmp b7 //SEG759 form_control::@7 b7: - //SEG760 [381] (byte~) form_control::$15 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuz1=_deref_pbuz2_band_vbuc1 + //SEG760 [381] (byte~) form_control::$15 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuz1=_deref_pbuz2_band_vbuc1 lda #$7f ldy #0 and (field),y sta _15 - //SEG761 [382] *((byte*) form_control::field#0) ? (byte~) form_control::$15 -- _deref_pbuz1=vbuz2 + //SEG761 [382] *((byte*) form_control::field#0) ← (byte~) form_control::$15 -- _deref_pbuz1=vbuz2 // Unblink the cursor lda _15 ldy #0 sta (field),y - //SEG762 [383] (byte~) form_control::$16 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuz1=vbuz2_band_vbuc1 + //SEG762 [383] (byte~) form_control::$16 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuz1=vbuz2_band_vbuc1 lda #KEY_MODIFIER_SHIFT and keyboard_modifiers sta _16 @@ -16589,7 +16589,7 @@ form_control: { jmp b8 //SEG764 form_control::@8 b8: - //SEG765 [385] (byte) form_field_idx#44 ? -- (byte) form_field_idx#28 -- vbuz1=_dec_vbuz1 + //SEG765 [385] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 -- vbuz1=_dec_vbuz1 dec form_field_idx //SEG766 [386] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@21 -- vbuz1_neq_vbuc1_then_la1 lda #$ff @@ -16629,7 +16629,7 @@ form_control: { jmp b13 //SEG780 form_control::@12 b12: - //SEG781 [391] (byte) form_field_idx#45 ? ++ (byte) form_field_idx#28 -- vbuz1=_inc_vbuz1 + //SEG781 [391] (byte) form_field_idx#45 ← ++ (byte) form_field_idx#28 -- vbuz1=_inc_vbuz1 inc form_field_idx //SEG782 [392] if((byte) form_field_idx#45!=(const byte) form_fields_cnt#0) goto form_control::@22 -- vbuz1_neq_vbuc1_then_la1 lda #form_fields_cnt @@ -16656,7 +16656,7 @@ form_control: { jmp b9 //SEG789 form_control::@9 b9: - //SEG790 [395] (byte~) form_control::$24 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuz1=vbuz2_band_vbuc1 + //SEG790 [395] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuz1=vbuz2_band_vbuc1 lda #KEY_MODIFIER_SHIFT and keyboard_modifiers sta _24 @@ -16667,7 +16667,7 @@ form_control: { jmp b10 //SEG792 form_control::@10 b10: - //SEG793 [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 + //SEG793 [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 ldx form_field_idx dec form_fields_val,x //SEG794 [398] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@15 -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 @@ -16678,14 +16678,14 @@ form_control: { jmp b11 //SEG795 form_control::@11 b11: - //SEG796 [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG796 [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy form_field_idx lda form_fields_max,y sta form_fields_val,y jmp b15 //SEG797 form_control::@15 b15: - //SEG798 [400] *((byte*) form_control::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG798 [400] *((byte*) form_control::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 // Render field value ldx form_field_idx ldy form_fields_val,x @@ -16703,7 +16703,7 @@ form_control: { jmp breturn //SEG803 form_control::@14 b14: - //SEG804 [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 + //SEG804 [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 ldx form_field_idx inc form_fields_val,x //SEG805 [402] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@15 -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 @@ -16715,7 +16715,7 @@ form_control: { jmp b16 //SEG806 form_control::@16 b16: - //SEG807 [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG807 [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy form_field_idx sta form_fields_val,y @@ -16742,12 +16742,12 @@ form_control: { jmp breturn_from_b23 //SEG816 form_control::@2 b2: - //SEG817 [406] (byte/word/dword~) form_control::$14 ? *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 -- vbuz1=_deref_pbuz2_bor_vbuc1 + //SEG817 [406] (byte/word/dword~) form_control::$14 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 -- vbuz1=_deref_pbuz2_bor_vbuc1 lda #$80 ldy #0 ora (field),y sta _14 - //SEG818 [407] *((byte*) form_control::field#0) ? (byte/word/dword~) form_control::$14 -- _deref_pbuz1=vbuz2 + //SEG818 [407] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$14 -- _deref_pbuz1=vbuz2 lda _14 ldy #0 sta (field),y @@ -16788,21 +16788,21 @@ form_set_screen: { jmp b1 //SEG830 form_set_screen::@1 b1: - //SEG831 [411] (byte~) form_set_screen::$0 ? < (byte*) form_set_screen::line#2 -- vbuz1=_lo_pbuz2 + //SEG831 [411] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 -- vbuz1=_lo_pbuz2 lda line sta _0 - //SEG832 [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG832 [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 -- pbuc1_derefidx_vbuz1=vbuz2 lda _0 ldy y sta form_line_lo,y - //SEG833 [413] (byte~) form_set_screen::$1 ? > (byte*) form_set_screen::line#2 -- vbuz1=_hi_pbuz2 + //SEG833 [413] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 -- vbuz1=_hi_pbuz2 lda line+1 sta _1 - //SEG834 [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$1 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG834 [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 -- pbuc1_derefidx_vbuz1=vbuz2 lda _1 ldy y sta form_line_hi,y - //SEG835 [415] (byte*) form_set_screen::line#1 ? (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG835 [415] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc line @@ -16810,7 +16810,7 @@ form_set_screen: { bcc !+ inc line+1 !: - //SEG836 [416] (byte) form_set_screen::y#1 ? ++ (byte) form_set_screen::y#2 -- vbuz1=_inc_vbuz1 + //SEG836 [416] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 -- vbuz1=_inc_vbuz1 inc y //SEG837 [417] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto form_set_screen::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -16829,7 +16829,7 @@ form_set_screen: { print_str_lines: { .label ch = $121 .label str = $32 - //SEG841 [420] (byte*~) print_char_cursor#77 ? (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 + //SEG841 [420] (byte*~) print_char_cursor#77 ← (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 lda print_set_screen.screen sta print_char_cursor lda print_set_screen.screen+1 @@ -16861,11 +16861,11 @@ print_str_lines: { jmp b2 //SEG853 print_str_lines::@2 b2: - //SEG854 [425] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#4) -- vbuz1=_deref_pbuz2 + //SEG854 [425] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) -- vbuz1=_deref_pbuz2 ldy #0 lda (str),y sta ch - //SEG855 [426] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#4 -- pbuz1=_inc_pbuz1 + //SEG855 [426] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -16877,11 +16877,11 @@ print_str_lines: { jmp b4 //SEG857 print_str_lines::@4 b4: - //SEG858 [428] *((byte*) print_char_cursor#20) ? (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuz2 + //SEG858 [428] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG859 [429] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#20 -- pbuz1=_inc_pbuz1 + //SEG859 [429] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -16906,7 +16906,7 @@ print_str_lines: { //SEG867 [435] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln] print_ln_from_b5: jsr print_ln - //SEG868 [434] (byte*~) print_char_cursor#78 ? (byte*) print_line_cursor#22 -- pbuz1=pbuz2 + //SEG868 [434] (byte*~) print_char_cursor#78 ← (byte*) print_line_cursor#22 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -16923,7 +16923,7 @@ print_ln: { jmp b1 //SEG872 print_ln::@1 b1: - //SEG873 [437] (byte*) print_line_cursor#22 ? (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG873 [437] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -16951,7 +16951,7 @@ print_ln: { print_cls: { .label _0 = $122 .label sc = $38 - //SEG878 [440] (byte*) print_cls::sc#0 ? (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 + //SEG878 [440] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 lda print_set_screen.screen sta sc lda print_set_screen.screen+1 @@ -16963,16 +16963,16 @@ print_cls: { jmp b1 //SEG881 print_cls::@1 b1: - //SEG882 [442] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG882 [442] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG883 [443] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG883 [443] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG884 [444] (byte*~) print_cls::$0 ? (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 + //SEG884 [444] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 lda print_set_screen.screen clc adc #<$3e8 @@ -17182,7 +17182,7 @@ gfx_init_plane_fill: { .label by = $3f .label plane_addr = $3a .label fill = $3e - //SEG959 [484] (dword~) gfx_init_plane_fill::$0 ? (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vduz1=vduz2_rol_2 + //SEG959 [484] (dword~) gfx_init_plane_fill::$0 ← (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vduz1=vduz2_rol_2 lda plane_addr sta _0 lda plane_addr+1 @@ -17199,15 +17199,15 @@ gfx_init_plane_fill: { rol _0+1 rol _0+2 rol _0+3 - //SEG960 [485] (word~) gfx_init_plane_fill::$1 ? > (dword~) gfx_init_plane_fill::$0 -- vwuz1=_hi_vduz2 + //SEG960 [485] (word~) gfx_init_plane_fill::$1 ← > (dword~) gfx_init_plane_fill::$0 -- vwuz1=_hi_vduz2 lda _0+2 sta _1 lda _0+3 sta _1+1 - //SEG961 [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ? < (word~) gfx_init_plane_fill::$1 -- vbuz1=_lo_vwuz2 + //SEG961 [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ← < (word~) gfx_init_plane_fill::$1 -- vbuz1=_lo_vwuz2 lda _1 sta gfxbCpuBank - //SEG962 [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ? (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuz1=vbuz2 + //SEG962 [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ← (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuz1=vbuz2 lda gfxbCpuBank sta dtvSetCpuBankSegment1.cpuBankIdx //SEG963 [488] call dtvSetCpuBankSegment1 @@ -17218,23 +17218,23 @@ gfx_init_plane_fill: { jmp b5 //SEG966 gfx_init_plane_fill::@5 b5: - //SEG967 [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuz1=_inc_vbuz2 + //SEG967 [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuz1=_inc_vbuz2 ldy gfxbCpuBank iny sty gfxbCpuBank_1 - //SEG968 [490] (word~) gfx_init_plane_fill::$4 ? < (dword) gfx_init_plane_fill::plane_addr#3 -- vwuz1=_lo_vduz2 + //SEG968 [490] (word~) gfx_init_plane_fill::$4 ← < (dword) gfx_init_plane_fill::plane_addr#3 -- vwuz1=_lo_vduz2 lda plane_addr sta _4 lda plane_addr+1 sta _4+1 - //SEG969 [491] (word~) gfx_init_plane_fill::$5 ? (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz2_band_vwuc1 + //SEG969 [491] (word~) gfx_init_plane_fill::$5 ← (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz2_band_vwuc1 lda _4 and #<$3fff sta _5 lda _4+1 and #>$3fff sta _5+1 - //SEG970 [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ? (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 -- vwuz1=vwuc1_plus_vwuz2 + //SEG970 [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ← (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 -- vwuz1=vwuc1_plus_vwuz2 lda _5 clc adc #<$4000 @@ -17242,7 +17242,7 @@ gfx_init_plane_fill: { lda _5+1 adc #>$4000 sta _6+1 - //SEG971 [493] (byte*~) gfx_init_plane_fill::gfxb#6 ? (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 -- pbuz1=pbuz2 + //SEG971 [493] (byte*~) gfx_init_plane_fill::gfxb#6 ← (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 -- pbuz1=pbuz2 lda _6 sta gfxb lda _6+1 @@ -17275,16 +17275,16 @@ gfx_init_plane_fill: { jmp b2 //SEG985 gfx_init_plane_fill::@2 b2: - //SEG986 [496] *((byte*) gfx_init_plane_fill::gfxb#2) ? (byte) gfx_init_plane_fill::fill#6 -- _deref_pbuz1=vbuz2 + //SEG986 [496] *((byte*) gfx_init_plane_fill::gfxb#2) ← (byte) gfx_init_plane_fill::fill#6 -- _deref_pbuz1=vbuz2 lda fill ldy #0 sta (gfxb),y - //SEG987 [497] (byte*) gfx_init_plane_fill::gfxb#1 ? ++ (byte*) gfx_init_plane_fill::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG987 [497] (byte*) gfx_init_plane_fill::gfxb#1 ← ++ (byte*) gfx_init_plane_fill::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG988 [498] (byte) gfx_init_plane_fill::bx#1 ? ++ (byte) gfx_init_plane_fill::bx#2 -- vbuz1=_inc_vbuz1 + //SEG988 [498] (byte) gfx_init_plane_fill::bx#1 ← ++ (byte) gfx_init_plane_fill::bx#2 -- vbuz1=_inc_vbuz1 inc bx //SEG989 [499] if((byte) gfx_init_plane_fill::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_fill::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17293,7 +17293,7 @@ gfx_init_plane_fill: { jmp b3 //SEG990 gfx_init_plane_fill::@3 b3: - //SEG991 [500] (byte) gfx_init_plane_fill::by#1 ? ++ (byte) gfx_init_plane_fill::by#4 -- vbuz1=_inc_vbuz1 + //SEG991 [500] (byte) gfx_init_plane_fill::by#1 ← ++ (byte) gfx_init_plane_fill::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG992 [501] if((byte) gfx_init_plane_fill::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_fill::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -17326,7 +17326,7 @@ dtvSetCpuBankSegment1: { // Move CPU BANK 1 SEGMENT ($4000-$7fff) .label cpuBank = $ff .label cpuBankIdx = $43 - //SEG1001 [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 -- _deref_pbuc1=vbuz1 + //SEG1001 [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 -- _deref_pbuc1=vbuz1 lda cpuBankIdx sta cpuBank //SEG1002 asm { .byte$32,$dd lda$ff .byte$32,$00 } @@ -17437,25 +17437,25 @@ gfx_init_plane_horisontal2: { jmp b2 //SEG1036 gfx_init_plane_horisontal2::@2 b2: - //SEG1037 [519] (byte~) gfx_init_plane_horisontal2::$8 ? (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1037 [519] (byte~) gfx_init_plane_horisontal2::$8 ← (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda ay lsr sta _8 - //SEG1038 [520] (byte) gfx_init_plane_horisontal2::row#0 ? (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 + //SEG1038 [520] (byte) gfx_init_plane_horisontal2::row#0 ← (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 lda #3 and _8 sta row - //SEG1039 [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ? *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG1039 [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ← *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy row lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG1040 [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG1040 [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG1041 [523] (byte) gfx_init_plane_horisontal2::ax#1 ? ++ (byte) gfx_init_plane_horisontal2::ax#2 -- vbuz1=_inc_vbuz1 + //SEG1041 [523] (byte) gfx_init_plane_horisontal2::ax#1 ← ++ (byte) gfx_init_plane_horisontal2::ax#2 -- vbuz1=_inc_vbuz1 inc ax //SEG1042 [524] if((byte) gfx_init_plane_horisontal2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal2::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17464,7 +17464,7 @@ gfx_init_plane_horisontal2: { jmp b3 //SEG1043 gfx_init_plane_horisontal2::@3 b3: - //SEG1044 [525] (byte) gfx_init_plane_horisontal2::ay#1 ? ++ (byte) gfx_init_plane_horisontal2::ay#4 -- vbuz1=_inc_vbuz1 + //SEG1044 [525] (byte) gfx_init_plane_horisontal2::ay#1 ← ++ (byte) gfx_init_plane_horisontal2::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG1045 [526] if((byte) gfx_init_plane_horisontal2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal2::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -17535,16 +17535,16 @@ gfx_init_plane_vertical: { jmp b2 //SEG1070 gfx_init_plane_vertical::@2 b2: - //SEG1071 [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 + //SEG1071 [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 lda #$f ldy #0 sta (gfxb),y - //SEG1072 [535] (byte*) gfx_init_plane_vertical::gfxb#1 ? ++ (byte*) gfx_init_plane_vertical::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG1072 [535] (byte*) gfx_init_plane_vertical::gfxb#1 ← ++ (byte*) gfx_init_plane_vertical::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG1073 [536] (byte) gfx_init_plane_vertical::bx#1 ? ++ (byte) gfx_init_plane_vertical::bx#2 -- vbuz1=_inc_vbuz1 + //SEG1073 [536] (byte) gfx_init_plane_vertical::bx#1 ← ++ (byte) gfx_init_plane_vertical::bx#2 -- vbuz1=_inc_vbuz1 inc bx //SEG1074 [537] if((byte) gfx_init_plane_vertical::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_vertical::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17553,7 +17553,7 @@ gfx_init_plane_vertical: { jmp b3 //SEG1075 gfx_init_plane_vertical::@3 b3: - //SEG1076 [538] (byte) gfx_init_plane_vertical::by#1 ? ++ (byte) gfx_init_plane_vertical::by#4 -- vbuz1=_inc_vbuz1 + //SEG1076 [538] (byte) gfx_init_plane_vertical::by#1 ← ++ (byte) gfx_init_plane_vertical::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG1077 [539] if((byte) gfx_init_plane_vertical::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_vertical::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -17624,7 +17624,7 @@ gfx_init_plane_horisontal: { jmp b2 //SEG1102 gfx_init_plane_horisontal::@2 b2: - //SEG1103 [547] (byte~) gfx_init_plane_horisontal::$8 ? (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_band_vbuc1 + //SEG1103 [547] (byte~) gfx_init_plane_horisontal::$8 ← (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_band_vbuc1 lda #4 and ay sta _8 @@ -17635,11 +17635,11 @@ gfx_init_plane_horisontal: { jmp b5 //SEG1105 gfx_init_plane_horisontal::@5 b5: - //SEG1106 [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 + //SEG1106 [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 lda #$ff ldy #0 sta (gfxa),y - //SEG1107 [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG1107 [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -17651,7 +17651,7 @@ gfx_init_plane_horisontal: { jmp b4 //SEG1110 gfx_init_plane_horisontal::@4 b4: - //SEG1111 [552] (byte) gfx_init_plane_horisontal::ax#1 ? ++ (byte) gfx_init_plane_horisontal::ax#2 -- vbuz1=_inc_vbuz1 + //SEG1111 [552] (byte) gfx_init_plane_horisontal::ax#1 ← ++ (byte) gfx_init_plane_horisontal::ax#2 -- vbuz1=_inc_vbuz1 inc ax //SEG1112 [553] if((byte) gfx_init_plane_horisontal::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17660,7 +17660,7 @@ gfx_init_plane_horisontal: { jmp b6 //SEG1113 gfx_init_plane_horisontal::@6 b6: - //SEG1114 [554] (byte) gfx_init_plane_horisontal::ay#1 ? ++ (byte) gfx_init_plane_horisontal::ay#4 -- vbuz1=_inc_vbuz1 + //SEG1114 [554] (byte) gfx_init_plane_horisontal::ay#1 ← ++ (byte) gfx_init_plane_horisontal::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG1115 [555] if((byte) gfx_init_plane_horisontal::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -17685,11 +17685,11 @@ gfx_init_plane_horisontal: { rts //SEG1123 gfx_init_plane_horisontal::@3 b3: - //SEG1124 [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1124 [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (gfxa),y - //SEG1125 [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG1125 [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -17719,7 +17719,7 @@ gfx_init_plane_charset8: { jmp b9 //SEG1130 gfx_init_plane_charset8::@9 b9: - //SEG1131 [563] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 + //SEG1131 [563] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_CHARROM sta PROCPORT //SEG1132 [564] phi from gfx_init_plane_charset8::@9 to gfx_init_plane_charset8::@1 [phi:gfx_init_plane_charset8::@9->gfx_init_plane_charset8::@1] @@ -17768,11 +17768,11 @@ gfx_init_plane_charset8: { jmp b2 //SEG1153 gfx_init_plane_charset8::@2 b2: - //SEG1154 [566] (byte) gfx_init_plane_charset8::bits#0 ? *((byte*) gfx_init_plane_charset8::chargen#2) -- vbuz1=_deref_pbuz2 + //SEG1154 [566] (byte) gfx_init_plane_charset8::bits#0 ← *((byte*) gfx_init_plane_charset8::chargen#2) -- vbuz1=_deref_pbuz2 ldy #0 lda (chargen),y sta bits - //SEG1155 [567] (byte*) gfx_init_plane_charset8::chargen#1 ? ++ (byte*) gfx_init_plane_charset8::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG1155 [567] (byte*) gfx_init_plane_charset8::chargen#1 ← ++ (byte*) gfx_init_plane_charset8::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 @@ -17795,7 +17795,7 @@ gfx_init_plane_charset8: { jmp b3 //SEG1166 gfx_init_plane_charset8::@3 b3: - //SEG1167 [569] (byte~) gfx_init_plane_charset8::$8 ? (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG1167 [569] (byte~) gfx_init_plane_charset8::$8 ← (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and bits sta _8 @@ -17806,7 +17806,7 @@ gfx_init_plane_charset8: { jmp b5 //SEG1169 gfx_init_plane_charset8::@5 b5: - //SEG1170 [571] (byte~) gfx_init_plane_charset8::c#3 ? (byte) gfx_init_plane_charset8::col#2 -- vbuz1=vbuz2 + //SEG1170 [571] (byte~) gfx_init_plane_charset8::c#3 ← (byte) gfx_init_plane_charset8::col#2 -- vbuz1=vbuz2 lda col sta c //SEG1171 [572] phi from gfx_init_plane_charset8::@5 to gfx_init_plane_charset8::@4 [phi:gfx_init_plane_charset8::@5->gfx_init_plane_charset8::@4] @@ -17821,20 +17821,20 @@ gfx_init_plane_charset8: { jmp b4 //SEG1175 gfx_init_plane_charset8::@4 b4: - //SEG1176 [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ? (byte) gfx_init_plane_charset8::c#2 -- _deref_pbuz1=vbuz2 + //SEG1176 [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ← (byte) gfx_init_plane_charset8::c#2 -- _deref_pbuz1=vbuz2 lda c ldy #0 sta (gfxa),y - //SEG1177 [574] (byte*) gfx_init_plane_charset8::gfxa#1 ? ++ (byte*) gfx_init_plane_charset8::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG1177 [574] (byte*) gfx_init_plane_charset8::gfxa#1 ← ++ (byte*) gfx_init_plane_charset8::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG1178 [575] (byte) gfx_init_plane_charset8::bits#1 ? (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG1178 [575] (byte) gfx_init_plane_charset8::bits#1 ← (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl bits - //SEG1179 [576] (byte) gfx_init_plane_charset8::col#1 ? ++ (byte) gfx_init_plane_charset8::col#2 -- vbuz1=_inc_vbuz1 + //SEG1179 [576] (byte) gfx_init_plane_charset8::col#1 ← ++ (byte) gfx_init_plane_charset8::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG1180 [577] (byte) gfx_init_plane_charset8::cp#1 ? ++ (byte) gfx_init_plane_charset8::cp#2 -- vbuz1=_inc_vbuz1 + //SEG1180 [577] (byte) gfx_init_plane_charset8::cp#1 ← ++ (byte) gfx_init_plane_charset8::cp#2 -- vbuz1=_inc_vbuz1 inc cp //SEG1181 [578] if((byte) gfx_init_plane_charset8::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@3 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -17843,7 +17843,7 @@ gfx_init_plane_charset8: { jmp b6 //SEG1182 gfx_init_plane_charset8::@6 b6: - //SEG1183 [579] (byte) gfx_init_plane_charset8::cr#1 ? ++ (byte) gfx_init_plane_charset8::cr#6 -- vbuz1=_inc_vbuz1 + //SEG1183 [579] (byte) gfx_init_plane_charset8::cr#1 ← ++ (byte) gfx_init_plane_charset8::cr#6 -- vbuz1=_inc_vbuz1 inc cr //SEG1184 [580] if((byte) gfx_init_plane_charset8::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@2 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -17852,7 +17852,7 @@ gfx_init_plane_charset8: { jmp b7 //SEG1185 gfx_init_plane_charset8::@7 b7: - //SEG1186 [581] (byte) gfx_init_plane_charset8::ch#1 ? ++ (byte) gfx_init_plane_charset8::ch#8 -- vbuz1=_inc_vbuz1 + //SEG1186 [581] (byte) gfx_init_plane_charset8::ch#1 ← ++ (byte) gfx_init_plane_charset8::ch#8 -- vbuz1=_inc_vbuz1 inc ch //SEG1187 [582] if((byte) gfx_init_plane_charset8::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_charset8::@1 -- vbuz1_neq_0_then_la1 lda ch @@ -17861,7 +17861,7 @@ gfx_init_plane_charset8: { jmp b8 //SEG1188 gfx_init_plane_charset8::@8 b8: - //SEG1189 [583] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG1189 [583] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT //SEG1190 [584] call dtvSetCpuBankSegment1 @@ -17943,7 +17943,7 @@ gfx_init_plane_8bppchunky: { jmp b4 //SEG1218 gfx_init_plane_8bppchunky::@4 b4: - //SEG1219 [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuz1=vbuz2 + //SEG1219 [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuz1=vbuz2 lda gfxbCpuBank sta dtvSetCpuBankSegment1.cpuBankIdx //SEG1220 [592] call dtvSetCpuBankSegment1 @@ -17954,7 +17954,7 @@ gfx_init_plane_8bppchunky: { jmp b7 //SEG1223 gfx_init_plane_8bppchunky::@7 b7: - //SEG1224 [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ? ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuz1=_inc_vbuz1 + //SEG1224 [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuz1=_inc_vbuz1 inc gfxbCpuBank //SEG1225 [594] phi from gfx_init_plane_8bppchunky::@7 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@7->gfx_init_plane_8bppchunky::@3] b3_from_b7: @@ -17972,7 +17972,7 @@ gfx_init_plane_8bppchunky: { jmp b3 //SEG1231 gfx_init_plane_8bppchunky::@3 b3: - //SEG1232 [595] (word~) gfx_init_plane_8bppchunky::$9 ? (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 -- vwuz1=vwuz2_plus_vbuz3 + //SEG1232 [595] (word~) gfx_init_plane_8bppchunky::$9 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -17980,19 +17980,19 @@ gfx_init_plane_8bppchunky: { lda #0 adc x+1 sta _9+1 - //SEG1233 [596] (byte) gfx_init_plane_8bppchunky::c#0 ? ((byte)) (word~) gfx_init_plane_8bppchunky::$9 -- vbuz1=_byte_vwuz2 + //SEG1233 [596] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$9 -- vbuz1=_byte_vwuz2 lda _9 sta c - //SEG1234 [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ? (byte) gfx_init_plane_8bppchunky::c#0 -- _deref_pbuz1=vbuz2 + //SEG1234 [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 -- _deref_pbuz1=vbuz2 lda c ldy #0 sta (gfxb),y - //SEG1235 [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ? ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 -- pbuz1=_inc_pbuz1 + //SEG1235 [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG1236 [599] (word) gfx_init_plane_8bppchunky::x#1 ? ++ (word) gfx_init_plane_8bppchunky::x#2 -- vwuz1=_inc_vwuz1 + //SEG1236 [599] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 @@ -18007,7 +18007,7 @@ gfx_init_plane_8bppchunky: { jmp b5 //SEG1238 gfx_init_plane_8bppchunky::@5 b5: - //SEG1239 [601] (byte) gfx_init_plane_8bppchunky::y#1 ? ++ (byte) gfx_init_plane_8bppchunky::y#6 -- vbuz1=_inc_vbuz1 + //SEG1239 [601] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG1240 [602] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_8bppchunky::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -18059,19 +18059,19 @@ gfx_init_vic_bitmap: { jmp b1 //SEG1258 gfx_init_vic_bitmap::@1 b1: - //SEG1259 [611] (byte) bitmap_line::x0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1259 [611] (byte) bitmap_line::x0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG1260 [612] (byte) bitmap_line::x1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1260 [612] (byte) bitmap_line::x1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x+1,y sta bitmap_line.x1 - //SEG1261 [613] (byte) bitmap_line::y0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1261 [613] (byte) bitmap_line::y0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y,y sta bitmap_line.y0 - //SEG1262 [614] (byte) bitmap_line::y1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1262 [614] (byte) bitmap_line::y1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y+1,y sta bitmap_line.y1 @@ -18080,7 +18080,7 @@ gfx_init_vic_bitmap: { jmp b3 //SEG1264 gfx_init_vic_bitmap::@3 b3: - //SEG1265 [616] (byte) gfx_init_vic_bitmap::l#1 ? ++ (byte) gfx_init_vic_bitmap::l#2 -- vbuz1=_inc_vbuz1 + //SEG1265 [616] (byte) gfx_init_vic_bitmap::l#1 ← ++ (byte) gfx_init_vic_bitmap::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG1266 [617] if((byte) gfx_init_vic_bitmap::l#1<(const byte) gfx_init_vic_bitmap::lines_cnt#0) goto gfx_init_vic_bitmap::@1 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -18115,7 +18115,7 @@ bitmap_line: { jmp b2 //SEG1271 bitmap_line::@2 b2: - //SEG1272 [620] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1272 [620] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 lda x0 sec sbc x1 @@ -18127,7 +18127,7 @@ bitmap_line: { jmp b3 //SEG1274 bitmap_line::@3 b3: - //SEG1275 [622] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1275 [622] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 lda y0 sec sbc y1 @@ -18139,19 +18139,19 @@ bitmap_line: { jmp b4 //SEG1277 bitmap_line::@4 b4: - //SEG1278 [624] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1278 [624] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y - //SEG1279 [625] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1279 [625] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_ydxi.x - //SEG1280 [626] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1280 [626] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y1 - //SEG1281 [627] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 + //SEG1281 [627] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 lda yd_2 sta bitmap_line_ydxi.yd - //SEG1282 [628] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1282 [628] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_ydxi.xd //SEG1283 [629] call bitmap_line_ydxi @@ -18170,19 +18170,19 @@ bitmap_line: { rts //SEG1292 bitmap_line::@8 b8: - //SEG1293 [631] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1293 [631] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x - //SEG1294 [632] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1294 [632] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyi.y - //SEG1295 [633] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1295 [633] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x1 - //SEG1296 [634] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1296 [634] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_xdyi.xd - //SEG1297 [635] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 + //SEG1297 [635] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 lda yd_2 sta bitmap_line_xdyi.yd //SEG1298 [636] call bitmap_line_xdyi @@ -18197,7 +18197,7 @@ bitmap_line: { jmp breturn //SEG1305 bitmap_line::@7 b7: - //SEG1306 [637] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1306 [637] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 lda y1 sec sbc y0 @@ -18209,19 +18209,19 @@ bitmap_line: { jmp b10 //SEG1308 bitmap_line::@10 b10: - //SEG1309 [639] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1309 [639] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG1310 [640] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1310 [640] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_ydxd.x - //SEG1311 [641] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1311 [641] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y1 - //SEG1312 [642] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 + //SEG1312 [642] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 lda yd sta bitmap_line_ydxd.yd - //SEG1313 [643] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1313 [643] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_ydxd.xd //SEG1314 [644] call bitmap_line_ydxd @@ -18236,19 +18236,19 @@ bitmap_line: { jmp breturn //SEG1321 bitmap_line::@9 b9: - //SEG1322 [645] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1322 [645] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyd.x - //SEG1323 [646] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1323 [646] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyd.y - //SEG1324 [647] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1324 [647] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x1 - //SEG1325 [648] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1325 [648] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_xdyd.xd - //SEG1326 [649] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 + //SEG1326 [649] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 lda yd sta bitmap_line_xdyd.yd //SEG1327 [650] call bitmap_line_xdyd @@ -18263,7 +18263,7 @@ bitmap_line: { jmp breturn //SEG1334 bitmap_line::@1 b1: - //SEG1335 [651] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1335 [651] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x0 @@ -18275,7 +18275,7 @@ bitmap_line: { jmp b5 //SEG1337 bitmap_line::@5 b5: - //SEG1338 [653] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1338 [653] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 lda y0 sec sbc y1 @@ -18287,19 +18287,19 @@ bitmap_line: { jmp b6 //SEG1340 bitmap_line::@6 b6: - //SEG1341 [655] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1341 [655] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y - //SEG1342 [656] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1342 [656] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_ydxd.x - //SEG1343 [657] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1343 [657] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y1 - //SEG1344 [658] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 + //SEG1344 [658] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 lda yd_10 sta bitmap_line_ydxd.yd - //SEG1345 [659] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1345 [659] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_ydxd.xd //SEG1346 [660] call bitmap_line_ydxd @@ -18314,19 +18314,19 @@ bitmap_line: { jmp breturn //SEG1353 bitmap_line::@12 b12: - //SEG1354 [661] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1354 [661] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x - //SEG1355 [662] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1355 [662] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_xdyd.y - //SEG1356 [663] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1356 [663] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyd.x1 - //SEG1357 [664] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1357 [664] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_xdyd.xd - //SEG1358 [665] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 + //SEG1358 [665] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 lda yd_10 sta bitmap_line_xdyd.yd //SEG1359 [666] call bitmap_line_xdyd @@ -18341,7 +18341,7 @@ bitmap_line: { jmp breturn //SEG1366 bitmap_line::@11 b11: - //SEG1367 [667] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1367 [667] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 lda y1 sec sbc y0 @@ -18353,19 +18353,19 @@ bitmap_line: { jmp b14 //SEG1369 bitmap_line::@14 b14: - //SEG1370 [669] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1370 [669] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG1371 [670] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1371 [670] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_ydxi.x - //SEG1372 [671] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1372 [671] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y1 - //SEG1373 [672] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 + //SEG1373 [672] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 lda yd_11 sta bitmap_line_ydxi.yd - //SEG1374 [673] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1374 [673] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_ydxi.xd //SEG1375 [674] call bitmap_line_ydxi @@ -18380,19 +18380,19 @@ bitmap_line: { jmp breturn //SEG1382 bitmap_line::@13 b13: - //SEG1383 [675] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1383 [675] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x - //SEG1384 [676] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1384 [676] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_xdyi.y - //SEG1385 [677] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1385 [677] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x1 - //SEG1386 [678] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1386 [678] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_xdyi.xd - //SEG1387 [679] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 + //SEG1387 [679] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 lda yd_11 sta bitmap_line_xdyi.yd //SEG1388 [680] call bitmap_line_xdyi @@ -18416,7 +18416,7 @@ bitmap_line_xdyi: { .label xd = $62 .label yd = $61 .label e = $66 - //SEG1396 [682] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1396 [682] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -18429,10 +18429,10 @@ bitmap_line_xdyi: { jmp b1 //SEG1401 bitmap_line_xdyi::@1 b1: - //SEG1402 [684] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 -- vbuz1=vbuz2 + //SEG1402 [684] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1403 [685] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuz1=vbuz2 + //SEG1403 [685] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1404 [686] call bitmap_plot @@ -18444,9 +18444,9 @@ bitmap_line_xdyi: { jmp b4 //SEG1408 bitmap_line_xdyi::@4 b4: - //SEG1409 [687] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1409 [687] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1410 [688] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1410 [688] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -18458,9 +18458,9 @@ bitmap_line_xdyi: { jmp b3 //SEG1412 bitmap_line_xdyi::@3 b3: - //SEG1413 [690] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1413 [690] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1414 [691] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1414 [691] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -18473,7 +18473,7 @@ bitmap_line_xdyi: { jmp b2 //SEG1418 bitmap_line_xdyi::@2 b2: - //SEG1419 [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1419 [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -18496,19 +18496,19 @@ bitmap_plot: { .label plotter_y = $146 .label x = $67 .label y = $68 - //SEG1424 [697] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG1424 [697] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy x lda bitmap_plot_xhi,y sta plotter_x+1 lda bitmap_plot_xlo,y sta plotter_x - //SEG1425 [698] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG1425 [698] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy y lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG1426 [699] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG1426 [699] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz2_plus_vwuz3 lda plotter_x clc adc plotter_y @@ -18516,13 +18516,13 @@ bitmap_plot: { lda plotter_x+1 adc plotter_y+1 sta _0+1 - //SEG1427 [700] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuz3 + //SEG1427 [700] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuz3 ldy #0 lda (_0),y ldy x ora bitmap_plot_bit,y sta _1 - //SEG1428 [701] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuz2 + //SEG1428 [701] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuz2 lda _1 ldy #0 sta (_0),y @@ -18542,7 +18542,7 @@ bitmap_line_ydxi: { .label yd = $6a .label xd = $69 .label e = $6e - //SEG1432 [704] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1432 [704] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -18555,10 +18555,10 @@ bitmap_line_ydxi: { jmp b1 //SEG1437 bitmap_line_ydxi::@1 b1: - //SEG1438 [706] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 -- vbuz1=vbuz2 + //SEG1438 [706] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1439 [707] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuz1=vbuz2 + //SEG1439 [707] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1440 [708] call bitmap_plot @@ -18570,9 +18570,9 @@ bitmap_line_ydxi: { jmp b4 //SEG1444 bitmap_line_ydxi::@4 b4: - //SEG1445 [709] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1445 [709] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1446 [710] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1446 [710] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -18584,9 +18584,9 @@ bitmap_line_ydxi: { jmp b3 //SEG1448 bitmap_line_ydxi::@3 b3: - //SEG1449 [712] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1449 [712] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1450 [713] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1450 [713] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -18599,7 +18599,7 @@ bitmap_line_ydxi: { jmp b2 //SEG1454 bitmap_line_ydxi::@2 b2: - //SEG1455 [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1455 [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy y1 iny sty _6 @@ -18623,7 +18623,7 @@ bitmap_line_xdyd: { .label xd = $70 .label yd = $6f .label e = $74 - //SEG1460 [719] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1460 [719] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -18636,10 +18636,10 @@ bitmap_line_xdyd: { jmp b1 //SEG1465 bitmap_line_xdyd::@1 b1: - //SEG1466 [721] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 -- vbuz1=vbuz2 + //SEG1466 [721] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1467 [722] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuz1=vbuz2 + //SEG1467 [722] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1468 [723] call bitmap_plot @@ -18651,9 +18651,9 @@ bitmap_line_xdyd: { jmp b4 //SEG1472 bitmap_line_xdyd::@4 b4: - //SEG1473 [724] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 + //SEG1473 [724] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1474 [725] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1474 [725] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -18665,9 +18665,9 @@ bitmap_line_xdyd: { jmp b3 //SEG1476 bitmap_line_xdyd::@3 b3: - //SEG1477 [727] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG1477 [727] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG1478 [728] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1478 [728] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -18680,7 +18680,7 @@ bitmap_line_xdyd: { jmp b2 //SEG1482 bitmap_line_xdyd::@2 b2: - //SEG1483 [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1483 [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -18704,7 +18704,7 @@ bitmap_line_ydxd: { .label yd = $76 .label xd = $75 .label e = $7a - //SEG1488 [734] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1488 [734] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -18717,10 +18717,10 @@ bitmap_line_ydxd: { jmp b1 //SEG1493 bitmap_line_ydxd::@1 b1: - //SEG1494 [736] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 -- vbuz1=vbuz2 + //SEG1494 [736] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1495 [737] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuz1=vbuz2 + //SEG1495 [737] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1496 [738] call bitmap_plot @@ -18732,9 +18732,9 @@ bitmap_line_ydxd: { jmp b4 //SEG1500 bitmap_line_ydxd::@4 b4: - //SEG1501 [739] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG1501 [739] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG1502 [740] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1502 [740] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -18746,9 +18746,9 @@ bitmap_line_ydxd: { jmp b3 //SEG1504 bitmap_line_ydxd::@3 b3: - //SEG1505 [742] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuz1=_dec_vbuz1 + //SEG1505 [742] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuz1=_dec_vbuz1 dec x - //SEG1506 [743] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1506 [743] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -18761,7 +18761,7 @@ bitmap_line_ydxd: { jmp b2 //SEG1510 bitmap_line_ydxd::@2 b2: - //SEG1511 [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1511 [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy y1 iny sty _6 @@ -18782,12 +18782,12 @@ bitmap_clear: { .label x = $7e .label y = $7b .label _3 = $14e - //SEG1516 [748] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG1516 [748] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG1517 [749] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 + //SEG1517 [749] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 lda _3 sta bitmap lda _3+1 @@ -18820,16 +18820,16 @@ bitmap_clear: { jmp b2 //SEG1531 bitmap_clear::@2 b2: - //SEG1532 [752] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1532 [752] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG1533 [753] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG1533 [753] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG1534 [754] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 + //SEG1534 [754] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG1535 [755] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -18838,7 +18838,7 @@ bitmap_clear: { jmp b3 //SEG1536 bitmap_clear::@3 b3: - //SEG1537 [756] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG1537 [756] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG1538 [757] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -18879,23 +18879,23 @@ bitmap_init: { jmp b1 //SEG1548 bitmap_init::@1 b1: - //SEG1549 [761] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuz1=vbuz2_band_vbuc1 + //SEG1549 [761] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuz1=vbuz2_band_vbuc1 lda #$f8 and x sta _0 - //SEG1550 [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1550 [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuz1=vbuz2 lda _0 ldy x sta bitmap_plot_xlo,y - //SEG1551 [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) VIC_BITMAP#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG1551 [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) VIC_BITMAP#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #>VIC_BITMAP ldy x sta bitmap_plot_xhi,y - //SEG1552 [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1552 [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 lda bits ldy x sta bitmap_plot_bit,y - //SEG1553 [765] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG1553 [765] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr bits //SEG1554 [766] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuz1_neq_0_then_la1 lda bits @@ -18909,7 +18909,7 @@ bitmap_init: { jmp b2 //SEG1557 bitmap_init::@2 b2: - //SEG1558 [768] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 + //SEG1558 [768] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG1559 [769] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuz1_neq_0_then_la1 lda x @@ -18933,29 +18933,29 @@ bitmap_init: { jmp b3 //SEG1566 bitmap_init::@3 b3: - //SEG1567 [771] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG1567 [771] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _6 - //SEG1568 [772] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 + //SEG1568 [772] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 lda yoffs sta _7 - //SEG1569 [773] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1569 [773] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuz1=vbuz2_bor_vbuz3 lda _6 ora _7 sta _8 - //SEG1570 [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1570 [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuz1=vbuz2 lda _8 ldy y sta bitmap_plot_ylo,y - //SEG1571 [775] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 + //SEG1571 [775] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 lda yoffs+1 sta _9 - //SEG1572 [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1572 [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuz1=vbuz2 lda _9 ldy y sta bitmap_plot_yhi,y - //SEG1573 [777] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG1573 [777] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _10 @@ -18966,7 +18966,7 @@ bitmap_init: { jmp b5 //SEG1575 bitmap_init::@5 b5: - //SEG1576 [779] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG1576 [779] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -18981,7 +18981,7 @@ bitmap_init: { jmp b4 //SEG1579 bitmap_init::@4 b4: - //SEG1580 [781] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 + //SEG1580 [781] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 inc y //SEG1581 [782] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuz1_neq_0_then_la1 lda y @@ -19008,7 +19008,7 @@ gfx_init_charset: { .label chargen = $85 .label l = $89 .label c = $84 - //SEG1589 [785] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $32 -- _deref_pbuc1=vbuc2 + //SEG1589 [785] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $32 -- _deref_pbuc1=vbuc2 lda #$32 sta PROCPORT //SEG1590 [786] phi from gfx_init_charset to gfx_init_charset::@1 [phi:gfx_init_charset->gfx_init_charset::@1] @@ -19051,22 +19051,22 @@ gfx_init_charset: { jmp b2 //SEG1607 gfx_init_charset::@2 b2: - //SEG1608 [788] *((byte*) gfx_init_charset::charset#2) ? *((byte*) gfx_init_charset::chargen#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1608 [788] *((byte*) gfx_init_charset::charset#2) ← *((byte*) gfx_init_charset::chargen#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (chargen),y ldy #0 sta (charset),y - //SEG1609 [789] (byte*) gfx_init_charset::charset#1 ? ++ (byte*) gfx_init_charset::charset#2 -- pbuz1=_inc_pbuz1 + //SEG1609 [789] (byte*) gfx_init_charset::charset#1 ← ++ (byte*) gfx_init_charset::charset#2 -- pbuz1=_inc_pbuz1 inc charset bne !+ inc charset+1 !: - //SEG1610 [790] (byte*) gfx_init_charset::chargen#1 ? ++ (byte*) gfx_init_charset::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG1610 [790] (byte*) gfx_init_charset::chargen#1 ← ++ (byte*) gfx_init_charset::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 !: - //SEG1611 [791] (byte) gfx_init_charset::l#1 ? ++ (byte) gfx_init_charset::l#2 -- vbuz1=_inc_vbuz1 + //SEG1611 [791] (byte) gfx_init_charset::l#1 ← ++ (byte) gfx_init_charset::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG1612 [792] if((byte) gfx_init_charset::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_charset::@2 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -19075,7 +19075,7 @@ gfx_init_charset: { jmp b3 //SEG1613 gfx_init_charset::@3 b3: - //SEG1614 [793] (byte) gfx_init_charset::c#1 ? ++ (byte) gfx_init_charset::c#4 -- vbuz1=_inc_vbuz1 + //SEG1614 [793] (byte) gfx_init_charset::c#1 ← ++ (byte) gfx_init_charset::c#4 -- vbuz1=_inc_vbuz1 inc c //SEG1615 [794] if((byte) gfx_init_charset::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_charset::@1 -- vbuz1_neq_0_then_la1 lda c @@ -19084,7 +19084,7 @@ gfx_init_charset: { jmp b4 //SEG1616 gfx_init_charset::@4 b4: - //SEG1617 [795] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $37 -- _deref_pbuc1=vbuc2 + //SEG1617 [795] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $37 -- _deref_pbuc1=vbuc2 lda #$37 sta PROCPORT jmp breturn @@ -19131,16 +19131,16 @@ gfx_init_screen4: { jmp b2 //SEG1634 gfx_init_screen4::@2 b2: - //SEG1635 [800] *((byte*) gfx_init_screen4::ch#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1635 [800] *((byte*) gfx_init_screen4::ch#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (ch),y - //SEG1636 [801] (byte*) gfx_init_screen4::ch#1 ? ++ (byte*) gfx_init_screen4::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1636 [801] (byte*) gfx_init_screen4::ch#1 ← ++ (byte*) gfx_init_screen4::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1637 [802] (byte) gfx_init_screen4::cx#1 ? ++ (byte) gfx_init_screen4::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1637 [802] (byte) gfx_init_screen4::cx#1 ← ++ (byte) gfx_init_screen4::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1638 [803] if((byte) gfx_init_screen4::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen4::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -19149,7 +19149,7 @@ gfx_init_screen4: { jmp b3 //SEG1639 gfx_init_screen4::@3 b3: - //SEG1640 [804] (byte) gfx_init_screen4::cy#1 ? ++ (byte) gfx_init_screen4::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1640 [804] (byte) gfx_init_screen4::cy#1 ← ++ (byte) gfx_init_screen4::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1641 [805] if((byte) gfx_init_screen4::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen4::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -19203,35 +19203,35 @@ gfx_init_screen3: { jmp b2 //SEG1658 gfx_init_screen3::@2 b2: - //SEG1659 [810] (byte~) gfx_init_screen3::$0 ? (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 + //SEG1659 [810] (byte~) gfx_init_screen3::$0 ← (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 lda #3 and cx sta _0 - //SEG1660 [811] (byte~) gfx_init_screen3::$1 ? (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1660 [811] (byte~) gfx_init_screen3::$1 ← (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _0 asl asl asl asl sta _1 - //SEG1661 [812] (byte~) gfx_init_screen3::$2 ? (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 + //SEG1661 [812] (byte~) gfx_init_screen3::$2 ← (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 lda #3 and cy sta _2 - //SEG1662 [813] (byte~) gfx_init_screen3::$3 ? (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1662 [813] (byte~) gfx_init_screen3::$3 ← (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 -- vbuz1=vbuz2_bor_vbuz3 lda _1 ora _2 sta _3 - //SEG1663 [814] *((byte*) gfx_init_screen3::ch#2) ? (byte~) gfx_init_screen3::$3 -- _deref_pbuz1=vbuz2 + //SEG1663 [814] *((byte*) gfx_init_screen3::ch#2) ← (byte~) gfx_init_screen3::$3 -- _deref_pbuz1=vbuz2 lda _3 ldy #0 sta (ch),y - //SEG1664 [815] (byte*) gfx_init_screen3::ch#1 ? ++ (byte*) gfx_init_screen3::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1664 [815] (byte*) gfx_init_screen3::ch#1 ← ++ (byte*) gfx_init_screen3::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1665 [816] (byte) gfx_init_screen3::cx#1 ? ++ (byte) gfx_init_screen3::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1665 [816] (byte) gfx_init_screen3::cx#1 ← ++ (byte) gfx_init_screen3::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1666 [817] if((byte) gfx_init_screen3::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen3::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -19240,7 +19240,7 @@ gfx_init_screen3: { jmp b3 //SEG1667 gfx_init_screen3::@3 b3: - //SEG1668 [818] (byte) gfx_init_screen3::cy#1 ? ++ (byte) gfx_init_screen3::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1668 [818] (byte) gfx_init_screen3::cy#1 ← ++ (byte) gfx_init_screen3::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1669 [819] if((byte) gfx_init_screen3::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen3::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -19295,41 +19295,41 @@ gfx_init_screen2: { jmp b2 //SEG1686 gfx_init_screen2::@2 b2: - //SEG1687 [824] (byte~) gfx_init_screen2::$0 ? (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG1687 [824] (byte~) gfx_init_screen2::$0 ← (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 -- vbuz1=vbuz2_plus_vbuz3 lda cx clc adc cy sta _0 - //SEG1688 [825] (byte) gfx_init_screen2::col#0 ? (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1688 [825] (byte) gfx_init_screen2::col#0 ← (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and _0 sta col - //SEG1689 [826] (byte) gfx_init_screen2::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 -- vbuz1=vbuc1_minus_vbuz2 + //SEG1689 [826] (byte) gfx_init_screen2::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 -- vbuz1=vbuc1_minus_vbuz2 lda #$f sec sbc col sta col2 - //SEG1690 [827] (byte~) gfx_init_screen2::$3 ? (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1690 [827] (byte~) gfx_init_screen2::$3 ← (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda col asl asl asl asl sta _3 - //SEG1691 [828] (byte~) gfx_init_screen2::$4 ? (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1691 [828] (byte~) gfx_init_screen2::$4 ← (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 -- vbuz1=vbuz2_bor_vbuz3 lda _3 ora col2 sta _4 - //SEG1692 [829] *((byte*) gfx_init_screen2::ch#2) ? (byte~) gfx_init_screen2::$4 -- _deref_pbuz1=vbuz2 + //SEG1692 [829] *((byte*) gfx_init_screen2::ch#2) ← (byte~) gfx_init_screen2::$4 -- _deref_pbuz1=vbuz2 lda _4 ldy #0 sta (ch),y - //SEG1693 [830] (byte*) gfx_init_screen2::ch#1 ? ++ (byte*) gfx_init_screen2::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1693 [830] (byte*) gfx_init_screen2::ch#1 ← ++ (byte*) gfx_init_screen2::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1694 [831] (byte) gfx_init_screen2::cx#1 ? ++ (byte) gfx_init_screen2::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1694 [831] (byte) gfx_init_screen2::cx#1 ← ++ (byte) gfx_init_screen2::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1695 [832] if((byte) gfx_init_screen2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen2::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -19338,7 +19338,7 @@ gfx_init_screen2: { jmp b3 //SEG1696 gfx_init_screen2::@3 b3: - //SEG1697 [833] (byte) gfx_init_screen2::cy#1 ? ++ (byte) gfx_init_screen2::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1697 [833] (byte) gfx_init_screen2::cy#1 ← ++ (byte) gfx_init_screen2::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1698 [834] if((byte) gfx_init_screen2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen2::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -19390,25 +19390,25 @@ gfx_init_screen1: { jmp b2 //SEG1715 gfx_init_screen1::@2 b2: - //SEG1716 [839] (byte~) gfx_init_screen1::$0 ? (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG1716 [839] (byte~) gfx_init_screen1::$0 ← (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 -- vbuz1=vbuz2_plus_vbuz3 lda cx clc adc cy sta _0 - //SEG1717 [840] (byte~) gfx_init_screen1::$1 ? (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1717 [840] (byte~) gfx_init_screen1::$1 ← (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and _0 sta _1 - //SEG1718 [841] *((byte*) gfx_init_screen1::ch#2) ? (byte~) gfx_init_screen1::$1 -- _deref_pbuz1=vbuz2 + //SEG1718 [841] *((byte*) gfx_init_screen1::ch#2) ← (byte~) gfx_init_screen1::$1 -- _deref_pbuz1=vbuz2 lda _1 ldy #0 sta (ch),y - //SEG1719 [842] (byte*) gfx_init_screen1::ch#1 ? ++ (byte*) gfx_init_screen1::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1719 [842] (byte*) gfx_init_screen1::ch#1 ← ++ (byte*) gfx_init_screen1::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1720 [843] (byte) gfx_init_screen1::cx#1 ? ++ (byte) gfx_init_screen1::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1720 [843] (byte) gfx_init_screen1::cx#1 ← ++ (byte) gfx_init_screen1::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1721 [844] if((byte) gfx_init_screen1::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen1::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -19417,7 +19417,7 @@ gfx_init_screen1: { jmp b3 //SEG1722 gfx_init_screen1::@3 b3: - //SEG1723 [845] (byte) gfx_init_screen1::cy#1 ? ++ (byte) gfx_init_screen1::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1723 [845] (byte) gfx_init_screen1::cy#1 ← ++ (byte) gfx_init_screen1::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1724 [846] if((byte) gfx_init_screen1::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen1::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -19471,35 +19471,35 @@ gfx_init_screen0: { jmp b2 //SEG1741 gfx_init_screen0::@2 b2: - //SEG1742 [851] (byte~) gfx_init_screen0::$0 ? (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1742 [851] (byte~) gfx_init_screen0::$0 ← (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _0 - //SEG1743 [852] (byte~) gfx_init_screen0::$1 ? (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1743 [852] (byte~) gfx_init_screen0::$1 ← (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _0 asl asl asl asl sta _1 - //SEG1744 [853] (byte~) gfx_init_screen0::$2 ? (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1744 [853] (byte~) gfx_init_screen0::$2 ← (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _2 - //SEG1745 [854] (byte~) gfx_init_screen0::$3 ? (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1745 [854] (byte~) gfx_init_screen0::$3 ← (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 -- vbuz1=vbuz2_bor_vbuz3 lda _1 ora _2 sta _3 - //SEG1746 [855] *((byte*) gfx_init_screen0::ch#2) ? (byte~) gfx_init_screen0::$3 -- _deref_pbuz1=vbuz2 + //SEG1746 [855] *((byte*) gfx_init_screen0::ch#2) ← (byte~) gfx_init_screen0::$3 -- _deref_pbuz1=vbuz2 lda _3 ldy #0 sta (ch),y - //SEG1747 [856] (byte*) gfx_init_screen0::ch#1 ? ++ (byte*) gfx_init_screen0::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1747 [856] (byte*) gfx_init_screen0::ch#1 ← ++ (byte*) gfx_init_screen0::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1748 [857] (byte) gfx_init_screen0::cx#1 ? ++ (byte) gfx_init_screen0::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1748 [857] (byte) gfx_init_screen0::cx#1 ← ++ (byte) gfx_init_screen0::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1749 [858] if((byte) gfx_init_screen0::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen0::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -19508,7 +19508,7 @@ gfx_init_screen0: { jmp b3 //SEG1750 gfx_init_screen0::@3 b3: - //SEG1751 [859] (byte) gfx_init_screen0::cy#1 ? ++ (byte) gfx_init_screen0::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1751 [859] (byte) gfx_init_screen0::cy#1 ← ++ (byte) gfx_init_screen0::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1752 [860] if((byte) gfx_init_screen0::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen0::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -19523,11 +19523,11 @@ gfx_init_screen0: { //SEG1755 keyboard_init // Initialize keyboard reading by setting CIA#$ Data Direction Registers keyboard_init: { - //SEG1756 [862] *((const byte*) CIA1_PORT_A_DDR#0) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 + //SEG1756 [862] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 // Keyboard Matrix Columns Write Mode lda #$ff sta CIA1_PORT_A_DDR - //SEG1757 [863] *((const byte*) CIA1_PORT_B_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1757 [863] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Keyboard Matrix Columns Read Mode lda #0 sta CIA1_PORT_B_DDR @@ -19592,192 +19592,192 @@ keyboard_init: { REGISTER UPLIFT POTENTIAL REGISTERS Equivalence Class zp ZP_BYTE:338 [ bitmap_init::$7 ] has ALU potential. -Statement [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a Statement [16] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:31 [ form_cursor_count#21 form_cursor_count#1 form_cursor_count#16 form_cursor_count#15 form_cursor_count#5 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:32 [ form_field_idx#28 form_field_idx#1 form_field_idx#18 form_field_idx#31 form_field_idx#44 form_field_idx#45 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:18 [ keyboard_events_size#18 keyboard_events_size#119 keyboard_events_size#110 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#24 keyboard_events_size#100 keyboard_events_size#4 keyboard_events_size#118 keyboard_events_size#1 keyboard_events_size#2 ] Statement [19] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ keyboard_events_size#24 gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#14 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] -Statement [20] (byte) gfx_mode::dtv_control#2 ? (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#2 ] ) always clobbers reg byte a +Statement [20] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#2 ] ) always clobbers reg byte a Statement [22] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ keyboard_events_size#24 gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#15 ] ) always clobbers reg byte a -Statement [23] (byte) gfx_mode::dtv_control#3 ? (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ keyboard_events_size#24 gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#3 ] ) always clobbers reg byte a +Statement [23] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ keyboard_events_size#24 gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#3 ] ) always clobbers reg byte a Statement [25] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ keyboard_events_size#24 gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#10 ] ) always clobbers reg byte a -Statement [26] (byte) gfx_mode::dtv_control#4 ? (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ keyboard_events_size#24 gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#4 ] ) always clobbers reg byte a +Statement [26] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ keyboard_events_size#24 gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#4 ] ) always clobbers reg byte a Statement [28] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ keyboard_events_size#24 gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#11 ] ) always clobbers reg byte a -Statement [29] (byte) gfx_mode::dtv_control#5 ? (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#5 ] ) always clobbers reg byte a +Statement [29] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#5 ] ) always clobbers reg byte a Statement [31] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ keyboard_events_size#24 gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#13 ] ) always clobbers reg byte a -Statement [32] (byte) gfx_mode::dtv_control#6 ? (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ keyboard_events_size#24 gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#6 ] ) always clobbers reg byte a +Statement [32] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ keyboard_events_size#24 gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#6 ] ) always clobbers reg byte a Statement [35] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a Statement [38] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ keyboard_events_size#24 gfx_mode::vic_control#5 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_control#5 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] -Statement [39] (byte) gfx_mode::vic_control#2 ? (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ keyboard_events_size#24 gfx_mode::vic_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_control#2 ] ) always clobbers reg byte a +Statement [39] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ keyboard_events_size#24 gfx_mode::vic_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_control#2 ] ) always clobbers reg byte a Statement [42] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [46] (byte~) gfx_mode::$20 ? *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$20 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$20 ] ) always clobbers reg byte a -Statement [47] (byte) gfx_mode::plane_a_offs#0 ? (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ) always clobbers reg byte a -Statement [50] (dword) get_plane::return#16 ? (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ) always clobbers reg byte a +Statement [46] (byte~) gfx_mode::$20 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$20 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$20 ] ) always clobbers reg byte a +Statement [47] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ) always clobbers reg byte a +Statement [50] (dword) get_plane::return#16 ← (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:159 [ gfx_mode::plane_a_offs#0 ] -Statement [51] (dword~) gfx_mode::$22 ? (dword) get_plane::return#16 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ) always clobbers reg byte a -Statement [52] (dword) gfx_mode::plane_a#0 ? (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 ] ) always clobbers reg byte a -Statement [53] (word~) gfx_mode::$24 ? < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ) always clobbers reg byte a -Statement [54] (byte~) gfx_mode::$25 ? < (word~) gfx_mode::$24 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ) always clobbers reg byte a -Statement [56] (word~) gfx_mode::$26 ? < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ) always clobbers reg byte a -Statement [57] (byte~) gfx_mode::$27 ? > (word~) gfx_mode::$26 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ) always clobbers reg byte a -Statement [59] (word~) gfx_mode::$28 ? > (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::$28 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$28 ] ) always clobbers reg byte a -Statement [60] (byte~) gfx_mode::$29 ? < (word~) gfx_mode::$28 [ keyboard_events_size#24 gfx_mode::$29 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$29 ] ) always clobbers reg byte a -Statement [62] (byte~) gfx_mode::$30 ? *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$30 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$30 ] ) always clobbers reg byte a -Statement [63] (byte~) gfx_mode::$31 ? (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) [ keyboard_events_size#24 gfx_mode::$31 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$31 ] ) always clobbers reg byte a -Statement [65] (byte~) gfx_mode::$32 ? *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$32 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$32 ] ) always clobbers reg byte a -Statement [66] (byte~) gfx_mode::$33 ? (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$33 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$33 ] ) always clobbers reg byte a -Statement [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [69] (byte~) gfx_mode::$34 ? *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$34 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$34 ] ) always clobbers reg byte a -Statement [70] (byte) gfx_mode::plane_b_offs#0 ? (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ) always clobbers reg byte a -Statement [73] (dword) get_plane::return#17 ? (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ) always clobbers reg byte a +Statement [51] (dword~) gfx_mode::$22 ← (dword) get_plane::return#16 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ) always clobbers reg byte a +Statement [52] (dword) gfx_mode::plane_a#0 ← (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 ] ) always clobbers reg byte a +Statement [53] (word~) gfx_mode::$24 ← < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ) always clobbers reg byte a +Statement [54] (byte~) gfx_mode::$25 ← < (word~) gfx_mode::$24 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ) always clobbers reg byte a +Statement [56] (word~) gfx_mode::$26 ← < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ) always clobbers reg byte a +Statement [57] (byte~) gfx_mode::$27 ← > (word~) gfx_mode::$26 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ) always clobbers reg byte a +Statement [59] (word~) gfx_mode::$28 ← > (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::$28 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$28 ] ) always clobbers reg byte a +Statement [60] (byte~) gfx_mode::$29 ← < (word~) gfx_mode::$28 [ keyboard_events_size#24 gfx_mode::$29 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$29 ] ) always clobbers reg byte a +Statement [62] (byte~) gfx_mode::$30 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$30 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$30 ] ) always clobbers reg byte a +Statement [63] (byte~) gfx_mode::$31 ← (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) [ keyboard_events_size#24 gfx_mode::$31 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$31 ] ) always clobbers reg byte a +Statement [65] (byte~) gfx_mode::$32 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$32 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$32 ] ) always clobbers reg byte a +Statement [66] (byte~) gfx_mode::$33 ← (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$33 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$33 ] ) always clobbers reg byte a +Statement [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [69] (byte~) gfx_mode::$34 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$34 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$34 ] ) always clobbers reg byte a +Statement [70] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ) always clobbers reg byte a +Statement [73] (dword) get_plane::return#17 ← (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:186 [ gfx_mode::plane_b_offs#0 ] -Statement [74] (dword~) gfx_mode::$36 ? (dword) get_plane::return#17 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ) always clobbers reg byte a -Statement [75] (dword) gfx_mode::plane_b#0 ? (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 ] ) always clobbers reg byte a -Statement [76] (word~) gfx_mode::$38 ? < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ) always clobbers reg byte a -Statement [77] (byte~) gfx_mode::$39 ? < (word~) gfx_mode::$38 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ) always clobbers reg byte a -Statement [79] (word~) gfx_mode::$40 ? < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ) always clobbers reg byte a -Statement [80] (byte~) gfx_mode::$41 ? > (word~) gfx_mode::$40 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ) always clobbers reg byte a -Statement [82] (word~) gfx_mode::$42 ? > (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::$42 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$42 ] ) always clobbers reg byte a -Statement [83] (byte~) gfx_mode::$43 ? < (word~) gfx_mode::$42 [ keyboard_events_size#24 gfx_mode::$43 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$43 ] ) always clobbers reg byte a -Statement [85] (byte~) gfx_mode::$44 ? *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$44 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$44 ] ) always clobbers reg byte a -Statement [86] (byte~) gfx_mode::$45 ? (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) [ keyboard_events_size#24 gfx_mode::$45 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$45 ] ) always clobbers reg byte a -Statement [88] (byte~) gfx_mode::$46 ? *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$46 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$46 ] ) always clobbers reg byte a -Statement [89] (byte~) gfx_mode::$47 ? (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$47 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$47 ] ) always clobbers reg byte a -Statement [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [92] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [93] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [96] (byte*) get_vic_screen::return#10 ? (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#10 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#10 ] ) always clobbers reg byte a -Statement [97] (byte*~) gfx_mode::$52 ? (byte*) get_vic_screen::return#10 [ keyboard_events_size#24 gfx_mode::$52 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$52 ] ) always clobbers reg byte a -Statement [98] (word~) gfx_mode::$54 ? (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$54 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$54 ] ) always clobbers reg byte a -Statement [99] (word~) gfx_mode::$55 ? (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 [ keyboard_events_size#24 gfx_mode::$55 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$55 ] ) always clobbers reg byte a reg byte y +Statement [74] (dword~) gfx_mode::$36 ← (dword) get_plane::return#17 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ) always clobbers reg byte a +Statement [75] (dword) gfx_mode::plane_b#0 ← (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 ] ) always clobbers reg byte a +Statement [76] (word~) gfx_mode::$38 ← < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ) always clobbers reg byte a +Statement [77] (byte~) gfx_mode::$39 ← < (word~) gfx_mode::$38 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ) always clobbers reg byte a +Statement [79] (word~) gfx_mode::$40 ← < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ) always clobbers reg byte a +Statement [80] (byte~) gfx_mode::$41 ← > (word~) gfx_mode::$40 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ) always clobbers reg byte a +Statement [82] (word~) gfx_mode::$42 ← > (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::$42 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$42 ] ) always clobbers reg byte a +Statement [83] (byte~) gfx_mode::$43 ← < (word~) gfx_mode::$42 [ keyboard_events_size#24 gfx_mode::$43 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$43 ] ) always clobbers reg byte a +Statement [85] (byte~) gfx_mode::$44 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$44 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$44 ] ) always clobbers reg byte a +Statement [86] (byte~) gfx_mode::$45 ← (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) [ keyboard_events_size#24 gfx_mode::$45 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$45 ] ) always clobbers reg byte a +Statement [88] (byte~) gfx_mode::$46 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$46 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$46 ] ) always clobbers reg byte a +Statement [89] (byte~) gfx_mode::$47 ← (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$47 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$47 ] ) always clobbers reg byte a +Statement [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [92] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [93] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [96] (byte*) get_vic_screen::return#10 ← (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#10 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#10 ] ) always clobbers reg byte a +Statement [97] (byte*~) gfx_mode::$52 ← (byte*) get_vic_screen::return#10 [ keyboard_events_size#24 gfx_mode::$52 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$52 ] ) always clobbers reg byte a +Statement [98] (word~) gfx_mode::$54 ← (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$54 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$54 ] ) always clobbers reg byte a +Statement [99] (word~) gfx_mode::$55 ← (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 [ keyboard_events_size#24 gfx_mode::$55 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$55 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:31 [ form_cursor_count#21 form_cursor_count#1 form_cursor_count#16 form_cursor_count#15 form_cursor_count#5 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:32 [ form_field_idx#28 form_field_idx#1 form_field_idx#18 form_field_idx#31 form_field_idx#44 form_field_idx#45 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:18 [ keyboard_events_size#18 keyboard_events_size#119 keyboard_events_size#110 keyboard_events_size#47 keyboard_events_size#27 keyboard_events_size#24 keyboard_events_size#100 keyboard_events_size#4 keyboard_events_size#118 keyboard_events_size#1 keyboard_events_size#2 ] -Statement [100] (byte~) gfx_mode::$56 ? ((byte)) (word~) gfx_mode::$55 [ keyboard_events_size#24 gfx_mode::$56 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 ] ) always clobbers reg byte a -Statement [103] (byte*) get_vic_charset::return#4 ? (byte*) get_vic_charset::return#2 [ keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ) always clobbers reg byte a +Statement [100] (byte~) gfx_mode::$56 ← ((byte)) (word~) gfx_mode::$55 [ keyboard_events_size#24 gfx_mode::$56 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 ] ) always clobbers reg byte a +Statement [103] (byte*) get_vic_charset::return#4 ← (byte*) get_vic_charset::return#2 [ keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:220 [ gfx_mode::$56 ] -Statement [104] (byte*~) gfx_mode::$57 ? (byte*) get_vic_charset::return#4 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ) always clobbers reg byte a -Statement [105] (word~) gfx_mode::$59 ? (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ) always clobbers reg byte a -Statement [106] (byte~) gfx_mode::$60 ? > (word~) gfx_mode::$59 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ) always clobbers reg byte a -Statement [107] (byte~) gfx_mode::$61 ? (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ) always clobbers reg byte a -Statement [112] (byte*) get_vic_screen::return#11 ? (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#11 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#11 ] ) always clobbers reg byte a -Statement [113] (byte*) gfx_mode::vic_colors#0 ? (byte*) get_vic_screen::return#11 [ keyboard_events_size#24 gfx_mode::vic_colors#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_colors#0 ] ) always clobbers reg byte a -Statement [116] *((byte*) gfx_mode::col#2) ? *((byte*) gfx_mode::vic_colors#2) [ keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ) always clobbers reg byte a reg byte y +Statement [104] (byte*~) gfx_mode::$57 ← (byte*) get_vic_charset::return#4 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ) always clobbers reg byte a +Statement [105] (word~) gfx_mode::$59 ← (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ) always clobbers reg byte a +Statement [106] (byte~) gfx_mode::$60 ← > (word~) gfx_mode::$59 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ) always clobbers reg byte a +Statement [107] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ) always clobbers reg byte a +Statement [112] (byte*) get_vic_screen::return#11 ← (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#11 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#11 ] ) always clobbers reg byte a +Statement [113] (byte*) gfx_mode::vic_colors#0 ← (byte*) get_vic_screen::return#11 [ keyboard_events_size#24 gfx_mode::vic_colors#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_colors#0 ] ) always clobbers reg byte a +Statement [116] *((byte*) gfx_mode::col#2) ← *((byte*) gfx_mode::vic_colors#2) [ keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ gfx_mode::cy#4 gfx_mode::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:5 [ gfx_mode::cy#4 gfx_mode::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:10 [ gfx_mode::cx#2 gfx_mode::cx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:10 [ gfx_mode::cx#2 gfx_mode::cx#1 ] -Statement [123] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [124] (byte~) gfx_mode::$64 ? *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$64 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$64 ] ) always clobbers reg byte a -Statement [125] (byte~) gfx_mode::$65 ? (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) [ keyboard_events_size#24 gfx_mode::$65 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$65 ] ) always clobbers reg byte a -Statement [127] (byte~) gfx_mode::$66 ? *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$66 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$66 ] ) always clobbers reg byte a -Statement [128] (byte~) gfx_mode::$67 ? (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) [ keyboard_events_size#24 gfx_mode::$67 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$67 ] ) always clobbers reg byte a -Statement [130] (byte~) gfx_mode::$68 ? *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$68 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$68 ] ) always clobbers reg byte a -Statement [131] (byte~) gfx_mode::$69 ? (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) [ keyboard_events_size#24 gfx_mode::$69 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$69 ] ) always clobbers reg byte a -Statement [133] (byte~) gfx_mode::$70 ? *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$70 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$70 ] ) always clobbers reg byte a -Statement [134] (byte~) gfx_mode::$71 ? (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) [ keyboard_events_size#24 gfx_mode::$71 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$71 ] ) always clobbers reg byte a +Statement [123] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [124] (byte~) gfx_mode::$64 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$64 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$64 ] ) always clobbers reg byte a +Statement [125] (byte~) gfx_mode::$65 ← (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) [ keyboard_events_size#24 gfx_mode::$65 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$65 ] ) always clobbers reg byte a +Statement [127] (byte~) gfx_mode::$66 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$66 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$66 ] ) always clobbers reg byte a +Statement [128] (byte~) gfx_mode::$67 ← (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) [ keyboard_events_size#24 gfx_mode::$67 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$67 ] ) always clobbers reg byte a +Statement [130] (byte~) gfx_mode::$68 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$68 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$68 ] ) always clobbers reg byte a +Statement [131] (byte~) gfx_mode::$69 ← (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) [ keyboard_events_size#24 gfx_mode::$69 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$69 ] ) always clobbers reg byte a +Statement [133] (byte~) gfx_mode::$70 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$70 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$70 ] ) always clobbers reg byte a +Statement [134] (byte~) gfx_mode::$71 ← (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) [ keyboard_events_size#24 gfx_mode::$71 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$71 ] ) always clobbers reg byte a Statement [136] if(*((const byte*) form_dtv_palet#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@24 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a Statement [141] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto gfx_mode::@25 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) [ keyboard_events_size#24 gfx_mode::i#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::i#2 ] ) always clobbers reg byte a +Statement [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) [ keyboard_events_size#24 gfx_mode::i#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:12 [ gfx_mode::i#2 gfx_mode::i#1 ] -Statement [166] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a +Statement [166] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:14 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ form_mode::preset_current#6 form_mode::preset_current#0 form_mode::preset_current#1 ] -Statement [181] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#100 keyboard_modifiers#3 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#3 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#3 ] ) always clobbers reg byte a -Statement [187] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#100 keyboard_modifiers#4 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#4 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#4 ] ) always clobbers reg byte a -Statement [193] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#100 keyboard_modifiers#5 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#5 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#5 ] ) always clobbers reg byte a -Statement [197] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ) always clobbers reg byte a +Statement [181] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#100 keyboard_modifiers#3 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#3 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [187] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#100 keyboard_modifiers#4 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#4 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [193] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#100 keyboard_modifiers#5 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#5 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#5 ] ) always clobbers reg byte a +Statement [197] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:245 [ keyboard_event_scan::row_scan#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -Statement [201] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a -Statement [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a -Statement [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ) always clobbers reg byte a -Statement [210] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ) always clobbers reg byte a -Statement [214] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) always clobbers reg byte a +Statement [201] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a +Statement [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ) always clobbers reg byte a +Statement [210] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ) always clobbers reg byte a +Statement [214] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:19 [ keyboard_event_pressed::keycode#4 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:15 [ keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#19 keyboard_modifiers#18 keyboard_modifiers#3 keyboard_modifiers#4 keyboard_modifiers#5 ] -Statement [216] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Statement [216] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:259 [ keyboard_event_pressed::row_bits#0 ] -Statement [217] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a -Statement [219] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] ) always clobbers reg byte a -Statement [220] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a -Statement [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [273] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [274] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [275] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [276] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [277] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [278] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [279] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [280] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [281] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [282] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [283] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a +Statement [217] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a +Statement [219] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] ) always clobbers reg byte a +Statement [220] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [273] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [274] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [275] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [276] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [277] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [278] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [279] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [280] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [281] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [282] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [283] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ form_mode::i#2 form_mode::i#1 ] -Statement [288] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [289] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [288] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [289] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a Statement [292] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto form_mode::@4 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_mode::preset_current#6 ] ( main:2::form_mode:13 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_mode::preset_current#6 ] ) always clobbers reg byte a -Statement [320] (byte*) print_str_at::str#1 ? (byte*) render_preset_name::name#13 [ print_str_at::str#1 ] ( main:2::form_mode:13::render_preset_name:271 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#1 ] main:2::form_mode:13::render_preset_name:305 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#1 ] ) always clobbers reg byte a +Statement [320] (byte*) print_str_at::str#1 ← (byte*) render_preset_name::name#13 [ print_str_at::str#1 ] ( main:2::form_mode:13::render_preset_name:271 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#1 ] main:2::form_mode:13::render_preset_name:305 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#1 ] ) always clobbers reg byte a Statement [325] if(*((byte*) print_str_at::str#2)!=(byte) '@') goto print_str_at::@2 [ print_str_at::str#2 print_str_at::at#2 ] ( main:2::form_mode:13::render_preset_name:271::print_str_at:321 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#2 print_str_at::at#2 ] main:2::form_mode:13::render_preset_name:305::print_str_at:321 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#2 print_str_at::at#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:33 [ form_mode::preset_current#6 form_mode::preset_current#0 form_mode::preset_current#1 ] -Statement [327] *((byte*) print_str_at::at#2) ? *((byte*) print_str_at::str#2) [ print_str_at::str#2 print_str_at::at#2 ] ( main:2::form_mode:13::render_preset_name:271::print_str_at:321 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#2 print_str_at::at#2 ] main:2::form_mode:13::render_preset_name:305::print_str_at:321 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#2 print_str_at::at#2 ] ) always clobbers reg byte a reg byte y -Statement [334] (byte*) form_field_ptr::return#2 ? (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a +Statement [327] *((byte*) print_str_at::at#2) ← *((byte*) print_str_at::str#2) [ print_str_at::str#2 print_str_at::at#2 ] ( main:2::form_mode:13::render_preset_name:271::print_str_at:321 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#2 print_str_at::at#2 ] main:2::form_mode:13::render_preset_name:305::print_str_at:321 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#2 print_str_at::at#2 ] ) always clobbers reg byte a reg byte y +Statement [334] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:41 [ form_render_values::idx#2 form_render_values::idx#1 ] -Statement [335] (byte*) form_render_values::field#0 ? (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_render_values::field#0 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a -Statement [336] *((byte*) form_render_values::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y +Statement [335] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_render_values::field#0 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a +Statement [336] *((byte*) form_render_values::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:41 [ form_render_values::idx#2 form_render_values::idx#1 ] -Statement [342] (word~) form_field_ptr::$2 ? *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a +Statement [342] (word~) form_field_ptr::$2 ← *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:42 [ form_field_ptr::field_idx#2 form_field_ptr::field_idx#1 form_field_ptr::field_idx#0 ] -Statement [344] (byte*) form_field_ptr::return#0 ? (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) always clobbers reg byte a -Statement [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ? *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) [ apply_preset::preset#14 apply_preset::i#2 ] ( main:2::form_mode:13::apply_preset:301 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 apply_preset::preset#14 apply_preset::i#2 ] ) always clobbers reg byte a +Statement [344] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) always clobbers reg byte a +Statement [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ← *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) [ apply_preset::preset#14 apply_preset::i#2 ] ( main:2::form_mode:13::apply_preset:301 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 apply_preset::preset#14 apply_preset::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:45 [ apply_preset::i#2 apply_preset::i#1 ] -Statement [366] (byte*) form_field_ptr::return#3 ? (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) always clobbers reg byte a -Statement [367] (byte*) form_control::field#0 ? (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) always clobbers reg byte a +Statement [366] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) always clobbers reg byte a +Statement [367] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) always clobbers reg byte a Statement [371] if((signed byte) form_cursor_count#15<(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [372] (byte~) form_control::$13 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ) always clobbers reg byte a reg byte y -Statement [373] *((byte*) form_control::field#0) ? (byte~) form_control::$13 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y -Statement [381] (byte~) form_control::$15 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ) always clobbers reg byte a reg byte y +Statement [372] (byte~) form_control::$13 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ) always clobbers reg byte a reg byte y +Statement [373] *((byte*) form_control::field#0) ← (byte~) form_control::$13 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [381] (byte~) form_control::$15 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:15 [ keyboard_modifiers#21 keyboard_modifiers#20 keyboard_modifiers#19 keyboard_modifiers#18 keyboard_modifiers#3 keyboard_modifiers#4 keyboard_modifiers#5 ] -Statement [382] *((byte*) form_control::field#0) ? (byte~) form_control::$15 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) always clobbers reg byte y -Statement [383] (byte~) form_control::$16 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ) always clobbers reg byte a -Statement [395] (byte~) form_control::$24 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) always clobbers reg byte a +Statement [382] *((byte*) form_control::field#0) ← (byte~) form_control::$15 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) always clobbers reg byte y +Statement [383] (byte~) form_control::$16 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ) always clobbers reg byte a +Statement [395] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) always clobbers reg byte a Statement [398] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@15 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [400] *((byte*) form_control::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [400] *((byte*) form_control::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y Statement [402] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@15 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y -Statement [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [406] (byte/word/dword~) form_control::$14 ? *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ) always clobbers reg byte a reg byte y -Statement [407] *((byte*) form_control::field#0) ? (byte/word/dword~) form_control::$14 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y -Statement [415] (byte*) form_set_screen::line#1 ? (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_mode:13::form_set_screen:267 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a +Statement [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [406] (byte/word/dword~) form_control::$14 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ) always clobbers reg byte a reg byte y +Statement [407] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$14 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [415] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_mode:13::form_set_screen:267 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:49 [ form_set_screen::y#2 form_set_screen::y#1 ] -Statement [420] (byte*~) print_char_cursor#77 ? (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ) always clobbers reg byte a +Statement [420] (byte*~) print_char_cursor#77 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ) always clobbers reg byte a Statement [422] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@2 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) always clobbers reg byte a reg byte y -Statement [425] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y -Statement [428] *((byte*) print_char_cursor#20) ? (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte y +Statement [425] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y +Statement [428] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:289 [ print_str_lines::ch#0 ] -Statement [434] (byte*~) print_char_cursor#78 ? (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ) always clobbers reg byte a -Statement [437] (byte*) print_line_cursor#22 ? (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_mode:13::print_str_lines:259::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_mode:13::print_str_lines:265::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [434] (byte*~) print_char_cursor#78 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ) always clobbers reg byte a +Statement [437] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_mode:13::print_str_lines:259::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_mode:13::print_str_lines:265::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a Statement [438] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_mode:13::print_str_lines:259::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_mode:13::print_str_lines:265::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a -Statement [440] (byte*) print_cls::sc#0 ? (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] ) always clobbers reg byte a -Statement [442] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [444] (byte*~) print_cls::$0 ? (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) always clobbers reg byte a +Statement [440] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] ) always clobbers reg byte a +Statement [442] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [444] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) always clobbers reg byte a Statement [445] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 ] ) always clobbers reg byte a -Statement [484] (dword~) gfx_init_plane_fill::$0 ? (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ) always clobbers reg byte a +Statement [484] (dword~) gfx_init_plane_fill::$0 ← (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:62 [ gfx_init_plane_fill::fill#6 ] -Statement [485] (word~) gfx_init_plane_fill::$1 ? > (dword~) gfx_init_plane_fill::$0 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ) always clobbers reg byte a -Statement [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ? < (word~) gfx_init_plane_fill::$1 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ) always clobbers reg byte a -Statement [490] (word~) gfx_init_plane_fill::$4 ? < (dword) gfx_init_plane_fill::plane_addr#3 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ) always clobbers reg byte a -Statement [491] (word~) gfx_init_plane_fill::$5 ? (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ) always clobbers reg byte a -Statement [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ? (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ) always clobbers reg byte a -Statement [493] (byte*~) gfx_init_plane_fill::gfxb#6 ? (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ) always clobbers reg byte a -Statement [496] *((byte*) gfx_init_plane_fill::gfxb#2) ? (byte) gfx_init_plane_fill::fill#6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [485] (word~) gfx_init_plane_fill::$1 ← > (dword~) gfx_init_plane_fill::$0 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ) always clobbers reg byte a +Statement [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ← < (word~) gfx_init_plane_fill::$1 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ) always clobbers reg byte a +Statement [490] (word~) gfx_init_plane_fill::$4 ← < (dword) gfx_init_plane_fill::plane_addr#3 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ) always clobbers reg byte a +Statement [491] (word~) gfx_init_plane_fill::$5 ← (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ) always clobbers reg byte a +Statement [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ← (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ) always clobbers reg byte a +Statement [493] (byte*~) gfx_init_plane_fill::gfxb#6 ← (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ) always clobbers reg byte a +Statement [496] *((byte*) gfx_init_plane_fill::gfxb#2) ← (byte) gfx_init_plane_fill::fill#6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:62 [ gfx_init_plane_fill::fill#6 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:63 [ gfx_init_plane_fill::by#4 gfx_init_plane_fill::by#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:63 [ gfx_init_plane_fill::by#4 gfx_init_plane_fill::by#1 ] @@ -19787,64 +19787,64 @@ Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:298 [ gfx_init_plane_fill::gfxbCpuBank#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:90 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:93 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] -Statement [519] (byte~) gfx_init_plane_horisontal2::$8 ? (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ) always clobbers reg byte a +Statement [519] (byte~) gfx_init_plane_horisontal2::$8 ← (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:68 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::ay#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:71 [ gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::ax#1 ] -Statement [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ? *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ← *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:68 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::ay#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:71 [ gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::ax#1 ] -Statement [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_vertical:470 [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_vertical:470 [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:72 [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::by#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:72 [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::by#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:75 [ gfx_init_plane_vertical::bx#2 gfx_init_plane_vertical::bx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:75 [ gfx_init_plane_vertical::bx#2 gfx_init_plane_vertical::bx#1 ] -Statement [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:76 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::ay#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:76 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::ay#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:79 [ gfx_init_plane_horisontal::ax#2 gfx_init_plane_horisontal::ax#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:79 [ gfx_init_plane_horisontal::ax#2 gfx_init_plane_horisontal::ax#1 ] -Statement [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [563] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a -Statement [566] (byte) gfx_init_plane_charset8::bits#0 ? *((byte*) gfx_init_plane_charset8::chargen#2) [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ) always clobbers reg byte a reg byte y +Statement [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [563] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a +Statement [566] (byte) gfx_init_plane_charset8::bits#0 ← *((byte*) gfx_init_plane_charset8::chargen#2) [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:80 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::ch#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:80 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::ch#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:87 [ gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::col#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:87 [ gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::col#6 gfx_init_plane_charset8::col#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:83 [ gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::cr#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:83 [ gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::cr#1 ] -Statement [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ? (byte) gfx_init_plane_charset8::c#2 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ) always clobbers reg byte y +Statement [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ← (byte) gfx_init_plane_charset8::c#2 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:84 [ gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::bits#0 gfx_init_plane_charset8::bits#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:88 [ gfx_init_plane_charset8::cp#2 gfx_init_plane_charset8::cp#1 ] -Statement [583] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a +Statement [583] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a Statement [590] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) $8000) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) always clobbers reg byte a -Statement [595] (word~) gfx_init_plane_8bppchunky::$9 ? (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ) always clobbers reg byte a -Statement [596] (byte) gfx_init_plane_8bppchunky::c#0 ? ((byte)) (word~) gfx_init_plane_8bppchunky::$9 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a -Statement [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ? (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y +Statement [595] (word~) gfx_init_plane_8bppchunky::$9 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ) always clobbers reg byte a +Statement [596] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$9 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a +Statement [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:90 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:93 [ gfx_init_plane_8bppchunky::gfxbCpuBank#4 gfx_init_plane_8bppchunky::gfxbCpuBank#7 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::gfxbCpuBank#2 ] Statement [600] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) $140) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) always clobbers reg byte a -Statement [620] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a +Statement [620] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:96 [ gfx_init_vic_bitmap::l#2 gfx_init_vic_bitmap::l#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:313 [ bitmap_line::x0#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:314 [ bitmap_line::x1#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:315 [ bitmap_line::y0#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:316 [ bitmap_line::y1#0 ] -Statement [622] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a +Statement [622] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:317 [ bitmap_line::xd#2 ] -Statement [637] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a -Statement [651] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a -Statement [653] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a +Statement [637] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a +Statement [651] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a +Statement [653] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:320 [ bitmap_line::xd#1 ] -Statement [667] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a -Statement [682] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a +Statement [667] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a +Statement [682] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ] -Statement [688] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a -Statement [691] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a -Statement [697] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a +Statement [688] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a +Statement [691] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a +Statement [697] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] @@ -19866,9 +19866,9 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:119 [ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] -Statement [698] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a -Statement [699] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a -Statement [700] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y +Statement [698] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a +Statement [699] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a +Statement [700] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:96 [ gfx_init_vic_bitmap::l#2 gfx_init_vic_bitmap::l#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] @@ -19894,296 +19894,296 @@ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:119 [ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] -Statement [701] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 [ ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y -Statement [704] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a -Statement [710] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a -Statement [713] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a -Statement [719] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a -Statement [725] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a -Statement [728] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a -Statement [734] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a -Statement [740] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a -Statement [743] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a -Statement [748] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [749] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [752] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [701] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y +Statement [704] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a +Statement [710] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a +Statement [713] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a +Statement [719] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a +Statement [725] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a +Statement [728] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a +Statement [734] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a +Statement [740] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a +Statement [743] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a +Statement [748] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [749] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [752] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] -Statement [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) VIC_BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) VIC_BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:127 [ bitmap_init::x#2 bitmap_init::x#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] -Statement [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [779] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [779] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ] -Statement [785] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $32 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a -Statement [788] *((byte*) gfx_init_charset::charset#2) ? *((byte*) gfx_init_charset::chargen#2) [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ( main:2::gfx_init:10::gfx_init_charset:460 [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ) always clobbers reg byte a reg byte y +Statement [785] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $32 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a +Statement [788] *((byte*) gfx_init_charset::charset#2) ← *((byte*) gfx_init_charset::chargen#2) [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ( main:2::gfx_init:10::gfx_init_charset:460 [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:132 [ gfx_init_charset::c#4 gfx_init_charset::c#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:132 [ gfx_init_charset::c#4 gfx_init_charset::c#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:137 [ gfx_init_charset::l#2 gfx_init_charset::l#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:137 [ gfx_init_charset::l#2 gfx_init_charset::l#1 ] -Statement [795] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $37 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a -Statement [800] *((byte*) gfx_init_screen4::ch#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ( main:2::gfx_init:10::gfx_init_screen4:458 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ) always clobbers reg byte a reg byte y +Statement [795] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $37 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a +Statement [800] *((byte*) gfx_init_screen4::ch#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ( main:2::gfx_init:10::gfx_init_screen4:458 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:138 [ gfx_init_screen4::cy#4 gfx_init_screen4::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:138 [ gfx_init_screen4::cy#4 gfx_init_screen4::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:141 [ gfx_init_screen4::cx#2 gfx_init_screen4::cx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:141 [ gfx_init_screen4::cx#2 gfx_init_screen4::cx#1 ] -Statement [811] (byte~) gfx_init_screen3::$1 ? (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ) always clobbers reg byte a +Statement [811] (byte~) gfx_init_screen3::$1 ← (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:142 [ gfx_init_screen3::cy#4 gfx_init_screen3::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:143 [ gfx_init_screen3::cx#2 gfx_init_screen3::cx#1 ] -Statement [812] (byte~) gfx_init_screen3::$2 ? (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ) always clobbers reg byte a +Statement [812] (byte~) gfx_init_screen3::$2 ← (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:343 [ gfx_init_screen3::$1 ] -Statement [814] *((byte*) gfx_init_screen3::ch#2) ? (byte~) gfx_init_screen3::$3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ) always clobbers reg byte y +Statement [814] *((byte*) gfx_init_screen3::ch#2) ← (byte~) gfx_init_screen3::$3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:142 [ gfx_init_screen3::cy#4 gfx_init_screen3::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:143 [ gfx_init_screen3::cx#2 gfx_init_screen3::cx#1 ] -Statement [824] (byte~) gfx_init_screen2::$0 ? (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ) always clobbers reg byte a +Statement [824] (byte~) gfx_init_screen2::$0 ← (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:146 [ gfx_init_screen2::cy#4 gfx_init_screen2::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:147 [ gfx_init_screen2::cx#2 gfx_init_screen2::cx#1 ] -Statement [826] (byte) gfx_init_screen2::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ) always clobbers reg byte a +Statement [826] (byte) gfx_init_screen2::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:347 [ gfx_init_screen2::col#0 ] -Statement [827] (byte~) gfx_init_screen2::$3 ? (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ) always clobbers reg byte a +Statement [827] (byte~) gfx_init_screen2::$3 ← (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:348 [ gfx_init_screen2::col2#0 ] -Statement [829] *((byte*) gfx_init_screen2::ch#2) ? (byte~) gfx_init_screen2::$4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ) always clobbers reg byte y +Statement [829] *((byte*) gfx_init_screen2::ch#2) ← (byte~) gfx_init_screen2::$4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:146 [ gfx_init_screen2::cy#4 gfx_init_screen2::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:147 [ gfx_init_screen2::cx#2 gfx_init_screen2::cx#1 ] -Statement [839] (byte~) gfx_init_screen1::$0 ? (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ) always clobbers reg byte a +Statement [839] (byte~) gfx_init_screen1::$0 ← (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:150 [ gfx_init_screen1::cy#4 gfx_init_screen1::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:151 [ gfx_init_screen1::cx#2 gfx_init_screen1::cx#1 ] -Statement [841] *((byte*) gfx_init_screen1::ch#2) ? (byte~) gfx_init_screen1::$1 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ) always clobbers reg byte y +Statement [841] *((byte*) gfx_init_screen1::ch#2) ← (byte~) gfx_init_screen1::$1 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:150 [ gfx_init_screen1::cy#4 gfx_init_screen1::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:151 [ gfx_init_screen1::cx#2 gfx_init_screen1::cx#1 ] -Statement [852] (byte~) gfx_init_screen0::$1 ? (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ) always clobbers reg byte a +Statement [852] (byte~) gfx_init_screen0::$1 ← (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:154 [ gfx_init_screen0::cy#4 gfx_init_screen0::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:155 [ gfx_init_screen0::cx#2 gfx_init_screen0::cx#1 ] -Statement [853] (byte~) gfx_init_screen0::$2 ? (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ) always clobbers reg byte a +Statement [853] (byte~) gfx_init_screen0::$2 ← (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:354 [ gfx_init_screen0::$1 ] -Statement [855] *((byte*) gfx_init_screen0::ch#2) ? (byte~) gfx_init_screen0::$3 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ) always clobbers reg byte y +Statement [855] *((byte*) gfx_init_screen0::ch#2) ← (byte~) gfx_init_screen0::$3 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:154 [ gfx_init_screen0::cy#4 gfx_init_screen0::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:155 [ gfx_init_screen0::cx#2 gfx_init_screen0::cx#1 ] -Statement [862] *((const byte*) CIA1_PORT_A_DDR#0) ? (byte/word/signed word/dword/signed dword) $ff [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a -Statement [863] *((const byte*) CIA1_PORT_B_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a -Statement [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [862] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) $ff [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a +Statement [863] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a +Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a Statement [16] if(*((const byte*) form_ctrl_line#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@1 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a Statement [19] if(*((const byte*) form_ctrl_borof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@2 [ keyboard_events_size#24 gfx_mode::dtv_control#14 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#14 ] ) always clobbers reg byte a -Statement [20] (byte) gfx_mode::dtv_control#2 ? (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#2 ] ) always clobbers reg byte a +Statement [20] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#2 ] ) always clobbers reg byte a Statement [22] if(*((const byte*) form_ctrl_hicol#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@3 [ keyboard_events_size#24 gfx_mode::dtv_control#15 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#15 ] ) always clobbers reg byte a -Statement [23] (byte) gfx_mode::dtv_control#3 ? (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ keyboard_events_size#24 gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#3 ] ) always clobbers reg byte a +Statement [23] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 [ keyboard_events_size#24 gfx_mode::dtv_control#3 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#3 ] ) always clobbers reg byte a Statement [25] if(*((const byte*) form_ctrl_overs#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@4 [ keyboard_events_size#24 gfx_mode::dtv_control#10 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#10 ] ) always clobbers reg byte a -Statement [26] (byte) gfx_mode::dtv_control#4 ? (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ keyboard_events_size#24 gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#4 ] ) always clobbers reg byte a +Statement [26] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 [ keyboard_events_size#24 gfx_mode::dtv_control#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#4 ] ) always clobbers reg byte a Statement [28] if(*((const byte*) form_ctrl_colof#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@5 [ keyboard_events_size#24 gfx_mode::dtv_control#11 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#11 ] ) always clobbers reg byte a -Statement [29] (byte) gfx_mode::dtv_control#5 ? (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#5 ] ) always clobbers reg byte a +Statement [29] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 [ keyboard_events_size#24 gfx_mode::dtv_control#5 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#5 ] ) always clobbers reg byte a Statement [31] if(*((const byte*) form_ctrl_chunk#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@6 [ keyboard_events_size#24 gfx_mode::dtv_control#13 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#13 ] ) always clobbers reg byte a -Statement [32] (byte) gfx_mode::dtv_control#6 ? (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ keyboard_events_size#24 gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#6 ] ) always clobbers reg byte a +Statement [32] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 [ keyboard_events_size#24 gfx_mode::dtv_control#6 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::dtv_control#6 ] ) always clobbers reg byte a Statement [35] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a Statement [38] if(*((const byte*) form_ctrl_bmm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@8 [ keyboard_events_size#24 gfx_mode::vic_control#5 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_control#5 ] ) always clobbers reg byte a -Statement [39] (byte) gfx_mode::vic_control#2 ? (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ keyboard_events_size#24 gfx_mode::vic_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_control#2 ] ) always clobbers reg byte a +Statement [39] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 [ keyboard_events_size#24 gfx_mode::vic_control#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_control#2 ] ) always clobbers reg byte a Statement [42] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [46] (byte~) gfx_mode::$20 ? *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$20 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$20 ] ) always clobbers reg byte a -Statement [47] (byte) gfx_mode::plane_a_offs#0 ? (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ) always clobbers reg byte a -Statement [50] (dword) get_plane::return#16 ? (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ) always clobbers reg byte a -Statement [51] (dword~) gfx_mode::$22 ? (dword) get_plane::return#16 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ) always clobbers reg byte a -Statement [52] (dword) gfx_mode::plane_a#0 ? (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 ] ) always clobbers reg byte a -Statement [53] (word~) gfx_mode::$24 ? < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ) always clobbers reg byte a -Statement [54] (byte~) gfx_mode::$25 ? < (word~) gfx_mode::$24 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ) always clobbers reg byte a -Statement [56] (word~) gfx_mode::$26 ? < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ) always clobbers reg byte a -Statement [57] (byte~) gfx_mode::$27 ? > (word~) gfx_mode::$26 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ) always clobbers reg byte a -Statement [59] (word~) gfx_mode::$28 ? > (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::$28 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$28 ] ) always clobbers reg byte a -Statement [60] (byte~) gfx_mode::$29 ? < (word~) gfx_mode::$28 [ keyboard_events_size#24 gfx_mode::$29 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$29 ] ) always clobbers reg byte a -Statement [62] (byte~) gfx_mode::$30 ? *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$30 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$30 ] ) always clobbers reg byte a -Statement [63] (byte~) gfx_mode::$31 ? (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) [ keyboard_events_size#24 gfx_mode::$31 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$31 ] ) always clobbers reg byte a -Statement [65] (byte~) gfx_mode::$32 ? *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$32 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$32 ] ) always clobbers reg byte a -Statement [66] (byte~) gfx_mode::$33 ? (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$33 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$33 ] ) always clobbers reg byte a -Statement [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [69] (byte~) gfx_mode::$34 ? *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$34 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$34 ] ) always clobbers reg byte a -Statement [70] (byte) gfx_mode::plane_b_offs#0 ? (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ) always clobbers reg byte a -Statement [73] (dword) get_plane::return#17 ? (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ) always clobbers reg byte a -Statement [74] (dword~) gfx_mode::$36 ? (dword) get_plane::return#17 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ) always clobbers reg byte a -Statement [75] (dword) gfx_mode::plane_b#0 ? (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 ] ) always clobbers reg byte a -Statement [76] (word~) gfx_mode::$38 ? < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ) always clobbers reg byte a -Statement [77] (byte~) gfx_mode::$39 ? < (word~) gfx_mode::$38 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ) always clobbers reg byte a -Statement [79] (word~) gfx_mode::$40 ? < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ) always clobbers reg byte a -Statement [80] (byte~) gfx_mode::$41 ? > (word~) gfx_mode::$40 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ) always clobbers reg byte a -Statement [82] (word~) gfx_mode::$42 ? > (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::$42 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$42 ] ) always clobbers reg byte a -Statement [83] (byte~) gfx_mode::$43 ? < (word~) gfx_mode::$42 [ keyboard_events_size#24 gfx_mode::$43 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$43 ] ) always clobbers reg byte a -Statement [85] (byte~) gfx_mode::$44 ? *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$44 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$44 ] ) always clobbers reg byte a -Statement [86] (byte~) gfx_mode::$45 ? (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) [ keyboard_events_size#24 gfx_mode::$45 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$45 ] ) always clobbers reg byte a -Statement [88] (byte~) gfx_mode::$46 ? *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$46 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$46 ] ) always clobbers reg byte a -Statement [89] (byte~) gfx_mode::$47 ? (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$47 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$47 ] ) always clobbers reg byte a -Statement [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [92] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [93] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [96] (byte*) get_vic_screen::return#10 ? (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#10 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#10 ] ) always clobbers reg byte a -Statement [97] (byte*~) gfx_mode::$52 ? (byte*) get_vic_screen::return#10 [ keyboard_events_size#24 gfx_mode::$52 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$52 ] ) always clobbers reg byte a -Statement [98] (word~) gfx_mode::$54 ? (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$54 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$54 ] ) always clobbers reg byte a -Statement [99] (word~) gfx_mode::$55 ? (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 [ keyboard_events_size#24 gfx_mode::$55 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$55 ] ) always clobbers reg byte a reg byte y -Statement [100] (byte~) gfx_mode::$56 ? ((byte)) (word~) gfx_mode::$55 [ keyboard_events_size#24 gfx_mode::$56 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 ] ) always clobbers reg byte a -Statement [103] (byte*) get_vic_charset::return#4 ? (byte*) get_vic_charset::return#2 [ keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ) always clobbers reg byte a -Statement [104] (byte*~) gfx_mode::$57 ? (byte*) get_vic_charset::return#4 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ) always clobbers reg byte a -Statement [105] (word~) gfx_mode::$59 ? (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ) always clobbers reg byte a -Statement [106] (byte~) gfx_mode::$60 ? > (word~) gfx_mode::$59 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ) always clobbers reg byte a -Statement [107] (byte~) gfx_mode::$61 ? (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ) always clobbers reg byte a -Statement [112] (byte*) get_vic_screen::return#11 ? (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#11 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#11 ] ) always clobbers reg byte a -Statement [113] (byte*) gfx_mode::vic_colors#0 ? (byte*) get_vic_screen::return#11 [ keyboard_events_size#24 gfx_mode::vic_colors#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_colors#0 ] ) always clobbers reg byte a -Statement [116] *((byte*) gfx_mode::col#2) ? *((byte*) gfx_mode::vic_colors#2) [ keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ) always clobbers reg byte a reg byte y -Statement [123] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [124] (byte~) gfx_mode::$64 ? *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$64 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$64 ] ) always clobbers reg byte a -Statement [125] (byte~) gfx_mode::$65 ? (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) [ keyboard_events_size#24 gfx_mode::$65 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$65 ] ) always clobbers reg byte a -Statement [127] (byte~) gfx_mode::$66 ? *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$66 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$66 ] ) always clobbers reg byte a -Statement [128] (byte~) gfx_mode::$67 ? (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) [ keyboard_events_size#24 gfx_mode::$67 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$67 ] ) always clobbers reg byte a -Statement [130] (byte~) gfx_mode::$68 ? *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$68 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$68 ] ) always clobbers reg byte a -Statement [131] (byte~) gfx_mode::$69 ? (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) [ keyboard_events_size#24 gfx_mode::$69 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$69 ] ) always clobbers reg byte a -Statement [133] (byte~) gfx_mode::$70 ? *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$70 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$70 ] ) always clobbers reg byte a -Statement [134] (byte~) gfx_mode::$71 ? (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) [ keyboard_events_size#24 gfx_mode::$71 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$71 ] ) always clobbers reg byte a +Statement [46] (byte~) gfx_mode::$20 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$20 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$20 ] ) always clobbers reg byte a +Statement [47] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 ] ) always clobbers reg byte a +Statement [50] (dword) get_plane::return#16 ← (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 get_plane::return#16 ] ) always clobbers reg byte a +Statement [51] (dword~) gfx_mode::$22 ← (dword) get_plane::return#16 [ keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a_offs#0 gfx_mode::$22 ] ) always clobbers reg byte a +Statement [52] (dword) gfx_mode::plane_a#0 ← (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 ] ) always clobbers reg byte a +Statement [53] (word~) gfx_mode::$24 ← < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$24 ] ) always clobbers reg byte a +Statement [54] (byte~) gfx_mode::$25 ← < (word~) gfx_mode::$24 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$25 ] ) always clobbers reg byte a +Statement [56] (word~) gfx_mode::$26 ← < (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$26 ] ) always clobbers reg byte a +Statement [57] (byte~) gfx_mode::$27 ← > (word~) gfx_mode::$26 [ keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_a#0 gfx_mode::$27 ] ) always clobbers reg byte a +Statement [59] (word~) gfx_mode::$28 ← > (dword) gfx_mode::plane_a#0 [ keyboard_events_size#24 gfx_mode::$28 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$28 ] ) always clobbers reg byte a +Statement [60] (byte~) gfx_mode::$29 ← < (word~) gfx_mode::$28 [ keyboard_events_size#24 gfx_mode::$29 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$29 ] ) always clobbers reg byte a +Statement [62] (byte~) gfx_mode::$30 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$30 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$30 ] ) always clobbers reg byte a +Statement [63] (byte~) gfx_mode::$31 ← (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) [ keyboard_events_size#24 gfx_mode::$31 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$31 ] ) always clobbers reg byte a +Statement [65] (byte~) gfx_mode::$32 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$32 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$32 ] ) always clobbers reg byte a +Statement [66] (byte~) gfx_mode::$33 ← (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$33 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$33 ] ) always clobbers reg byte a +Statement [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [69] (byte~) gfx_mode::$34 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$34 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$34 ] ) always clobbers reg byte a +Statement [70] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 ] ) always clobbers reg byte a +Statement [73] (dword) get_plane::return#17 ← (dword) get_plane::return#14 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 get_plane::return#17 ] ) always clobbers reg byte a +Statement [74] (dword~) gfx_mode::$36 ← (dword) get_plane::return#17 [ keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b_offs#0 gfx_mode::$36 ] ) always clobbers reg byte a +Statement [75] (dword) gfx_mode::plane_b#0 ← (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 ] ) always clobbers reg byte a +Statement [76] (word~) gfx_mode::$38 ← < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$38 ] ) always clobbers reg byte a +Statement [77] (byte~) gfx_mode::$39 ← < (word~) gfx_mode::$38 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$39 ] ) always clobbers reg byte a +Statement [79] (word~) gfx_mode::$40 ← < (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$40 ] ) always clobbers reg byte a +Statement [80] (byte~) gfx_mode::$41 ← > (word~) gfx_mode::$40 [ keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::plane_b#0 gfx_mode::$41 ] ) always clobbers reg byte a +Statement [82] (word~) gfx_mode::$42 ← > (dword) gfx_mode::plane_b#0 [ keyboard_events_size#24 gfx_mode::$42 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$42 ] ) always clobbers reg byte a +Statement [83] (byte~) gfx_mode::$43 ← < (word~) gfx_mode::$42 [ keyboard_events_size#24 gfx_mode::$43 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$43 ] ) always clobbers reg byte a +Statement [85] (byte~) gfx_mode::$44 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$44 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$44 ] ) always clobbers reg byte a +Statement [86] (byte~) gfx_mode::$45 ← (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) [ keyboard_events_size#24 gfx_mode::$45 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$45 ] ) always clobbers reg byte a +Statement [88] (byte~) gfx_mode::$46 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$46 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$46 ] ) always clobbers reg byte a +Statement [89] (byte~) gfx_mode::$47 ← (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) [ keyboard_events_size#24 gfx_mode::$47 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$47 ] ) always clobbers reg byte a +Statement [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [92] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [93] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [96] (byte*) get_vic_screen::return#10 ← (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#10 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#10 ] ) always clobbers reg byte a +Statement [97] (byte*~) gfx_mode::$52 ← (byte*) get_vic_screen::return#10 [ keyboard_events_size#24 gfx_mode::$52 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$52 ] ) always clobbers reg byte a +Statement [98] (word~) gfx_mode::$54 ← (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$54 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$54 ] ) always clobbers reg byte a +Statement [99] (word~) gfx_mode::$55 ← (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 [ keyboard_events_size#24 gfx_mode::$55 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$55 ] ) always clobbers reg byte a reg byte y +Statement [100] (byte~) gfx_mode::$56 ← ((byte)) (word~) gfx_mode::$55 [ keyboard_events_size#24 gfx_mode::$56 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 ] ) always clobbers reg byte a +Statement [103] (byte*) get_vic_charset::return#4 ← (byte*) get_vic_charset::return#2 [ keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 get_vic_charset::return#4 ] ) always clobbers reg byte a +Statement [104] (byte*~) gfx_mode::$57 ← (byte*) get_vic_charset::return#4 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$57 ] ) always clobbers reg byte a +Statement [105] (word~) gfx_mode::$59 ← (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$59 ] ) always clobbers reg byte a +Statement [106] (byte~) gfx_mode::$60 ← > (word~) gfx_mode::$59 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$60 ] ) always clobbers reg byte a +Statement [107] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 [ keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$56 gfx_mode::$61 ] ) always clobbers reg byte a +Statement [112] (byte*) get_vic_screen::return#11 ← (byte*) get_vic_screen::return#5 [ keyboard_events_size#24 get_vic_screen::return#11 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 get_vic_screen::return#11 ] ) always clobbers reg byte a +Statement [113] (byte*) gfx_mode::vic_colors#0 ← (byte*) get_vic_screen::return#11 [ keyboard_events_size#24 gfx_mode::vic_colors#0 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::vic_colors#0 ] ) always clobbers reg byte a +Statement [116] *((byte*) gfx_mode::col#2) ← *((byte*) gfx_mode::vic_colors#2) [ keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::cy#4 gfx_mode::vic_colors#2 gfx_mode::col#2 gfx_mode::cx#2 ] ) always clobbers reg byte a reg byte y +Statement [123] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a +Statement [124] (byte~) gfx_mode::$64 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$64 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$64 ] ) always clobbers reg byte a +Statement [125] (byte~) gfx_mode::$65 ← (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) [ keyboard_events_size#24 gfx_mode::$65 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$65 ] ) always clobbers reg byte a +Statement [127] (byte~) gfx_mode::$66 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$66 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$66 ] ) always clobbers reg byte a +Statement [128] (byte~) gfx_mode::$67 ← (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) [ keyboard_events_size#24 gfx_mode::$67 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$67 ] ) always clobbers reg byte a +Statement [130] (byte~) gfx_mode::$68 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$68 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$68 ] ) always clobbers reg byte a +Statement [131] (byte~) gfx_mode::$69 ← (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) [ keyboard_events_size#24 gfx_mode::$69 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$69 ] ) always clobbers reg byte a +Statement [133] (byte~) gfx_mode::$70 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ keyboard_events_size#24 gfx_mode::$70 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$70 ] ) always clobbers reg byte a +Statement [134] (byte~) gfx_mode::$71 ← (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) [ keyboard_events_size#24 gfx_mode::$71 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::$71 ] ) always clobbers reg byte a Statement [136] if(*((const byte*) form_dtv_palet#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@24 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a Statement [141] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto gfx_mode::@25 [ keyboard_events_size#24 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 ] ) always clobbers reg byte a -Statement [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) [ keyboard_events_size#24 gfx_mode::i#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::i#2 ] ) always clobbers reg byte a +Statement [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) [ keyboard_events_size#24 gfx_mode::i#2 ] ( main:2::gfx_mode:15 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#24 gfx_mode::i#2 ] ) always clobbers reg byte a Statement [165] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_event_scan::row_scan#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_event_scan::row_scan#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a -Statement [166] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a -Statement [181] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#100 keyboard_modifiers#3 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#3 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#3 ] ) always clobbers reg byte a -Statement [187] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#100 keyboard_modifiers#4 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#4 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#4 ] ) always clobbers reg byte a -Statement [193] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#100 keyboard_modifiers#5 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#5 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#5 ] ) always clobbers reg byte a -Statement [197] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ) always clobbers reg byte a -Statement [201] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a -Statement [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a -Statement [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ) always clobbers reg byte a -Statement [210] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ) always clobbers reg byte a -Statement [214] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) always clobbers reg byte a -Statement [216] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a -Statement [217] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a -Statement [219] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] ) always clobbers reg byte a -Statement [220] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a -Statement [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [273] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [274] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [275] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [276] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [277] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [278] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [279] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [280] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [281] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [282] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [283] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a -Statement [288] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a -Statement [289] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [166] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_events_size#119 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a +Statement [181] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#100 keyboard_modifiers#3 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#3 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [187] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#100 keyboard_modifiers#4 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#4 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [193] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#100 keyboard_modifiers#5 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#5 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#5 ] ) always clobbers reg byte a +Statement [197] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$15 ] ) always clobbers reg byte a +Statement [201] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 ] ) always clobbers reg byte a +Statement [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#118 ] ) always clobbers reg byte a +Statement [210] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ( main:2::gfx_mode:15::keyboard_event_scan:143 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#18 keyboard_event_scan::$23 ] ) always clobbers reg byte a +Statement [214] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::keycode#4 keyboard_event_pressed::$0 ] ) always clobbers reg byte a +Statement [216] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Statement [217] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#10 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:171 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:171 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:177 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:177 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#18 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:183 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:183 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#19 keyboard_event_pressed::return#10 ] main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_event_pressed:189 [ form_cursor_count#16 form_field_idx#18 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_event_pressed:189 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_events_size#100 keyboard_modifiers#20 keyboard_event_pressed::return#10 ] ) always clobbers reg byte a +Statement [219] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 ] ) always clobbers reg byte a +Statement [220] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::gfx_mode:15::keyboard_event_scan:143::keyboard_matrix_read:162 [ form_cursor_count#16 form_field_idx#18 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] main:2::form_mode:13::form_control:294::keyboard_event_scan:375::keyboard_matrix_read:162 [ form_mode::preset_current#6 form_field_idx#28 form_control::field#0 form_cursor_count#15 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#119 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [273] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [274] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [275] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [276] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [277] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [278] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [279] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [280] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [281] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [282] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) FORM_SCREEN#0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [283] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_mode::i#2 ] ) always clobbers reg byte a +Statement [288] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a +Statement [289] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ( main:2::form_mode:13 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 ] ) always clobbers reg byte a Statement [292] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto form_mode::@4 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_mode::preset_current#6 ] ( main:2::form_mode:13 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_mode::preset_current#6 ] ) always clobbers reg byte a -Statement [320] (byte*) print_str_at::str#1 ? (byte*) render_preset_name::name#13 [ print_str_at::str#1 ] ( main:2::form_mode:13::render_preset_name:271 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#1 ] main:2::form_mode:13::render_preset_name:305 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#1 ] ) always clobbers reg byte a +Statement [320] (byte*) print_str_at::str#1 ← (byte*) render_preset_name::name#13 [ print_str_at::str#1 ] ( main:2::form_mode:13::render_preset_name:271 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#1 ] main:2::form_mode:13::render_preset_name:305 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#1 ] ) always clobbers reg byte a Statement [325] if(*((byte*) print_str_at::str#2)!=(byte) '@') goto print_str_at::@2 [ print_str_at::str#2 print_str_at::at#2 ] ( main:2::form_mode:13::render_preset_name:271::print_str_at:321 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#2 print_str_at::at#2 ] main:2::form_mode:13::render_preset_name:305::print_str_at:321 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#2 print_str_at::at#2 ] ) always clobbers reg byte a reg byte y -Statement [327] *((byte*) print_str_at::at#2) ? *((byte*) print_str_at::str#2) [ print_str_at::str#2 print_str_at::at#2 ] ( main:2::form_mode:13::render_preset_name:271::print_str_at:321 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#2 print_str_at::at#2 ] main:2::form_mode:13::render_preset_name:305::print_str_at:321 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#2 print_str_at::at#2 ] ) always clobbers reg byte a reg byte y -Statement [334] (byte*) form_field_ptr::return#2 ? (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a -Statement [335] (byte*) form_render_values::field#0 ? (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_render_values::field#0 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a -Statement [336] *((byte*) form_render_values::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y -Statement [342] (word~) form_field_ptr::$2 ? *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a -Statement [344] (byte*) form_field_ptr::return#0 ? (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) always clobbers reg byte a -Statement [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ? *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) [ apply_preset::preset#14 apply_preset::i#2 ] ( main:2::form_mode:13::apply_preset:301 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 apply_preset::preset#14 apply_preset::i#2 ] ) always clobbers reg byte a -Statement [366] (byte*) form_field_ptr::return#3 ? (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) always clobbers reg byte a -Statement [367] (byte*) form_control::field#0 ? (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) always clobbers reg byte a +Statement [327] *((byte*) print_str_at::at#2) ← *((byte*) print_str_at::str#2) [ print_str_at::str#2 print_str_at::at#2 ] ( main:2::form_mode:13::render_preset_name:271::print_str_at:321 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_at::str#2 print_str_at::at#2 ] main:2::form_mode:13::render_preset_name:305::print_str_at:321 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 print_str_at::str#2 print_str_at::at#2 ] ) always clobbers reg byte a reg byte y +Statement [334] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 [ form_render_values::idx#2 form_field_ptr::return#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#2 ] ) always clobbers reg byte a +Statement [335] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 [ form_render_values::idx#2 form_render_values::field#0 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_render_values::field#0 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_render_values::field#0 ] ) always clobbers reg byte a +Statement [336] *((byte*) form_render_values::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) [ form_render_values::idx#2 ] ( main:2::form_mode:13::form_render_values:269 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 ] main:2::form_mode:13::form_render_values:303 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 ] ) always clobbers reg byte a reg byte y +Statement [342] (word~) form_field_ptr::$2 ← *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) [ form_field_ptr::field_idx#2 form_field_ptr::$2 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::field_idx#2 form_field_ptr::$2 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::field_idx#2 form_field_ptr::$2 ] ) always clobbers reg byte a +Statement [344] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 [ form_field_ptr::return#0 ] ( main:2::form_mode:13::form_render_values:269::form_field_ptr:333 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_render_values:303::form_field_ptr:333 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 form_mode::preset_current#1 form_render_values::idx#2 form_field_ptr::return#0 ] main:2::form_mode:13::form_control:294::form_field_ptr:365 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#0 ] ) always clobbers reg byte a +Statement [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ← *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) [ apply_preset::preset#14 apply_preset::i#2 ] ( main:2::form_mode:13::apply_preset:301 [ form_cursor_count#16 keyboard_events_size#24 form_field_idx#18 apply_preset::preset#14 apply_preset::i#2 ] ) always clobbers reg byte a +Statement [366] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_field_ptr::return#3 ] ) always clobbers reg byte a +Statement [367] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 [ keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_cursor_count#21 form_field_idx#28 form_control::field#0 ] ) always clobbers reg byte a Statement [371] if((signed byte) form_cursor_count#15<(const signed byte) FORM_CURSOR_BLINK#0/(byte/signed byte/word/signed word/dword/signed dword) 2) goto form_control::@2 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [372] (byte~) form_control::$13 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ) always clobbers reg byte a reg byte y -Statement [373] *((byte*) form_control::field#0) ? (byte~) form_control::$13 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y -Statement [381] (byte~) form_control::$15 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ) always clobbers reg byte a reg byte y -Statement [382] *((byte*) form_control::field#0) ? (byte~) form_control::$15 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) always clobbers reg byte y -Statement [383] (byte~) form_control::$16 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ) always clobbers reg byte a -Statement [395] (byte~) form_control::$24 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) always clobbers reg byte a +Statement [372] (byte~) form_control::$13 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$13 ] ) always clobbers reg byte a reg byte y +Statement [373] *((byte*) form_control::field#0) ← (byte~) form_control::$13 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [381] (byte~) form_control::$15 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 form_control::field#0 form_control::$15 ] ) always clobbers reg byte a reg byte y +Statement [382] *((byte*) form_control::field#0) ← (byte~) form_control::$15 [ keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 keyboard_modifiers#21 form_field_idx#28 ] ) always clobbers reg byte y +Statement [383] (byte~) form_control::$16 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::$16 ] ) always clobbers reg byte a +Statement [395] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$24 ] ) always clobbers reg byte a Statement [398] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@15 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [400] *((byte*) form_control::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y +Statement [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [400] *((byte*) form_control::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) [ keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y Statement [402] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@15 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a reg byte y -Statement [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a -Statement [406] (byte/word/dword~) form_control::$14 ? *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ) always clobbers reg byte a reg byte y -Statement [407] *((byte*) form_control::field#0) ? (byte/word/dword~) form_control::$14 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y -Statement [415] (byte*) form_set_screen::line#1 ? (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_mode:13::form_set_screen:267 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a -Statement [420] (byte*~) print_char_cursor#77 ? (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ) always clobbers reg byte a +Statement [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#24 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte a +Statement [406] (byte/word/dword~) form_control::$14 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 form_control::$14 ] ) always clobbers reg byte a reg byte y +Statement [407] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$14 [ keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ( main:2::form_mode:13::form_control:294 [ form_mode::preset_current#6 keyboard_events_size#47 form_field_idx#28 form_control::field#0 form_cursor_count#15 ] ) always clobbers reg byte y +Statement [415] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ form_set_screen::y#2 form_set_screen::line#1 ] ( main:2::form_mode:13::form_set_screen:267 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 form_set_screen::y#2 form_set_screen::line#1 ] ) always clobbers reg byte a +Statement [420] (byte*~) print_char_cursor#77 ← (byte*) print_set_screen::screen#2 [ print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#5 print_char_cursor#77 print_set_screen::screen#2 ] ) always clobbers reg byte a Statement [422] if(*((byte*) print_str_lines::str#3)!=(byte) '@') goto print_str_lines::@2 [ print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#3 print_char_cursor#22 print_line_cursor#2 ] ) always clobbers reg byte a reg byte y -Statement [425] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y -Statement [428] *((byte*) print_char_cursor#20) ? (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte y -Statement [434] (byte*~) print_char_cursor#78 ? (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ) always clobbers reg byte a -Statement [437] (byte*) print_line_cursor#22 ? (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_mode:13::print_str_lines:259::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_mode:13::print_str_lines:265::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a +Statement [425] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) [ print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#4 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y +Statement [428] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 [ print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_line_cursor#2 print_str_lines::str#0 print_char_cursor#20 print_str_lines::ch#0 ] ) always clobbers reg byte y +Statement [434] (byte*~) print_char_cursor#78 ← (byte*) print_line_cursor#22 [ print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ( main:2::form_mode:13::print_str_lines:259 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] main:2::form_mode:13::print_str_lines:265 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_char_cursor#78 print_line_cursor#22 ] ) always clobbers reg byte a +Statement [437] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_mode:13::print_str_lines:259::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_mode:13::print_str_lines:265::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a Statement [438] if((byte*) print_line_cursor#22<(byte*) print_char_cursor#38) goto print_ln::@1 [ print_line_cursor#22 print_char_cursor#38 ] ( main:2::form_mode:13::print_str_lines:259::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] main:2::form_mode:13::print_str_lines:265::print_ln:433 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_str_lines::str#0 print_line_cursor#22 print_char_cursor#38 ] ) always clobbers reg byte a -Statement [440] (byte*) print_cls::sc#0 ? (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] ) always clobbers reg byte a -Statement [442] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y -Statement [444] (byte*~) print_cls::$0 ? (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) always clobbers reg byte a +Statement [440] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 [ print_set_screen::screen#2 print_cls::sc#0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#0 ] ) always clobbers reg byte a +Statement [442] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_set_screen::screen#2 print_cls::sc#2 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [444] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 [ print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 print_cls::$0 ] ) always clobbers reg byte a Statement [445] if((byte*) print_cls::sc#1!=(byte*~) print_cls::$0) goto print_cls::@1 [ print_set_screen::screen#2 print_cls::sc#1 ] ( main:2::form_mode:13::print_cls:257 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 ] main:2::form_mode:13::print_cls:263 [ form_cursor_count#1 keyboard_events_size#27 form_field_idx#1 print_set_screen::screen#2 print_cls::sc#1 ] ) always clobbers reg byte a -Statement [484] (dword~) gfx_init_plane_fill::$0 ? (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ) always clobbers reg byte a -Statement [485] (word~) gfx_init_plane_fill::$1 ? > (dword~) gfx_init_plane_fill::$0 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ) always clobbers reg byte a -Statement [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ? < (word~) gfx_init_plane_fill::$1 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ) always clobbers reg byte a -Statement [490] (word~) gfx_init_plane_fill::$4 ? < (dword) gfx_init_plane_fill::plane_addr#3 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ) always clobbers reg byte a -Statement [491] (word~) gfx_init_plane_fill::$5 ? (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ) always clobbers reg byte a -Statement [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ? (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ) always clobbers reg byte a -Statement [493] (byte*~) gfx_init_plane_fill::gfxb#6 ? (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ) always clobbers reg byte a -Statement [496] *((byte*) gfx_init_plane_fill::gfxb#2) ? (byte) gfx_init_plane_fill::fill#6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [484] (dword~) gfx_init_plane_fill::$0 ← (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$0 ] ) always clobbers reg byte a +Statement [485] (word~) gfx_init_plane_fill::$1 ← > (dword~) gfx_init_plane_fill::$0 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$1 ] ) always clobbers reg byte a +Statement [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ← < (word~) gfx_init_plane_fill::$1 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::plane_addr#3 gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxbCpuBank#0 ] ) always clobbers reg byte a +Statement [490] (word~) gfx_init_plane_fill::$4 ← < (dword) gfx_init_plane_fill::plane_addr#3 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$4 ] ) always clobbers reg byte a +Statement [491] (word~) gfx_init_plane_fill::$5 ← (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$5 ] ) always clobbers reg byte a +Statement [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ← (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::$6 ] ) always clobbers reg byte a +Statement [493] (byte*~) gfx_init_plane_fill::gfxb#6 ← (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::gfxb#6 ] ) always clobbers reg byte a +Statement [496] *((byte*) gfx_init_plane_fill::gfxb#2) ← (byte) gfx_init_plane_fill::fill#6 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_full:478::gfx_init_plane_fill:481 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_blank:476::gfx_init_plane_fill:510 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] main:2::gfx_init:10::gfx_init_plane_vertical2:474::gfx_init_plane_fill:513 [ gfx_init_plane_fill::fill#6 gfx_init_plane_fill::by#4 gfx_init_plane_fill::gfxb#2 gfx_init_plane_fill::bx#2 ] ) always clobbers reg byte a reg byte y Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a -Statement [519] (byte~) gfx_init_plane_horisontal2::$8 ? (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ) always clobbers reg byte a -Statement [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ? *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_vertical:470 [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ) always clobbers reg byte a reg byte y -Statement [547] (byte~) gfx_init_plane_horisontal::$8 ? (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 gfx_init_plane_horisontal::$8 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 gfx_init_plane_horisontal::$8 ] ) always clobbers reg byte a -Statement [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [563] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a -Statement [566] (byte) gfx_init_plane_charset8::bits#0 ? *((byte*) gfx_init_plane_charset8::chargen#2) [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ) always clobbers reg byte a reg byte y -Statement [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ? (byte) gfx_init_plane_charset8::c#2 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ) always clobbers reg byte y -Statement [583] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a +Statement [519] (byte~) gfx_init_plane_horisontal2::$8 ← (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 gfx_init_plane_horisontal2::$8 ] ) always clobbers reg byte a +Statement [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ← *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal2:472 [ gfx_init_plane_horisontal2::ay#4 gfx_init_plane_horisontal2::gfxa#2 gfx_init_plane_horisontal2::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ( main:2::gfx_init:10::gfx_init_plane_vertical:470 [ gfx_init_plane_vertical::by#4 gfx_init_plane_vertical::gfxb#2 gfx_init_plane_vertical::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [547] (byte~) gfx_init_plane_horisontal::$8 ← (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 gfx_init_plane_horisontal::$8 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 gfx_init_plane_horisontal::$8 ] ) always clobbers reg byte a +Statement [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ( main:2::gfx_init:10::gfx_init_plane_horisontal:468 [ gfx_init_plane_horisontal::ay#4 gfx_init_plane_horisontal::gfxa#3 gfx_init_plane_horisontal::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [563] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a +Statement [566] (byte) gfx_init_plane_charset8::bits#0 ← *((byte*) gfx_init_plane_charset8::chargen#2) [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#2 gfx_init_plane_charset8::gfxa#5 gfx_init_plane_charset8::col#5 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#0 ] ) always clobbers reg byte a reg byte y +Statement [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ← (byte) gfx_init_plane_charset8::c#2 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ gfx_init_plane_charset8::ch#8 gfx_init_plane_charset8::chargen#1 gfx_init_plane_charset8::cr#6 gfx_init_plane_charset8::bits#2 gfx_init_plane_charset8::gfxa#2 gfx_init_plane_charset8::col#2 gfx_init_plane_charset8::cp#2 ] ) always clobbers reg byte y +Statement [583] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::gfx_init:10::gfx_init_plane_charset8:466 [ ] ) always clobbers reg byte a Statement [590] if((byte*) gfx_init_plane_8bppchunky::gfxb#3!=(word/dword/signed dword) $8000) goto gfx_init_plane_8bppchunky::@3 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#3 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxbCpuBank#4 ] ) always clobbers reg byte a -Statement [595] (word~) gfx_init_plane_8bppchunky::$9 ? (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ) always clobbers reg byte a -Statement [596] (byte) gfx_init_plane_8bppchunky::c#0 ? ((byte)) (word~) gfx_init_plane_8bppchunky::$9 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a -Statement [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ? (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y +Statement [595] (word~) gfx_init_plane_8bppchunky::$9 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::$9 ] ) always clobbers reg byte a +Statement [596] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$9 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 gfx_init_plane_8bppchunky::c#0 ] ) always clobbers reg byte a +Statement [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#2 gfx_init_plane_8bppchunky::gfxb#4 ] ) always clobbers reg byte y Statement [600] if((word) gfx_init_plane_8bppchunky::x#1!=(word/signed word/dword/signed dword) $140) goto gfx_init_plane_8bppchunky::@2 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ( main:2::gfx_init:10::gfx_init_plane_8bppchunky:464 [ gfx_init_plane_8bppchunky::y#6 gfx_init_plane_8bppchunky::gfxb#1 gfx_init_plane_8bppchunky::gfxbCpuBank#8 gfx_init_plane_8bppchunky::x#1 ] ) always clobbers reg byte a -Statement [620] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a -Statement [622] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a -Statement [637] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a -Statement [651] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a -Statement [653] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a -Statement [667] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a -Statement [682] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a -Statement [688] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a -Statement [691] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a -Statement [697] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a -Statement [698] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a -Statement [699] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a -Statement [700] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y -Statement [701] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 [ ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y -Statement [704] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a -Statement [710] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a -Statement [713] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a -Statement [719] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a -Statement [725] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a -Statement [728] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a -Statement [734] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a -Statement [740] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a -Statement [743] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a -Statement [748] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [749] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [752] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y -Statement [761] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ) always clobbers reg byte a -Statement [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) VIC_BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [771] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ) always clobbers reg byte a -Statement [777] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ) always clobbers reg byte a -Statement [779] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a -Statement [785] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $32 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a -Statement [788] *((byte*) gfx_init_charset::charset#2) ? *((byte*) gfx_init_charset::chargen#2) [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ( main:2::gfx_init:10::gfx_init_charset:460 [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ) always clobbers reg byte a reg byte y -Statement [795] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $37 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a -Statement [800] *((byte*) gfx_init_screen4::ch#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ( main:2::gfx_init:10::gfx_init_screen4:458 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ) always clobbers reg byte a reg byte y -Statement [810] (byte~) gfx_init_screen3::$0 ? (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$0 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$0 ] ) always clobbers reg byte a -Statement [811] (byte~) gfx_init_screen3::$1 ? (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ) always clobbers reg byte a -Statement [812] (byte~) gfx_init_screen3::$2 ? (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ) always clobbers reg byte a -Statement [814] *((byte*) gfx_init_screen3::ch#2) ? (byte~) gfx_init_screen3::$3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ) always clobbers reg byte y -Statement [824] (byte~) gfx_init_screen2::$0 ? (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ) always clobbers reg byte a -Statement [826] (byte) gfx_init_screen2::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ) always clobbers reg byte a -Statement [827] (byte~) gfx_init_screen2::$3 ? (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ) always clobbers reg byte a -Statement [829] *((byte*) gfx_init_screen2::ch#2) ? (byte~) gfx_init_screen2::$4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ) always clobbers reg byte y -Statement [839] (byte~) gfx_init_screen1::$0 ? (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ) always clobbers reg byte a -Statement [841] *((byte*) gfx_init_screen1::ch#2) ? (byte~) gfx_init_screen1::$1 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ) always clobbers reg byte y -Statement [851] (byte~) gfx_init_screen0::$0 ? (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$0 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$0 ] ) always clobbers reg byte a -Statement [852] (byte~) gfx_init_screen0::$1 ? (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ) always clobbers reg byte a -Statement [853] (byte~) gfx_init_screen0::$2 ? (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ) always clobbers reg byte a -Statement [855] *((byte*) gfx_init_screen0::ch#2) ? (byte~) gfx_init_screen0::$3 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ) always clobbers reg byte y -Statement [862] *((const byte*) CIA1_PORT_A_DDR#0) ? (byte/word/signed word/dword/signed dword) $ff [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a -Statement [863] *((const byte*) CIA1_PORT_B_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a +Statement [620] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a +Statement [622] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a +Statement [637] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a +Statement [651] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a +Statement [653] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a +Statement [667] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615 [ gfx_init_vic_bitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a +Statement [682] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a +Statement [688] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a +Statement [691] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a +Statement [697] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a +Statement [698] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a +Statement [699] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a +Statement [700] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y +Statement [701] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:636::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyi:680::bitmap_plot:686 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674::bitmap_plot:708 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666::bitmap_plot:723 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660::bitmap_plot:738 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y +Statement [704] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a +Statement [710] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a +Statement [713] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:629 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxi:674 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a +Statement [719] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a +Statement [725] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a +Statement [728] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:650 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_xdyd:666 [ gfx_init_vic_bitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a +Statement [734] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a +Statement [740] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a +Statement [743] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:644 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_line:615::bitmap_line_ydxd:660 [ gfx_init_vic_bitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a +Statement [748] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [749] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [752] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_clear:609 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [761] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ) always clobbers reg byte a +Statement [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) VIC_BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [771] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ) always clobbers reg byte a +Statement [777] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ) always clobbers reg byte a +Statement [779] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::gfx_init:10::gfx_init_vic_bitmap:462::bitmap_init:607 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [785] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $32 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a +Statement [788] *((byte*) gfx_init_charset::charset#2) ← *((byte*) gfx_init_charset::chargen#2) [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ( main:2::gfx_init:10::gfx_init_charset:460 [ gfx_init_charset::c#4 gfx_init_charset::chargen#2 gfx_init_charset::charset#2 gfx_init_charset::l#2 ] ) always clobbers reg byte a reg byte y +Statement [795] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $37 [ ] ( main:2::gfx_init:10::gfx_init_charset:460 [ ] ) always clobbers reg byte a +Statement [800] *((byte*) gfx_init_screen4::ch#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ( main:2::gfx_init:10::gfx_init_screen4:458 [ gfx_init_screen4::cy#4 gfx_init_screen4::ch#2 gfx_init_screen4::cx#2 ] ) always clobbers reg byte a reg byte y +Statement [810] (byte~) gfx_init_screen3::$0 ← (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$0 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$0 ] ) always clobbers reg byte a +Statement [811] (byte~) gfx_init_screen3::$1 ← (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 ] ) always clobbers reg byte a +Statement [812] (byte~) gfx_init_screen3::$2 ← (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 gfx_init_screen3::$1 gfx_init_screen3::$2 ] ) always clobbers reg byte a +Statement [814] *((byte*) gfx_init_screen3::ch#2) ← (byte~) gfx_init_screen3::$3 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen3:456 [ gfx_init_screen3::cy#4 gfx_init_screen3::cx#2 gfx_init_screen3::ch#2 ] ) always clobbers reg byte y +Statement [824] (byte~) gfx_init_screen2::$0 ← (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::$0 ] ) always clobbers reg byte a +Statement [826] (byte) gfx_init_screen2::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col#0 gfx_init_screen2::col2#0 ] ) always clobbers reg byte a +Statement [827] (byte~) gfx_init_screen2::$3 ← (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 gfx_init_screen2::col2#0 gfx_init_screen2::$3 ] ) always clobbers reg byte a +Statement [829] *((byte*) gfx_init_screen2::ch#2) ← (byte~) gfx_init_screen2::$4 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen2:454 [ gfx_init_screen2::cy#4 gfx_init_screen2::cx#2 gfx_init_screen2::ch#2 ] ) always clobbers reg byte y +Statement [839] (byte~) gfx_init_screen1::$0 ← (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 gfx_init_screen1::$0 ] ) always clobbers reg byte a +Statement [841] *((byte*) gfx_init_screen1::ch#2) ← (byte~) gfx_init_screen1::$1 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen1:452 [ gfx_init_screen1::cy#4 gfx_init_screen1::cx#2 gfx_init_screen1::ch#2 ] ) always clobbers reg byte y +Statement [851] (byte~) gfx_init_screen0::$0 ← (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$0 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$0 ] ) always clobbers reg byte a +Statement [852] (byte~) gfx_init_screen0::$1 ← (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 ] ) always clobbers reg byte a +Statement [853] (byte~) gfx_init_screen0::$2 ← (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 gfx_init_screen0::$1 gfx_init_screen0::$2 ] ) always clobbers reg byte a +Statement [855] *((byte*) gfx_init_screen0::ch#2) ← (byte~) gfx_init_screen0::$3 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ( main:2::gfx_init:10::gfx_init_screen0:450 [ gfx_init_screen0::cy#4 gfx_init_screen0::cx#2 gfx_init_screen0::ch#2 ] ) always clobbers reg byte y +Statement [862] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) $ff [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a +Statement [863] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::keyboard_init:8 [ ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ gfx_mode::dtv_control#12 gfx_mode::dtv_control#6 gfx_mode::dtv_control#13 gfx_mode::dtv_control#5 gfx_mode::dtv_control#11 gfx_mode::dtv_control#4 gfx_mode::dtv_control#10 gfx_mode::dtv_control#3 gfx_mode::dtv_control#15 gfx_mode::dtv_control#14 gfx_mode::dtv_control#2 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , Potential registers zp ZP_BYTE:3 [ gfx_mode::vic_control#4 gfx_mode::vic_control#2 gfx_mode::vic_control#5 ] : zp ZP_BYTE:3 , reg byte x , reg byte y , Potential registers zp ZP_BYTE:4 [ gfx_mode::vic_control2#2 ] : zp ZP_BYTE:4 , reg byte a , reg byte x , reg byte y , @@ -21185,15 +21185,15 @@ bend: main: { //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal) // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 // Enable DTV extended modes lda #DTV_FEATURE_ENABLE sta DTV_FEATURE @@ -21295,7 +21295,7 @@ gfx_mode: { jmp b11 //SEG45 gfx_mode::@11 b11: - //SEG46 [20] (byte) gfx_mode::dtv_control#2 ? (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG46 [20] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_BORDER_OFF tax @@ -21313,7 +21313,7 @@ gfx_mode: { jmp b12 //SEG51 gfx_mode::@12 b12: - //SEG52 [23] (byte) gfx_mode::dtv_control#3 ? (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG52 [23] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_HIGHCOLOR tax @@ -21331,7 +21331,7 @@ gfx_mode: { jmp b13 //SEG57 gfx_mode::@13 b13: - //SEG58 [26] (byte) gfx_mode::dtv_control#4 ? (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG58 [26] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_OVERSCAN tax @@ -21349,7 +21349,7 @@ gfx_mode: { jmp b14 //SEG63 gfx_mode::@14 b14: - //SEG64 [29] (byte) gfx_mode::dtv_control#5 ? (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG64 [29] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_COLORRAM_OFF tax @@ -21367,7 +21367,7 @@ gfx_mode: { jmp b15 //SEG69 gfx_mode::@15 b15: - //SEG70 [32] (byte) gfx_mode::dtv_control#6 ? (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG70 [32] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_CHUNKY tax @@ -21378,7 +21378,7 @@ gfx_mode: { jmp b6 //SEG73 gfx_mode::@6 b6: - //SEG74 [34] *((const byte*) DTV_CONTROL#0) ? (byte) gfx_mode::dtv_control#12 -- _deref_pbuc1=vbuxx + //SEG74 [34] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 -- _deref_pbuc1=vbuxx stx DTV_CONTROL //SEG75 [35] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_ecm @@ -21408,7 +21408,7 @@ gfx_mode: { jmp b17 //SEG84 gfx_mode::@17 b17: - //SEG85 [39] (byte) gfx_mode::vic_control#2 ? (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG85 [39] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #VIC_BMM tax @@ -21419,7 +21419,7 @@ gfx_mode: { jmp b8 //SEG88 gfx_mode::@8 b8: - //SEG89 [41] *((const byte*) VIC_CONTROL#0) ? (byte) gfx_mode::vic_control#4 -- _deref_pbuc1=vbuxx + //SEG89 [41] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 -- _deref_pbuc1=vbuxx stx VIC_CONTROL //SEG90 [42] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_mcm @@ -21442,30 +21442,30 @@ gfx_mode: { jmp b9 //SEG97 gfx_mode::@9 b9: - //SEG98 [45] *((const byte*) VIC_CONTROL2#0) ? (byte) gfx_mode::vic_control2#2 -- _deref_pbuc1=vbuaa + //SEG98 [45] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 -- _deref_pbuc1=vbuaa sta VIC_CONTROL2 - //SEG99 [46] (byte~) gfx_mode::$20 ? *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG99 [46] (byte~) gfx_mode::$20 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_a_start_hi asl asl asl asl - //SEG100 [47] (byte) gfx_mode::plane_a_offs#0 ? (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 + //SEG100 [47] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 ora form_a_start_lo tax - //SEG101 [48] (byte) get_plane::idx#0 ? *((const byte*) form_a_pattern#0) -- vbuaa=_deref_pbuc1 + //SEG101 [48] (byte) get_plane::idx#0 ← *((const byte*) form_a_pattern#0) -- vbuaa=_deref_pbuc1 lda form_a_pattern //SEG102 [49] call get_plane //SEG103 [236] phi from gfx_mode::@9 to get_plane [phi:gfx_mode::@9->get_plane] get_plane_from_b9: //SEG104 [236] phi (byte) get_plane::idx#10 = (byte) get_plane::idx#0 [phi:gfx_mode::@9->get_plane#0] -- register_copy jsr get_plane - //SEG105 [50] (dword) get_plane::return#16 ? (dword) get_plane::return#14 + //SEG105 [50] (dword) get_plane::return#16 ← (dword) get_plane::return#14 jmp b27 //SEG106 gfx_mode::@27 b27: - //SEG107 [51] (dword~) gfx_mode::$22 ? (dword) get_plane::return#16 - //SEG108 [52] (dword) gfx_mode::plane_a#0 ? (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 -- vduz1=vduz1_plus_vbuxx + //SEG107 [51] (dword~) gfx_mode::$22 ← (dword) get_plane::return#16 + //SEG108 [52] (dword) gfx_mode::plane_a#0 ← (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 -- vduz1=vduz1_plus_vbuxx txa clc adc plane_a @@ -21479,78 +21479,78 @@ gfx_mode: { lda plane_a+3 adc #0 sta plane_a+3 - //SEG109 [53] (word~) gfx_mode::$24 ? < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 + //SEG109 [53] (word~) gfx_mode::$24 ← < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 lda plane_a sta _24 lda plane_a+1 sta _24+1 - //SEG110 [54] (byte~) gfx_mode::$25 ? < (word~) gfx_mode::$24 -- vbuaa=_lo_vwuz1 + //SEG110 [54] (byte~) gfx_mode::$25 ← < (word~) gfx_mode::$24 -- vbuaa=_lo_vwuz1 lda _24 - //SEG111 [55] *((const byte*) DTV_PLANEA_START_LO#0) ? (byte~) gfx_mode::$25 -- _deref_pbuc1=vbuaa + //SEG111 [55] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$25 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_LO - //SEG112 [56] (word~) gfx_mode::$26 ? < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 + //SEG112 [56] (word~) gfx_mode::$26 ← < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 lda plane_a sta _26 lda plane_a+1 sta _26+1 - //SEG113 [57] (byte~) gfx_mode::$27 ? > (word~) gfx_mode::$26 -- vbuaa=_hi_vwuz1 + //SEG113 [57] (byte~) gfx_mode::$27 ← > (word~) gfx_mode::$26 -- vbuaa=_hi_vwuz1 lda _26+1 - //SEG114 [58] *((const byte*) DTV_PLANEA_START_MI#0) ? (byte~) gfx_mode::$27 -- _deref_pbuc1=vbuaa + //SEG114 [58] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$27 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_MI - //SEG115 [59] (word~) gfx_mode::$28 ? > (dword) gfx_mode::plane_a#0 -- vwuz1=_hi_vduz2 + //SEG115 [59] (word~) gfx_mode::$28 ← > (dword) gfx_mode::plane_a#0 -- vwuz1=_hi_vduz2 lda plane_a+2 sta _28 lda plane_a+3 sta _28+1 - //SEG116 [60] (byte~) gfx_mode::$29 ? < (word~) gfx_mode::$28 -- vbuaa=_lo_vwuz1 + //SEG116 [60] (byte~) gfx_mode::$29 ← < (word~) gfx_mode::$28 -- vbuaa=_lo_vwuz1 lda _28 - //SEG117 [61] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte~) gfx_mode::$29 -- _deref_pbuc1=vbuaa + //SEG117 [61] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$29 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_HI - //SEG118 [62] (byte~) gfx_mode::$30 ? *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG118 [62] (byte~) gfx_mode::$30 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_a_step_hi asl asl asl asl - //SEG119 [63] (byte~) gfx_mode::$31 ? (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG119 [63] (byte~) gfx_mode::$31 ← (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_step_lo - //SEG120 [64] *((const byte*) DTV_PLANEA_STEP#0) ? (byte~) gfx_mode::$31 -- _deref_pbuc1=vbuaa + //SEG120 [64] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$31 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_STEP - //SEG121 [65] (byte~) gfx_mode::$32 ? *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG121 [65] (byte~) gfx_mode::$32 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_a_mod_hi asl asl asl asl - //SEG122 [66] (byte~) gfx_mode::$33 ? (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG122 [66] (byte~) gfx_mode::$33 ← (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_mod_lo - //SEG123 [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte~) gfx_mode::$33 -- _deref_pbuc1=vbuaa + //SEG123 [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$33 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_MODULO_LO - //SEG124 [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG124 [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG125 [69] (byte~) gfx_mode::$34 ? *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG125 [69] (byte~) gfx_mode::$34 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_b_start_hi asl asl asl asl - //SEG126 [70] (byte) gfx_mode::plane_b_offs#0 ? (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 + //SEG126 [70] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 ora form_b_start_lo tax - //SEG127 [71] (byte) get_plane::idx#1 ? *((const byte*) form_b_pattern#0) -- vbuaa=_deref_pbuc1 + //SEG127 [71] (byte) get_plane::idx#1 ← *((const byte*) form_b_pattern#0) -- vbuaa=_deref_pbuc1 lda form_b_pattern //SEG128 [72] call get_plane //SEG129 [236] phi from gfx_mode::@27 to get_plane [phi:gfx_mode::@27->get_plane] get_plane_from_b27: //SEG130 [236] phi (byte) get_plane::idx#10 = (byte) get_plane::idx#1 [phi:gfx_mode::@27->get_plane#0] -- register_copy jsr get_plane - //SEG131 [73] (dword) get_plane::return#17 ? (dword) get_plane::return#14 + //SEG131 [73] (dword) get_plane::return#17 ← (dword) get_plane::return#14 jmp b28 //SEG132 gfx_mode::@28 b28: - //SEG133 [74] (dword~) gfx_mode::$36 ? (dword) get_plane::return#17 - //SEG134 [75] (dword) gfx_mode::plane_b#0 ? (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 -- vduz1=vduz1_plus_vbuxx + //SEG133 [74] (dword~) gfx_mode::$36 ← (dword) get_plane::return#17 + //SEG134 [75] (dword) gfx_mode::plane_b#0 ← (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 -- vduz1=vduz1_plus_vbuxx txa clc adc plane_b @@ -21564,132 +21564,132 @@ gfx_mode: { lda plane_b+3 adc #0 sta plane_b+3 - //SEG135 [76] (word~) gfx_mode::$38 ? < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 + //SEG135 [76] (word~) gfx_mode::$38 ← < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 lda plane_b sta _38 lda plane_b+1 sta _38+1 - //SEG136 [77] (byte~) gfx_mode::$39 ? < (word~) gfx_mode::$38 -- vbuaa=_lo_vwuz1 + //SEG136 [77] (byte~) gfx_mode::$39 ← < (word~) gfx_mode::$38 -- vbuaa=_lo_vwuz1 lda _38 - //SEG137 [78] *((const byte*) DTV_PLANEB_START_LO#0) ? (byte~) gfx_mode::$39 -- _deref_pbuc1=vbuaa + //SEG137 [78] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$39 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_LO - //SEG138 [79] (word~) gfx_mode::$40 ? < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 + //SEG138 [79] (word~) gfx_mode::$40 ← < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 lda plane_b sta _40 lda plane_b+1 sta _40+1 - //SEG139 [80] (byte~) gfx_mode::$41 ? > (word~) gfx_mode::$40 -- vbuaa=_hi_vwuz1 + //SEG139 [80] (byte~) gfx_mode::$41 ← > (word~) gfx_mode::$40 -- vbuaa=_hi_vwuz1 lda _40+1 - //SEG140 [81] *((const byte*) DTV_PLANEB_START_MI#0) ? (byte~) gfx_mode::$41 -- _deref_pbuc1=vbuaa + //SEG140 [81] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$41 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_MI - //SEG141 [82] (word~) gfx_mode::$42 ? > (dword) gfx_mode::plane_b#0 -- vwuz1=_hi_vduz2 + //SEG141 [82] (word~) gfx_mode::$42 ← > (dword) gfx_mode::plane_b#0 -- vwuz1=_hi_vduz2 lda plane_b+2 sta _42 lda plane_b+3 sta _42+1 - //SEG142 [83] (byte~) gfx_mode::$43 ? < (word~) gfx_mode::$42 -- vbuaa=_lo_vwuz1 + //SEG142 [83] (byte~) gfx_mode::$43 ← < (word~) gfx_mode::$42 -- vbuaa=_lo_vwuz1 lda _42 - //SEG143 [84] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte~) gfx_mode::$43 -- _deref_pbuc1=vbuaa + //SEG143 [84] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$43 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_HI - //SEG144 [85] (byte~) gfx_mode::$44 ? *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG144 [85] (byte~) gfx_mode::$44 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_b_step_hi asl asl asl asl - //SEG145 [86] (byte~) gfx_mode::$45 ? (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG145 [86] (byte~) gfx_mode::$45 ← (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_step_lo - //SEG146 [87] *((const byte*) DTV_PLANEB_STEP#0) ? (byte~) gfx_mode::$45 -- _deref_pbuc1=vbuaa + //SEG146 [87] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$45 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_STEP - //SEG147 [88] (byte~) gfx_mode::$46 ? *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG147 [88] (byte~) gfx_mode::$46 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_b_mod_hi asl asl asl asl - //SEG148 [89] (byte~) gfx_mode::$47 ? (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG148 [89] (byte~) gfx_mode::$47 ← (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_mod_lo - //SEG149 [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte~) gfx_mode::$47 -- _deref_pbuc1=vbuaa + //SEG149 [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$47 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_MODULO_LO - //SEG150 [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG150 [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG151 [92] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG151 [92] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG152 [93] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG152 [93] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^VIC_SCREEN0/$4000 sta CIA2_PORT_A - //SEG153 [94] (byte) get_vic_screen::idx#0 ? *((const byte*) form_vic_screen#0) -- vbuaa=_deref_pbuc1 + //SEG153 [94] (byte) get_vic_screen::idx#0 ← *((const byte*) form_vic_screen#0) -- vbuaa=_deref_pbuc1 lda form_vic_screen //SEG154 [95] call get_vic_screen //SEG155 [222] phi from gfx_mode::@28 to get_vic_screen [phi:gfx_mode::@28->get_vic_screen] get_vic_screen_from_b28: //SEG156 [222] phi (byte) get_vic_screen::idx#2 = (byte) get_vic_screen::idx#0 [phi:gfx_mode::@28->get_vic_screen#0] -- register_copy jsr get_vic_screen - //SEG157 [96] (byte*) get_vic_screen::return#10 ? (byte*) get_vic_screen::return#5 + //SEG157 [96] (byte*) get_vic_screen::return#10 ← (byte*) get_vic_screen::return#5 jmp b29 //SEG158 gfx_mode::@29 b29: - //SEG159 [97] (byte*~) gfx_mode::$52 ? (byte*) get_vic_screen::return#10 - //SEG160 [98] (word~) gfx_mode::$54 ? (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 + //SEG159 [97] (byte*~) gfx_mode::$52 ← (byte*) get_vic_screen::return#10 + //SEG160 [98] (word~) gfx_mode::$54 ← (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 lda _54 and #<$3fff sta _54 lda _54+1 and #>$3fff sta _54+1 - //SEG161 [99] (word~) gfx_mode::$55 ? (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 -- vwuz1=vwuz1_ror_6 + //SEG161 [99] (word~) gfx_mode::$55 ← (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 -- vwuz1=vwuz1_ror_6 ldy #6 !: lsr _55+1 ror _55 dey bne !- - //SEG162 [100] (byte~) gfx_mode::$56 ? ((byte)) (word~) gfx_mode::$55 -- vbuz1=_byte_vwuz2 + //SEG162 [100] (byte~) gfx_mode::$56 ← ((byte)) (word~) gfx_mode::$55 -- vbuz1=_byte_vwuz2 lda _55 sta _56 - //SEG163 [101] (byte) get_vic_charset::idx#0 ? *((const byte*) form_vic_gfx#0) -- vbuaa=_deref_pbuc1 + //SEG163 [101] (byte) get_vic_charset::idx#0 ← *((const byte*) form_vic_gfx#0) -- vbuaa=_deref_pbuc1 lda form_vic_gfx //SEG164 [102] call get_vic_charset jsr get_vic_charset - //SEG165 [103] (byte*) get_vic_charset::return#4 ? (byte*) get_vic_charset::return#2 + //SEG165 [103] (byte*) get_vic_charset::return#4 ← (byte*) get_vic_charset::return#2 jmp b30 //SEG166 gfx_mode::@30 b30: - //SEG167 [104] (byte*~) gfx_mode::$57 ? (byte*) get_vic_charset::return#4 - //SEG168 [105] (word~) gfx_mode::$59 ? (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 + //SEG167 [104] (byte*~) gfx_mode::$57 ← (byte*) get_vic_charset::return#4 + //SEG168 [105] (word~) gfx_mode::$59 ← (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 lda _59 and #<$3fff sta _59 lda _59+1 and #>$3fff sta _59+1 - //SEG169 [106] (byte~) gfx_mode::$60 ? > (word~) gfx_mode::$59 -- vbuaa=_hi_vwuz1 + //SEG169 [106] (byte~) gfx_mode::$60 ← > (word~) gfx_mode::$59 -- vbuaa=_hi_vwuz1 lda _59+1 - //SEG170 [107] (byte~) gfx_mode::$61 ? (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuaa_ror_2 + //SEG170 [107] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuaa_ror_2 lsr lsr - //SEG171 [108] (byte~) gfx_mode::$62 ? (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 -- vbuaa=vbuz1_bor_vbuaa + //SEG171 [108] (byte~) gfx_mode::$62 ← (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 -- vbuaa=vbuz1_bor_vbuaa ora _56 - //SEG172 [109] *((const byte*) VIC_MEMORY#0) ? (byte~) gfx_mode::$62 -- _deref_pbuc1=vbuaa + //SEG172 [109] *((const byte*) VIC_MEMORY#0) ← (byte~) gfx_mode::$62 -- _deref_pbuc1=vbuaa // Set VIC Bank // VIC memory sta VIC_MEMORY - //SEG173 [110] (byte) get_vic_screen::idx#1 ? *((const byte*) form_vic_cols#0) -- vbuaa=_deref_pbuc1 + //SEG173 [110] (byte) get_vic_screen::idx#1 ← *((const byte*) form_vic_cols#0) -- vbuaa=_deref_pbuc1 lda form_vic_cols //SEG174 [111] call get_vic_screen //SEG175 [222] phi from gfx_mode::@30 to get_vic_screen [phi:gfx_mode::@30->get_vic_screen] get_vic_screen_from_b30: //SEG176 [222] phi (byte) get_vic_screen::idx#2 = (byte) get_vic_screen::idx#1 [phi:gfx_mode::@30->get_vic_screen#0] -- register_copy jsr get_vic_screen - //SEG177 [112] (byte*) get_vic_screen::return#11 ? (byte*) get_vic_screen::return#5 + //SEG177 [112] (byte*) get_vic_screen::return#11 ← (byte*) get_vic_screen::return#5 jmp b31 //SEG178 gfx_mode::@31 b31: - //SEG179 [113] (byte*) gfx_mode::vic_colors#0 ? (byte*) get_vic_screen::return#11 + //SEG179 [113] (byte*) gfx_mode::vic_colors#0 ← (byte*) get_vic_screen::return#11 //SEG180 [114] phi from gfx_mode::@31 to gfx_mode::@19 [phi:gfx_mode::@31->gfx_mode::@19] b19_from_b31: //SEG181 [114] phi (byte) gfx_mode::cy#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@31->gfx_mode::@19#0] -- vbuz1=vbuc1 @@ -21725,22 +21725,22 @@ gfx_mode: { jmp b20 //SEG197 gfx_mode::@20 b20: - //SEG198 [116] *((byte*) gfx_mode::col#2) ? *((byte*) gfx_mode::vic_colors#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG198 [116] *((byte*) gfx_mode::col#2) ← *((byte*) gfx_mode::vic_colors#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (vic_colors),y ldy #0 sta (col),y - //SEG199 [117] (byte*) gfx_mode::col#1 ? ++ (byte*) gfx_mode::col#2 -- pbuz1=_inc_pbuz1 + //SEG199 [117] (byte*) gfx_mode::col#1 ← ++ (byte*) gfx_mode::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG200 [118] (byte*) gfx_mode::vic_colors#1 ? ++ (byte*) gfx_mode::vic_colors#2 -- pbuz1=_inc_pbuz1 + //SEG200 [118] (byte*) gfx_mode::vic_colors#1 ← ++ (byte*) gfx_mode::vic_colors#2 -- pbuz1=_inc_pbuz1 inc vic_colors bne !+ inc vic_colors+1 !: - //SEG201 [119] (byte) gfx_mode::cx#1 ? ++ (byte) gfx_mode::cx#2 -- vbuxx=_inc_vbuxx + //SEG201 [119] (byte) gfx_mode::cx#1 ← ++ (byte) gfx_mode::cx#2 -- vbuxx=_inc_vbuxx inx //SEG202 [120] if((byte) gfx_mode::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_mode::@20 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21748,7 +21748,7 @@ gfx_mode: { jmp b21 //SEG203 gfx_mode::@21 b21: - //SEG204 [121] (byte) gfx_mode::cy#1 ? ++ (byte) gfx_mode::cy#4 -- vbuz1=_inc_vbuz1 + //SEG204 [121] (byte) gfx_mode::cy#1 ← ++ (byte) gfx_mode::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG205 [122] if((byte) gfx_mode::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_mode::@19 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -21757,49 +21757,49 @@ gfx_mode: { jmp b22 //SEG206 gfx_mode::@22 b22: - //SEG207 [123] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG207 [123] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Background colors lda #0 sta BORDERCOL - //SEG208 [124] (byte~) gfx_mode::$64 ? *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG208 [124] (byte~) gfx_mode::$64 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg0_hi asl asl asl asl - //SEG209 [125] (byte~) gfx_mode::$65 ? (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG209 [125] (byte~) gfx_mode::$65 ← (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg0_lo - //SEG210 [126] *((const byte*) BGCOL1#0) ? (byte~) gfx_mode::$65 -- _deref_pbuc1=vbuaa + //SEG210 [126] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$65 -- _deref_pbuc1=vbuaa sta BGCOL1 - //SEG211 [127] (byte~) gfx_mode::$66 ? *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG211 [127] (byte~) gfx_mode::$66 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg1_hi asl asl asl asl - //SEG212 [128] (byte~) gfx_mode::$67 ? (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG212 [128] (byte~) gfx_mode::$67 ← (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg1_lo - //SEG213 [129] *((const byte*) BGCOL2#0) ? (byte~) gfx_mode::$67 -- _deref_pbuc1=vbuaa + //SEG213 [129] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$67 -- _deref_pbuc1=vbuaa sta BGCOL2 - //SEG214 [130] (byte~) gfx_mode::$68 ? *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG214 [130] (byte~) gfx_mode::$68 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg2_hi asl asl asl asl - //SEG215 [131] (byte~) gfx_mode::$69 ? (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG215 [131] (byte~) gfx_mode::$69 ← (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg2_lo - //SEG216 [132] *((const byte*) BGCOL3#0) ? (byte~) gfx_mode::$69 -- _deref_pbuc1=vbuaa + //SEG216 [132] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$69 -- _deref_pbuc1=vbuaa sta BGCOL3 - //SEG217 [133] (byte~) gfx_mode::$70 ? *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG217 [133] (byte~) gfx_mode::$70 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg3_hi asl asl asl asl - //SEG218 [134] (byte~) gfx_mode::$71 ? (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG218 [134] (byte~) gfx_mode::$71 ← (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg3_lo - //SEG219 [135] *((const byte*) BGCOL4#0) ? (byte~) gfx_mode::$71 -- _deref_pbuc1=vbuaa + //SEG219 [135] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$71 -- _deref_pbuc1=vbuaa sta BGCOL4 //SEG220 [136] if(*((const byte*) form_dtv_palet#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@24 -- _deref_pbuc1_eq_0_then_la1 // DTV Palette @@ -21818,10 +21818,10 @@ gfx_mode: { jmp b23 //SEG225 gfx_mode::@23 b23: - //SEG226 [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ? (byte) gfx_mode::j#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG226 [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ← (byte) gfx_mode::j#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG227 [139] (byte) gfx_mode::j#1 ? ++ (byte) gfx_mode::j#2 -- vbuxx=_inc_vbuxx + //SEG227 [139] (byte) gfx_mode::j#1 ← ++ (byte) gfx_mode::j#2 -- vbuxx=_inc_vbuxx inx //SEG228 [140] if((byte) gfx_mode::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@23 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -21850,11 +21850,11 @@ gfx_mode: { b32: //SEG238 [145] call keyboard_event_get jsr keyboard_event_get - //SEG239 [146] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + //SEG239 [146] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 jmp b33 //SEG240 gfx_mode::@33 b33: - //SEG241 [147] (byte) gfx_mode::keyboard_event#0 ? (byte) keyboard_event_get::return#3 + //SEG241 [147] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 //SEG242 [148] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@25 -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_SPACE bne b25 @@ -21875,10 +21875,10 @@ gfx_mode: { jmp b24 //SEG249 gfx_mode::@24 b24: - //SEG250 [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG250 [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG251 [152] (byte) gfx_mode::i#1 ? ++ (byte) gfx_mode::i#2 -- vbuxx=_inc_vbuxx + //SEG251 [152] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 -- vbuxx=_inc_vbuxx inx //SEG252 [153] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@24 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -21897,9 +21897,9 @@ keyboard_event_get: { jmp b1 //SEG255 keyboard_event_get::@1 b1: - //SEG256 [155] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#100 -- vbuz1=_dec_vbuz1 + //SEG256 [155] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#100 -- vbuz1=_dec_vbuz1 dec keyboard_events_size - //SEG257 [156] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuaa=pbuc1_derefidx_vbuz1 + //SEG257 [156] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuaa=pbuc1_derefidx_vbuz1 ldy keyboard_events_size lda keyboard_events,y //SEG258 [157] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] @@ -21945,15 +21945,15 @@ keyboard_event_scan: { jmp b7 //SEG275 keyboard_event_scan::@7 b7: - //SEG276 [161] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 + //SEG276 [161] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 ldx row //SEG277 [162] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG278 [163] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG278 [163] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 jmp b19 //SEG279 keyboard_event_scan::@19 b19: - //SEG280 [164] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa + //SEG280 [164] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa sta row_scan //SEG281 [165] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 -- vbuz1_neq_pbuc1_derefidx_vbuz2_then_la1 lda row_scan @@ -21963,7 +21963,7 @@ keyboard_event_scan: { jmp b16 //SEG282 keyboard_event_scan::@16 b16: - //SEG283 [166] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 + //SEG283 [166] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 lax keycode axs #-[8] stx keycode @@ -21975,7 +21975,7 @@ keyboard_event_scan: { jmp b8 //SEG287 keyboard_event_scan::@8 b8: - //SEG288 [168] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 + //SEG288 [168] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 inc row //SEG289 [169] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -21993,11 +21993,11 @@ keyboard_event_scan: { lda #KEY_LSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG295 [172] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#10 + //SEG295 [172] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 jmp b20 //SEG296 keyboard_event_scan::@20 b20: - //SEG297 [173] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 + //SEG297 [173] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 //SEG298 [174] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 -- vbuaa_eq_0_then_la1 cmp #0 beq b1_from_b20 @@ -22025,18 +22025,18 @@ keyboard_event_scan: { lda #KEY_RSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG309 [178] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#10 + //SEG309 [178] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 jmp b21 //SEG310 keyboard_event_scan::@21 b21: - //SEG311 [179] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 + //SEG311 [179] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 //SEG312 [180] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2_from_b21 jmp b4 //SEG313 keyboard_event_scan::@4 b4: - //SEG314 [181] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG314 [181] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_RSHIFT tax @@ -22054,18 +22054,18 @@ keyboard_event_scan: { lda #KEY_CTRL sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG321 [184] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#10 + //SEG321 [184] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 jmp b22 //SEG322 keyboard_event_scan::@22 b22: - //SEG323 [185] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 + //SEG323 [185] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 //SEG324 [186] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3_from_b22 jmp b5 //SEG325 keyboard_event_scan::@5 b5: - //SEG326 [187] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG326 [187] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_CTRL tax @@ -22083,18 +22083,18 @@ keyboard_event_scan: { lda #KEY_COMMODORE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG333 [190] (byte) keyboard_event_pressed::return#3 ? (byte) keyboard_event_pressed::return#10 + //SEG333 [190] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 jmp b23 //SEG334 keyboard_event_scan::@23 b23: - //SEG335 [191] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#3 + //SEG335 [191] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#3 //SEG336 [192] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return -- vbuaa_eq_0_then_la1 cmp #0 beq breturn_from_b23 jmp b6 //SEG337 keyboard_event_scan::@6 b6: - //SEG338 [193] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG338 [193] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_COMMODORE tax @@ -22123,11 +22123,11 @@ keyboard_event_scan: { jmp b9 //SEG351 keyboard_event_scan::@9 b9: - //SEG352 [197] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 + //SEG352 [197] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 lda row_scan ldy row eor keyboard_scan_values,y - //SEG353 [198] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx + //SEG353 [198] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx and keyboard_matrix_col_bitmask,x //SEG354 [199] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 -- vbuaa_eq_0_then_la1 cmp #0 @@ -22142,7 +22142,7 @@ keyboard_event_scan: { jmp b13 //SEG357 keyboard_event_scan::@13 b13: - //SEG358 [201] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx + //SEG358 [201] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx lda keyboard_matrix_col_bitmask,x and row_scan //SEG359 [202] if((byte) keyboard_event_scan::event_type#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 -- vbuaa_eq_0_then_la1 @@ -22151,12 +22151,12 @@ keyboard_event_scan: { jmp b14 //SEG360 keyboard_event_scan::@14 b14: - //SEG361 [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG361 [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 // Key pressed lda keycode ldy keyboard_events_size sta keyboard_events,y - //SEG362 [204] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 + //SEG362 [204] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 inc keyboard_events_size //SEG363 [205] phi from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10] b10_from_b11: @@ -22167,9 +22167,9 @@ keyboard_event_scan: { jmp b10 //SEG365 keyboard_event_scan::@10 b10: - //SEG366 [206] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 + //SEG366 [206] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 inc keycode - //SEG367 [207] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx + //SEG367 [207] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx inx //SEG368 [208] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -22177,7 +22177,7 @@ keyboard_event_scan: { jmp b15 //SEG369 keyboard_event_scan::@15 b15: - //SEG370 [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG370 [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 // Store the current keyboard status for the row to debounce lda row_scan ldy row @@ -22185,14 +22185,14 @@ keyboard_event_scan: { jmp b8_from_b15 //SEG371 keyboard_event_scan::@11 b11: - //SEG372 [210] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 + //SEG372 [210] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 lda #$40 ora keycode - //SEG373 [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG373 [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa // Key released ldy keyboard_events_size sta keyboard_events,y - //SEG374 [212] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 + //SEG374 [212] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 inc keyboard_events_size jmp b10_from_b11 } @@ -22203,19 +22203,19 @@ keyboard_event_scan: { keyboard_event_pressed: { .label row_bits = 7 .label keycode = 2 - //SEG376 [214] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 + //SEG376 [214] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 lda keycode lsr lsr lsr - //SEG377 [215] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa + //SEG377 [215] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa tay lda keyboard_scan_values,y sta row_bits - //SEG378 [216] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 + //SEG378 [216] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 lda #7 and keycode - //SEG379 [217] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa + //SEG379 [217] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa tay lda keyboard_matrix_col_bitmask,y and row_bits @@ -22233,10 +22233,10 @@ keyboard_event_pressed: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(X) rowid) keyboard_matrix_read: { - //SEG383 [219] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + //SEG383 [219] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx lda keyboard_matrix_row_bitmask,x sta CIA1_PORT_A - //SEG384 [220] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG384 [220] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff jmp breturn @@ -22727,7 +22727,7 @@ form_mode: { jmp b15 //SEG516 form_mode::@15 b15: - //SEG517 [270] (byte) render_preset_name::idx#0 ? *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 + //SEG517 [270] (byte) render_preset_name::idx#0 ← *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 lda form_fields_val //SEG518 [271] call render_preset_name //SEG519 [306] phi from form_mode::@15 to render_preset_name [phi:form_mode::@15->render_preset_name] @@ -22737,49 +22737,49 @@ form_mode: { jmp b16 //SEG521 form_mode::@16 b16: - //SEG522 [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG522 [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&FORM_CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG523 [273] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG523 [273] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG524 [274] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG524 [274] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG525 [275] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG525 [275] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG526 [276] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG526 [276] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^FORM_CHARSET/$4000 sta CIA2_PORT_A - //SEG527 [277] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG527 [277] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Set VIC Bank // DTV Graphics Mode lda #0 sta DTV_CONTROL - //SEG528 [278] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG528 [278] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG529 [279] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG529 [279] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG530 [280] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG530 [280] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 sta VIC_MEMORY - //SEG531 [281] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 + //SEG531 [281] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 // DTV Plane A to FORM_SCREEN also lda #(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 + //SEG532 [282] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 lda #>FORM_SCREEN sta DTV_PLANEA_START_MI - //SEG533 [283] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG533 [283] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI //SEG534 [284] phi from form_mode::@16 to form_mode::@1 [phi:form_mode::@16->form_mode::@1] @@ -22794,10 +22794,10 @@ form_mode: { jmp b1 //SEG538 form_mode::@1 b1: - //SEG539 [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG539 [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG540 [286] (byte) form_mode::i#1 ? ++ (byte) form_mode::i#2 -- vbuxx=_inc_vbuxx + //SEG540 [286] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 -- vbuxx=_inc_vbuxx inx //SEG541 [287] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto form_mode::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -22805,14 +22805,14 @@ form_mode: { jmp b2 //SEG542 form_mode::@2 b2: - //SEG543 [288] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG543 [288] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG544 [289] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG544 [289] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL - //SEG545 [290] (byte) form_mode::preset_current#0 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG545 [290] (byte) form_mode::preset_current#0 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta preset_current //SEG546 [291] phi from form_mode::@19 form_mode::@2 to form_mode::@3 [phi:form_mode::@19/form_mode::@2->form_mode::@3] @@ -22846,12 +22846,12 @@ form_mode: { b5: //SEG560 [294] call form_control jsr form_control - //SEG561 [295] (byte) form_control::return#0 ? (byte) form_control::return#2 -- vbuaa=vbuxx + //SEG561 [295] (byte) form_control::return#0 ← (byte) form_control::return#2 -- vbuaa=vbuxx txa jmp b17 //SEG562 form_mode::@17 b17: - //SEG563 [296] (byte~) form_mode::$36 ? (byte) form_control::return#0 + //SEG563 [296] (byte~) form_mode::$36 ← (byte) form_control::return#0 //SEG564 [297] if((byte~) form_mode::$36==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@6 -- vbuaa_eq_0_then_la1 cmp #0 beq b6 @@ -22869,14 +22869,14 @@ form_mode: { jmp b7 //SEG569 form_mode::@7 b7: - //SEG570 [300] (byte) apply_preset::idx#0 ? *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 + //SEG570 [300] (byte) apply_preset::idx#0 ← *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 lda form_fields_val //SEG571 [301] call apply_preset jsr apply_preset jmp b18 //SEG572 form_mode::@18 b18: - //SEG573 [302] (byte) form_mode::preset_current#1 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG573 [302] (byte) form_mode::preset_current#1 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta preset_current //SEG574 [303] call form_render_values @@ -22886,7 +22886,7 @@ form_mode: { jmp b19 //SEG576 form_mode::@19 b19: - //SEG577 [304] (byte) render_preset_name::idx#1 ? *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 + //SEG577 [304] (byte) render_preset_name::idx#1 ← *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 lda form_fields_val //SEG578 [305] call render_preset_name //SEG579 [306] phi from form_mode::@19 to render_preset_name [phi:form_mode::@19->render_preset_name] @@ -23060,7 +23060,7 @@ render_preset_name: { jmp b1 //SEG627 render_preset_name::@1 b1: - //SEG628 [320] (byte*) print_str_at::str#1 ? (byte*) render_preset_name::name#13 + //SEG628 [320] (byte*) print_str_at::str#1 ← (byte*) render_preset_name::name#13 //SEG629 [321] call print_str_at //SEG630 [323] phi from render_preset_name::@1 to print_str_at [phi:render_preset_name::@1->print_str_at] print_str_at_from_b1: @@ -23111,17 +23111,17 @@ print_str_at: { rts //SEG641 print_str_at::@2 b2: - //SEG642 [327] *((byte*) print_str_at::at#2) ? *((byte*) print_str_at::str#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG642 [327] *((byte*) print_str_at::at#2) ← *((byte*) print_str_at::str#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (at),y - //SEG643 [328] (byte*) print_str_at::at#0 ? ++ (byte*) print_str_at::at#2 -- pbuz1=_inc_pbuz1 + //SEG643 [328] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#2 -- pbuz1=_inc_pbuz1 inc at bne !+ inc at+1 !: - //SEG644 [329] (byte*) print_str_at::str#0 ? ++ (byte*) print_str_at::str#2 -- pbuz1=_inc_pbuz1 + //SEG644 [329] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#2 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -23149,25 +23149,25 @@ form_render_values: { jmp b1 //SEG653 form_render_values::@1 b1: - //SEG654 [332] (byte) form_field_ptr::field_idx#0 ? (byte) form_render_values::idx#2 -- vbuyy=vbuz1 + //SEG654 [332] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 -- vbuyy=vbuz1 ldy idx //SEG655 [333] call form_field_ptr //SEG656 [340] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] form_field_ptr_from_b1: //SEG657 [340] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG658 [334] (byte*) form_field_ptr::return#2 ? (byte*) form_field_ptr::return#0 + //SEG658 [334] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 jmp b2 //SEG659 form_render_values::@2 b2: - //SEG660 [335] (byte*) form_render_values::field#0 ? (byte*) form_field_ptr::return#2 - //SEG661 [336] *((byte*) form_render_values::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG660 [335] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 + //SEG661 [336] *((byte*) form_render_values::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldx idx ldy form_fields_val,x lda print_hextab,y ldy #0 sta (field),y - //SEG662 [337] (byte) form_render_values::idx#1 ? ++ (byte) form_render_values::idx#2 -- vbuz1=_inc_vbuz1 + //SEG662 [337] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 -- vbuz1=_inc_vbuz1 inc idx //SEG663 [338] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 -- vbuz1_lt_vbuc1_then_la1 lda idx @@ -23186,16 +23186,16 @@ form_render_values: { form_field_ptr: { .label return = 3 .label _2 = 3 - //SEG667 [341] (byte) form_field_ptr::y#0 ? *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) -- vbuxx=pbuc1_derefidx_vbuyy + //SEG667 [341] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) -- vbuxx=pbuc1_derefidx_vbuyy ldx form_fields_y,y - //SEG668 [342] (word~) form_field_ptr::$2 ? *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG668 [342] (word~) form_field_ptr::$2 ← *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda form_line_hi,x sta _2+1 lda form_line_lo,x sta _2 - //SEG669 [343] (byte) form_field_ptr::x#0 ? *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) -- vbuaa=pbuc1_derefidx_vbuyy + //SEG669 [343] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) -- vbuaa=pbuc1_derefidx_vbuyy lda form_fields_x,y - //SEG670 [344] (byte*) form_field_ptr::return#0 ? (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 -- pbuz1=pbuz1_plus_vbuaa + //SEG670 [344] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 -- pbuz1=pbuz1_plus_vbuaa clc adc return sta return @@ -23385,10 +23385,10 @@ apply_preset: { jmp b13 //SEG724 apply_preset::@13 b13: - //SEG725 [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ? *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) -- pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuyy + //SEG725 [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ← *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) -- pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuyy lda (preset),y sta form_fields_val,y - //SEG726 [361] (byte) apply_preset::i#1 ? ++ (byte) apply_preset::i#2 -- vbuyy=_inc_vbuyy + //SEG726 [361] (byte) apply_preset::i#1 ← ++ (byte) apply_preset::i#2 -- vbuyy=_inc_vbuyy iny //SEG727 [362] if((byte) apply_preset::i#1!=(const byte) form_fields_cnt#0) goto apply_preset::@13 -- vbuyy_neq_vbuc1_then_la1 cpy #form_fields_cnt @@ -23404,19 +23404,19 @@ apply_preset: { // Returns 0 if space is not pressed, non-0 if space is pressed form_control: { .label field = 3 - //SEG731 [364] (byte) form_field_ptr::field_idx#1 ? (byte) form_field_idx#28 -- vbuyy=vbuz1 + //SEG731 [364] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 -- vbuyy=vbuz1 ldy form_field_idx //SEG732 [365] call form_field_ptr //SEG733 [340] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] form_field_ptr_from_form_control: //SEG734 [340] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG735 [366] (byte*) form_field_ptr::return#3 ? (byte*) form_field_ptr::return#0 + //SEG735 [366] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 jmp b17 //SEG736 form_control::@17 b17: - //SEG737 [367] (byte*) form_control::field#0 ? (byte*) form_field_ptr::return#3 - //SEG738 [368] (signed byte) form_cursor_count#5 ? -- (signed byte) form_cursor_count#21 -- vbsz1=_dec_vbsz1 + //SEG737 [367] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 + //SEG738 [368] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 -- vbsz1=_dec_vbsz1 dec form_cursor_count //SEG739 [369] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@20 -- vbsz1_ge_0_then_la1 lda form_cursor_count @@ -23441,11 +23441,11 @@ form_control: { jmp b6 //SEG744 form_control::@6 b6: - //SEG745 [372] (byte~) form_control::$13 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 + //SEG745 [372] (byte~) form_control::$13 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG746 [373] *((byte*) form_control::field#0) ? (byte~) form_control::$13 -- _deref_pbuz1=vbuaa + //SEG746 [373] *((byte*) form_control::field#0) ← (byte~) form_control::$13 -- _deref_pbuz1=vbuaa ldy #0 sta (field),y //SEG747 [374] phi from form_control::@2 form_control::@6 to form_control::@3 [phi:form_control::@2/form_control::@6->form_control::@3] @@ -23466,26 +23466,26 @@ form_control: { b18: //SEG754 [377] call keyboard_event_get jsr keyboard_event_get - //SEG755 [378] (byte) keyboard_event_get::return#4 ? (byte) keyboard_event_get::return#2 + //SEG755 [378] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 jmp b19 //SEG756 form_control::@19 b19: - //SEG757 [379] (byte) form_control::key_event#0 ? (byte) keyboard_event_get::return#4 + //SEG757 [379] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 //SEG758 [380] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_CRSR_DOWN bne b4 jmp b7 //SEG759 form_control::@7 b7: - //SEG760 [381] (byte~) form_control::$15 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 + //SEG760 [381] (byte~) form_control::$15 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG761 [382] *((byte*) form_control::field#0) ? (byte~) form_control::$15 -- _deref_pbuz1=vbuaa + //SEG761 [382] *((byte*) form_control::field#0) ← (byte~) form_control::$15 -- _deref_pbuz1=vbuaa // Unblink the cursor ldy #0 sta (field),y - //SEG762 [383] (byte~) form_control::$16 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 + //SEG762 [383] (byte~) form_control::$16 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 txa and #KEY_MODIFIER_SHIFT //SEG763 [384] if((byte~) form_control::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@12 -- vbuaa_eq_0_then_la1 @@ -23494,7 +23494,7 @@ form_control: { jmp b8 //SEG764 form_control::@8 b8: - //SEG765 [385] (byte) form_field_idx#44 ? -- (byte) form_field_idx#28 -- vbuz1=_dec_vbuz1 + //SEG765 [385] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 -- vbuz1=_dec_vbuz1 dec form_field_idx //SEG766 [386] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@21 -- vbuz1_neq_vbuc1_then_la1 lda #$ff @@ -23533,7 +23533,7 @@ form_control: { jmp b13 //SEG780 form_control::@12 b12: - //SEG781 [391] (byte) form_field_idx#45 ? ++ (byte) form_field_idx#28 -- vbuz1=_inc_vbuz1 + //SEG781 [391] (byte) form_field_idx#45 ← ++ (byte) form_field_idx#28 -- vbuz1=_inc_vbuz1 inc form_field_idx //SEG782 [392] if((byte) form_field_idx#45!=(const byte) form_fields_cnt#0) goto form_control::@22 -- vbuz1_neq_vbuc1_then_la1 lda #form_fields_cnt @@ -23559,7 +23559,7 @@ form_control: { jmp b9 //SEG789 form_control::@9 b9: - //SEG790 [395] (byte~) form_control::$24 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 + //SEG790 [395] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 txa and #KEY_MODIFIER_SHIFT //SEG791 [396] if((byte~) form_control::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@14 -- vbuaa_eq_0_then_la1 @@ -23568,7 +23568,7 @@ form_control: { jmp b10 //SEG792 form_control::@10 b10: - //SEG793 [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 + //SEG793 [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 ldx form_field_idx dec form_fields_val,x //SEG794 [398] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@15 -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 @@ -23579,14 +23579,14 @@ form_control: { jmp b11 //SEG795 form_control::@11 b11: - //SEG796 [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG796 [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy form_field_idx lda form_fields_max,y sta form_fields_val,y jmp b15 //SEG797 form_control::@15 b15: - //SEG798 [400] *((byte*) form_control::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG798 [400] *((byte*) form_control::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 // Render field value ldx form_field_idx ldy form_fields_val,x @@ -23603,7 +23603,7 @@ form_control: { jmp breturn //SEG803 form_control::@14 b14: - //SEG804 [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 + //SEG804 [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 ldx form_field_idx inc form_fields_val,x //SEG805 [402] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@15 -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 @@ -23615,7 +23615,7 @@ form_control: { jmp b16 //SEG806 form_control::@16 b16: - //SEG807 [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG807 [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy form_field_idx sta form_fields_val,y @@ -23640,11 +23640,11 @@ form_control: { jmp breturn_from_b23 //SEG816 form_control::@2 b2: - //SEG817 [406] (byte/word/dword~) form_control::$14 ? *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 -- vbuaa=_deref_pbuz1_bor_vbuc1 + //SEG817 [406] (byte/word/dword~) form_control::$14 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 -- vbuaa=_deref_pbuz1_bor_vbuc1 lda #$80 ldy #0 ora (field),y - //SEG818 [407] *((byte*) form_control::field#0) ? (byte/word/dword~) form_control::$14 -- _deref_pbuz1=vbuaa + //SEG818 [407] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$14 -- _deref_pbuz1=vbuaa ldy #0 sta (field),y jmp b3_from_b2 @@ -23680,15 +23680,15 @@ form_set_screen: { jmp b1 //SEG830 form_set_screen::@1 b1: - //SEG831 [411] (byte~) form_set_screen::$0 ? < (byte*) form_set_screen::line#2 -- vbuaa=_lo_pbuz1 + //SEG831 [411] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 -- vbuaa=_lo_pbuz1 lda line - //SEG832 [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG832 [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_lo,x - //SEG833 [413] (byte~) form_set_screen::$1 ? > (byte*) form_set_screen::line#2 -- vbuaa=_hi_pbuz1 + //SEG833 [413] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 -- vbuaa=_hi_pbuz1 lda line+1 - //SEG834 [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$1 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG834 [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_hi,x - //SEG835 [415] (byte*) form_set_screen::line#1 ? (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG835 [415] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc line @@ -23696,7 +23696,7 @@ form_set_screen: { bcc !+ inc line+1 !: - //SEG836 [416] (byte) form_set_screen::y#1 ? ++ (byte) form_set_screen::y#2 -- vbuxx=_inc_vbuxx + //SEG836 [416] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 -- vbuxx=_inc_vbuxx inx //SEG837 [417] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto form_set_screen::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$19 @@ -23713,7 +23713,7 @@ form_set_screen: { // print_str_lines(byte* zeropage(3) str) print_str_lines: { .label str = 3 - //SEG841 [420] (byte*~) print_char_cursor#77 ? (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 + //SEG841 [420] (byte*~) print_char_cursor#77 ← (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 lda print_set_screen.screen sta print_char_cursor lda print_set_screen.screen+1 @@ -23745,10 +23745,10 @@ print_str_lines: { jmp b2 //SEG853 print_str_lines::@2 b2: - //SEG854 [425] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#4) -- vbuaa=_deref_pbuz1 + //SEG854 [425] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y - //SEG855 [426] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#4 -- pbuz1=_inc_pbuz1 + //SEG855 [426] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -23759,10 +23759,10 @@ print_str_lines: { jmp b4 //SEG857 print_str_lines::@4 b4: - //SEG858 [428] *((byte*) print_char_cursor#20) ? (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa + //SEG858 [428] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG859 [429] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#20 -- pbuz1=_inc_pbuz1 + //SEG859 [429] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -23786,7 +23786,7 @@ print_str_lines: { //SEG867 [435] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln] print_ln_from_b5: jsr print_ln - //SEG868 [434] (byte*~) print_char_cursor#78 ? (byte*) print_line_cursor#22 -- pbuz1=pbuz2 + //SEG868 [434] (byte*~) print_char_cursor#78 ← (byte*) print_line_cursor#22 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -23803,7 +23803,7 @@ print_ln: { jmp b1 //SEG872 print_ln::@1 b1: - //SEG873 [437] (byte*) print_line_cursor#22 ? (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG873 [437] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -23831,7 +23831,7 @@ print_ln: { print_cls: { .label _0 = 5 .label sc = 3 - //SEG878 [440] (byte*) print_cls::sc#0 ? (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 + //SEG878 [440] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 lda print_set_screen.screen sta sc lda print_set_screen.screen+1 @@ -23843,16 +23843,16 @@ print_cls: { jmp b1 //SEG881 print_cls::@1 b1: - //SEG882 [442] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG882 [442] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG883 [443] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG883 [443] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG884 [444] (byte*~) print_cls::$0 ? (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 + //SEG884 [444] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 lda print_set_screen.screen clc adc #<$3e8 @@ -24059,7 +24059,7 @@ gfx_init_plane_fill: { .label by = 7 .label plane_addr = 9 .label fill = 2 - //SEG959 [484] (dword~) gfx_init_plane_fill::$0 ? (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vduz1=vduz2_rol_2 + //SEG959 [484] (dword~) gfx_init_plane_fill::$0 ← (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vduz1=vduz2_rol_2 lda plane_addr sta _0 lda plane_addr+1 @@ -24076,15 +24076,15 @@ gfx_init_plane_fill: { rol _0+1 rol _0+2 rol _0+3 - //SEG960 [485] (word~) gfx_init_plane_fill::$1 ? > (dword~) gfx_init_plane_fill::$0 -- vwuz1=_hi_vduz2 + //SEG960 [485] (word~) gfx_init_plane_fill::$1 ← > (dword~) gfx_init_plane_fill::$0 -- vwuz1=_hi_vduz2 lda _0+2 sta _1 lda _0+3 sta _1+1 - //SEG961 [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ? < (word~) gfx_init_plane_fill::$1 -- vbuxx=_lo_vwuz1 + //SEG961 [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ← < (word~) gfx_init_plane_fill::$1 -- vbuxx=_lo_vwuz1 lda _1 tax - //SEG962 [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ? (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuaa=vbuxx + //SEG962 [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ← (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuaa=vbuxx txa //SEG963 [488] call dtvSetCpuBankSegment1 //SEG964 [505] phi from gfx_init_plane_fill to dtvSetCpuBankSegment1 [phi:gfx_init_plane_fill->dtvSetCpuBankSegment1] @@ -24094,21 +24094,21 @@ gfx_init_plane_fill: { jmp b5 //SEG966 gfx_init_plane_fill::@5 b5: - //SEG967 [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuxx=_inc_vbuxx + //SEG967 [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuxx=_inc_vbuxx inx - //SEG968 [490] (word~) gfx_init_plane_fill::$4 ? < (dword) gfx_init_plane_fill::plane_addr#3 -- vwuz1=_lo_vduz2 + //SEG968 [490] (word~) gfx_init_plane_fill::$4 ← < (dword) gfx_init_plane_fill::plane_addr#3 -- vwuz1=_lo_vduz2 lda plane_addr sta _4 lda plane_addr+1 sta _4+1 - //SEG969 [491] (word~) gfx_init_plane_fill::$5 ? (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 + //SEG969 [491] (word~) gfx_init_plane_fill::$5 ← (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 lda _5 and #<$3fff sta _5 lda _5+1 and #>$3fff sta _5+1 - //SEG970 [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ? (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 -- vwuz1=vwuc1_plus_vwuz1 + //SEG970 [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ← (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 -- vwuz1=vwuc1_plus_vwuz1 clc lda _6 adc #<$4000 @@ -24116,7 +24116,7 @@ gfx_init_plane_fill: { lda _6+1 adc #>$4000 sta _6+1 - //SEG971 [493] (byte*~) gfx_init_plane_fill::gfxb#6 ? (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 + //SEG971 [493] (byte*~) gfx_init_plane_fill::gfxb#6 ← (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 //SEG972 [494] phi from gfx_init_plane_fill::@5 to gfx_init_plane_fill::@1 [phi:gfx_init_plane_fill::@5->gfx_init_plane_fill::@1] b1_from_b5: //SEG973 [494] phi (byte) gfx_init_plane_fill::by#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_fill::@5->gfx_init_plane_fill::@1#0] -- vbuz1=vbuc1 @@ -24144,16 +24144,16 @@ gfx_init_plane_fill: { jmp b2 //SEG985 gfx_init_plane_fill::@2 b2: - //SEG986 [496] *((byte*) gfx_init_plane_fill::gfxb#2) ? (byte) gfx_init_plane_fill::fill#6 -- _deref_pbuz1=vbuz2 + //SEG986 [496] *((byte*) gfx_init_plane_fill::gfxb#2) ← (byte) gfx_init_plane_fill::fill#6 -- _deref_pbuz1=vbuz2 lda fill ldy #0 sta (gfxb),y - //SEG987 [497] (byte*) gfx_init_plane_fill::gfxb#1 ? ++ (byte*) gfx_init_plane_fill::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG987 [497] (byte*) gfx_init_plane_fill::gfxb#1 ← ++ (byte*) gfx_init_plane_fill::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG988 [498] (byte) gfx_init_plane_fill::bx#1 ? ++ (byte) gfx_init_plane_fill::bx#2 -- vbuxx=_inc_vbuxx + //SEG988 [498] (byte) gfx_init_plane_fill::bx#1 ← ++ (byte) gfx_init_plane_fill::bx#2 -- vbuxx=_inc_vbuxx inx //SEG989 [499] if((byte) gfx_init_plane_fill::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_fill::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -24161,7 +24161,7 @@ gfx_init_plane_fill: { jmp b3 //SEG990 gfx_init_plane_fill::@3 b3: - //SEG991 [500] (byte) gfx_init_plane_fill::by#1 ? ++ (byte) gfx_init_plane_fill::by#4 -- vbuz1=_inc_vbuz1 + //SEG991 [500] (byte) gfx_init_plane_fill::by#1 ← ++ (byte) gfx_init_plane_fill::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG992 [501] if((byte) gfx_init_plane_fill::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_fill::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -24192,7 +24192,7 @@ gfx_init_plane_fill: { dtvSetCpuBankSegment1: { // Move CPU BANK 1 SEGMENT ($4000-$7fff) .label cpuBank = $ff - //SEG1001 [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 -- _deref_pbuc1=vbuaa + //SEG1001 [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 -- _deref_pbuc1=vbuaa sta cpuBank //SEG1002 asm { .byte$32,$dd lda$ff .byte$32,$00 } .byte $32, $dd @@ -24297,22 +24297,22 @@ gfx_init_plane_horisontal2: { jmp b2 //SEG1036 gfx_init_plane_horisontal2::@2 b2: - //SEG1037 [519] (byte~) gfx_init_plane_horisontal2::$8 ? (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 + //SEG1037 [519] (byte~) gfx_init_plane_horisontal2::$8 ← (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 lda ay lsr - //SEG1038 [520] (byte) gfx_init_plane_horisontal2::row#0 ? (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 + //SEG1038 [520] (byte) gfx_init_plane_horisontal2::row#0 ← (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 and #3 - //SEG1039 [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ? *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa + //SEG1039 [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ← *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa tay lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG1040 [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG1040 [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG1041 [523] (byte) gfx_init_plane_horisontal2::ax#1 ? ++ (byte) gfx_init_plane_horisontal2::ax#2 -- vbuxx=_inc_vbuxx + //SEG1041 [523] (byte) gfx_init_plane_horisontal2::ax#1 ← ++ (byte) gfx_init_plane_horisontal2::ax#2 -- vbuxx=_inc_vbuxx inx //SEG1042 [524] if((byte) gfx_init_plane_horisontal2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal2::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -24320,7 +24320,7 @@ gfx_init_plane_horisontal2: { jmp b3 //SEG1043 gfx_init_plane_horisontal2::@3 b3: - //SEG1044 [525] (byte) gfx_init_plane_horisontal2::ay#1 ? ++ (byte) gfx_init_plane_horisontal2::ay#4 -- vbuz1=_inc_vbuz1 + //SEG1044 [525] (byte) gfx_init_plane_horisontal2::ay#1 ← ++ (byte) gfx_init_plane_horisontal2::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG1045 [526] if((byte) gfx_init_plane_horisontal2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal2::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -24387,16 +24387,16 @@ gfx_init_plane_vertical: { jmp b2 //SEG1070 gfx_init_plane_vertical::@2 b2: - //SEG1071 [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 + //SEG1071 [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 lda #$f ldy #0 sta (gfxb),y - //SEG1072 [535] (byte*) gfx_init_plane_vertical::gfxb#1 ? ++ (byte*) gfx_init_plane_vertical::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG1072 [535] (byte*) gfx_init_plane_vertical::gfxb#1 ← ++ (byte*) gfx_init_plane_vertical::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG1073 [536] (byte) gfx_init_plane_vertical::bx#1 ? ++ (byte) gfx_init_plane_vertical::bx#2 -- vbuxx=_inc_vbuxx + //SEG1073 [536] (byte) gfx_init_plane_vertical::bx#1 ← ++ (byte) gfx_init_plane_vertical::bx#2 -- vbuxx=_inc_vbuxx inx //SEG1074 [537] if((byte) gfx_init_plane_vertical::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_vertical::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -24404,7 +24404,7 @@ gfx_init_plane_vertical: { jmp b3 //SEG1075 gfx_init_plane_vertical::@3 b3: - //SEG1076 [538] (byte) gfx_init_plane_vertical::by#1 ? ++ (byte) gfx_init_plane_vertical::by#4 -- vbuz1=_inc_vbuz1 + //SEG1076 [538] (byte) gfx_init_plane_vertical::by#1 ← ++ (byte) gfx_init_plane_vertical::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG1077 [539] if((byte) gfx_init_plane_vertical::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_vertical::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -24470,7 +24470,7 @@ gfx_init_plane_horisontal: { jmp b2 //SEG1102 gfx_init_plane_horisontal::@2 b2: - //SEG1103 [547] (byte~) gfx_init_plane_horisontal::$8 ? (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 + //SEG1103 [547] (byte~) gfx_init_plane_horisontal::$8 ← (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 lda #4 and ay //SEG1104 [548] if((byte~) gfx_init_plane_horisontal::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_horisontal::@3 -- vbuaa_eq_0_then_la1 @@ -24479,11 +24479,11 @@ gfx_init_plane_horisontal: { jmp b5 //SEG1105 gfx_init_plane_horisontal::@5 b5: - //SEG1106 [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 + //SEG1106 [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 lda #$ff ldy #0 sta (gfxa),y - //SEG1107 [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG1107 [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -24495,7 +24495,7 @@ gfx_init_plane_horisontal: { jmp b4 //SEG1110 gfx_init_plane_horisontal::@4 b4: - //SEG1111 [552] (byte) gfx_init_plane_horisontal::ax#1 ? ++ (byte) gfx_init_plane_horisontal::ax#2 -- vbuxx=_inc_vbuxx + //SEG1111 [552] (byte) gfx_init_plane_horisontal::ax#1 ← ++ (byte) gfx_init_plane_horisontal::ax#2 -- vbuxx=_inc_vbuxx inx //SEG1112 [553] if((byte) gfx_init_plane_horisontal::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -24503,7 +24503,7 @@ gfx_init_plane_horisontal: { jmp b6 //SEG1113 gfx_init_plane_horisontal::@6 b6: - //SEG1114 [554] (byte) gfx_init_plane_horisontal::ay#1 ? ++ (byte) gfx_init_plane_horisontal::ay#4 -- vbuz1=_inc_vbuz1 + //SEG1114 [554] (byte) gfx_init_plane_horisontal::ay#1 ← ++ (byte) gfx_init_plane_horisontal::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG1115 [555] if((byte) gfx_init_plane_horisontal::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -24527,11 +24527,11 @@ gfx_init_plane_horisontal: { rts //SEG1123 gfx_init_plane_horisontal::@3 b3: - //SEG1124 [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1124 [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (gfxa),y - //SEG1125 [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG1125 [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -24557,7 +24557,7 @@ gfx_init_plane_charset8: { jmp b9 //SEG1130 gfx_init_plane_charset8::@9 b9: - //SEG1131 [563] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 + //SEG1131 [563] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_CHARROM sta PROCPORT //SEG1132 [564] phi from gfx_init_plane_charset8::@9 to gfx_init_plane_charset8::@1 [phi:gfx_init_plane_charset8::@9->gfx_init_plane_charset8::@1] @@ -24606,11 +24606,11 @@ gfx_init_plane_charset8: { jmp b2 //SEG1153 gfx_init_plane_charset8::@2 b2: - //SEG1154 [566] (byte) gfx_init_plane_charset8::bits#0 ? *((byte*) gfx_init_plane_charset8::chargen#2) -- vbuz1=_deref_pbuz2 + //SEG1154 [566] (byte) gfx_init_plane_charset8::bits#0 ← *((byte*) gfx_init_plane_charset8::chargen#2) -- vbuz1=_deref_pbuz2 ldy #0 lda (chargen),y sta bits - //SEG1155 [567] (byte*) gfx_init_plane_charset8::chargen#1 ? ++ (byte*) gfx_init_plane_charset8::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG1155 [567] (byte*) gfx_init_plane_charset8::chargen#1 ← ++ (byte*) gfx_init_plane_charset8::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 @@ -24632,7 +24632,7 @@ gfx_init_plane_charset8: { jmp b3 //SEG1166 gfx_init_plane_charset8::@3 b3: - //SEG1167 [569] (byte~) gfx_init_plane_charset8::$8 ? (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG1167 [569] (byte~) gfx_init_plane_charset8::$8 ← (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and bits //SEG1168 [570] if((byte~) gfx_init_plane_charset8::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_charset8::@4 -- vbuaa_eq_0_then_la1 @@ -24641,7 +24641,7 @@ gfx_init_plane_charset8: { jmp b5 //SEG1169 gfx_init_plane_charset8::@5 b5: - //SEG1170 [571] (byte~) gfx_init_plane_charset8::c#3 ? (byte) gfx_init_plane_charset8::col#2 -- vbuaa=vbuz1 + //SEG1170 [571] (byte~) gfx_init_plane_charset8::c#3 ← (byte) gfx_init_plane_charset8::col#2 -- vbuaa=vbuz1 lda col //SEG1171 [572] phi from gfx_init_plane_charset8::@5 to gfx_init_plane_charset8::@4 [phi:gfx_init_plane_charset8::@5->gfx_init_plane_charset8::@4] b4_from_b5: @@ -24654,19 +24654,19 @@ gfx_init_plane_charset8: { jmp b4 //SEG1175 gfx_init_plane_charset8::@4 b4: - //SEG1176 [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ? (byte) gfx_init_plane_charset8::c#2 -- _deref_pbuz1=vbuaa + //SEG1176 [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ← (byte) gfx_init_plane_charset8::c#2 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxa),y - //SEG1177 [574] (byte*) gfx_init_plane_charset8::gfxa#1 ? ++ (byte*) gfx_init_plane_charset8::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG1177 [574] (byte*) gfx_init_plane_charset8::gfxa#1 ← ++ (byte*) gfx_init_plane_charset8::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG1178 [575] (byte) gfx_init_plane_charset8::bits#1 ? (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG1178 [575] (byte) gfx_init_plane_charset8::bits#1 ← (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl bits - //SEG1179 [576] (byte) gfx_init_plane_charset8::col#1 ? ++ (byte) gfx_init_plane_charset8::col#2 -- vbuz1=_inc_vbuz1 + //SEG1179 [576] (byte) gfx_init_plane_charset8::col#1 ← ++ (byte) gfx_init_plane_charset8::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG1180 [577] (byte) gfx_init_plane_charset8::cp#1 ? ++ (byte) gfx_init_plane_charset8::cp#2 -- vbuxx=_inc_vbuxx + //SEG1180 [577] (byte) gfx_init_plane_charset8::cp#1 ← ++ (byte) gfx_init_plane_charset8::cp#2 -- vbuxx=_inc_vbuxx inx //SEG1181 [578] if((byte) gfx_init_plane_charset8::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -24674,7 +24674,7 @@ gfx_init_plane_charset8: { jmp b6 //SEG1182 gfx_init_plane_charset8::@6 b6: - //SEG1183 [579] (byte) gfx_init_plane_charset8::cr#1 ? ++ (byte) gfx_init_plane_charset8::cr#6 -- vbuz1=_inc_vbuz1 + //SEG1183 [579] (byte) gfx_init_plane_charset8::cr#1 ← ++ (byte) gfx_init_plane_charset8::cr#6 -- vbuz1=_inc_vbuz1 inc cr //SEG1184 [580] if((byte) gfx_init_plane_charset8::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@2 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -24683,7 +24683,7 @@ gfx_init_plane_charset8: { jmp b7 //SEG1185 gfx_init_plane_charset8::@7 b7: - //SEG1186 [581] (byte) gfx_init_plane_charset8::ch#1 ? ++ (byte) gfx_init_plane_charset8::ch#8 -- vbuz1=_inc_vbuz1 + //SEG1186 [581] (byte) gfx_init_plane_charset8::ch#1 ← ++ (byte) gfx_init_plane_charset8::ch#8 -- vbuz1=_inc_vbuz1 inc ch //SEG1187 [582] if((byte) gfx_init_plane_charset8::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_charset8::@1 -- vbuz1_neq_0_then_la1 lda ch @@ -24692,7 +24692,7 @@ gfx_init_plane_charset8: { jmp b8 //SEG1188 gfx_init_plane_charset8::@8 b8: - //SEG1189 [583] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG1189 [583] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT //SEG1190 [584] call dtvSetCpuBankSegment1 @@ -24769,7 +24769,7 @@ gfx_init_plane_8bppchunky: { jmp b4 //SEG1218 gfx_init_plane_8bppchunky::@4 b4: - //SEG1219 [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuaa=vbuxx + //SEG1219 [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuaa=vbuxx txa //SEG1220 [592] call dtvSetCpuBankSegment1 //SEG1221 [505] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] @@ -24779,7 +24779,7 @@ gfx_init_plane_8bppchunky: { jmp b7 //SEG1223 gfx_init_plane_8bppchunky::@7 b7: - //SEG1224 [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ? ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx + //SEG1224 [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx inx //SEG1225 [594] phi from gfx_init_plane_8bppchunky::@7 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@7->gfx_init_plane_8bppchunky::@3] b3_from_b7: @@ -24797,7 +24797,7 @@ gfx_init_plane_8bppchunky: { jmp b3 //SEG1231 gfx_init_plane_8bppchunky::@3 b3: - //SEG1232 [595] (word~) gfx_init_plane_8bppchunky::$9 ? (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 -- vwuz1=vwuz2_plus_vbuz3 + //SEG1232 [595] (word~) gfx_init_plane_8bppchunky::$9 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -24805,17 +24805,17 @@ gfx_init_plane_8bppchunky: { lda #0 adc x+1 sta _9+1 - //SEG1233 [596] (byte) gfx_init_plane_8bppchunky::c#0 ? ((byte)) (word~) gfx_init_plane_8bppchunky::$9 -- vbuaa=_byte_vwuz1 + //SEG1233 [596] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$9 -- vbuaa=_byte_vwuz1 lda _9 - //SEG1234 [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ? (byte) gfx_init_plane_8bppchunky::c#0 -- _deref_pbuz1=vbuaa + //SEG1234 [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG1235 [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ? ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 -- pbuz1=_inc_pbuz1 + //SEG1235 [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG1236 [599] (word) gfx_init_plane_8bppchunky::x#1 ? ++ (word) gfx_init_plane_8bppchunky::x#2 -- vwuz1=_inc_vwuz1 + //SEG1236 [599] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 @@ -24830,7 +24830,7 @@ gfx_init_plane_8bppchunky: { jmp b5 //SEG1238 gfx_init_plane_8bppchunky::@5 b5: - //SEG1239 [601] (byte) gfx_init_plane_8bppchunky::y#1 ? ++ (byte) gfx_init_plane_8bppchunky::y#6 -- vbuz1=_inc_vbuz1 + //SEG1239 [601] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG1240 [602] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_8bppchunky::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -24881,18 +24881,18 @@ gfx_init_vic_bitmap: { jmp b1 //SEG1258 gfx_init_vic_bitmap::@1 b1: - //SEG1259 [611] (byte) bitmap_line::x0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1259 [611] (byte) bitmap_line::x0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG1260 [612] (byte) bitmap_line::x1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 + //SEG1260 [612] (byte) bitmap_line::x1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 ldy l ldx lines_x+1,y - //SEG1261 [613] (byte) bitmap_line::y0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1261 [613] (byte) bitmap_line::y0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y,y sta bitmap_line.y0 - //SEG1262 [614] (byte) bitmap_line::y1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1262 [614] (byte) bitmap_line::y1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y+1,y sta bitmap_line.y1 @@ -24901,7 +24901,7 @@ gfx_init_vic_bitmap: { jmp b3 //SEG1264 gfx_init_vic_bitmap::@3 b3: - //SEG1265 [616] (byte) gfx_init_vic_bitmap::l#1 ? ++ (byte) gfx_init_vic_bitmap::l#2 -- vbuz1=_inc_vbuz1 + //SEG1265 [616] (byte) gfx_init_vic_bitmap::l#1 ← ++ (byte) gfx_init_vic_bitmap::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG1266 [617] if((byte) gfx_init_vic_bitmap::l#1<(const byte) gfx_init_vic_bitmap::lines_cnt#0) goto gfx_init_vic_bitmap::@1 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -24932,7 +24932,7 @@ bitmap_line: { jmp b2 //SEG1271 bitmap_line::@2 b2: - //SEG1272 [620] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx + //SEG1272 [620] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx txa eor #$ff sec @@ -24945,7 +24945,7 @@ bitmap_line: { jmp b3 //SEG1274 bitmap_line::@3 b3: - //SEG1275 [622] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1275 [622] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 lda y0 sec sbc y1 @@ -24956,16 +24956,16 @@ bitmap_line: { jmp b4 //SEG1277 bitmap_line::@4 b4: - //SEG1278 [624] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1278 [624] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y - //SEG1279 [625] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 - //SEG1280 [626] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1279 [625] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 + //SEG1280 [626] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y1 - //SEG1281 [627] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1281 [627] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1282 [628] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1282 [628] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 //SEG1283 [629] call bitmap_line_ydxi //SEG1284 [703] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi] bitmap_line_ydxi_from_b4: @@ -24982,14 +24982,14 @@ bitmap_line: { rts //SEG1292 bitmap_line::@8 b8: - //SEG1293 [631] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1293 [631] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x - //SEG1294 [632] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1294 [632] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyi.y - //SEG1295 [633] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1296 [634] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1297 [635] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1295 [633] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1296 [634] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1297 [635] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1298 [636] call bitmap_line_xdyi //SEG1299 [681] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi] @@ -25003,7 +25003,7 @@ bitmap_line: { jmp breturn //SEG1305 bitmap_line::@7 b7: - //SEG1306 [637] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1306 [637] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -25014,17 +25014,17 @@ bitmap_line: { jmp b10 //SEG1308 bitmap_line::@10 b10: - //SEG1309 [639] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1309 [639] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG1310 [640] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1310 [640] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1311 [641] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1311 [641] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y1 - //SEG1312 [642] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1312 [642] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1313 [643] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1313 [643] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 //SEG1314 [644] call bitmap_line_ydxd //SEG1315 [733] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd] bitmap_line_ydxd_from_b10: @@ -25037,14 +25037,14 @@ bitmap_line: { jmp breturn //SEG1321 bitmap_line::@9 b9: - //SEG1322 [645] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1322 [645] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x - //SEG1323 [646] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1323 [646] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyd.y - //SEG1324 [647] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1325 [648] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1326 [649] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1324 [647] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1325 [648] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1326 [649] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1327 [650] call bitmap_line_xdyd //SEG1328 [718] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd] @@ -25058,7 +25058,7 @@ bitmap_line: { jmp breturn //SEG1334 bitmap_line::@1 b1: - //SEG1335 [651] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 + //SEG1335 [651] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 txa sec sbc x0 @@ -25070,7 +25070,7 @@ bitmap_line: { jmp b5 //SEG1337 bitmap_line::@5 b5: - //SEG1338 [653] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1338 [653] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 lda y0 sec sbc y1 @@ -25081,14 +25081,14 @@ bitmap_line: { jmp b6 //SEG1340 bitmap_line::@6 b6: - //SEG1341 [655] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1341 [655] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y - //SEG1342 [656] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 - //SEG1343 [657] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - //SEG1344 [658] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1342 [656] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 + //SEG1343 [657] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + //SEG1344 [658] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1345 [659] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1345 [659] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 //SEG1346 [660] call bitmap_line_ydxd //SEG1347 [733] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd] bitmap_line_ydxd_from_b6: @@ -25101,14 +25101,14 @@ bitmap_line: { jmp breturn //SEG1353 bitmap_line::@12 b12: - //SEG1354 [661] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1354 [661] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x - //SEG1355 [662] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - //SEG1356 [663] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1355 [662] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + //SEG1356 [663] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x1 - //SEG1357 [664] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1358 [665] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1357 [664] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1358 [665] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1359 [666] call bitmap_line_xdyd //SEG1360 [718] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd] @@ -25122,7 +25122,7 @@ bitmap_line: { jmp breturn //SEG1366 bitmap_line::@11 b11: - //SEG1367 [667] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1367 [667] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -25133,15 +25133,15 @@ bitmap_line: { jmp b14 //SEG1369 bitmap_line::@14 b14: - //SEG1370 [669] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1370 [669] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG1371 [670] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1371 [670] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1372 [671] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 - //SEG1373 [672] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1372 [671] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 + //SEG1373 [672] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1374 [673] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1374 [673] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 //SEG1375 [674] call bitmap_line_ydxi //SEG1376 [703] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi] bitmap_line_ydxi_from_b14: @@ -25154,14 +25154,14 @@ bitmap_line: { jmp breturn //SEG1382 bitmap_line::@13 b13: - //SEG1383 [675] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1383 [675] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x - //SEG1384 [676] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - //SEG1385 [677] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1384 [676] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + //SEG1385 [677] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x1 - //SEG1386 [678] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1387 [679] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1386 [678] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1387 [679] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1388 [680] call bitmap_line_xdyi //SEG1389 [681] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi] @@ -25183,7 +25183,7 @@ bitmap_line_xdyi: { .label xd = 8 .label yd = 7 .label e = $12 - //SEG1396 [682] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1396 [682] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -25196,9 +25196,9 @@ bitmap_line_xdyi: { jmp b1 //SEG1401 bitmap_line_xdyi::@1 b1: - //SEG1402 [684] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 + //SEG1402 [684] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 ldx x - //SEG1403 [685] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 + //SEG1403 [685] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 ldy y //SEG1404 [686] call bitmap_plot //SEG1405 [696] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot] @@ -25209,9 +25209,9 @@ bitmap_line_xdyi: { jmp b4 //SEG1408 bitmap_line_xdyi::@4 b4: - //SEG1409 [687] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1409 [687] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1410 [688] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1410 [688] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -25223,9 +25223,9 @@ bitmap_line_xdyi: { jmp b3 //SEG1412 bitmap_line_xdyi::@3 b3: - //SEG1413 [690] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1413 [690] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1414 [691] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1414 [691] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -25238,7 +25238,7 @@ bitmap_line_xdyi: { jmp b2 //SEG1418 bitmap_line_xdyi::@2 b2: - //SEG1419 [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1419 [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1420 [694] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -25256,17 +25256,17 @@ bitmap_plot: { .label _0 = 3 .label plotter_x = 3 .label plotter_y = 5 - //SEG1424 [697] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG1424 [697] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_xhi,x sta plotter_x+1 lda bitmap_plot_xlo,x sta plotter_x - //SEG1425 [698] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG1425 [698] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG1426 [699] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG1426 [699] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 lda _0 clc adc plotter_y @@ -25274,11 +25274,11 @@ bitmap_plot: { lda _0+1 adc plotter_y+1 sta _0+1 - //SEG1427 [700] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx + //SEG1427 [700] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx lda bitmap_plot_bit,x ldy #0 ora (_0),y - //SEG1428 [701] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa + //SEG1428 [701] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa ldy #0 sta (_0),y jmp breturn @@ -25295,7 +25295,7 @@ bitmap_line_ydxi: { .label yd = 7 .label xd = 8 .label e = $d - //SEG1432 [704] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1432 [704] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -25308,8 +25308,8 @@ bitmap_line_ydxi: { jmp b1 //SEG1437 bitmap_line_ydxi::@1 b1: - //SEG1438 [706] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - //SEG1439 [707] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 + //SEG1438 [706] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + //SEG1439 [707] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 ldy y //SEG1440 [708] call bitmap_plot //SEG1441 [696] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot] @@ -25320,9 +25320,9 @@ bitmap_line_ydxi: { jmp b4 //SEG1444 bitmap_line_ydxi::@4 b4: - //SEG1445 [709] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1445 [709] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1446 [710] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1446 [710] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -25334,9 +25334,9 @@ bitmap_line_ydxi: { jmp b3 //SEG1448 bitmap_line_ydxi::@3 b3: - //SEG1449 [712] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx + //SEG1449 [712] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG1450 [713] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1450 [713] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -25349,7 +25349,7 @@ bitmap_line_ydxi: { jmp b2 //SEG1454 bitmap_line_ydxi::@2 b2: - //SEG1455 [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1455 [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -25371,7 +25371,7 @@ bitmap_line_xdyd: { .label xd = 8 .label yd = 7 .label e = $12 - //SEG1460 [719] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1460 [719] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -25384,9 +25384,9 @@ bitmap_line_xdyd: { jmp b1 //SEG1465 bitmap_line_xdyd::@1 b1: - //SEG1466 [721] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 + //SEG1466 [721] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 ldx x - //SEG1467 [722] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 + //SEG1467 [722] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 ldy y //SEG1468 [723] call bitmap_plot //SEG1469 [696] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot] @@ -25397,9 +25397,9 @@ bitmap_line_xdyd: { jmp b4 //SEG1472 bitmap_line_xdyd::@4 b4: - //SEG1473 [724] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 + //SEG1473 [724] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1474 [725] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1474 [725] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -25411,9 +25411,9 @@ bitmap_line_xdyd: { jmp b3 //SEG1476 bitmap_line_xdyd::@3 b3: - //SEG1477 [727] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG1477 [727] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG1478 [728] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1478 [728] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -25426,7 +25426,7 @@ bitmap_line_xdyd: { jmp b2 //SEG1482 bitmap_line_xdyd::@2 b2: - //SEG1483 [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1483 [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1484 [731] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -25446,7 +25446,7 @@ bitmap_line_ydxd: { .label yd = 7 .label xd = 8 .label e = $d - //SEG1488 [734] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1488 [734] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -25459,8 +25459,8 @@ bitmap_line_ydxd: { jmp b1 //SEG1493 bitmap_line_ydxd::@1 b1: - //SEG1494 [736] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - //SEG1495 [737] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 + //SEG1494 [736] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + //SEG1495 [737] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 ldy y //SEG1496 [738] call bitmap_plot //SEG1497 [696] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot] @@ -25471,9 +25471,9 @@ bitmap_line_ydxd: { jmp b4 //SEG1500 bitmap_line_ydxd::@4 b4: - //SEG1501 [739] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG1501 [739] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG1502 [740] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1502 [740] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -25485,9 +25485,9 @@ bitmap_line_ydxd: { jmp b3 //SEG1504 bitmap_line_ydxd::@3 b3: - //SEG1505 [742] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx + //SEG1505 [742] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx dex - //SEG1506 [743] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1506 [743] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -25500,7 +25500,7 @@ bitmap_line_ydxd: { jmp b2 //SEG1510 bitmap_line_ydxd::@2 b2: - //SEG1511 [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1511 [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -25519,12 +25519,12 @@ bitmap_clear: { .label bitmap = 3 .label y = 2 .label _3 = 3 - //SEG1516 [748] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG1516 [748] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG1517 [749] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG1517 [749] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG1518 [750] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] b1_from_bitmap_clear: //SEG1519 [750] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 @@ -25552,16 +25552,16 @@ bitmap_clear: { jmp b2 //SEG1531 bitmap_clear::@2 b2: - //SEG1532 [752] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1532 [752] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG1533 [753] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG1533 [753] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG1534 [754] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG1534 [754] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG1535 [755] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 @@ -25569,7 +25569,7 @@ bitmap_clear: { jmp b3 //SEG1536 bitmap_clear::@3 b3: - //SEG1537 [756] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG1537 [756] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG1538 [757] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -25600,18 +25600,18 @@ bitmap_init: { jmp b1 //SEG1548 bitmap_init::@1 b1: - //SEG1549 [761] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 + //SEG1549 [761] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 txa and #$f8 - //SEG1550 [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1550 [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_xlo,x - //SEG1551 [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) VIC_BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG1551 [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) VIC_BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #>VIC_BITMAP sta bitmap_plot_xhi,x - //SEG1552 [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy + //SEG1552 [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy tya sta bitmap_plot_bit,x - //SEG1553 [765] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 + //SEG1553 [765] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 tya lsr tay @@ -25625,7 +25625,7 @@ bitmap_init: { jmp b2 //SEG1557 bitmap_init::@2 b2: - //SEG1558 [768] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG1558 [768] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG1559 [769] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -25647,20 +25647,20 @@ bitmap_init: { jmp b3 //SEG1566 bitmap_init::@3 b3: - //SEG1567 [771] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG1567 [771] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _6 - //SEG1568 [772] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG1568 [772] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG1569 [773] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa + //SEG1569 [773] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa ora _6 - //SEG1570 [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1570 [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG1571 [775] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG1571 [775] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG1572 [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1572 [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG1573 [777] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG1573 [777] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG1574 [778] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 @@ -25669,7 +25669,7 @@ bitmap_init: { jmp b5 //SEG1575 bitmap_init::@5 b5: - //SEG1576 [779] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG1576 [779] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -25684,7 +25684,7 @@ bitmap_init: { jmp b4 //SEG1579 bitmap_init::@4 b4: - //SEG1580 [781] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG1580 [781] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG1581 [782] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -25709,7 +25709,7 @@ gfx_init_charset: { .label charset = 5 .label chargen = 3 .label c = 2 - //SEG1589 [785] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $32 -- _deref_pbuc1=vbuc2 + //SEG1589 [785] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $32 -- _deref_pbuc1=vbuc2 lda #$32 sta PROCPORT //SEG1590 [786] phi from gfx_init_charset to gfx_init_charset::@1 [phi:gfx_init_charset->gfx_init_charset::@1] @@ -25751,22 +25751,22 @@ gfx_init_charset: { jmp b2 //SEG1607 gfx_init_charset::@2 b2: - //SEG1608 [788] *((byte*) gfx_init_charset::charset#2) ? *((byte*) gfx_init_charset::chargen#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1608 [788] *((byte*) gfx_init_charset::charset#2) ← *((byte*) gfx_init_charset::chargen#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (chargen),y ldy #0 sta (charset),y - //SEG1609 [789] (byte*) gfx_init_charset::charset#1 ? ++ (byte*) gfx_init_charset::charset#2 -- pbuz1=_inc_pbuz1 + //SEG1609 [789] (byte*) gfx_init_charset::charset#1 ← ++ (byte*) gfx_init_charset::charset#2 -- pbuz1=_inc_pbuz1 inc charset bne !+ inc charset+1 !: - //SEG1610 [790] (byte*) gfx_init_charset::chargen#1 ? ++ (byte*) gfx_init_charset::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG1610 [790] (byte*) gfx_init_charset::chargen#1 ← ++ (byte*) gfx_init_charset::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 !: - //SEG1611 [791] (byte) gfx_init_charset::l#1 ? ++ (byte) gfx_init_charset::l#2 -- vbuxx=_inc_vbuxx + //SEG1611 [791] (byte) gfx_init_charset::l#1 ← ++ (byte) gfx_init_charset::l#2 -- vbuxx=_inc_vbuxx inx //SEG1612 [792] if((byte) gfx_init_charset::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_charset::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -25774,7 +25774,7 @@ gfx_init_charset: { jmp b3 //SEG1613 gfx_init_charset::@3 b3: - //SEG1614 [793] (byte) gfx_init_charset::c#1 ? ++ (byte) gfx_init_charset::c#4 -- vbuz1=_inc_vbuz1 + //SEG1614 [793] (byte) gfx_init_charset::c#1 ← ++ (byte) gfx_init_charset::c#4 -- vbuz1=_inc_vbuz1 inc c //SEG1615 [794] if((byte) gfx_init_charset::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_charset::@1 -- vbuz1_neq_0_then_la1 lda c @@ -25783,7 +25783,7 @@ gfx_init_charset: { jmp b4 //SEG1616 gfx_init_charset::@4 b4: - //SEG1617 [795] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $37 -- _deref_pbuc1=vbuc2 + //SEG1617 [795] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $37 -- _deref_pbuc1=vbuc2 lda #$37 sta PROCPORT jmp breturn @@ -25828,16 +25828,16 @@ gfx_init_screen4: { jmp b2 //SEG1634 gfx_init_screen4::@2 b2: - //SEG1635 [800] *((byte*) gfx_init_screen4::ch#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1635 [800] *((byte*) gfx_init_screen4::ch#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (ch),y - //SEG1636 [801] (byte*) gfx_init_screen4::ch#1 ? ++ (byte*) gfx_init_screen4::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1636 [801] (byte*) gfx_init_screen4::ch#1 ← ++ (byte*) gfx_init_screen4::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1637 [802] (byte) gfx_init_screen4::cx#1 ? ++ (byte) gfx_init_screen4::cx#2 -- vbuxx=_inc_vbuxx + //SEG1637 [802] (byte) gfx_init_screen4::cx#1 ← ++ (byte) gfx_init_screen4::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1638 [803] if((byte) gfx_init_screen4::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen4::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -25845,7 +25845,7 @@ gfx_init_screen4: { jmp b3 //SEG1639 gfx_init_screen4::@3 b3: - //SEG1640 [804] (byte) gfx_init_screen4::cy#1 ? ++ (byte) gfx_init_screen4::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1640 [804] (byte) gfx_init_screen4::cy#1 ← ++ (byte) gfx_init_screen4::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1641 [805] if((byte) gfx_init_screen4::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen4::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -25894,29 +25894,29 @@ gfx_init_screen3: { jmp b2 //SEG1658 gfx_init_screen3::@2 b2: - //SEG1659 [810] (byte~) gfx_init_screen3::$0 ? (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 + //SEG1659 [810] (byte~) gfx_init_screen3::$0 ← (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 txa and #3 - //SEG1660 [811] (byte~) gfx_init_screen3::$1 ? (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1660 [811] (byte~) gfx_init_screen3::$1 ← (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _1 - //SEG1661 [812] (byte~) gfx_init_screen3::$2 ? (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 + //SEG1661 [812] (byte~) gfx_init_screen3::$2 ← (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 lda #3 and cy - //SEG1662 [813] (byte~) gfx_init_screen3::$3 ? (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 -- vbuaa=vbuz1_bor_vbuaa + //SEG1662 [813] (byte~) gfx_init_screen3::$3 ← (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 -- vbuaa=vbuz1_bor_vbuaa ora _1 - //SEG1663 [814] *((byte*) gfx_init_screen3::ch#2) ? (byte~) gfx_init_screen3::$3 -- _deref_pbuz1=vbuaa + //SEG1663 [814] *((byte*) gfx_init_screen3::ch#2) ← (byte~) gfx_init_screen3::$3 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1664 [815] (byte*) gfx_init_screen3::ch#1 ? ++ (byte*) gfx_init_screen3::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1664 [815] (byte*) gfx_init_screen3::ch#1 ← ++ (byte*) gfx_init_screen3::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1665 [816] (byte) gfx_init_screen3::cx#1 ? ++ (byte) gfx_init_screen3::cx#2 -- vbuxx=_inc_vbuxx + //SEG1665 [816] (byte) gfx_init_screen3::cx#1 ← ++ (byte) gfx_init_screen3::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1666 [817] if((byte) gfx_init_screen3::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen3::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -25924,7 +25924,7 @@ gfx_init_screen3: { jmp b3 //SEG1667 gfx_init_screen3::@3 b3: - //SEG1668 [818] (byte) gfx_init_screen3::cy#1 ? ++ (byte) gfx_init_screen3::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1668 [818] (byte) gfx_init_screen3::cy#1 ← ++ (byte) gfx_init_screen3::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1669 [819] if((byte) gfx_init_screen3::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen3::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -25973,36 +25973,36 @@ gfx_init_screen2: { jmp b2 //SEG1686 gfx_init_screen2::@2 b2: - //SEG1687 [824] (byte~) gfx_init_screen2::$0 ? (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1687 [824] (byte~) gfx_init_screen2::$0 ← (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1688 [825] (byte) gfx_init_screen2::col#0 ? (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 + //SEG1688 [825] (byte) gfx_init_screen2::col#0 ← (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 and #$f tay - //SEG1689 [826] (byte) gfx_init_screen2::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 -- vbuz1=vbuc1_minus_vbuyy + //SEG1689 [826] (byte) gfx_init_screen2::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 -- vbuz1=vbuc1_minus_vbuyy tya eor #$ff clc adc #$f+1 sta col2 - //SEG1690 [827] (byte~) gfx_init_screen2::$3 ? (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 + //SEG1690 [827] (byte~) gfx_init_screen2::$3 ← (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 tya asl asl asl asl - //SEG1691 [828] (byte~) gfx_init_screen2::$4 ? (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 -- vbuaa=vbuaa_bor_vbuz1 + //SEG1691 [828] (byte~) gfx_init_screen2::$4 ← (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 -- vbuaa=vbuaa_bor_vbuz1 ora col2 - //SEG1692 [829] *((byte*) gfx_init_screen2::ch#2) ? (byte~) gfx_init_screen2::$4 -- _deref_pbuz1=vbuaa + //SEG1692 [829] *((byte*) gfx_init_screen2::ch#2) ← (byte~) gfx_init_screen2::$4 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1693 [830] (byte*) gfx_init_screen2::ch#1 ? ++ (byte*) gfx_init_screen2::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1693 [830] (byte*) gfx_init_screen2::ch#1 ← ++ (byte*) gfx_init_screen2::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1694 [831] (byte) gfx_init_screen2::cx#1 ? ++ (byte) gfx_init_screen2::cx#2 -- vbuxx=_inc_vbuxx + //SEG1694 [831] (byte) gfx_init_screen2::cx#1 ← ++ (byte) gfx_init_screen2::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1695 [832] if((byte) gfx_init_screen2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen2::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -26010,7 +26010,7 @@ gfx_init_screen2: { jmp b3 //SEG1696 gfx_init_screen2::@3 b3: - //SEG1697 [833] (byte) gfx_init_screen2::cy#1 ? ++ (byte) gfx_init_screen2::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1697 [833] (byte) gfx_init_screen2::cy#1 ← ++ (byte) gfx_init_screen2::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1698 [834] if((byte) gfx_init_screen2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen2::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -26058,21 +26058,21 @@ gfx_init_screen1: { jmp b2 //SEG1715 gfx_init_screen1::@2 b2: - //SEG1716 [839] (byte~) gfx_init_screen1::$0 ? (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1716 [839] (byte~) gfx_init_screen1::$0 ← (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1717 [840] (byte~) gfx_init_screen1::$1 ? (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1717 [840] (byte~) gfx_init_screen1::$1 ← (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1718 [841] *((byte*) gfx_init_screen1::ch#2) ? (byte~) gfx_init_screen1::$1 -- _deref_pbuz1=vbuaa + //SEG1718 [841] *((byte*) gfx_init_screen1::ch#2) ← (byte~) gfx_init_screen1::$1 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1719 [842] (byte*) gfx_init_screen1::ch#1 ? ++ (byte*) gfx_init_screen1::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1719 [842] (byte*) gfx_init_screen1::ch#1 ← ++ (byte*) gfx_init_screen1::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1720 [843] (byte) gfx_init_screen1::cx#1 ? ++ (byte) gfx_init_screen1::cx#2 -- vbuxx=_inc_vbuxx + //SEG1720 [843] (byte) gfx_init_screen1::cx#1 ← ++ (byte) gfx_init_screen1::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1721 [844] if((byte) gfx_init_screen1::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen1::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -26080,7 +26080,7 @@ gfx_init_screen1: { jmp b3 //SEG1722 gfx_init_screen1::@3 b3: - //SEG1723 [845] (byte) gfx_init_screen1::cy#1 ? ++ (byte) gfx_init_screen1::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1723 [845] (byte) gfx_init_screen1::cy#1 ← ++ (byte) gfx_init_screen1::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1724 [846] if((byte) gfx_init_screen1::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen1::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -26129,29 +26129,29 @@ gfx_init_screen0: { jmp b2 //SEG1741 gfx_init_screen0::@2 b2: - //SEG1742 [851] (byte~) gfx_init_screen0::$0 ? (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1742 [851] (byte~) gfx_init_screen0::$0 ← (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1743 [852] (byte~) gfx_init_screen0::$1 ? (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1743 [852] (byte~) gfx_init_screen0::$1 ← (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _1 - //SEG1744 [853] (byte~) gfx_init_screen0::$2 ? (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1744 [853] (byte~) gfx_init_screen0::$2 ← (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1745 [854] (byte~) gfx_init_screen0::$3 ? (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 -- vbuaa=vbuz1_bor_vbuaa + //SEG1745 [854] (byte~) gfx_init_screen0::$3 ← (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 -- vbuaa=vbuz1_bor_vbuaa ora _1 - //SEG1746 [855] *((byte*) gfx_init_screen0::ch#2) ? (byte~) gfx_init_screen0::$3 -- _deref_pbuz1=vbuaa + //SEG1746 [855] *((byte*) gfx_init_screen0::ch#2) ← (byte~) gfx_init_screen0::$3 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1747 [856] (byte*) gfx_init_screen0::ch#1 ? ++ (byte*) gfx_init_screen0::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1747 [856] (byte*) gfx_init_screen0::ch#1 ← ++ (byte*) gfx_init_screen0::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1748 [857] (byte) gfx_init_screen0::cx#1 ? ++ (byte) gfx_init_screen0::cx#2 -- vbuxx=_inc_vbuxx + //SEG1748 [857] (byte) gfx_init_screen0::cx#1 ← ++ (byte) gfx_init_screen0::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1749 [858] if((byte) gfx_init_screen0::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen0::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -26159,7 +26159,7 @@ gfx_init_screen0: { jmp b3 //SEG1750 gfx_init_screen0::@3 b3: - //SEG1751 [859] (byte) gfx_init_screen0::cy#1 ? ++ (byte) gfx_init_screen0::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1751 [859] (byte) gfx_init_screen0::cy#1 ← ++ (byte) gfx_init_screen0::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1752 [860] if((byte) gfx_init_screen0::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen0::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -26174,11 +26174,11 @@ gfx_init_screen0: { //SEG1755 keyboard_init // Initialize keyboard reading by setting CIA#$ Data Direction Registers keyboard_init: { - //SEG1756 [862] *((const byte*) CIA1_PORT_A_DDR#0) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 + //SEG1756 [862] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 // Keyboard Matrix Columns Write Mode lda #$ff sta CIA1_PORT_A_DDR - //SEG1757 [863] *((const byte*) CIA1_PORT_B_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1757 [863] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Keyboard Matrix Columns Read Mode lda #0 sta CIA1_PORT_B_DDR @@ -29243,15 +29243,15 @@ Score: 10142556 main: { //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal) // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 // Enable DTV extended modes lda #DTV_FEATURE_ENABLE sta DTV_FEATURE @@ -29331,7 +29331,7 @@ gfx_mode: { cmp #0 beq b2 //SEG45 gfx_mode::@11 - //SEG46 [20] (byte) gfx_mode::dtv_control#2 ? (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG46 [20] (byte) gfx_mode::dtv_control#2 ← (byte) gfx_mode::dtv_control#14 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_BORDER_OFF tax @@ -29344,7 +29344,7 @@ gfx_mode: { cmp #0 beq b3 //SEG51 gfx_mode::@12 - //SEG52 [23] (byte) gfx_mode::dtv_control#3 ? (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG52 [23] (byte) gfx_mode::dtv_control#3 ← (byte) gfx_mode::dtv_control#15 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_HIGHCOLOR tax @@ -29357,7 +29357,7 @@ gfx_mode: { cmp #0 beq b4 //SEG57 gfx_mode::@13 - //SEG58 [26] (byte) gfx_mode::dtv_control#4 ? (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG58 [26] (byte) gfx_mode::dtv_control#4 ← (byte) gfx_mode::dtv_control#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_OVERSCAN tax @@ -29370,7 +29370,7 @@ gfx_mode: { cmp #0 beq b5 //SEG63 gfx_mode::@14 - //SEG64 [29] (byte) gfx_mode::dtv_control#5 ? (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG64 [29] (byte) gfx_mode::dtv_control#5 ← (byte) gfx_mode::dtv_control#11 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_COLORRAM_OFF tax @@ -29383,7 +29383,7 @@ gfx_mode: { cmp #0 beq b6 //SEG69 gfx_mode::@15 - //SEG70 [32] (byte) gfx_mode::dtv_control#6 ? (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG70 [32] (byte) gfx_mode::dtv_control#6 ← (byte) gfx_mode::dtv_control#13 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_CHUNKY tax @@ -29391,7 +29391,7 @@ gfx_mode: { //SEG72 [33] phi (byte) gfx_mode::dtv_control#12 = (byte) gfx_mode::dtv_control#6 [phi:gfx_mode::@15/gfx_mode::@5->gfx_mode::@6#0] -- register_copy //SEG73 gfx_mode::@6 b6: - //SEG74 [34] *((const byte*) DTV_CONTROL#0) ? (byte) gfx_mode::dtv_control#12 -- _deref_pbuc1=vbuxx + //SEG74 [34] *((const byte*) DTV_CONTROL#0) ← (byte) gfx_mode::dtv_control#12 -- _deref_pbuc1=vbuxx stx DTV_CONTROL //SEG75 [35] if(*((const byte*) form_ctrl_ecm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@7 -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_ecm @@ -29414,7 +29414,7 @@ gfx_mode: { cmp #0 beq b8 //SEG84 gfx_mode::@17 - //SEG85 [39] (byte) gfx_mode::vic_control#2 ? (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG85 [39] (byte) gfx_mode::vic_control#2 ← (byte) gfx_mode::vic_control#5 | (const byte) VIC_BMM#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #VIC_BMM tax @@ -29422,7 +29422,7 @@ gfx_mode: { //SEG87 [40] phi (byte) gfx_mode::vic_control#4 = (byte) gfx_mode::vic_control#2 [phi:gfx_mode::@17/gfx_mode::@7->gfx_mode::@8#0] -- register_copy //SEG88 gfx_mode::@8 b8: - //SEG89 [41] *((const byte*) VIC_CONTROL#0) ? (byte) gfx_mode::vic_control#4 -- _deref_pbuc1=vbuxx + //SEG89 [41] *((const byte*) VIC_CONTROL#0) ← (byte) gfx_mode::vic_control#4 -- _deref_pbuc1=vbuxx stx VIC_CONTROL //SEG90 [42] if(*((const byte*) form_ctrl_mcm#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@9 -- _deref_pbuc1_eq_0_then_la1 lda form_ctrl_mcm @@ -29440,27 +29440,27 @@ gfx_mode: { lda #VIC_CSEL //SEG97 gfx_mode::@9 b9: - //SEG98 [45] *((const byte*) VIC_CONTROL2#0) ? (byte) gfx_mode::vic_control2#2 -- _deref_pbuc1=vbuaa + //SEG98 [45] *((const byte*) VIC_CONTROL2#0) ← (byte) gfx_mode::vic_control2#2 -- _deref_pbuc1=vbuaa sta VIC_CONTROL2 - //SEG99 [46] (byte~) gfx_mode::$20 ? *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG99 [46] (byte~) gfx_mode::$20 ← *((const byte*) form_a_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_a_start_hi asl asl asl asl - //SEG100 [47] (byte) gfx_mode::plane_a_offs#0 ? (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 + //SEG100 [47] (byte) gfx_mode::plane_a_offs#0 ← (byte~) gfx_mode::$20 | *((const byte*) form_a_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 ora form_a_start_lo tax - //SEG101 [48] (byte) get_plane::idx#0 ? *((const byte*) form_a_pattern#0) -- vbuaa=_deref_pbuc1 + //SEG101 [48] (byte) get_plane::idx#0 ← *((const byte*) form_a_pattern#0) -- vbuaa=_deref_pbuc1 lda form_a_pattern //SEG102 [49] call get_plane //SEG103 [236] phi from gfx_mode::@9 to get_plane [phi:gfx_mode::@9->get_plane] //SEG104 [236] phi (byte) get_plane::idx#10 = (byte) get_plane::idx#0 [phi:gfx_mode::@9->get_plane#0] -- register_copy jsr get_plane - //SEG105 [50] (dword) get_plane::return#16 ? (dword) get_plane::return#14 + //SEG105 [50] (dword) get_plane::return#16 ← (dword) get_plane::return#14 //SEG106 gfx_mode::@27 - //SEG107 [51] (dword~) gfx_mode::$22 ? (dword) get_plane::return#16 - //SEG108 [52] (dword) gfx_mode::plane_a#0 ? (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 -- vduz1=vduz1_plus_vbuxx + //SEG107 [51] (dword~) gfx_mode::$22 ← (dword) get_plane::return#16 + //SEG108 [52] (dword) gfx_mode::plane_a#0 ← (dword~) gfx_mode::$22 + (byte) gfx_mode::plane_a_offs#0 -- vduz1=vduz1_plus_vbuxx txa clc adc plane_a @@ -29474,74 +29474,74 @@ gfx_mode: { lda plane_a+3 adc #0 sta plane_a+3 - //SEG109 [53] (word~) gfx_mode::$24 ? < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 + //SEG109 [53] (word~) gfx_mode::$24 ← < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 lda plane_a sta _24 lda plane_a+1 sta _24+1 - //SEG110 [54] (byte~) gfx_mode::$25 ? < (word~) gfx_mode::$24 -- vbuaa=_lo_vwuz1 + //SEG110 [54] (byte~) gfx_mode::$25 ← < (word~) gfx_mode::$24 -- vbuaa=_lo_vwuz1 lda _24 - //SEG111 [55] *((const byte*) DTV_PLANEA_START_LO#0) ? (byte~) gfx_mode::$25 -- _deref_pbuc1=vbuaa + //SEG111 [55] *((const byte*) DTV_PLANEA_START_LO#0) ← (byte~) gfx_mode::$25 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_LO - //SEG112 [56] (word~) gfx_mode::$26 ? < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 + //SEG112 [56] (word~) gfx_mode::$26 ← < (dword) gfx_mode::plane_a#0 -- vwuz1=_lo_vduz2 lda plane_a sta _26 lda plane_a+1 sta _26+1 - //SEG113 [57] (byte~) gfx_mode::$27 ? > (word~) gfx_mode::$26 -- vbuaa=_hi_vwuz1 - //SEG114 [58] *((const byte*) DTV_PLANEA_START_MI#0) ? (byte~) gfx_mode::$27 -- _deref_pbuc1=vbuaa + //SEG113 [57] (byte~) gfx_mode::$27 ← > (word~) gfx_mode::$26 -- vbuaa=_hi_vwuz1 + //SEG114 [58] *((const byte*) DTV_PLANEA_START_MI#0) ← (byte~) gfx_mode::$27 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_MI - //SEG115 [59] (word~) gfx_mode::$28 ? > (dword) gfx_mode::plane_a#0 -- vwuz1=_hi_vduz2 + //SEG115 [59] (word~) gfx_mode::$28 ← > (dword) gfx_mode::plane_a#0 -- vwuz1=_hi_vduz2 lda plane_a+2 sta _28 lda plane_a+3 sta _28+1 - //SEG116 [60] (byte~) gfx_mode::$29 ? < (word~) gfx_mode::$28 -- vbuaa=_lo_vwuz1 + //SEG116 [60] (byte~) gfx_mode::$29 ← < (word~) gfx_mode::$28 -- vbuaa=_lo_vwuz1 lda _28 - //SEG117 [61] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte~) gfx_mode::$29 -- _deref_pbuc1=vbuaa + //SEG117 [61] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte~) gfx_mode::$29 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_START_HI - //SEG118 [62] (byte~) gfx_mode::$30 ? *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG118 [62] (byte~) gfx_mode::$30 ← *((const byte*) form_a_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_a_step_hi asl asl asl asl - //SEG119 [63] (byte~) gfx_mode::$31 ? (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG119 [63] (byte~) gfx_mode::$31 ← (byte~) gfx_mode::$30 | *((const byte*) form_a_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_step_lo - //SEG120 [64] *((const byte*) DTV_PLANEA_STEP#0) ? (byte~) gfx_mode::$31 -- _deref_pbuc1=vbuaa + //SEG120 [64] *((const byte*) DTV_PLANEA_STEP#0) ← (byte~) gfx_mode::$31 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_STEP - //SEG121 [65] (byte~) gfx_mode::$32 ? *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG121 [65] (byte~) gfx_mode::$32 ← *((const byte*) form_a_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_a_mod_hi asl asl asl asl - //SEG122 [66] (byte~) gfx_mode::$33 ? (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG122 [66] (byte~) gfx_mode::$33 ← (byte~) gfx_mode::$32 | *((const byte*) form_a_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_a_mod_lo - //SEG123 [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte~) gfx_mode::$33 -- _deref_pbuc1=vbuaa + //SEG123 [67] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte~) gfx_mode::$33 -- _deref_pbuc1=vbuaa sta DTV_PLANEA_MODULO_LO - //SEG124 [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG124 [68] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG125 [69] (byte~) gfx_mode::$34 ? *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG125 [69] (byte~) gfx_mode::$34 ← *((const byte*) form_b_start_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_b_start_hi asl asl asl asl - //SEG126 [70] (byte) gfx_mode::plane_b_offs#0 ? (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 + //SEG126 [70] (byte) gfx_mode::plane_b_offs#0 ← (byte~) gfx_mode::$34 | *((const byte*) form_b_start_lo#0) -- vbuxx=vbuaa_bor__deref_pbuc1 ora form_b_start_lo tax - //SEG127 [71] (byte) get_plane::idx#1 ? *((const byte*) form_b_pattern#0) -- vbuaa=_deref_pbuc1 + //SEG127 [71] (byte) get_plane::idx#1 ← *((const byte*) form_b_pattern#0) -- vbuaa=_deref_pbuc1 lda form_b_pattern //SEG128 [72] call get_plane //SEG129 [236] phi from gfx_mode::@27 to get_plane [phi:gfx_mode::@27->get_plane] //SEG130 [236] phi (byte) get_plane::idx#10 = (byte) get_plane::idx#1 [phi:gfx_mode::@27->get_plane#0] -- register_copy jsr get_plane - //SEG131 [73] (dword) get_plane::return#17 ? (dword) get_plane::return#14 + //SEG131 [73] (dword) get_plane::return#17 ← (dword) get_plane::return#14 //SEG132 gfx_mode::@28 - //SEG133 [74] (dword~) gfx_mode::$36 ? (dword) get_plane::return#17 - //SEG134 [75] (dword) gfx_mode::plane_b#0 ? (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 -- vduz1=vduz1_plus_vbuxx + //SEG133 [74] (dword~) gfx_mode::$36 ← (dword) get_plane::return#17 + //SEG134 [75] (dword) gfx_mode::plane_b#0 ← (dword~) gfx_mode::$36 + (byte) gfx_mode::plane_b_offs#0 -- vduz1=vduz1_plus_vbuxx txa clc adc plane_b @@ -29555,122 +29555,122 @@ gfx_mode: { lda plane_b+3 adc #0 sta plane_b+3 - //SEG135 [76] (word~) gfx_mode::$38 ? < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 + //SEG135 [76] (word~) gfx_mode::$38 ← < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 lda plane_b sta _38 lda plane_b+1 sta _38+1 - //SEG136 [77] (byte~) gfx_mode::$39 ? < (word~) gfx_mode::$38 -- vbuaa=_lo_vwuz1 + //SEG136 [77] (byte~) gfx_mode::$39 ← < (word~) gfx_mode::$38 -- vbuaa=_lo_vwuz1 lda _38 - //SEG137 [78] *((const byte*) DTV_PLANEB_START_LO#0) ? (byte~) gfx_mode::$39 -- _deref_pbuc1=vbuaa + //SEG137 [78] *((const byte*) DTV_PLANEB_START_LO#0) ← (byte~) gfx_mode::$39 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_LO - //SEG138 [79] (word~) gfx_mode::$40 ? < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 + //SEG138 [79] (word~) gfx_mode::$40 ← < (dword) gfx_mode::plane_b#0 -- vwuz1=_lo_vduz2 lda plane_b sta _40 lda plane_b+1 sta _40+1 - //SEG139 [80] (byte~) gfx_mode::$41 ? > (word~) gfx_mode::$40 -- vbuaa=_hi_vwuz1 - //SEG140 [81] *((const byte*) DTV_PLANEB_START_MI#0) ? (byte~) gfx_mode::$41 -- _deref_pbuc1=vbuaa + //SEG139 [80] (byte~) gfx_mode::$41 ← > (word~) gfx_mode::$40 -- vbuaa=_hi_vwuz1 + //SEG140 [81] *((const byte*) DTV_PLANEB_START_MI#0) ← (byte~) gfx_mode::$41 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_MI - //SEG141 [82] (word~) gfx_mode::$42 ? > (dword) gfx_mode::plane_b#0 -- vwuz1=_hi_vduz2 + //SEG141 [82] (word~) gfx_mode::$42 ← > (dword) gfx_mode::plane_b#0 -- vwuz1=_hi_vduz2 lda plane_b+2 sta _42 lda plane_b+3 sta _42+1 - //SEG142 [83] (byte~) gfx_mode::$43 ? < (word~) gfx_mode::$42 -- vbuaa=_lo_vwuz1 + //SEG142 [83] (byte~) gfx_mode::$43 ← < (word~) gfx_mode::$42 -- vbuaa=_lo_vwuz1 lda _42 - //SEG143 [84] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte~) gfx_mode::$43 -- _deref_pbuc1=vbuaa + //SEG143 [84] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte~) gfx_mode::$43 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_START_HI - //SEG144 [85] (byte~) gfx_mode::$44 ? *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG144 [85] (byte~) gfx_mode::$44 ← *((const byte*) form_b_step_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_b_step_hi asl asl asl asl - //SEG145 [86] (byte~) gfx_mode::$45 ? (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG145 [86] (byte~) gfx_mode::$45 ← (byte~) gfx_mode::$44 | *((const byte*) form_b_step_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_step_lo - //SEG146 [87] *((const byte*) DTV_PLANEB_STEP#0) ? (byte~) gfx_mode::$45 -- _deref_pbuc1=vbuaa + //SEG146 [87] *((const byte*) DTV_PLANEB_STEP#0) ← (byte~) gfx_mode::$45 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_STEP - //SEG147 [88] (byte~) gfx_mode::$46 ? *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG147 [88] (byte~) gfx_mode::$46 ← *((const byte*) form_b_mod_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_b_mod_hi asl asl asl asl - //SEG148 [89] (byte~) gfx_mode::$47 ? (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG148 [89] (byte~) gfx_mode::$47 ← (byte~) gfx_mode::$46 | *((const byte*) form_b_mod_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_b_mod_lo - //SEG149 [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte~) gfx_mode::$47 -- _deref_pbuc1=vbuaa + //SEG149 [90] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte~) gfx_mode::$47 -- _deref_pbuc1=vbuaa sta DTV_PLANEB_MODULO_LO - //SEG150 [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG150 [91] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG151 [92] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG151 [92] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG152 [93] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG152 [93] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) VIC_SCREEN0#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^VIC_SCREEN0/$4000 sta CIA2_PORT_A - //SEG153 [94] (byte) get_vic_screen::idx#0 ? *((const byte*) form_vic_screen#0) -- vbuaa=_deref_pbuc1 + //SEG153 [94] (byte) get_vic_screen::idx#0 ← *((const byte*) form_vic_screen#0) -- vbuaa=_deref_pbuc1 lda form_vic_screen //SEG154 [95] call get_vic_screen //SEG155 [222] phi from gfx_mode::@28 to get_vic_screen [phi:gfx_mode::@28->get_vic_screen] //SEG156 [222] phi (byte) get_vic_screen::idx#2 = (byte) get_vic_screen::idx#0 [phi:gfx_mode::@28->get_vic_screen#0] -- register_copy jsr get_vic_screen - //SEG157 [96] (byte*) get_vic_screen::return#10 ? (byte*) get_vic_screen::return#5 + //SEG157 [96] (byte*) get_vic_screen::return#10 ← (byte*) get_vic_screen::return#5 //SEG158 gfx_mode::@29 - //SEG159 [97] (byte*~) gfx_mode::$52 ? (byte*) get_vic_screen::return#10 - //SEG160 [98] (word~) gfx_mode::$54 ? (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 + //SEG159 [97] (byte*~) gfx_mode::$52 ← (byte*) get_vic_screen::return#10 + //SEG160 [98] (word~) gfx_mode::$54 ← (word)(byte*~) gfx_mode::$52 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 lda _54 and #<$3fff sta _54 lda _54+1 and #>$3fff sta _54+1 - //SEG161 [99] (word~) gfx_mode::$55 ? (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 -- vwuz1=vwuz1_ror_6 + //SEG161 [99] (word~) gfx_mode::$55 ← (word~) gfx_mode::$54 >> (byte/signed byte/word/signed word/dword/signed dword) 6 -- vwuz1=vwuz1_ror_6 ldy #6 !: lsr _55+1 ror _55 dey bne !- - //SEG162 [100] (byte~) gfx_mode::$56 ? ((byte)) (word~) gfx_mode::$55 -- vbuz1=_byte_vwuz2 + //SEG162 [100] (byte~) gfx_mode::$56 ← ((byte)) (word~) gfx_mode::$55 -- vbuz1=_byte_vwuz2 lda _55 sta _56 - //SEG163 [101] (byte) get_vic_charset::idx#0 ? *((const byte*) form_vic_gfx#0) -- vbuaa=_deref_pbuc1 + //SEG163 [101] (byte) get_vic_charset::idx#0 ← *((const byte*) form_vic_gfx#0) -- vbuaa=_deref_pbuc1 lda form_vic_gfx //SEG164 [102] call get_vic_charset jsr get_vic_charset - //SEG165 [103] (byte*) get_vic_charset::return#4 ? (byte*) get_vic_charset::return#2 + //SEG165 [103] (byte*) get_vic_charset::return#4 ← (byte*) get_vic_charset::return#2 //SEG166 gfx_mode::@30 - //SEG167 [104] (byte*~) gfx_mode::$57 ? (byte*) get_vic_charset::return#4 - //SEG168 [105] (word~) gfx_mode::$59 ? (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 + //SEG167 [104] (byte*~) gfx_mode::$57 ← (byte*) get_vic_charset::return#4 + //SEG168 [105] (word~) gfx_mode::$59 ← (word)(byte*~) gfx_mode::$57 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 lda _59 and #<$3fff sta _59 lda _59+1 and #>$3fff sta _59+1 - //SEG169 [106] (byte~) gfx_mode::$60 ? > (word~) gfx_mode::$59 -- vbuaa=_hi_vwuz1 - //SEG170 [107] (byte~) gfx_mode::$61 ? (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuaa_ror_2 + //SEG169 [106] (byte~) gfx_mode::$60 ← > (word~) gfx_mode::$59 -- vbuaa=_hi_vwuz1 + //SEG170 [107] (byte~) gfx_mode::$61 ← (byte~) gfx_mode::$60 >> (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuaa_ror_2 lsr lsr - //SEG171 [108] (byte~) gfx_mode::$62 ? (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 -- vbuaa=vbuz1_bor_vbuaa + //SEG171 [108] (byte~) gfx_mode::$62 ← (byte~) gfx_mode::$56 | (byte~) gfx_mode::$61 -- vbuaa=vbuz1_bor_vbuaa ora _56 - //SEG172 [109] *((const byte*) VIC_MEMORY#0) ? (byte~) gfx_mode::$62 -- _deref_pbuc1=vbuaa + //SEG172 [109] *((const byte*) VIC_MEMORY#0) ← (byte~) gfx_mode::$62 -- _deref_pbuc1=vbuaa // Set VIC Bank // VIC memory sta VIC_MEMORY - //SEG173 [110] (byte) get_vic_screen::idx#1 ? *((const byte*) form_vic_cols#0) -- vbuaa=_deref_pbuc1 + //SEG173 [110] (byte) get_vic_screen::idx#1 ← *((const byte*) form_vic_cols#0) -- vbuaa=_deref_pbuc1 lda form_vic_cols //SEG174 [111] call get_vic_screen //SEG175 [222] phi from gfx_mode::@30 to get_vic_screen [phi:gfx_mode::@30->get_vic_screen] //SEG176 [222] phi (byte) get_vic_screen::idx#2 = (byte) get_vic_screen::idx#1 [phi:gfx_mode::@30->get_vic_screen#0] -- register_copy jsr get_vic_screen - //SEG177 [112] (byte*) get_vic_screen::return#11 ? (byte*) get_vic_screen::return#5 + //SEG177 [112] (byte*) get_vic_screen::return#11 ← (byte*) get_vic_screen::return#5 //SEG178 gfx_mode::@31 - //SEG179 [113] (byte*) gfx_mode::vic_colors#0 ? (byte*) get_vic_screen::return#11 + //SEG179 [113] (byte*) gfx_mode::vic_colors#0 ← (byte*) get_vic_screen::return#11 //SEG180 [114] phi from gfx_mode::@31 to gfx_mode::@19 [phi:gfx_mode::@31->gfx_mode::@19] //SEG181 [114] phi (byte) gfx_mode::cy#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_mode::@31->gfx_mode::@19#0] -- vbuz1=vbuc1 lda #0 @@ -29698,76 +29698,76 @@ gfx_mode: { //SEG196 [115] phi (byte*) gfx_mode::vic_colors#2 = (byte*) gfx_mode::vic_colors#1 [phi:gfx_mode::@20->gfx_mode::@20#2] -- register_copy //SEG197 gfx_mode::@20 b20: - //SEG198 [116] *((byte*) gfx_mode::col#2) ? *((byte*) gfx_mode::vic_colors#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG198 [116] *((byte*) gfx_mode::col#2) ← *((byte*) gfx_mode::vic_colors#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (vic_colors),y sta (col),y - //SEG199 [117] (byte*) gfx_mode::col#1 ? ++ (byte*) gfx_mode::col#2 -- pbuz1=_inc_pbuz1 + //SEG199 [117] (byte*) gfx_mode::col#1 ← ++ (byte*) gfx_mode::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG200 [118] (byte*) gfx_mode::vic_colors#1 ? ++ (byte*) gfx_mode::vic_colors#2 -- pbuz1=_inc_pbuz1 + //SEG200 [118] (byte*) gfx_mode::vic_colors#1 ← ++ (byte*) gfx_mode::vic_colors#2 -- pbuz1=_inc_pbuz1 inc vic_colors bne !+ inc vic_colors+1 !: - //SEG201 [119] (byte) gfx_mode::cx#1 ? ++ (byte) gfx_mode::cx#2 -- vbuxx=_inc_vbuxx + //SEG201 [119] (byte) gfx_mode::cx#1 ← ++ (byte) gfx_mode::cx#2 -- vbuxx=_inc_vbuxx inx //SEG202 [120] if((byte) gfx_mode::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_mode::@20 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b20 //SEG203 gfx_mode::@21 - //SEG204 [121] (byte) gfx_mode::cy#1 ? ++ (byte) gfx_mode::cy#4 -- vbuz1=_inc_vbuz1 + //SEG204 [121] (byte) gfx_mode::cy#1 ← ++ (byte) gfx_mode::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG205 [122] if((byte) gfx_mode::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_mode::@19 -- vbuz1_neq_vbuc1_then_la1 lda #$19 cmp cy bne b19 //SEG206 gfx_mode::@22 - //SEG207 [123] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG207 [123] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Background colors lda #0 sta BORDERCOL - //SEG208 [124] (byte~) gfx_mode::$64 ? *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG208 [124] (byte~) gfx_mode::$64 ← *((const byte*) form_vic_bg0_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg0_hi asl asl asl asl - //SEG209 [125] (byte~) gfx_mode::$65 ? (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG209 [125] (byte~) gfx_mode::$65 ← (byte~) gfx_mode::$64 | *((const byte*) form_vic_bg0_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg0_lo - //SEG210 [126] *((const byte*) BGCOL1#0) ? (byte~) gfx_mode::$65 -- _deref_pbuc1=vbuaa + //SEG210 [126] *((const byte*) BGCOL1#0) ← (byte~) gfx_mode::$65 -- _deref_pbuc1=vbuaa sta BGCOL1 - //SEG211 [127] (byte~) gfx_mode::$66 ? *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG211 [127] (byte~) gfx_mode::$66 ← *((const byte*) form_vic_bg1_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg1_hi asl asl asl asl - //SEG212 [128] (byte~) gfx_mode::$67 ? (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG212 [128] (byte~) gfx_mode::$67 ← (byte~) gfx_mode::$66 | *((const byte*) form_vic_bg1_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg1_lo - //SEG213 [129] *((const byte*) BGCOL2#0) ? (byte~) gfx_mode::$67 -- _deref_pbuc1=vbuaa + //SEG213 [129] *((const byte*) BGCOL2#0) ← (byte~) gfx_mode::$67 -- _deref_pbuc1=vbuaa sta BGCOL2 - //SEG214 [130] (byte~) gfx_mode::$68 ? *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG214 [130] (byte~) gfx_mode::$68 ← *((const byte*) form_vic_bg2_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg2_hi asl asl asl asl - //SEG215 [131] (byte~) gfx_mode::$69 ? (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG215 [131] (byte~) gfx_mode::$69 ← (byte~) gfx_mode::$68 | *((const byte*) form_vic_bg2_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg2_lo - //SEG216 [132] *((const byte*) BGCOL3#0) ? (byte~) gfx_mode::$69 -- _deref_pbuc1=vbuaa + //SEG216 [132] *((const byte*) BGCOL3#0) ← (byte~) gfx_mode::$69 -- _deref_pbuc1=vbuaa sta BGCOL3 - //SEG217 [133] (byte~) gfx_mode::$70 ? *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 + //SEG217 [133] (byte~) gfx_mode::$70 ← *((const byte*) form_vic_bg3_hi#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=_deref_pbuc1_rol_4 lda form_vic_bg3_hi asl asl asl asl - //SEG218 [134] (byte~) gfx_mode::$71 ? (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 + //SEG218 [134] (byte~) gfx_mode::$71 ← (byte~) gfx_mode::$70 | *((const byte*) form_vic_bg3_lo#0) -- vbuaa=vbuaa_bor__deref_pbuc1 ora form_vic_bg3_lo - //SEG219 [135] *((const byte*) BGCOL4#0) ? (byte~) gfx_mode::$71 -- _deref_pbuc1=vbuaa + //SEG219 [135] *((const byte*) BGCOL4#0) ← (byte~) gfx_mode::$71 -- _deref_pbuc1=vbuaa sta BGCOL4 //SEG220 [136] if(*((const byte*) form_dtv_palet#0)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_mode::@24 -- _deref_pbuc1_eq_0_then_la1 // DTV Palette @@ -29782,10 +29782,10 @@ gfx_mode: { //SEG224 [137] phi (byte) gfx_mode::j#2 = (byte) gfx_mode::j#1 [phi:gfx_mode::@23->gfx_mode::@23#0] -- register_copy //SEG225 gfx_mode::@23 b23: - //SEG226 [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ? (byte) gfx_mode::j#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG226 [138] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::j#2) ← (byte) gfx_mode::j#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG227 [139] (byte) gfx_mode::j#1 ? ++ (byte) gfx_mode::j#2 -- vbuxx=_inc_vbuxx + //SEG227 [139] (byte) gfx_mode::j#1 ← ++ (byte) gfx_mode::j#2 -- vbuxx=_inc_vbuxx inx //SEG228 [140] if((byte) gfx_mode::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@23 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -29806,9 +29806,9 @@ gfx_mode: { //SEG237 gfx_mode::@32 //SEG238 [145] call keyboard_event_get jsr keyboard_event_get - //SEG239 [146] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + //SEG239 [146] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 //SEG240 gfx_mode::@33 - //SEG241 [147] (byte) gfx_mode::keyboard_event#0 ? (byte) keyboard_event_get::return#3 + //SEG241 [147] (byte) gfx_mode::keyboard_event#0 ← (byte) keyboard_event_get::return#3 //SEG242 [148] if((byte) gfx_mode::keyboard_event#0!=(const byte) KEY_SPACE#0) goto gfx_mode::@25 -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_SPACE bne b25 @@ -29824,10 +29824,10 @@ gfx_mode: { //SEG248 [150] phi (byte) gfx_mode::i#2 = (byte) gfx_mode::i#1 [phi:gfx_mode::@24->gfx_mode::@24#0] -- register_copy //SEG249 gfx_mode::@24 b24: - //SEG250 [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG250 [151] *((const byte*) DTV_PALETTE#0 + (byte) gfx_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) gfx_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG251 [152] (byte) gfx_mode::i#1 ? ++ (byte) gfx_mode::i#2 -- vbuxx=_inc_vbuxx + //SEG251 [152] (byte) gfx_mode::i#1 ← ++ (byte) gfx_mode::i#2 -- vbuxx=_inc_vbuxx inx //SEG252 [153] if((byte) gfx_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto gfx_mode::@24 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -29844,9 +29844,9 @@ keyboard_event_get: { cmp #0 beq b1 //SEG255 keyboard_event_get::@1 - //SEG256 [155] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#100 -- vbuz1=_dec_vbuz1 + //SEG256 [155] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#100 -- vbuz1=_dec_vbuz1 dec keyboard_events_size - //SEG257 [156] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuaa=pbuc1_derefidx_vbuz1 + //SEG257 [156] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuaa=pbuc1_derefidx_vbuz1 ldy keyboard_events_size lda keyboard_events,y //SEG258 [157] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] @@ -29884,20 +29884,20 @@ keyboard_event_scan: { //SEG274 [160] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@7#2] -- register_copy //SEG275 keyboard_event_scan::@7 b7: - //SEG276 [161] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 + //SEG276 [161] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 ldx row //SEG277 [162] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG278 [163] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG278 [163] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 //SEG279 keyboard_event_scan::@19 - //SEG280 [164] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa + //SEG280 [164] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa sta row_scan //SEG281 [165] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 -- vbuz1_neq_pbuc1_derefidx_vbuz2_then_la1 ldy row cmp keyboard_scan_values,y bne b6 //SEG282 keyboard_event_scan::@16 - //SEG283 [166] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 + //SEG283 [166] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 lax keycode axs #-[8] stx keycode @@ -29906,7 +29906,7 @@ keyboard_event_scan: { //SEG286 [167] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@15/keyboard_event_scan::@16->keyboard_event_scan::@8#1] -- register_copy //SEG287 keyboard_event_scan::@8 b8: - //SEG288 [168] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 + //SEG288 [168] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 inc row //SEG289 [169] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -29920,9 +29920,9 @@ keyboard_event_scan: { lda #KEY_LSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG295 [172] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#10 + //SEG295 [172] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#10 //SEG296 keyboard_event_scan::@20 - //SEG297 [173] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 + //SEG297 [173] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 //SEG298 [174] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 -- vbuaa_eq_0_then_la1 cmp #0 beq b4 @@ -29944,14 +29944,14 @@ keyboard_event_scan: { lda #KEY_RSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG309 [178] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#10 + //SEG309 [178] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#10 //SEG310 keyboard_event_scan::@21 - //SEG311 [179] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 + //SEG311 [179] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 //SEG312 [180] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG313 keyboard_event_scan::@4 - //SEG314 [181] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG314 [181] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#18 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_RSHIFT tax @@ -29965,14 +29965,14 @@ keyboard_event_scan: { lda #KEY_CTRL sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG321 [184] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#10 + //SEG321 [184] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#10 //SEG322 keyboard_event_scan::@22 - //SEG323 [185] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 + //SEG323 [185] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 //SEG324 [186] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG325 keyboard_event_scan::@5 - //SEG326 [187] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG326 [187] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#19 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_CTRL tax @@ -29986,14 +29986,14 @@ keyboard_event_scan: { lda #KEY_COMMODORE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG333 [190] (byte) keyboard_event_pressed::return#3 ? (byte) keyboard_event_pressed::return#10 + //SEG333 [190] (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#10 //SEG334 keyboard_event_scan::@23 - //SEG335 [191] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#3 + //SEG335 [191] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#3 //SEG336 [192] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return -- vbuaa_eq_0_then_la1 cmp #0 beq breturn //SEG337 keyboard_event_scan::@6 - //SEG338 [193] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG338 [193] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#20 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_COMMODORE tax @@ -30016,11 +30016,11 @@ keyboard_event_scan: { ldx #0 //SEG351 keyboard_event_scan::@9 b9: - //SEG352 [197] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 + //SEG352 [197] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 lda row_scan ldy row eor keyboard_scan_values,y - //SEG353 [198] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx + //SEG353 [198] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx and keyboard_matrix_col_bitmask,x //SEG354 [199] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 -- vbuaa_eq_0_then_la1 cmp #0 @@ -30031,33 +30031,33 @@ keyboard_event_scan: { cmp keyboard_events_size beq b10 //SEG357 keyboard_event_scan::@13 - //SEG358 [201] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx + //SEG358 [201] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx lda keyboard_matrix_col_bitmask,x and row_scan //SEG359 [202] if((byte) keyboard_event_scan::event_type#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 -- vbuaa_eq_0_then_la1 cmp #0 beq b11 //SEG360 keyboard_event_scan::@14 - //SEG361 [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG361 [203] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 // Key pressed lda keycode ldy keyboard_events_size sta keyboard_events,y - //SEG362 [204] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 + //SEG362 [204] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 inc keyboard_events_size //SEG363 [205] phi from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10] //SEG364 [205] phi (byte) keyboard_events_size#118 = (byte) keyboard_events_size#1 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10#0] -- register_copy //SEG365 keyboard_event_scan::@10 b10: - //SEG366 [206] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 + //SEG366 [206] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 inc keycode - //SEG367 [207] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx + //SEG367 [207] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx inx //SEG368 [208] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b9 //SEG369 keyboard_event_scan::@15 - //SEG370 [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG370 [209] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 // Store the current keyboard status for the row to debounce lda row_scan ldy row @@ -30065,14 +30065,14 @@ keyboard_event_scan: { jmp b8 //SEG371 keyboard_event_scan::@11 b11: - //SEG372 [210] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 + //SEG372 [210] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 lda #$40 ora keycode - //SEG373 [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ? (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG373 [211] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#18) ← (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa // Key released ldy keyboard_events_size sta keyboard_events,y - //SEG374 [212] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 + //SEG374 [212] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#18 -- vbuz1=_inc_vbuz1 inc keyboard_events_size jmp b10 } @@ -30083,19 +30083,19 @@ keyboard_event_scan: { keyboard_event_pressed: { .label row_bits = 7 .label keycode = 2 - //SEG376 [214] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 + //SEG376 [214] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 lda keycode lsr lsr lsr - //SEG377 [215] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa + //SEG377 [215] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa tay lda keyboard_scan_values,y sta row_bits - //SEG378 [216] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 + //SEG378 [216] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 lda #7 and keycode - //SEG379 [217] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa + //SEG379 [217] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa tay lda keyboard_matrix_col_bitmask,y and row_bits @@ -30111,10 +30111,10 @@ keyboard_event_pressed: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(X) rowid) keyboard_matrix_read: { - //SEG383 [219] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + //SEG383 [219] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx lda keyboard_matrix_row_bitmask,x sta CIA1_PORT_A - //SEG384 [220] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG384 [220] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff //SEG385 keyboard_matrix_read::@return @@ -30530,56 +30530,56 @@ form_mode: { //SEG515 [330] phi from form_mode::@14 to form_render_values [phi:form_mode::@14->form_render_values] jsr form_render_values //SEG516 form_mode::@15 - //SEG517 [270] (byte) render_preset_name::idx#0 ? *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 + //SEG517 [270] (byte) render_preset_name::idx#0 ← *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 lda form_fields_val //SEG518 [271] call render_preset_name //SEG519 [306] phi from form_mode::@15 to render_preset_name [phi:form_mode::@15->render_preset_name] //SEG520 [306] phi (byte) render_preset_name::idx#10 = (byte) render_preset_name::idx#0 [phi:form_mode::@15->render_preset_name#0] -- register_copy jsr render_preset_name //SEG521 form_mode::@16 - //SEG522 [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG522 [272] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) FORM_CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&FORM_CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG523 [273] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG523 [273] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG524 [274] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG524 [274] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG525 [275] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG525 [275] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG526 [276] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG526 [276] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) FORM_CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^FORM_CHARSET/$4000 sta CIA2_PORT_A - //SEG527 [277] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG527 [277] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Set VIC Bank // DTV Graphics Mode lda #0 sta DTV_CONTROL - //SEG528 [278] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG528 [278] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG529 [279] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG529 [279] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG530 [280] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG530 [280] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) FORM_SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) FORM_CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(FORM_SCREEN&$3fff)/$40|(FORM_CHARSET&$3fff)/$400 sta VIC_MEMORY - //SEG531 [281] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 + //SEG531 [281] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 // DTV Plane A to FORM_SCREEN also lda #(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 + //SEG532 [282] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) FORM_SCREEN#0 -- _deref_pbuc1=vbuc2 lda #>FORM_SCREEN sta DTV_PLANEA_START_MI - //SEG533 [283] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG533 [283] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI //SEG534 [284] phi from form_mode::@16 to form_mode::@1 [phi:form_mode::@16->form_mode::@1] @@ -30590,22 +30590,22 @@ form_mode: { //SEG537 [284] phi (byte) form_mode::i#2 = (byte) form_mode::i#1 [phi:form_mode::@1->form_mode::@1#0] -- register_copy //SEG538 form_mode::@1 b1: - //SEG539 [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG539 [285] *((const byte*) DTV_PALETTE#0 + (byte) form_mode::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) form_mode::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG540 [286] (byte) form_mode::i#1 ? ++ (byte) form_mode::i#2 -- vbuxx=_inc_vbuxx + //SEG540 [286] (byte) form_mode::i#1 ← ++ (byte) form_mode::i#2 -- vbuxx=_inc_vbuxx inx //SEG541 [287] if((byte) form_mode::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto form_mode::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG542 form_mode::@2 - //SEG543 [288] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG543 [288] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG544 [289] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG544 [289] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta BORDERCOL - //SEG545 [290] (byte) form_mode::preset_current#0 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG545 [290] (byte) form_mode::preset_current#0 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta preset_current //SEG546 [291] phi from form_mode::@19 form_mode::@2 to form_mode::@3 [phi:form_mode::@19/form_mode::@2->form_mode::@3] @@ -30629,10 +30629,10 @@ form_mode: { //SEG559 form_mode::@5 //SEG560 [294] call form_control jsr form_control - //SEG561 [295] (byte) form_control::return#0 ? (byte) form_control::return#2 -- vbuaa=vbuxx + //SEG561 [295] (byte) form_control::return#0 ← (byte) form_control::return#2 -- vbuaa=vbuxx txa //SEG562 form_mode::@17 - //SEG563 [296] (byte~) form_mode::$36 ? (byte) form_control::return#0 + //SEG563 [296] (byte~) form_mode::$36 ← (byte) form_control::return#0 //SEG564 [297] if((byte~) form_mode::$36==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_mode::@6 -- vbuaa_eq_0_then_la1 cmp #0 beq b6 @@ -30646,18 +30646,18 @@ form_mode: { cmp preset_current beq b4 //SEG569 form_mode::@7 - //SEG570 [300] (byte) apply_preset::idx#0 ? *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 + //SEG570 [300] (byte) apply_preset::idx#0 ← *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 //SEG571 [301] call apply_preset jsr apply_preset //SEG572 form_mode::@18 - //SEG573 [302] (byte) form_mode::preset_current#1 ? *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 + //SEG573 [302] (byte) form_mode::preset_current#1 ← *((const byte[]) form_fields_val#0) -- vbuz1=_deref_pbuc1 lda form_fields_val sta preset_current //SEG574 [303] call form_render_values //SEG575 [330] phi from form_mode::@18 to form_render_values [phi:form_mode::@18->form_render_values] jsr form_render_values //SEG576 form_mode::@19 - //SEG577 [304] (byte) render_preset_name::idx#1 ? *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 + //SEG577 [304] (byte) render_preset_name::idx#1 ← *((const byte[]) form_fields_val#0) -- vbuaa=_deref_pbuc1 lda form_fields_val //SEG578 [305] call render_preset_name //SEG579 [306] phi from form_mode::@19 to render_preset_name [phi:form_mode::@19->render_preset_name] @@ -30805,7 +30805,7 @@ render_preset_name: { sta name+1 //SEG627 render_preset_name::@1 b1: - //SEG628 [320] (byte*) print_str_at::str#1 ? (byte*) render_preset_name::name#13 + //SEG628 [320] (byte*) print_str_at::str#1 ← (byte*) render_preset_name::name#13 //SEG629 [321] call print_str_at //SEG630 [323] phi from render_preset_name::@1 to print_str_at [phi:render_preset_name::@1->print_str_at] jsr print_str_at @@ -30849,16 +30849,16 @@ print_str_at: { rts //SEG641 print_str_at::@2 b2: - //SEG642 [327] *((byte*) print_str_at::at#2) ? *((byte*) print_str_at::str#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG642 [327] *((byte*) print_str_at::at#2) ← *((byte*) print_str_at::str#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (at),y - //SEG643 [328] (byte*) print_str_at::at#0 ? ++ (byte*) print_str_at::at#2 -- pbuz1=_inc_pbuz1 + //SEG643 [328] (byte*) print_str_at::at#0 ← ++ (byte*) print_str_at::at#2 -- pbuz1=_inc_pbuz1 inc at bne !+ inc at+1 !: - //SEG644 [329] (byte*) print_str_at::str#0 ? ++ (byte*) print_str_at::str#2 -- pbuz1=_inc_pbuz1 + //SEG644 [329] (byte*) print_str_at::str#0 ← ++ (byte*) print_str_at::str#2 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -30881,22 +30881,22 @@ form_render_values: { //SEG652 [331] phi (byte) form_render_values::idx#2 = (byte) form_render_values::idx#1 [phi:form_render_values::@2->form_render_values::@1#0] -- register_copy //SEG653 form_render_values::@1 b1: - //SEG654 [332] (byte) form_field_ptr::field_idx#0 ? (byte) form_render_values::idx#2 -- vbuyy=vbuz1 + //SEG654 [332] (byte) form_field_ptr::field_idx#0 ← (byte) form_render_values::idx#2 -- vbuyy=vbuz1 ldy idx //SEG655 [333] call form_field_ptr //SEG656 [340] phi from form_render_values::@1 to form_field_ptr [phi:form_render_values::@1->form_field_ptr] //SEG657 [340] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#0 [phi:form_render_values::@1->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG658 [334] (byte*) form_field_ptr::return#2 ? (byte*) form_field_ptr::return#0 + //SEG658 [334] (byte*) form_field_ptr::return#2 ← (byte*) form_field_ptr::return#0 //SEG659 form_render_values::@2 - //SEG660 [335] (byte*) form_render_values::field#0 ? (byte*) form_field_ptr::return#2 - //SEG661 [336] *((byte*) form_render_values::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG660 [335] (byte*) form_render_values::field#0 ← (byte*) form_field_ptr::return#2 + //SEG661 [336] *((byte*) form_render_values::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_render_values::idx#2)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldx idx ldy form_fields_val,x lda print_hextab,y ldy #0 sta (field),y - //SEG662 [337] (byte) form_render_values::idx#1 ? ++ (byte) form_render_values::idx#2 -- vbuz1=_inc_vbuz1 + //SEG662 [337] (byte) form_render_values::idx#1 ← ++ (byte) form_render_values::idx#2 -- vbuz1=_inc_vbuz1 inc idx //SEG663 [338] if((byte) form_render_values::idx#1<(const byte) form_fields_cnt#0) goto form_render_values::@1 -- vbuz1_lt_vbuc1_then_la1 lda idx @@ -30913,16 +30913,16 @@ form_render_values: { form_field_ptr: { .label return = 3 .label _2 = 3 - //SEG667 [341] (byte) form_field_ptr::y#0 ? *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) -- vbuxx=pbuc1_derefidx_vbuyy + //SEG667 [341] (byte) form_field_ptr::y#0 ← *((const byte[]) form_fields_y#0 + (byte) form_field_ptr::field_idx#2) -- vbuxx=pbuc1_derefidx_vbuyy ldx form_fields_y,y - //SEG668 [342] (word~) form_field_ptr::$2 ? *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG668 [342] (word~) form_field_ptr::$2 ← *((const byte[$19]) form_line_hi#0 + (byte) form_field_ptr::y#0) w= *((const byte[$19]) form_line_lo#0 + (byte) form_field_ptr::y#0) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda form_line_hi,x sta _2+1 lda form_line_lo,x sta _2 - //SEG669 [343] (byte) form_field_ptr::x#0 ? *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) -- vbuaa=pbuc1_derefidx_vbuyy + //SEG669 [343] (byte) form_field_ptr::x#0 ← *((const byte[]) form_fields_x#0 + (byte) form_field_ptr::field_idx#2) -- vbuaa=pbuc1_derefidx_vbuyy lda form_fields_x,y - //SEG670 [344] (byte*) form_field_ptr::return#0 ? (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 -- pbuz1=pbuz1_plus_vbuaa + //SEG670 [344] (byte*) form_field_ptr::return#0 ← (byte*)(word~) form_field_ptr::$2 + (byte) form_field_ptr::x#0 -- pbuz1=pbuz1_plus_vbuaa clc adc return sta return @@ -31081,10 +31081,10 @@ apply_preset: { //SEG723 [359] phi (byte) apply_preset::i#2 = (byte) apply_preset::i#1 [phi:apply_preset::@13->apply_preset::@13#0] -- register_copy //SEG724 apply_preset::@13 b13: - //SEG725 [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ? *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) -- pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuyy + //SEG725 [360] *((const byte[]) form_fields_val#0 + (byte) apply_preset::i#2) ← *((byte*) apply_preset::preset#14 + (byte) apply_preset::i#2) -- pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuyy lda (preset),y sta form_fields_val,y - //SEG726 [361] (byte) apply_preset::i#1 ? ++ (byte) apply_preset::i#2 -- vbuyy=_inc_vbuyy + //SEG726 [361] (byte) apply_preset::i#1 ← ++ (byte) apply_preset::i#2 -- vbuyy=_inc_vbuyy iny //SEG727 [362] if((byte) apply_preset::i#1!=(const byte) form_fields_cnt#0) goto apply_preset::@13 -- vbuyy_neq_vbuc1_then_la1 cpy #form_fields_cnt @@ -31098,16 +31098,16 @@ apply_preset: { // Returns 0 if space is not pressed, non-0 if space is pressed form_control: { .label field = 3 - //SEG731 [364] (byte) form_field_ptr::field_idx#1 ? (byte) form_field_idx#28 -- vbuyy=vbuz1 + //SEG731 [364] (byte) form_field_ptr::field_idx#1 ← (byte) form_field_idx#28 -- vbuyy=vbuz1 ldy form_field_idx //SEG732 [365] call form_field_ptr //SEG733 [340] phi from form_control to form_field_ptr [phi:form_control->form_field_ptr] //SEG734 [340] phi (byte) form_field_ptr::field_idx#2 = (byte) form_field_ptr::field_idx#1 [phi:form_control->form_field_ptr#0] -- register_copy jsr form_field_ptr - //SEG735 [366] (byte*) form_field_ptr::return#3 ? (byte*) form_field_ptr::return#0 + //SEG735 [366] (byte*) form_field_ptr::return#3 ← (byte*) form_field_ptr::return#0 //SEG736 form_control::@17 - //SEG737 [367] (byte*) form_control::field#0 ? (byte*) form_field_ptr::return#3 - //SEG738 [368] (signed byte) form_cursor_count#5 ? -- (signed byte) form_cursor_count#21 -- vbsz1=_dec_vbsz1 + //SEG737 [367] (byte*) form_control::field#0 ← (byte*) form_field_ptr::return#3 + //SEG738 [368] (signed byte) form_cursor_count#5 ← -- (signed byte) form_cursor_count#21 -- vbsz1=_dec_vbsz1 dec form_cursor_count //SEG739 [369] if((signed byte) form_cursor_count#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@20 -- vbsz1_ge_0_then_la1 lda form_cursor_count @@ -31130,11 +31130,11 @@ form_control: { jmp b2 !b2: //SEG744 form_control::@6 - //SEG745 [372] (byte~) form_control::$13 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 + //SEG745 [372] (byte~) form_control::$13 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG746 [373] *((byte*) form_control::field#0) ? (byte~) form_control::$13 -- _deref_pbuz1=vbuaa + //SEG746 [373] *((byte*) form_control::field#0) ← (byte~) form_control::$13 -- _deref_pbuz1=vbuaa sta (field),y //SEG747 [374] phi from form_control::@2 form_control::@6 to form_control::@3 [phi:form_control::@2/form_control::@6->form_control::@3] //SEG748 form_control::@3 @@ -31147,28 +31147,28 @@ form_control: { //SEG753 form_control::@18 //SEG754 [377] call keyboard_event_get jsr keyboard_event_get - //SEG755 [378] (byte) keyboard_event_get::return#4 ? (byte) keyboard_event_get::return#2 + //SEG755 [378] (byte) keyboard_event_get::return#4 ← (byte) keyboard_event_get::return#2 //SEG756 form_control::@19 - //SEG757 [379] (byte) form_control::key_event#0 ? (byte) keyboard_event_get::return#4 + //SEG757 [379] (byte) form_control::key_event#0 ← (byte) keyboard_event_get::return#4 //SEG758 [380] if((byte) form_control::key_event#0!=(const byte) KEY_CRSR_DOWN#0) goto form_control::@4 -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_CRSR_DOWN bne b4 //SEG759 form_control::@7 - //SEG760 [381] (byte~) form_control::$15 ? *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 + //SEG760 [381] (byte~) form_control::$15 ← *((byte*) form_control::field#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- vbuaa=_deref_pbuz1_band_vbuc1 lda #$7f ldy #0 and (field),y - //SEG761 [382] *((byte*) form_control::field#0) ? (byte~) form_control::$15 -- _deref_pbuz1=vbuaa + //SEG761 [382] *((byte*) form_control::field#0) ← (byte~) form_control::$15 -- _deref_pbuz1=vbuaa // Unblink the cursor sta (field),y - //SEG762 [383] (byte~) form_control::$16 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 + //SEG762 [383] (byte~) form_control::$16 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 txa and #KEY_MODIFIER_SHIFT //SEG763 [384] if((byte~) form_control::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@12 -- vbuaa_eq_0_then_la1 cmp #0 beq b12 //SEG764 form_control::@8 - //SEG765 [385] (byte) form_field_idx#44 ? -- (byte) form_field_idx#28 -- vbuz1=_dec_vbuz1 + //SEG765 [385] (byte) form_field_idx#44 ← -- (byte) form_field_idx#28 -- vbuz1=_dec_vbuz1 dec form_field_idx //SEG766 [386] if((byte) form_field_idx#44!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@21 -- vbuz1_neq_vbuc1_then_la1 lda #$ff @@ -31196,7 +31196,7 @@ form_control: { //SEG779 [387] phi (byte) form_field_idx#31 = (byte) form_field_idx#44 [phi:form_control::@21/form_control::@22->form_control::@13#0] -- register_copy //SEG780 form_control::@12 b12: - //SEG781 [391] (byte) form_field_idx#45 ? ++ (byte) form_field_idx#28 -- vbuz1=_inc_vbuz1 + //SEG781 [391] (byte) form_field_idx#45 ← ++ (byte) form_field_idx#28 -- vbuz1=_inc_vbuz1 inc form_field_idx //SEG782 [392] if((byte) form_field_idx#45!=(const byte) form_fields_cnt#0) goto form_control::@22 -- vbuz1_neq_vbuc1_then_la1 lda #form_fields_cnt @@ -31215,14 +31215,14 @@ form_control: { cmp #KEY_CRSR_RIGHT bne b5 //SEG789 form_control::@9 - //SEG790 [395] (byte~) form_control::$24 ? (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 + //SEG790 [395] (byte~) form_control::$24 ← (byte) keyboard_modifiers#21 & (const byte) KEY_MODIFIER_SHIFT#0 -- vbuaa=vbuxx_band_vbuc1 txa and #KEY_MODIFIER_SHIFT //SEG791 [396] if((byte~) form_control::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto form_control::@14 -- vbuaa_eq_0_then_la1 cmp #0 beq b14 //SEG792 form_control::@10 - //SEG793 [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 + //SEG793 [397] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← -- *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_dec_pbuc1_derefidx_vbuz1 ldx form_field_idx dec form_fields_val,x //SEG794 [398] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)!=(byte/word/signed word/dword/signed dword) $ff) goto form_control::@15 -- pbuc1_derefidx_vbuz1_neq_vbuc2_then_la1 @@ -31231,12 +31231,12 @@ form_control: { cmp form_fields_val,y bne b15 //SEG795 form_control::@11 - //SEG796 [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG796 [399] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← *((const byte[]) form_fields_max#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 lda form_fields_max,y sta form_fields_val,y //SEG797 form_control::@15 b15: - //SEG798 [400] *((byte*) form_control::field#0) ? *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG798 [400] *((byte*) form_control::field#0) ← *((const byte[]) print_hextab#0 + *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)) -- _deref_pbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 // Render field value ldx form_field_idx ldy form_fields_val,x @@ -31252,7 +31252,7 @@ form_control: { rts //SEG803 form_control::@14 b14: - //SEG804 [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 + //SEG804 [401] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← ++ *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) -- pbuc1_derefidx_vbuz1=_inc_pbuc1_derefidx_vbuz1 ldx form_field_idx inc form_fields_val,x //SEG805 [402] if(*((const byte[]) form_fields_val#0 + (byte) form_field_idx#28)<=*((const byte[]) form_fields_max#0 + (byte) form_field_idx#28)) goto form_control::@15 -- pbuc1_derefidx_vbuz1_le_pbuc2_derefidx_vbuz1_then_la1 @@ -31262,7 +31262,7 @@ form_control: { bcc b15 beq b15 //SEG806 form_control::@16 - //SEG807 [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG807 [403] *((const byte[]) form_fields_val#0 + (byte) form_field_idx#28) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 sta form_fields_val,y jmp b15 @@ -31281,11 +31281,11 @@ form_control: { //SEG815 form_control::@23 //SEG816 form_control::@2 b2: - //SEG817 [406] (byte/word/dword~) form_control::$14 ? *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 -- vbuaa=_deref_pbuz1_bor_vbuc1 + //SEG817 [406] (byte/word/dword~) form_control::$14 ← *((byte*) form_control::field#0) | (byte/word/signed word/dword/signed dword) $80 -- vbuaa=_deref_pbuz1_bor_vbuc1 lda #$80 ldy #0 ora (field),y - //SEG818 [407] *((byte*) form_control::field#0) ? (byte/word/dword~) form_control::$14 -- _deref_pbuz1=vbuaa + //SEG818 [407] *((byte*) form_control::field#0) ← (byte/word/dword~) form_control::$14 -- _deref_pbuz1=vbuaa sta (field),y jmp b3 //SEG819 [408] phi from form_control::@17 to form_control::@20 [phi:form_control::@17->form_control::@20] @@ -31311,15 +31311,15 @@ form_set_screen: { //SEG829 [410] phi (byte*) form_set_screen::line#2 = (byte*) form_set_screen::line#1 [phi:form_set_screen::@1->form_set_screen::@1#1] -- register_copy //SEG830 form_set_screen::@1 b1: - //SEG831 [411] (byte~) form_set_screen::$0 ? < (byte*) form_set_screen::line#2 -- vbuaa=_lo_pbuz1 + //SEG831 [411] (byte~) form_set_screen::$0 ← < (byte*) form_set_screen::line#2 -- vbuaa=_lo_pbuz1 lda line - //SEG832 [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG832 [412] *((const byte[$19]) form_line_lo#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_lo,x - //SEG833 [413] (byte~) form_set_screen::$1 ? > (byte*) form_set_screen::line#2 -- vbuaa=_hi_pbuz1 + //SEG833 [413] (byte~) form_set_screen::$1 ← > (byte*) form_set_screen::line#2 -- vbuaa=_hi_pbuz1 lda line+1 - //SEG834 [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ? (byte~) form_set_screen::$1 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG834 [414] *((const byte[$19]) form_line_hi#0 + (byte) form_set_screen::y#2) ← (byte~) form_set_screen::$1 -- pbuc1_derefidx_vbuxx=vbuaa sta form_line_hi,x - //SEG835 [415] (byte*) form_set_screen::line#1 ? (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG835 [415] (byte*) form_set_screen::line#1 ← (byte*) form_set_screen::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc line @@ -31327,7 +31327,7 @@ form_set_screen: { bcc !+ inc line+1 !: - //SEG836 [416] (byte) form_set_screen::y#1 ? ++ (byte) form_set_screen::y#2 -- vbuxx=_inc_vbuxx + //SEG836 [416] (byte) form_set_screen::y#1 ← ++ (byte) form_set_screen::y#2 -- vbuxx=_inc_vbuxx inx //SEG837 [417] if((byte) form_set_screen::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto form_set_screen::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$19 @@ -31342,7 +31342,7 @@ form_set_screen: { // print_str_lines(byte* zeropage(3) str) print_str_lines: { .label str = 3 - //SEG841 [420] (byte*~) print_char_cursor#77 ? (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 + //SEG841 [420] (byte*~) print_char_cursor#77 ← (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 lda print_set_screen.screen sta print_char_cursor lda print_set_screen.screen+1 @@ -31366,10 +31366,10 @@ print_str_lines: { //SEG852 [424] phi (byte*) print_str_lines::str#4 = (byte*) print_str_lines::str#3 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#1] -- register_copy //SEG853 print_str_lines::@2 b2: - //SEG854 [425] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#4) -- vbuaa=_deref_pbuz1 + //SEG854 [425] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#4) -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y - //SEG855 [426] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#4 -- pbuz1=_inc_pbuz1 + //SEG855 [426] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#4 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -31378,10 +31378,10 @@ print_str_lines: { cmp #'@' beq b3 //SEG857 print_str_lines::@4 - //SEG858 [428] *((byte*) print_char_cursor#20) ? (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa + //SEG858 [428] *((byte*) print_char_cursor#20) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG859 [429] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#20 -- pbuz1=_inc_pbuz1 + //SEG859 [429] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -31398,7 +31398,7 @@ print_str_lines: { //SEG866 [433] call print_ln //SEG867 [435] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln] jsr print_ln - //SEG868 [434] (byte*~) print_char_cursor#78 ? (byte*) print_line_cursor#22 -- pbuz1=pbuz2 + //SEG868 [434] (byte*~) print_char_cursor#78 ← (byte*) print_line_cursor#22 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -31412,7 +31412,7 @@ print_ln: { //SEG871 [436] phi (byte*) print_line_cursor#21 = (byte*) print_line_cursor#2 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy //SEG872 print_ln::@1 b1: - //SEG873 [437] (byte*) print_line_cursor#22 ? (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG873 [437] (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#21 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -31438,7 +31438,7 @@ print_ln: { print_cls: { .label _0 = 5 .label sc = 3 - //SEG878 [440] (byte*) print_cls::sc#0 ? (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 + //SEG878 [440] (byte*) print_cls::sc#0 ← (byte*) print_set_screen::screen#2 -- pbuz1=pbuz2 lda print_set_screen.screen sta sc lda print_set_screen.screen+1 @@ -31447,16 +31447,16 @@ print_cls: { //SEG880 [441] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#0 [phi:print_cls/print_cls::@1->print_cls::@1#0] -- register_copy //SEG881 print_cls::@1 b1: - //SEG882 [442] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG882 [442] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG883 [443] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG883 [443] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 !: - //SEG884 [444] (byte*~) print_cls::$0 ? (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 + //SEG884 [444] (byte*~) print_cls::$0 ← (byte*) print_set_screen::screen#2 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 lda print_set_screen.screen clc adc #<$3e8 @@ -31598,7 +31598,7 @@ gfx_init_plane_fill: { .label by = 7 .label plane_addr = 9 .label fill = 2 - //SEG959 [484] (dword~) gfx_init_plane_fill::$0 ? (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vduz1=vduz2_rol_2 + //SEG959 [484] (dword~) gfx_init_plane_fill::$0 ← (dword) gfx_init_plane_fill::plane_addr#3 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vduz1=vduz2_rol_2 lda plane_addr sta _0 lda plane_addr+1 @@ -31615,36 +31615,36 @@ gfx_init_plane_fill: { rol _0+1 rol _0+2 rol _0+3 - //SEG960 [485] (word~) gfx_init_plane_fill::$1 ? > (dword~) gfx_init_plane_fill::$0 -- vwuz1=_hi_vduz2 + //SEG960 [485] (word~) gfx_init_plane_fill::$1 ← > (dword~) gfx_init_plane_fill::$0 -- vwuz1=_hi_vduz2 lda _0+2 sta _1 lda _0+3 sta _1+1 - //SEG961 [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ? < (word~) gfx_init_plane_fill::$1 -- vbuxx=_lo_vwuz1 + //SEG961 [486] (byte) gfx_init_plane_fill::gfxbCpuBank#0 ← < (word~) gfx_init_plane_fill::$1 -- vbuxx=_lo_vwuz1 lda _1 tax - //SEG962 [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ? (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuaa=vbuxx + //SEG962 [487] (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 ← (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuaa=vbuxx txa //SEG963 [488] call dtvSetCpuBankSegment1 //SEG964 [505] phi from gfx_init_plane_fill to dtvSetCpuBankSegment1 [phi:gfx_init_plane_fill->dtvSetCpuBankSegment1] //SEG965 [505] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#11 [phi:gfx_init_plane_fill->dtvSetCpuBankSegment1#0] -- register_copy jsr dtvSetCpuBankSegment1 //SEG966 gfx_init_plane_fill::@5 - //SEG967 [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ? ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuxx=_inc_vbuxx + //SEG967 [489] (byte) gfx_init_plane_fill::gfxbCpuBank#1 ← ++ (byte) gfx_init_plane_fill::gfxbCpuBank#0 -- vbuxx=_inc_vbuxx inx - //SEG968 [490] (word~) gfx_init_plane_fill::$4 ? < (dword) gfx_init_plane_fill::plane_addr#3 -- vwuz1=_lo_vduz2 + //SEG968 [490] (word~) gfx_init_plane_fill::$4 ← < (dword) gfx_init_plane_fill::plane_addr#3 -- vwuz1=_lo_vduz2 lda plane_addr sta _4 lda plane_addr+1 sta _4+1 - //SEG969 [491] (word~) gfx_init_plane_fill::$5 ? (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 + //SEG969 [491] (word~) gfx_init_plane_fill::$5 ← (word~) gfx_init_plane_fill::$4 & (word/signed word/dword/signed dword) $3fff -- vwuz1=vwuz1_band_vwuc1 lda _5 and #<$3fff sta _5 lda _5+1 and #>$3fff sta _5+1 - //SEG970 [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ? (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 -- vwuz1=vwuc1_plus_vwuz1 + //SEG970 [492] (word/signed dword/dword~) gfx_init_plane_fill::$6 ← (word/signed word/dword/signed dword) $4000 + (word~) gfx_init_plane_fill::$5 -- vwuz1=vwuc1_plus_vwuz1 clc lda _6 adc #<$4000 @@ -31652,7 +31652,7 @@ gfx_init_plane_fill: { lda _6+1 adc #>$4000 sta _6+1 - //SEG971 [493] (byte*~) gfx_init_plane_fill::gfxb#6 ? (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 + //SEG971 [493] (byte*~) gfx_init_plane_fill::gfxb#6 ← (byte*)(word/signed dword/dword~) gfx_init_plane_fill::$6 //SEG972 [494] phi from gfx_init_plane_fill::@5 to gfx_init_plane_fill::@1 [phi:gfx_init_plane_fill::@5->gfx_init_plane_fill::@1] //SEG973 [494] phi (byte) gfx_init_plane_fill::by#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:gfx_init_plane_fill::@5->gfx_init_plane_fill::@1#0] -- vbuz1=vbuc1 lda #0 @@ -31672,22 +31672,22 @@ gfx_init_plane_fill: { //SEG984 [495] phi (byte*) gfx_init_plane_fill::gfxb#2 = (byte*) gfx_init_plane_fill::gfxb#1 [phi:gfx_init_plane_fill::@2->gfx_init_plane_fill::@2#1] -- register_copy //SEG985 gfx_init_plane_fill::@2 b2: - //SEG986 [496] *((byte*) gfx_init_plane_fill::gfxb#2) ? (byte) gfx_init_plane_fill::fill#6 -- _deref_pbuz1=vbuz2 + //SEG986 [496] *((byte*) gfx_init_plane_fill::gfxb#2) ← (byte) gfx_init_plane_fill::fill#6 -- _deref_pbuz1=vbuz2 lda fill ldy #0 sta (gfxb),y - //SEG987 [497] (byte*) gfx_init_plane_fill::gfxb#1 ? ++ (byte*) gfx_init_plane_fill::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG987 [497] (byte*) gfx_init_plane_fill::gfxb#1 ← ++ (byte*) gfx_init_plane_fill::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG988 [498] (byte) gfx_init_plane_fill::bx#1 ? ++ (byte) gfx_init_plane_fill::bx#2 -- vbuxx=_inc_vbuxx + //SEG988 [498] (byte) gfx_init_plane_fill::bx#1 ← ++ (byte) gfx_init_plane_fill::bx#2 -- vbuxx=_inc_vbuxx inx //SEG989 [499] if((byte) gfx_init_plane_fill::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_fill::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG990 gfx_init_plane_fill::@3 - //SEG991 [500] (byte) gfx_init_plane_fill::by#1 ? ++ (byte) gfx_init_plane_fill::by#4 -- vbuz1=_inc_vbuz1 + //SEG991 [500] (byte) gfx_init_plane_fill::by#1 ← ++ (byte) gfx_init_plane_fill::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG992 [501] if((byte) gfx_init_plane_fill::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_fill::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -31712,7 +31712,7 @@ gfx_init_plane_fill: { dtvSetCpuBankSegment1: { // Move CPU BANK 1 SEGMENT ($4000-$7fff) .label cpuBank = $ff - //SEG1001 [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 -- _deref_pbuc1=vbuaa + //SEG1001 [506] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 -- _deref_pbuc1=vbuaa sta cpuBank //SEG1002 asm { .byte$32,$dd lda$ff .byte$32,$00 } .byte $32, $dd @@ -31800,28 +31800,28 @@ gfx_init_plane_horisontal2: { //SEG1035 [518] phi (byte*) gfx_init_plane_horisontal2::gfxa#2 = (byte*) gfx_init_plane_horisontal2::gfxa#1 [phi:gfx_init_plane_horisontal2::@2->gfx_init_plane_horisontal2::@2#1] -- register_copy //SEG1036 gfx_init_plane_horisontal2::@2 b2: - //SEG1037 [519] (byte~) gfx_init_plane_horisontal2::$8 ? (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 + //SEG1037 [519] (byte~) gfx_init_plane_horisontal2::$8 ← (byte) gfx_init_plane_horisontal2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 lda ay lsr - //SEG1038 [520] (byte) gfx_init_plane_horisontal2::row#0 ? (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 + //SEG1038 [520] (byte) gfx_init_plane_horisontal2::row#0 ← (byte~) gfx_init_plane_horisontal2::$8 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 and #3 - //SEG1039 [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ? *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa + //SEG1039 [521] *((byte*) gfx_init_plane_horisontal2::gfxa#2) ← *((const byte[]) gfx_init_plane_horisontal2::row_bitmask#0 + (byte) gfx_init_plane_horisontal2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa tay lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG1040 [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG1040 [522] (byte*) gfx_init_plane_horisontal2::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal2::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG1041 [523] (byte) gfx_init_plane_horisontal2::ax#1 ? ++ (byte) gfx_init_plane_horisontal2::ax#2 -- vbuxx=_inc_vbuxx + //SEG1041 [523] (byte) gfx_init_plane_horisontal2::ax#1 ← ++ (byte) gfx_init_plane_horisontal2::ax#2 -- vbuxx=_inc_vbuxx inx //SEG1042 [524] if((byte) gfx_init_plane_horisontal2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal2::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1043 gfx_init_plane_horisontal2::@3 - //SEG1044 [525] (byte) gfx_init_plane_horisontal2::ay#1 ? ++ (byte) gfx_init_plane_horisontal2::ay#4 -- vbuz1=_inc_vbuz1 + //SEG1044 [525] (byte) gfx_init_plane_horisontal2::ay#1 ← ++ (byte) gfx_init_plane_horisontal2::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG1045 [526] if((byte) gfx_init_plane_horisontal2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal2::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -31873,22 +31873,22 @@ gfx_init_plane_vertical: { //SEG1069 [533] phi (byte*) gfx_init_plane_vertical::gfxb#2 = (byte*) gfx_init_plane_vertical::gfxb#1 [phi:gfx_init_plane_vertical::@2->gfx_init_plane_vertical::@2#1] -- register_copy //SEG1070 gfx_init_plane_vertical::@2 b2: - //SEG1071 [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 + //SEG1071 [534] *((byte*) gfx_init_plane_vertical::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 lda #$f ldy #0 sta (gfxb),y - //SEG1072 [535] (byte*) gfx_init_plane_vertical::gfxb#1 ? ++ (byte*) gfx_init_plane_vertical::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG1072 [535] (byte*) gfx_init_plane_vertical::gfxb#1 ← ++ (byte*) gfx_init_plane_vertical::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG1073 [536] (byte) gfx_init_plane_vertical::bx#1 ? ++ (byte) gfx_init_plane_vertical::bx#2 -- vbuxx=_inc_vbuxx + //SEG1073 [536] (byte) gfx_init_plane_vertical::bx#1 ← ++ (byte) gfx_init_plane_vertical::bx#2 -- vbuxx=_inc_vbuxx inx //SEG1074 [537] if((byte) gfx_init_plane_vertical::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_vertical::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1075 gfx_init_plane_vertical::@3 - //SEG1076 [538] (byte) gfx_init_plane_vertical::by#1 ? ++ (byte) gfx_init_plane_vertical::by#4 -- vbuz1=_inc_vbuz1 + //SEG1076 [538] (byte) gfx_init_plane_vertical::by#1 ← ++ (byte) gfx_init_plane_vertical::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG1077 [539] if((byte) gfx_init_plane_vertical::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_vertical::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -31939,18 +31939,18 @@ gfx_init_plane_horisontal: { //SEG1101 [546] phi (byte*) gfx_init_plane_horisontal::gfxa#3 = (byte*) gfx_init_plane_horisontal::gfxa#7 [phi:gfx_init_plane_horisontal::@4->gfx_init_plane_horisontal::@2#1] -- register_copy //SEG1102 gfx_init_plane_horisontal::@2 b2: - //SEG1103 [547] (byte~) gfx_init_plane_horisontal::$8 ? (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 + //SEG1103 [547] (byte~) gfx_init_plane_horisontal::$8 ← (byte) gfx_init_plane_horisontal::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 lda #4 and ay //SEG1104 [548] if((byte~) gfx_init_plane_horisontal::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_horisontal::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG1105 gfx_init_plane_horisontal::@5 - //SEG1106 [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 + //SEG1106 [549] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 lda #$ff ldy #0 sta (gfxa),y - //SEG1107 [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG1107 [550] (byte*) gfx_init_plane_horisontal::gfxa#2 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -31959,13 +31959,13 @@ gfx_init_plane_horisontal: { //SEG1109 [551] phi (byte*) gfx_init_plane_horisontal::gfxa#7 = (byte*) gfx_init_plane_horisontal::gfxa#1 [phi:gfx_init_plane_horisontal::@3/gfx_init_plane_horisontal::@5->gfx_init_plane_horisontal::@4#0] -- register_copy //SEG1110 gfx_init_plane_horisontal::@4 b4: - //SEG1111 [552] (byte) gfx_init_plane_horisontal::ax#1 ? ++ (byte) gfx_init_plane_horisontal::ax#2 -- vbuxx=_inc_vbuxx + //SEG1111 [552] (byte) gfx_init_plane_horisontal::ax#1 ← ++ (byte) gfx_init_plane_horisontal::ax#2 -- vbuxx=_inc_vbuxx inx //SEG1112 [553] if((byte) gfx_init_plane_horisontal::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_plane_horisontal::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1113 gfx_init_plane_horisontal::@6 - //SEG1114 [554] (byte) gfx_init_plane_horisontal::ay#1 ? ++ (byte) gfx_init_plane_horisontal::ay#4 -- vbuz1=_inc_vbuz1 + //SEG1114 [554] (byte) gfx_init_plane_horisontal::ay#1 ← ++ (byte) gfx_init_plane_horisontal::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG1115 [555] if((byte) gfx_init_plane_horisontal::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_horisontal::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -31983,11 +31983,11 @@ gfx_init_plane_horisontal: { rts //SEG1123 gfx_init_plane_horisontal::@3 b3: - //SEG1124 [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1124 [559] *((byte*) gfx_init_plane_horisontal::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (gfxa),y - //SEG1125 [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ? ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG1125 [560] (byte*) gfx_init_plane_horisontal::gfxa#1 ← ++ (byte*) gfx_init_plane_horisontal::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -32010,7 +32010,7 @@ gfx_init_plane_charset8: { lda #gfxbCpuBank jsr dtvSetCpuBankSegment1 //SEG1130 gfx_init_plane_charset8::@9 - //SEG1131 [563] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 + //SEG1131 [563] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_CHARROM sta PROCPORT //SEG1132 [564] phi from gfx_init_plane_charset8::@9 to gfx_init_plane_charset8::@1 [phi:gfx_init_plane_charset8::@9->gfx_init_plane_charset8::@1] @@ -32050,11 +32050,11 @@ gfx_init_plane_charset8: { //SEG1152 [565] phi (byte*) gfx_init_plane_charset8::chargen#2 = (byte*) gfx_init_plane_charset8::chargen#1 [phi:gfx_init_plane_charset8::@6->gfx_init_plane_charset8::@2#3] -- register_copy //SEG1153 gfx_init_plane_charset8::@2 b2: - //SEG1154 [566] (byte) gfx_init_plane_charset8::bits#0 ? *((byte*) gfx_init_plane_charset8::chargen#2) -- vbuz1=_deref_pbuz2 + //SEG1154 [566] (byte) gfx_init_plane_charset8::bits#0 ← *((byte*) gfx_init_plane_charset8::chargen#2) -- vbuz1=_deref_pbuz2 ldy #0 lda (chargen),y sta bits - //SEG1155 [567] (byte*) gfx_init_plane_charset8::chargen#1 ? ++ (byte*) gfx_init_plane_charset8::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG1155 [567] (byte*) gfx_init_plane_charset8::chargen#1 ← ++ (byte*) gfx_init_plane_charset8::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 @@ -32072,14 +32072,14 @@ gfx_init_plane_charset8: { //SEG1165 [568] phi (byte) gfx_init_plane_charset8::bits#2 = (byte) gfx_init_plane_charset8::bits#1 [phi:gfx_init_plane_charset8::@4->gfx_init_plane_charset8::@3#3] -- register_copy //SEG1166 gfx_init_plane_charset8::@3 b3: - //SEG1167 [569] (byte~) gfx_init_plane_charset8::$8 ? (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG1167 [569] (byte~) gfx_init_plane_charset8::$8 ← (byte) gfx_init_plane_charset8::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and bits //SEG1168 [570] if((byte~) gfx_init_plane_charset8::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_charset8::@4 -- vbuaa_eq_0_then_la1 cmp #0 beq b5 //SEG1169 gfx_init_plane_charset8::@5 - //SEG1170 [571] (byte~) gfx_init_plane_charset8::c#3 ? (byte) gfx_init_plane_charset8::col#2 -- vbuaa=vbuz1 + //SEG1170 [571] (byte~) gfx_init_plane_charset8::c#3 ← (byte) gfx_init_plane_charset8::col#2 -- vbuaa=vbuz1 lda col //SEG1171 [572] phi from gfx_init_plane_charset8::@5 to gfx_init_plane_charset8::@4 [phi:gfx_init_plane_charset8::@5->gfx_init_plane_charset8::@4] //SEG1172 [572] phi (byte) gfx_init_plane_charset8::c#2 = (byte~) gfx_init_plane_charset8::c#3 [phi:gfx_init_plane_charset8::@5->gfx_init_plane_charset8::@4#0] -- register_copy @@ -32090,39 +32090,39 @@ gfx_init_plane_charset8: { lda #0 //SEG1175 gfx_init_plane_charset8::@4 b4: - //SEG1176 [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ? (byte) gfx_init_plane_charset8::c#2 -- _deref_pbuz1=vbuaa + //SEG1176 [573] *((byte*) gfx_init_plane_charset8::gfxa#2) ← (byte) gfx_init_plane_charset8::c#2 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxa),y - //SEG1177 [574] (byte*) gfx_init_plane_charset8::gfxa#1 ? ++ (byte*) gfx_init_plane_charset8::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG1177 [574] (byte*) gfx_init_plane_charset8::gfxa#1 ← ++ (byte*) gfx_init_plane_charset8::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG1178 [575] (byte) gfx_init_plane_charset8::bits#1 ? (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG1178 [575] (byte) gfx_init_plane_charset8::bits#1 ← (byte) gfx_init_plane_charset8::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl bits - //SEG1179 [576] (byte) gfx_init_plane_charset8::col#1 ? ++ (byte) gfx_init_plane_charset8::col#2 -- vbuz1=_inc_vbuz1 + //SEG1179 [576] (byte) gfx_init_plane_charset8::col#1 ← ++ (byte) gfx_init_plane_charset8::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG1180 [577] (byte) gfx_init_plane_charset8::cp#1 ? ++ (byte) gfx_init_plane_charset8::cp#2 -- vbuxx=_inc_vbuxx + //SEG1180 [577] (byte) gfx_init_plane_charset8::cp#1 ← ++ (byte) gfx_init_plane_charset8::cp#2 -- vbuxx=_inc_vbuxx inx //SEG1181 [578] if((byte) gfx_init_plane_charset8::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b3 //SEG1182 gfx_init_plane_charset8::@6 - //SEG1183 [579] (byte) gfx_init_plane_charset8::cr#1 ? ++ (byte) gfx_init_plane_charset8::cr#6 -- vbuz1=_inc_vbuz1 + //SEG1183 [579] (byte) gfx_init_plane_charset8::cr#1 ← ++ (byte) gfx_init_plane_charset8::cr#6 -- vbuz1=_inc_vbuz1 inc cr //SEG1184 [580] if((byte) gfx_init_plane_charset8::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_plane_charset8::@2 -- vbuz1_neq_vbuc1_then_la1 lda #8 cmp cr bne b2 //SEG1185 gfx_init_plane_charset8::@7 - //SEG1186 [581] (byte) gfx_init_plane_charset8::ch#1 ? ++ (byte) gfx_init_plane_charset8::ch#8 -- vbuz1=_inc_vbuz1 + //SEG1186 [581] (byte) gfx_init_plane_charset8::ch#1 ← ++ (byte) gfx_init_plane_charset8::ch#8 -- vbuz1=_inc_vbuz1 inc ch //SEG1187 [582] if((byte) gfx_init_plane_charset8::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_plane_charset8::@1 -- vbuz1_neq_0_then_la1 lda ch cmp #0 bne b1 //SEG1188 gfx_init_plane_charset8::@8 - //SEG1189 [583] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG1189 [583] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT //SEG1190 [584] call dtvSetCpuBankSegment1 @@ -32184,14 +32184,14 @@ gfx_init_plane_8bppchunky: { cmp #<$8000 bne b3 //SEG1218 gfx_init_plane_8bppchunky::@4 - //SEG1219 [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuaa=vbuxx + //SEG1219 [591] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuaa=vbuxx txa //SEG1220 [592] call dtvSetCpuBankSegment1 //SEG1221 [505] phi from gfx_init_plane_8bppchunky::@4 to dtvSetCpuBankSegment1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1] //SEG1222 [505] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#13 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:gfx_init_plane_8bppchunky::@4->dtvSetCpuBankSegment1#0] -- register_copy jsr dtvSetCpuBankSegment1 //SEG1223 gfx_init_plane_8bppchunky::@7 - //SEG1224 [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ? ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx + //SEG1224 [593] (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 ← ++ (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx inx //SEG1225 [594] phi from gfx_init_plane_8bppchunky::@7 to gfx_init_plane_8bppchunky::@3 [phi:gfx_init_plane_8bppchunky::@7->gfx_init_plane_8bppchunky::@3] //SEG1226 [594] phi (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#8 = (byte) gfx_init_plane_8bppchunky::gfxbCpuBank#2 [phi:gfx_init_plane_8bppchunky::@7->gfx_init_plane_8bppchunky::@3#0] -- register_copy @@ -32205,7 +32205,7 @@ gfx_init_plane_8bppchunky: { //SEG1230 [594] phi (byte*) gfx_init_plane_8bppchunky::gfxb#4 = (byte*) gfx_init_plane_8bppchunky::gfxb#3 [phi:gfx_init_plane_8bppchunky::@2->gfx_init_plane_8bppchunky::@3#1] -- register_copy //SEG1231 gfx_init_plane_8bppchunky::@3 b3: - //SEG1232 [595] (word~) gfx_init_plane_8bppchunky::$9 ? (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 -- vwuz1=vwuz2_plus_vbuz3 + //SEG1232 [595] (word~) gfx_init_plane_8bppchunky::$9 ← (word) gfx_init_plane_8bppchunky::x#2 + (byte) gfx_init_plane_8bppchunky::y#6 -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -32213,17 +32213,17 @@ gfx_init_plane_8bppchunky: { lda #0 adc x+1 sta _9+1 - //SEG1233 [596] (byte) gfx_init_plane_8bppchunky::c#0 ? ((byte)) (word~) gfx_init_plane_8bppchunky::$9 -- vbuaa=_byte_vwuz1 + //SEG1233 [596] (byte) gfx_init_plane_8bppchunky::c#0 ← ((byte)) (word~) gfx_init_plane_8bppchunky::$9 -- vbuaa=_byte_vwuz1 lda _9 - //SEG1234 [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ? (byte) gfx_init_plane_8bppchunky::c#0 -- _deref_pbuz1=vbuaa + //SEG1234 [597] *((byte*) gfx_init_plane_8bppchunky::gfxb#4) ← (byte) gfx_init_plane_8bppchunky::c#0 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG1235 [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ? ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 -- pbuz1=_inc_pbuz1 + //SEG1235 [598] (byte*) gfx_init_plane_8bppchunky::gfxb#1 ← ++ (byte*) gfx_init_plane_8bppchunky::gfxb#4 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG1236 [599] (word) gfx_init_plane_8bppchunky::x#1 ? ++ (word) gfx_init_plane_8bppchunky::x#2 -- vwuz1=_inc_vwuz1 + //SEG1236 [599] (word) gfx_init_plane_8bppchunky::x#1 ← ++ (word) gfx_init_plane_8bppchunky::x#2 -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 @@ -32236,7 +32236,7 @@ gfx_init_plane_8bppchunky: { cmp #<$140 bne b2 //SEG1238 gfx_init_plane_8bppchunky::@5 - //SEG1239 [601] (byte) gfx_init_plane_8bppchunky::y#1 ? ++ (byte) gfx_init_plane_8bppchunky::y#6 -- vbuz1=_inc_vbuz1 + //SEG1239 [601] (byte) gfx_init_plane_8bppchunky::y#1 ← ++ (byte) gfx_init_plane_8bppchunky::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG1240 [602] if((byte) gfx_init_plane_8bppchunky::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto gfx_init_plane_8bppchunky::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -32273,22 +32273,22 @@ gfx_init_vic_bitmap: { //SEG1257 [610] phi (byte) gfx_init_vic_bitmap::l#2 = (byte) gfx_init_vic_bitmap::l#1 [phi:gfx_init_vic_bitmap::@3->gfx_init_vic_bitmap::@1#0] -- register_copy //SEG1258 gfx_init_vic_bitmap::@1 b1: - //SEG1259 [611] (byte) bitmap_line::x0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1259 [611] (byte) bitmap_line::x0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG1260 [612] (byte) bitmap_line::x1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 + //SEG1260 [612] (byte) bitmap_line::x1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 ldx lines_x+1,y - //SEG1261 [613] (byte) bitmap_line::y0#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1261 [613] (byte) bitmap_line::y0#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 lda lines_y,y sta bitmap_line.y0 - //SEG1262 [614] (byte) bitmap_line::y1#0 ? *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1262 [614] (byte) bitmap_line::y1#0 ← *((const byte[]) gfx_init_vic_bitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) gfx_init_vic_bitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 lda lines_y+1,y sta bitmap_line.y1 //SEG1263 [615] call bitmap_line jsr bitmap_line //SEG1264 gfx_init_vic_bitmap::@3 - //SEG1265 [616] (byte) gfx_init_vic_bitmap::l#1 ? ++ (byte) gfx_init_vic_bitmap::l#2 -- vbuz1=_inc_vbuz1 + //SEG1265 [616] (byte) gfx_init_vic_bitmap::l#1 ← ++ (byte) gfx_init_vic_bitmap::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG1266 [617] if((byte) gfx_init_vic_bitmap::l#1<(const byte) gfx_init_vic_bitmap::lines_cnt#0) goto gfx_init_vic_bitmap::@1 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -32315,7 +32315,7 @@ bitmap_line: { bcs b1 !: //SEG1271 bitmap_line::@2 - //SEG1272 [620] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx + //SEG1272 [620] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx txa eor #$ff sec @@ -32326,7 +32326,7 @@ bitmap_line: { cmp y1 bcc b7 //SEG1274 bitmap_line::@3 - //SEG1275 [622] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1275 [622] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 sec sbc y1 tay @@ -32334,16 +32334,16 @@ bitmap_line: { cpy xd bcc b8 //SEG1277 bitmap_line::@4 - //SEG1278 [624] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1278 [624] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y - //SEG1279 [625] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 - //SEG1280 [626] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1279 [625] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 + //SEG1280 [626] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y1 - //SEG1281 [627] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1281 [627] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1282 [628] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1282 [628] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 //SEG1283 [629] call bitmap_line_ydxi //SEG1284 [703] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi] //SEG1285 [703] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#0 [phi:bitmap_line::@4->bitmap_line_ydxi#0] -- register_copy @@ -32357,14 +32357,14 @@ bitmap_line: { rts //SEG1292 bitmap_line::@8 b8: - //SEG1293 [631] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1293 [631] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x - //SEG1294 [632] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1294 [632] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyi.y - //SEG1295 [633] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1296 [634] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1297 [635] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1295 [633] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1296 [634] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1297 [635] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1298 [636] call bitmap_line_xdyi //SEG1299 [681] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi] @@ -32377,7 +32377,7 @@ bitmap_line: { rts //SEG1305 bitmap_line::@7 b7: - //SEG1306 [637] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1306 [637] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -32386,17 +32386,17 @@ bitmap_line: { cpy xd bcc b9 //SEG1308 bitmap_line::@10 - //SEG1309 [639] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1309 [639] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG1310 [640] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1310 [640] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1311 [641] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1311 [641] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y1 - //SEG1312 [642] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1312 [642] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1313 [643] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1313 [643] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 //SEG1314 [644] call bitmap_line_ydxd //SEG1315 [733] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd] //SEG1316 [733] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#0 [phi:bitmap_line::@10->bitmap_line_ydxd#0] -- register_copy @@ -32408,14 +32408,14 @@ bitmap_line: { rts //SEG1321 bitmap_line::@9 b9: - //SEG1322 [645] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1322 [645] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x - //SEG1323 [646] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1323 [646] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyd.y - //SEG1324 [647] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1325 [648] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1326 [649] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1324 [647] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1325 [648] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1326 [649] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1327 [650] call bitmap_line_xdyd //SEG1328 [718] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd] @@ -32428,7 +32428,7 @@ bitmap_line: { rts //SEG1334 bitmap_line::@1 b1: - //SEG1335 [651] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 + //SEG1335 [651] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 txa sec sbc x0 @@ -32438,7 +32438,7 @@ bitmap_line: { cmp y1 bcc b11 //SEG1337 bitmap_line::@5 - //SEG1338 [653] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1338 [653] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 sec sbc y1 tay @@ -32446,14 +32446,14 @@ bitmap_line: { cpy xd bcc b12 //SEG1340 bitmap_line::@6 - //SEG1341 [655] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1341 [655] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y - //SEG1342 [656] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 - //SEG1343 [657] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - //SEG1344 [658] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1342 [656] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 + //SEG1343 [657] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + //SEG1344 [658] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1345 [659] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1345 [659] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 //SEG1346 [660] call bitmap_line_ydxd //SEG1347 [733] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd] //SEG1348 [733] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#1 [phi:bitmap_line::@6->bitmap_line_ydxd#0] -- register_copy @@ -32465,14 +32465,14 @@ bitmap_line: { rts //SEG1353 bitmap_line::@12 b12: - //SEG1354 [661] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1354 [661] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x - //SEG1355 [662] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - //SEG1356 [663] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1355 [662] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + //SEG1356 [663] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x1 - //SEG1357 [664] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1358 [665] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1357 [664] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1358 [665] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1359 [666] call bitmap_line_xdyd //SEG1360 [718] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd] @@ -32485,7 +32485,7 @@ bitmap_line: { rts //SEG1366 bitmap_line::@11 b11: - //SEG1367 [667] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1367 [667] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -32494,15 +32494,15 @@ bitmap_line: { cpy xd bcc b13 //SEG1369 bitmap_line::@14 - //SEG1370 [669] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1370 [669] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG1371 [670] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1371 [670] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1372 [671] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 - //SEG1373 [672] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1372 [671] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 + //SEG1373 [672] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1374 [673] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1374 [673] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 //SEG1375 [674] call bitmap_line_ydxi //SEG1376 [703] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi] //SEG1377 [703] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#1 [phi:bitmap_line::@14->bitmap_line_ydxi#0] -- register_copy @@ -32514,14 +32514,14 @@ bitmap_line: { rts //SEG1382 bitmap_line::@13 b13: - //SEG1383 [675] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1383 [675] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x - //SEG1384 [676] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - //SEG1385 [677] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1384 [676] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + //SEG1385 [677] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x1 - //SEG1386 [678] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1387 [679] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1386 [678] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1387 [679] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1388 [680] call bitmap_line_xdyi //SEG1389 [681] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi] @@ -32542,7 +32542,7 @@ bitmap_line_xdyi: { .label xd = 8 .label yd = 7 .label e = $12 - //SEG1396 [682] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1396 [682] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -32552,9 +32552,9 @@ bitmap_line_xdyi: { //SEG1400 [683] phi (byte) bitmap_line_xdyi::x#3 = (byte) bitmap_line_xdyi::x#6 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#2] -- register_copy //SEG1401 bitmap_line_xdyi::@1 b1: - //SEG1402 [684] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 + //SEG1402 [684] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 ldx x - //SEG1403 [685] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 + //SEG1403 [685] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 ldy y //SEG1404 [686] call bitmap_plot //SEG1405 [696] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot] @@ -32562,9 +32562,9 @@ bitmap_line_xdyi: { //SEG1407 [696] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1408 bitmap_line_xdyi::@4 - //SEG1409 [687] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1409 [687] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1410 [688] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1410 [688] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -32574,9 +32574,9 @@ bitmap_line_xdyi: { cmp e bcs b2 //SEG1412 bitmap_line_xdyi::@3 - //SEG1413 [690] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1413 [690] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1414 [691] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1414 [691] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -32586,7 +32586,7 @@ bitmap_line_xdyi: { //SEG1417 [692] phi (byte) bitmap_line_xdyi::y#6 = (byte) bitmap_line_xdyi::y#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#1] -- register_copy //SEG1418 bitmap_line_xdyi::@2 b2: - //SEG1419 [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1419 [693] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1420 [694] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -32602,17 +32602,17 @@ bitmap_plot: { .label _0 = 3 .label plotter_x = 3 .label plotter_y = 5 - //SEG1424 [697] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG1424 [697] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_xhi,x sta plotter_x+1 lda bitmap_plot_xlo,x sta plotter_x - //SEG1425 [698] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG1425 [698] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG1426 [699] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG1426 [699] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 lda _0 clc adc plotter_y @@ -32620,11 +32620,11 @@ bitmap_plot: { lda _0+1 adc plotter_y+1 sta _0+1 - //SEG1427 [700] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx + //SEG1427 [700] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx lda bitmap_plot_bit,x ldy #0 ora (_0),y - //SEG1428 [701] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa + //SEG1428 [701] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa sta (_0),y //SEG1429 bitmap_plot::@return //SEG1430 [702] return @@ -32638,7 +32638,7 @@ bitmap_line_ydxi: { .label yd = 7 .label xd = 8 .label e = $d - //SEG1432 [704] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1432 [704] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -32648,8 +32648,8 @@ bitmap_line_ydxi: { //SEG1436 [705] phi (byte) bitmap_line_ydxi::x#3 = (byte) bitmap_line_ydxi::x#5 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#2] -- register_copy //SEG1437 bitmap_line_ydxi::@1 b1: - //SEG1438 [706] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - //SEG1439 [707] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 + //SEG1438 [706] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + //SEG1439 [707] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 ldy y //SEG1440 [708] call bitmap_plot //SEG1441 [696] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot] @@ -32657,9 +32657,9 @@ bitmap_line_ydxi: { //SEG1443 [696] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1444 bitmap_line_ydxi::@4 - //SEG1445 [709] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1445 [709] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1446 [710] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1446 [710] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -32669,9 +32669,9 @@ bitmap_line_ydxi: { cmp e bcs b2 //SEG1448 bitmap_line_ydxi::@3 - //SEG1449 [712] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx + //SEG1449 [712] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG1450 [713] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1450 [713] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -32681,7 +32681,7 @@ bitmap_line_ydxi: { //SEG1453 [714] phi (byte) bitmap_line_ydxi::x#6 = (byte) bitmap_line_ydxi::x#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#1] -- register_copy //SEG1454 bitmap_line_ydxi::@2 b2: - //SEG1455 [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1455 [715] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -32701,7 +32701,7 @@ bitmap_line_xdyd: { .label xd = 8 .label yd = 7 .label e = $12 - //SEG1460 [719] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1460 [719] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -32711,9 +32711,9 @@ bitmap_line_xdyd: { //SEG1464 [720] phi (byte) bitmap_line_xdyd::x#3 = (byte) bitmap_line_xdyd::x#6 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#2] -- register_copy //SEG1465 bitmap_line_xdyd::@1 b1: - //SEG1466 [721] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 + //SEG1466 [721] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 ldx x - //SEG1467 [722] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 + //SEG1467 [722] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 ldy y //SEG1468 [723] call bitmap_plot //SEG1469 [696] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot] @@ -32721,9 +32721,9 @@ bitmap_line_xdyd: { //SEG1471 [696] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1472 bitmap_line_xdyd::@4 - //SEG1473 [724] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 + //SEG1473 [724] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1474 [725] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1474 [725] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -32733,9 +32733,9 @@ bitmap_line_xdyd: { cmp e bcs b2 //SEG1476 bitmap_line_xdyd::@3 - //SEG1477 [727] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG1477 [727] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG1478 [728] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1478 [728] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -32745,7 +32745,7 @@ bitmap_line_xdyd: { //SEG1481 [729] phi (byte) bitmap_line_xdyd::y#6 = (byte) bitmap_line_xdyd::y#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#1] -- register_copy //SEG1482 bitmap_line_xdyd::@2 b2: - //SEG1483 [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1483 [730] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1484 [731] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -32763,7 +32763,7 @@ bitmap_line_ydxd: { .label yd = 7 .label xd = 8 .label e = $d - //SEG1488 [734] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1488 [734] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -32773,8 +32773,8 @@ bitmap_line_ydxd: { //SEG1492 [735] phi (byte) bitmap_line_ydxd::x#3 = (byte) bitmap_line_ydxd::x#5 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#2] -- register_copy //SEG1493 bitmap_line_ydxd::@1 b1: - //SEG1494 [736] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - //SEG1495 [737] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 + //SEG1494 [736] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + //SEG1495 [737] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 ldy y //SEG1496 [738] call bitmap_plot //SEG1497 [696] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot] @@ -32782,9 +32782,9 @@ bitmap_line_ydxd: { //SEG1499 [696] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1500 bitmap_line_ydxd::@4 - //SEG1501 [739] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG1501 [739] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG1502 [740] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1502 [740] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -32794,9 +32794,9 @@ bitmap_line_ydxd: { cmp e bcs b2 //SEG1504 bitmap_line_ydxd::@3 - //SEG1505 [742] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx + //SEG1505 [742] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx dex - //SEG1506 [743] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1506 [743] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -32806,7 +32806,7 @@ bitmap_line_ydxd: { //SEG1509 [744] phi (byte) bitmap_line_ydxd::x#6 = (byte) bitmap_line_ydxd::x#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#1] -- register_copy //SEG1510 bitmap_line_ydxd::@2 b2: - //SEG1511 [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1511 [745] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -32823,12 +32823,12 @@ bitmap_clear: { .label bitmap = 3 .label y = 2 .label _3 = 3 - //SEG1516 [748] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG1516 [748] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG1517 [749] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG1517 [749] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG1518 [750] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] //SEG1519 [750] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 lda #0 @@ -32848,22 +32848,22 @@ bitmap_clear: { //SEG1530 [751] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy //SEG1531 bitmap_clear::@2 b2: - //SEG1532 [752] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1532 [752] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (bitmap),y - //SEG1533 [753] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG1533 [753] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG1534 [754] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG1534 [754] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG1535 [755] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 bne b2 //SEG1536 bitmap_clear::@3 - //SEG1537 [756] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG1537 [756] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG1538 [757] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -32888,18 +32888,18 @@ bitmap_init: { //SEG1547 [760] phi (byte) bitmap_init::x#2 = (byte) bitmap_init::x#1 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy //SEG1548 bitmap_init::@1 b1: - //SEG1549 [761] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 + //SEG1549 [761] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 txa and #$f8 - //SEG1550 [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1550 [762] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_xlo,x - //SEG1551 [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) VIC_BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG1551 [763] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) VIC_BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #>VIC_BITMAP sta bitmap_plot_xhi,x - //SEG1552 [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy + //SEG1552 [764] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy tya sta bitmap_plot_bit,x - //SEG1553 [765] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 + //SEG1553 [765] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 tya lsr tay @@ -32911,7 +32911,7 @@ bitmap_init: { ldy #$80 //SEG1557 bitmap_init::@2 b2: - //SEG1558 [768] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG1558 [768] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG1559 [769] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -32928,27 +32928,27 @@ bitmap_init: { //SEG1565 [770] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy //SEG1566 bitmap_init::@3 b3: - //SEG1567 [771] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG1567 [771] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _6 - //SEG1568 [772] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG1568 [772] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG1569 [773] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa + //SEG1569 [773] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa ora _6 - //SEG1570 [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1570 [774] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG1571 [775] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG1571 [775] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG1572 [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1572 [776] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG1573 [777] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG1573 [777] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG1574 [778] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 cmp #7 bne b4 //SEG1575 bitmap_init::@5 - //SEG1576 [779] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG1576 [779] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -32960,7 +32960,7 @@ bitmap_init: { //SEG1578 [780] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy //SEG1579 bitmap_init::@4 b4: - //SEG1580 [781] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG1580 [781] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG1581 [782] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -32978,7 +32978,7 @@ gfx_init_charset: { .label charset = 5 .label chargen = 3 .label c = 2 - //SEG1589 [785] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $32 -- _deref_pbuc1=vbuc2 + //SEG1589 [785] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $32 -- _deref_pbuc1=vbuc2 lda #$32 sta PROCPORT //SEG1590 [786] phi from gfx_init_charset to gfx_init_charset::@1 [phi:gfx_init_charset->gfx_init_charset::@1] @@ -33012,34 +33012,34 @@ gfx_init_charset: { //SEG1606 [787] phi (byte*) gfx_init_charset::chargen#2 = (byte*) gfx_init_charset::chargen#1 [phi:gfx_init_charset::@2->gfx_init_charset::@2#2] -- register_copy //SEG1607 gfx_init_charset::@2 b2: - //SEG1608 [788] *((byte*) gfx_init_charset::charset#2) ? *((byte*) gfx_init_charset::chargen#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1608 [788] *((byte*) gfx_init_charset::charset#2) ← *((byte*) gfx_init_charset::chargen#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (chargen),y sta (charset),y - //SEG1609 [789] (byte*) gfx_init_charset::charset#1 ? ++ (byte*) gfx_init_charset::charset#2 -- pbuz1=_inc_pbuz1 + //SEG1609 [789] (byte*) gfx_init_charset::charset#1 ← ++ (byte*) gfx_init_charset::charset#2 -- pbuz1=_inc_pbuz1 inc charset bne !+ inc charset+1 !: - //SEG1610 [790] (byte*) gfx_init_charset::chargen#1 ? ++ (byte*) gfx_init_charset::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG1610 [790] (byte*) gfx_init_charset::chargen#1 ← ++ (byte*) gfx_init_charset::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 !: - //SEG1611 [791] (byte) gfx_init_charset::l#1 ? ++ (byte) gfx_init_charset::l#2 -- vbuxx=_inc_vbuxx + //SEG1611 [791] (byte) gfx_init_charset::l#1 ← ++ (byte) gfx_init_charset::l#2 -- vbuxx=_inc_vbuxx inx //SEG1612 [792] if((byte) gfx_init_charset::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto gfx_init_charset::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b2 //SEG1613 gfx_init_charset::@3 - //SEG1614 [793] (byte) gfx_init_charset::c#1 ? ++ (byte) gfx_init_charset::c#4 -- vbuz1=_inc_vbuz1 + //SEG1614 [793] (byte) gfx_init_charset::c#1 ← ++ (byte) gfx_init_charset::c#4 -- vbuz1=_inc_vbuz1 inc c //SEG1615 [794] if((byte) gfx_init_charset::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto gfx_init_charset::@1 -- vbuz1_neq_0_then_la1 lda c cmp #0 bne b1 //SEG1616 gfx_init_charset::@4 - //SEG1617 [795] *((const byte*) PROCPORT#0) ? (byte/signed byte/word/signed word/dword/signed dword) $37 -- _deref_pbuc1=vbuc2 + //SEG1617 [795] *((const byte*) PROCPORT#0) ← (byte/signed byte/word/signed word/dword/signed dword) $37 -- _deref_pbuc1=vbuc2 lda #$37 sta PROCPORT //SEG1618 gfx_init_charset::@return @@ -33074,22 +33074,22 @@ gfx_init_screen4: { //SEG1633 [799] phi (byte*) gfx_init_screen4::ch#2 = (byte*) gfx_init_screen4::ch#1 [phi:gfx_init_screen4::@2->gfx_init_screen4::@2#1] -- register_copy //SEG1634 gfx_init_screen4::@2 b2: - //SEG1635 [800] *((byte*) gfx_init_screen4::ch#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1635 [800] *((byte*) gfx_init_screen4::ch#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (ch),y - //SEG1636 [801] (byte*) gfx_init_screen4::ch#1 ? ++ (byte*) gfx_init_screen4::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1636 [801] (byte*) gfx_init_screen4::ch#1 ← ++ (byte*) gfx_init_screen4::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1637 [802] (byte) gfx_init_screen4::cx#1 ? ++ (byte) gfx_init_screen4::cx#2 -- vbuxx=_inc_vbuxx + //SEG1637 [802] (byte) gfx_init_screen4::cx#1 ← ++ (byte) gfx_init_screen4::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1638 [803] if((byte) gfx_init_screen4::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen4::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1639 gfx_init_screen4::@3 - //SEG1640 [804] (byte) gfx_init_screen4::cy#1 ? ++ (byte) gfx_init_screen4::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1640 [804] (byte) gfx_init_screen4::cy#1 ← ++ (byte) gfx_init_screen4::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1641 [805] if((byte) gfx_init_screen4::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen4::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -33128,35 +33128,35 @@ gfx_init_screen3: { //SEG1657 [809] phi (byte) gfx_init_screen3::cx#2 = (byte) gfx_init_screen3::cx#1 [phi:gfx_init_screen3::@2->gfx_init_screen3::@2#1] -- register_copy //SEG1658 gfx_init_screen3::@2 b2: - //SEG1659 [810] (byte~) gfx_init_screen3::$0 ? (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 + //SEG1659 [810] (byte~) gfx_init_screen3::$0 ← (byte) gfx_init_screen3::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 txa and #3 - //SEG1660 [811] (byte~) gfx_init_screen3::$1 ? (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1660 [811] (byte~) gfx_init_screen3::$1 ← (byte~) gfx_init_screen3::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _1 - //SEG1661 [812] (byte~) gfx_init_screen3::$2 ? (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 + //SEG1661 [812] (byte~) gfx_init_screen3::$2 ← (byte) gfx_init_screen3::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 lda #3 and cy - //SEG1662 [813] (byte~) gfx_init_screen3::$3 ? (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 -- vbuaa=vbuz1_bor_vbuaa + //SEG1662 [813] (byte~) gfx_init_screen3::$3 ← (byte~) gfx_init_screen3::$1 | (byte~) gfx_init_screen3::$2 -- vbuaa=vbuz1_bor_vbuaa ora _1 - //SEG1663 [814] *((byte*) gfx_init_screen3::ch#2) ? (byte~) gfx_init_screen3::$3 -- _deref_pbuz1=vbuaa + //SEG1663 [814] *((byte*) gfx_init_screen3::ch#2) ← (byte~) gfx_init_screen3::$3 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1664 [815] (byte*) gfx_init_screen3::ch#1 ? ++ (byte*) gfx_init_screen3::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1664 [815] (byte*) gfx_init_screen3::ch#1 ← ++ (byte*) gfx_init_screen3::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1665 [816] (byte) gfx_init_screen3::cx#1 ? ++ (byte) gfx_init_screen3::cx#2 -- vbuxx=_inc_vbuxx + //SEG1665 [816] (byte) gfx_init_screen3::cx#1 ← ++ (byte) gfx_init_screen3::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1666 [817] if((byte) gfx_init_screen3::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen3::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1667 gfx_init_screen3::@3 - //SEG1668 [818] (byte) gfx_init_screen3::cy#1 ? ++ (byte) gfx_init_screen3::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1668 [818] (byte) gfx_init_screen3::cy#1 ← ++ (byte) gfx_init_screen3::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1669 [819] if((byte) gfx_init_screen3::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen3::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -33195,42 +33195,42 @@ gfx_init_screen2: { //SEG1685 [823] phi (byte) gfx_init_screen2::cx#2 = (byte) gfx_init_screen2::cx#1 [phi:gfx_init_screen2::@2->gfx_init_screen2::@2#1] -- register_copy //SEG1686 gfx_init_screen2::@2 b2: - //SEG1687 [824] (byte~) gfx_init_screen2::$0 ? (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1687 [824] (byte~) gfx_init_screen2::$0 ← (byte) gfx_init_screen2::cx#2 + (byte) gfx_init_screen2::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1688 [825] (byte) gfx_init_screen2::col#0 ? (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 + //SEG1688 [825] (byte) gfx_init_screen2::col#0 ← (byte~) gfx_init_screen2::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 and #$f tay - //SEG1689 [826] (byte) gfx_init_screen2::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 -- vbuz1=vbuc1_minus_vbuyy + //SEG1689 [826] (byte) gfx_init_screen2::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) gfx_init_screen2::col#0 -- vbuz1=vbuc1_minus_vbuyy tya eor #$ff clc adc #$f+1 sta col2 - //SEG1690 [827] (byte~) gfx_init_screen2::$3 ? (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 + //SEG1690 [827] (byte~) gfx_init_screen2::$3 ← (byte) gfx_init_screen2::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 tya asl asl asl asl - //SEG1691 [828] (byte~) gfx_init_screen2::$4 ? (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 -- vbuaa=vbuaa_bor_vbuz1 + //SEG1691 [828] (byte~) gfx_init_screen2::$4 ← (byte~) gfx_init_screen2::$3 | (byte) gfx_init_screen2::col2#0 -- vbuaa=vbuaa_bor_vbuz1 ora col2 - //SEG1692 [829] *((byte*) gfx_init_screen2::ch#2) ? (byte~) gfx_init_screen2::$4 -- _deref_pbuz1=vbuaa + //SEG1692 [829] *((byte*) gfx_init_screen2::ch#2) ← (byte~) gfx_init_screen2::$4 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1693 [830] (byte*) gfx_init_screen2::ch#1 ? ++ (byte*) gfx_init_screen2::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1693 [830] (byte*) gfx_init_screen2::ch#1 ← ++ (byte*) gfx_init_screen2::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1694 [831] (byte) gfx_init_screen2::cx#1 ? ++ (byte) gfx_init_screen2::cx#2 -- vbuxx=_inc_vbuxx + //SEG1694 [831] (byte) gfx_init_screen2::cx#1 ← ++ (byte) gfx_init_screen2::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1695 [832] if((byte) gfx_init_screen2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen2::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1696 gfx_init_screen2::@3 - //SEG1697 [833] (byte) gfx_init_screen2::cy#1 ? ++ (byte) gfx_init_screen2::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1697 [833] (byte) gfx_init_screen2::cy#1 ← ++ (byte) gfx_init_screen2::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1698 [834] if((byte) gfx_init_screen2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen2::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -33268,27 +33268,27 @@ gfx_init_screen1: { //SEG1714 [838] phi (byte) gfx_init_screen1::cx#2 = (byte) gfx_init_screen1::cx#1 [phi:gfx_init_screen1::@2->gfx_init_screen1::@2#1] -- register_copy //SEG1715 gfx_init_screen1::@2 b2: - //SEG1716 [839] (byte~) gfx_init_screen1::$0 ? (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1716 [839] (byte~) gfx_init_screen1::$0 ← (byte) gfx_init_screen1::cx#2 + (byte) gfx_init_screen1::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1717 [840] (byte~) gfx_init_screen1::$1 ? (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1717 [840] (byte~) gfx_init_screen1::$1 ← (byte~) gfx_init_screen1::$0 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1718 [841] *((byte*) gfx_init_screen1::ch#2) ? (byte~) gfx_init_screen1::$1 -- _deref_pbuz1=vbuaa + //SEG1718 [841] *((byte*) gfx_init_screen1::ch#2) ← (byte~) gfx_init_screen1::$1 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1719 [842] (byte*) gfx_init_screen1::ch#1 ? ++ (byte*) gfx_init_screen1::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1719 [842] (byte*) gfx_init_screen1::ch#1 ← ++ (byte*) gfx_init_screen1::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1720 [843] (byte) gfx_init_screen1::cx#1 ? ++ (byte) gfx_init_screen1::cx#2 -- vbuxx=_inc_vbuxx + //SEG1720 [843] (byte) gfx_init_screen1::cx#1 ← ++ (byte) gfx_init_screen1::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1721 [844] if((byte) gfx_init_screen1::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen1::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1722 gfx_init_screen1::@3 - //SEG1723 [845] (byte) gfx_init_screen1::cy#1 ? ++ (byte) gfx_init_screen1::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1723 [845] (byte) gfx_init_screen1::cy#1 ← ++ (byte) gfx_init_screen1::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1724 [846] if((byte) gfx_init_screen1::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen1::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -33327,35 +33327,35 @@ gfx_init_screen0: { //SEG1740 [850] phi (byte) gfx_init_screen0::cx#2 = (byte) gfx_init_screen0::cx#1 [phi:gfx_init_screen0::@2->gfx_init_screen0::@2#1] -- register_copy //SEG1741 gfx_init_screen0::@2 b2: - //SEG1742 [851] (byte~) gfx_init_screen0::$0 ? (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1742 [851] (byte~) gfx_init_screen0::$0 ← (byte) gfx_init_screen0::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1743 [852] (byte~) gfx_init_screen0::$1 ? (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1743 [852] (byte~) gfx_init_screen0::$1 ← (byte~) gfx_init_screen0::$0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _1 - //SEG1744 [853] (byte~) gfx_init_screen0::$2 ? (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1744 [853] (byte~) gfx_init_screen0::$2 ← (byte) gfx_init_screen0::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1745 [854] (byte~) gfx_init_screen0::$3 ? (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 -- vbuaa=vbuz1_bor_vbuaa + //SEG1745 [854] (byte~) gfx_init_screen0::$3 ← (byte~) gfx_init_screen0::$1 | (byte~) gfx_init_screen0::$2 -- vbuaa=vbuz1_bor_vbuaa ora _1 - //SEG1746 [855] *((byte*) gfx_init_screen0::ch#2) ? (byte~) gfx_init_screen0::$3 -- _deref_pbuz1=vbuaa + //SEG1746 [855] *((byte*) gfx_init_screen0::ch#2) ← (byte~) gfx_init_screen0::$3 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1747 [856] (byte*) gfx_init_screen0::ch#1 ? ++ (byte*) gfx_init_screen0::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1747 [856] (byte*) gfx_init_screen0::ch#1 ← ++ (byte*) gfx_init_screen0::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1748 [857] (byte) gfx_init_screen0::cx#1 ? ++ (byte) gfx_init_screen0::cx#2 -- vbuxx=_inc_vbuxx + //SEG1748 [857] (byte) gfx_init_screen0::cx#1 ← ++ (byte) gfx_init_screen0::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1749 [858] if((byte) gfx_init_screen0::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto gfx_init_screen0::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG1750 gfx_init_screen0::@3 - //SEG1751 [859] (byte) gfx_init_screen0::cy#1 ? ++ (byte) gfx_init_screen0::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1751 [859] (byte) gfx_init_screen0::cy#1 ← ++ (byte) gfx_init_screen0::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1752 [860] if((byte) gfx_init_screen0::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto gfx_init_screen0::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -33368,11 +33368,11 @@ gfx_init_screen0: { //SEG1755 keyboard_init // Initialize keyboard reading by setting CIA#$ Data Direction Registers keyboard_init: { - //SEG1756 [862] *((const byte*) CIA1_PORT_A_DDR#0) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 + //SEG1756 [862] *((const byte*) CIA1_PORT_A_DDR#0) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 // Keyboard Matrix Columns Write Mode lda #$ff sta CIA1_PORT_A_DDR - //SEG1757 [863] *((const byte*) CIA1_PORT_B_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1757 [863] *((const byte*) CIA1_PORT_B_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Keyboard Matrix Columns Read Mode lda #0 sta CIA1_PORT_B_DDR diff --git a/src/test/ref/c64dtv-gfxmodes.log b/src/test/ref/c64dtv-gfxmodes.log index a8c959edd..3fb20e019 100644 --- a/src/test/ref/c64dtv-gfxmodes.log +++ b/src/test/ref/c64dtv-gfxmodes.log @@ -2,765 +2,765 @@ Identified constant variable (byte*) dtvSetCpuBankSegment1::cpuBank Identified constant variable (byte*) DTV_BLITTER_ALU Identified constant variable (byte) mode_stdbitmap::lines_cnt Identified constant variable (byte*) mode_8bpppixelcell::CHARGEN -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte*) DTV_FEATURE#0 ? ((byte*)) (word/dword/signed dword) $d03f - (byte) DTV_FEATURE_ENABLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_FEATURE_DISABLE_TIL_RESET#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) DTV_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d03c - (byte) DTV_LINEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BORDER_OFF#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_HIGHCOLOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_OVERSCAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_COLORRAM_OFF#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) DTV_BADLINE_OFF#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) DTV_CHUNKY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte*) DTV_PALETTE#0 ? ((byte*)) (word/dword/signed dword) $d200 - (byte[$10]) DTV_PALETTE_DEFAULT#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $36, (byte/word/signed word/dword/signed dword) $be, (byte/signed byte/word/signed word/dword/signed dword) $58, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $26, (byte/signed byte/word/signed word/dword/signed dword) $3b, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $9a, (byte/signed byte/word/signed word/dword/signed dword) $a } - (byte*) DTV_PLANEA_START_LO#0 ? ((byte*)) (word/dword/signed dword) $d03a - (byte*) DTV_PLANEA_START_MI#0 ? ((byte*)) (word/dword/signed dword) $d03b - (byte*) DTV_PLANEA_START_HI#0 ? ((byte*)) (word/dword/signed dword) $d045 - (byte*) DTV_PLANEA_STEP#0 ? ((byte*)) (word/dword/signed dword) $d046 - (byte*) DTV_PLANEA_MODULO_LO#0 ? ((byte*)) (word/dword/signed dword) $d038 - (byte*) DTV_PLANEA_MODULO_HI#0 ? ((byte*)) (word/dword/signed dword) $d039 - (byte*) DTV_PLANEB_START_LO#0 ? ((byte*)) (word/dword/signed dword) $d049 - (byte*) DTV_PLANEB_START_MI#0 ? ((byte*)) (word/dword/signed dword) $d04a - (byte*) DTV_PLANEB_START_HI#0 ? ((byte*)) (word/dword/signed dword) $d04b - (byte*) DTV_PLANEB_STEP#0 ? ((byte*)) (word/dword/signed dword) $d04c - (byte*) DTV_PLANEB_MODULO_LO#0 ? ((byte*)) (word/dword/signed dword) $d047 - (byte*) DTV_PLANEB_MODULO_HI#0 ? ((byte*)) (word/dword/signed dword) $d048 - (byte*) DTV_SPRITE_BANK#0 ? ((byte*)) (word/dword/signed dword) $d04d - (byte*) DTV_COLOR_BANK_LO#0 ? ((byte*)) (word/dword/signed dword) $d036 - (byte*) DTV_COLOR_BANK_HI#0 ? ((byte*)) (word/dword/signed dword) $d037 - (dword) DTV_COLOR_BANK_DEFAULT#0 ? (dword/signed dword) $1d800 - (byte*) DTV_GRAPHICS_VIC_BANK#0 ? ((byte*)) (word/dword/signed dword) $d03d - (byte*) DTV_GRAPHICS_HICOL_BANK#0 ? ((byte*)) (word/dword/signed dword) $d03e + (byte*) DTV_FEATURE#0 ← ((byte*)) (word/dword/signed dword) $d03f + (byte) DTV_FEATURE_ENABLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_FEATURE_DISABLE_TIL_RESET#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) DTV_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d03c + (byte) DTV_LINEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BORDER_OFF#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_HIGHCOLOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_OVERSCAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_COLORRAM_OFF#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) DTV_BADLINE_OFF#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) DTV_CHUNKY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte*) DTV_PALETTE#0 ← ((byte*)) (word/dword/signed dword) $d200 + (byte[$10]) DTV_PALETTE_DEFAULT#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) $36, (byte/word/signed word/dword/signed dword) $be, (byte/signed byte/word/signed word/dword/signed dword) $58, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $26, (byte/signed byte/word/signed word/dword/signed dword) $3b, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $9a, (byte/signed byte/word/signed word/dword/signed dword) $a } + (byte*) DTV_PLANEA_START_LO#0 ← ((byte*)) (word/dword/signed dword) $d03a + (byte*) DTV_PLANEA_START_MI#0 ← ((byte*)) (word/dword/signed dword) $d03b + (byte*) DTV_PLANEA_START_HI#0 ← ((byte*)) (word/dword/signed dword) $d045 + (byte*) DTV_PLANEA_STEP#0 ← ((byte*)) (word/dword/signed dword) $d046 + (byte*) DTV_PLANEA_MODULO_LO#0 ← ((byte*)) (word/dword/signed dword) $d038 + (byte*) DTV_PLANEA_MODULO_HI#0 ← ((byte*)) (word/dword/signed dword) $d039 + (byte*) DTV_PLANEB_START_LO#0 ← ((byte*)) (word/dword/signed dword) $d049 + (byte*) DTV_PLANEB_START_MI#0 ← ((byte*)) (word/dword/signed dword) $d04a + (byte*) DTV_PLANEB_START_HI#0 ← ((byte*)) (word/dword/signed dword) $d04b + (byte*) DTV_PLANEB_STEP#0 ← ((byte*)) (word/dword/signed dword) $d04c + (byte*) DTV_PLANEB_MODULO_LO#0 ← ((byte*)) (word/dword/signed dword) $d047 + (byte*) DTV_PLANEB_MODULO_HI#0 ← ((byte*)) (word/dword/signed dword) $d048 + (byte*) DTV_SPRITE_BANK#0 ← ((byte*)) (word/dword/signed dword) $d04d + (byte*) DTV_COLOR_BANK_LO#0 ← ((byte*)) (word/dword/signed dword) $d036 + (byte*) DTV_COLOR_BANK_HI#0 ← ((byte*)) (word/dword/signed dword) $d037 + (dword) DTV_COLOR_BANK_DEFAULT#0 ← (dword/signed dword) $1d800 + (byte*) DTV_GRAPHICS_VIC_BANK#0 ← ((byte*)) (word/dword/signed dword) $d03d + (byte*) DTV_GRAPHICS_HICOL_BANK#0 ← ((byte*)) (word/dword/signed dword) $d03e to:@5 dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@6 mode_8bppchunkybmm::@8 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ? phi( mode_8bppchunkybmm::@2/(byte) dtvSetCpuBankSegment1::cpuBankIdx#0 mode_8bppchunkybmm::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 mode_8bppchunkybmm::@8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ) - (byte*) dtvSetCpuBankSegment1::cpuBank#0 ? ((byte*)) (byte/word/signed word/dword/signed dword) $ff - *((byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( mode_8bppchunkybmm::@2/(byte) dtvSetCpuBankSegment1::cpuBankIdx#0 mode_8bppchunkybmm::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 mode_8bppchunkybmm::@8/(byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ) + (byte*) dtvSetCpuBankSegment1::cpuBank#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) $ff + *((byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 asm { .byte$32,$dd lda$ff .byte$32,$00 } to:dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1 return to:@return @5: scope:[] from @4 - (byte*) DTV_BLITTER_SRCA_LO#0 ? ((byte*)) (word/dword/signed dword) $d320 - (byte*) DTV_BLITTER_SRCA_MI#0 ? ((byte*)) (word/dword/signed dword) $d321 - (byte*) DTV_BLITTER_SRCA_HI#0 ? ((byte*)) (word/dword/signed dword) $d322 - (byte*) DTV_BLITTER_SRCA_MOD_LO#0 ? ((byte*)) (word/dword/signed dword) $d323 - (byte*) DTV_BLITTER_SRCA_MOD_HI#0 ? ((byte*)) (word/dword/signed dword) $d324 - (byte*) DTV_BLITTER_SRCA_LIN_LO#0 ? ((byte*)) (word/dword/signed dword) $d325 - (byte*) DTV_BLITTER_SRCA_LIN_HI#0 ? ((byte*)) (word/dword/signed dword) $d326 - (byte*) DTV_BLITTER_SRCA_STEP#0 ? ((byte*)) (word/dword/signed dword) $d327 - (byte*) DTV_BLITTER_SRCB_LO#0 ? ((byte*)) (word/dword/signed dword) $d328 - (byte*) DTV_BLITTER_SRCB_MI#0 ? ((byte*)) (word/dword/signed dword) $d329 - (byte*) DTV_BLITTER_SRCB_HI#0 ? ((byte*)) (word/dword/signed dword) $d32a - (byte*) DTV_BLITTER_SRCB_MOD_LO#0 ? ((byte*)) (word/dword/signed dword) $d32b - (byte*) DTV_BLITTER_SRCB_MOD_HI#0 ? ((byte*)) (word/dword/signed dword) $d32c - (byte*) DTV_BLITTER_SRCB_LIN_LO#0 ? ((byte*)) (word/dword/signed dword) $d32d - (byte*) DTV_BLITTER_SRCB_LIN_HI#0 ? ((byte*)) (word/dword/signed dword) $d32e - (byte*) DTV_BLITTER_SRCB_STEP#0 ? ((byte*)) (word/dword/signed dword) $d32f - (byte*) DTV_BLITTER_DEST_LO#0 ? ((byte*)) (word/dword/signed dword) $d330 - (byte*) DTV_BLITTER_DEST_MI#0 ? ((byte*)) (word/dword/signed dword) $d331 - (byte*) DTV_BLITTER_DEST_HI#0 ? ((byte*)) (word/dword/signed dword) $d332 - (byte*) DTV_BLITTER_DEST_MOD_LO#0 ? ((byte*)) (word/dword/signed dword) $d333 - (byte*) DTV_BLITTER_DEST_MOD_HI#0 ? ((byte*)) (word/dword/signed dword) $d334 - (byte*) DTV_BLITTER_DEST_LIN_LO#0 ? ((byte*)) (word/dword/signed dword) $d335 - (byte*) DTV_BLITTER_DEST_LIN_HI#0 ? ((byte*)) (word/dword/signed dword) $d336 - (byte*) DTV_BLITTER_DEST_STEP#0 ? ((byte*)) (word/dword/signed dword) $d337 - (byte*) DTV_BLITTER_LEN_LO#0 ? ((byte*)) (word/dword/signed dword) $d338 - (byte*) DTV_BLITTER_LEN_HI#0 ? ((byte*)) (word/dword/signed dword) $d339 - (byte*) DTV_BLITTER_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d33a - (byte) DTV_BLIT_FORCE_START#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_SRCA_FWD#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_SRCB_FWD#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_DEST_FWD#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_BLIT_VIC_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) DTV_BLIT_CIA_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) DTV_BLIT_VBLANK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) DTV_BLIT_IRQ_EN#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte*) DTV_BLITTER_TRANSPARANCY#0 ? ((byte*)) (word/dword/signed dword) $d33b - (byte) DTV_BLIT_DISABLE_B#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_WRITE_TRANSPARENT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_WRITE_NONTRANSPARENT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_TRANSPARANCY_NONE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) DTV_BLITTER_ALU#0 ? ((byte*)) (word/dword/signed dword) $d33e - (byte) DTV_BLIT_SHIFT0#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) DTV_BLIT_SHIFT1#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_SHIFT2#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_SHIFT3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) DTV_BLIT_SHIFT4#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_SHIFT5#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) DTV_BLIT_SHIFT6#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) DTV_BLIT_SHIFT7#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) DTV_BLIT_AND#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) DTV_BLIT_NAND#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_BLIT_NOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) DTV_BLIT_OR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte) DTV_BLIT_XOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) DTV_BLIT_XNOR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte) DTV_BLIT_ADD#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) DTV_BLIT_SUB#0 ? (byte/signed byte/word/signed word/dword/signed dword) $38 - (byte*) DTV_BLITTER_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d33f - (byte) DTV_BLIT_CLEAR_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_SRCA_CONT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) DTV_BLIT_SRCB_CONT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DTV_BLIT_DEST_CONT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) DTV_BLIT_STATUS_BUSY#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) DTV_BLIT_STATUS_IRQ#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (byte*) DTV_BLITTER_SRCA_LO#0 ← ((byte*)) (word/dword/signed dword) $d320 + (byte*) DTV_BLITTER_SRCA_MI#0 ← ((byte*)) (word/dword/signed dword) $d321 + (byte*) DTV_BLITTER_SRCA_HI#0 ← ((byte*)) (word/dword/signed dword) $d322 + (byte*) DTV_BLITTER_SRCA_MOD_LO#0 ← ((byte*)) (word/dword/signed dword) $d323 + (byte*) DTV_BLITTER_SRCA_MOD_HI#0 ← ((byte*)) (word/dword/signed dword) $d324 + (byte*) DTV_BLITTER_SRCA_LIN_LO#0 ← ((byte*)) (word/dword/signed dword) $d325 + (byte*) DTV_BLITTER_SRCA_LIN_HI#0 ← ((byte*)) (word/dword/signed dword) $d326 + (byte*) DTV_BLITTER_SRCA_STEP#0 ← ((byte*)) (word/dword/signed dword) $d327 + (byte*) DTV_BLITTER_SRCB_LO#0 ← ((byte*)) (word/dword/signed dword) $d328 + (byte*) DTV_BLITTER_SRCB_MI#0 ← ((byte*)) (word/dword/signed dword) $d329 + (byte*) DTV_BLITTER_SRCB_HI#0 ← ((byte*)) (word/dword/signed dword) $d32a + (byte*) DTV_BLITTER_SRCB_MOD_LO#0 ← ((byte*)) (word/dword/signed dword) $d32b + (byte*) DTV_BLITTER_SRCB_MOD_HI#0 ← ((byte*)) (word/dword/signed dword) $d32c + (byte*) DTV_BLITTER_SRCB_LIN_LO#0 ← ((byte*)) (word/dword/signed dword) $d32d + (byte*) DTV_BLITTER_SRCB_LIN_HI#0 ← ((byte*)) (word/dword/signed dword) $d32e + (byte*) DTV_BLITTER_SRCB_STEP#0 ← ((byte*)) (word/dword/signed dword) $d32f + (byte*) DTV_BLITTER_DEST_LO#0 ← ((byte*)) (word/dword/signed dword) $d330 + (byte*) DTV_BLITTER_DEST_MI#0 ← ((byte*)) (word/dword/signed dword) $d331 + (byte*) DTV_BLITTER_DEST_HI#0 ← ((byte*)) (word/dword/signed dword) $d332 + (byte*) DTV_BLITTER_DEST_MOD_LO#0 ← ((byte*)) (word/dword/signed dword) $d333 + (byte*) DTV_BLITTER_DEST_MOD_HI#0 ← ((byte*)) (word/dword/signed dword) $d334 + (byte*) DTV_BLITTER_DEST_LIN_LO#0 ← ((byte*)) (word/dword/signed dword) $d335 + (byte*) DTV_BLITTER_DEST_LIN_HI#0 ← ((byte*)) (word/dword/signed dword) $d336 + (byte*) DTV_BLITTER_DEST_STEP#0 ← ((byte*)) (word/dword/signed dword) $d337 + (byte*) DTV_BLITTER_LEN_LO#0 ← ((byte*)) (word/dword/signed dword) $d338 + (byte*) DTV_BLITTER_LEN_HI#0 ← ((byte*)) (word/dword/signed dword) $d339 + (byte*) DTV_BLITTER_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d33a + (byte) DTV_BLIT_FORCE_START#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_SRCA_FWD#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_SRCB_FWD#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_DEST_FWD#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_BLIT_VIC_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) DTV_BLIT_CIA_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) DTV_BLIT_VBLANK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) DTV_BLIT_IRQ_EN#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte*) DTV_BLITTER_TRANSPARANCY#0 ← ((byte*)) (word/dword/signed dword) $d33b + (byte) DTV_BLIT_DISABLE_B#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_WRITE_TRANSPARENT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_WRITE_NONTRANSPARENT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_TRANSPARANCY_NONE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) DTV_BLITTER_ALU#0 ← ((byte*)) (word/dword/signed dword) $d33e + (byte) DTV_BLIT_SHIFT0#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) DTV_BLIT_SHIFT1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_SHIFT2#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_SHIFT3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) DTV_BLIT_SHIFT4#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_SHIFT5#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) DTV_BLIT_SHIFT6#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) DTV_BLIT_SHIFT7#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) DTV_BLIT_AND#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) DTV_BLIT_NAND#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_BLIT_NOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) DTV_BLIT_OR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte) DTV_BLIT_XOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) DTV_BLIT_XNOR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) DTV_BLIT_ADD#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) DTV_BLIT_SUB#0 ← (byte/signed byte/word/signed word/dword/signed dword) $38 + (byte*) DTV_BLITTER_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d33f + (byte) DTV_BLIT_CLEAR_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_SRCA_CONT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) DTV_BLIT_SRCB_CONT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DTV_BLIT_DEST_CONT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) DTV_BLIT_STATUS_BUSY#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) DTV_BLIT_STATUS_IRQ#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@17 print_str_lines: scope:[print_str_lines] from menu::@48 - (byte*) print_line_cursor#50 ? phi( menu::@48/(byte*) print_line_cursor#12 ) - (byte*) print_char_cursor#52 ? phi( menu::@48/(byte*) print_char_cursor#13 ) - (byte*) print_str_lines::str#4 ? phi( menu::@48/(byte*) print_str_lines::str#1 ) + (byte*) print_line_cursor#50 ← phi( menu::@48/(byte*) print_line_cursor#12 ) + (byte*) print_char_cursor#52 ← phi( menu::@48/(byte*) print_char_cursor#13 ) + (byte*) print_str_lines::str#4 ← phi( menu::@48/(byte*) print_str_lines::str#1 ) to:print_str_lines::@1 print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@11 - (byte*) print_line_cursor#31 ? phi( print_str_lines/(byte*) print_line_cursor#50 print_str_lines::@11/(byte*) print_line_cursor#1 ) - (byte*) print_char_cursor#33 ? phi( print_str_lines/(byte*) print_char_cursor#52 print_str_lines::@11/(byte*) print_char_cursor#2 ) - (byte*) print_str_lines::str#2 ? phi( print_str_lines/(byte*) print_str_lines::str#4 print_str_lines::@11/(byte*) print_str_lines::str#5 ) - (bool~) print_str_lines::$0 ? *((byte*) print_str_lines::str#2) != (byte) '@' + (byte*) print_line_cursor#31 ← phi( print_str_lines/(byte*) print_line_cursor#50 print_str_lines::@11/(byte*) print_line_cursor#1 ) + (byte*) print_char_cursor#33 ← phi( print_str_lines/(byte*) print_char_cursor#52 print_str_lines::@11/(byte*) print_char_cursor#2 ) + (byte*) print_str_lines::str#2 ← phi( print_str_lines/(byte*) print_str_lines::str#4 print_str_lines::@11/(byte*) print_str_lines::str#5 ) + (bool~) print_str_lines::$0 ← *((byte*) print_str_lines::str#2) != (byte) '@' if((bool~) print_str_lines::$0) goto print_str_lines::@2 to:print_str_lines::@return print_str_lines::@2: scope:[print_str_lines] from print_str_lines::@1 - (byte*) print_line_cursor#84 ? phi( print_str_lines::@1/(byte*) print_line_cursor#31 ) - (byte*) print_char_cursor#53 ? phi( print_str_lines::@1/(byte*) print_char_cursor#33 ) - (byte*) print_str_lines::str#6 ? phi( print_str_lines::@1/(byte*) print_str_lines::str#2 ) + (byte*) print_line_cursor#84 ← phi( print_str_lines::@1/(byte*) print_line_cursor#31 ) + (byte*) print_char_cursor#53 ← phi( print_str_lines::@1/(byte*) print_char_cursor#33 ) + (byte*) print_str_lines::str#6 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#2 ) to:print_str_lines::@4 print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2 print_str_lines::@5 - (byte*) print_line_cursor#68 ? phi( print_str_lines::@2/(byte*) print_line_cursor#84 print_str_lines::@5/(byte*) print_line_cursor#51 ) - (byte*) print_char_cursor#31 ? phi( print_str_lines::@2/(byte*) print_char_cursor#53 print_str_lines::@5/(byte*) print_char_cursor#54 ) - (byte*) print_str_lines::str#3 ? phi( print_str_lines::@2/(byte*) print_str_lines::str#6 print_str_lines::@5/(byte*) print_str_lines::str#7 ) - (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#3) - (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#3 - (bool~) print_str_lines::$1 ? (byte) print_str_lines::ch#0 != (byte) '@' - (bool~) print_str_lines::$2 ? ! (bool~) print_str_lines::$1 + (byte*) print_line_cursor#68 ← phi( print_str_lines::@2/(byte*) print_line_cursor#84 print_str_lines::@5/(byte*) print_line_cursor#51 ) + (byte*) print_char_cursor#31 ← phi( print_str_lines::@2/(byte*) print_char_cursor#53 print_str_lines::@5/(byte*) print_char_cursor#54 ) + (byte*) print_str_lines::str#3 ← phi( print_str_lines::@2/(byte*) print_str_lines::str#6 print_str_lines::@5/(byte*) print_str_lines::str#7 ) + (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) + (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 + (bool~) print_str_lines::$1 ← (byte) print_str_lines::ch#0 != (byte) '@' + (bool~) print_str_lines::$2 ← ! (bool~) print_str_lines::$1 if((bool~) print_str_lines::$2) goto print_str_lines::@5 to:print_str_lines::@6 print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@4 print_str_lines::@6 - (byte*) print_line_cursor#51 ? phi( print_str_lines::@4/(byte*) print_line_cursor#68 print_str_lines::@6/(byte*) print_line_cursor#69 ) - (byte*) print_char_cursor#54 ? phi( print_str_lines::@4/(byte*) print_char_cursor#31 print_str_lines::@6/(byte*) print_char_cursor#1 ) - (byte*) print_str_lines::str#7 ? phi( print_str_lines::@4/(byte*) print_str_lines::str#0 print_str_lines::@6/(byte*) print_str_lines::str#8 ) - (byte) print_str_lines::ch#1 ? phi( print_str_lines::@4/(byte) print_str_lines::ch#0 print_str_lines::@6/(byte) print_str_lines::ch#2 ) - (bool~) print_str_lines::$3 ? (byte) print_str_lines::ch#1 != (byte) '@' + (byte*) print_line_cursor#51 ← phi( print_str_lines::@4/(byte*) print_line_cursor#68 print_str_lines::@6/(byte*) print_line_cursor#69 ) + (byte*) print_char_cursor#54 ← phi( print_str_lines::@4/(byte*) print_char_cursor#31 print_str_lines::@6/(byte*) print_char_cursor#1 ) + (byte*) print_str_lines::str#7 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 print_str_lines::@6/(byte*) print_str_lines::str#8 ) + (byte) print_str_lines::ch#1 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 print_str_lines::@6/(byte) print_str_lines::ch#2 ) + (bool~) print_str_lines::$3 ← (byte) print_str_lines::ch#1 != (byte) '@' if((bool~) print_str_lines::$3) goto print_str_lines::@4 to:print_str_lines::@7 print_str_lines::@6: scope:[print_str_lines] from print_str_lines::@4 - (byte*) print_line_cursor#69 ? phi( print_str_lines::@4/(byte*) print_line_cursor#68 ) - (byte*) print_str_lines::str#8 ? phi( print_str_lines::@4/(byte*) print_str_lines::str#0 ) - (byte*) print_char_cursor#17 ? phi( print_str_lines::@4/(byte*) print_char_cursor#31 ) - (byte) print_str_lines::ch#2 ? phi( print_str_lines::@4/(byte) print_str_lines::ch#0 ) - *((byte*) print_char_cursor#17) ? (byte) print_str_lines::ch#2 - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#17 + (byte*) print_line_cursor#69 ← phi( print_str_lines::@4/(byte*) print_line_cursor#68 ) + (byte*) print_str_lines::str#8 ← phi( print_str_lines::@4/(byte*) print_str_lines::str#0 ) + (byte*) print_char_cursor#17 ← phi( print_str_lines::@4/(byte*) print_char_cursor#31 ) + (byte) print_str_lines::ch#2 ← phi( print_str_lines::@4/(byte) print_str_lines::ch#0 ) + *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#2 + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 to:print_str_lines::@5 print_str_lines::@7: scope:[print_str_lines] from print_str_lines::@5 - (byte*) print_str_lines::str#9 ? phi( print_str_lines::@5/(byte*) print_str_lines::str#7 ) - (byte*) print_char_cursor#32 ? phi( print_str_lines::@5/(byte*) print_char_cursor#54 ) - (byte*) print_line_cursor#30 ? phi( print_str_lines::@5/(byte*) print_line_cursor#51 ) + (byte*) print_str_lines::str#9 ← phi( print_str_lines::@5/(byte*) print_str_lines::str#7 ) + (byte*) print_char_cursor#32 ← phi( print_str_lines::@5/(byte*) print_char_cursor#54 ) + (byte*) print_line_cursor#30 ← phi( print_str_lines::@5/(byte*) print_line_cursor#51 ) call print_ln to:print_str_lines::@11 print_str_lines::@11: scope:[print_str_lines] from print_str_lines::@7 - (byte*) print_str_lines::str#5 ? phi( print_str_lines::@7/(byte*) print_str_lines::str#9 ) - (byte*) print_char_cursor#18 ? phi( print_str_lines::@7/(byte*) print_char_cursor#5 ) - (byte*) print_line_cursor#16 ? phi( print_str_lines::@7/(byte*) print_line_cursor#4 ) - (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#16 - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#18 + (byte*) print_str_lines::str#5 ← phi( print_str_lines::@7/(byte*) print_str_lines::str#9 ) + (byte*) print_char_cursor#18 ← phi( print_str_lines::@7/(byte*) print_char_cursor#5 ) + (byte*) print_line_cursor#16 ← phi( print_str_lines::@7/(byte*) print_line_cursor#4 ) + (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#16 + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#18 to:print_str_lines::@1 print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1 - (byte*) print_line_cursor#17 ? phi( print_str_lines::@1/(byte*) print_line_cursor#31 ) - (byte*) print_char_cursor#19 ? phi( print_str_lines::@1/(byte*) print_char_cursor#33 ) - (byte*) print_char_cursor#3 ? (byte*) print_char_cursor#19 - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#17 + (byte*) print_line_cursor#17 ← phi( print_str_lines::@1/(byte*) print_line_cursor#31 ) + (byte*) print_char_cursor#19 ← phi( print_str_lines::@1/(byte*) print_char_cursor#33 ) + (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#19 + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#17 return to:@return print_ln: scope:[print_ln] from print_str_lines::@7 - (byte*) print_char_cursor#34 ? phi( print_str_lines::@7/(byte*) print_char_cursor#32 ) - (byte*) print_line_cursor#32 ? phi( print_str_lines::@7/(byte*) print_line_cursor#30 ) + (byte*) print_char_cursor#34 ← phi( print_str_lines::@7/(byte*) print_char_cursor#32 ) + (byte*) print_line_cursor#32 ← phi( print_str_lines::@7/(byte*) print_line_cursor#30 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) print_char_cursor#20 ? phi( print_ln/(byte*) print_char_cursor#34 print_ln::@1/(byte*) print_char_cursor#20 ) - (byte*) print_line_cursor#18 ? phi( print_ln/(byte*) print_line_cursor#32 print_ln::@1/(byte*) print_line_cursor#3 ) - (byte*~) print_ln::$0 ? (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) print_line_cursor#3 ? (byte*~) print_ln::$0 - (bool~) print_ln::$1 ? (byte*) print_line_cursor#3 < (byte*) print_char_cursor#20 + (byte*) print_char_cursor#20 ← phi( print_ln/(byte*) print_char_cursor#34 print_ln::@1/(byte*) print_char_cursor#20 ) + (byte*) print_line_cursor#18 ← phi( print_ln/(byte*) print_line_cursor#32 print_ln::@1/(byte*) print_line_cursor#3 ) + (byte*~) print_ln::$0 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) print_line_cursor#3 ← (byte*~) print_ln::$0 + (bool~) print_ln::$1 ← (byte*) print_line_cursor#3 < (byte*) print_char_cursor#20 if((bool~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) print_line_cursor#19 ? phi( print_ln::@1/(byte*) print_line_cursor#3 ) - (byte*) print_char_cursor#4 ? (byte*) print_line_cursor#19 + (byte*) print_line_cursor#19 ← phi( print_ln::@1/(byte*) print_line_cursor#3 ) + (byte*) print_char_cursor#4 ← (byte*) print_line_cursor#19 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) print_char_cursor#21 ? phi( print_ln::@2/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#20 ? phi( print_ln::@2/(byte*) print_line_cursor#19 ) - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#20 - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#21 + (byte*) print_char_cursor#21 ← phi( print_ln::@2/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#20 ← phi( print_ln::@2/(byte*) print_line_cursor#19 ) + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#20 + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#21 return to:@return @17: scope:[] from @5 - (byte*) print_char_cursor#102 ? phi( @5/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#102 ? phi( @5/(byte*) print_line_cursor#0 ) - (byte*) print_screen#83 ? phi( @5/(byte*) print_screen#0 ) - (byte[]) print_hextab#0 ? (const string) $21 + (byte*) print_char_cursor#102 ← phi( @5/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#102 ← phi( @5/(byte*) print_line_cursor#0 ) + (byte*) print_screen#83 ← phi( @5/(byte*) print_screen#0 ) + (byte[]) print_hextab#0 ← (const string) $21 to:@24 print_cls: scope:[print_cls] from menu::@47 - (byte*) print_screen#8 ? phi( menu::@47/(byte*) print_screen#5 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#8 + (byte*) print_screen#8 ← phi( menu::@47/(byte*) print_screen#5 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#8 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#9 ? phi( print_cls/(byte*) print_screen#8 print_cls::@1/(byte*) print_screen#9 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#9 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#9 ← phi( print_cls/(byte*) print_screen#8 print_cls::@1/(byte*) print_screen#9 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#9 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#10 ? phi( print_cls::@1/(byte*) print_screen#9 ) - (byte*) print_line_cursor#5 ? (byte*) print_screen#10 - (byte*) print_char_cursor#6 ? (byte*) print_line_cursor#5 + (byte*) print_screen#10 ← phi( print_cls::@1/(byte*) print_screen#9 ) + (byte*) print_line_cursor#5 ← (byte*) print_screen#10 + (byte*) print_char_cursor#6 ← (byte*) print_line_cursor#5 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#22 ? phi( print_cls::@2/(byte*) print_char_cursor#6 ) - (byte*) print_line_cursor#21 ? phi( print_cls::@2/(byte*) print_line_cursor#5 ) - (byte*) print_line_cursor#6 ? (byte*) print_line_cursor#21 - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#22 + (byte*) print_char_cursor#22 ← phi( print_cls::@2/(byte*) print_char_cursor#6 ) + (byte*) print_line_cursor#21 ← phi( print_cls::@2/(byte*) print_line_cursor#5 ) + (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#21 + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#22 return to:@return print_set_screen: scope:[print_set_screen] from menu::@4 - (byte*) print_set_screen::screen#1 ? phi( menu::@4/(byte*) print_set_screen::screen#0 ) - (byte*) print_screen#1 ? (byte*) print_set_screen::screen#1 - (byte*) print_line_cursor#7 ? (byte*) print_screen#1 - (byte*) print_char_cursor#8 ? (byte*) print_line_cursor#7 + (byte*) print_set_screen::screen#1 ← phi( menu::@4/(byte*) print_set_screen::screen#0 ) + (byte*) print_screen#1 ← (byte*) print_set_screen::screen#1 + (byte*) print_line_cursor#7 ← (byte*) print_screen#1 + (byte*) print_char_cursor#8 ← (byte*) print_line_cursor#7 to:print_set_screen::@return print_set_screen::@return: scope:[print_set_screen] from print_set_screen - (byte*) print_char_cursor#23 ? phi( print_set_screen/(byte*) print_char_cursor#8 ) - (byte*) print_line_cursor#22 ? phi( print_set_screen/(byte*) print_line_cursor#7 ) - (byte*) print_screen#11 ? phi( print_set_screen/(byte*) print_screen#1 ) - (byte*) print_screen#2 ? (byte*) print_screen#11 - (byte*) print_line_cursor#8 ? (byte*) print_line_cursor#22 - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#23 + (byte*) print_char_cursor#23 ← phi( print_set_screen/(byte*) print_char_cursor#8 ) + (byte*) print_line_cursor#22 ← phi( print_set_screen/(byte*) print_line_cursor#7 ) + (byte*) print_screen#11 ← phi( print_set_screen/(byte*) print_screen#1 ) + (byte*) print_screen#2 ← (byte*) print_screen#11 + (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#22 + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#23 return to:@return @24: scope:[] from @17 - (byte*) print_char_cursor#101 ? phi( @17/(byte*) print_char_cursor#102 ) - (byte*) print_line_cursor#101 ? phi( @17/(byte*) print_line_cursor#102 ) - (byte*) print_screen#82 ? phi( @17/(byte*) print_screen#83 ) - (byte) KEY_DEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_RETURN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_CRSR_RIGHT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_F7#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) KEY_F1#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_F3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) KEY_F5#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) KEY_CRSR_DOWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) KEY_3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) KEY_W#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) KEY_A#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) KEY_4#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) KEY_Z#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) KEY_S#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) KEY_E#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) KEY_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) KEY_5#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) KEY_R#0 ? (byte/signed byte/word/signed word/dword/signed dword) $11 - (byte) KEY_D#0 ? (byte/signed byte/word/signed word/dword/signed dword) $12 - (byte) KEY_6#0 ? (byte/signed byte/word/signed word/dword/signed dword) $13 - (byte) KEY_C#0 ? (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte) KEY_F#0 ? (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) KEY_T#0 ? (byte/signed byte/word/signed word/dword/signed dword) $16 - (byte) KEY_X#0 ? (byte/signed byte/word/signed word/dword/signed dword) $17 - (byte) KEY_7#0 ? (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte) KEY_Y#0 ? (byte/signed byte/word/signed word/dword/signed dword) $19 - (byte) KEY_G#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1a - (byte) KEY_8#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1b - (byte) KEY_B#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1c - (byte) KEY_H#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1d - (byte) KEY_U#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1e - (byte) KEY_V#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1f - (byte) KEY_9#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) KEY_I#0 ? (byte/signed byte/word/signed word/dword/signed dword) $21 - (byte) KEY_J#0 ? (byte/signed byte/word/signed word/dword/signed dword) $22 - (byte) KEY_0#0 ? (byte/signed byte/word/signed word/dword/signed dword) $23 - (byte) KEY_M#0 ? (byte/signed byte/word/signed word/dword/signed dword) $24 - (byte) KEY_K#0 ? (byte/signed byte/word/signed word/dword/signed dword) $25 - (byte) KEY_O#0 ? (byte/signed byte/word/signed word/dword/signed dword) $26 - (byte) KEY_N#0 ? (byte/signed byte/word/signed word/dword/signed dword) $27 - (byte) KEY_PLUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte) KEY_P#0 ? (byte/signed byte/word/signed word/dword/signed dword) $29 - (byte) KEY_L#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2a - (byte) KEY_MINUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2b - (byte) KEY_DOT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2c - (byte) KEY_COLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2d - (byte) KEY_AT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2e - (byte) KEY_COMMA#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2f - (byte) KEY_POUND#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) KEY_ASTERISK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) KEY_SEMICOLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $32 - (byte) KEY_HOME#0 ? (byte/signed byte/word/signed word/dword/signed dword) $33 - (byte) KEY_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $34 - (byte) KEY_EQUALS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) KEY_ARROW_UP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) KEY_SLASH#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte) KEY_1#0 ? (byte/signed byte/word/signed word/dword/signed dword) $38 - (byte) KEY_ARROW_LEFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $39 - (byte) KEY_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3a - (byte) KEY_2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3b - (byte) KEY_SPACE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3c - (byte) KEY_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3d - (byte) KEY_Q#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3e - (byte) KEY_RUNSTOP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3f - (byte[]) keyboard_char_keycodes#0 ? { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } - (byte[8]) keyboard_matrix_row_bitmask#0 ? { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } - (byte[8]) keyboard_matrix_col_bitmask#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } + (byte*) print_char_cursor#101 ← phi( @17/(byte*) print_char_cursor#102 ) + (byte*) print_line_cursor#101 ← phi( @17/(byte*) print_line_cursor#102 ) + (byte*) print_screen#82 ← phi( @17/(byte*) print_screen#83 ) + (byte) KEY_DEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_RETURN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_CRSR_RIGHT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_F7#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) KEY_F1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_F3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) KEY_F5#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) KEY_CRSR_DOWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) KEY_3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) KEY_W#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) KEY_A#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) KEY_4#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) KEY_Z#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) KEY_S#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) KEY_E#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) KEY_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) KEY_5#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) KEY_R#0 ← (byte/signed byte/word/signed word/dword/signed dword) $11 + (byte) KEY_D#0 ← (byte/signed byte/word/signed word/dword/signed dword) $12 + (byte) KEY_6#0 ← (byte/signed byte/word/signed word/dword/signed dword) $13 + (byte) KEY_C#0 ← (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte) KEY_F#0 ← (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) KEY_T#0 ← (byte/signed byte/word/signed word/dword/signed dword) $16 + (byte) KEY_X#0 ← (byte/signed byte/word/signed word/dword/signed dword) $17 + (byte) KEY_7#0 ← (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte) KEY_Y#0 ← (byte/signed byte/word/signed word/dword/signed dword) $19 + (byte) KEY_G#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1a + (byte) KEY_8#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1b + (byte) KEY_B#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1c + (byte) KEY_H#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1d + (byte) KEY_U#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1e + (byte) KEY_V#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1f + (byte) KEY_9#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) KEY_I#0 ← (byte/signed byte/word/signed word/dword/signed dword) $21 + (byte) KEY_J#0 ← (byte/signed byte/word/signed word/dword/signed dword) $22 + (byte) KEY_0#0 ← (byte/signed byte/word/signed word/dword/signed dword) $23 + (byte) KEY_M#0 ← (byte/signed byte/word/signed word/dword/signed dword) $24 + (byte) KEY_K#0 ← (byte/signed byte/word/signed word/dword/signed dword) $25 + (byte) KEY_O#0 ← (byte/signed byte/word/signed word/dword/signed dword) $26 + (byte) KEY_N#0 ← (byte/signed byte/word/signed word/dword/signed dword) $27 + (byte) KEY_PLUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) KEY_P#0 ← (byte/signed byte/word/signed word/dword/signed dword) $29 + (byte) KEY_L#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2a + (byte) KEY_MINUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2b + (byte) KEY_DOT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2c + (byte) KEY_COLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2d + (byte) KEY_AT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2e + (byte) KEY_COMMA#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2f + (byte) KEY_POUND#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) KEY_ASTERISK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) KEY_SEMICOLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $32 + (byte) KEY_HOME#0 ← (byte/signed byte/word/signed word/dword/signed dword) $33 + (byte) KEY_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $34 + (byte) KEY_EQUALS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) KEY_ARROW_UP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) KEY_SLASH#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte) KEY_1#0 ← (byte/signed byte/word/signed word/dword/signed dword) $38 + (byte) KEY_ARROW_LEFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $39 + (byte) KEY_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3a + (byte) KEY_2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3b + (byte) KEY_SPACE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3c + (byte) KEY_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3d + (byte) KEY_Q#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3e + (byte) KEY_RUNSTOP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3f + (byte[]) keyboard_char_keycodes#0 ← { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } + (byte[8]) keyboard_matrix_row_bitmask#0 ← { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } + (byte[8]) keyboard_matrix_col_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } to:@28 keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed - (byte) keyboard_matrix_read::rowid#1 ? phi( keyboard_key_pressed/(byte) keyboard_matrix_read::rowid#0 ) - *((byte*) CIA1_PORT_A#0) ? *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) - (byte~) keyboard_matrix_read::$0 ? ~ *((byte*) CIA1_PORT_B#0) - (byte) keyboard_matrix_read::row_pressed_bits#0 ? (byte~) keyboard_matrix_read::$0 - (byte) keyboard_matrix_read::return#0 ? (byte) keyboard_matrix_read::row_pressed_bits#0 + (byte) keyboard_matrix_read::rowid#1 ← phi( keyboard_key_pressed/(byte) keyboard_matrix_read::rowid#0 ) + *((byte*) CIA1_PORT_A#0) ← *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) + (byte~) keyboard_matrix_read::$0 ← ~ *((byte*) CIA1_PORT_B#0) + (byte) keyboard_matrix_read::row_pressed_bits#0 ← (byte~) keyboard_matrix_read::$0 + (byte) keyboard_matrix_read::return#0 ← (byte) keyboard_matrix_read::row_pressed_bits#0 to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read - (byte) keyboard_matrix_read::return#3 ? phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) - (byte) keyboard_matrix_read::return#1 ? (byte) keyboard_matrix_read::return#3 + (byte) keyboard_matrix_read::return#3 ← phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) + (byte) keyboard_matrix_read::return#1 ← (byte) keyboard_matrix_read::return#3 return to:@return keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@10 menu::@11 menu::@12 menu::@13 menu::@14 menu::@15 menu::@16 menu::@17 menu::@18 menu::@6 menu::@8 menu::@9 mode_ctrl::@12 mode_ctrl::@13 mode_ctrl::@14 mode_ctrl::@15 mode_ctrl::@16 mode_ctrl::@17 mode_ctrl::@18 mode_ctrl::@6 - (byte) keyboard_key_pressed::key#20 ? phi( menu::@10/(byte) keyboard_key_pressed::key#3 menu::@11/(byte) keyboard_key_pressed::key#4 menu::@12/(byte) keyboard_key_pressed::key#5 menu::@13/(byte) keyboard_key_pressed::key#6 menu::@14/(byte) keyboard_key_pressed::key#7 menu::@15/(byte) keyboard_key_pressed::key#8 menu::@16/(byte) keyboard_key_pressed::key#9 menu::@17/(byte) keyboard_key_pressed::key#10 menu::@18/(byte) keyboard_key_pressed::key#11 menu::@6/(byte) keyboard_key_pressed::key#0 menu::@8/(byte) keyboard_key_pressed::key#1 menu::@9/(byte) keyboard_key_pressed::key#2 mode_ctrl::@12/(byte) keyboard_key_pressed::key#13 mode_ctrl::@13/(byte) keyboard_key_pressed::key#14 mode_ctrl::@14/(byte) keyboard_key_pressed::key#15 mode_ctrl::@15/(byte) keyboard_key_pressed::key#16 mode_ctrl::@16/(byte) keyboard_key_pressed::key#17 mode_ctrl::@17/(byte) keyboard_key_pressed::key#18 mode_ctrl::@18/(byte) keyboard_key_pressed::key#19 mode_ctrl::@6/(byte) keyboard_key_pressed::key#12 ) - (byte~) keyboard_key_pressed::$0 ? (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) keyboard_key_pressed::colidx#0 ? (byte~) keyboard_key_pressed::$0 - (byte~) keyboard_key_pressed::$1 ? (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) keyboard_key_pressed::rowidx#0 ? (byte~) keyboard_key_pressed::$1 - (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 + (byte) keyboard_key_pressed::key#20 ← phi( menu::@10/(byte) keyboard_key_pressed::key#3 menu::@11/(byte) keyboard_key_pressed::key#4 menu::@12/(byte) keyboard_key_pressed::key#5 menu::@13/(byte) keyboard_key_pressed::key#6 menu::@14/(byte) keyboard_key_pressed::key#7 menu::@15/(byte) keyboard_key_pressed::key#8 menu::@16/(byte) keyboard_key_pressed::key#9 menu::@17/(byte) keyboard_key_pressed::key#10 menu::@18/(byte) keyboard_key_pressed::key#11 menu::@6/(byte) keyboard_key_pressed::key#0 menu::@8/(byte) keyboard_key_pressed::key#1 menu::@9/(byte) keyboard_key_pressed::key#2 mode_ctrl::@12/(byte) keyboard_key_pressed::key#13 mode_ctrl::@13/(byte) keyboard_key_pressed::key#14 mode_ctrl::@14/(byte) keyboard_key_pressed::key#15 mode_ctrl::@15/(byte) keyboard_key_pressed::key#16 mode_ctrl::@16/(byte) keyboard_key_pressed::key#17 mode_ctrl::@17/(byte) keyboard_key_pressed::key#18 mode_ctrl::@18/(byte) keyboard_key_pressed::key#19 mode_ctrl::@6/(byte) keyboard_key_pressed::key#12 ) + (byte~) keyboard_key_pressed::$0 ← (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) keyboard_key_pressed::colidx#0 ← (byte~) keyboard_key_pressed::$0 + (byte~) keyboard_key_pressed::$1 ← (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) keyboard_key_pressed::rowidx#0 ← (byte~) keyboard_key_pressed::$1 + (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 call keyboard_matrix_read - (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#1 + (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#1 to:keyboard_key_pressed::@2 keyboard_key_pressed::@2: scope:[keyboard_key_pressed] from keyboard_key_pressed - (byte) keyboard_key_pressed::colidx#1 ? phi( keyboard_key_pressed/(byte) keyboard_key_pressed::colidx#0 ) - (byte) keyboard_matrix_read::return#4 ? phi( keyboard_key_pressed/(byte) keyboard_matrix_read::return#2 ) - (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#4 - (byte~) keyboard_key_pressed::$3 ? (byte~) keyboard_key_pressed::$2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#1) - (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$3 + (byte) keyboard_key_pressed::colidx#1 ← phi( keyboard_key_pressed/(byte) keyboard_key_pressed::colidx#0 ) + (byte) keyboard_matrix_read::return#4 ← phi( keyboard_key_pressed/(byte) keyboard_matrix_read::return#2 ) + (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#4 + (byte~) keyboard_key_pressed::$3 ← (byte~) keyboard_key_pressed::$2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#1) + (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$3 to:keyboard_key_pressed::@return keyboard_key_pressed::@return: scope:[keyboard_key_pressed] from keyboard_key_pressed::@2 - (byte) keyboard_key_pressed::return#22 ? phi( keyboard_key_pressed::@2/(byte) keyboard_key_pressed::return#0 ) - (byte) keyboard_key_pressed::return#1 ? (byte) keyboard_key_pressed::return#22 + (byte) keyboard_key_pressed::return#22 ← phi( keyboard_key_pressed::@2/(byte) keyboard_key_pressed::return#0 ) + (byte) keyboard_key_pressed::return#1 ← (byte) keyboard_key_pressed::return#22 return to:@return @28: scope:[] from @24 - (byte*) print_char_cursor#99 ? phi( @24/(byte*) print_char_cursor#101 ) - (byte*) print_line_cursor#99 ? phi( @24/(byte*) print_line_cursor#101 ) - (byte*) print_screen#80 ? phi( @24/(byte*) print_screen#82 ) - (byte[8]) keyboard_events#0 ? { fill( 8, 0) } - (byte) keyboard_events_size#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_modifiers#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_MODIFIER_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_MODIFIER_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_MODIFIER_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_MODIFIER_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte~) $0 ? (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 - (byte) KEY_MODIFIER_SHIFT#0 ? (byte~) $0 - (byte[8]) keyboard_scan_values#0 ? { fill( 8, 0) } + (byte*) print_char_cursor#99 ← phi( @24/(byte*) print_char_cursor#101 ) + (byte*) print_line_cursor#99 ← phi( @24/(byte*) print_line_cursor#101 ) + (byte*) print_screen#80 ← phi( @24/(byte*) print_screen#82 ) + (byte[8]) keyboard_events#0 ← { fill( 8, 0) } + (byte) keyboard_events_size#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_MODIFIER_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_MODIFIER_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_MODIFIER_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_MODIFIER_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte~) $0 ← (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 + (byte) KEY_MODIFIER_SHIFT#0 ← (byte~) $0 + (byte[8]) keyboard_scan_values#0 ← { fill( 8, 0) } to:@31 @31: scope:[] from @28 - (byte*) print_char_cursor#85 ? phi( @28/(byte*) print_char_cursor#99 ) - (byte*) print_line_cursor#85 ? phi( @28/(byte*) print_line_cursor#99 ) - (byte*) print_screen#66 ? phi( @28/(byte*) print_screen#80 ) - (byte[$100]) bitmap_plot_xlo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_xhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_ylo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_yhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_bit#0 ? { fill( $100, 0) } + (byte*) print_char_cursor#85 ← phi( @28/(byte*) print_char_cursor#99 ) + (byte*) print_line_cursor#85 ← phi( @28/(byte*) print_line_cursor#99 ) + (byte*) print_screen#66 ← phi( @28/(byte*) print_screen#80 ) + (byte[$100]) bitmap_plot_xlo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_xhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_ylo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_yhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_bit#0 ← { fill( $100, 0) } to:@40 bitmap_init: scope:[bitmap_init] from mode_stdbitmap::@6 - (byte*) bitmap_init::bitmap#2 ? phi( mode_stdbitmap::@6/(byte*) bitmap_init::bitmap#0 ) - (byte) bitmap_init::bits#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) bitmap_init::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::bitmap#2 ← phi( mode_stdbitmap::@6/(byte*) bitmap_init::bitmap#0 ) + (byte) bitmap_init::bits#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) bitmap_init::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - (byte*) bitmap_init::bitmap#1 ? phi( bitmap_init/(byte*) bitmap_init::bitmap#2 bitmap_init::@2/(byte*) bitmap_init::bitmap#3 ) - (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 - *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 - (byte~) bitmap_init::$1 ? > (byte*) bitmap_init::bitmap#1 - *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$1 - *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - (byte~) bitmap_init::$2 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_init::bits#1 ? (byte~) bitmap_init::$2 - (bool~) bitmap_init::$3 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_init::$4 ? ! (bool~) bitmap_init::$3 + (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + (byte*) bitmap_init::bitmap#1 ← phi( bitmap_init/(byte*) bitmap_init::bitmap#2 bitmap_init::@2/(byte*) bitmap_init::bitmap#3 ) + (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 + *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 + (byte~) bitmap_init::$1 ← > (byte*) bitmap_init::bitmap#1 + *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$1 + *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + (byte~) bitmap_init::$2 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_init::bits#1 ← (byte~) bitmap_init::$2 + (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_init::$4 ← ! (bool~) bitmap_init::$3 if((bool~) bitmap_init::$4) goto bitmap_init::@2 to:bitmap_init::@3 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@3 - (byte) bitmap_init::bits#4 ? phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) - (byte*) bitmap_init::bitmap#3 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) - (byte) bitmap_init::x#3 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) - (byte) bitmap_init::x#1 ? (byte) bitmap_init::x#3 + rangenext(0,$ff) - (bool~) bitmap_init::$5 ? (byte) bitmap_init::x#1 != rangelast(0,$ff) + (byte) bitmap_init::bits#4 ← phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) + (byte*) bitmap_init::bitmap#3 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) + (byte) bitmap_init::x#3 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) + (byte) bitmap_init::x#1 ← (byte) bitmap_init::x#3 + rangenext(0,$ff) + (bool~) bitmap_init::$5 ← (byte) bitmap_init::x#1 != rangelast(0,$ff) if((bool~) bitmap_init::$5) goto bitmap_init::@1 to:bitmap_init::@4 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@1 - (byte*) bitmap_init::bitmap#4 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 ) - (byte) bitmap_init::x#4 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) - (byte) bitmap_init::bits#2 ? (byte/word/signed word/dword/signed dword) $80 + (byte*) bitmap_init::bitmap#4 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 ) + (byte) bitmap_init::x#4 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) + (byte) bitmap_init::bits#2 ← (byte/word/signed word/dword/signed dword) $80 to:bitmap_init::@2 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@2 - (byte*) bitmap_init::yoffs#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bitmap_init::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::yoffs#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_init::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@4 bitmap_init::@6 - (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) - (byte) bitmap_init::y#2 ? phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) - (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 - (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 - *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 - (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 - *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 - (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$11 ? (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$12 ? ! (bool~) bitmap_init::$11 + (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) + (byte) bitmap_init::y#2 ← phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) + (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 + (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 + *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 + (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 + *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 + (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$12 ← ! (bool~) bitmap_init::$11 if((bool~) bitmap_init::$12) goto bitmap_init::@6 to:bitmap_init::@7 bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@5 bitmap_init::@7 - (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) - (byte) bitmap_init::y#3 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) - (byte) bitmap_init::y#1 ? (byte) bitmap_init::y#3 + rangenext(0,$ff) - (bool~) bitmap_init::$15 ? (byte) bitmap_init::y#1 != rangelast(0,$ff) + (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) + (byte) bitmap_init::y#3 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) + (byte) bitmap_init::y#1 ← (byte) bitmap_init::y#3 + rangenext(0,$ff) + (bool~) bitmap_init::$15 ← (byte) bitmap_init::y#1 != rangelast(0,$ff) if((bool~) bitmap_init::$15) goto bitmap_init::@5 to:bitmap_init::@return bitmap_init::@7: scope:[bitmap_init] from bitmap_init::@5 - (byte) bitmap_init::y#4 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) - (byte*) bitmap_init::yoffs#3 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) - (word/signed word/dword/signed dword~) bitmap_init::$13 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*~) bitmap_init::$14 ? (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$13 - (byte*) bitmap_init::yoffs#1 ? (byte*~) bitmap_init::$14 + (byte) bitmap_init::y#4 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) + (byte*) bitmap_init::yoffs#3 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) + (word/signed word/dword/signed dword~) bitmap_init::$13 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*~) bitmap_init::$14 ← (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$13 + (byte*) bitmap_init::yoffs#1 ← (byte*~) bitmap_init::$14 to:bitmap_init::@6 bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@6 return to:@return bitmap_clear: scope:[bitmap_clear] from mode_stdbitmap::@9 - (byte*~) bitmap_clear::$0 ? ((byte*)) { *((byte[$100]) bitmap_plot_xhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_xlo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } - (byte*) bitmap_clear::bitmap#0 ? (byte*~) bitmap_clear::$0 - (byte) bitmap_clear::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) bitmap_clear::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_xhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_xlo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } + (byte*) bitmap_clear::bitmap#0 ← (byte*~) bitmap_clear::$0 + (byte) bitmap_clear::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) - (byte) bitmap_clear::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) + (byte) bitmap_clear::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - (byte) bitmap_clear::y#3 ? phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - (byte) bitmap_clear::x#1 ? (byte) bitmap_clear::x#2 + rangenext(0,$c7) - (bool~) bitmap_clear::$1 ? (byte) bitmap_clear::x#1 != rangelast(0,$c7) + (byte) bitmap_clear::y#3 ← phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + (byte) bitmap_clear::x#1 ← (byte) bitmap_clear::x#2 + rangenext(0,$c7) + (bool~) bitmap_clear::$1 ← (byte) bitmap_clear::x#1 != rangelast(0,$c7) if((bool~) bitmap_clear::$1) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - (byte*) bitmap_clear::bitmap#4 ? phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - (byte) bitmap_clear::y#2 ? phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::y#1 ? (byte) bitmap_clear::y#2 + rangenext(0,$27) - (bool~) bitmap_clear::$2 ? (byte) bitmap_clear::y#1 != rangelast(0,$27) + (byte*) bitmap_clear::bitmap#4 ← phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + (byte) bitmap_clear::y#2 ← phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::y#1 ← (byte) bitmap_clear::y#2 + rangenext(0,$27) + (bool~) bitmap_clear::$2 ← (byte) bitmap_clear::y#1 != rangelast(0,$27) if((bool~) bitmap_clear::$2) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 return to:@return bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1 - (byte) bitmap_plot::y#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) - (byte) bitmap_plot::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) - (word) bitmap_plot::plotter_x#0 ? { *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4), *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) } - (word) bitmap_plot::plotter_y#0 ? { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) } - (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 - (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$0 - (byte~) bitmap_plot::$1 ? *((byte*) bitmap_plot::plotter#0) | *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) - *((byte*) bitmap_plot::plotter#0) ? (byte~) bitmap_plot::$1 + (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) + (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) + (word) bitmap_plot::plotter_x#0 ← { *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4), *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) } + (word) bitmap_plot::plotter_y#0 ← { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) } + (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 + (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$0 + (byte~) bitmap_plot::$1 ← *((byte*) bitmap_plot::plotter#0) | *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) + *((byte*) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot return to:@return bitmap_line: scope:[bitmap_line] from mode_stdbitmap::@7 - (byte) bitmap_line::y1#13 ? phi( mode_stdbitmap::@7/(byte) bitmap_line::y1#0 ) - (byte) bitmap_line::y0#13 ? phi( mode_stdbitmap::@7/(byte) bitmap_line::y0#0 ) - (byte) bitmap_line::x1#1 ? phi( mode_stdbitmap::@7/(byte) bitmap_line::x1#0 ) - (byte) bitmap_line::x0#1 ? phi( mode_stdbitmap::@7/(byte) bitmap_line::x0#0 ) - (byte) bitmap_line::xd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bitmap_line::yd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_line::$0 ? (byte) bitmap_line::x0#1 < (byte) bitmap_line::x1#1 + (byte) bitmap_line::y1#13 ← phi( mode_stdbitmap::@7/(byte) bitmap_line::y1#0 ) + (byte) bitmap_line::y0#13 ← phi( mode_stdbitmap::@7/(byte) bitmap_line::y0#0 ) + (byte) bitmap_line::x1#1 ← phi( mode_stdbitmap::@7/(byte) bitmap_line::x1#0 ) + (byte) bitmap_line::x0#1 ← phi( mode_stdbitmap::@7/(byte) bitmap_line::x0#0 ) + (byte) bitmap_line::xd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_line::yd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_line::$0 ← (byte) bitmap_line::x0#1 < (byte) bitmap_line::x1#1 if((bool~) bitmap_line::$0) goto bitmap_line::@1 to:bitmap_line::@3 bitmap_line::@1: scope:[bitmap_line] from bitmap_line - (byte) bitmap_line::y1#1 ? phi( bitmap_line/(byte) bitmap_line::y1#13 ) - (byte) bitmap_line::y0#1 ? phi( bitmap_line/(byte) bitmap_line::y0#13 ) - (byte) bitmap_line::x0#2 ? phi( bitmap_line/(byte) bitmap_line::x0#1 ) - (byte) bitmap_line::x1#2 ? phi( bitmap_line/(byte) bitmap_line::x1#1 ) - (byte~) bitmap_line::$11 ? (byte) bitmap_line::x1#2 - (byte) bitmap_line::x0#2 - (byte) bitmap_line::xd#1 ? (byte~) bitmap_line::$11 - (bool~) bitmap_line::$12 ? (byte) bitmap_line::y0#1 < (byte) bitmap_line::y1#1 + (byte) bitmap_line::y1#1 ← phi( bitmap_line/(byte) bitmap_line::y1#13 ) + (byte) bitmap_line::y0#1 ← phi( bitmap_line/(byte) bitmap_line::y0#13 ) + (byte) bitmap_line::x0#2 ← phi( bitmap_line/(byte) bitmap_line::x0#1 ) + (byte) bitmap_line::x1#2 ← phi( bitmap_line/(byte) bitmap_line::x1#1 ) + (byte~) bitmap_line::$11 ← (byte) bitmap_line::x1#2 - (byte) bitmap_line::x0#2 + (byte) bitmap_line::xd#1 ← (byte~) bitmap_line::$11 + (bool~) bitmap_line::$12 ← (byte) bitmap_line::y0#1 < (byte) bitmap_line::y1#1 if((bool~) bitmap_line::$12) goto bitmap_line::@20 to:bitmap_line::@7 bitmap_line::@3: scope:[bitmap_line] from bitmap_line - (byte) bitmap_line::y1#2 ? phi( bitmap_line/(byte) bitmap_line::y1#13 ) - (byte) bitmap_line::y0#2 ? phi( bitmap_line/(byte) bitmap_line::y0#13 ) - (byte) bitmap_line::x1#3 ? phi( bitmap_line/(byte) bitmap_line::x1#1 ) - (byte) bitmap_line::x0#3 ? phi( bitmap_line/(byte) bitmap_line::x0#1 ) - (byte~) bitmap_line::$1 ? (byte) bitmap_line::x0#3 - (byte) bitmap_line::x1#3 - (byte) bitmap_line::xd#2 ? (byte~) bitmap_line::$1 - (bool~) bitmap_line::$2 ? (byte) bitmap_line::y0#2 < (byte) bitmap_line::y1#2 + (byte) bitmap_line::y1#2 ← phi( bitmap_line/(byte) bitmap_line::y1#13 ) + (byte) bitmap_line::y0#2 ← phi( bitmap_line/(byte) bitmap_line::y0#13 ) + (byte) bitmap_line::x1#3 ← phi( bitmap_line/(byte) bitmap_line::x1#1 ) + (byte) bitmap_line::x0#3 ← phi( bitmap_line/(byte) bitmap_line::x0#1 ) + (byte~) bitmap_line::$1 ← (byte) bitmap_line::x0#3 - (byte) bitmap_line::x1#3 + (byte) bitmap_line::xd#2 ← (byte~) bitmap_line::$1 + (bool~) bitmap_line::$2 ← (byte) bitmap_line::y0#2 < (byte) bitmap_line::y1#2 if((bool~) bitmap_line::$2) goto bitmap_line::@10 to:bitmap_line::@4 bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@3 - (byte) bitmap_line::x0#11 ? phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) - (byte) bitmap_line::x1#11 ? phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) - (byte) bitmap_line::xd#3 ? phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) - (byte) bitmap_line::y0#3 ? phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) - (byte) bitmap_line::y1#3 ? phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) - (byte~) bitmap_line::$7 ? (byte) bitmap_line::y1#3 - (byte) bitmap_line::y0#3 - (byte) bitmap_line::yd#1 ? (byte~) bitmap_line::$7 - (bool~) bitmap_line::$8 ? (byte) bitmap_line::yd#1 < (byte) bitmap_line::xd#3 + (byte) bitmap_line::x0#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) + (byte) bitmap_line::x1#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) + (byte) bitmap_line::xd#3 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) + (byte) bitmap_line::y0#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) + (byte) bitmap_line::y1#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) + (byte~) bitmap_line::$7 ← (byte) bitmap_line::y1#3 - (byte) bitmap_line::y0#3 + (byte) bitmap_line::yd#1 ← (byte~) bitmap_line::$7 + (bool~) bitmap_line::$8 ← (byte) bitmap_line::yd#1 < (byte) bitmap_line::xd#3 if((bool~) bitmap_line::$8) goto bitmap_line::@15 to:bitmap_line::@17 bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3 - (byte) bitmap_line::x0#10 ? phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) - (byte) bitmap_line::x1#10 ? phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) - (byte) bitmap_line::xd#4 ? phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) - (byte) bitmap_line::y1#4 ? phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) - (byte) bitmap_line::y0#4 ? phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) - (byte~) bitmap_line::$3 ? (byte) bitmap_line::y0#4 - (byte) bitmap_line::y1#4 - (byte) bitmap_line::yd#2 ? (byte~) bitmap_line::$3 - (bool~) bitmap_line::$4 ? (byte) bitmap_line::yd#2 < (byte) bitmap_line::xd#4 + (byte) bitmap_line::x0#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) + (byte) bitmap_line::x1#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) + (byte) bitmap_line::xd#4 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) + (byte) bitmap_line::y1#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) + (byte) bitmap_line::y0#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) + (byte~) bitmap_line::$3 ← (byte) bitmap_line::y0#4 - (byte) bitmap_line::y1#4 + (byte) bitmap_line::yd#2 ← (byte~) bitmap_line::$3 + (bool~) bitmap_line::$4 ← (byte) bitmap_line::yd#2 < (byte) bitmap_line::xd#4 if((bool~) bitmap_line::$4) goto bitmap_line::@11 to:bitmap_line::@5 bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@4 - (byte) bitmap_line::yd#5 ? phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) - (byte) bitmap_line::xd#5 ? phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) - (byte) bitmap_line::x0#4 ? phi( bitmap_line::@4/(byte) bitmap_line::x0#10 ) - (byte) bitmap_line::y1#5 ? phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) - (byte) bitmap_line::x1#4 ? phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) - (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#4 - (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#5 - (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#4 - (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#5 - (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#5 + (byte) bitmap_line::yd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) + (byte) bitmap_line::xd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) + (byte) bitmap_line::x0#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x0#10 ) + (byte) bitmap_line::y1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) + (byte) bitmap_line::x1#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) + (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#4 + (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#5 + (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#4 + (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#5 + (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#5 call bitmap_line_xdyi to:bitmap_line::@29 bitmap_line::@29: scope:[bitmap_line] from bitmap_line::@11 to:bitmap_line::@return bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@4 - (byte) bitmap_line::xd#6 ? phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) - (byte) bitmap_line::yd#6 ? phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) - (byte) bitmap_line::y0#5 ? phi( bitmap_line::@4/(byte) bitmap_line::y0#4 ) - (byte) bitmap_line::x1#5 ? phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) - (byte) bitmap_line::y1#6 ? phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) - (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#6 - (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#5 - (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#5 - (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#6 - (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#6 + (byte) bitmap_line::xd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) + (byte) bitmap_line::yd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) + (byte) bitmap_line::y0#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y0#4 ) + (byte) bitmap_line::x1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) + (byte) bitmap_line::y1#6 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) + (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#6 + (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#5 + (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#5 + (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#6 + (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#6 call bitmap_line_ydxi to:bitmap_line::@30 bitmap_line::@30: scope:[bitmap_line] from bitmap_line::@5 to:bitmap_line::@return bitmap_line::@15: scope:[bitmap_line] from bitmap_line::@10 - (byte) bitmap_line::yd#7 ? phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) - (byte) bitmap_line::xd#7 ? phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) - (byte) bitmap_line::x0#5 ? phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) - (byte) bitmap_line::y1#7 ? phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) - (byte) bitmap_line::x1#6 ? phi( bitmap_line::@10/(byte) bitmap_line::x1#11 ) - (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#6 - (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#7 - (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#5 - (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#7 - (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#7 + (byte) bitmap_line::yd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) + (byte) bitmap_line::xd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) + (byte) bitmap_line::x0#5 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) + (byte) bitmap_line::y1#7 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) + (byte) bitmap_line::x1#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x1#11 ) + (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#6 + (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#7 + (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#5 + (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#7 + (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#7 call bitmap_line_xdyd to:bitmap_line::@31 bitmap_line::@31: scope:[bitmap_line] from bitmap_line::@15 to:bitmap_line::@return bitmap_line::@17: scope:[bitmap_line] from bitmap_line::@10 - (byte) bitmap_line::xd#8 ? phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) - (byte) bitmap_line::yd#8 ? phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) - (byte) bitmap_line::y1#8 ? phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) - (byte) bitmap_line::x0#6 ? phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) - (byte) bitmap_line::y0#6 ? phi( bitmap_line::@10/(byte) bitmap_line::y0#3 ) - (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#6 - (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#6 - (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#8 - (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#8 - (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#8 + (byte) bitmap_line::xd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) + (byte) bitmap_line::yd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) + (byte) bitmap_line::y1#8 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) + (byte) bitmap_line::x0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) + (byte) bitmap_line::y0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::y0#3 ) + (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#6 + (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#6 + (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#8 + (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#8 + (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#8 call bitmap_line_ydxd to:bitmap_line::@32 bitmap_line::@32: scope:[bitmap_line] from bitmap_line::@17 to:bitmap_line::@return bitmap_line::@20: scope:[bitmap_line] from bitmap_line::@1 - (byte) bitmap_line::x1#13 ? phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) - (byte) bitmap_line::x0#13 ? phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) - (byte) bitmap_line::xd#9 ? phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) - (byte) bitmap_line::y0#7 ? phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) - (byte) bitmap_line::y1#9 ? phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) - (byte~) bitmap_line::$17 ? (byte) bitmap_line::y1#9 - (byte) bitmap_line::y0#7 - (byte) bitmap_line::yd#3 ? (byte~) bitmap_line::$17 - (bool~) bitmap_line::$18 ? (byte) bitmap_line::yd#3 < (byte) bitmap_line::xd#9 + (byte) bitmap_line::x1#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) + (byte) bitmap_line::x0#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) + (byte) bitmap_line::xd#9 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) + (byte) bitmap_line::y0#7 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) + (byte) bitmap_line::y1#9 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) + (byte~) bitmap_line::$17 ← (byte) bitmap_line::y1#9 - (byte) bitmap_line::y0#7 + (byte) bitmap_line::yd#3 ← (byte~) bitmap_line::$17 + (bool~) bitmap_line::$18 ← (byte) bitmap_line::yd#3 < (byte) bitmap_line::xd#9 if((bool~) bitmap_line::$18) goto bitmap_line::@25 to:bitmap_line::@27 bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@1 - (byte) bitmap_line::x1#12 ? phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) - (byte) bitmap_line::x0#12 ? phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) - (byte) bitmap_line::xd#10 ? phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) - (byte) bitmap_line::y1#10 ? phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) - (byte) bitmap_line::y0#8 ? phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) - (byte~) bitmap_line::$13 ? (byte) bitmap_line::y0#8 - (byte) bitmap_line::y1#10 - (byte) bitmap_line::yd#4 ? (byte~) bitmap_line::$13 - (bool~) bitmap_line::$14 ? (byte) bitmap_line::yd#4 < (byte) bitmap_line::xd#10 + (byte) bitmap_line::x1#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) + (byte) bitmap_line::x0#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) + (byte) bitmap_line::xd#10 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) + (byte) bitmap_line::y1#10 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) + (byte) bitmap_line::y0#8 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) + (byte~) bitmap_line::$13 ← (byte) bitmap_line::y0#8 - (byte) bitmap_line::y1#10 + (byte) bitmap_line::yd#4 ← (byte~) bitmap_line::$13 + (bool~) bitmap_line::$14 ← (byte) bitmap_line::yd#4 < (byte) bitmap_line::xd#10 if((bool~) bitmap_line::$14) goto bitmap_line::@21 to:bitmap_line::@8 bitmap_line::@21: scope:[bitmap_line] from bitmap_line::@7 - (byte) bitmap_line::yd#9 ? phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) - (byte) bitmap_line::xd#11 ? phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) - (byte) bitmap_line::x1#7 ? phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) - (byte) bitmap_line::y0#9 ? phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) - (byte) bitmap_line::x0#7 ? phi( bitmap_line::@7/(byte) bitmap_line::x0#12 ) - (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#7 - (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#9 - (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#7 - (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#11 - (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#9 + (byte) bitmap_line::yd#9 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) + (byte) bitmap_line::xd#11 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) + (byte) bitmap_line::x1#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) + (byte) bitmap_line::y0#9 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) + (byte) bitmap_line::x0#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x0#12 ) + (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#7 + (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#9 + (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#7 + (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#11 + (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#9 call bitmap_line_xdyd to:bitmap_line::@33 bitmap_line::@33: scope:[bitmap_line] from bitmap_line::@21 to:bitmap_line::@return bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@7 - (byte) bitmap_line::xd#12 ? phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) - (byte) bitmap_line::yd#10 ? phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) - (byte) bitmap_line::y0#10 ? phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) - (byte) bitmap_line::x1#8 ? phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) - (byte) bitmap_line::y1#11 ? phi( bitmap_line::@7/(byte) bitmap_line::y1#10 ) - (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#11 - (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#8 - (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#10 - (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#12 + (byte) bitmap_line::xd#12 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) + (byte) bitmap_line::yd#10 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) + (byte) bitmap_line::y0#10 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) + (byte) bitmap_line::x1#8 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) + (byte) bitmap_line::y1#11 ← phi( bitmap_line::@7/(byte) bitmap_line::y1#10 ) + (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#11 + (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#8 + (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#10 + (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#12 call bitmap_line_ydxd to:bitmap_line::@34 bitmap_line::@34: scope:[bitmap_line] from bitmap_line::@8 to:bitmap_line::@return bitmap_line::@25: scope:[bitmap_line] from bitmap_line::@20 - (byte) bitmap_line::yd#11 ? phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) - (byte) bitmap_line::xd#13 ? phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) - (byte) bitmap_line::x1#9 ? phi( bitmap_line::@20/(byte) bitmap_line::x1#13 ) - (byte) bitmap_line::y0#11 ? phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) - (byte) bitmap_line::x0#8 ? phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) - (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#8 - (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#11 - (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#9 - (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#13 - (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + (byte) bitmap_line::yd#11 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) + (byte) bitmap_line::xd#13 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) + (byte) bitmap_line::x1#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x1#13 ) + (byte) bitmap_line::y0#11 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) + (byte) bitmap_line::x0#8 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) + (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#8 + (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#11 + (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#9 + (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#13 + (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 call bitmap_line_xdyi to:bitmap_line::@35 bitmap_line::@35: scope:[bitmap_line] from bitmap_line::@25 to:bitmap_line::@return bitmap_line::@27: scope:[bitmap_line] from bitmap_line::@20 - (byte) bitmap_line::xd#14 ? phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) - (byte) bitmap_line::yd#12 ? phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) - (byte) bitmap_line::y1#12 ? phi( bitmap_line::@20/(byte) bitmap_line::y1#9 ) - (byte) bitmap_line::x0#9 ? phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) - (byte) bitmap_line::y0#12 ? phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) - (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#12 - (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#9 - (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#12 - (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#12 - (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#14 + (byte) bitmap_line::xd#14 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) + (byte) bitmap_line::yd#12 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) + (byte) bitmap_line::y1#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y1#9 ) + (byte) bitmap_line::x0#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) + (byte) bitmap_line::y0#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) + (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#12 + (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#9 + (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#12 + (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#12 + (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#14 call bitmap_line_ydxi to:bitmap_line::@36 bitmap_line::@36: scope:[bitmap_line] from bitmap_line::@27 @@ -769,2649 +769,2649 @@ bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@29 bitmap_line::@3 return to:@return bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@11 bitmap_line::@25 - (byte) bitmap_line_xdyi::x1#6 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x1#1 ) - (byte) bitmap_line_xdyi::xd#5 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::xd#1 ) - (byte) bitmap_line_xdyi::y#5 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::y#0 bitmap_line::@25/(byte) bitmap_line_xdyi::y#1 ) - (byte) bitmap_line_xdyi::x#6 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x#1 ) - (byte) bitmap_line_xdyi::yd#2 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::yd#1 ) - (byte~) bitmap_line_xdyi::$0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_xdyi::e#0 ? (byte~) bitmap_line_xdyi::$0 + (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x1#1 ) + (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::xd#1 ) + (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::y#0 bitmap_line::@25/(byte) bitmap_line_xdyi::y#1 ) + (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x#1 ) + (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::yd#1 ) + (byte~) bitmap_line_xdyi::$0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_xdyi::e#0 ← (byte~) bitmap_line_xdyi::$0 to:bitmap_line_xdyi::@1 bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2 - (byte) bitmap_line_xdyi::x1#5 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x1#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x1#2 ) - (byte) bitmap_line_xdyi::xd#4 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::xd#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::xd#6 ) - (byte) bitmap_line_xdyi::yd#4 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::yd#2 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::yd#5 ) - (byte) bitmap_line_xdyi::e#5 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) - (byte) bitmap_line_xdyi::y#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) - (byte) bitmap_line_xdyi::x#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#5 ) - (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 + (byte) bitmap_line_xdyi::x1#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x1#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x1#2 ) + (byte) bitmap_line_xdyi::xd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::xd#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::xd#6 ) + (byte) bitmap_line_xdyi::yd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::yd#2 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::yd#5 ) + (byte) bitmap_line_xdyi::e#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) + (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) + (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#5 ) + (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 call bitmap_plot to:bitmap_line_xdyi::@5 bitmap_line_xdyi::@5: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1 - (byte) bitmap_line_xdyi::y#7 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::y#3 ) - (byte) bitmap_line_xdyi::x1#4 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x1#5 ) - (byte) bitmap_line_xdyi::xd#2 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::xd#4 ) - (byte) bitmap_line_xdyi::yd#3 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::yd#4 ) - (byte) bitmap_line_xdyi::e#3 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::e#5 ) - (byte) bitmap_line_xdyi::x#4 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x#3 ) - (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#4 - (byte~) bitmap_line_xdyi::$2 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#3 - (byte) bitmap_line_xdyi::e#1 ? (byte~) bitmap_line_xdyi::$2 - (bool~) bitmap_line_xdyi::$3 ? (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 - (bool~) bitmap_line_xdyi::$4 ? ! (bool~) bitmap_line_xdyi::$3 + (byte) bitmap_line_xdyi::y#7 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::y#3 ) + (byte) bitmap_line_xdyi::x1#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x1#5 ) + (byte) bitmap_line_xdyi::xd#2 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::xd#4 ) + (byte) bitmap_line_xdyi::yd#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::yd#4 ) + (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::e#5 ) + (byte) bitmap_line_xdyi::x#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x#3 ) + (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#4 + (byte~) bitmap_line_xdyi::$2 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#3 + (byte) bitmap_line_xdyi::e#1 ← (byte~) bitmap_line_xdyi::$2 + (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 + (bool~) bitmap_line_xdyi::$4 ← ! (bool~) bitmap_line_xdyi::$3 if((bool~) bitmap_line_xdyi::$4) goto bitmap_line_xdyi::@2 to:bitmap_line_xdyi::@3 bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@5 - (byte) bitmap_line_xdyi::xd#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) - (byte) bitmap_line_xdyi::yd#5 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::yd#6 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) - (byte) bitmap_line_xdyi::e#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) - (byte) bitmap_line_xdyi::y#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) - (byte) bitmap_line_xdyi::x#5 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x#7 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) - (byte) bitmap_line_xdyi::x1#2 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x1#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_xdyi::$7 ? (byte) bitmap_line_xdyi::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 + (byte) bitmap_line_xdyi::xd#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) + (byte) bitmap_line_xdyi::yd#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::yd#6 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) + (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) + (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) + (byte) bitmap_line_xdyi::x#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x#7 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) + (byte) bitmap_line_xdyi::x1#2 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x1#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_xdyi::$7 ← (byte) bitmap_line_xdyi::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 if((bool~) bitmap_line_xdyi::$7) goto bitmap_line_xdyi::@1 to:bitmap_line_xdyi::@return bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@5 - (byte) bitmap_line_xdyi::yd#6 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) - (byte) bitmap_line_xdyi::x#7 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) - (byte) bitmap_line_xdyi::x1#3 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) - (byte) bitmap_line_xdyi::xd#3 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) - (byte) bitmap_line_xdyi::e#4 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) - (byte) bitmap_line_xdyi::y#4 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) - (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#4 - (byte~) bitmap_line_xdyi::$5 ? (byte) bitmap_line_xdyi::e#4 - (byte) bitmap_line_xdyi::xd#3 - (byte) bitmap_line_xdyi::e#2 ? (byte~) bitmap_line_xdyi::$5 + (byte) bitmap_line_xdyi::yd#6 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) + (byte) bitmap_line_xdyi::x#7 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) + (byte) bitmap_line_xdyi::x1#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) + (byte) bitmap_line_xdyi::xd#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) + (byte) bitmap_line_xdyi::e#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) + (byte) bitmap_line_xdyi::y#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) + (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#4 + (byte~) bitmap_line_xdyi::$5 ← (byte) bitmap_line_xdyi::e#4 - (byte) bitmap_line_xdyi::xd#3 + (byte) bitmap_line_xdyi::e#2 ← (byte~) bitmap_line_xdyi::$5 to:bitmap_line_xdyi::@2 bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2 return to:@return bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@15 bitmap_line::@21 - (byte) bitmap_line_xdyd::x1#6 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x1#1 ) - (byte) bitmap_line_xdyd::xd#5 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::xd#1 ) - (byte) bitmap_line_xdyd::y#5 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::y#0 bitmap_line::@21/(byte) bitmap_line_xdyd::y#1 ) - (byte) bitmap_line_xdyd::x#6 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x#1 ) - (byte) bitmap_line_xdyd::yd#2 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::yd#1 ) - (byte~) bitmap_line_xdyd::$0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_xdyd::e#0 ? (byte~) bitmap_line_xdyd::$0 + (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x1#1 ) + (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::xd#1 ) + (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::y#0 bitmap_line::@21/(byte) bitmap_line_xdyd::y#1 ) + (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x#1 ) + (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::yd#1 ) + (byte~) bitmap_line_xdyd::$0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_xdyd::e#0 ← (byte~) bitmap_line_xdyd::$0 to:bitmap_line_xdyd::@1 bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2 - (byte) bitmap_line_xdyd::x1#5 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x1#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x1#2 ) - (byte) bitmap_line_xdyd::xd#4 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::xd#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::xd#6 ) - (byte) bitmap_line_xdyd::yd#4 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::yd#2 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::yd#5 ) - (byte) bitmap_line_xdyd::e#5 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) - (byte) bitmap_line_xdyd::y#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) - (byte) bitmap_line_xdyd::x#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#5 ) - (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 + (byte) bitmap_line_xdyd::x1#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x1#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x1#2 ) + (byte) bitmap_line_xdyd::xd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::xd#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::xd#6 ) + (byte) bitmap_line_xdyd::yd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::yd#2 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::yd#5 ) + (byte) bitmap_line_xdyd::e#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) + (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) + (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#5 ) + (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 call bitmap_plot to:bitmap_line_xdyd::@5 bitmap_line_xdyd::@5: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1 - (byte) bitmap_line_xdyd::y#7 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::y#3 ) - (byte) bitmap_line_xdyd::x1#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x1#5 ) - (byte) bitmap_line_xdyd::xd#2 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::xd#4 ) - (byte) bitmap_line_xdyd::yd#3 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::yd#4 ) - (byte) bitmap_line_xdyd::e#3 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::e#5 ) - (byte) bitmap_line_xdyd::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x#3 ) - (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#4 - (byte~) bitmap_line_xdyd::$2 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#3 - (byte) bitmap_line_xdyd::e#1 ? (byte~) bitmap_line_xdyd::$2 - (bool~) bitmap_line_xdyd::$3 ? (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 - (bool~) bitmap_line_xdyd::$4 ? ! (bool~) bitmap_line_xdyd::$3 + (byte) bitmap_line_xdyd::y#7 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::y#3 ) + (byte) bitmap_line_xdyd::x1#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x1#5 ) + (byte) bitmap_line_xdyd::xd#2 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::xd#4 ) + (byte) bitmap_line_xdyd::yd#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::yd#4 ) + (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::e#5 ) + (byte) bitmap_line_xdyd::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x#3 ) + (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#4 + (byte~) bitmap_line_xdyd::$2 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#3 + (byte) bitmap_line_xdyd::e#1 ← (byte~) bitmap_line_xdyd::$2 + (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 + (bool~) bitmap_line_xdyd::$4 ← ! (bool~) bitmap_line_xdyd::$3 if((bool~) bitmap_line_xdyd::$4) goto bitmap_line_xdyd::@2 to:bitmap_line_xdyd::@3 bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@5 - (byte) bitmap_line_xdyd::xd#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) - (byte) bitmap_line_xdyd::yd#5 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::yd#6 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) - (byte) bitmap_line_xdyd::e#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) - (byte) bitmap_line_xdyd::y#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) - (byte) bitmap_line_xdyd::x#5 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x#7 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) - (byte) bitmap_line_xdyd::x1#2 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x1#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_xdyd::$7 ? (byte) bitmap_line_xdyd::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 + (byte) bitmap_line_xdyd::xd#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) + (byte) bitmap_line_xdyd::yd#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::yd#6 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) + (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) + (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) + (byte) bitmap_line_xdyd::x#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x#7 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) + (byte) bitmap_line_xdyd::x1#2 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x1#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_xdyd::$7 ← (byte) bitmap_line_xdyd::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 if((bool~) bitmap_line_xdyd::$7) goto bitmap_line_xdyd::@1 to:bitmap_line_xdyd::@return bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@5 - (byte) bitmap_line_xdyd::yd#6 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) - (byte) bitmap_line_xdyd::x#7 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) - (byte) bitmap_line_xdyd::x1#3 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) - (byte) bitmap_line_xdyd::xd#3 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) - (byte) bitmap_line_xdyd::e#4 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) - (byte) bitmap_line_xdyd::y#4 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) - (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#4 - (byte~) bitmap_line_xdyd::$5 ? (byte) bitmap_line_xdyd::e#4 - (byte) bitmap_line_xdyd::xd#3 - (byte) bitmap_line_xdyd::e#2 ? (byte~) bitmap_line_xdyd::$5 + (byte) bitmap_line_xdyd::yd#6 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) + (byte) bitmap_line_xdyd::x#7 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) + (byte) bitmap_line_xdyd::x1#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) + (byte) bitmap_line_xdyd::xd#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) + (byte) bitmap_line_xdyd::e#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) + (byte) bitmap_line_xdyd::y#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) + (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#4 + (byte~) bitmap_line_xdyd::$5 ← (byte) bitmap_line_xdyd::e#4 - (byte) bitmap_line_xdyd::xd#3 + (byte) bitmap_line_xdyd::e#2 ← (byte~) bitmap_line_xdyd::$5 to:bitmap_line_xdyd::@2 bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2 return to:@return bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@27 bitmap_line::@5 - (byte) bitmap_line_ydxi::y1#6 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y1#0 ) - (byte) bitmap_line_ydxi::yd#5 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::yd#0 ) - (byte) bitmap_line_ydxi::y#6 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y#0 ) - (byte) bitmap_line_ydxi::x#5 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 bitmap_line::@5/(byte) bitmap_line_ydxi::x#0 ) - (byte) bitmap_line_ydxi::xd#2 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::xd#0 ) - (byte~) bitmap_line_ydxi::$0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_ydxi::e#0 ? (byte~) bitmap_line_ydxi::$0 + (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y1#0 ) + (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::yd#0 ) + (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y#0 ) + (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 bitmap_line::@5/(byte) bitmap_line_ydxi::x#0 ) + (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::xd#0 ) + (byte~) bitmap_line_ydxi::$0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_ydxi::e#0 ← (byte~) bitmap_line_ydxi::$0 to:bitmap_line_ydxi::@1 bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2 - (byte) bitmap_line_ydxi::y1#5 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y1#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y1#2 ) - (byte) bitmap_line_ydxi::yd#4 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::yd#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::yd#6 ) - (byte) bitmap_line_ydxi::xd#4 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::xd#2 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::xd#5 ) - (byte) bitmap_line_ydxi::e#5 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) - (byte) bitmap_line_ydxi::y#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#5 ) - (byte) bitmap_line_ydxi::x#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) - (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 + (byte) bitmap_line_ydxi::y1#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y1#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y1#2 ) + (byte) bitmap_line_ydxi::yd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::yd#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::yd#6 ) + (byte) bitmap_line_ydxi::xd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::xd#2 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::xd#5 ) + (byte) bitmap_line_ydxi::e#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) + (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#5 ) + (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) + (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 call bitmap_plot to:bitmap_line_ydxi::@5 bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1 - (byte) bitmap_line_ydxi::x#7 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::x#3 ) - (byte) bitmap_line_ydxi::y1#4 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y1#5 ) - (byte) bitmap_line_ydxi::yd#2 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::yd#4 ) - (byte) bitmap_line_ydxi::xd#3 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::xd#4 ) - (byte) bitmap_line_ydxi::e#3 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::e#5 ) - (byte) bitmap_line_ydxi::y#4 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y#3 ) - (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#4 - (byte~) bitmap_line_ydxi::$2 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#3 - (byte) bitmap_line_ydxi::e#1 ? (byte~) bitmap_line_ydxi::$2 - (bool~) bitmap_line_ydxi::$3 ? (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 - (bool~) bitmap_line_ydxi::$4 ? ! (bool~) bitmap_line_ydxi::$3 + (byte) bitmap_line_ydxi::x#7 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::x#3 ) + (byte) bitmap_line_ydxi::y1#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y1#5 ) + (byte) bitmap_line_ydxi::yd#2 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::yd#4 ) + (byte) bitmap_line_ydxi::xd#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::xd#4 ) + (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::e#5 ) + (byte) bitmap_line_ydxi::y#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y#3 ) + (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#4 + (byte~) bitmap_line_ydxi::$2 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#3 + (byte) bitmap_line_ydxi::e#1 ← (byte~) bitmap_line_ydxi::$2 + (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 + (bool~) bitmap_line_ydxi::$4 ← ! (bool~) bitmap_line_ydxi::$3 if((bool~) bitmap_line_ydxi::$4) goto bitmap_line_ydxi::@2 to:bitmap_line_ydxi::@3 bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5 - (byte) bitmap_line_ydxi::yd#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) - (byte) bitmap_line_ydxi::xd#5 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::xd#6 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) - (byte) bitmap_line_ydxi::e#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) - (byte) bitmap_line_ydxi::x#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) - (byte) bitmap_line_ydxi::y#5 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y#7 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) - (byte) bitmap_line_ydxi::y1#2 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y1#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_ydxi::$7 ? (byte) bitmap_line_ydxi::y#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 + (byte) bitmap_line_ydxi::yd#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) + (byte) bitmap_line_ydxi::xd#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::xd#6 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) + (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) + (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) + (byte) bitmap_line_ydxi::y#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y#7 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) + (byte) bitmap_line_ydxi::y1#2 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y1#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_ydxi::$7 ← (byte) bitmap_line_ydxi::y#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 if((bool~) bitmap_line_ydxi::$7) goto bitmap_line_ydxi::@1 to:bitmap_line_ydxi::@return bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5 - (byte) bitmap_line_ydxi::xd#6 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) - (byte) bitmap_line_ydxi::y#7 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) - (byte) bitmap_line_ydxi::y1#3 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) - (byte) bitmap_line_ydxi::yd#3 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) - (byte) bitmap_line_ydxi::e#4 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) - (byte) bitmap_line_ydxi::x#4 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) - (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#4 - (byte~) bitmap_line_ydxi::$5 ? (byte) bitmap_line_ydxi::e#4 - (byte) bitmap_line_ydxi::yd#3 - (byte) bitmap_line_ydxi::e#2 ? (byte~) bitmap_line_ydxi::$5 + (byte) bitmap_line_ydxi::xd#6 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) + (byte) bitmap_line_ydxi::y#7 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) + (byte) bitmap_line_ydxi::y1#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) + (byte) bitmap_line_ydxi::yd#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) + (byte) bitmap_line_ydxi::e#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) + (byte) bitmap_line_ydxi::x#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) + (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#4 + (byte~) bitmap_line_ydxi::$5 ← (byte) bitmap_line_ydxi::e#4 - (byte) bitmap_line_ydxi::yd#3 + (byte) bitmap_line_ydxi::e#2 ← (byte~) bitmap_line_ydxi::$5 to:bitmap_line_ydxi::@2 bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2 return to:@return bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@17 bitmap_line::@8 - (byte) bitmap_line_ydxd::y1#6 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y1#1 ) - (byte) bitmap_line_ydxd::yd#5 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::yd#1 ) - (byte) bitmap_line_ydxd::y#7 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y#1 ) - (byte) bitmap_line_ydxd::x#5 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::x#0 bitmap_line::@8/(byte) bitmap_line_ydxd::x#1 ) - (byte) bitmap_line_ydxd::xd#2 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::xd#1 ) - (byte~) bitmap_line_ydxd::$0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_ydxd::e#0 ? (byte~) bitmap_line_ydxd::$0 + (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y1#1 ) + (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::yd#1 ) + (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y#1 ) + (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::x#0 bitmap_line::@8/(byte) bitmap_line_ydxd::x#1 ) + (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::xd#1 ) + (byte~) bitmap_line_ydxd::$0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_ydxd::e#0 ← (byte~) bitmap_line_ydxd::$0 to:bitmap_line_ydxd::@1 bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2 - (byte) bitmap_line_ydxd::y1#5 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y1#6 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y1#2 ) - (byte) bitmap_line_ydxd::yd#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::yd#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::yd#6 ) - (byte) bitmap_line_ydxd::xd#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::xd#2 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::xd#5 ) - (byte) bitmap_line_ydxd::e#5 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) - (byte) bitmap_line_ydxd::y#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#6 ) - (byte) bitmap_line_ydxd::x#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) - (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#4 + (byte) bitmap_line_ydxd::y1#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y1#6 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y1#2 ) + (byte) bitmap_line_ydxd::yd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::yd#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::yd#6 ) + (byte) bitmap_line_ydxd::xd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::xd#2 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::xd#5 ) + (byte) bitmap_line_ydxd::e#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) + (byte) bitmap_line_ydxd::y#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#6 ) + (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) + (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#4 call bitmap_plot to:bitmap_line_ydxd::@5 bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1 - (byte) bitmap_line_ydxd::x#7 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::x#3 ) - (byte) bitmap_line_ydxd::y1#4 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y1#5 ) - (byte) bitmap_line_ydxd::yd#2 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::yd#4 ) - (byte) bitmap_line_ydxd::xd#3 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::xd#4 ) - (byte) bitmap_line_ydxd::e#3 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::e#5 ) - (byte) bitmap_line_ydxd::y#5 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y#4 ) - (byte) bitmap_line_ydxd::y#2 ? (byte) bitmap_line_ydxd::y#5 - (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 - (byte~) bitmap_line_ydxd::$2 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#3 - (byte) bitmap_line_ydxd::e#1 ? (byte~) bitmap_line_ydxd::$2 - (bool~) bitmap_line_ydxd::$3 ? (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 - (bool~) bitmap_line_ydxd::$4 ? ! (bool~) bitmap_line_ydxd::$3 + (byte) bitmap_line_ydxd::x#7 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::x#3 ) + (byte) bitmap_line_ydxd::y1#4 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y1#5 ) + (byte) bitmap_line_ydxd::yd#2 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::yd#4 ) + (byte) bitmap_line_ydxd::xd#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::xd#4 ) + (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::e#5 ) + (byte) bitmap_line_ydxd::y#5 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y#4 ) + (byte) bitmap_line_ydxd::y#2 ← (byte) bitmap_line_ydxd::y#5 + (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 + (byte~) bitmap_line_ydxd::$2 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#3 + (byte) bitmap_line_ydxd::e#1 ← (byte~) bitmap_line_ydxd::$2 + (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 + (bool~) bitmap_line_ydxd::$4 ← ! (bool~) bitmap_line_ydxd::$3 if((bool~) bitmap_line_ydxd::$4) goto bitmap_line_ydxd::@2 to:bitmap_line_ydxd::@3 bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5 - (byte) bitmap_line_ydxd::yd#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) - (byte) bitmap_line_ydxd::xd#5 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::xd#6 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) - (byte) bitmap_line_ydxd::e#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) - (byte) bitmap_line_ydxd::x#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) - (byte) bitmap_line_ydxd::y#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y#8 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) - (byte) bitmap_line_ydxd::y1#2 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y1#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_ydxd::$7 ? (byte) bitmap_line_ydxd::y#6 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 + (byte) bitmap_line_ydxd::yd#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) + (byte) bitmap_line_ydxd::xd#5 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::xd#6 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) + (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) + (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) + (byte) bitmap_line_ydxd::y#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y#8 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) + (byte) bitmap_line_ydxd::y1#2 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y1#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_ydxd::$7 ← (byte) bitmap_line_ydxd::y#6 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 if((bool~) bitmap_line_ydxd::$7) goto bitmap_line_ydxd::@1 to:bitmap_line_ydxd::@return bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5 - (byte) bitmap_line_ydxd::xd#6 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) - (byte) bitmap_line_ydxd::y#8 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) - (byte) bitmap_line_ydxd::y1#3 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) - (byte) bitmap_line_ydxd::yd#3 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) - (byte) bitmap_line_ydxd::e#4 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) - (byte) bitmap_line_ydxd::x#4 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) - (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#4 - (byte~) bitmap_line_ydxd::$5 ? (byte) bitmap_line_ydxd::e#4 - (byte) bitmap_line_ydxd::yd#3 - (byte) bitmap_line_ydxd::e#2 ? (byte~) bitmap_line_ydxd::$5 + (byte) bitmap_line_ydxd::xd#6 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) + (byte) bitmap_line_ydxd::y#8 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) + (byte) bitmap_line_ydxd::y1#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) + (byte) bitmap_line_ydxd::yd#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) + (byte) bitmap_line_ydxd::e#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) + (byte) bitmap_line_ydxd::x#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) + (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#4 + (byte~) bitmap_line_ydxd::$5 ← (byte) bitmap_line_ydxd::e#4 - (byte) bitmap_line_ydxd::yd#3 + (byte) bitmap_line_ydxd::e#2 ← (byte~) bitmap_line_ydxd::$5 to:bitmap_line_ydxd::@2 bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2 return to:@return main: scope:[main] from @54 - (byte) dtv_control#130 ? phi( @54/(byte) dtv_control#129 ) - (byte*) print_char_cursor#55 ? phi( @54/(byte*) print_char_cursor#51 ) - (byte*) print_line_cursor#52 ? phi( @54/(byte*) print_line_cursor#49 ) - (byte*) print_screen#34 ? phi( @54/(byte*) print_screen#33 ) + (byte) dtv_control#130 ← phi( @54/(byte) dtv_control#129 ) + (byte*) print_char_cursor#55 ← phi( @54/(byte*) print_char_cursor#51 ) + (byte*) print_line_cursor#52 ← phi( @54/(byte*) print_line_cursor#49 ) + (byte*) print_screen#34 ← phi( @54/(byte*) print_screen#33 ) asm { sei } - *((byte*) PROCPORT_DDR#0) ? (byte) PROCPORT_DDR_MEMORY_MASK#0 - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_IO#0 - *((byte*) DTV_FEATURE#0) ? (byte) DTV_FEATURE_ENABLE#0 + *((byte*) PROCPORT_DDR#0) ← (byte) PROCPORT_DDR_MEMORY_MASK#0 + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0 + *((byte*) DTV_FEATURE#0) ← (byte) DTV_FEATURE_ENABLE#0 to:main::@1 main::@1: scope:[main] from main main::@7 - (byte) dtv_control#99 ? phi( main/(byte) dtv_control#130 main::@7/(byte) dtv_control#0 ) - (byte*) print_char_cursor#36 ? phi( main/(byte*) print_char_cursor#55 main::@7/(byte*) print_char_cursor#10 ) - (byte*) print_line_cursor#34 ? phi( main/(byte*) print_line_cursor#52 main::@7/(byte*) print_line_cursor#9 ) - (byte*) print_screen#18 ? phi( main/(byte*) print_screen#34 main::@7/(byte*) print_screen#3 ) + (byte) dtv_control#99 ← phi( main/(byte) dtv_control#130 main::@7/(byte) dtv_control#0 ) + (byte*) print_char_cursor#36 ← phi( main/(byte*) print_char_cursor#55 main::@7/(byte*) print_char_cursor#10 ) + (byte*) print_line_cursor#34 ← phi( main/(byte*) print_line_cursor#52 main::@7/(byte*) print_line_cursor#9 ) + (byte*) print_screen#18 ← phi( main/(byte*) print_screen#34 main::@7/(byte*) print_screen#3 ) if(true) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte) dtv_control#98 ? phi( main::@1/(byte) dtv_control#99 ) - (byte*) print_char_cursor#35 ? phi( main::@1/(byte*) print_char_cursor#36 ) - (byte*) print_line_cursor#33 ? phi( main::@1/(byte*) print_line_cursor#34 ) - (byte*) print_screen#17 ? phi( main::@1/(byte*) print_screen#18 ) + (byte) dtv_control#98 ← phi( main::@1/(byte) dtv_control#99 ) + (byte*) print_char_cursor#35 ← phi( main::@1/(byte*) print_char_cursor#36 ) + (byte*) print_line_cursor#33 ← phi( main::@1/(byte*) print_line_cursor#34 ) + (byte*) print_screen#17 ← phi( main::@1/(byte*) print_screen#18 ) call menu to:main::@7 main::@7: scope:[main] from main::@2 - (byte) dtv_control#55 ? phi( main::@2/(byte) dtv_control#3 ) - (byte*) print_char_cursor#24 ? phi( main::@2/(byte*) print_char_cursor#15 ) - (byte*) print_line_cursor#23 ? phi( main::@2/(byte*) print_line_cursor#14 ) - (byte*) print_screen#12 ? phi( main::@2/(byte*) print_screen#6 ) - (byte*) print_screen#3 ? (byte*) print_screen#12 - (byte*) print_line_cursor#9 ? (byte*) print_line_cursor#23 - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#24 - (byte) dtv_control#0 ? (byte) dtv_control#55 + (byte) dtv_control#55 ← phi( main::@2/(byte) dtv_control#3 ) + (byte*) print_char_cursor#24 ← phi( main::@2/(byte*) print_char_cursor#15 ) + (byte*) print_line_cursor#23 ← phi( main::@2/(byte*) print_line_cursor#14 ) + (byte*) print_screen#12 ← phi( main::@2/(byte*) print_screen#6 ) + (byte*) print_screen#3 ← (byte*) print_screen#12 + (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#23 + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#24 + (byte) dtv_control#0 ← (byte) dtv_control#55 to:main::@1 main::@return: scope:[main] from main::@1 - (byte) dtv_control#56 ? phi( main::@1/(byte) dtv_control#99 ) - (byte*) print_char_cursor#25 ? phi( main::@1/(byte*) print_char_cursor#36 ) - (byte*) print_line_cursor#24 ? phi( main::@1/(byte*) print_line_cursor#34 ) - (byte*) print_screen#13 ? phi( main::@1/(byte*) print_screen#18 ) - (byte*) print_screen#4 ? (byte*) print_screen#13 - (byte*) print_line_cursor#10 ? (byte*) print_line_cursor#24 - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#25 - (byte) dtv_control#1 ? (byte) dtv_control#56 + (byte) dtv_control#56 ← phi( main::@1/(byte) dtv_control#99 ) + (byte*) print_char_cursor#25 ← phi( main::@1/(byte*) print_char_cursor#36 ) + (byte*) print_line_cursor#24 ← phi( main::@1/(byte*) print_line_cursor#34 ) + (byte*) print_screen#13 ← phi( main::@1/(byte*) print_screen#18 ) + (byte*) print_screen#4 ← (byte*) print_screen#13 + (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#24 + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#25 + (byte) dtv_control#1 ← (byte) dtv_control#56 return to:@return @40: scope:[] from @31 - (byte*) print_char_cursor#84 ? phi( @31/(byte*) print_char_cursor#85 ) - (byte*) print_line_cursor#83 ? phi( @31/(byte*) print_line_cursor#85 ) - (byte*) print_screen#65 ? phi( @31/(byte*) print_screen#66 ) - (string~) $1 ? (const string) $22 + (const string) $23 - (string~) $2 ? (string~) $1 + (const string) $24 - (string~) $3 ? (string~) $2 + (const string) $25 - (string~) $4 ? (string~) $3 + (const string) $26 - (string~) $5 ? (string~) $4 + (const string) $27 - (string~) $6 ? (string~) $5 + (const string) $28 - (string~) $7 ? (string~) $6 + (const string) $29 - (string~) $8 ? (string~) $7 + (const string) $30 - (string~) $9 ? (string~) $8 + (const string) $31 - (string~) $10 ? (string~) $9 + (const string) $32 - (string~) $11 ? (string~) $10 + (const string) $33 - (string~) $12 ? (string~) $11 + (const string) $34 - (string~) $13 ? (string~) $12 + (const string) $35 - (string~) $14 ? (string~) $13 + (const string) $36 - (string~) $15 ? (string~) $14 + (const string) $37 - (string~) $16 ? (string~) $15 + (const string) $38 - (string~) $17 ? (string~) $16 + (const string) $39 - (string~) $18 ? (string~) $17 + (const string) $40 - (string~) $19 ? (string~) $18 + (const string) $41 - (string~) $20 ? (string~) $19 + (const string) $42 - (byte[]) MENU_TEXT#0 ? (string~) $20 + (byte*) print_char_cursor#84 ← phi( @31/(byte*) print_char_cursor#85 ) + (byte*) print_line_cursor#83 ← phi( @31/(byte*) print_line_cursor#85 ) + (byte*) print_screen#65 ← phi( @31/(byte*) print_screen#66 ) + (string~) $1 ← (const string) $22 + (const string) $23 + (string~) $2 ← (string~) $1 + (const string) $24 + (string~) $3 ← (string~) $2 + (const string) $25 + (string~) $4 ← (string~) $3 + (const string) $26 + (string~) $5 ← (string~) $4 + (const string) $27 + (string~) $6 ← (string~) $5 + (const string) $28 + (string~) $7 ← (string~) $6 + (const string) $29 + (string~) $8 ← (string~) $7 + (const string) $30 + (string~) $9 ← (string~) $8 + (const string) $31 + (string~) $10 ← (string~) $9 + (const string) $32 + (string~) $11 ← (string~) $10 + (const string) $33 + (string~) $12 ← (string~) $11 + (const string) $34 + (string~) $13 ← (string~) $12 + (const string) $35 + (string~) $14 ← (string~) $13 + (const string) $36 + (string~) $15 ← (string~) $14 + (const string) $37 + (string~) $16 ← (string~) $15 + (const string) $38 + (string~) $17 ← (string~) $16 + (const string) $39 + (string~) $18 ← (string~) $17 + (const string) $40 + (string~) $19 ← (string~) $18 + (const string) $41 + (string~) $20 ← (string~) $19 + (const string) $42 + (byte[]) MENU_TEXT#0 ← (string~) $20 to:@41 menu: scope:[menu] from main::@2 - (byte) dtv_control#255 ? phi( main::@2/(byte) dtv_control#98 ) - (byte*) print_char_cursor#100 ? phi( main::@2/(byte*) print_char_cursor#35 ) - (byte*) print_line_cursor#100 ? phi( main::@2/(byte*) print_line_cursor#33 ) - (byte*) print_screen#81 ? phi( main::@2/(byte*) print_screen#17 ) - (byte*) menu::SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte*) menu::CHARSET#0 ? ((byte*)) (word/dword/signed dword) $9800 - (dword~) menu::$0 ? ((dword)) (byte*) menu::CHARSET#0 - (dword~) menu::$1 ? (dword~) menu::$0 / (dword/signed dword) $10000 - (byte~) menu::$2 ? ((byte)) (dword~) menu::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) menu::$2 - (dword~) menu::$3 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) menu::$4 ? ((word)) (dword~) menu::$3 - (byte~) menu::$5 ? < (word~) menu::$4 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) menu::$5 - (dword~) menu::$6 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) menu::$7 ? ((word)) (dword~) menu::$6 - (byte~) menu::$8 ? > (word~) menu::$7 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) menu::$8 - *((byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) menu::$9 ? ((word)) (byte*) menu::CHARSET#0 - (word/signed dword/dword~) menu::$10 ? (word~) menu::$9 / (word/signed word/dword/signed dword) $4000 - (byte~) menu::$11 ? ((byte)) (word/signed dword/dword~) menu::$10 - (byte/word/dword~) menu::$12 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) menu::$11 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) menu::$12 - (byte~) menu::$13 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) menu::$14 ? (byte~) menu::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) menu::$14 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (word~) menu::$15 ? ((word)) (byte*) menu::SCREEN#0 - (word~) menu::$16 ? (word~) menu::$15 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) menu::$17 ? (word~) menu::$16 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) menu::$18 ? ((word)) (byte*) menu::CHARSET#0 - (word~) menu::$19 ? (word~) menu::$18 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) menu::$20 ? (word~) menu::$19 / (word/signed word/dword/signed dword) $400 - (word/dword~) menu::$21 ? (word/signed dword/dword~) menu::$17 | (word/signed dword/dword~) menu::$20 - (byte~) menu::$22 ? ((byte)) (word/dword~) menu::$21 - *((byte*) VIC_MEMORY#0) ? (byte~) menu::$22 - (byte) menu::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#255 ← phi( main::@2/(byte) dtv_control#98 ) + (byte*) print_char_cursor#100 ← phi( main::@2/(byte*) print_char_cursor#35 ) + (byte*) print_line_cursor#100 ← phi( main::@2/(byte*) print_line_cursor#33 ) + (byte*) print_screen#81 ← phi( main::@2/(byte*) print_screen#17 ) + (byte*) menu::SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte*) menu::CHARSET#0 ← ((byte*)) (word/dword/signed dword) $9800 + (dword~) menu::$0 ← ((dword)) (byte*) menu::CHARSET#0 + (dword~) menu::$1 ← (dword~) menu::$0 / (dword/signed dword) $10000 + (byte~) menu::$2 ← ((byte)) (dword~) menu::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) menu::$2 + (dword~) menu::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) menu::$4 ← ((word)) (dword~) menu::$3 + (byte~) menu::$5 ← < (word~) menu::$4 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) menu::$5 + (dword~) menu::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) menu::$7 ← ((word)) (dword~) menu::$6 + (byte~) menu::$8 ← > (word~) menu::$7 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) menu::$8 + *((byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) menu::$9 ← ((word)) (byte*) menu::CHARSET#0 + (word/signed dword/dword~) menu::$10 ← (word~) menu::$9 / (word/signed word/dword/signed dword) $4000 + (byte~) menu::$11 ← ((byte)) (word/signed dword/dword~) menu::$10 + (byte/word/dword~) menu::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) menu::$11 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) menu::$12 + (byte~) menu::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) menu::$14 ← (byte~) menu::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) menu::$14 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (word~) menu::$15 ← ((word)) (byte*) menu::SCREEN#0 + (word~) menu::$16 ← (word~) menu::$15 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) menu::$17 ← (word~) menu::$16 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) menu::$18 ← ((word)) (byte*) menu::CHARSET#0 + (word~) menu::$19 ← (word~) menu::$18 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) menu::$20 ← (word~) menu::$19 / (word/signed word/dword/signed dword) $400 + (word/dword~) menu::$21 ← (word/signed dword/dword~) menu::$17 | (word/signed dword/dword~) menu::$20 + (byte~) menu::$22 ← ((byte)) (word/dword~) menu::$21 + *((byte*) VIC_MEMORY#0) ← (byte~) menu::$22 + (byte) menu::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:menu::@1 menu::@1: scope:[menu] from menu menu::@1 - (byte) dtv_control#246 ? phi( menu/(byte) dtv_control#255 menu::@1/(byte) dtv_control#246 ) - (byte*) print_char_cursor#86 ? phi( menu/(byte*) print_char_cursor#100 menu::@1/(byte*) print_char_cursor#86 ) - (byte*) print_line_cursor#86 ? phi( menu/(byte*) print_line_cursor#100 menu::@1/(byte*) print_line_cursor#86 ) - (byte*) print_screen#67 ? phi( menu/(byte*) print_screen#81 menu::@1/(byte*) print_screen#67 ) - (byte) menu::i#2 ? phi( menu/(byte) menu::i#0 menu::@1/(byte) menu::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) menu::i#2) ? *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) - (byte) menu::i#1 ? (byte) menu::i#2 + rangenext(0,$f) - (bool~) menu::$26 ? (byte) menu::i#1 != rangelast(0,$f) + (byte) dtv_control#246 ← phi( menu/(byte) dtv_control#255 menu::@1/(byte) dtv_control#246 ) + (byte*) print_char_cursor#86 ← phi( menu/(byte*) print_char_cursor#100 menu::@1/(byte*) print_char_cursor#86 ) + (byte*) print_line_cursor#86 ← phi( menu/(byte*) print_line_cursor#100 menu::@1/(byte*) print_line_cursor#86 ) + (byte*) print_screen#67 ← phi( menu/(byte*) print_screen#81 menu::@1/(byte*) print_screen#67 ) + (byte) menu::i#2 ← phi( menu/(byte) menu::i#0 menu::@1/(byte) menu::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) + (byte) menu::i#1 ← (byte) menu::i#2 + rangenext(0,$f) + (bool~) menu::$26 ← (byte) menu::i#1 != rangelast(0,$f) if((bool~) menu::$26) goto menu::@1 to:menu::@2 menu::@2: scope:[menu] from menu::@1 - (byte) dtv_control#237 ? phi( menu::@1/(byte) dtv_control#246 ) - (byte*) print_char_cursor#71 ? phi( menu::@1/(byte*) print_char_cursor#86 ) - (byte*) print_line_cursor#70 ? phi( menu::@1/(byte*) print_line_cursor#86 ) - (byte*) print_screen#51 ? phi( menu::@1/(byte*) print_screen#67 ) - (byte*) menu::c#0 ? (byte*) COLS#0 + (byte) dtv_control#237 ← phi( menu::@1/(byte) dtv_control#246 ) + (byte*) print_char_cursor#71 ← phi( menu::@1/(byte*) print_char_cursor#86 ) + (byte*) print_line_cursor#70 ← phi( menu::@1/(byte*) print_line_cursor#86 ) + (byte*) print_screen#51 ← phi( menu::@1/(byte*) print_screen#67 ) + (byte*) menu::c#0 ← (byte*) COLS#0 to:menu::@3 menu::@3: scope:[menu] from menu::@2 menu::@3 - (byte) dtv_control#222 ? phi( menu::@2/(byte) dtv_control#237 menu::@3/(byte) dtv_control#222 ) - (byte*) print_char_cursor#56 ? phi( menu::@2/(byte*) print_char_cursor#71 menu::@3/(byte*) print_char_cursor#56 ) - (byte*) print_line_cursor#53 ? phi( menu::@2/(byte*) print_line_cursor#70 menu::@3/(byte*) print_line_cursor#53 ) - (byte*) print_screen#35 ? phi( menu::@2/(byte*) print_screen#51 menu::@3/(byte*) print_screen#35 ) - (byte*) menu::c#2 ? phi( menu::@2/(byte*) menu::c#0 menu::@3/(byte*) menu::c#1 ) - *((byte*) menu::c#2) ? (byte) LIGHT_GREEN#0 - (byte*) menu::c#1 ? ++ (byte*) menu::c#2 - (byte*~) menu::$27 ? (byte*) COLS#0 + (word/signed word/dword/signed dword) $3e8 - (bool~) menu::$28 ? (byte*) menu::c#1 != (byte*~) menu::$27 + (byte) dtv_control#222 ← phi( menu::@2/(byte) dtv_control#237 menu::@3/(byte) dtv_control#222 ) + (byte*) print_char_cursor#56 ← phi( menu::@2/(byte*) print_char_cursor#71 menu::@3/(byte*) print_char_cursor#56 ) + (byte*) print_line_cursor#53 ← phi( menu::@2/(byte*) print_line_cursor#70 menu::@3/(byte*) print_line_cursor#53 ) + (byte*) print_screen#35 ← phi( menu::@2/(byte*) print_screen#51 menu::@3/(byte*) print_screen#35 ) + (byte*) menu::c#2 ← phi( menu::@2/(byte*) menu::c#0 menu::@3/(byte*) menu::c#1 ) + *((byte*) menu::c#2) ← (byte) LIGHT_GREEN#0 + (byte*) menu::c#1 ← ++ (byte*) menu::c#2 + (byte*~) menu::$27 ← (byte*) COLS#0 + (word/signed word/dword/signed dword) $3e8 + (bool~) menu::$28 ← (byte*) menu::c#1 != (byte*~) menu::$27 if((bool~) menu::$28) goto menu::@3 to:menu::@4 menu::@4: scope:[menu] from menu::@3 - (byte) dtv_control#205 ? phi( menu::@3/(byte) dtv_control#222 ) - (byte*) print_char_cursor#37 ? phi( menu::@3/(byte*) print_char_cursor#56 ) - (byte*) print_line_cursor#35 ? phi( menu::@3/(byte*) print_line_cursor#53 ) - (byte*) print_screen#19 ? phi( menu::@3/(byte*) print_screen#35 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) print_set_screen::screen#0 ? (byte*) menu::SCREEN#0 + (byte) dtv_control#205 ← phi( menu::@3/(byte) dtv_control#222 ) + (byte*) print_char_cursor#37 ← phi( menu::@3/(byte*) print_char_cursor#56 ) + (byte*) print_line_cursor#35 ← phi( menu::@3/(byte*) print_line_cursor#53 ) + (byte*) print_screen#19 ← phi( menu::@3/(byte*) print_screen#35 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_set_screen::screen#0 ← (byte*) menu::SCREEN#0 call print_set_screen to:menu::@47 menu::@47: scope:[menu] from menu::@4 - (byte) dtv_control#189 ? phi( menu::@4/(byte) dtv_control#205 ) - (byte*) print_char_cursor#26 ? phi( menu::@4/(byte*) print_char_cursor#9 ) - (byte*) print_line_cursor#25 ? phi( menu::@4/(byte*) print_line_cursor#8 ) - (byte*) print_screen#14 ? phi( menu::@4/(byte*) print_screen#2 ) - (byte*) print_screen#5 ? (byte*) print_screen#14 - (byte*) print_line_cursor#11 ? (byte*) print_line_cursor#25 - (byte*) print_char_cursor#12 ? (byte*) print_char_cursor#26 + (byte) dtv_control#189 ← phi( menu::@4/(byte) dtv_control#205 ) + (byte*) print_char_cursor#26 ← phi( menu::@4/(byte*) print_char_cursor#9 ) + (byte*) print_line_cursor#25 ← phi( menu::@4/(byte*) print_line_cursor#8 ) + (byte*) print_screen#14 ← phi( menu::@4/(byte*) print_screen#2 ) + (byte*) print_screen#5 ← (byte*) print_screen#14 + (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#25 + (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#26 call print_cls to:menu::@48 menu::@48: scope:[menu] from menu::@47 - (byte) dtv_control#161 ? phi( menu::@47/(byte) dtv_control#189 ) - (byte*) print_screen#52 ? phi( menu::@47/(byte*) print_screen#5 ) - (byte*) print_char_cursor#27 ? phi( menu::@47/(byte*) print_char_cursor#7 ) - (byte*) print_line_cursor#26 ? phi( menu::@47/(byte*) print_line_cursor#6 ) - (byte*) print_line_cursor#12 ? (byte*) print_line_cursor#26 - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#27 - (byte*) print_str_lines::str#1 ? (byte[]) MENU_TEXT#0 + (byte) dtv_control#161 ← phi( menu::@47/(byte) dtv_control#189 ) + (byte*) print_screen#52 ← phi( menu::@47/(byte*) print_screen#5 ) + (byte*) print_char_cursor#27 ← phi( menu::@47/(byte*) print_char_cursor#7 ) + (byte*) print_line_cursor#26 ← phi( menu::@47/(byte*) print_line_cursor#6 ) + (byte*) print_line_cursor#12 ← (byte*) print_line_cursor#26 + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#27 + (byte*) print_str_lines::str#1 ← (byte[]) MENU_TEXT#0 call print_str_lines to:menu::@49 menu::@49: scope:[menu] from menu::@48 - (byte) dtv_control#132 ? phi( menu::@48/(byte) dtv_control#161 ) - (byte*) print_screen#37 ? phi( menu::@48/(byte*) print_screen#52 ) - (byte*) print_line_cursor#27 ? phi( menu::@48/(byte*) print_line_cursor#2 ) - (byte*) print_char_cursor#28 ? phi( menu::@48/(byte*) print_char_cursor#3 ) - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#28 - (byte*) print_line_cursor#13 ? (byte*) print_line_cursor#27 + (byte) dtv_control#132 ← phi( menu::@48/(byte) dtv_control#161 ) + (byte*) print_screen#37 ← phi( menu::@48/(byte*) print_screen#52 ) + (byte*) print_line_cursor#27 ← phi( menu::@48/(byte*) print_line_cursor#2 ) + (byte*) print_char_cursor#28 ← phi( menu::@48/(byte*) print_char_cursor#3 ) + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#28 + (byte*) print_line_cursor#13 ← (byte*) print_line_cursor#27 to:menu::@5 menu::@5: scope:[menu] from menu::@19 menu::@49 - (byte) dtv_control#101 ? phi( menu::@19/(byte) dtv_control#131 menu::@49/(byte) dtv_control#132 ) - (byte*) print_char_cursor#38 ? phi( menu::@19/(byte*) print_char_cursor#57 menu::@49/(byte*) print_char_cursor#14 ) - (byte*) print_line_cursor#36 ? phi( menu::@19/(byte*) print_line_cursor#54 menu::@49/(byte*) print_line_cursor#13 ) - (byte*) print_screen#20 ? phi( menu::@19/(byte*) print_screen#36 menu::@49/(byte*) print_screen#37 ) + (byte) dtv_control#101 ← phi( menu::@19/(byte) dtv_control#131 menu::@49/(byte) dtv_control#132 ) + (byte*) print_char_cursor#38 ← phi( menu::@19/(byte*) print_char_cursor#57 menu::@49/(byte*) print_char_cursor#14 ) + (byte*) print_line_cursor#36 ← phi( menu::@19/(byte*) print_line_cursor#54 menu::@49/(byte*) print_line_cursor#13 ) + (byte*) print_screen#20 ← phi( menu::@19/(byte*) print_screen#36 menu::@49/(byte*) print_screen#37 ) if(true) goto menu::@6 to:menu::@return menu::@6: scope:[menu] from menu::@5 - (byte*) print_char_cursor#87 ? phi( menu::@5/(byte*) print_char_cursor#38 ) - (byte*) print_line_cursor#87 ? phi( menu::@5/(byte*) print_line_cursor#36 ) - (byte*) print_screen#68 ? phi( menu::@5/(byte*) print_screen#20 ) - (byte) dtv_control#162 ? phi( menu::@5/(byte) dtv_control#101 ) - (byte) keyboard_key_pressed::key#0 ? (byte) KEY_1#0 + (byte*) print_char_cursor#87 ← phi( menu::@5/(byte*) print_char_cursor#38 ) + (byte*) print_line_cursor#87 ← phi( menu::@5/(byte*) print_line_cursor#36 ) + (byte*) print_screen#68 ← phi( menu::@5/(byte*) print_screen#20 ) + (byte) dtv_control#162 ← phi( menu::@5/(byte) dtv_control#101 ) + (byte) keyboard_key_pressed::key#0 ← (byte) KEY_1#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#1 to:menu::@50 menu::@50: scope:[menu] from menu::@6 - (byte*) print_char_cursor#72 ? phi( menu::@6/(byte*) print_char_cursor#87 ) - (byte*) print_line_cursor#71 ? phi( menu::@6/(byte*) print_line_cursor#87 ) - (byte*) print_screen#53 ? phi( menu::@6/(byte*) print_screen#68 ) - (byte) dtv_control#133 ? phi( menu::@6/(byte) dtv_control#162 ) - (byte) keyboard_key_pressed::return#23 ? phi( menu::@6/(byte) keyboard_key_pressed::return#2 ) - (byte~) menu::$29 ? (byte) keyboard_key_pressed::return#23 - (bool~) menu::$30 ? (byte~) menu::$29 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$31 ? ! (bool~) menu::$30 + (byte*) print_char_cursor#72 ← phi( menu::@6/(byte*) print_char_cursor#87 ) + (byte*) print_line_cursor#71 ← phi( menu::@6/(byte*) print_line_cursor#87 ) + (byte*) print_screen#53 ← phi( menu::@6/(byte*) print_screen#68 ) + (byte) dtv_control#133 ← phi( menu::@6/(byte) dtv_control#162 ) + (byte) keyboard_key_pressed::return#23 ← phi( menu::@6/(byte) keyboard_key_pressed::return#2 ) + (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#23 + (bool~) menu::$30 ← (byte~) menu::$29 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$31 ← ! (bool~) menu::$30 if((bool~) menu::$31) goto menu::@8 to:menu::@22 menu::@8: scope:[menu] from menu::@50 - (byte*) print_char_cursor#88 ? phi( menu::@50/(byte*) print_char_cursor#72 ) - (byte*) print_line_cursor#88 ? phi( menu::@50/(byte*) print_line_cursor#71 ) - (byte*) print_screen#69 ? phi( menu::@50/(byte*) print_screen#53 ) - (byte) dtv_control#163 ? phi( menu::@50/(byte) dtv_control#133 ) - (byte) keyboard_key_pressed::key#1 ? (byte) KEY_2#0 + (byte*) print_char_cursor#88 ← phi( menu::@50/(byte*) print_char_cursor#72 ) + (byte*) print_line_cursor#88 ← phi( menu::@50/(byte*) print_line_cursor#71 ) + (byte*) print_screen#69 ← phi( menu::@50/(byte*) print_screen#53 ) + (byte) dtv_control#163 ← phi( menu::@50/(byte) dtv_control#133 ) + (byte) keyboard_key_pressed::key#1 ← (byte) KEY_2#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#3 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#1 to:menu::@51 menu::@51: scope:[menu] from menu::@8 - (byte*) print_char_cursor#73 ? phi( menu::@8/(byte*) print_char_cursor#88 ) - (byte*) print_line_cursor#72 ? phi( menu::@8/(byte*) print_line_cursor#88 ) - (byte*) print_screen#54 ? phi( menu::@8/(byte*) print_screen#69 ) - (byte) dtv_control#134 ? phi( menu::@8/(byte) dtv_control#163 ) - (byte) keyboard_key_pressed::return#24 ? phi( menu::@8/(byte) keyboard_key_pressed::return#3 ) - (byte~) menu::$33 ? (byte) keyboard_key_pressed::return#24 - (bool~) menu::$34 ? (byte~) menu::$33 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$35 ? ! (bool~) menu::$34 + (byte*) print_char_cursor#73 ← phi( menu::@8/(byte*) print_char_cursor#88 ) + (byte*) print_line_cursor#72 ← phi( menu::@8/(byte*) print_line_cursor#88 ) + (byte*) print_screen#54 ← phi( menu::@8/(byte*) print_screen#69 ) + (byte) dtv_control#134 ← phi( menu::@8/(byte) dtv_control#163 ) + (byte) keyboard_key_pressed::return#24 ← phi( menu::@8/(byte) keyboard_key_pressed::return#3 ) + (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24 + (bool~) menu::$34 ← (byte~) menu::$33 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$35 ← ! (bool~) menu::$34 if((bool~) menu::$35) goto menu::@9 to:menu::@24 menu::@22: scope:[menu] from menu::@50 - (byte*) print_char_cursor#58 ? phi( menu::@50/(byte*) print_char_cursor#72 ) - (byte*) print_line_cursor#55 ? phi( menu::@50/(byte*) print_line_cursor#71 ) - (byte*) print_screen#38 ? phi( menu::@50/(byte*) print_screen#53 ) - (byte) dtv_control#100 ? phi( menu::@50/(byte) dtv_control#133 ) + (byte*) print_char_cursor#58 ← phi( menu::@50/(byte*) print_char_cursor#72 ) + (byte*) print_line_cursor#55 ← phi( menu::@50/(byte*) print_line_cursor#71 ) + (byte*) print_screen#38 ← phi( menu::@50/(byte*) print_screen#53 ) + (byte) dtv_control#100 ← phi( menu::@50/(byte) dtv_control#133 ) call mode_stdchar to:menu::@52 menu::@52: scope:[menu] from menu::@22 - (byte*) print_char_cursor#39 ? phi( menu::@22/(byte*) print_char_cursor#58 ) - (byte*) print_line_cursor#37 ? phi( menu::@22/(byte*) print_line_cursor#55 ) - (byte*) print_screen#21 ? phi( menu::@22/(byte*) print_screen#38 ) - (byte) dtv_control#57 ? phi( menu::@22/(byte) dtv_control#20 ) - (byte) dtv_control#2 ? (byte) dtv_control#57 + (byte*) print_char_cursor#39 ← phi( menu::@22/(byte*) print_char_cursor#58 ) + (byte*) print_line_cursor#37 ← phi( menu::@22/(byte*) print_line_cursor#55 ) + (byte*) print_screen#21 ← phi( menu::@22/(byte*) print_screen#38 ) + (byte) dtv_control#57 ← phi( menu::@22/(byte) dtv_control#20 ) + (byte) dtv_control#2 ← (byte) dtv_control#57 to:menu::@return menu::@return: scope:[menu] from menu::@5 menu::@52 menu::@54 menu::@56 menu::@58 menu::@60 menu::@62 menu::@64 menu::@66 menu::@68 menu::@70 menu::@72 menu::@73 - (byte) dtv_control#58 ? phi( menu::@5/(byte) dtv_control#101 menu::@52/(byte) dtv_control#2 menu::@54/(byte) dtv_control#4 menu::@56/(byte) dtv_control#5 menu::@58/(byte) dtv_control#6 menu::@60/(byte) dtv_control#7 menu::@62/(byte) dtv_control#8 menu::@64/(byte) dtv_control#9 menu::@66/(byte) dtv_control#10 menu::@68/(byte) dtv_control#11 menu::@70/(byte) dtv_control#12 menu::@72/(byte) dtv_control#13 menu::@73/(byte) dtv_control#14 ) - (byte*) print_char_cursor#29 ? phi( menu::@5/(byte*) print_char_cursor#38 menu::@52/(byte*) print_char_cursor#39 menu::@54/(byte*) print_char_cursor#40 menu::@56/(byte*) print_char_cursor#41 menu::@58/(byte*) print_char_cursor#42 menu::@60/(byte*) print_char_cursor#43 menu::@62/(byte*) print_char_cursor#44 menu::@64/(byte*) print_char_cursor#45 menu::@66/(byte*) print_char_cursor#46 menu::@68/(byte*) print_char_cursor#47 menu::@70/(byte*) print_char_cursor#48 menu::@72/(byte*) print_char_cursor#49 menu::@73/(byte*) print_char_cursor#50 ) - (byte*) print_line_cursor#28 ? phi( menu::@5/(byte*) print_line_cursor#36 menu::@52/(byte*) print_line_cursor#37 menu::@54/(byte*) print_line_cursor#38 menu::@56/(byte*) print_line_cursor#39 menu::@58/(byte*) print_line_cursor#40 menu::@60/(byte*) print_line_cursor#41 menu::@62/(byte*) print_line_cursor#42 menu::@64/(byte*) print_line_cursor#43 menu::@66/(byte*) print_line_cursor#44 menu::@68/(byte*) print_line_cursor#45 menu::@70/(byte*) print_line_cursor#46 menu::@72/(byte*) print_line_cursor#47 menu::@73/(byte*) print_line_cursor#48 ) - (byte*) print_screen#15 ? phi( menu::@5/(byte*) print_screen#20 menu::@52/(byte*) print_screen#21 menu::@54/(byte*) print_screen#22 menu::@56/(byte*) print_screen#23 menu::@58/(byte*) print_screen#24 menu::@60/(byte*) print_screen#25 menu::@62/(byte*) print_screen#26 menu::@64/(byte*) print_screen#27 menu::@66/(byte*) print_screen#28 menu::@68/(byte*) print_screen#29 menu::@70/(byte*) print_screen#30 menu::@72/(byte*) print_screen#31 menu::@73/(byte*) print_screen#32 ) - (byte*) print_screen#6 ? (byte*) print_screen#15 - (byte*) print_line_cursor#14 ? (byte*) print_line_cursor#28 - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#29 - (byte) dtv_control#3 ? (byte) dtv_control#58 + (byte) dtv_control#58 ← phi( menu::@5/(byte) dtv_control#101 menu::@52/(byte) dtv_control#2 menu::@54/(byte) dtv_control#4 menu::@56/(byte) dtv_control#5 menu::@58/(byte) dtv_control#6 menu::@60/(byte) dtv_control#7 menu::@62/(byte) dtv_control#8 menu::@64/(byte) dtv_control#9 menu::@66/(byte) dtv_control#10 menu::@68/(byte) dtv_control#11 menu::@70/(byte) dtv_control#12 menu::@72/(byte) dtv_control#13 menu::@73/(byte) dtv_control#14 ) + (byte*) print_char_cursor#29 ← phi( menu::@5/(byte*) print_char_cursor#38 menu::@52/(byte*) print_char_cursor#39 menu::@54/(byte*) print_char_cursor#40 menu::@56/(byte*) print_char_cursor#41 menu::@58/(byte*) print_char_cursor#42 menu::@60/(byte*) print_char_cursor#43 menu::@62/(byte*) print_char_cursor#44 menu::@64/(byte*) print_char_cursor#45 menu::@66/(byte*) print_char_cursor#46 menu::@68/(byte*) print_char_cursor#47 menu::@70/(byte*) print_char_cursor#48 menu::@72/(byte*) print_char_cursor#49 menu::@73/(byte*) print_char_cursor#50 ) + (byte*) print_line_cursor#28 ← phi( menu::@5/(byte*) print_line_cursor#36 menu::@52/(byte*) print_line_cursor#37 menu::@54/(byte*) print_line_cursor#38 menu::@56/(byte*) print_line_cursor#39 menu::@58/(byte*) print_line_cursor#40 menu::@60/(byte*) print_line_cursor#41 menu::@62/(byte*) print_line_cursor#42 menu::@64/(byte*) print_line_cursor#43 menu::@66/(byte*) print_line_cursor#44 menu::@68/(byte*) print_line_cursor#45 menu::@70/(byte*) print_line_cursor#46 menu::@72/(byte*) print_line_cursor#47 menu::@73/(byte*) print_line_cursor#48 ) + (byte*) print_screen#15 ← phi( menu::@5/(byte*) print_screen#20 menu::@52/(byte*) print_screen#21 menu::@54/(byte*) print_screen#22 menu::@56/(byte*) print_screen#23 menu::@58/(byte*) print_screen#24 menu::@60/(byte*) print_screen#25 menu::@62/(byte*) print_screen#26 menu::@64/(byte*) print_screen#27 menu::@66/(byte*) print_screen#28 menu::@68/(byte*) print_screen#29 menu::@70/(byte*) print_screen#30 menu::@72/(byte*) print_screen#31 menu::@73/(byte*) print_screen#32 ) + (byte*) print_screen#6 ← (byte*) print_screen#15 + (byte*) print_line_cursor#14 ← (byte*) print_line_cursor#28 + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#29 + (byte) dtv_control#3 ← (byte) dtv_control#58 return to:@return menu::@9: scope:[menu] from menu::@51 - (byte*) print_char_cursor#89 ? phi( menu::@51/(byte*) print_char_cursor#73 ) - (byte*) print_line_cursor#89 ? phi( menu::@51/(byte*) print_line_cursor#72 ) - (byte*) print_screen#70 ? phi( menu::@51/(byte*) print_screen#54 ) - (byte) dtv_control#164 ? phi( menu::@51/(byte) dtv_control#134 ) - (byte) keyboard_key_pressed::key#2 ? (byte) KEY_3#0 + (byte*) print_char_cursor#89 ← phi( menu::@51/(byte*) print_char_cursor#73 ) + (byte*) print_line_cursor#89 ← phi( menu::@51/(byte*) print_line_cursor#72 ) + (byte*) print_screen#70 ← phi( menu::@51/(byte*) print_screen#54 ) + (byte) dtv_control#164 ← phi( menu::@51/(byte) dtv_control#134 ) + (byte) keyboard_key_pressed::key#2 ← (byte) KEY_3#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#4 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#1 to:menu::@53 menu::@53: scope:[menu] from menu::@9 - (byte*) print_char_cursor#74 ? phi( menu::@9/(byte*) print_char_cursor#89 ) - (byte*) print_line_cursor#73 ? phi( menu::@9/(byte*) print_line_cursor#89 ) - (byte*) print_screen#55 ? phi( menu::@9/(byte*) print_screen#70 ) - (byte) dtv_control#135 ? phi( menu::@9/(byte) dtv_control#164 ) - (byte) keyboard_key_pressed::return#25 ? phi( menu::@9/(byte) keyboard_key_pressed::return#4 ) - (byte~) menu::$37 ? (byte) keyboard_key_pressed::return#25 - (bool~) menu::$38 ? (byte~) menu::$37 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$39 ? ! (bool~) menu::$38 + (byte*) print_char_cursor#74 ← phi( menu::@9/(byte*) print_char_cursor#89 ) + (byte*) print_line_cursor#73 ← phi( menu::@9/(byte*) print_line_cursor#89 ) + (byte*) print_screen#55 ← phi( menu::@9/(byte*) print_screen#70 ) + (byte) dtv_control#135 ← phi( menu::@9/(byte) dtv_control#164 ) + (byte) keyboard_key_pressed::return#25 ← phi( menu::@9/(byte) keyboard_key_pressed::return#4 ) + (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25 + (bool~) menu::$38 ← (byte~) menu::$37 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$39 ← ! (bool~) menu::$38 if((bool~) menu::$39) goto menu::@10 to:menu::@26 menu::@24: scope:[menu] from menu::@51 - (byte*) print_char_cursor#59 ? phi( menu::@51/(byte*) print_char_cursor#73 ) - (byte*) print_line_cursor#56 ? phi( menu::@51/(byte*) print_line_cursor#72 ) - (byte*) print_screen#39 ? phi( menu::@51/(byte*) print_screen#54 ) - (byte) dtv_control#102 ? phi( menu::@51/(byte) dtv_control#134 ) + (byte*) print_char_cursor#59 ← phi( menu::@51/(byte*) print_char_cursor#73 ) + (byte*) print_line_cursor#56 ← phi( menu::@51/(byte*) print_line_cursor#72 ) + (byte*) print_screen#39 ← phi( menu::@51/(byte*) print_screen#54 ) + (byte) dtv_control#102 ← phi( menu::@51/(byte) dtv_control#134 ) call mode_ecmchar to:menu::@54 menu::@54: scope:[menu] from menu::@24 - (byte*) print_char_cursor#40 ? phi( menu::@24/(byte*) print_char_cursor#59 ) - (byte*) print_line_cursor#38 ? phi( menu::@24/(byte*) print_line_cursor#56 ) - (byte*) print_screen#22 ? phi( menu::@24/(byte*) print_screen#39 ) - (byte) dtv_control#59 ? phi( menu::@24/(byte) dtv_control#23 ) - (byte) dtv_control#4 ? (byte) dtv_control#59 + (byte*) print_char_cursor#40 ← phi( menu::@24/(byte*) print_char_cursor#59 ) + (byte*) print_line_cursor#38 ← phi( menu::@24/(byte*) print_line_cursor#56 ) + (byte*) print_screen#22 ← phi( menu::@24/(byte*) print_screen#39 ) + (byte) dtv_control#59 ← phi( menu::@24/(byte) dtv_control#23 ) + (byte) dtv_control#4 ← (byte) dtv_control#59 to:menu::@return menu::@10: scope:[menu] from menu::@53 - (byte*) print_char_cursor#90 ? phi( menu::@53/(byte*) print_char_cursor#74 ) - (byte*) print_line_cursor#90 ? phi( menu::@53/(byte*) print_line_cursor#73 ) - (byte*) print_screen#71 ? phi( menu::@53/(byte*) print_screen#55 ) - (byte) dtv_control#165 ? phi( menu::@53/(byte) dtv_control#135 ) - (byte) keyboard_key_pressed::key#3 ? (byte) KEY_4#0 + (byte*) print_char_cursor#90 ← phi( menu::@53/(byte*) print_char_cursor#74 ) + (byte*) print_line_cursor#90 ← phi( menu::@53/(byte*) print_line_cursor#73 ) + (byte*) print_screen#71 ← phi( menu::@53/(byte*) print_screen#55 ) + (byte) dtv_control#165 ← phi( menu::@53/(byte) dtv_control#135 ) + (byte) keyboard_key_pressed::key#3 ← (byte) KEY_4#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#5 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#5 ← (byte) keyboard_key_pressed::return#1 to:menu::@55 menu::@55: scope:[menu] from menu::@10 - (byte*) print_char_cursor#75 ? phi( menu::@10/(byte*) print_char_cursor#90 ) - (byte*) print_line_cursor#74 ? phi( menu::@10/(byte*) print_line_cursor#90 ) - (byte*) print_screen#56 ? phi( menu::@10/(byte*) print_screen#71 ) - (byte) dtv_control#136 ? phi( menu::@10/(byte) dtv_control#165 ) - (byte) keyboard_key_pressed::return#26 ? phi( menu::@10/(byte) keyboard_key_pressed::return#5 ) - (byte~) menu::$41 ? (byte) keyboard_key_pressed::return#26 - (bool~) menu::$42 ? (byte~) menu::$41 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$43 ? ! (bool~) menu::$42 + (byte*) print_char_cursor#75 ← phi( menu::@10/(byte*) print_char_cursor#90 ) + (byte*) print_line_cursor#74 ← phi( menu::@10/(byte*) print_line_cursor#90 ) + (byte*) print_screen#56 ← phi( menu::@10/(byte*) print_screen#71 ) + (byte) dtv_control#136 ← phi( menu::@10/(byte) dtv_control#165 ) + (byte) keyboard_key_pressed::return#26 ← phi( menu::@10/(byte) keyboard_key_pressed::return#5 ) + (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26 + (bool~) menu::$42 ← (byte~) menu::$41 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$43 ← ! (bool~) menu::$42 if((bool~) menu::$43) goto menu::@11 to:menu::@28 menu::@26: scope:[menu] from menu::@53 - (byte*) print_char_cursor#60 ? phi( menu::@53/(byte*) print_char_cursor#74 ) - (byte*) print_line_cursor#57 ? phi( menu::@53/(byte*) print_line_cursor#73 ) - (byte*) print_screen#40 ? phi( menu::@53/(byte*) print_screen#55 ) - (byte) dtv_control#103 ? phi( menu::@53/(byte) dtv_control#135 ) + (byte*) print_char_cursor#60 ← phi( menu::@53/(byte*) print_char_cursor#74 ) + (byte*) print_line_cursor#57 ← phi( menu::@53/(byte*) print_line_cursor#73 ) + (byte*) print_screen#40 ← phi( menu::@53/(byte*) print_screen#55 ) + (byte) dtv_control#103 ← phi( menu::@53/(byte) dtv_control#135 ) call mode_mcchar to:menu::@56 menu::@56: scope:[menu] from menu::@26 - (byte*) print_char_cursor#41 ? phi( menu::@26/(byte*) print_char_cursor#60 ) - (byte*) print_line_cursor#39 ? phi( menu::@26/(byte*) print_line_cursor#57 ) - (byte*) print_screen#23 ? phi( menu::@26/(byte*) print_screen#40 ) - (byte) dtv_control#60 ? phi( menu::@26/(byte) dtv_control#26 ) - (byte) dtv_control#5 ? (byte) dtv_control#60 + (byte*) print_char_cursor#41 ← phi( menu::@26/(byte*) print_char_cursor#60 ) + (byte*) print_line_cursor#39 ← phi( menu::@26/(byte*) print_line_cursor#57 ) + (byte*) print_screen#23 ← phi( menu::@26/(byte*) print_screen#40 ) + (byte) dtv_control#60 ← phi( menu::@26/(byte) dtv_control#26 ) + (byte) dtv_control#5 ← (byte) dtv_control#60 to:menu::@return menu::@11: scope:[menu] from menu::@55 - (byte*) print_char_cursor#91 ? phi( menu::@55/(byte*) print_char_cursor#75 ) - (byte*) print_line_cursor#91 ? phi( menu::@55/(byte*) print_line_cursor#74 ) - (byte*) print_screen#72 ? phi( menu::@55/(byte*) print_screen#56 ) - (byte) dtv_control#166 ? phi( menu::@55/(byte) dtv_control#136 ) - (byte) keyboard_key_pressed::key#4 ? (byte) KEY_6#0 + (byte*) print_char_cursor#91 ← phi( menu::@55/(byte*) print_char_cursor#75 ) + (byte*) print_line_cursor#91 ← phi( menu::@55/(byte*) print_line_cursor#74 ) + (byte*) print_screen#72 ← phi( menu::@55/(byte*) print_screen#56 ) + (byte) dtv_control#166 ← phi( menu::@55/(byte) dtv_control#136 ) + (byte) keyboard_key_pressed::key#4 ← (byte) KEY_6#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#6 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#6 ← (byte) keyboard_key_pressed::return#1 to:menu::@57 menu::@57: scope:[menu] from menu::@11 - (byte*) print_char_cursor#76 ? phi( menu::@11/(byte*) print_char_cursor#91 ) - (byte*) print_line_cursor#75 ? phi( menu::@11/(byte*) print_line_cursor#91 ) - (byte*) print_screen#57 ? phi( menu::@11/(byte*) print_screen#72 ) - (byte) dtv_control#137 ? phi( menu::@11/(byte) dtv_control#166 ) - (byte) keyboard_key_pressed::return#27 ? phi( menu::@11/(byte) keyboard_key_pressed::return#6 ) - (byte~) menu::$45 ? (byte) keyboard_key_pressed::return#27 - (bool~) menu::$46 ? (byte~) menu::$45 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$47 ? ! (bool~) menu::$46 + (byte*) print_char_cursor#76 ← phi( menu::@11/(byte*) print_char_cursor#91 ) + (byte*) print_line_cursor#75 ← phi( menu::@11/(byte*) print_line_cursor#91 ) + (byte*) print_screen#57 ← phi( menu::@11/(byte*) print_screen#72 ) + (byte) dtv_control#137 ← phi( menu::@11/(byte) dtv_control#166 ) + (byte) keyboard_key_pressed::return#27 ← phi( menu::@11/(byte) keyboard_key_pressed::return#6 ) + (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27 + (bool~) menu::$46 ← (byte~) menu::$45 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$47 ← ! (bool~) menu::$46 if((bool~) menu::$47) goto menu::@12 to:menu::@30 menu::@28: scope:[menu] from menu::@55 - (byte*) print_char_cursor#61 ? phi( menu::@55/(byte*) print_char_cursor#75 ) - (byte*) print_line_cursor#58 ? phi( menu::@55/(byte*) print_line_cursor#74 ) - (byte*) print_screen#41 ? phi( menu::@55/(byte*) print_screen#56 ) - (byte) dtv_control#104 ? phi( menu::@55/(byte) dtv_control#136 ) + (byte*) print_char_cursor#61 ← phi( menu::@55/(byte*) print_char_cursor#75 ) + (byte*) print_line_cursor#58 ← phi( menu::@55/(byte*) print_line_cursor#74 ) + (byte*) print_screen#41 ← phi( menu::@55/(byte*) print_screen#56 ) + (byte) dtv_control#104 ← phi( menu::@55/(byte) dtv_control#136 ) call mode_stdbitmap to:menu::@58 menu::@58: scope:[menu] from menu::@28 - (byte*) print_char_cursor#42 ? phi( menu::@28/(byte*) print_char_cursor#61 ) - (byte*) print_line_cursor#40 ? phi( menu::@28/(byte*) print_line_cursor#58 ) - (byte*) print_screen#24 ? phi( menu::@28/(byte*) print_screen#41 ) - (byte) dtv_control#61 ? phi( menu::@28/(byte) dtv_control#29 ) - (byte) dtv_control#6 ? (byte) dtv_control#61 + (byte*) print_char_cursor#42 ← phi( menu::@28/(byte*) print_char_cursor#61 ) + (byte*) print_line_cursor#40 ← phi( menu::@28/(byte*) print_line_cursor#58 ) + (byte*) print_screen#24 ← phi( menu::@28/(byte*) print_screen#41 ) + (byte) dtv_control#61 ← phi( menu::@28/(byte) dtv_control#29 ) + (byte) dtv_control#6 ← (byte) dtv_control#61 to:menu::@return menu::@12: scope:[menu] from menu::@57 - (byte*) print_char_cursor#92 ? phi( menu::@57/(byte*) print_char_cursor#76 ) - (byte*) print_line_cursor#92 ? phi( menu::@57/(byte*) print_line_cursor#75 ) - (byte*) print_screen#73 ? phi( menu::@57/(byte*) print_screen#57 ) - (byte) dtv_control#167 ? phi( menu::@57/(byte) dtv_control#137 ) - (byte) keyboard_key_pressed::key#5 ? (byte) KEY_7#0 + (byte*) print_char_cursor#92 ← phi( menu::@57/(byte*) print_char_cursor#76 ) + (byte*) print_line_cursor#92 ← phi( menu::@57/(byte*) print_line_cursor#75 ) + (byte*) print_screen#73 ← phi( menu::@57/(byte*) print_screen#57 ) + (byte) dtv_control#167 ← phi( menu::@57/(byte) dtv_control#137 ) + (byte) keyboard_key_pressed::key#5 ← (byte) KEY_7#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#7 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#7 ← (byte) keyboard_key_pressed::return#1 to:menu::@59 menu::@59: scope:[menu] from menu::@12 - (byte*) print_char_cursor#77 ? phi( menu::@12/(byte*) print_char_cursor#92 ) - (byte*) print_line_cursor#76 ? phi( menu::@12/(byte*) print_line_cursor#92 ) - (byte*) print_screen#58 ? phi( menu::@12/(byte*) print_screen#73 ) - (byte) dtv_control#138 ? phi( menu::@12/(byte) dtv_control#167 ) - (byte) keyboard_key_pressed::return#28 ? phi( menu::@12/(byte) keyboard_key_pressed::return#7 ) - (byte~) menu::$49 ? (byte) keyboard_key_pressed::return#28 - (bool~) menu::$50 ? (byte~) menu::$49 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$51 ? ! (bool~) menu::$50 + (byte*) print_char_cursor#77 ← phi( menu::@12/(byte*) print_char_cursor#92 ) + (byte*) print_line_cursor#76 ← phi( menu::@12/(byte*) print_line_cursor#92 ) + (byte*) print_screen#58 ← phi( menu::@12/(byte*) print_screen#73 ) + (byte) dtv_control#138 ← phi( menu::@12/(byte) dtv_control#167 ) + (byte) keyboard_key_pressed::return#28 ← phi( menu::@12/(byte) keyboard_key_pressed::return#7 ) + (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28 + (bool~) menu::$50 ← (byte~) menu::$49 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$51 ← ! (bool~) menu::$50 if((bool~) menu::$51) goto menu::@13 to:menu::@32 menu::@30: scope:[menu] from menu::@57 - (byte*) print_char_cursor#62 ? phi( menu::@57/(byte*) print_char_cursor#76 ) - (byte*) print_line_cursor#59 ? phi( menu::@57/(byte*) print_line_cursor#75 ) - (byte*) print_screen#42 ? phi( menu::@57/(byte*) print_screen#57 ) - (byte) dtv_control#105 ? phi( menu::@57/(byte) dtv_control#137 ) + (byte*) print_char_cursor#62 ← phi( menu::@57/(byte*) print_char_cursor#76 ) + (byte*) print_line_cursor#59 ← phi( menu::@57/(byte*) print_line_cursor#75 ) + (byte*) print_screen#42 ← phi( menu::@57/(byte*) print_screen#57 ) + (byte) dtv_control#105 ← phi( menu::@57/(byte) dtv_control#137 ) call mode_hicolstdchar to:menu::@60 menu::@60: scope:[menu] from menu::@30 - (byte*) print_char_cursor#43 ? phi( menu::@30/(byte*) print_char_cursor#62 ) - (byte*) print_line_cursor#41 ? phi( menu::@30/(byte*) print_line_cursor#59 ) - (byte*) print_screen#25 ? phi( menu::@30/(byte*) print_screen#42 ) - (byte) dtv_control#62 ? phi( menu::@30/(byte) dtv_control#32 ) - (byte) dtv_control#7 ? (byte) dtv_control#62 + (byte*) print_char_cursor#43 ← phi( menu::@30/(byte*) print_char_cursor#62 ) + (byte*) print_line_cursor#41 ← phi( menu::@30/(byte*) print_line_cursor#59 ) + (byte*) print_screen#25 ← phi( menu::@30/(byte*) print_screen#42 ) + (byte) dtv_control#62 ← phi( menu::@30/(byte) dtv_control#32 ) + (byte) dtv_control#7 ← (byte) dtv_control#62 to:menu::@return menu::@13: scope:[menu] from menu::@59 - (byte*) print_char_cursor#93 ? phi( menu::@59/(byte*) print_char_cursor#77 ) - (byte*) print_line_cursor#93 ? phi( menu::@59/(byte*) print_line_cursor#76 ) - (byte*) print_screen#74 ? phi( menu::@59/(byte*) print_screen#58 ) - (byte) dtv_control#168 ? phi( menu::@59/(byte) dtv_control#138 ) - (byte) keyboard_key_pressed::key#6 ? (byte) KEY_8#0 + (byte*) print_char_cursor#93 ← phi( menu::@59/(byte*) print_char_cursor#77 ) + (byte*) print_line_cursor#93 ← phi( menu::@59/(byte*) print_line_cursor#76 ) + (byte*) print_screen#74 ← phi( menu::@59/(byte*) print_screen#58 ) + (byte) dtv_control#168 ← phi( menu::@59/(byte) dtv_control#138 ) + (byte) keyboard_key_pressed::key#6 ← (byte) KEY_8#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#8 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#8 ← (byte) keyboard_key_pressed::return#1 to:menu::@61 menu::@61: scope:[menu] from menu::@13 - (byte*) print_char_cursor#78 ? phi( menu::@13/(byte*) print_char_cursor#93 ) - (byte*) print_line_cursor#77 ? phi( menu::@13/(byte*) print_line_cursor#93 ) - (byte*) print_screen#59 ? phi( menu::@13/(byte*) print_screen#74 ) - (byte) dtv_control#139 ? phi( menu::@13/(byte) dtv_control#168 ) - (byte) keyboard_key_pressed::return#29 ? phi( menu::@13/(byte) keyboard_key_pressed::return#8 ) - (byte~) menu::$53 ? (byte) keyboard_key_pressed::return#29 - (bool~) menu::$54 ? (byte~) menu::$53 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$55 ? ! (bool~) menu::$54 + (byte*) print_char_cursor#78 ← phi( menu::@13/(byte*) print_char_cursor#93 ) + (byte*) print_line_cursor#77 ← phi( menu::@13/(byte*) print_line_cursor#93 ) + (byte*) print_screen#59 ← phi( menu::@13/(byte*) print_screen#74 ) + (byte) dtv_control#139 ← phi( menu::@13/(byte) dtv_control#168 ) + (byte) keyboard_key_pressed::return#29 ← phi( menu::@13/(byte) keyboard_key_pressed::return#8 ) + (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29 + (bool~) menu::$54 ← (byte~) menu::$53 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$55 ← ! (bool~) menu::$54 if((bool~) menu::$55) goto menu::@14 to:menu::@34 menu::@32: scope:[menu] from menu::@59 - (byte*) print_char_cursor#63 ? phi( menu::@59/(byte*) print_char_cursor#77 ) - (byte*) print_line_cursor#60 ? phi( menu::@59/(byte*) print_line_cursor#76 ) - (byte*) print_screen#43 ? phi( menu::@59/(byte*) print_screen#58 ) - (byte) dtv_control#106 ? phi( menu::@59/(byte) dtv_control#138 ) + (byte*) print_char_cursor#63 ← phi( menu::@59/(byte*) print_char_cursor#77 ) + (byte*) print_line_cursor#60 ← phi( menu::@59/(byte*) print_line_cursor#76 ) + (byte*) print_screen#43 ← phi( menu::@59/(byte*) print_screen#58 ) + (byte) dtv_control#106 ← phi( menu::@59/(byte) dtv_control#138 ) call mode_hicolecmchar to:menu::@62 menu::@62: scope:[menu] from menu::@32 - (byte*) print_char_cursor#44 ? phi( menu::@32/(byte*) print_char_cursor#63 ) - (byte*) print_line_cursor#42 ? phi( menu::@32/(byte*) print_line_cursor#60 ) - (byte*) print_screen#26 ? phi( menu::@32/(byte*) print_screen#43 ) - (byte) dtv_control#63 ? phi( menu::@32/(byte) dtv_control#35 ) - (byte) dtv_control#8 ? (byte) dtv_control#63 + (byte*) print_char_cursor#44 ← phi( menu::@32/(byte*) print_char_cursor#63 ) + (byte*) print_line_cursor#42 ← phi( menu::@32/(byte*) print_line_cursor#60 ) + (byte*) print_screen#26 ← phi( menu::@32/(byte*) print_screen#43 ) + (byte) dtv_control#63 ← phi( menu::@32/(byte) dtv_control#35 ) + (byte) dtv_control#8 ← (byte) dtv_control#63 to:menu::@return menu::@14: scope:[menu] from menu::@61 - (byte*) print_char_cursor#94 ? phi( menu::@61/(byte*) print_char_cursor#78 ) - (byte*) print_line_cursor#94 ? phi( menu::@61/(byte*) print_line_cursor#77 ) - (byte*) print_screen#75 ? phi( menu::@61/(byte*) print_screen#59 ) - (byte) dtv_control#169 ? phi( menu::@61/(byte) dtv_control#139 ) - (byte) keyboard_key_pressed::key#7 ? (byte) KEY_A#0 + (byte*) print_char_cursor#94 ← phi( menu::@61/(byte*) print_char_cursor#78 ) + (byte*) print_line_cursor#94 ← phi( menu::@61/(byte*) print_line_cursor#77 ) + (byte*) print_screen#75 ← phi( menu::@61/(byte*) print_screen#59 ) + (byte) dtv_control#169 ← phi( menu::@61/(byte) dtv_control#139 ) + (byte) keyboard_key_pressed::key#7 ← (byte) KEY_A#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#9 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#9 ← (byte) keyboard_key_pressed::return#1 to:menu::@63 menu::@63: scope:[menu] from menu::@14 - (byte*) print_char_cursor#79 ? phi( menu::@14/(byte*) print_char_cursor#94 ) - (byte*) print_line_cursor#78 ? phi( menu::@14/(byte*) print_line_cursor#94 ) - (byte*) print_screen#60 ? phi( menu::@14/(byte*) print_screen#75 ) - (byte) dtv_control#140 ? phi( menu::@14/(byte) dtv_control#169 ) - (byte) keyboard_key_pressed::return#30 ? phi( menu::@14/(byte) keyboard_key_pressed::return#9 ) - (byte~) menu::$57 ? (byte) keyboard_key_pressed::return#30 - (bool~) menu::$58 ? (byte~) menu::$57 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$59 ? ! (bool~) menu::$58 + (byte*) print_char_cursor#79 ← phi( menu::@14/(byte*) print_char_cursor#94 ) + (byte*) print_line_cursor#78 ← phi( menu::@14/(byte*) print_line_cursor#94 ) + (byte*) print_screen#60 ← phi( menu::@14/(byte*) print_screen#75 ) + (byte) dtv_control#140 ← phi( menu::@14/(byte) dtv_control#169 ) + (byte) keyboard_key_pressed::return#30 ← phi( menu::@14/(byte) keyboard_key_pressed::return#9 ) + (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30 + (bool~) menu::$58 ← (byte~) menu::$57 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$59 ← ! (bool~) menu::$58 if((bool~) menu::$59) goto menu::@15 to:menu::@36 menu::@34: scope:[menu] from menu::@61 - (byte*) print_char_cursor#64 ? phi( menu::@61/(byte*) print_char_cursor#78 ) - (byte*) print_line_cursor#61 ? phi( menu::@61/(byte*) print_line_cursor#77 ) - (byte*) print_screen#44 ? phi( menu::@61/(byte*) print_screen#59 ) - (byte) dtv_control#107 ? phi( menu::@61/(byte) dtv_control#139 ) + (byte*) print_char_cursor#64 ← phi( menu::@61/(byte*) print_char_cursor#78 ) + (byte*) print_line_cursor#61 ← phi( menu::@61/(byte*) print_line_cursor#77 ) + (byte*) print_screen#44 ← phi( menu::@61/(byte*) print_screen#59 ) + (byte) dtv_control#107 ← phi( menu::@61/(byte) dtv_control#139 ) call mode_hicolmcchar to:menu::@64 menu::@64: scope:[menu] from menu::@34 - (byte*) print_char_cursor#45 ? phi( menu::@34/(byte*) print_char_cursor#64 ) - (byte*) print_line_cursor#43 ? phi( menu::@34/(byte*) print_line_cursor#61 ) - (byte*) print_screen#27 ? phi( menu::@34/(byte*) print_screen#44 ) - (byte) dtv_control#64 ? phi( menu::@34/(byte) dtv_control#38 ) - (byte) dtv_control#9 ? (byte) dtv_control#64 + (byte*) print_char_cursor#45 ← phi( menu::@34/(byte*) print_char_cursor#64 ) + (byte*) print_line_cursor#43 ← phi( menu::@34/(byte*) print_line_cursor#61 ) + (byte*) print_screen#27 ← phi( menu::@34/(byte*) print_screen#44 ) + (byte) dtv_control#64 ← phi( menu::@34/(byte) dtv_control#38 ) + (byte) dtv_control#9 ← (byte) dtv_control#64 to:menu::@return menu::@15: scope:[menu] from menu::@63 - (byte*) print_char_cursor#95 ? phi( menu::@63/(byte*) print_char_cursor#79 ) - (byte*) print_line_cursor#95 ? phi( menu::@63/(byte*) print_line_cursor#78 ) - (byte*) print_screen#76 ? phi( menu::@63/(byte*) print_screen#60 ) - (byte) dtv_control#170 ? phi( menu::@63/(byte) dtv_control#140 ) - (byte) keyboard_key_pressed::key#8 ? (byte) KEY_B#0 + (byte*) print_char_cursor#95 ← phi( menu::@63/(byte*) print_char_cursor#79 ) + (byte*) print_line_cursor#95 ← phi( menu::@63/(byte*) print_line_cursor#78 ) + (byte*) print_screen#76 ← phi( menu::@63/(byte*) print_screen#60 ) + (byte) dtv_control#170 ← phi( menu::@63/(byte) dtv_control#140 ) + (byte) keyboard_key_pressed::key#8 ← (byte) KEY_B#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#1 to:menu::@65 menu::@65: scope:[menu] from menu::@15 - (byte*) print_char_cursor#80 ? phi( menu::@15/(byte*) print_char_cursor#95 ) - (byte*) print_line_cursor#79 ? phi( menu::@15/(byte*) print_line_cursor#95 ) - (byte*) print_screen#61 ? phi( menu::@15/(byte*) print_screen#76 ) - (byte) dtv_control#141 ? phi( menu::@15/(byte) dtv_control#170 ) - (byte) keyboard_key_pressed::return#31 ? phi( menu::@15/(byte) keyboard_key_pressed::return#10 ) - (byte~) menu::$61 ? (byte) keyboard_key_pressed::return#31 - (bool~) menu::$62 ? (byte~) menu::$61 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$63 ? ! (bool~) menu::$62 + (byte*) print_char_cursor#80 ← phi( menu::@15/(byte*) print_char_cursor#95 ) + (byte*) print_line_cursor#79 ← phi( menu::@15/(byte*) print_line_cursor#95 ) + (byte*) print_screen#61 ← phi( menu::@15/(byte*) print_screen#76 ) + (byte) dtv_control#141 ← phi( menu::@15/(byte) dtv_control#170 ) + (byte) keyboard_key_pressed::return#31 ← phi( menu::@15/(byte) keyboard_key_pressed::return#10 ) + (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#31 + (bool~) menu::$62 ← (byte~) menu::$61 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$63 ← ! (bool~) menu::$62 if((bool~) menu::$63) goto menu::@16 to:menu::@38 menu::@36: scope:[menu] from menu::@63 - (byte*) print_char_cursor#65 ? phi( menu::@63/(byte*) print_char_cursor#79 ) - (byte*) print_line_cursor#62 ? phi( menu::@63/(byte*) print_line_cursor#78 ) - (byte*) print_screen#45 ? phi( menu::@63/(byte*) print_screen#60 ) - (byte) dtv_control#108 ? phi( menu::@63/(byte) dtv_control#140 ) + (byte*) print_char_cursor#65 ← phi( menu::@63/(byte*) print_char_cursor#79 ) + (byte*) print_line_cursor#62 ← phi( menu::@63/(byte*) print_line_cursor#78 ) + (byte*) print_screen#45 ← phi( menu::@63/(byte*) print_screen#60 ) + (byte) dtv_control#108 ← phi( menu::@63/(byte) dtv_control#140 ) call mode_sixsfred2 to:menu::@66 menu::@66: scope:[menu] from menu::@36 - (byte*) print_char_cursor#46 ? phi( menu::@36/(byte*) print_char_cursor#65 ) - (byte*) print_line_cursor#44 ? phi( menu::@36/(byte*) print_line_cursor#62 ) - (byte*) print_screen#28 ? phi( menu::@36/(byte*) print_screen#45 ) - (byte) dtv_control#65 ? phi( menu::@36/(byte) dtv_control#47 ) - (byte) dtv_control#10 ? (byte) dtv_control#65 + (byte*) print_char_cursor#46 ← phi( menu::@36/(byte*) print_char_cursor#65 ) + (byte*) print_line_cursor#44 ← phi( menu::@36/(byte*) print_line_cursor#62 ) + (byte*) print_screen#28 ← phi( menu::@36/(byte*) print_screen#45 ) + (byte) dtv_control#65 ← phi( menu::@36/(byte) dtv_control#47 ) + (byte) dtv_control#10 ← (byte) dtv_control#65 to:menu::@return menu::@16: scope:[menu] from menu::@65 - (byte*) print_char_cursor#96 ? phi( menu::@65/(byte*) print_char_cursor#80 ) - (byte*) print_line_cursor#96 ? phi( menu::@65/(byte*) print_line_cursor#79 ) - (byte*) print_screen#77 ? phi( menu::@65/(byte*) print_screen#61 ) - (byte) dtv_control#171 ? phi( menu::@65/(byte) dtv_control#141 ) - (byte) keyboard_key_pressed::key#9 ? (byte) KEY_C#0 + (byte*) print_char_cursor#96 ← phi( menu::@65/(byte*) print_char_cursor#80 ) + (byte*) print_line_cursor#96 ← phi( menu::@65/(byte*) print_line_cursor#79 ) + (byte*) print_screen#77 ← phi( menu::@65/(byte*) print_screen#61 ) + (byte) dtv_control#171 ← phi( menu::@65/(byte) dtv_control#141 ) + (byte) keyboard_key_pressed::key#9 ← (byte) KEY_C#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#11 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#1 to:menu::@67 menu::@67: scope:[menu] from menu::@16 - (byte*) print_char_cursor#81 ? phi( menu::@16/(byte*) print_char_cursor#96 ) - (byte*) print_line_cursor#80 ? phi( menu::@16/(byte*) print_line_cursor#96 ) - (byte*) print_screen#62 ? phi( menu::@16/(byte*) print_screen#77 ) - (byte) dtv_control#142 ? phi( menu::@16/(byte) dtv_control#171 ) - (byte) keyboard_key_pressed::return#32 ? phi( menu::@16/(byte) keyboard_key_pressed::return#11 ) - (byte~) menu::$65 ? (byte) keyboard_key_pressed::return#32 - (bool~) menu::$66 ? (byte~) menu::$65 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$67 ? ! (bool~) menu::$66 + (byte*) print_char_cursor#81 ← phi( menu::@16/(byte*) print_char_cursor#96 ) + (byte*) print_line_cursor#80 ← phi( menu::@16/(byte*) print_line_cursor#96 ) + (byte*) print_screen#62 ← phi( menu::@16/(byte*) print_screen#77 ) + (byte) dtv_control#142 ← phi( menu::@16/(byte) dtv_control#171 ) + (byte) keyboard_key_pressed::return#32 ← phi( menu::@16/(byte) keyboard_key_pressed::return#11 ) + (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#32 + (bool~) menu::$66 ← (byte~) menu::$65 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$67 ← ! (bool~) menu::$66 if((bool~) menu::$67) goto menu::@17 to:menu::@40 menu::@38: scope:[menu] from menu::@65 - (byte*) print_char_cursor#66 ? phi( menu::@65/(byte*) print_char_cursor#80 ) - (byte*) print_line_cursor#63 ? phi( menu::@65/(byte*) print_line_cursor#79 ) - (byte*) print_screen#46 ? phi( menu::@65/(byte*) print_screen#61 ) - (byte) dtv_control#109 ? phi( menu::@65/(byte) dtv_control#141 ) + (byte*) print_char_cursor#66 ← phi( menu::@65/(byte*) print_char_cursor#80 ) + (byte*) print_line_cursor#63 ← phi( menu::@65/(byte*) print_line_cursor#79 ) + (byte*) print_screen#46 ← phi( menu::@65/(byte*) print_screen#61 ) + (byte) dtv_control#109 ← phi( menu::@65/(byte) dtv_control#141 ) call mode_twoplanebitmap to:menu::@68 menu::@68: scope:[menu] from menu::@38 - (byte*) print_char_cursor#47 ? phi( menu::@38/(byte*) print_char_cursor#66 ) - (byte*) print_line_cursor#45 ? phi( menu::@38/(byte*) print_line_cursor#63 ) - (byte*) print_screen#29 ? phi( menu::@38/(byte*) print_screen#46 ) - (byte) dtv_control#66 ? phi( menu::@38/(byte) dtv_control#41 ) - (byte) dtv_control#11 ? (byte) dtv_control#66 + (byte*) print_char_cursor#47 ← phi( menu::@38/(byte*) print_char_cursor#66 ) + (byte*) print_line_cursor#45 ← phi( menu::@38/(byte*) print_line_cursor#63 ) + (byte*) print_screen#29 ← phi( menu::@38/(byte*) print_screen#46 ) + (byte) dtv_control#66 ← phi( menu::@38/(byte) dtv_control#41 ) + (byte) dtv_control#11 ← (byte) dtv_control#66 to:menu::@return menu::@17: scope:[menu] from menu::@67 - (byte*) print_char_cursor#97 ? phi( menu::@67/(byte*) print_char_cursor#81 ) - (byte*) print_line_cursor#97 ? phi( menu::@67/(byte*) print_line_cursor#80 ) - (byte*) print_screen#78 ? phi( menu::@67/(byte*) print_screen#62 ) - (byte) dtv_control#172 ? phi( menu::@67/(byte) dtv_control#142 ) - (byte) keyboard_key_pressed::key#10 ? (byte) KEY_D#0 + (byte*) print_char_cursor#97 ← phi( menu::@67/(byte*) print_char_cursor#81 ) + (byte*) print_line_cursor#97 ← phi( menu::@67/(byte*) print_line_cursor#80 ) + (byte*) print_screen#78 ← phi( menu::@67/(byte*) print_screen#62 ) + (byte) dtv_control#172 ← phi( menu::@67/(byte) dtv_control#142 ) + (byte) keyboard_key_pressed::key#10 ← (byte) KEY_D#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#12 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#1 to:menu::@69 menu::@69: scope:[menu] from menu::@17 - (byte*) print_char_cursor#82 ? phi( menu::@17/(byte*) print_char_cursor#97 ) - (byte*) print_line_cursor#81 ? phi( menu::@17/(byte*) print_line_cursor#97 ) - (byte*) print_screen#63 ? phi( menu::@17/(byte*) print_screen#78 ) - (byte) dtv_control#143 ? phi( menu::@17/(byte) dtv_control#172 ) - (byte) keyboard_key_pressed::return#33 ? phi( menu::@17/(byte) keyboard_key_pressed::return#12 ) - (byte~) menu::$69 ? (byte) keyboard_key_pressed::return#33 - (bool~) menu::$70 ? (byte~) menu::$69 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$71 ? ! (bool~) menu::$70 + (byte*) print_char_cursor#82 ← phi( menu::@17/(byte*) print_char_cursor#97 ) + (byte*) print_line_cursor#81 ← phi( menu::@17/(byte*) print_line_cursor#97 ) + (byte*) print_screen#63 ← phi( menu::@17/(byte*) print_screen#78 ) + (byte) dtv_control#143 ← phi( menu::@17/(byte) dtv_control#172 ) + (byte) keyboard_key_pressed::return#33 ← phi( menu::@17/(byte) keyboard_key_pressed::return#12 ) + (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#33 + (bool~) menu::$70 ← (byte~) menu::$69 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$71 ← ! (bool~) menu::$70 if((bool~) menu::$71) goto menu::@18 to:menu::@42 menu::@40: scope:[menu] from menu::@67 - (byte*) print_char_cursor#67 ? phi( menu::@67/(byte*) print_char_cursor#81 ) - (byte*) print_line_cursor#64 ? phi( menu::@67/(byte*) print_line_cursor#80 ) - (byte*) print_screen#47 ? phi( menu::@67/(byte*) print_screen#62 ) - (byte) dtv_control#110 ? phi( menu::@67/(byte) dtv_control#142 ) + (byte*) print_char_cursor#67 ← phi( menu::@67/(byte*) print_char_cursor#81 ) + (byte*) print_line_cursor#64 ← phi( menu::@67/(byte*) print_line_cursor#80 ) + (byte*) print_screen#47 ← phi( menu::@67/(byte*) print_screen#62 ) + (byte) dtv_control#110 ← phi( menu::@67/(byte) dtv_control#142 ) call mode_sixsfred to:menu::@70 menu::@70: scope:[menu] from menu::@40 - (byte*) print_char_cursor#48 ? phi( menu::@40/(byte*) print_char_cursor#67 ) - (byte*) print_line_cursor#46 ? phi( menu::@40/(byte*) print_line_cursor#64 ) - (byte*) print_screen#30 ? phi( menu::@40/(byte*) print_screen#47 ) - (byte) dtv_control#67 ? phi( menu::@40/(byte) dtv_control#44 ) - (byte) dtv_control#12 ? (byte) dtv_control#67 + (byte*) print_char_cursor#48 ← phi( menu::@40/(byte*) print_char_cursor#67 ) + (byte*) print_line_cursor#46 ← phi( menu::@40/(byte*) print_line_cursor#64 ) + (byte*) print_screen#30 ← phi( menu::@40/(byte*) print_screen#47 ) + (byte) dtv_control#67 ← phi( menu::@40/(byte) dtv_control#44 ) + (byte) dtv_control#12 ← (byte) dtv_control#67 to:menu::@return menu::@18: scope:[menu] from menu::@69 - (byte*) print_char_cursor#98 ? phi( menu::@69/(byte*) print_char_cursor#82 ) - (byte*) print_line_cursor#98 ? phi( menu::@69/(byte*) print_line_cursor#81 ) - (byte*) print_screen#79 ? phi( menu::@69/(byte*) print_screen#63 ) - (byte) dtv_control#173 ? phi( menu::@69/(byte) dtv_control#143 ) - (byte) keyboard_key_pressed::key#11 ? (byte) KEY_E#0 + (byte*) print_char_cursor#98 ← phi( menu::@69/(byte*) print_char_cursor#82 ) + (byte*) print_line_cursor#98 ← phi( menu::@69/(byte*) print_line_cursor#81 ) + (byte*) print_screen#79 ← phi( menu::@69/(byte*) print_screen#63 ) + (byte) dtv_control#173 ← phi( menu::@69/(byte) dtv_control#143 ) + (byte) keyboard_key_pressed::key#11 ← (byte) KEY_E#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#13 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#1 to:menu::@71 menu::@71: scope:[menu] from menu::@18 - (byte*) print_char_cursor#83 ? phi( menu::@18/(byte*) print_char_cursor#98 ) - (byte*) print_line_cursor#82 ? phi( menu::@18/(byte*) print_line_cursor#98 ) - (byte*) print_screen#64 ? phi( menu::@18/(byte*) print_screen#79 ) - (byte) dtv_control#144 ? phi( menu::@18/(byte) dtv_control#173 ) - (byte) keyboard_key_pressed::return#34 ? phi( menu::@18/(byte) keyboard_key_pressed::return#13 ) - (byte~) menu::$73 ? (byte) keyboard_key_pressed::return#34 - (bool~) menu::$74 ? (byte~) menu::$73 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$75 ? ! (bool~) menu::$74 + (byte*) print_char_cursor#83 ← phi( menu::@18/(byte*) print_char_cursor#98 ) + (byte*) print_line_cursor#82 ← phi( menu::@18/(byte*) print_line_cursor#98 ) + (byte*) print_screen#64 ← phi( menu::@18/(byte*) print_screen#79 ) + (byte) dtv_control#144 ← phi( menu::@18/(byte) dtv_control#173 ) + (byte) keyboard_key_pressed::return#34 ← phi( menu::@18/(byte) keyboard_key_pressed::return#13 ) + (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#34 + (bool~) menu::$74 ← (byte~) menu::$73 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$75 ← ! (bool~) menu::$74 if((bool~) menu::$75) goto menu::@19 to:menu::@44 menu::@42: scope:[menu] from menu::@69 - (byte*) print_char_cursor#68 ? phi( menu::@69/(byte*) print_char_cursor#82 ) - (byte*) print_line_cursor#65 ? phi( menu::@69/(byte*) print_line_cursor#81 ) - (byte*) print_screen#48 ? phi( menu::@69/(byte*) print_screen#63 ) - (byte) dtv_control#111 ? phi( menu::@69/(byte) dtv_control#143 ) + (byte*) print_char_cursor#68 ← phi( menu::@69/(byte*) print_char_cursor#82 ) + (byte*) print_line_cursor#65 ← phi( menu::@69/(byte*) print_line_cursor#81 ) + (byte*) print_screen#48 ← phi( menu::@69/(byte*) print_screen#63 ) + (byte) dtv_control#111 ← phi( menu::@69/(byte) dtv_control#143 ) call mode_8bpppixelcell to:menu::@72 menu::@72: scope:[menu] from menu::@42 - (byte*) print_char_cursor#49 ? phi( menu::@42/(byte*) print_char_cursor#68 ) - (byte*) print_line_cursor#47 ? phi( menu::@42/(byte*) print_line_cursor#65 ) - (byte*) print_screen#31 ? phi( menu::@42/(byte*) print_screen#48 ) - (byte) dtv_control#68 ? phi( menu::@42/(byte) dtv_control#50 ) - (byte) dtv_control#13 ? (byte) dtv_control#68 + (byte*) print_char_cursor#49 ← phi( menu::@42/(byte*) print_char_cursor#68 ) + (byte*) print_line_cursor#47 ← phi( menu::@42/(byte*) print_line_cursor#65 ) + (byte*) print_screen#31 ← phi( menu::@42/(byte*) print_screen#48 ) + (byte) dtv_control#68 ← phi( menu::@42/(byte) dtv_control#50 ) + (byte) dtv_control#13 ← (byte) dtv_control#68 to:menu::@return menu::@19: scope:[menu] from menu::@71 - (byte) dtv_control#131 ? phi( menu::@71/(byte) dtv_control#144 ) - (byte*) print_char_cursor#57 ? phi( menu::@71/(byte*) print_char_cursor#83 ) - (byte*) print_line_cursor#54 ? phi( menu::@71/(byte*) print_line_cursor#82 ) - (byte*) print_screen#36 ? phi( menu::@71/(byte*) print_screen#64 ) + (byte) dtv_control#131 ← phi( menu::@71/(byte) dtv_control#144 ) + (byte*) print_char_cursor#57 ← phi( menu::@71/(byte*) print_char_cursor#83 ) + (byte*) print_line_cursor#54 ← phi( menu::@71/(byte*) print_line_cursor#82 ) + (byte*) print_screen#36 ← phi( menu::@71/(byte*) print_screen#64 ) to:menu::@5 menu::@44: scope:[menu] from menu::@71 - (byte*) print_char_cursor#69 ? phi( menu::@71/(byte*) print_char_cursor#83 ) - (byte*) print_line_cursor#66 ? phi( menu::@71/(byte*) print_line_cursor#82 ) - (byte*) print_screen#49 ? phi( menu::@71/(byte*) print_screen#64 ) - (byte) dtv_control#112 ? phi( menu::@71/(byte) dtv_control#144 ) + (byte*) print_char_cursor#69 ← phi( menu::@71/(byte*) print_char_cursor#83 ) + (byte*) print_line_cursor#66 ← phi( menu::@71/(byte*) print_line_cursor#82 ) + (byte*) print_screen#49 ← phi( menu::@71/(byte*) print_screen#64 ) + (byte) dtv_control#112 ← phi( menu::@71/(byte) dtv_control#144 ) call mode_8bppchunkybmm to:menu::@73 menu::@73: scope:[menu] from menu::@44 - (byte*) print_char_cursor#50 ? phi( menu::@44/(byte*) print_char_cursor#69 ) - (byte*) print_line_cursor#48 ? phi( menu::@44/(byte*) print_line_cursor#66 ) - (byte*) print_screen#32 ? phi( menu::@44/(byte*) print_screen#49 ) - (byte) dtv_control#69 ? phi( menu::@44/(byte) dtv_control#53 ) - (byte) dtv_control#14 ? (byte) dtv_control#69 + (byte*) print_char_cursor#50 ← phi( menu::@44/(byte*) print_char_cursor#69 ) + (byte*) print_line_cursor#48 ← phi( menu::@44/(byte*) print_line_cursor#66 ) + (byte*) print_screen#32 ← phi( menu::@44/(byte*) print_screen#49 ) + (byte) dtv_control#69 ← phi( menu::@44/(byte) dtv_control#53 ) + (byte) dtv_control#14 ← (byte) dtv_control#69 to:menu::@return @41: scope:[] from @40 - (byte*) print_char_cursor#70 ? phi( @40/(byte*) print_char_cursor#84 ) - (byte*) print_line_cursor#67 ? phi( @40/(byte*) print_line_cursor#83 ) - (byte*) print_screen#50 ? phi( @40/(byte*) print_screen#65 ) - (byte) dtv_control#15 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_char_cursor#70 ← phi( @40/(byte*) print_char_cursor#84 ) + (byte*) print_line_cursor#67 ← phi( @40/(byte*) print_line_cursor#83 ) + (byte*) print_screen#50 ← phi( @40/(byte*) print_screen#65 ) + (byte) dtv_control#15 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@54 mode_ctrl: scope:[mode_ctrl] from mode_8bppchunkybmm::@11 mode_8bpppixelcell::@14 mode_ecmchar::@6 mode_hicolecmchar::@6 mode_hicolmcchar::@6 mode_hicolstdchar::@6 mode_mcchar::@6 mode_sixsfred2::@14 mode_sixsfred::@14 mode_stdbitmap::@8 mode_stdchar::@6 mode_twoplanebitmap::@18 - (byte) dtv_control#145 ? phi( mode_8bppchunkybmm::@11/(byte) dtv_control#128 mode_8bpppixelcell::@14/(byte) dtv_control#127 mode_ecmchar::@6/(byte) dtv_control#118 mode_hicolecmchar::@6/(byte) dtv_control#122 mode_hicolmcchar::@6/(byte) dtv_control#123 mode_hicolstdchar::@6/(byte) dtv_control#121 mode_mcchar::@6/(byte) dtv_control#119 mode_sixsfred2::@14/(byte) dtv_control#126 mode_sixsfred::@14/(byte) dtv_control#125 mode_stdbitmap::@8/(byte) dtv_control#120 mode_stdchar::@6/(byte) dtv_control#117 mode_twoplanebitmap::@18/(byte) dtv_control#124 ) + (byte) dtv_control#145 ← phi( mode_8bppchunkybmm::@11/(byte) dtv_control#128 mode_8bpppixelcell::@14/(byte) dtv_control#127 mode_ecmchar::@6/(byte) dtv_control#118 mode_hicolecmchar::@6/(byte) dtv_control#122 mode_hicolmcchar::@6/(byte) dtv_control#123 mode_hicolstdchar::@6/(byte) dtv_control#121 mode_mcchar::@6/(byte) dtv_control#119 mode_sixsfred2::@14/(byte) dtv_control#126 mode_sixsfred::@14/(byte) dtv_control#125 mode_stdbitmap::@8/(byte) dtv_control#120 mode_stdchar::@6/(byte) dtv_control#117 mode_twoplanebitmap::@18/(byte) dtv_control#124 ) to:mode_ctrl::@1 mode_ctrl::@1: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@20 mode_ctrl::@30 - (byte) dtv_control#114 ? phi( mode_ctrl/(byte) dtv_control#145 mode_ctrl::@20/(byte) dtv_control#146 mode_ctrl::@30/(byte) dtv_control#17 ) + (byte) dtv_control#114 ← phi( mode_ctrl/(byte) dtv_control#145 mode_ctrl::@20/(byte) dtv_control#146 mode_ctrl::@30/(byte) dtv_control#17 ) if(true) goto mode_ctrl::@2 to:mode_ctrl::@return mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl::@1 - (byte) dtv_control#190 ? phi( mode_ctrl::@1/(byte) dtv_control#114 ) + (byte) dtv_control#190 ← phi( mode_ctrl::@1/(byte) dtv_control#114 ) to:mode_ctrl::@4 mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@2 mode_ctrl::@5 - (byte) dtv_control#174 ? phi( mode_ctrl::@2/(byte) dtv_control#190 mode_ctrl::@5/(byte) dtv_control#191 ) - (bool~) mode_ctrl::$0 ? *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff + (byte) dtv_control#174 ← phi( mode_ctrl::@2/(byte) dtv_control#190 mode_ctrl::@5/(byte) dtv_control#191 ) + (bool~) mode_ctrl::$0 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff if((bool~) mode_ctrl::$0) goto mode_ctrl::@5 to:mode_ctrl::@6 mode_ctrl::@5: scope:[mode_ctrl] from mode_ctrl::@4 - (byte) dtv_control#191 ? phi( mode_ctrl::@4/(byte) dtv_control#174 ) + (byte) dtv_control#191 ← phi( mode_ctrl::@4/(byte) dtv_control#174 ) to:mode_ctrl::@4 mode_ctrl::@6: scope:[mode_ctrl] from mode_ctrl::@4 - (byte) dtv_control#147 ? phi( mode_ctrl::@4/(byte) dtv_control#174 ) - (byte) keyboard_key_pressed::key#12 ? (byte) KEY_SPACE#0 + (byte) dtv_control#147 ← phi( mode_ctrl::@4/(byte) dtv_control#174 ) + (byte) keyboard_key_pressed::key#12 ← (byte) KEY_SPACE#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#14 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@32 mode_ctrl::@32: scope:[mode_ctrl] from mode_ctrl::@6 - (byte) dtv_control#113 ? phi( mode_ctrl::@6/(byte) dtv_control#147 ) - (byte) keyboard_key_pressed::return#35 ? phi( mode_ctrl::@6/(byte) keyboard_key_pressed::return#14 ) - (byte~) mode_ctrl::$1 ? (byte) keyboard_key_pressed::return#35 - (bool~) mode_ctrl::$2 ? (byte~) mode_ctrl::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$3 ? ! (bool~) mode_ctrl::$2 + (byte) dtv_control#113 ← phi( mode_ctrl::@6/(byte) dtv_control#147 ) + (byte) keyboard_key_pressed::return#35 ← phi( mode_ctrl::@6/(byte) keyboard_key_pressed::return#14 ) + (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#35 + (bool~) mode_ctrl::$2 ← (byte~) mode_ctrl::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$3 ← ! (bool~) mode_ctrl::$2 if((bool~) mode_ctrl::$3) goto mode_ctrl::@12 to:mode_ctrl::@return mode_ctrl::@12: scope:[mode_ctrl] from mode_ctrl::@32 - (byte) dtv_control#70 ? phi( mode_ctrl::@32/(byte) dtv_control#113 ) - (byte) mode_ctrl::ctrl#0 ? (byte) dtv_control#70 - (byte) keyboard_key_pressed::key#13 ? (byte) KEY_L#0 + (byte) dtv_control#70 ← phi( mode_ctrl::@32/(byte) dtv_control#113 ) + (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#70 + (byte) keyboard_key_pressed::key#13 ← (byte) KEY_L#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#15 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@33 mode_ctrl::@33: scope:[mode_ctrl] from mode_ctrl::@12 - (byte) dtv_control#283 ? phi( mode_ctrl::@12/(byte) dtv_control#70 ) - (byte) mode_ctrl::ctrl#16 ? phi( mode_ctrl::@12/(byte) mode_ctrl::ctrl#0 ) - (byte) keyboard_key_pressed::return#36 ? phi( mode_ctrl::@12/(byte) keyboard_key_pressed::return#15 ) - (byte~) mode_ctrl::$4 ? (byte) keyboard_key_pressed::return#36 - (bool~) mode_ctrl::$5 ? (byte~) mode_ctrl::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$6 ? ! (bool~) mode_ctrl::$5 + (byte) dtv_control#283 ← phi( mode_ctrl::@12/(byte) dtv_control#70 ) + (byte) mode_ctrl::ctrl#16 ← phi( mode_ctrl::@12/(byte) mode_ctrl::ctrl#0 ) + (byte) keyboard_key_pressed::return#36 ← phi( mode_ctrl::@12/(byte) keyboard_key_pressed::return#15 ) + (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#36 + (bool~) mode_ctrl::$5 ← (byte~) mode_ctrl::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$6 ← ! (bool~) mode_ctrl::$5 if((bool~) mode_ctrl::$6) goto mode_ctrl::@13 to:mode_ctrl::@23 mode_ctrl::@return: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@32 - (byte) dtv_control#71 ? phi( mode_ctrl::@1/(byte) dtv_control#114 mode_ctrl::@32/(byte) dtv_control#113 ) - (byte) dtv_control#16 ? (byte) dtv_control#71 + (byte) dtv_control#71 ← phi( mode_ctrl::@1/(byte) dtv_control#114 mode_ctrl::@32/(byte) dtv_control#113 ) + (byte) dtv_control#16 ← (byte) dtv_control#71 return to:@return mode_ctrl::@13: scope:[mode_ctrl] from mode_ctrl::@23 mode_ctrl::@33 - (byte) dtv_control#277 ? phi( mode_ctrl::@23/(byte) dtv_control#282 mode_ctrl::@33/(byte) dtv_control#283 ) - (byte) mode_ctrl::ctrl#23 ? phi( mode_ctrl::@23/(byte) mode_ctrl::ctrl#1 mode_ctrl::@33/(byte) mode_ctrl::ctrl#16 ) - (byte) keyboard_key_pressed::key#14 ? (byte) KEY_H#0 + (byte) dtv_control#277 ← phi( mode_ctrl::@23/(byte) dtv_control#282 mode_ctrl::@33/(byte) dtv_control#283 ) + (byte) mode_ctrl::ctrl#23 ← phi( mode_ctrl::@23/(byte) mode_ctrl::ctrl#1 mode_ctrl::@33/(byte) mode_ctrl::ctrl#16 ) + (byte) keyboard_key_pressed::key#14 ← (byte) KEY_H#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#16 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@34 mode_ctrl::@34: scope:[mode_ctrl] from mode_ctrl::@13 - (byte) dtv_control#271 ? phi( mode_ctrl::@13/(byte) dtv_control#277 ) - (byte) mode_ctrl::ctrl#17 ? phi( mode_ctrl::@13/(byte) mode_ctrl::ctrl#23 ) - (byte) keyboard_key_pressed::return#37 ? phi( mode_ctrl::@13/(byte) keyboard_key_pressed::return#16 ) - (byte~) mode_ctrl::$8 ? (byte) keyboard_key_pressed::return#37 - (bool~) mode_ctrl::$9 ? (byte~) mode_ctrl::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$10 ? ! (bool~) mode_ctrl::$9 + (byte) dtv_control#271 ← phi( mode_ctrl::@13/(byte) dtv_control#277 ) + (byte) mode_ctrl::ctrl#17 ← phi( mode_ctrl::@13/(byte) mode_ctrl::ctrl#23 ) + (byte) keyboard_key_pressed::return#37 ← phi( mode_ctrl::@13/(byte) keyboard_key_pressed::return#16 ) + (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#37 + (bool~) mode_ctrl::$9 ← (byte~) mode_ctrl::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$10 ← ! (bool~) mode_ctrl::$9 if((bool~) mode_ctrl::$10) goto mode_ctrl::@14 to:mode_ctrl::@24 mode_ctrl::@23: scope:[mode_ctrl] from mode_ctrl::@33 - (byte) dtv_control#282 ? phi( mode_ctrl::@33/(byte) dtv_control#283 ) - (byte) mode_ctrl::ctrl#8 ? phi( mode_ctrl::@33/(byte) mode_ctrl::ctrl#16 ) - (byte~) mode_ctrl::$7 ? (byte) mode_ctrl::ctrl#8 | (byte) DTV_LINEAR#0 - (byte) mode_ctrl::ctrl#1 ? (byte~) mode_ctrl::$7 + (byte) dtv_control#282 ← phi( mode_ctrl::@33/(byte) dtv_control#283 ) + (byte) mode_ctrl::ctrl#8 ← phi( mode_ctrl::@33/(byte) mode_ctrl::ctrl#16 ) + (byte~) mode_ctrl::$7 ← (byte) mode_ctrl::ctrl#8 | (byte) DTV_LINEAR#0 + (byte) mode_ctrl::ctrl#1 ← (byte~) mode_ctrl::$7 to:mode_ctrl::@13 mode_ctrl::@14: scope:[mode_ctrl] from mode_ctrl::@24 mode_ctrl::@34 - (byte) dtv_control#264 ? phi( mode_ctrl::@24/(byte) dtv_control#270 mode_ctrl::@34/(byte) dtv_control#271 ) - (byte) mode_ctrl::ctrl#24 ? phi( mode_ctrl::@24/(byte) mode_ctrl::ctrl#2 mode_ctrl::@34/(byte) mode_ctrl::ctrl#17 ) - (byte) keyboard_key_pressed::key#15 ? (byte) KEY_O#0 + (byte) dtv_control#264 ← phi( mode_ctrl::@24/(byte) dtv_control#270 mode_ctrl::@34/(byte) dtv_control#271 ) + (byte) mode_ctrl::ctrl#24 ← phi( mode_ctrl::@24/(byte) mode_ctrl::ctrl#2 mode_ctrl::@34/(byte) mode_ctrl::ctrl#17 ) + (byte) keyboard_key_pressed::key#15 ← (byte) KEY_O#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#17 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@35 mode_ctrl::@35: scope:[mode_ctrl] from mode_ctrl::@14 - (byte) dtv_control#257 ? phi( mode_ctrl::@14/(byte) dtv_control#264 ) - (byte) mode_ctrl::ctrl#18 ? phi( mode_ctrl::@14/(byte) mode_ctrl::ctrl#24 ) - (byte) keyboard_key_pressed::return#38 ? phi( mode_ctrl::@14/(byte) keyboard_key_pressed::return#17 ) - (byte~) mode_ctrl::$12 ? (byte) keyboard_key_pressed::return#38 - (bool~) mode_ctrl::$13 ? (byte~) mode_ctrl::$12 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$14 ? ! (bool~) mode_ctrl::$13 + (byte) dtv_control#257 ← phi( mode_ctrl::@14/(byte) dtv_control#264 ) + (byte) mode_ctrl::ctrl#18 ← phi( mode_ctrl::@14/(byte) mode_ctrl::ctrl#24 ) + (byte) keyboard_key_pressed::return#38 ← phi( mode_ctrl::@14/(byte) keyboard_key_pressed::return#17 ) + (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#38 + (bool~) mode_ctrl::$13 ← (byte~) mode_ctrl::$12 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$14 ← ! (bool~) mode_ctrl::$13 if((bool~) mode_ctrl::$14) goto mode_ctrl::@15 to:mode_ctrl::@25 mode_ctrl::@24: scope:[mode_ctrl] from mode_ctrl::@34 - (byte) dtv_control#270 ? phi( mode_ctrl::@34/(byte) dtv_control#271 ) - (byte) mode_ctrl::ctrl#9 ? phi( mode_ctrl::@34/(byte) mode_ctrl::ctrl#17 ) - (byte~) mode_ctrl::$11 ? (byte) mode_ctrl::ctrl#9 | (byte) DTV_HIGHCOLOR#0 - (byte) mode_ctrl::ctrl#2 ? (byte~) mode_ctrl::$11 + (byte) dtv_control#270 ← phi( mode_ctrl::@34/(byte) dtv_control#271 ) + (byte) mode_ctrl::ctrl#9 ← phi( mode_ctrl::@34/(byte) mode_ctrl::ctrl#17 ) + (byte~) mode_ctrl::$11 ← (byte) mode_ctrl::ctrl#9 | (byte) DTV_HIGHCOLOR#0 + (byte) mode_ctrl::ctrl#2 ← (byte~) mode_ctrl::$11 to:mode_ctrl::@14 mode_ctrl::@15: scope:[mode_ctrl] from mode_ctrl::@25 mode_ctrl::@35 - (byte) dtv_control#247 ? phi( mode_ctrl::@25/(byte) dtv_control#256 mode_ctrl::@35/(byte) dtv_control#257 ) - (byte) mode_ctrl::ctrl#25 ? phi( mode_ctrl::@25/(byte) mode_ctrl::ctrl#3 mode_ctrl::@35/(byte) mode_ctrl::ctrl#18 ) - (byte) keyboard_key_pressed::key#16 ? (byte) KEY_B#0 + (byte) dtv_control#247 ← phi( mode_ctrl::@25/(byte) dtv_control#256 mode_ctrl::@35/(byte) dtv_control#257 ) + (byte) mode_ctrl::ctrl#25 ← phi( mode_ctrl::@25/(byte) mode_ctrl::ctrl#3 mode_ctrl::@35/(byte) mode_ctrl::ctrl#18 ) + (byte) keyboard_key_pressed::key#16 ← (byte) KEY_B#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#18 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@36 mode_ctrl::@36: scope:[mode_ctrl] from mode_ctrl::@15 - (byte) dtv_control#239 ? phi( mode_ctrl::@15/(byte) dtv_control#247 ) - (byte) mode_ctrl::ctrl#19 ? phi( mode_ctrl::@15/(byte) mode_ctrl::ctrl#25 ) - (byte) keyboard_key_pressed::return#39 ? phi( mode_ctrl::@15/(byte) keyboard_key_pressed::return#18 ) - (byte~) mode_ctrl::$16 ? (byte) keyboard_key_pressed::return#39 - (bool~) mode_ctrl::$17 ? (byte~) mode_ctrl::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$18 ? ! (bool~) mode_ctrl::$17 + (byte) dtv_control#239 ← phi( mode_ctrl::@15/(byte) dtv_control#247 ) + (byte) mode_ctrl::ctrl#19 ← phi( mode_ctrl::@15/(byte) mode_ctrl::ctrl#25 ) + (byte) keyboard_key_pressed::return#39 ← phi( mode_ctrl::@15/(byte) keyboard_key_pressed::return#18 ) + (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#39 + (bool~) mode_ctrl::$17 ← (byte~) mode_ctrl::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$18 ← ! (bool~) mode_ctrl::$17 if((bool~) mode_ctrl::$18) goto mode_ctrl::@16 to:mode_ctrl::@26 mode_ctrl::@25: scope:[mode_ctrl] from mode_ctrl::@35 - (byte) dtv_control#256 ? phi( mode_ctrl::@35/(byte) dtv_control#257 ) - (byte) mode_ctrl::ctrl#10 ? phi( mode_ctrl::@35/(byte) mode_ctrl::ctrl#18 ) - (byte~) mode_ctrl::$15 ? (byte) mode_ctrl::ctrl#10 | (byte) DTV_OVERSCAN#0 - (byte) mode_ctrl::ctrl#3 ? (byte~) mode_ctrl::$15 + (byte) dtv_control#256 ← phi( mode_ctrl::@35/(byte) dtv_control#257 ) + (byte) mode_ctrl::ctrl#10 ← phi( mode_ctrl::@35/(byte) mode_ctrl::ctrl#18 ) + (byte~) mode_ctrl::$15 ← (byte) mode_ctrl::ctrl#10 | (byte) DTV_OVERSCAN#0 + (byte) mode_ctrl::ctrl#3 ← (byte~) mode_ctrl::$15 to:mode_ctrl::@15 mode_ctrl::@16: scope:[mode_ctrl] from mode_ctrl::@26 mode_ctrl::@36 - (byte) dtv_control#223 ? phi( mode_ctrl::@26/(byte) dtv_control#238 mode_ctrl::@36/(byte) dtv_control#239 ) - (byte) mode_ctrl::ctrl#26 ? phi( mode_ctrl::@26/(byte) mode_ctrl::ctrl#4 mode_ctrl::@36/(byte) mode_ctrl::ctrl#19 ) - (byte) keyboard_key_pressed::key#17 ? (byte) KEY_U#0 + (byte) dtv_control#223 ← phi( mode_ctrl::@26/(byte) dtv_control#238 mode_ctrl::@36/(byte) dtv_control#239 ) + (byte) mode_ctrl::ctrl#26 ← phi( mode_ctrl::@26/(byte) mode_ctrl::ctrl#4 mode_ctrl::@36/(byte) mode_ctrl::ctrl#19 ) + (byte) keyboard_key_pressed::key#17 ← (byte) KEY_U#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#19 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@37 mode_ctrl::@37: scope:[mode_ctrl] from mode_ctrl::@16 - (byte) dtv_control#207 ? phi( mode_ctrl::@16/(byte) dtv_control#223 ) - (byte) mode_ctrl::ctrl#20 ? phi( mode_ctrl::@16/(byte) mode_ctrl::ctrl#26 ) - (byte) keyboard_key_pressed::return#40 ? phi( mode_ctrl::@16/(byte) keyboard_key_pressed::return#19 ) - (byte~) mode_ctrl::$20 ? (byte) keyboard_key_pressed::return#40 - (bool~) mode_ctrl::$21 ? (byte~) mode_ctrl::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$22 ? ! (bool~) mode_ctrl::$21 + (byte) dtv_control#207 ← phi( mode_ctrl::@16/(byte) dtv_control#223 ) + (byte) mode_ctrl::ctrl#20 ← phi( mode_ctrl::@16/(byte) mode_ctrl::ctrl#26 ) + (byte) keyboard_key_pressed::return#40 ← phi( mode_ctrl::@16/(byte) keyboard_key_pressed::return#19 ) + (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#40 + (bool~) mode_ctrl::$21 ← (byte~) mode_ctrl::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$22 ← ! (bool~) mode_ctrl::$21 if((bool~) mode_ctrl::$22) goto mode_ctrl::@17 to:mode_ctrl::@27 mode_ctrl::@26: scope:[mode_ctrl] from mode_ctrl::@36 - (byte) dtv_control#238 ? phi( mode_ctrl::@36/(byte) dtv_control#239 ) - (byte) mode_ctrl::ctrl#11 ? phi( mode_ctrl::@36/(byte) mode_ctrl::ctrl#19 ) - (byte~) mode_ctrl::$19 ? (byte) mode_ctrl::ctrl#11 | (byte) DTV_BORDER_OFF#0 - (byte) mode_ctrl::ctrl#4 ? (byte~) mode_ctrl::$19 + (byte) dtv_control#238 ← phi( mode_ctrl::@36/(byte) dtv_control#239 ) + (byte) mode_ctrl::ctrl#11 ← phi( mode_ctrl::@36/(byte) mode_ctrl::ctrl#19 ) + (byte~) mode_ctrl::$19 ← (byte) mode_ctrl::ctrl#11 | (byte) DTV_BORDER_OFF#0 + (byte) mode_ctrl::ctrl#4 ← (byte~) mode_ctrl::$19 to:mode_ctrl::@16 mode_ctrl::@17: scope:[mode_ctrl] from mode_ctrl::@27 mode_ctrl::@37 - (byte) dtv_control#192 ? phi( mode_ctrl::@27/(byte) dtv_control#206 mode_ctrl::@37/(byte) dtv_control#207 ) - (byte) mode_ctrl::ctrl#27 ? phi( mode_ctrl::@27/(byte) mode_ctrl::ctrl#5 mode_ctrl::@37/(byte) mode_ctrl::ctrl#20 ) - (byte) keyboard_key_pressed::key#18 ? (byte) KEY_C#0 + (byte) dtv_control#192 ← phi( mode_ctrl::@27/(byte) dtv_control#206 mode_ctrl::@37/(byte) dtv_control#207 ) + (byte) mode_ctrl::ctrl#27 ← phi( mode_ctrl::@27/(byte) mode_ctrl::ctrl#5 mode_ctrl::@37/(byte) mode_ctrl::ctrl#20 ) + (byte) keyboard_key_pressed::key#18 ← (byte) KEY_C#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#20 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@38 mode_ctrl::@38: scope:[mode_ctrl] from mode_ctrl::@17 - (byte) dtv_control#176 ? phi( mode_ctrl::@17/(byte) dtv_control#192 ) - (byte) mode_ctrl::ctrl#21 ? phi( mode_ctrl::@17/(byte) mode_ctrl::ctrl#27 ) - (byte) keyboard_key_pressed::return#41 ? phi( mode_ctrl::@17/(byte) keyboard_key_pressed::return#20 ) - (byte~) mode_ctrl::$24 ? (byte) keyboard_key_pressed::return#41 - (bool~) mode_ctrl::$25 ? (byte~) mode_ctrl::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$26 ? ! (bool~) mode_ctrl::$25 + (byte) dtv_control#176 ← phi( mode_ctrl::@17/(byte) dtv_control#192 ) + (byte) mode_ctrl::ctrl#21 ← phi( mode_ctrl::@17/(byte) mode_ctrl::ctrl#27 ) + (byte) keyboard_key_pressed::return#41 ← phi( mode_ctrl::@17/(byte) keyboard_key_pressed::return#20 ) + (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#41 + (bool~) mode_ctrl::$25 ← (byte~) mode_ctrl::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$26 ← ! (bool~) mode_ctrl::$25 if((bool~) mode_ctrl::$26) goto mode_ctrl::@18 to:mode_ctrl::@28 mode_ctrl::@27: scope:[mode_ctrl] from mode_ctrl::@37 - (byte) dtv_control#206 ? phi( mode_ctrl::@37/(byte) dtv_control#207 ) - (byte) mode_ctrl::ctrl#12 ? phi( mode_ctrl::@37/(byte) mode_ctrl::ctrl#20 ) - (byte~) mode_ctrl::$23 ? (byte) mode_ctrl::ctrl#12 | (byte) DTV_CHUNKY#0 - (byte) mode_ctrl::ctrl#5 ? (byte~) mode_ctrl::$23 + (byte) dtv_control#206 ← phi( mode_ctrl::@37/(byte) dtv_control#207 ) + (byte) mode_ctrl::ctrl#12 ← phi( mode_ctrl::@37/(byte) mode_ctrl::ctrl#20 ) + (byte~) mode_ctrl::$23 ← (byte) mode_ctrl::ctrl#12 | (byte) DTV_CHUNKY#0 + (byte) mode_ctrl::ctrl#5 ← (byte~) mode_ctrl::$23 to:mode_ctrl::@17 mode_ctrl::@18: scope:[mode_ctrl] from mode_ctrl::@28 mode_ctrl::@38 - (byte) dtv_control#148 ? phi( mode_ctrl::@28/(byte) dtv_control#175 mode_ctrl::@38/(byte) dtv_control#176 ) - (byte) mode_ctrl::ctrl#28 ? phi( mode_ctrl::@28/(byte) mode_ctrl::ctrl#6 mode_ctrl::@38/(byte) mode_ctrl::ctrl#21 ) - (byte) keyboard_key_pressed::key#19 ? (byte) KEY_0#0 + (byte) dtv_control#148 ← phi( mode_ctrl::@28/(byte) dtv_control#175 mode_ctrl::@38/(byte) dtv_control#176 ) + (byte) mode_ctrl::ctrl#28 ← phi( mode_ctrl::@28/(byte) mode_ctrl::ctrl#6 mode_ctrl::@38/(byte) mode_ctrl::ctrl#21 ) + (byte) keyboard_key_pressed::key#19 ← (byte) KEY_0#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#21 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#1 to:mode_ctrl::@39 mode_ctrl::@39: scope:[mode_ctrl] from mode_ctrl::@18 - (byte) dtv_control#116 ? phi( mode_ctrl::@18/(byte) dtv_control#148 ) - (byte) mode_ctrl::ctrl#22 ? phi( mode_ctrl::@18/(byte) mode_ctrl::ctrl#28 ) - (byte) keyboard_key_pressed::return#42 ? phi( mode_ctrl::@18/(byte) keyboard_key_pressed::return#21 ) - (byte~) mode_ctrl::$28 ? (byte) keyboard_key_pressed::return#42 - (bool~) mode_ctrl::$29 ? (byte~) mode_ctrl::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_ctrl::$30 ? ! (bool~) mode_ctrl::$29 + (byte) dtv_control#116 ← phi( mode_ctrl::@18/(byte) dtv_control#148 ) + (byte) mode_ctrl::ctrl#22 ← phi( mode_ctrl::@18/(byte) mode_ctrl::ctrl#28 ) + (byte) keyboard_key_pressed::return#42 ← phi( mode_ctrl::@18/(byte) keyboard_key_pressed::return#21 ) + (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#42 + (bool~) mode_ctrl::$29 ← (byte~) mode_ctrl::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_ctrl::$30 ← ! (bool~) mode_ctrl::$29 if((bool~) mode_ctrl::$30) goto mode_ctrl::@19 to:mode_ctrl::@29 mode_ctrl::@28: scope:[mode_ctrl] from mode_ctrl::@38 - (byte) dtv_control#175 ? phi( mode_ctrl::@38/(byte) dtv_control#176 ) - (byte) mode_ctrl::ctrl#13 ? phi( mode_ctrl::@38/(byte) mode_ctrl::ctrl#21 ) - (byte~) mode_ctrl::$27 ? (byte) mode_ctrl::ctrl#13 | (byte) DTV_COLORRAM_OFF#0 - (byte) mode_ctrl::ctrl#6 ? (byte~) mode_ctrl::$27 + (byte) dtv_control#175 ← phi( mode_ctrl::@38/(byte) dtv_control#176 ) + (byte) mode_ctrl::ctrl#13 ← phi( mode_ctrl::@38/(byte) mode_ctrl::ctrl#21 ) + (byte~) mode_ctrl::$27 ← (byte) mode_ctrl::ctrl#13 | (byte) DTV_COLORRAM_OFF#0 + (byte) mode_ctrl::ctrl#6 ← (byte~) mode_ctrl::$27 to:mode_ctrl::@18 mode_ctrl::@19: scope:[mode_ctrl] from mode_ctrl::@29 mode_ctrl::@39 - (byte) dtv_control#72 ? phi( mode_ctrl::@29/(byte) dtv_control#115 mode_ctrl::@39/(byte) dtv_control#116 ) - (byte) mode_ctrl::ctrl#14 ? phi( mode_ctrl::@29/(byte) mode_ctrl::ctrl#7 mode_ctrl::@39/(byte) mode_ctrl::ctrl#22 ) - (bool~) mode_ctrl::$31 ? (byte) mode_ctrl::ctrl#14 != (byte) dtv_control#72 - (bool~) mode_ctrl::$32 ? ! (bool~) mode_ctrl::$31 + (byte) dtv_control#72 ← phi( mode_ctrl::@29/(byte) dtv_control#115 mode_ctrl::@39/(byte) dtv_control#116 ) + (byte) mode_ctrl::ctrl#14 ← phi( mode_ctrl::@29/(byte) mode_ctrl::ctrl#7 mode_ctrl::@39/(byte) mode_ctrl::ctrl#22 ) + (bool~) mode_ctrl::$31 ← (byte) mode_ctrl::ctrl#14 != (byte) dtv_control#72 + (bool~) mode_ctrl::$32 ← ! (bool~) mode_ctrl::$31 if((bool~) mode_ctrl::$32) goto mode_ctrl::@20 to:mode_ctrl::@30 mode_ctrl::@29: scope:[mode_ctrl] from mode_ctrl::@39 - (byte) dtv_control#115 ? phi( mode_ctrl::@39/(byte) dtv_control#116 ) - (byte) mode_ctrl::ctrl#7 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#115 ← phi( mode_ctrl::@39/(byte) dtv_control#116 ) + (byte) mode_ctrl::ctrl#7 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_ctrl::@19 mode_ctrl::@20: scope:[mode_ctrl] from mode_ctrl::@19 - (byte) dtv_control#146 ? phi( mode_ctrl::@19/(byte) dtv_control#72 ) + (byte) dtv_control#146 ← phi( mode_ctrl::@19/(byte) dtv_control#72 ) to:mode_ctrl::@1 mode_ctrl::@30: scope:[mode_ctrl] from mode_ctrl::@19 - (byte) mode_ctrl::ctrl#15 ? phi( mode_ctrl::@19/(byte) mode_ctrl::ctrl#14 ) - (byte) dtv_control#17 ? (byte) mode_ctrl::ctrl#15 - *((byte*) DTV_CONTROL#0) ? (byte) mode_ctrl::ctrl#15 - *((byte*) BORDERCOL#0) ? (byte) mode_ctrl::ctrl#15 + (byte) mode_ctrl::ctrl#15 ← phi( mode_ctrl::@19/(byte) mode_ctrl::ctrl#14 ) + (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#15 + *((byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#15 + *((byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#15 to:mode_ctrl::@1 mode_stdchar: scope:[mode_stdchar] from menu::@22 - (byte*) mode_stdchar::SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte*) mode_stdchar::CHARSET#0 ? ((byte*)) (word/dword/signed dword) $9000 - (byte*) mode_stdchar::COLORS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (dword~) mode_stdchar::$0 ? ((dword)) (byte*) mode_stdchar::CHARSET#0 - (dword~) mode_stdchar::$1 ? (dword~) mode_stdchar::$0 / (dword/signed dword) $10000 - (byte~) mode_stdchar::$2 ? ((byte)) (dword~) mode_stdchar::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) mode_stdchar::$2 - (dword~) mode_stdchar::$3 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_stdchar::$4 ? ((word)) (dword~) mode_stdchar::$3 - (byte~) mode_stdchar::$5 ? < (word~) mode_stdchar::$4 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_stdchar::$5 - (dword~) mode_stdchar::$6 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_stdchar::$7 ? ((word)) (dword~) mode_stdchar::$6 - (byte~) mode_stdchar::$8 ? > (word~) mode_stdchar::$7 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_stdchar::$8 - (byte) dtv_control#18 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) mode_stdchar::$9 ? ((word)) (byte*) mode_stdchar::CHARSET#0 - (word/signed dword/dword~) mode_stdchar::$10 ? (word~) mode_stdchar::$9 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_stdchar::$11 ? ((byte)) (word/signed dword/dword~) mode_stdchar::$10 - (byte/word/dword~) mode_stdchar::$12 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_stdchar::$11 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) mode_stdchar::$12 - (byte~) mode_stdchar::$13 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_stdchar::$14 ? (byte~) mode_stdchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_stdchar::$14 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (word~) mode_stdchar::$15 ? ((word)) (byte*) mode_stdchar::SCREEN#0 - (word~) mode_stdchar::$16 ? (word~) mode_stdchar::$15 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_stdchar::$17 ? (word~) mode_stdchar::$16 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) mode_stdchar::$18 ? ((word)) (byte*) mode_stdchar::CHARSET#0 - (word~) mode_stdchar::$19 ? (word~) mode_stdchar::$18 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_stdchar::$20 ? (word~) mode_stdchar::$19 / (word/signed word/dword/signed dword) $400 - (word/dword~) mode_stdchar::$21 ? (word/signed dword/dword~) mode_stdchar::$17 | (word/signed dword/dword~) mode_stdchar::$20 - (byte~) mode_stdchar::$22 ? ((byte)) (word/dword~) mode_stdchar::$21 - *((byte*) VIC_MEMORY#0) ? (byte~) mode_stdchar::$22 - (byte) mode_stdchar::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_stdchar::SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte*) mode_stdchar::CHARSET#0 ← ((byte*)) (word/dword/signed dword) $9000 + (byte*) mode_stdchar::COLORS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (dword~) mode_stdchar::$0 ← ((dword)) (byte*) mode_stdchar::CHARSET#0 + (dword~) mode_stdchar::$1 ← (dword~) mode_stdchar::$0 / (dword/signed dword) $10000 + (byte~) mode_stdchar::$2 ← ((byte)) (dword~) mode_stdchar::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_stdchar::$2 + (dword~) mode_stdchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_stdchar::$4 ← ((word)) (dword~) mode_stdchar::$3 + (byte~) mode_stdchar::$5 ← < (word~) mode_stdchar::$4 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_stdchar::$5 + (dword~) mode_stdchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_stdchar::$7 ← ((word)) (dword~) mode_stdchar::$6 + (byte~) mode_stdchar::$8 ← > (word~) mode_stdchar::$7 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_stdchar::$8 + (byte) dtv_control#18 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) mode_stdchar::$9 ← ((word)) (byte*) mode_stdchar::CHARSET#0 + (word/signed dword/dword~) mode_stdchar::$10 ← (word~) mode_stdchar::$9 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_stdchar::$11 ← ((byte)) (word/signed dword/dword~) mode_stdchar::$10 + (byte/word/dword~) mode_stdchar::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_stdchar::$11 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) mode_stdchar::$12 + (byte~) mode_stdchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_stdchar::$14 ← (byte~) mode_stdchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_stdchar::$14 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (word~) mode_stdchar::$15 ← ((word)) (byte*) mode_stdchar::SCREEN#0 + (word~) mode_stdchar::$16 ← (word~) mode_stdchar::$15 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_stdchar::$17 ← (word~) mode_stdchar::$16 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) mode_stdchar::$18 ← ((word)) (byte*) mode_stdchar::CHARSET#0 + (word~) mode_stdchar::$19 ← (word~) mode_stdchar::$18 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_stdchar::$20 ← (word~) mode_stdchar::$19 / (word/signed word/dword/signed dword) $400 + (word/dword~) mode_stdchar::$21 ← (word/signed dword/dword~) mode_stdchar::$17 | (word/signed dword/dword~) mode_stdchar::$20 + (byte~) mode_stdchar::$22 ← ((byte)) (word/dword~) mode_stdchar::$21 + *((byte*) VIC_MEMORY#0) ← (byte~) mode_stdchar::$22 + (byte) mode_stdchar::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdchar::@1 mode_stdchar::@1: scope:[mode_stdchar] from mode_stdchar mode_stdchar::@1 - (byte) dtv_control#224 ? phi( mode_stdchar/(byte) dtv_control#18 mode_stdchar::@1/(byte) dtv_control#224 ) - (byte) mode_stdchar::i#2 ? phi( mode_stdchar/(byte) mode_stdchar::i#0 mode_stdchar::@1/(byte) mode_stdchar::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ? *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) - (byte) mode_stdchar::i#1 ? (byte) mode_stdchar::i#2 + rangenext(0,$f) - (bool~) mode_stdchar::$24 ? (byte) mode_stdchar::i#1 != rangelast(0,$f) + (byte) dtv_control#224 ← phi( mode_stdchar/(byte) dtv_control#18 mode_stdchar::@1/(byte) dtv_control#224 ) + (byte) mode_stdchar::i#2 ← phi( mode_stdchar/(byte) mode_stdchar::i#0 mode_stdchar::@1/(byte) mode_stdchar::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) + (byte) mode_stdchar::i#1 ← (byte) mode_stdchar::i#2 + rangenext(0,$f) + (bool~) mode_stdchar::$24 ← (byte) mode_stdchar::i#1 != rangelast(0,$f) if((bool~) mode_stdchar::$24) goto mode_stdchar::@1 to:mode_stdchar::@2 mode_stdchar::@2: scope:[mode_stdchar] from mode_stdchar::@1 - (byte) dtv_control#208 ? phi( mode_stdchar::@1/(byte) dtv_control#224 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) mode_stdchar::col#0 ? (byte*) mode_stdchar::COLORS#0 - (byte*) mode_stdchar::ch#0 ? (byte*) mode_stdchar::SCREEN#0 - (byte) mode_stdchar::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#208 ← phi( mode_stdchar::@1/(byte) dtv_control#224 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_stdchar::col#0 ← (byte*) mode_stdchar::COLORS#0 + (byte*) mode_stdchar::ch#0 ← (byte*) mode_stdchar::SCREEN#0 + (byte) mode_stdchar::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdchar::@3 mode_stdchar::@3: scope:[mode_stdchar] from mode_stdchar::@2 mode_stdchar::@5 - (byte) dtv_control#193 ? phi( mode_stdchar::@2/(byte) dtv_control#208 mode_stdchar::@5/(byte) dtv_control#149 ) - (byte*) mode_stdchar::ch#3 ? phi( mode_stdchar::@2/(byte*) mode_stdchar::ch#0 mode_stdchar::@5/(byte*) mode_stdchar::ch#4 ) - (byte*) mode_stdchar::col#3 ? phi( mode_stdchar::@2/(byte*) mode_stdchar::col#0 mode_stdchar::@5/(byte*) mode_stdchar::col#4 ) - (byte) mode_stdchar::cy#4 ? phi( mode_stdchar::@2/(byte) mode_stdchar::cy#0 mode_stdchar::@5/(byte) mode_stdchar::cy#1 ) - (byte) mode_stdchar::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#193 ← phi( mode_stdchar::@2/(byte) dtv_control#208 mode_stdchar::@5/(byte) dtv_control#149 ) + (byte*) mode_stdchar::ch#3 ← phi( mode_stdchar::@2/(byte*) mode_stdchar::ch#0 mode_stdchar::@5/(byte*) mode_stdchar::ch#4 ) + (byte*) mode_stdchar::col#3 ← phi( mode_stdchar::@2/(byte*) mode_stdchar::col#0 mode_stdchar::@5/(byte*) mode_stdchar::col#4 ) + (byte) mode_stdchar::cy#4 ← phi( mode_stdchar::@2/(byte) mode_stdchar::cy#0 mode_stdchar::@5/(byte) mode_stdchar::cy#1 ) + (byte) mode_stdchar::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdchar::@4 mode_stdchar::@4: scope:[mode_stdchar] from mode_stdchar::@3 mode_stdchar::@4 - (byte) dtv_control#177 ? phi( mode_stdchar::@3/(byte) dtv_control#193 mode_stdchar::@4/(byte) dtv_control#177 ) - (byte*) mode_stdchar::ch#2 ? phi( mode_stdchar::@3/(byte*) mode_stdchar::ch#3 mode_stdchar::@4/(byte*) mode_stdchar::ch#1 ) - (byte*) mode_stdchar::col#2 ? phi( mode_stdchar::@3/(byte*) mode_stdchar::col#3 mode_stdchar::@4/(byte*) mode_stdchar::col#1 ) - (byte) mode_stdchar::cy#2 ? phi( mode_stdchar::@3/(byte) mode_stdchar::cy#4 mode_stdchar::@4/(byte) mode_stdchar::cy#2 ) - (byte) mode_stdchar::cx#2 ? phi( mode_stdchar::@3/(byte) mode_stdchar::cx#0 mode_stdchar::@4/(byte) mode_stdchar::cx#1 ) - (byte~) mode_stdchar::$25 ? (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#2 - (byte~) mode_stdchar::$26 ? (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f - *((byte*) mode_stdchar::col#2) ? (byte~) mode_stdchar::$26 - (byte*) mode_stdchar::col#1 ? ++ (byte*) mode_stdchar::col#2 - (byte~) mode_stdchar::$27 ? (byte) mode_stdchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_stdchar::$28 ? (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_stdchar::$29 ? (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_stdchar::$30 ? (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 - *((byte*) mode_stdchar::ch#2) ? (byte~) mode_stdchar::$30 - (byte*) mode_stdchar::ch#1 ? ++ (byte*) mode_stdchar::ch#2 - (byte) mode_stdchar::cx#1 ? (byte) mode_stdchar::cx#2 + rangenext(0,$27) - (bool~) mode_stdchar::$31 ? (byte) mode_stdchar::cx#1 != rangelast(0,$27) + (byte) dtv_control#177 ← phi( mode_stdchar::@3/(byte) dtv_control#193 mode_stdchar::@4/(byte) dtv_control#177 ) + (byte*) mode_stdchar::ch#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::ch#3 mode_stdchar::@4/(byte*) mode_stdchar::ch#1 ) + (byte*) mode_stdchar::col#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::col#3 mode_stdchar::@4/(byte*) mode_stdchar::col#1 ) + (byte) mode_stdchar::cy#2 ← phi( mode_stdchar::@3/(byte) mode_stdchar::cy#4 mode_stdchar::@4/(byte) mode_stdchar::cy#2 ) + (byte) mode_stdchar::cx#2 ← phi( mode_stdchar::@3/(byte) mode_stdchar::cx#0 mode_stdchar::@4/(byte) mode_stdchar::cx#1 ) + (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#2 + (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f + *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 + (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 + (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 + *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 + (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 + (byte) mode_stdchar::cx#1 ← (byte) mode_stdchar::cx#2 + rangenext(0,$27) + (bool~) mode_stdchar::$31 ← (byte) mode_stdchar::cx#1 != rangelast(0,$27) if((bool~) mode_stdchar::$31) goto mode_stdchar::@4 to:mode_stdchar::@5 mode_stdchar::@5: scope:[mode_stdchar] from mode_stdchar::@4 - (byte) dtv_control#149 ? phi( mode_stdchar::@4/(byte) dtv_control#177 ) - (byte*) mode_stdchar::ch#4 ? phi( mode_stdchar::@4/(byte*) mode_stdchar::ch#1 ) - (byte*) mode_stdchar::col#4 ? phi( mode_stdchar::@4/(byte*) mode_stdchar::col#1 ) - (byte) mode_stdchar::cy#3 ? phi( mode_stdchar::@4/(byte) mode_stdchar::cy#2 ) - (byte) mode_stdchar::cy#1 ? (byte) mode_stdchar::cy#3 + rangenext(0,$18) - (bool~) mode_stdchar::$32 ? (byte) mode_stdchar::cy#1 != rangelast(0,$18) + (byte) dtv_control#149 ← phi( mode_stdchar::@4/(byte) dtv_control#177 ) + (byte*) mode_stdchar::ch#4 ← phi( mode_stdchar::@4/(byte*) mode_stdchar::ch#1 ) + (byte*) mode_stdchar::col#4 ← phi( mode_stdchar::@4/(byte*) mode_stdchar::col#1 ) + (byte) mode_stdchar::cy#3 ← phi( mode_stdchar::@4/(byte) mode_stdchar::cy#2 ) + (byte) mode_stdchar::cy#1 ← (byte) mode_stdchar::cy#3 + rangenext(0,$18) + (bool~) mode_stdchar::$32 ← (byte) mode_stdchar::cy#1 != rangelast(0,$18) if((bool~) mode_stdchar::$32) goto mode_stdchar::@3 to:mode_stdchar::@6 mode_stdchar::@6: scope:[mode_stdchar] from mode_stdchar::@5 - (byte) dtv_control#117 ? phi( mode_stdchar::@5/(byte) dtv_control#149 ) + (byte) dtv_control#117 ← phi( mode_stdchar::@5/(byte) dtv_control#149 ) call mode_ctrl to:mode_stdchar::@7 mode_stdchar::@7: scope:[mode_stdchar] from mode_stdchar::@6 - (byte) dtv_control#73 ? phi( mode_stdchar::@6/(byte) dtv_control#16 ) - (byte) dtv_control#19 ? (byte) dtv_control#73 + (byte) dtv_control#73 ← phi( mode_stdchar::@6/(byte) dtv_control#16 ) + (byte) dtv_control#19 ← (byte) dtv_control#73 to:mode_stdchar::@return mode_stdchar::@return: scope:[mode_stdchar] from mode_stdchar::@7 - (byte) dtv_control#74 ? phi( mode_stdchar::@7/(byte) dtv_control#19 ) - (byte) dtv_control#20 ? (byte) dtv_control#74 + (byte) dtv_control#74 ← phi( mode_stdchar::@7/(byte) dtv_control#19 ) + (byte) dtv_control#20 ← (byte) dtv_control#74 return to:@return mode_ecmchar: scope:[mode_ecmchar] from menu::@24 - (byte*) mode_ecmchar::SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte*) mode_ecmchar::CHARSET#0 ? ((byte*)) (word/dword/signed dword) $9000 - (byte*) mode_ecmchar::COLORS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (dword~) mode_ecmchar::$0 ? ((dword)) (byte*) mode_ecmchar::CHARSET#0 - (dword~) mode_ecmchar::$1 ? (dword~) mode_ecmchar::$0 / (dword/signed dword) $10000 - (byte~) mode_ecmchar::$2 ? ((byte)) (dword~) mode_ecmchar::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) mode_ecmchar::$2 - (dword~) mode_ecmchar::$3 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_ecmchar::$4 ? ((word)) (dword~) mode_ecmchar::$3 - (byte~) mode_ecmchar::$5 ? < (word~) mode_ecmchar::$4 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_ecmchar::$5 - (dword~) mode_ecmchar::$6 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_ecmchar::$7 ? ((word)) (dword~) mode_ecmchar::$6 - (byte~) mode_ecmchar::$8 ? > (word~) mode_ecmchar::$7 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_ecmchar::$8 - (byte) dtv_control#21 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) mode_ecmchar::$9 ? ((word)) (byte*) mode_ecmchar::CHARSET#0 - (word/signed dword/dword~) mode_ecmchar::$10 ? (word~) mode_ecmchar::$9 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_ecmchar::$11 ? ((byte)) (word/signed dword/dword~) mode_ecmchar::$10 - (byte/word/dword~) mode_ecmchar::$12 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_ecmchar::$11 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) mode_ecmchar::$12 - (byte~) mode_ecmchar::$13 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte~) mode_ecmchar::$14 ? (byte~) mode_ecmchar::$13 | (byte) VIC_ECM#0 - (byte/word/dword~) mode_ecmchar::$15 ? (byte~) mode_ecmchar::$14 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_ecmchar::$15 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (word~) mode_ecmchar::$16 ? ((word)) (byte*) mode_ecmchar::SCREEN#0 - (word~) mode_ecmchar::$17 ? (word~) mode_ecmchar::$16 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_ecmchar::$18 ? (word~) mode_ecmchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) mode_ecmchar::$19 ? ((word)) (byte*) mode_ecmchar::CHARSET#0 - (word~) mode_ecmchar::$20 ? (word~) mode_ecmchar::$19 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_ecmchar::$21 ? (word~) mode_ecmchar::$20 / (word/signed word/dword/signed dword) $400 - (word/dword~) mode_ecmchar::$22 ? (word/signed dword/dword~) mode_ecmchar::$18 | (word/signed dword/dword~) mode_ecmchar::$21 - (byte~) mode_ecmchar::$23 ? ((byte)) (word/dword~) mode_ecmchar::$22 - *((byte*) VIC_MEMORY#0) ? (byte~) mode_ecmchar::$23 - (byte) mode_ecmchar::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_ecmchar::SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte*) mode_ecmchar::CHARSET#0 ← ((byte*)) (word/dword/signed dword) $9000 + (byte*) mode_ecmchar::COLORS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (dword~) mode_ecmchar::$0 ← ((dword)) (byte*) mode_ecmchar::CHARSET#0 + (dword~) mode_ecmchar::$1 ← (dword~) mode_ecmchar::$0 / (dword/signed dword) $10000 + (byte~) mode_ecmchar::$2 ← ((byte)) (dword~) mode_ecmchar::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_ecmchar::$2 + (dword~) mode_ecmchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_ecmchar::$4 ← ((word)) (dword~) mode_ecmchar::$3 + (byte~) mode_ecmchar::$5 ← < (word~) mode_ecmchar::$4 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_ecmchar::$5 + (dword~) mode_ecmchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_ecmchar::$7 ← ((word)) (dword~) mode_ecmchar::$6 + (byte~) mode_ecmchar::$8 ← > (word~) mode_ecmchar::$7 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_ecmchar::$8 + (byte) dtv_control#21 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) mode_ecmchar::$9 ← ((word)) (byte*) mode_ecmchar::CHARSET#0 + (word/signed dword/dword~) mode_ecmchar::$10 ← (word~) mode_ecmchar::$9 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_ecmchar::$11 ← ((byte)) (word/signed dword/dword~) mode_ecmchar::$10 + (byte/word/dword~) mode_ecmchar::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_ecmchar::$11 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) mode_ecmchar::$12 + (byte~) mode_ecmchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte~) mode_ecmchar::$14 ← (byte~) mode_ecmchar::$13 | (byte) VIC_ECM#0 + (byte/word/dword~) mode_ecmchar::$15 ← (byte~) mode_ecmchar::$14 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_ecmchar::$15 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (word~) mode_ecmchar::$16 ← ((word)) (byte*) mode_ecmchar::SCREEN#0 + (word~) mode_ecmchar::$17 ← (word~) mode_ecmchar::$16 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_ecmchar::$18 ← (word~) mode_ecmchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) mode_ecmchar::$19 ← ((word)) (byte*) mode_ecmchar::CHARSET#0 + (word~) mode_ecmchar::$20 ← (word~) mode_ecmchar::$19 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_ecmchar::$21 ← (word~) mode_ecmchar::$20 / (word/signed word/dword/signed dword) $400 + (word/dword~) mode_ecmchar::$22 ← (word/signed dword/dword~) mode_ecmchar::$18 | (word/signed dword/dword~) mode_ecmchar::$21 + (byte~) mode_ecmchar::$23 ← ((byte)) (word/dword~) mode_ecmchar::$22 + *((byte*) VIC_MEMORY#0) ← (byte~) mode_ecmchar::$23 + (byte) mode_ecmchar::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_ecmchar::@1 mode_ecmchar::@1: scope:[mode_ecmchar] from mode_ecmchar mode_ecmchar::@1 - (byte) dtv_control#225 ? phi( mode_ecmchar/(byte) dtv_control#21 mode_ecmchar::@1/(byte) dtv_control#225 ) - (byte) mode_ecmchar::i#2 ? phi( mode_ecmchar/(byte) mode_ecmchar::i#0 mode_ecmchar::@1/(byte) mode_ecmchar::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ? *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) - (byte) mode_ecmchar::i#1 ? (byte) mode_ecmchar::i#2 + rangenext(0,$f) - (bool~) mode_ecmchar::$25 ? (byte) mode_ecmchar::i#1 != rangelast(0,$f) + (byte) dtv_control#225 ← phi( mode_ecmchar/(byte) dtv_control#21 mode_ecmchar::@1/(byte) dtv_control#225 ) + (byte) mode_ecmchar::i#2 ← phi( mode_ecmchar/(byte) mode_ecmchar::i#0 mode_ecmchar::@1/(byte) mode_ecmchar::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) + (byte) mode_ecmchar::i#1 ← (byte) mode_ecmchar::i#2 + rangenext(0,$f) + (bool~) mode_ecmchar::$25 ← (byte) mode_ecmchar::i#1 != rangelast(0,$f) if((bool~) mode_ecmchar::$25) goto mode_ecmchar::@1 to:mode_ecmchar::@2 mode_ecmchar::@2: scope:[mode_ecmchar] from mode_ecmchar::@1 - (byte) dtv_control#209 ? phi( mode_ecmchar::@1/(byte) dtv_control#225 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - *((byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 - *((byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte*) mode_ecmchar::col#0 ? (byte*) mode_ecmchar::COLORS#0 - (byte*) mode_ecmchar::ch#0 ? (byte*) mode_ecmchar::SCREEN#0 - (byte) mode_ecmchar::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#209 ← phi( mode_ecmchar::@1/(byte) dtv_control#225 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + *((byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 + *((byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte*) mode_ecmchar::col#0 ← (byte*) mode_ecmchar::COLORS#0 + (byte*) mode_ecmchar::ch#0 ← (byte*) mode_ecmchar::SCREEN#0 + (byte) mode_ecmchar::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_ecmchar::@3 mode_ecmchar::@3: scope:[mode_ecmchar] from mode_ecmchar::@2 mode_ecmchar::@5 - (byte) dtv_control#194 ? phi( mode_ecmchar::@2/(byte) dtv_control#209 mode_ecmchar::@5/(byte) dtv_control#150 ) - (byte*) mode_ecmchar::ch#3 ? phi( mode_ecmchar::@2/(byte*) mode_ecmchar::ch#0 mode_ecmchar::@5/(byte*) mode_ecmchar::ch#4 ) - (byte*) mode_ecmchar::col#3 ? phi( mode_ecmchar::@2/(byte*) mode_ecmchar::col#0 mode_ecmchar::@5/(byte*) mode_ecmchar::col#4 ) - (byte) mode_ecmchar::cy#4 ? phi( mode_ecmchar::@2/(byte) mode_ecmchar::cy#0 mode_ecmchar::@5/(byte) mode_ecmchar::cy#1 ) - (byte) mode_ecmchar::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#194 ← phi( mode_ecmchar::@2/(byte) dtv_control#209 mode_ecmchar::@5/(byte) dtv_control#150 ) + (byte*) mode_ecmchar::ch#3 ← phi( mode_ecmchar::@2/(byte*) mode_ecmchar::ch#0 mode_ecmchar::@5/(byte*) mode_ecmchar::ch#4 ) + (byte*) mode_ecmchar::col#3 ← phi( mode_ecmchar::@2/(byte*) mode_ecmchar::col#0 mode_ecmchar::@5/(byte*) mode_ecmchar::col#4 ) + (byte) mode_ecmchar::cy#4 ← phi( mode_ecmchar::@2/(byte) mode_ecmchar::cy#0 mode_ecmchar::@5/(byte) mode_ecmchar::cy#1 ) + (byte) mode_ecmchar::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_ecmchar::@4 mode_ecmchar::@4: scope:[mode_ecmchar] from mode_ecmchar::@3 mode_ecmchar::@4 - (byte) dtv_control#178 ? phi( mode_ecmchar::@3/(byte) dtv_control#194 mode_ecmchar::@4/(byte) dtv_control#178 ) - (byte*) mode_ecmchar::ch#2 ? phi( mode_ecmchar::@3/(byte*) mode_ecmchar::ch#3 mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 ) - (byte*) mode_ecmchar::col#2 ? phi( mode_ecmchar::@3/(byte*) mode_ecmchar::col#3 mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 ) - (byte) mode_ecmchar::cy#2 ? phi( mode_ecmchar::@3/(byte) mode_ecmchar::cy#4 mode_ecmchar::@4/(byte) mode_ecmchar::cy#2 ) - (byte) mode_ecmchar::cx#2 ? phi( mode_ecmchar::@3/(byte) mode_ecmchar::cx#0 mode_ecmchar::@4/(byte) mode_ecmchar::cx#1 ) - (byte~) mode_ecmchar::$26 ? (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#2 - (byte~) mode_ecmchar::$27 ? (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f - *((byte*) mode_ecmchar::col#2) ? (byte~) mode_ecmchar::$27 - (byte*) mode_ecmchar::col#1 ? ++ (byte*) mode_ecmchar::col#2 - (byte~) mode_ecmchar::$28 ? (byte) mode_ecmchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_ecmchar::$29 ? (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_ecmchar::$30 ? (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_ecmchar::$31 ? (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 - *((byte*) mode_ecmchar::ch#2) ? (byte~) mode_ecmchar::$31 - (byte*) mode_ecmchar::ch#1 ? ++ (byte*) mode_ecmchar::ch#2 - (byte) mode_ecmchar::cx#1 ? (byte) mode_ecmchar::cx#2 + rangenext(0,$27) - (bool~) mode_ecmchar::$32 ? (byte) mode_ecmchar::cx#1 != rangelast(0,$27) + (byte) dtv_control#178 ← phi( mode_ecmchar::@3/(byte) dtv_control#194 mode_ecmchar::@4/(byte) dtv_control#178 ) + (byte*) mode_ecmchar::ch#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::ch#3 mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 ) + (byte*) mode_ecmchar::col#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::col#3 mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 ) + (byte) mode_ecmchar::cy#2 ← phi( mode_ecmchar::@3/(byte) mode_ecmchar::cy#4 mode_ecmchar::@4/(byte) mode_ecmchar::cy#2 ) + (byte) mode_ecmchar::cx#2 ← phi( mode_ecmchar::@3/(byte) mode_ecmchar::cx#0 mode_ecmchar::@4/(byte) mode_ecmchar::cx#1 ) + (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#2 + (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f + *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 + (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 + (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 + *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 + (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 + (byte) mode_ecmchar::cx#1 ← (byte) mode_ecmchar::cx#2 + rangenext(0,$27) + (bool~) mode_ecmchar::$32 ← (byte) mode_ecmchar::cx#1 != rangelast(0,$27) if((bool~) mode_ecmchar::$32) goto mode_ecmchar::@4 to:mode_ecmchar::@5 mode_ecmchar::@5: scope:[mode_ecmchar] from mode_ecmchar::@4 - (byte) dtv_control#150 ? phi( mode_ecmchar::@4/(byte) dtv_control#178 ) - (byte*) mode_ecmchar::ch#4 ? phi( mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 ) - (byte*) mode_ecmchar::col#4 ? phi( mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 ) - (byte) mode_ecmchar::cy#3 ? phi( mode_ecmchar::@4/(byte) mode_ecmchar::cy#2 ) - (byte) mode_ecmchar::cy#1 ? (byte) mode_ecmchar::cy#3 + rangenext(0,$18) - (bool~) mode_ecmchar::$33 ? (byte) mode_ecmchar::cy#1 != rangelast(0,$18) + (byte) dtv_control#150 ← phi( mode_ecmchar::@4/(byte) dtv_control#178 ) + (byte*) mode_ecmchar::ch#4 ← phi( mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 ) + (byte*) mode_ecmchar::col#4 ← phi( mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 ) + (byte) mode_ecmchar::cy#3 ← phi( mode_ecmchar::@4/(byte) mode_ecmchar::cy#2 ) + (byte) mode_ecmchar::cy#1 ← (byte) mode_ecmchar::cy#3 + rangenext(0,$18) + (bool~) mode_ecmchar::$33 ← (byte) mode_ecmchar::cy#1 != rangelast(0,$18) if((bool~) mode_ecmchar::$33) goto mode_ecmchar::@3 to:mode_ecmchar::@6 mode_ecmchar::@6: scope:[mode_ecmchar] from mode_ecmchar::@5 - (byte) dtv_control#118 ? phi( mode_ecmchar::@5/(byte) dtv_control#150 ) + (byte) dtv_control#118 ← phi( mode_ecmchar::@5/(byte) dtv_control#150 ) call mode_ctrl to:mode_ecmchar::@7 mode_ecmchar::@7: scope:[mode_ecmchar] from mode_ecmchar::@6 - (byte) dtv_control#75 ? phi( mode_ecmchar::@6/(byte) dtv_control#16 ) - (byte) dtv_control#22 ? (byte) dtv_control#75 + (byte) dtv_control#75 ← phi( mode_ecmchar::@6/(byte) dtv_control#16 ) + (byte) dtv_control#22 ← (byte) dtv_control#75 to:mode_ecmchar::@return mode_ecmchar::@return: scope:[mode_ecmchar] from mode_ecmchar::@7 - (byte) dtv_control#76 ? phi( mode_ecmchar::@7/(byte) dtv_control#22 ) - (byte) dtv_control#23 ? (byte) dtv_control#76 + (byte) dtv_control#76 ← phi( mode_ecmchar::@7/(byte) dtv_control#22 ) + (byte) dtv_control#23 ← (byte) dtv_control#76 return to:@return mode_mcchar: scope:[mode_mcchar] from menu::@26 - (byte*) mode_mcchar::SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte*) mode_mcchar::CHARSET#0 ? ((byte*)) (word/dword/signed dword) $9000 - (byte*) mode_mcchar::COLORS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (dword~) mode_mcchar::$0 ? ((dword)) (byte*) mode_mcchar::CHARSET#0 - (dword~) mode_mcchar::$1 ? (dword~) mode_mcchar::$0 / (dword/signed dword) $10000 - (byte~) mode_mcchar::$2 ? ((byte)) (dword~) mode_mcchar::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) mode_mcchar::$2 - (dword~) mode_mcchar::$3 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_mcchar::$4 ? ((word)) (dword~) mode_mcchar::$3 - (byte~) mode_mcchar::$5 ? < (word~) mode_mcchar::$4 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_mcchar::$5 - (dword~) mode_mcchar::$6 ? (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_mcchar::$7 ? ((word)) (dword~) mode_mcchar::$6 - (byte~) mode_mcchar::$8 ? > (word~) mode_mcchar::$7 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_mcchar::$8 - (byte) dtv_control#24 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) mode_mcchar::$9 ? ((word)) (byte*) mode_mcchar::CHARSET#0 - (word/signed dword/dword~) mode_mcchar::$10 ? (word~) mode_mcchar::$9 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_mcchar::$11 ? ((byte)) (word/signed dword/dword~) mode_mcchar::$10 - (byte/word/dword~) mode_mcchar::$12 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_mcchar::$11 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) mode_mcchar::$12 - (byte~) mode_mcchar::$13 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_mcchar::$14 ? (byte~) mode_mcchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_mcchar::$14 - (byte~) mode_mcchar::$15 ? (byte) VIC_CSEL#0 | (byte) VIC_MCM#0 - *((byte*) VIC_CONTROL2#0) ? (byte~) mode_mcchar::$15 - (word~) mode_mcchar::$16 ? ((word)) (byte*) mode_mcchar::SCREEN#0 - (word~) mode_mcchar::$17 ? (word~) mode_mcchar::$16 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_mcchar::$18 ? (word~) mode_mcchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) mode_mcchar::$19 ? ((word)) (byte*) mode_mcchar::CHARSET#0 - (word~) mode_mcchar::$20 ? (word~) mode_mcchar::$19 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_mcchar::$21 ? (word~) mode_mcchar::$20 / (word/signed word/dword/signed dword) $400 - (word/dword~) mode_mcchar::$22 ? (word/signed dword/dword~) mode_mcchar::$18 | (word/signed dword/dword~) mode_mcchar::$21 - (byte~) mode_mcchar::$23 ? ((byte)) (word/dword~) mode_mcchar::$22 - *((byte*) VIC_MEMORY#0) ? (byte~) mode_mcchar::$23 - (byte) mode_mcchar::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_mcchar::SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte*) mode_mcchar::CHARSET#0 ← ((byte*)) (word/dword/signed dword) $9000 + (byte*) mode_mcchar::COLORS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (dword~) mode_mcchar::$0 ← ((dword)) (byte*) mode_mcchar::CHARSET#0 + (dword~) mode_mcchar::$1 ← (dword~) mode_mcchar::$0 / (dword/signed dword) $10000 + (byte~) mode_mcchar::$2 ← ((byte)) (dword~) mode_mcchar::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_mcchar::$2 + (dword~) mode_mcchar::$3 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_mcchar::$4 ← ((word)) (dword~) mode_mcchar::$3 + (byte~) mode_mcchar::$5 ← < (word~) mode_mcchar::$4 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_mcchar::$5 + (dword~) mode_mcchar::$6 ← (dword) DTV_COLOR_BANK_DEFAULT#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_mcchar::$7 ← ((word)) (dword~) mode_mcchar::$6 + (byte~) mode_mcchar::$8 ← > (word~) mode_mcchar::$7 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_mcchar::$8 + (byte) dtv_control#24 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) mode_mcchar::$9 ← ((word)) (byte*) mode_mcchar::CHARSET#0 + (word/signed dword/dword~) mode_mcchar::$10 ← (word~) mode_mcchar::$9 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_mcchar::$11 ← ((byte)) (word/signed dword/dword~) mode_mcchar::$10 + (byte/word/dword~) mode_mcchar::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_mcchar::$11 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) mode_mcchar::$12 + (byte~) mode_mcchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_mcchar::$14 ← (byte~) mode_mcchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_mcchar::$14 + (byte~) mode_mcchar::$15 ← (byte) VIC_CSEL#0 | (byte) VIC_MCM#0 + *((byte*) VIC_CONTROL2#0) ← (byte~) mode_mcchar::$15 + (word~) mode_mcchar::$16 ← ((word)) (byte*) mode_mcchar::SCREEN#0 + (word~) mode_mcchar::$17 ← (word~) mode_mcchar::$16 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_mcchar::$18 ← (word~) mode_mcchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) mode_mcchar::$19 ← ((word)) (byte*) mode_mcchar::CHARSET#0 + (word~) mode_mcchar::$20 ← (word~) mode_mcchar::$19 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_mcchar::$21 ← (word~) mode_mcchar::$20 / (word/signed word/dword/signed dword) $400 + (word/dword~) mode_mcchar::$22 ← (word/signed dword/dword~) mode_mcchar::$18 | (word/signed dword/dword~) mode_mcchar::$21 + (byte~) mode_mcchar::$23 ← ((byte)) (word/dword~) mode_mcchar::$22 + *((byte*) VIC_MEMORY#0) ← (byte~) mode_mcchar::$23 + (byte) mode_mcchar::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_mcchar::@1 mode_mcchar::@1: scope:[mode_mcchar] from mode_mcchar mode_mcchar::@1 - (byte) dtv_control#226 ? phi( mode_mcchar/(byte) dtv_control#24 mode_mcchar::@1/(byte) dtv_control#226 ) - (byte) mode_mcchar::i#2 ? phi( mode_mcchar/(byte) mode_mcchar::i#0 mode_mcchar::@1/(byte) mode_mcchar::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ? *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) - (byte) mode_mcchar::i#1 ? (byte) mode_mcchar::i#2 + rangenext(0,$f) - (bool~) mode_mcchar::$25 ? (byte) mode_mcchar::i#1 != rangelast(0,$f) + (byte) dtv_control#226 ← phi( mode_mcchar/(byte) dtv_control#24 mode_mcchar::@1/(byte) dtv_control#226 ) + (byte) mode_mcchar::i#2 ← phi( mode_mcchar/(byte) mode_mcchar::i#0 mode_mcchar::@1/(byte) mode_mcchar::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) + (byte) mode_mcchar::i#1 ← (byte) mode_mcchar::i#2 + rangenext(0,$f) + (bool~) mode_mcchar::$25 ← (byte) mode_mcchar::i#1 != rangelast(0,$f) if((bool~) mode_mcchar::$25) goto mode_mcchar::@1 to:mode_mcchar::@2 mode_mcchar::@2: scope:[mode_mcchar] from mode_mcchar::@1 - (byte) dtv_control#210 ? phi( mode_mcchar::@1/(byte) dtv_control#226 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BGCOL1#0) ? (byte) BLACK#0 - *((byte*) BGCOL2#0) ? (byte) GREEN#0 - *((byte*) BGCOL3#0) ? (byte) BLUE#0 - (byte*) mode_mcchar::col#0 ? (byte*) mode_mcchar::COLORS#0 - (byte*) mode_mcchar::ch#0 ? (byte*) mode_mcchar::SCREEN#0 - (byte) mode_mcchar::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#210 ← phi( mode_mcchar::@1/(byte) dtv_control#226 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BGCOL1#0) ← (byte) BLACK#0 + *((byte*) BGCOL2#0) ← (byte) GREEN#0 + *((byte*) BGCOL3#0) ← (byte) BLUE#0 + (byte*) mode_mcchar::col#0 ← (byte*) mode_mcchar::COLORS#0 + (byte*) mode_mcchar::ch#0 ← (byte*) mode_mcchar::SCREEN#0 + (byte) mode_mcchar::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_mcchar::@3 mode_mcchar::@3: scope:[mode_mcchar] from mode_mcchar::@2 mode_mcchar::@5 - (byte) dtv_control#195 ? phi( mode_mcchar::@2/(byte) dtv_control#210 mode_mcchar::@5/(byte) dtv_control#151 ) - (byte*) mode_mcchar::ch#3 ? phi( mode_mcchar::@2/(byte*) mode_mcchar::ch#0 mode_mcchar::@5/(byte*) mode_mcchar::ch#4 ) - (byte*) mode_mcchar::col#3 ? phi( mode_mcchar::@2/(byte*) mode_mcchar::col#0 mode_mcchar::@5/(byte*) mode_mcchar::col#4 ) - (byte) mode_mcchar::cy#4 ? phi( mode_mcchar::@2/(byte) mode_mcchar::cy#0 mode_mcchar::@5/(byte) mode_mcchar::cy#1 ) - (byte) mode_mcchar::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#195 ← phi( mode_mcchar::@2/(byte) dtv_control#210 mode_mcchar::@5/(byte) dtv_control#151 ) + (byte*) mode_mcchar::ch#3 ← phi( mode_mcchar::@2/(byte*) mode_mcchar::ch#0 mode_mcchar::@5/(byte*) mode_mcchar::ch#4 ) + (byte*) mode_mcchar::col#3 ← phi( mode_mcchar::@2/(byte*) mode_mcchar::col#0 mode_mcchar::@5/(byte*) mode_mcchar::col#4 ) + (byte) mode_mcchar::cy#4 ← phi( mode_mcchar::@2/(byte) mode_mcchar::cy#0 mode_mcchar::@5/(byte) mode_mcchar::cy#1 ) + (byte) mode_mcchar::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_mcchar::@4 mode_mcchar::@4: scope:[mode_mcchar] from mode_mcchar::@3 mode_mcchar::@4 - (byte) dtv_control#179 ? phi( mode_mcchar::@3/(byte) dtv_control#195 mode_mcchar::@4/(byte) dtv_control#179 ) - (byte*) mode_mcchar::ch#2 ? phi( mode_mcchar::@3/(byte*) mode_mcchar::ch#3 mode_mcchar::@4/(byte*) mode_mcchar::ch#1 ) - (byte*) mode_mcchar::col#2 ? phi( mode_mcchar::@3/(byte*) mode_mcchar::col#3 mode_mcchar::@4/(byte*) mode_mcchar::col#1 ) - (byte) mode_mcchar::cy#2 ? phi( mode_mcchar::@3/(byte) mode_mcchar::cy#4 mode_mcchar::@4/(byte) mode_mcchar::cy#2 ) - (byte) mode_mcchar::cx#2 ? phi( mode_mcchar::@3/(byte) mode_mcchar::cx#0 mode_mcchar::@4/(byte) mode_mcchar::cx#1 ) - (byte~) mode_mcchar::$26 ? (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#2 - (byte~) mode_mcchar::$27 ? (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f - *((byte*) mode_mcchar::col#2) ? (byte~) mode_mcchar::$27 - (byte*) mode_mcchar::col#1 ? ++ (byte*) mode_mcchar::col#2 - (byte~) mode_mcchar::$28 ? (byte) mode_mcchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_mcchar::$29 ? (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_mcchar::$30 ? (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_mcchar::$31 ? (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 - *((byte*) mode_mcchar::ch#2) ? (byte~) mode_mcchar::$31 - (byte*) mode_mcchar::ch#1 ? ++ (byte*) mode_mcchar::ch#2 - (byte) mode_mcchar::cx#1 ? (byte) mode_mcchar::cx#2 + rangenext(0,$27) - (bool~) mode_mcchar::$32 ? (byte) mode_mcchar::cx#1 != rangelast(0,$27) + (byte) dtv_control#179 ← phi( mode_mcchar::@3/(byte) dtv_control#195 mode_mcchar::@4/(byte) dtv_control#179 ) + (byte*) mode_mcchar::ch#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::ch#3 mode_mcchar::@4/(byte*) mode_mcchar::ch#1 ) + (byte*) mode_mcchar::col#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::col#3 mode_mcchar::@4/(byte*) mode_mcchar::col#1 ) + (byte) mode_mcchar::cy#2 ← phi( mode_mcchar::@3/(byte) mode_mcchar::cy#4 mode_mcchar::@4/(byte) mode_mcchar::cy#2 ) + (byte) mode_mcchar::cx#2 ← phi( mode_mcchar::@3/(byte) mode_mcchar::cx#0 mode_mcchar::@4/(byte) mode_mcchar::cx#1 ) + (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#2 + (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f + *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 + (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 + (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 + *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 + (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 + (byte) mode_mcchar::cx#1 ← (byte) mode_mcchar::cx#2 + rangenext(0,$27) + (bool~) mode_mcchar::$32 ← (byte) mode_mcchar::cx#1 != rangelast(0,$27) if((bool~) mode_mcchar::$32) goto mode_mcchar::@4 to:mode_mcchar::@5 mode_mcchar::@5: scope:[mode_mcchar] from mode_mcchar::@4 - (byte) dtv_control#151 ? phi( mode_mcchar::@4/(byte) dtv_control#179 ) - (byte*) mode_mcchar::ch#4 ? phi( mode_mcchar::@4/(byte*) mode_mcchar::ch#1 ) - (byte*) mode_mcchar::col#4 ? phi( mode_mcchar::@4/(byte*) mode_mcchar::col#1 ) - (byte) mode_mcchar::cy#3 ? phi( mode_mcchar::@4/(byte) mode_mcchar::cy#2 ) - (byte) mode_mcchar::cy#1 ? (byte) mode_mcchar::cy#3 + rangenext(0,$18) - (bool~) mode_mcchar::$33 ? (byte) mode_mcchar::cy#1 != rangelast(0,$18) + (byte) dtv_control#151 ← phi( mode_mcchar::@4/(byte) dtv_control#179 ) + (byte*) mode_mcchar::ch#4 ← phi( mode_mcchar::@4/(byte*) mode_mcchar::ch#1 ) + (byte*) mode_mcchar::col#4 ← phi( mode_mcchar::@4/(byte*) mode_mcchar::col#1 ) + (byte) mode_mcchar::cy#3 ← phi( mode_mcchar::@4/(byte) mode_mcchar::cy#2 ) + (byte) mode_mcchar::cy#1 ← (byte) mode_mcchar::cy#3 + rangenext(0,$18) + (bool~) mode_mcchar::$33 ← (byte) mode_mcchar::cy#1 != rangelast(0,$18) if((bool~) mode_mcchar::$33) goto mode_mcchar::@3 to:mode_mcchar::@6 mode_mcchar::@6: scope:[mode_mcchar] from mode_mcchar::@5 - (byte) dtv_control#119 ? phi( mode_mcchar::@5/(byte) dtv_control#151 ) + (byte) dtv_control#119 ← phi( mode_mcchar::@5/(byte) dtv_control#151 ) call mode_ctrl to:mode_mcchar::@7 mode_mcchar::@7: scope:[mode_mcchar] from mode_mcchar::@6 - (byte) dtv_control#77 ? phi( mode_mcchar::@6/(byte) dtv_control#16 ) - (byte) dtv_control#25 ? (byte) dtv_control#77 + (byte) dtv_control#77 ← phi( mode_mcchar::@6/(byte) dtv_control#16 ) + (byte) dtv_control#25 ← (byte) dtv_control#77 to:mode_mcchar::@return mode_mcchar::@return: scope:[mode_mcchar] from mode_mcchar::@7 - (byte) dtv_control#78 ? phi( mode_mcchar::@7/(byte) dtv_control#25 ) - (byte) dtv_control#26 ? (byte) dtv_control#78 + (byte) dtv_control#78 ← phi( mode_mcchar::@7/(byte) dtv_control#25 ) + (byte) dtv_control#26 ← (byte) dtv_control#78 return to:@return mode_stdbitmap: scope:[mode_stdbitmap] from menu::@28 - (byte*) mode_stdbitmap::SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte*) mode_stdbitmap::BITMAP#0 ? ((byte*)) (word/signed word/dword/signed dword) $6000 - (dword~) mode_stdbitmap::$0 ? ((dword)) (byte*) mode_stdbitmap::BITMAP#0 - (dword~) mode_stdbitmap::$1 ? (dword~) mode_stdbitmap::$0 / (dword/signed dword) $10000 - (byte~) mode_stdbitmap::$2 ? ((byte)) (dword~) mode_stdbitmap::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) mode_stdbitmap::$2 - (byte) dtv_control#27 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) mode_stdbitmap::$3 ? ((word)) (byte*) mode_stdbitmap::BITMAP#0 - (word/signed dword/dword~) mode_stdbitmap::$4 ? (word~) mode_stdbitmap::$3 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_stdbitmap::$5 ? ((byte)) (word/signed dword/dword~) mode_stdbitmap::$4 - (byte/word/dword~) mode_stdbitmap::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_stdbitmap::$5 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) mode_stdbitmap::$6 - (byte~) mode_stdbitmap::$7 ? (byte) VIC_BMM#0 | (byte) VIC_DEN#0 - (byte~) mode_stdbitmap::$8 ? (byte~) mode_stdbitmap::$7 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_stdbitmap::$9 ? (byte~) mode_stdbitmap::$8 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_stdbitmap::$9 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (word~) mode_stdbitmap::$10 ? ((word)) (byte*) mode_stdbitmap::SCREEN#0 - (word~) mode_stdbitmap::$11 ? (word~) mode_stdbitmap::$10 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_stdbitmap::$12 ? (word~) mode_stdbitmap::$11 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) mode_stdbitmap::$13 ? ((word)) (byte*) mode_stdbitmap::BITMAP#0 - (word~) mode_stdbitmap::$14 ? (word~) mode_stdbitmap::$13 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_stdbitmap::$15 ? (word~) mode_stdbitmap::$14 / (word/signed word/dword/signed dword) $400 - (word/dword~) mode_stdbitmap::$16 ? (word/signed dword/dword~) mode_stdbitmap::$12 | (word/signed dword/dword~) mode_stdbitmap::$15 - (byte~) mode_stdbitmap::$17 ? ((byte)) (word/dword~) mode_stdbitmap::$16 - *((byte*) VIC_MEMORY#0) ? (byte~) mode_stdbitmap::$17 - (byte) mode_stdbitmap::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_stdbitmap::SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte*) mode_stdbitmap::BITMAP#0 ← ((byte*)) (word/signed word/dword/signed dword) $6000 + (dword~) mode_stdbitmap::$0 ← ((dword)) (byte*) mode_stdbitmap::BITMAP#0 + (dword~) mode_stdbitmap::$1 ← (dword~) mode_stdbitmap::$0 / (dword/signed dword) $10000 + (byte~) mode_stdbitmap::$2 ← ((byte)) (dword~) mode_stdbitmap::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_stdbitmap::$2 + (byte) dtv_control#27 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) mode_stdbitmap::$3 ← ((word)) (byte*) mode_stdbitmap::BITMAP#0 + (word/signed dword/dword~) mode_stdbitmap::$4 ← (word~) mode_stdbitmap::$3 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_stdbitmap::$5 ← ((byte)) (word/signed dword/dword~) mode_stdbitmap::$4 + (byte/word/dword~) mode_stdbitmap::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_stdbitmap::$5 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) mode_stdbitmap::$6 + (byte~) mode_stdbitmap::$7 ← (byte) VIC_BMM#0 | (byte) VIC_DEN#0 + (byte~) mode_stdbitmap::$8 ← (byte~) mode_stdbitmap::$7 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_stdbitmap::$9 ← (byte~) mode_stdbitmap::$8 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_stdbitmap::$9 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (word~) mode_stdbitmap::$10 ← ((word)) (byte*) mode_stdbitmap::SCREEN#0 + (word~) mode_stdbitmap::$11 ← (word~) mode_stdbitmap::$10 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_stdbitmap::$12 ← (word~) mode_stdbitmap::$11 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) mode_stdbitmap::$13 ← ((word)) (byte*) mode_stdbitmap::BITMAP#0 + (word~) mode_stdbitmap::$14 ← (word~) mode_stdbitmap::$13 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_stdbitmap::$15 ← (word~) mode_stdbitmap::$14 / (word/signed word/dword/signed dword) $400 + (word/dword~) mode_stdbitmap::$16 ← (word/signed dword/dword~) mode_stdbitmap::$12 | (word/signed dword/dword~) mode_stdbitmap::$15 + (byte~) mode_stdbitmap::$17 ← ((byte)) (word/dword~) mode_stdbitmap::$16 + *((byte*) VIC_MEMORY#0) ← (byte~) mode_stdbitmap::$17 + (byte) mode_stdbitmap::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdbitmap::@1 mode_stdbitmap::@1: scope:[mode_stdbitmap] from mode_stdbitmap mode_stdbitmap::@1 - (byte) dtv_control#272 ? phi( mode_stdbitmap/(byte) dtv_control#27 mode_stdbitmap::@1/(byte) dtv_control#272 ) - (byte) mode_stdbitmap::i#2 ? phi( mode_stdbitmap/(byte) mode_stdbitmap::i#0 mode_stdbitmap::@1/(byte) mode_stdbitmap::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ? *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) - (byte) mode_stdbitmap::i#1 ? (byte) mode_stdbitmap::i#2 + rangenext(0,$f) - (bool~) mode_stdbitmap::$21 ? (byte) mode_stdbitmap::i#1 != rangelast(0,$f) + (byte) dtv_control#272 ← phi( mode_stdbitmap/(byte) dtv_control#27 mode_stdbitmap::@1/(byte) dtv_control#272 ) + (byte) mode_stdbitmap::i#2 ← phi( mode_stdbitmap/(byte) mode_stdbitmap::i#0 mode_stdbitmap::@1/(byte) mode_stdbitmap::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) + (byte) mode_stdbitmap::i#1 ← (byte) mode_stdbitmap::i#2 + rangenext(0,$f) + (bool~) mode_stdbitmap::$21 ← (byte) mode_stdbitmap::i#1 != rangelast(0,$f) if((bool~) mode_stdbitmap::$21) goto mode_stdbitmap::@1 to:mode_stdbitmap::@2 mode_stdbitmap::@2: scope:[mode_stdbitmap] from mode_stdbitmap::@1 - (byte) dtv_control#265 ? phi( mode_stdbitmap::@1/(byte) dtv_control#272 ) - *((byte*) BGCOL#0) ? (byte) BLACK#0 - *((byte*) BORDERCOL#0) ? (byte) BLACK#0 - (byte*) mode_stdbitmap::ch#0 ? (byte*) mode_stdbitmap::SCREEN#0 - (byte) mode_stdbitmap::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#265 ← phi( mode_stdbitmap::@1/(byte) dtv_control#272 ) + *((byte*) BGCOL#0) ← (byte) BLACK#0 + *((byte*) BORDERCOL#0) ← (byte) BLACK#0 + (byte*) mode_stdbitmap::ch#0 ← (byte*) mode_stdbitmap::SCREEN#0 + (byte) mode_stdbitmap::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdbitmap::@3 mode_stdbitmap::@3: scope:[mode_stdbitmap] from mode_stdbitmap::@2 mode_stdbitmap::@5 - (byte) dtv_control#258 ? phi( mode_stdbitmap::@2/(byte) dtv_control#265 mode_stdbitmap::@5/(byte) dtv_control#240 ) - (byte*) mode_stdbitmap::ch#3 ? phi( mode_stdbitmap::@2/(byte*) mode_stdbitmap::ch#0 mode_stdbitmap::@5/(byte*) mode_stdbitmap::ch#4 ) - (byte) mode_stdbitmap::cy#4 ? phi( mode_stdbitmap::@2/(byte) mode_stdbitmap::cy#0 mode_stdbitmap::@5/(byte) mode_stdbitmap::cy#1 ) - (byte) mode_stdbitmap::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#258 ← phi( mode_stdbitmap::@2/(byte) dtv_control#265 mode_stdbitmap::@5/(byte) dtv_control#240 ) + (byte*) mode_stdbitmap::ch#3 ← phi( mode_stdbitmap::@2/(byte*) mode_stdbitmap::ch#0 mode_stdbitmap::@5/(byte*) mode_stdbitmap::ch#4 ) + (byte) mode_stdbitmap::cy#4 ← phi( mode_stdbitmap::@2/(byte) mode_stdbitmap::cy#0 mode_stdbitmap::@5/(byte) mode_stdbitmap::cy#1 ) + (byte) mode_stdbitmap::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdbitmap::@4 mode_stdbitmap::@4: scope:[mode_stdbitmap] from mode_stdbitmap::@3 mode_stdbitmap::@4 - (byte) dtv_control#248 ? phi( mode_stdbitmap::@3/(byte) dtv_control#258 mode_stdbitmap::@4/(byte) dtv_control#248 ) - (byte*) mode_stdbitmap::ch#2 ? phi( mode_stdbitmap::@3/(byte*) mode_stdbitmap::ch#3 mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 ) - (byte) mode_stdbitmap::cy#2 ? phi( mode_stdbitmap::@3/(byte) mode_stdbitmap::cy#4 mode_stdbitmap::@4/(byte) mode_stdbitmap::cy#2 ) - (byte) mode_stdbitmap::cx#2 ? phi( mode_stdbitmap::@3/(byte) mode_stdbitmap::cx#0 mode_stdbitmap::@4/(byte) mode_stdbitmap::cx#1 ) - (byte~) mode_stdbitmap::$22 ? (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#2 - (byte~) mode_stdbitmap::$23 ? (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 ? (byte~) mode_stdbitmap::$23 - (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$24 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 - (byte) mode_stdbitmap::col2#0 ? (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$24 - (byte~) mode_stdbitmap::$25 ? (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_stdbitmap::$26 ? (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 - *((byte*) mode_stdbitmap::ch#2) ? (byte~) mode_stdbitmap::$26 - (byte*) mode_stdbitmap::ch#1 ? ++ (byte*) mode_stdbitmap::ch#2 - (byte) mode_stdbitmap::cx#1 ? (byte) mode_stdbitmap::cx#2 + rangenext(0,$27) - (bool~) mode_stdbitmap::$27 ? (byte) mode_stdbitmap::cx#1 != rangelast(0,$27) + (byte) dtv_control#248 ← phi( mode_stdbitmap::@3/(byte) dtv_control#258 mode_stdbitmap::@4/(byte) dtv_control#248 ) + (byte*) mode_stdbitmap::ch#2 ← phi( mode_stdbitmap::@3/(byte*) mode_stdbitmap::ch#3 mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 ) + (byte) mode_stdbitmap::cy#2 ← phi( mode_stdbitmap::@3/(byte) mode_stdbitmap::cy#4 mode_stdbitmap::@4/(byte) mode_stdbitmap::cy#2 ) + (byte) mode_stdbitmap::cx#2 ← phi( mode_stdbitmap::@3/(byte) mode_stdbitmap::cx#0 mode_stdbitmap::@4/(byte) mode_stdbitmap::cx#1 ) + (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#2 + (byte~) mode_stdbitmap::$23 ← (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$23 + (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$24 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 + (byte) mode_stdbitmap::col2#0 ← (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$24 + (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 + *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 + (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 + (byte) mode_stdbitmap::cx#1 ← (byte) mode_stdbitmap::cx#2 + rangenext(0,$27) + (bool~) mode_stdbitmap::$27 ← (byte) mode_stdbitmap::cx#1 != rangelast(0,$27) if((bool~) mode_stdbitmap::$27) goto mode_stdbitmap::@4 to:mode_stdbitmap::@5 mode_stdbitmap::@5: scope:[mode_stdbitmap] from mode_stdbitmap::@4 - (byte) dtv_control#240 ? phi( mode_stdbitmap::@4/(byte) dtv_control#248 ) - (byte*) mode_stdbitmap::ch#4 ? phi( mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 ) - (byte) mode_stdbitmap::cy#3 ? phi( mode_stdbitmap::@4/(byte) mode_stdbitmap::cy#2 ) - (byte) mode_stdbitmap::cy#1 ? (byte) mode_stdbitmap::cy#3 + rangenext(0,$18) - (bool~) mode_stdbitmap::$28 ? (byte) mode_stdbitmap::cy#1 != rangelast(0,$18) + (byte) dtv_control#240 ← phi( mode_stdbitmap::@4/(byte) dtv_control#248 ) + (byte*) mode_stdbitmap::ch#4 ← phi( mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 ) + (byte) mode_stdbitmap::cy#3 ← phi( mode_stdbitmap::@4/(byte) mode_stdbitmap::cy#2 ) + (byte) mode_stdbitmap::cy#1 ← (byte) mode_stdbitmap::cy#3 + rangenext(0,$18) + (bool~) mode_stdbitmap::$28 ← (byte) mode_stdbitmap::cy#1 != rangelast(0,$18) if((bool~) mode_stdbitmap::$28) goto mode_stdbitmap::@3 to:mode_stdbitmap::@6 mode_stdbitmap::@6: scope:[mode_stdbitmap] from mode_stdbitmap::@5 - (byte) dtv_control#227 ? phi( mode_stdbitmap::@5/(byte) dtv_control#240 ) - (byte*) bitmap_init::bitmap#0 ? (byte*) mode_stdbitmap::BITMAP#0 + (byte) dtv_control#227 ← phi( mode_stdbitmap::@5/(byte) dtv_control#240 ) + (byte*) bitmap_init::bitmap#0 ← (byte*) mode_stdbitmap::BITMAP#0 call bitmap_init to:mode_stdbitmap::@9 mode_stdbitmap::@9: scope:[mode_stdbitmap] from mode_stdbitmap::@6 - (byte) dtv_control#211 ? phi( mode_stdbitmap::@6/(byte) dtv_control#227 ) + (byte) dtv_control#211 ← phi( mode_stdbitmap::@6/(byte) dtv_control#227 ) call bitmap_clear to:mode_stdbitmap::@10 mode_stdbitmap::@10: scope:[mode_stdbitmap] from mode_stdbitmap::@9 - (byte) dtv_control#196 ? phi( mode_stdbitmap::@9/(byte) dtv_control#211 ) - (byte[]) mode_stdbitmap::lines_x#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $80, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80 } - (byte[]) mode_stdbitmap::lines_y#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $c7, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte) mode_stdbitmap::lines_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) mode_stdbitmap::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#196 ← phi( mode_stdbitmap::@9/(byte) dtv_control#211 ) + (byte[]) mode_stdbitmap::lines_x#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $80, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $80 } + (byte[]) mode_stdbitmap::lines_y#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $c7, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/word/signed word/dword/signed dword) $c7, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte) mode_stdbitmap::lines_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) mode_stdbitmap::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdbitmap::@7 mode_stdbitmap::@7: scope:[mode_stdbitmap] from mode_stdbitmap::@10 mode_stdbitmap::@11 - (byte) dtv_control#180 ? phi( mode_stdbitmap::@10/(byte) dtv_control#196 mode_stdbitmap::@11/(byte) dtv_control#152 ) - (byte) mode_stdbitmap::l#2 ? phi( mode_stdbitmap::@10/(byte) mode_stdbitmap::l#0 mode_stdbitmap::@11/(byte) mode_stdbitmap::l#1 ) - (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$29 ? (byte) mode_stdbitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$30 ? (byte) mode_stdbitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line::x0#0 ? *((byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) - (byte) bitmap_line::x1#0 ? *((byte[]) mode_stdbitmap::lines_x#0 + (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$29) - (byte) bitmap_line::y0#0 ? *((byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) - (byte) bitmap_line::y1#0 ? *((byte[]) mode_stdbitmap::lines_y#0 + (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$30) + (byte) dtv_control#180 ← phi( mode_stdbitmap::@10/(byte) dtv_control#196 mode_stdbitmap::@11/(byte) dtv_control#152 ) + (byte) mode_stdbitmap::l#2 ← phi( mode_stdbitmap::@10/(byte) mode_stdbitmap::l#0 mode_stdbitmap::@11/(byte) mode_stdbitmap::l#1 ) + (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$29 ← (byte) mode_stdbitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$30 ← (byte) mode_stdbitmap::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line::x0#0 ← *((byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) + (byte) bitmap_line::x1#0 ← *((byte[]) mode_stdbitmap::lines_x#0 + (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$29) + (byte) bitmap_line::y0#0 ← *((byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) + (byte) bitmap_line::y1#0 ← *((byte[]) mode_stdbitmap::lines_y#0 + (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$30) call bitmap_line to:mode_stdbitmap::@11 mode_stdbitmap::@11: scope:[mode_stdbitmap] from mode_stdbitmap::@7 - (byte) dtv_control#152 ? phi( mode_stdbitmap::@7/(byte) dtv_control#180 ) - (byte) mode_stdbitmap::l#3 ? phi( mode_stdbitmap::@7/(byte) mode_stdbitmap::l#2 ) - (byte) mode_stdbitmap::l#1 ? ++ (byte) mode_stdbitmap::l#3 - (bool~) mode_stdbitmap::$32 ? (byte) mode_stdbitmap::l#1 < (byte) mode_stdbitmap::lines_cnt#0 + (byte) dtv_control#152 ← phi( mode_stdbitmap::@7/(byte) dtv_control#180 ) + (byte) mode_stdbitmap::l#3 ← phi( mode_stdbitmap::@7/(byte) mode_stdbitmap::l#2 ) + (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#3 + (bool~) mode_stdbitmap::$32 ← (byte) mode_stdbitmap::l#1 < (byte) mode_stdbitmap::lines_cnt#0 if((bool~) mode_stdbitmap::$32) goto mode_stdbitmap::@7 to:mode_stdbitmap::@8 mode_stdbitmap::@8: scope:[mode_stdbitmap] from mode_stdbitmap::@11 - (byte) dtv_control#120 ? phi( mode_stdbitmap::@11/(byte) dtv_control#152 ) + (byte) dtv_control#120 ← phi( mode_stdbitmap::@11/(byte) dtv_control#152 ) call mode_ctrl to:mode_stdbitmap::@12 mode_stdbitmap::@12: scope:[mode_stdbitmap] from mode_stdbitmap::@8 - (byte) dtv_control#79 ? phi( mode_stdbitmap::@8/(byte) dtv_control#16 ) - (byte) dtv_control#28 ? (byte) dtv_control#79 + (byte) dtv_control#79 ← phi( mode_stdbitmap::@8/(byte) dtv_control#16 ) + (byte) dtv_control#28 ← (byte) dtv_control#79 to:mode_stdbitmap::@return mode_stdbitmap::@return: scope:[mode_stdbitmap] from mode_stdbitmap::@12 - (byte) dtv_control#80 ? phi( mode_stdbitmap::@12/(byte) dtv_control#28 ) - (byte) dtv_control#29 ? (byte) dtv_control#80 + (byte) dtv_control#80 ← phi( mode_stdbitmap::@12/(byte) dtv_control#28 ) + (byte) dtv_control#29 ← (byte) dtv_control#80 return to:@return mode_hicolstdchar: scope:[mode_hicolstdchar] from menu::@30 - (byte*) mode_hicolstdchar::SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte*) mode_hicolstdchar::CHARSET#0 ? ((byte*)) (word/dword/signed dword) $9000 - (byte*) mode_hicolstdchar::COLORS#0 ? ((byte*)) (word/dword/signed dword) $8400 - (dword~) mode_hicolstdchar::$0 ? ((dword)) (byte*) mode_hicolstdchar::CHARSET#0 - (dword~) mode_hicolstdchar::$1 ? (dword~) mode_hicolstdchar::$0 / (dword/signed dword) $10000 - (byte~) mode_hicolstdchar::$2 ? ((byte)) (dword~) mode_hicolstdchar::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) mode_hicolstdchar::$2 - (byte*~) mode_hicolstdchar::$3 ? (byte*) mode_hicolstdchar::COLORS#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_hicolstdchar::$4 ? ((word)) (byte*~) mode_hicolstdchar::$3 - (byte~) mode_hicolstdchar::$5 ? < (word~) mode_hicolstdchar::$4 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_hicolstdchar::$5 - (byte*~) mode_hicolstdchar::$6 ? (byte*) mode_hicolstdchar::COLORS#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_hicolstdchar::$7 ? ((word)) (byte*~) mode_hicolstdchar::$6 - (byte~) mode_hicolstdchar::$8 ? > (word~) mode_hicolstdchar::$7 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_hicolstdchar::$8 - (byte) dtv_control#30 ? (byte) DTV_HIGHCOLOR#0 - *((byte*) DTV_CONTROL#0) ? (byte) DTV_HIGHCOLOR#0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) mode_hicolstdchar::$9 ? ((word)) (byte*) mode_hicolstdchar::CHARSET#0 - (word/signed dword/dword~) mode_hicolstdchar::$10 ? (word~) mode_hicolstdchar::$9 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_hicolstdchar::$11 ? ((byte)) (word/signed dword/dword~) mode_hicolstdchar::$10 - (byte/word/dword~) mode_hicolstdchar::$12 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_hicolstdchar::$11 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) mode_hicolstdchar::$12 - (byte~) mode_hicolstdchar::$13 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_hicolstdchar::$14 ? (byte~) mode_hicolstdchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_hicolstdchar::$14 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (word~) mode_hicolstdchar::$15 ? ((word)) (byte*) mode_hicolstdchar::SCREEN#0 - (word~) mode_hicolstdchar::$16 ? (word~) mode_hicolstdchar::$15 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_hicolstdchar::$17 ? (word~) mode_hicolstdchar::$16 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) mode_hicolstdchar::$18 ? ((word)) (byte*) mode_hicolstdchar::CHARSET#0 - (word~) mode_hicolstdchar::$19 ? (word~) mode_hicolstdchar::$18 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_hicolstdchar::$20 ? (word~) mode_hicolstdchar::$19 / (word/signed word/dword/signed dword) $400 - (word/dword~) mode_hicolstdchar::$21 ? (word/signed dword/dword~) mode_hicolstdchar::$17 | (word/signed dword/dword~) mode_hicolstdchar::$20 - (byte~) mode_hicolstdchar::$22 ? ((byte)) (word/dword~) mode_hicolstdchar::$21 - *((byte*) VIC_MEMORY#0) ? (byte~) mode_hicolstdchar::$22 - (byte) mode_hicolstdchar::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_hicolstdchar::SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte*) mode_hicolstdchar::CHARSET#0 ← ((byte*)) (word/dword/signed dword) $9000 + (byte*) mode_hicolstdchar::COLORS#0 ← ((byte*)) (word/dword/signed dword) $8400 + (dword~) mode_hicolstdchar::$0 ← ((dword)) (byte*) mode_hicolstdchar::CHARSET#0 + (dword~) mode_hicolstdchar::$1 ← (dword~) mode_hicolstdchar::$0 / (dword/signed dword) $10000 + (byte~) mode_hicolstdchar::$2 ← ((byte)) (dword~) mode_hicolstdchar::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_hicolstdchar::$2 + (byte*~) mode_hicolstdchar::$3 ← (byte*) mode_hicolstdchar::COLORS#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_hicolstdchar::$4 ← ((word)) (byte*~) mode_hicolstdchar::$3 + (byte~) mode_hicolstdchar::$5 ← < (word~) mode_hicolstdchar::$4 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_hicolstdchar::$5 + (byte*~) mode_hicolstdchar::$6 ← (byte*) mode_hicolstdchar::COLORS#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_hicolstdchar::$7 ← ((word)) (byte*~) mode_hicolstdchar::$6 + (byte~) mode_hicolstdchar::$8 ← > (word~) mode_hicolstdchar::$7 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_hicolstdchar::$8 + (byte) dtv_control#30 ← (byte) DTV_HIGHCOLOR#0 + *((byte*) DTV_CONTROL#0) ← (byte) DTV_HIGHCOLOR#0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) mode_hicolstdchar::$9 ← ((word)) (byte*) mode_hicolstdchar::CHARSET#0 + (word/signed dword/dword~) mode_hicolstdchar::$10 ← (word~) mode_hicolstdchar::$9 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_hicolstdchar::$11 ← ((byte)) (word/signed dword/dword~) mode_hicolstdchar::$10 + (byte/word/dword~) mode_hicolstdchar::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_hicolstdchar::$11 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) mode_hicolstdchar::$12 + (byte~) mode_hicolstdchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_hicolstdchar::$14 ← (byte~) mode_hicolstdchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_hicolstdchar::$14 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (word~) mode_hicolstdchar::$15 ← ((word)) (byte*) mode_hicolstdchar::SCREEN#0 + (word~) mode_hicolstdchar::$16 ← (word~) mode_hicolstdchar::$15 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_hicolstdchar::$17 ← (word~) mode_hicolstdchar::$16 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) mode_hicolstdchar::$18 ← ((word)) (byte*) mode_hicolstdchar::CHARSET#0 + (word~) mode_hicolstdchar::$19 ← (word~) mode_hicolstdchar::$18 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_hicolstdchar::$20 ← (word~) mode_hicolstdchar::$19 / (word/signed word/dword/signed dword) $400 + (word/dword~) mode_hicolstdchar::$21 ← (word/signed dword/dword~) mode_hicolstdchar::$17 | (word/signed dword/dword~) mode_hicolstdchar::$20 + (byte~) mode_hicolstdchar::$22 ← ((byte)) (word/dword~) mode_hicolstdchar::$21 + *((byte*) VIC_MEMORY#0) ← (byte~) mode_hicolstdchar::$22 + (byte) mode_hicolstdchar::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolstdchar::@1 mode_hicolstdchar::@1: scope:[mode_hicolstdchar] from mode_hicolstdchar mode_hicolstdchar::@1 - (byte) dtv_control#228 ? phi( mode_hicolstdchar/(byte) dtv_control#30 mode_hicolstdchar::@1/(byte) dtv_control#228 ) - (byte) mode_hicolstdchar::i#2 ? phi( mode_hicolstdchar/(byte) mode_hicolstdchar::i#0 mode_hicolstdchar::@1/(byte) mode_hicolstdchar::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ? (byte) mode_hicolstdchar::i#2 - (byte) mode_hicolstdchar::i#1 ? (byte) mode_hicolstdchar::i#2 + rangenext(0,$f) - (bool~) mode_hicolstdchar::$24 ? (byte) mode_hicolstdchar::i#1 != rangelast(0,$f) + (byte) dtv_control#228 ← phi( mode_hicolstdchar/(byte) dtv_control#30 mode_hicolstdchar::@1/(byte) dtv_control#228 ) + (byte) mode_hicolstdchar::i#2 ← phi( mode_hicolstdchar/(byte) mode_hicolstdchar::i#0 mode_hicolstdchar::@1/(byte) mode_hicolstdchar::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 + (byte) mode_hicolstdchar::i#1 ← (byte) mode_hicolstdchar::i#2 + rangenext(0,$f) + (bool~) mode_hicolstdchar::$24 ← (byte) mode_hicolstdchar::i#1 != rangelast(0,$f) if((bool~) mode_hicolstdchar::$24) goto mode_hicolstdchar::@1 to:mode_hicolstdchar::@2 mode_hicolstdchar::@2: scope:[mode_hicolstdchar] from mode_hicolstdchar::@1 - (byte) dtv_control#212 ? phi( mode_hicolstdchar::@1/(byte) dtv_control#228 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) mode_hicolstdchar::col#0 ? (byte*) mode_hicolstdchar::COLORS#0 - (byte*) mode_hicolstdchar::ch#0 ? (byte*) mode_hicolstdchar::SCREEN#0 - (byte) mode_hicolstdchar::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#212 ← phi( mode_hicolstdchar::@1/(byte) dtv_control#228 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_hicolstdchar::col#0 ← (byte*) mode_hicolstdchar::COLORS#0 + (byte*) mode_hicolstdchar::ch#0 ← (byte*) mode_hicolstdchar::SCREEN#0 + (byte) mode_hicolstdchar::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolstdchar::@3 mode_hicolstdchar::@3: scope:[mode_hicolstdchar] from mode_hicolstdchar::@2 mode_hicolstdchar::@5 - (byte) dtv_control#197 ? phi( mode_hicolstdchar::@2/(byte) dtv_control#212 mode_hicolstdchar::@5/(byte) dtv_control#153 ) - (byte*) mode_hicolstdchar::ch#3 ? phi( mode_hicolstdchar::@2/(byte*) mode_hicolstdchar::ch#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::ch#4 ) - (byte*) mode_hicolstdchar::col#3 ? phi( mode_hicolstdchar::@2/(byte*) mode_hicolstdchar::col#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::col#4 ) - (byte) mode_hicolstdchar::cy#4 ? phi( mode_hicolstdchar::@2/(byte) mode_hicolstdchar::cy#0 mode_hicolstdchar::@5/(byte) mode_hicolstdchar::cy#1 ) - (byte) mode_hicolstdchar::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#197 ← phi( mode_hicolstdchar::@2/(byte) dtv_control#212 mode_hicolstdchar::@5/(byte) dtv_control#153 ) + (byte*) mode_hicolstdchar::ch#3 ← phi( mode_hicolstdchar::@2/(byte*) mode_hicolstdchar::ch#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::ch#4 ) + (byte*) mode_hicolstdchar::col#3 ← phi( mode_hicolstdchar::@2/(byte*) mode_hicolstdchar::col#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::col#4 ) + (byte) mode_hicolstdchar::cy#4 ← phi( mode_hicolstdchar::@2/(byte) mode_hicolstdchar::cy#0 mode_hicolstdchar::@5/(byte) mode_hicolstdchar::cy#1 ) + (byte) mode_hicolstdchar::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolstdchar::@4 mode_hicolstdchar::@4: scope:[mode_hicolstdchar] from mode_hicolstdchar::@3 mode_hicolstdchar::@4 - (byte) dtv_control#181 ? phi( mode_hicolstdchar::@3/(byte) dtv_control#197 mode_hicolstdchar::@4/(byte) dtv_control#181 ) - (byte*) mode_hicolstdchar::ch#2 ? phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::ch#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 ) - (byte*) mode_hicolstdchar::col#2 ? phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::col#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 ) - (byte) mode_hicolstdchar::cx#2 ? phi( mode_hicolstdchar::@3/(byte) mode_hicolstdchar::cx#0 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cx#1 ) - (byte) mode_hicolstdchar::cy#2 ? phi( mode_hicolstdchar::@3/(byte) mode_hicolstdchar::cy#4 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cy#2 ) - (byte~) mode_hicolstdchar::$25 ? (byte) mode_hicolstdchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_hicolstdchar::$26 ? (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_hicolstdchar::$27 ? (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_hicolstdchar::$28 ? (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 - (byte) mode_hicolstdchar::v#0 ? (byte~) mode_hicolstdchar::$28 - *((byte*) mode_hicolstdchar::col#2) ? (byte) mode_hicolstdchar::v#0 - (byte*) mode_hicolstdchar::col#1 ? ++ (byte*) mode_hicolstdchar::col#2 - *((byte*) mode_hicolstdchar::ch#2) ? (byte) mode_hicolstdchar::v#0 - (byte*) mode_hicolstdchar::ch#1 ? ++ (byte*) mode_hicolstdchar::ch#2 - (byte) mode_hicolstdchar::cx#1 ? (byte) mode_hicolstdchar::cx#2 + rangenext(0,$27) - (bool~) mode_hicolstdchar::$29 ? (byte) mode_hicolstdchar::cx#1 != rangelast(0,$27) + (byte) dtv_control#181 ← phi( mode_hicolstdchar::@3/(byte) dtv_control#197 mode_hicolstdchar::@4/(byte) dtv_control#181 ) + (byte*) mode_hicolstdchar::ch#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::ch#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 ) + (byte*) mode_hicolstdchar::col#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::col#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 ) + (byte) mode_hicolstdchar::cx#2 ← phi( mode_hicolstdchar::@3/(byte) mode_hicolstdchar::cx#0 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cx#1 ) + (byte) mode_hicolstdchar::cy#2 ← phi( mode_hicolstdchar::@3/(byte) mode_hicolstdchar::cy#4 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cy#2 ) + (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_hicolstdchar::$28 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 + (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$28 + *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 + (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 + *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 + (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 + (byte) mode_hicolstdchar::cx#1 ← (byte) mode_hicolstdchar::cx#2 + rangenext(0,$27) + (bool~) mode_hicolstdchar::$29 ← (byte) mode_hicolstdchar::cx#1 != rangelast(0,$27) if((bool~) mode_hicolstdchar::$29) goto mode_hicolstdchar::@4 to:mode_hicolstdchar::@5 mode_hicolstdchar::@5: scope:[mode_hicolstdchar] from mode_hicolstdchar::@4 - (byte) dtv_control#153 ? phi( mode_hicolstdchar::@4/(byte) dtv_control#181 ) - (byte*) mode_hicolstdchar::ch#4 ? phi( mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 ) - (byte*) mode_hicolstdchar::col#4 ? phi( mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 ) - (byte) mode_hicolstdchar::cy#3 ? phi( mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cy#2 ) - (byte) mode_hicolstdchar::cy#1 ? (byte) mode_hicolstdchar::cy#3 + rangenext(0,$18) - (bool~) mode_hicolstdchar::$30 ? (byte) mode_hicolstdchar::cy#1 != rangelast(0,$18) + (byte) dtv_control#153 ← phi( mode_hicolstdchar::@4/(byte) dtv_control#181 ) + (byte*) mode_hicolstdchar::ch#4 ← phi( mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 ) + (byte*) mode_hicolstdchar::col#4 ← phi( mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 ) + (byte) mode_hicolstdchar::cy#3 ← phi( mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cy#2 ) + (byte) mode_hicolstdchar::cy#1 ← (byte) mode_hicolstdchar::cy#3 + rangenext(0,$18) + (bool~) mode_hicolstdchar::$30 ← (byte) mode_hicolstdchar::cy#1 != rangelast(0,$18) if((bool~) mode_hicolstdchar::$30) goto mode_hicolstdchar::@3 to:mode_hicolstdchar::@6 mode_hicolstdchar::@6: scope:[mode_hicolstdchar] from mode_hicolstdchar::@5 - (byte) dtv_control#121 ? phi( mode_hicolstdchar::@5/(byte) dtv_control#153 ) + (byte) dtv_control#121 ← phi( mode_hicolstdchar::@5/(byte) dtv_control#153 ) call mode_ctrl to:mode_hicolstdchar::@7 mode_hicolstdchar::@7: scope:[mode_hicolstdchar] from mode_hicolstdchar::@6 - (byte) dtv_control#81 ? phi( mode_hicolstdchar::@6/(byte) dtv_control#16 ) - (byte) dtv_control#31 ? (byte) dtv_control#81 + (byte) dtv_control#81 ← phi( mode_hicolstdchar::@6/(byte) dtv_control#16 ) + (byte) dtv_control#31 ← (byte) dtv_control#81 to:mode_hicolstdchar::@return mode_hicolstdchar::@return: scope:[mode_hicolstdchar] from mode_hicolstdchar::@7 - (byte) dtv_control#82 ? phi( mode_hicolstdchar::@7/(byte) dtv_control#31 ) - (byte) dtv_control#32 ? (byte) dtv_control#82 + (byte) dtv_control#82 ← phi( mode_hicolstdchar::@7/(byte) dtv_control#31 ) + (byte) dtv_control#32 ← (byte) dtv_control#82 return to:@return mode_hicolecmchar: scope:[mode_hicolecmchar] from menu::@32 - (byte*) mode_hicolecmchar::SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte*) mode_hicolecmchar::CHARSET#0 ? ((byte*)) (word/dword/signed dword) $9000 - (byte*) mode_hicolecmchar::COLORS#0 ? ((byte*)) (word/dword/signed dword) $8400 - (dword~) mode_hicolecmchar::$0 ? ((dword)) (byte*) mode_hicolecmchar::CHARSET#0 - (dword~) mode_hicolecmchar::$1 ? (dword~) mode_hicolecmchar::$0 / (dword/signed dword) $10000 - (byte~) mode_hicolecmchar::$2 ? ((byte)) (dword~) mode_hicolecmchar::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) mode_hicolecmchar::$2 - (byte*~) mode_hicolecmchar::$3 ? (byte*) mode_hicolecmchar::COLORS#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_hicolecmchar::$4 ? ((word)) (byte*~) mode_hicolecmchar::$3 - (byte~) mode_hicolecmchar::$5 ? < (word~) mode_hicolecmchar::$4 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_hicolecmchar::$5 - (byte*~) mode_hicolecmchar::$6 ? (byte*) mode_hicolecmchar::COLORS#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_hicolecmchar::$7 ? ((word)) (byte*~) mode_hicolecmchar::$6 - (byte~) mode_hicolecmchar::$8 ? > (word~) mode_hicolecmchar::$7 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_hicolecmchar::$8 - (byte) dtv_control#33 ? (byte) DTV_HIGHCOLOR#0 - *((byte*) DTV_CONTROL#0) ? (byte) DTV_HIGHCOLOR#0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) mode_hicolecmchar::$9 ? ((word)) (byte*) mode_hicolecmchar::CHARSET#0 - (word/signed dword/dword~) mode_hicolecmchar::$10 ? (word~) mode_hicolecmchar::$9 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_hicolecmchar::$11 ? ((byte)) (word/signed dword/dword~) mode_hicolecmchar::$10 - (byte/word/dword~) mode_hicolecmchar::$12 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_hicolecmchar::$11 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) mode_hicolecmchar::$12 - (byte~) mode_hicolecmchar::$13 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte~) mode_hicolecmchar::$14 ? (byte~) mode_hicolecmchar::$13 | (byte) VIC_ECM#0 - (byte/word/dword~) mode_hicolecmchar::$15 ? (byte~) mode_hicolecmchar::$14 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_hicolecmchar::$15 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (word~) mode_hicolecmchar::$16 ? ((word)) (byte*) mode_hicolecmchar::SCREEN#0 - (word~) mode_hicolecmchar::$17 ? (word~) mode_hicolecmchar::$16 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_hicolecmchar::$18 ? (word~) mode_hicolecmchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) mode_hicolecmchar::$19 ? ((word)) (byte*) mode_hicolecmchar::CHARSET#0 - (word~) mode_hicolecmchar::$20 ? (word~) mode_hicolecmchar::$19 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_hicolecmchar::$21 ? (word~) mode_hicolecmchar::$20 / (word/signed word/dword/signed dword) $400 - (word/dword~) mode_hicolecmchar::$22 ? (word/signed dword/dword~) mode_hicolecmchar::$18 | (word/signed dword/dword~) mode_hicolecmchar::$21 - (byte~) mode_hicolecmchar::$23 ? ((byte)) (word/dword~) mode_hicolecmchar::$22 - *((byte*) VIC_MEMORY#0) ? (byte~) mode_hicolecmchar::$23 - (byte) mode_hicolecmchar::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_hicolecmchar::SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte*) mode_hicolecmchar::CHARSET#0 ← ((byte*)) (word/dword/signed dword) $9000 + (byte*) mode_hicolecmchar::COLORS#0 ← ((byte*)) (word/dword/signed dword) $8400 + (dword~) mode_hicolecmchar::$0 ← ((dword)) (byte*) mode_hicolecmchar::CHARSET#0 + (dword~) mode_hicolecmchar::$1 ← (dword~) mode_hicolecmchar::$0 / (dword/signed dword) $10000 + (byte~) mode_hicolecmchar::$2 ← ((byte)) (dword~) mode_hicolecmchar::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_hicolecmchar::$2 + (byte*~) mode_hicolecmchar::$3 ← (byte*) mode_hicolecmchar::COLORS#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_hicolecmchar::$4 ← ((word)) (byte*~) mode_hicolecmchar::$3 + (byte~) mode_hicolecmchar::$5 ← < (word~) mode_hicolecmchar::$4 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_hicolecmchar::$5 + (byte*~) mode_hicolecmchar::$6 ← (byte*) mode_hicolecmchar::COLORS#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_hicolecmchar::$7 ← ((word)) (byte*~) mode_hicolecmchar::$6 + (byte~) mode_hicolecmchar::$8 ← > (word~) mode_hicolecmchar::$7 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_hicolecmchar::$8 + (byte) dtv_control#33 ← (byte) DTV_HIGHCOLOR#0 + *((byte*) DTV_CONTROL#0) ← (byte) DTV_HIGHCOLOR#0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) mode_hicolecmchar::$9 ← ((word)) (byte*) mode_hicolecmchar::CHARSET#0 + (word/signed dword/dword~) mode_hicolecmchar::$10 ← (word~) mode_hicolecmchar::$9 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_hicolecmchar::$11 ← ((byte)) (word/signed dword/dword~) mode_hicolecmchar::$10 + (byte/word/dword~) mode_hicolecmchar::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_hicolecmchar::$11 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) mode_hicolecmchar::$12 + (byte~) mode_hicolecmchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte~) mode_hicolecmchar::$14 ← (byte~) mode_hicolecmchar::$13 | (byte) VIC_ECM#0 + (byte/word/dword~) mode_hicolecmchar::$15 ← (byte~) mode_hicolecmchar::$14 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_hicolecmchar::$15 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (word~) mode_hicolecmchar::$16 ← ((word)) (byte*) mode_hicolecmchar::SCREEN#0 + (word~) mode_hicolecmchar::$17 ← (word~) mode_hicolecmchar::$16 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_hicolecmchar::$18 ← (word~) mode_hicolecmchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) mode_hicolecmchar::$19 ← ((word)) (byte*) mode_hicolecmchar::CHARSET#0 + (word~) mode_hicolecmchar::$20 ← (word~) mode_hicolecmchar::$19 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_hicolecmchar::$21 ← (word~) mode_hicolecmchar::$20 / (word/signed word/dword/signed dword) $400 + (word/dword~) mode_hicolecmchar::$22 ← (word/signed dword/dword~) mode_hicolecmchar::$18 | (word/signed dword/dword~) mode_hicolecmchar::$21 + (byte~) mode_hicolecmchar::$23 ← ((byte)) (word/dword~) mode_hicolecmchar::$22 + *((byte*) VIC_MEMORY#0) ← (byte~) mode_hicolecmchar::$23 + (byte) mode_hicolecmchar::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolecmchar::@1 mode_hicolecmchar::@1: scope:[mode_hicolecmchar] from mode_hicolecmchar mode_hicolecmchar::@1 - (byte) dtv_control#229 ? phi( mode_hicolecmchar/(byte) dtv_control#33 mode_hicolecmchar::@1/(byte) dtv_control#229 ) - (byte) mode_hicolecmchar::i#2 ? phi( mode_hicolecmchar/(byte) mode_hicolecmchar::i#0 mode_hicolecmchar::@1/(byte) mode_hicolecmchar::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ? (byte) mode_hicolecmchar::i#2 - (byte) mode_hicolecmchar::i#1 ? (byte) mode_hicolecmchar::i#2 + rangenext(0,$f) - (bool~) mode_hicolecmchar::$25 ? (byte) mode_hicolecmchar::i#1 != rangelast(0,$f) + (byte) dtv_control#229 ← phi( mode_hicolecmchar/(byte) dtv_control#33 mode_hicolecmchar::@1/(byte) dtv_control#229 ) + (byte) mode_hicolecmchar::i#2 ← phi( mode_hicolecmchar/(byte) mode_hicolecmchar::i#0 mode_hicolecmchar::@1/(byte) mode_hicolecmchar::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 + (byte) mode_hicolecmchar::i#1 ← (byte) mode_hicolecmchar::i#2 + rangenext(0,$f) + (bool~) mode_hicolecmchar::$25 ← (byte) mode_hicolecmchar::i#1 != rangelast(0,$f) if((bool~) mode_hicolecmchar::$25) goto mode_hicolecmchar::@1 to:mode_hicolecmchar::@2 mode_hicolecmchar::@2: scope:[mode_hicolecmchar] from mode_hicolecmchar::@1 - (byte) dtv_control#213 ? phi( mode_hicolecmchar::@1/(byte) dtv_control#229 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 - *((byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 - *((byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 - *((byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) $5c - (byte*) mode_hicolecmchar::col#0 ? (byte*) mode_hicolecmchar::COLORS#0 - (byte*) mode_hicolecmchar::ch#0 ? (byte*) mode_hicolecmchar::SCREEN#0 - (byte) mode_hicolecmchar::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#213 ← phi( mode_hicolecmchar::@1/(byte) dtv_control#229 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 + *((byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 + *((byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 + *((byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) $5c + (byte*) mode_hicolecmchar::col#0 ← (byte*) mode_hicolecmchar::COLORS#0 + (byte*) mode_hicolecmchar::ch#0 ← (byte*) mode_hicolecmchar::SCREEN#0 + (byte) mode_hicolecmchar::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolecmchar::@3 mode_hicolecmchar::@3: scope:[mode_hicolecmchar] from mode_hicolecmchar::@2 mode_hicolecmchar::@5 - (byte) dtv_control#198 ? phi( mode_hicolecmchar::@2/(byte) dtv_control#213 mode_hicolecmchar::@5/(byte) dtv_control#154 ) - (byte*) mode_hicolecmchar::ch#3 ? phi( mode_hicolecmchar::@2/(byte*) mode_hicolecmchar::ch#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::ch#4 ) - (byte*) mode_hicolecmchar::col#3 ? phi( mode_hicolecmchar::@2/(byte*) mode_hicolecmchar::col#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::col#4 ) - (byte) mode_hicolecmchar::cy#4 ? phi( mode_hicolecmchar::@2/(byte) mode_hicolecmchar::cy#0 mode_hicolecmchar::@5/(byte) mode_hicolecmchar::cy#1 ) - (byte) mode_hicolecmchar::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#198 ← phi( mode_hicolecmchar::@2/(byte) dtv_control#213 mode_hicolecmchar::@5/(byte) dtv_control#154 ) + (byte*) mode_hicolecmchar::ch#3 ← phi( mode_hicolecmchar::@2/(byte*) mode_hicolecmchar::ch#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::ch#4 ) + (byte*) mode_hicolecmchar::col#3 ← phi( mode_hicolecmchar::@2/(byte*) mode_hicolecmchar::col#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::col#4 ) + (byte) mode_hicolecmchar::cy#4 ← phi( mode_hicolecmchar::@2/(byte) mode_hicolecmchar::cy#0 mode_hicolecmchar::@5/(byte) mode_hicolecmchar::cy#1 ) + (byte) mode_hicolecmchar::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolecmchar::@4 mode_hicolecmchar::@4: scope:[mode_hicolecmchar] from mode_hicolecmchar::@3 mode_hicolecmchar::@4 - (byte) dtv_control#182 ? phi( mode_hicolecmchar::@3/(byte) dtv_control#198 mode_hicolecmchar::@4/(byte) dtv_control#182 ) - (byte*) mode_hicolecmchar::ch#2 ? phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::ch#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 ) - (byte*) mode_hicolecmchar::col#2 ? phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::col#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 ) - (byte) mode_hicolecmchar::cx#2 ? phi( mode_hicolecmchar::@3/(byte) mode_hicolecmchar::cx#0 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cx#1 ) - (byte) mode_hicolecmchar::cy#2 ? phi( mode_hicolecmchar::@3/(byte) mode_hicolecmchar::cy#4 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cy#2 ) - (byte~) mode_hicolecmchar::$26 ? (byte) mode_hicolecmchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_hicolecmchar::$27 ? (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_hicolecmchar::$28 ? (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_hicolecmchar::$29 ? (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 - (byte) mode_hicolecmchar::v#0 ? (byte~) mode_hicolecmchar::$29 - *((byte*) mode_hicolecmchar::col#2) ? (byte) mode_hicolecmchar::v#0 - (byte*) mode_hicolecmchar::col#1 ? ++ (byte*) mode_hicolecmchar::col#2 - *((byte*) mode_hicolecmchar::ch#2) ? (byte) mode_hicolecmchar::v#0 - (byte*) mode_hicolecmchar::ch#1 ? ++ (byte*) mode_hicolecmchar::ch#2 - (byte) mode_hicolecmchar::cx#1 ? (byte) mode_hicolecmchar::cx#2 + rangenext(0,$27) - (bool~) mode_hicolecmchar::$30 ? (byte) mode_hicolecmchar::cx#1 != rangelast(0,$27) + (byte) dtv_control#182 ← phi( mode_hicolecmchar::@3/(byte) dtv_control#198 mode_hicolecmchar::@4/(byte) dtv_control#182 ) + (byte*) mode_hicolecmchar::ch#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::ch#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 ) + (byte*) mode_hicolecmchar::col#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::col#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 ) + (byte) mode_hicolecmchar::cx#2 ← phi( mode_hicolecmchar::@3/(byte) mode_hicolecmchar::cx#0 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cx#1 ) + (byte) mode_hicolecmchar::cy#2 ← phi( mode_hicolecmchar::@3/(byte) mode_hicolecmchar::cy#4 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cy#2 ) + (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_hicolecmchar::$29 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 + (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$29 + *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 + (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 + *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 + (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 + (byte) mode_hicolecmchar::cx#1 ← (byte) mode_hicolecmchar::cx#2 + rangenext(0,$27) + (bool~) mode_hicolecmchar::$30 ← (byte) mode_hicolecmchar::cx#1 != rangelast(0,$27) if((bool~) mode_hicolecmchar::$30) goto mode_hicolecmchar::@4 to:mode_hicolecmchar::@5 mode_hicolecmchar::@5: scope:[mode_hicolecmchar] from mode_hicolecmchar::@4 - (byte) dtv_control#154 ? phi( mode_hicolecmchar::@4/(byte) dtv_control#182 ) - (byte*) mode_hicolecmchar::ch#4 ? phi( mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 ) - (byte*) mode_hicolecmchar::col#4 ? phi( mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 ) - (byte) mode_hicolecmchar::cy#3 ? phi( mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cy#2 ) - (byte) mode_hicolecmchar::cy#1 ? (byte) mode_hicolecmchar::cy#3 + rangenext(0,$18) - (bool~) mode_hicolecmchar::$31 ? (byte) mode_hicolecmchar::cy#1 != rangelast(0,$18) + (byte) dtv_control#154 ← phi( mode_hicolecmchar::@4/(byte) dtv_control#182 ) + (byte*) mode_hicolecmchar::ch#4 ← phi( mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 ) + (byte*) mode_hicolecmchar::col#4 ← phi( mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 ) + (byte) mode_hicolecmchar::cy#3 ← phi( mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cy#2 ) + (byte) mode_hicolecmchar::cy#1 ← (byte) mode_hicolecmchar::cy#3 + rangenext(0,$18) + (bool~) mode_hicolecmchar::$31 ← (byte) mode_hicolecmchar::cy#1 != rangelast(0,$18) if((bool~) mode_hicolecmchar::$31) goto mode_hicolecmchar::@3 to:mode_hicolecmchar::@6 mode_hicolecmchar::@6: scope:[mode_hicolecmchar] from mode_hicolecmchar::@5 - (byte) dtv_control#122 ? phi( mode_hicolecmchar::@5/(byte) dtv_control#154 ) + (byte) dtv_control#122 ← phi( mode_hicolecmchar::@5/(byte) dtv_control#154 ) call mode_ctrl to:mode_hicolecmchar::@7 mode_hicolecmchar::@7: scope:[mode_hicolecmchar] from mode_hicolecmchar::@6 - (byte) dtv_control#83 ? phi( mode_hicolecmchar::@6/(byte) dtv_control#16 ) - (byte) dtv_control#34 ? (byte) dtv_control#83 + (byte) dtv_control#83 ← phi( mode_hicolecmchar::@6/(byte) dtv_control#16 ) + (byte) dtv_control#34 ← (byte) dtv_control#83 to:mode_hicolecmchar::@return mode_hicolecmchar::@return: scope:[mode_hicolecmchar] from mode_hicolecmchar::@7 - (byte) dtv_control#84 ? phi( mode_hicolecmchar::@7/(byte) dtv_control#34 ) - (byte) dtv_control#35 ? (byte) dtv_control#84 + (byte) dtv_control#84 ← phi( mode_hicolecmchar::@7/(byte) dtv_control#34 ) + (byte) dtv_control#35 ← (byte) dtv_control#84 return to:@return mode_hicolmcchar: scope:[mode_hicolmcchar] from menu::@34 - (byte*) mode_hicolmcchar::SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte*) mode_hicolmcchar::CHARSET#0 ? ((byte*)) (word/dword/signed dword) $9000 - (byte*) mode_hicolmcchar::COLORS#0 ? ((byte*)) (word/dword/signed dword) $8400 - (dword~) mode_hicolmcchar::$0 ? ((dword)) (byte*) mode_hicolmcchar::CHARSET#0 - (dword~) mode_hicolmcchar::$1 ? (dword~) mode_hicolmcchar::$0 / (dword/signed dword) $10000 - (byte~) mode_hicolmcchar::$2 ? ((byte)) (dword~) mode_hicolmcchar::$1 - *((byte*) DTV_GRAPHICS_VIC_BANK#0) ? (byte~) mode_hicolmcchar::$2 - (byte*~) mode_hicolmcchar::$3 ? (byte*) mode_hicolmcchar::COLORS#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_hicolmcchar::$4 ? ((word)) (byte*~) mode_hicolmcchar::$3 - (byte~) mode_hicolmcchar::$5 ? < (word~) mode_hicolmcchar::$4 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_hicolmcchar::$5 - (byte*~) mode_hicolmcchar::$6 ? (byte*) mode_hicolmcchar::COLORS#0 / (word/signed word/dword/signed dword) $400 - (word~) mode_hicolmcchar::$7 ? ((word)) (byte*~) mode_hicolmcchar::$6 - (byte~) mode_hicolmcchar::$8 ? > (word~) mode_hicolmcchar::$7 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_hicolmcchar::$8 - (byte) dtv_control#36 ? (byte) DTV_HIGHCOLOR#0 - *((byte*) DTV_CONTROL#0) ? (byte) DTV_HIGHCOLOR#0 - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) mode_hicolmcchar::$9 ? ((word)) (byte*) mode_hicolmcchar::CHARSET#0 - (word/signed dword/dword~) mode_hicolmcchar::$10 ? (word~) mode_hicolmcchar::$9 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_hicolmcchar::$11 ? ((byte)) (word/signed dword/dword~) mode_hicolmcchar::$10 - (byte/word/dword~) mode_hicolmcchar::$12 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_hicolmcchar::$11 - *((byte*) CIA2_PORT_A#0) ? (byte/word/dword~) mode_hicolmcchar::$12 - (byte~) mode_hicolmcchar::$13 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_hicolmcchar::$14 ? (byte~) mode_hicolmcchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_hicolmcchar::$14 - (byte~) mode_hicolmcchar::$15 ? (byte) VIC_CSEL#0 | (byte) VIC_MCM#0 - *((byte*) VIC_CONTROL2#0) ? (byte~) mode_hicolmcchar::$15 - (word~) mode_hicolmcchar::$16 ? ((word)) (byte*) mode_hicolmcchar::SCREEN#0 - (word~) mode_hicolmcchar::$17 ? (word~) mode_hicolmcchar::$16 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_hicolmcchar::$18 ? (word~) mode_hicolmcchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) mode_hicolmcchar::$19 ? ((word)) (byte*) mode_hicolmcchar::CHARSET#0 - (word~) mode_hicolmcchar::$20 ? (word~) mode_hicolmcchar::$19 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) mode_hicolmcchar::$21 ? (word~) mode_hicolmcchar::$20 / (word/signed word/dword/signed dword) $400 - (word/dword~) mode_hicolmcchar::$22 ? (word/signed dword/dword~) mode_hicolmcchar::$18 | (word/signed dword/dword~) mode_hicolmcchar::$21 - (byte~) mode_hicolmcchar::$23 ? ((byte)) (word/dword~) mode_hicolmcchar::$22 - *((byte*) VIC_MEMORY#0) ? (byte~) mode_hicolmcchar::$23 - (byte) mode_hicolmcchar::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_hicolmcchar::SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte*) mode_hicolmcchar::CHARSET#0 ← ((byte*)) (word/dword/signed dword) $9000 + (byte*) mode_hicolmcchar::COLORS#0 ← ((byte*)) (word/dword/signed dword) $8400 + (dword~) mode_hicolmcchar::$0 ← ((dword)) (byte*) mode_hicolmcchar::CHARSET#0 + (dword~) mode_hicolmcchar::$1 ← (dword~) mode_hicolmcchar::$0 / (dword/signed dword) $10000 + (byte~) mode_hicolmcchar::$2 ← ((byte)) (dword~) mode_hicolmcchar::$1 + *((byte*) DTV_GRAPHICS_VIC_BANK#0) ← (byte~) mode_hicolmcchar::$2 + (byte*~) mode_hicolmcchar::$3 ← (byte*) mode_hicolmcchar::COLORS#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_hicolmcchar::$4 ← ((word)) (byte*~) mode_hicolmcchar::$3 + (byte~) mode_hicolmcchar::$5 ← < (word~) mode_hicolmcchar::$4 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_hicolmcchar::$5 + (byte*~) mode_hicolmcchar::$6 ← (byte*) mode_hicolmcchar::COLORS#0 / (word/signed word/dword/signed dword) $400 + (word~) mode_hicolmcchar::$7 ← ((word)) (byte*~) mode_hicolmcchar::$6 + (byte~) mode_hicolmcchar::$8 ← > (word~) mode_hicolmcchar::$7 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_hicolmcchar::$8 + (byte) dtv_control#36 ← (byte) DTV_HIGHCOLOR#0 + *((byte*) DTV_CONTROL#0) ← (byte) DTV_HIGHCOLOR#0 + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) mode_hicolmcchar::$9 ← ((word)) (byte*) mode_hicolmcchar::CHARSET#0 + (word/signed dword/dword~) mode_hicolmcchar::$10 ← (word~) mode_hicolmcchar::$9 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_hicolmcchar::$11 ← ((byte)) (word/signed dword/dword~) mode_hicolmcchar::$10 + (byte/word/dword~) mode_hicolmcchar::$12 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte~) mode_hicolmcchar::$11 + *((byte*) CIA2_PORT_A#0) ← (byte/word/dword~) mode_hicolmcchar::$12 + (byte~) mode_hicolmcchar::$13 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_hicolmcchar::$14 ← (byte~) mode_hicolmcchar::$13 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_hicolmcchar::$14 + (byte~) mode_hicolmcchar::$15 ← (byte) VIC_CSEL#0 | (byte) VIC_MCM#0 + *((byte*) VIC_CONTROL2#0) ← (byte~) mode_hicolmcchar::$15 + (word~) mode_hicolmcchar::$16 ← ((word)) (byte*) mode_hicolmcchar::SCREEN#0 + (word~) mode_hicolmcchar::$17 ← (word~) mode_hicolmcchar::$16 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_hicolmcchar::$18 ← (word~) mode_hicolmcchar::$17 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) mode_hicolmcchar::$19 ← ((word)) (byte*) mode_hicolmcchar::CHARSET#0 + (word~) mode_hicolmcchar::$20 ← (word~) mode_hicolmcchar::$19 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) mode_hicolmcchar::$21 ← (word~) mode_hicolmcchar::$20 / (word/signed word/dword/signed dword) $400 + (word/dword~) mode_hicolmcchar::$22 ← (word/signed dword/dword~) mode_hicolmcchar::$18 | (word/signed dword/dword~) mode_hicolmcchar::$21 + (byte~) mode_hicolmcchar::$23 ← ((byte)) (word/dword~) mode_hicolmcchar::$22 + *((byte*) VIC_MEMORY#0) ← (byte~) mode_hicolmcchar::$23 + (byte) mode_hicolmcchar::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolmcchar::@1 mode_hicolmcchar::@1: scope:[mode_hicolmcchar] from mode_hicolmcchar mode_hicolmcchar::@1 - (byte) dtv_control#230 ? phi( mode_hicolmcchar/(byte) dtv_control#36 mode_hicolmcchar::@1/(byte) dtv_control#230 ) - (byte) mode_hicolmcchar::i#2 ? phi( mode_hicolmcchar/(byte) mode_hicolmcchar::i#0 mode_hicolmcchar::@1/(byte) mode_hicolmcchar::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ? (byte) mode_hicolmcchar::i#2 - (byte) mode_hicolmcchar::i#1 ? (byte) mode_hicolmcchar::i#2 + rangenext(0,$f) - (bool~) mode_hicolmcchar::$25 ? (byte) mode_hicolmcchar::i#1 != rangelast(0,$f) + (byte) dtv_control#230 ← phi( mode_hicolmcchar/(byte) dtv_control#36 mode_hicolmcchar::@1/(byte) dtv_control#230 ) + (byte) mode_hicolmcchar::i#2 ← phi( mode_hicolmcchar/(byte) mode_hicolmcchar::i#0 mode_hicolmcchar::@1/(byte) mode_hicolmcchar::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 + (byte) mode_hicolmcchar::i#1 ← (byte) mode_hicolmcchar::i#2 + rangenext(0,$f) + (bool~) mode_hicolmcchar::$25 ← (byte) mode_hicolmcchar::i#1 != rangelast(0,$f) if((bool~) mode_hicolmcchar::$25) goto mode_hicolmcchar::@1 to:mode_hicolmcchar::@2 mode_hicolmcchar::@2: scope:[mode_hicolmcchar] from mode_hicolmcchar::@1 - (byte) dtv_control#214 ? phi( mode_hicolmcchar::@1/(byte) dtv_control#230 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 - *((byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 - *((byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 - (byte*) mode_hicolmcchar::col#0 ? (byte*) mode_hicolmcchar::COLORS#0 - (byte*) mode_hicolmcchar::ch#0 ? (byte*) mode_hicolmcchar::SCREEN#0 - (byte) mode_hicolmcchar::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#214 ← phi( mode_hicolmcchar::@1/(byte) dtv_control#230 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 + *((byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 + *((byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 + (byte*) mode_hicolmcchar::col#0 ← (byte*) mode_hicolmcchar::COLORS#0 + (byte*) mode_hicolmcchar::ch#0 ← (byte*) mode_hicolmcchar::SCREEN#0 + (byte) mode_hicolmcchar::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolmcchar::@3 mode_hicolmcchar::@3: scope:[mode_hicolmcchar] from mode_hicolmcchar::@2 mode_hicolmcchar::@5 - (byte) dtv_control#199 ? phi( mode_hicolmcchar::@2/(byte) dtv_control#214 mode_hicolmcchar::@5/(byte) dtv_control#155 ) - (byte*) mode_hicolmcchar::ch#3 ? phi( mode_hicolmcchar::@2/(byte*) mode_hicolmcchar::ch#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::ch#4 ) - (byte*) mode_hicolmcchar::col#3 ? phi( mode_hicolmcchar::@2/(byte*) mode_hicolmcchar::col#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::col#4 ) - (byte) mode_hicolmcchar::cy#4 ? phi( mode_hicolmcchar::@2/(byte) mode_hicolmcchar::cy#0 mode_hicolmcchar::@5/(byte) mode_hicolmcchar::cy#1 ) - (byte) mode_hicolmcchar::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#199 ← phi( mode_hicolmcchar::@2/(byte) dtv_control#214 mode_hicolmcchar::@5/(byte) dtv_control#155 ) + (byte*) mode_hicolmcchar::ch#3 ← phi( mode_hicolmcchar::@2/(byte*) mode_hicolmcchar::ch#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::ch#4 ) + (byte*) mode_hicolmcchar::col#3 ← phi( mode_hicolmcchar::@2/(byte*) mode_hicolmcchar::col#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::col#4 ) + (byte) mode_hicolmcchar::cy#4 ← phi( mode_hicolmcchar::@2/(byte) mode_hicolmcchar::cy#0 mode_hicolmcchar::@5/(byte) mode_hicolmcchar::cy#1 ) + (byte) mode_hicolmcchar::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolmcchar::@4 mode_hicolmcchar::@4: scope:[mode_hicolmcchar] from mode_hicolmcchar::@3 mode_hicolmcchar::@4 - (byte) dtv_control#183 ? phi( mode_hicolmcchar::@3/(byte) dtv_control#199 mode_hicolmcchar::@4/(byte) dtv_control#183 ) - (byte*) mode_hicolmcchar::ch#2 ? phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::ch#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 ) - (byte*) mode_hicolmcchar::col#2 ? phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::col#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 ) - (byte) mode_hicolmcchar::cx#2 ? phi( mode_hicolmcchar::@3/(byte) mode_hicolmcchar::cx#0 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cx#1 ) - (byte) mode_hicolmcchar::cy#2 ? phi( mode_hicolmcchar::@3/(byte) mode_hicolmcchar::cy#4 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cy#2 ) - (byte~) mode_hicolmcchar::$26 ? (byte) mode_hicolmcchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_hicolmcchar::$27 ? (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_hicolmcchar::$28 ? (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_hicolmcchar::$29 ? (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 - (byte) mode_hicolmcchar::v#0 ? (byte~) mode_hicolmcchar::$29 - *((byte*) mode_hicolmcchar::col#2) ? (byte) mode_hicolmcchar::v#0 - (byte*) mode_hicolmcchar::col#1 ? ++ (byte*) mode_hicolmcchar::col#2 - *((byte*) mode_hicolmcchar::ch#2) ? (byte) mode_hicolmcchar::v#0 - (byte*) mode_hicolmcchar::ch#1 ? ++ (byte*) mode_hicolmcchar::ch#2 - (byte) mode_hicolmcchar::cx#1 ? (byte) mode_hicolmcchar::cx#2 + rangenext(0,$27) - (bool~) mode_hicolmcchar::$30 ? (byte) mode_hicolmcchar::cx#1 != rangelast(0,$27) + (byte) dtv_control#183 ← phi( mode_hicolmcchar::@3/(byte) dtv_control#199 mode_hicolmcchar::@4/(byte) dtv_control#183 ) + (byte*) mode_hicolmcchar::ch#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::ch#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 ) + (byte*) mode_hicolmcchar::col#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::col#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 ) + (byte) mode_hicolmcchar::cx#2 ← phi( mode_hicolmcchar::@3/(byte) mode_hicolmcchar::cx#0 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cx#1 ) + (byte) mode_hicolmcchar::cy#2 ← phi( mode_hicolmcchar::@3/(byte) mode_hicolmcchar::cy#4 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cy#2 ) + (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_hicolmcchar::$29 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 + (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$29 + *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 + (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 + *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 + (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 + (byte) mode_hicolmcchar::cx#1 ← (byte) mode_hicolmcchar::cx#2 + rangenext(0,$27) + (bool~) mode_hicolmcchar::$30 ← (byte) mode_hicolmcchar::cx#1 != rangelast(0,$27) if((bool~) mode_hicolmcchar::$30) goto mode_hicolmcchar::@4 to:mode_hicolmcchar::@5 mode_hicolmcchar::@5: scope:[mode_hicolmcchar] from mode_hicolmcchar::@4 - (byte) dtv_control#155 ? phi( mode_hicolmcchar::@4/(byte) dtv_control#183 ) - (byte*) mode_hicolmcchar::ch#4 ? phi( mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 ) - (byte*) mode_hicolmcchar::col#4 ? phi( mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 ) - (byte) mode_hicolmcchar::cy#3 ? phi( mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cy#2 ) - (byte) mode_hicolmcchar::cy#1 ? (byte) mode_hicolmcchar::cy#3 + rangenext(0,$18) - (bool~) mode_hicolmcchar::$31 ? (byte) mode_hicolmcchar::cy#1 != rangelast(0,$18) + (byte) dtv_control#155 ← phi( mode_hicolmcchar::@4/(byte) dtv_control#183 ) + (byte*) mode_hicolmcchar::ch#4 ← phi( mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 ) + (byte*) mode_hicolmcchar::col#4 ← phi( mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 ) + (byte) mode_hicolmcchar::cy#3 ← phi( mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cy#2 ) + (byte) mode_hicolmcchar::cy#1 ← (byte) mode_hicolmcchar::cy#3 + rangenext(0,$18) + (bool~) mode_hicolmcchar::$31 ← (byte) mode_hicolmcchar::cy#1 != rangelast(0,$18) if((bool~) mode_hicolmcchar::$31) goto mode_hicolmcchar::@3 to:mode_hicolmcchar::@6 mode_hicolmcchar::@6: scope:[mode_hicolmcchar] from mode_hicolmcchar::@5 - (byte) dtv_control#123 ? phi( mode_hicolmcchar::@5/(byte) dtv_control#155 ) + (byte) dtv_control#123 ← phi( mode_hicolmcchar::@5/(byte) dtv_control#155 ) call mode_ctrl to:mode_hicolmcchar::@7 mode_hicolmcchar::@7: scope:[mode_hicolmcchar] from mode_hicolmcchar::@6 - (byte) dtv_control#85 ? phi( mode_hicolmcchar::@6/(byte) dtv_control#16 ) - (byte) dtv_control#37 ? (byte) dtv_control#85 + (byte) dtv_control#85 ← phi( mode_hicolmcchar::@6/(byte) dtv_control#16 ) + (byte) dtv_control#37 ← (byte) dtv_control#85 to:mode_hicolmcchar::@return mode_hicolmcchar::@return: scope:[mode_hicolmcchar] from mode_hicolmcchar::@7 - (byte) dtv_control#86 ? phi( mode_hicolmcchar::@7/(byte) dtv_control#37 ) - (byte) dtv_control#38 ? (byte) dtv_control#86 + (byte) dtv_control#86 ← phi( mode_hicolmcchar::@7/(byte) dtv_control#37 ) + (byte) dtv_control#38 ← (byte) dtv_control#86 return to:@return mode_twoplanebitmap: scope:[mode_twoplanebitmap] from menu::@38 - (byte*) mode_twoplanebitmap::PLANEA#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte*) mode_twoplanebitmap::PLANEB#0 ? ((byte*)) (word/signed word/dword/signed dword) $6000 - (byte*) mode_twoplanebitmap::COLORS#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte~) mode_twoplanebitmap::$0 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - (byte) dtv_control#39 ? (byte~) mode_twoplanebitmap::$0 - (byte~) mode_twoplanebitmap::$1 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - *((byte*) DTV_CONTROL#0) ? (byte~) mode_twoplanebitmap::$1 - (byte~) mode_twoplanebitmap::$2 ? (byte) VIC_ECM#0 | (byte) VIC_BMM#0 - (byte~) mode_twoplanebitmap::$3 ? (byte~) mode_twoplanebitmap::$2 | (byte) VIC_DEN#0 - (byte~) mode_twoplanebitmap::$4 ? (byte~) mode_twoplanebitmap::$3 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_twoplanebitmap::$5 ? (byte~) mode_twoplanebitmap::$4 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_twoplanebitmap::$5 - *((byte*) VIC_CONTROL2#0) ? (byte) VIC_CSEL#0 - (byte~) mode_twoplanebitmap::$6 ? < (byte*) mode_twoplanebitmap::PLANEA#0 - *((byte*) DTV_PLANEA_START_LO#0) ? (byte~) mode_twoplanebitmap::$6 - (byte~) mode_twoplanebitmap::$7 ? > (byte*) mode_twoplanebitmap::PLANEA#0 - *((byte*) DTV_PLANEA_START_MI#0) ? (byte~) mode_twoplanebitmap::$7 - *((byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) mode_twoplanebitmap::$8 ? < (byte*) mode_twoplanebitmap::PLANEB#0 - *((byte*) DTV_PLANEB_START_LO#0) ? (byte~) mode_twoplanebitmap::$8 - (byte~) mode_twoplanebitmap::$9 ? > (byte*) mode_twoplanebitmap::PLANEB#0 - *((byte*) DTV_PLANEB_START_MI#0) ? (byte~) mode_twoplanebitmap::$9 - *((byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) mode_twoplanebitmap::$10 ? (byte*) mode_twoplanebitmap::COLORS#0 / (word/signed word/dword/signed dword) $400 - (byte~) mode_twoplanebitmap::$11 ? < (byte*~) mode_twoplanebitmap::$10 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_twoplanebitmap::$11 - (byte*~) mode_twoplanebitmap::$12 ? (byte*) mode_twoplanebitmap::COLORS#0 / (word/signed word/dword/signed dword) $400 - (byte~) mode_twoplanebitmap::$13 ? > (byte*~) mode_twoplanebitmap::$12 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_twoplanebitmap::$13 - (byte) mode_twoplanebitmap::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_twoplanebitmap::PLANEA#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte*) mode_twoplanebitmap::PLANEB#0 ← ((byte*)) (word/signed word/dword/signed dword) $6000 + (byte*) mode_twoplanebitmap::COLORS#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte~) mode_twoplanebitmap::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + (byte) dtv_control#39 ← (byte~) mode_twoplanebitmap::$0 + (byte~) mode_twoplanebitmap::$1 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + *((byte*) DTV_CONTROL#0) ← (byte~) mode_twoplanebitmap::$1 + (byte~) mode_twoplanebitmap::$2 ← (byte) VIC_ECM#0 | (byte) VIC_BMM#0 + (byte~) mode_twoplanebitmap::$3 ← (byte~) mode_twoplanebitmap::$2 | (byte) VIC_DEN#0 + (byte~) mode_twoplanebitmap::$4 ← (byte~) mode_twoplanebitmap::$3 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_twoplanebitmap::$5 ← (byte~) mode_twoplanebitmap::$4 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_twoplanebitmap::$5 + *((byte*) VIC_CONTROL2#0) ← (byte) VIC_CSEL#0 + (byte~) mode_twoplanebitmap::$6 ← < (byte*) mode_twoplanebitmap::PLANEA#0 + *((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_twoplanebitmap::$6 + (byte~) mode_twoplanebitmap::$7 ← > (byte*) mode_twoplanebitmap::PLANEA#0 + *((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_twoplanebitmap::$7 + *((byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) mode_twoplanebitmap::$8 ← < (byte*) mode_twoplanebitmap::PLANEB#0 + *((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_twoplanebitmap::$8 + (byte~) mode_twoplanebitmap::$9 ← > (byte*) mode_twoplanebitmap::PLANEB#0 + *((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_twoplanebitmap::$9 + *((byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) mode_twoplanebitmap::$10 ← (byte*) mode_twoplanebitmap::COLORS#0 / (word/signed word/dword/signed dword) $400 + (byte~) mode_twoplanebitmap::$11 ← < (byte*~) mode_twoplanebitmap::$10 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_twoplanebitmap::$11 + (byte*~) mode_twoplanebitmap::$12 ← (byte*) mode_twoplanebitmap::COLORS#0 / (word/signed word/dword/signed dword) $400 + (byte~) mode_twoplanebitmap::$13 ← > (byte*~) mode_twoplanebitmap::$12 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_twoplanebitmap::$13 + (byte) mode_twoplanebitmap::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_twoplanebitmap::@1 mode_twoplanebitmap::@1: scope:[mode_twoplanebitmap] from mode_twoplanebitmap mode_twoplanebitmap::@1 - (byte) dtv_control#292 ? phi( mode_twoplanebitmap/(byte) dtv_control#39 mode_twoplanebitmap::@1/(byte) dtv_control#292 ) - (byte) mode_twoplanebitmap::i#2 ? phi( mode_twoplanebitmap/(byte) mode_twoplanebitmap::i#0 mode_twoplanebitmap::@1/(byte) mode_twoplanebitmap::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ? (byte) mode_twoplanebitmap::i#2 - (byte) mode_twoplanebitmap::i#1 ? (byte) mode_twoplanebitmap::i#2 + rangenext(0,$f) - (bool~) mode_twoplanebitmap::$15 ? (byte) mode_twoplanebitmap::i#1 != rangelast(0,$f) + (byte) dtv_control#292 ← phi( mode_twoplanebitmap/(byte) dtv_control#39 mode_twoplanebitmap::@1/(byte) dtv_control#292 ) + (byte) mode_twoplanebitmap::i#2 ← phi( mode_twoplanebitmap/(byte) mode_twoplanebitmap::i#0 mode_twoplanebitmap::@1/(byte) mode_twoplanebitmap::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 + (byte) mode_twoplanebitmap::i#1 ← (byte) mode_twoplanebitmap::i#2 + rangenext(0,$f) + (bool~) mode_twoplanebitmap::$15 ← (byte) mode_twoplanebitmap::i#1 != rangelast(0,$f) if((bool~) mode_twoplanebitmap::$15) goto mode_twoplanebitmap::@1 to:mode_twoplanebitmap::@2 mode_twoplanebitmap::@2: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@1 - (byte) dtv_control#291 ? phi( mode_twoplanebitmap::@1/(byte) dtv_control#292 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $70 - *((byte*) BGCOL2#0) ? (byte/word/signed word/dword/signed dword) $d4 - (byte*) mode_twoplanebitmap::col#0 ? (byte*) mode_twoplanebitmap::COLORS#0 - (byte) mode_twoplanebitmap::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#291 ← phi( mode_twoplanebitmap::@1/(byte) dtv_control#292 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $70 + *((byte*) BGCOL2#0) ← (byte/word/signed word/dword/signed dword) $d4 + (byte*) mode_twoplanebitmap::col#0 ← (byte*) mode_twoplanebitmap::COLORS#0 + (byte) mode_twoplanebitmap::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_twoplanebitmap::@3 mode_twoplanebitmap::@3: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@2 mode_twoplanebitmap::@5 - (byte) dtv_control#288 ? phi( mode_twoplanebitmap::@2/(byte) dtv_control#291 mode_twoplanebitmap::@5/(byte) dtv_control#278 ) - (byte*) mode_twoplanebitmap::col#3 ? phi( mode_twoplanebitmap::@2/(byte*) mode_twoplanebitmap::col#0 mode_twoplanebitmap::@5/(byte*) mode_twoplanebitmap::col#4 ) - (byte) mode_twoplanebitmap::cy#4 ? phi( mode_twoplanebitmap::@2/(byte) mode_twoplanebitmap::cy#0 mode_twoplanebitmap::@5/(byte) mode_twoplanebitmap::cy#1 ) - (byte) mode_twoplanebitmap::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#288 ← phi( mode_twoplanebitmap::@2/(byte) dtv_control#291 mode_twoplanebitmap::@5/(byte) dtv_control#278 ) + (byte*) mode_twoplanebitmap::col#3 ← phi( mode_twoplanebitmap::@2/(byte*) mode_twoplanebitmap::col#0 mode_twoplanebitmap::@5/(byte*) mode_twoplanebitmap::col#4 ) + (byte) mode_twoplanebitmap::cy#4 ← phi( mode_twoplanebitmap::@2/(byte) mode_twoplanebitmap::cy#0 mode_twoplanebitmap::@5/(byte) mode_twoplanebitmap::cy#1 ) + (byte) mode_twoplanebitmap::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_twoplanebitmap::@4 mode_twoplanebitmap::@4: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@3 mode_twoplanebitmap::@4 - (byte) dtv_control#284 ? phi( mode_twoplanebitmap::@3/(byte) dtv_control#288 mode_twoplanebitmap::@4/(byte) dtv_control#284 ) - (byte*) mode_twoplanebitmap::col#2 ? phi( mode_twoplanebitmap::@3/(byte*) mode_twoplanebitmap::col#3 mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 ) - (byte) mode_twoplanebitmap::cx#2 ? phi( mode_twoplanebitmap::@3/(byte) mode_twoplanebitmap::cx#0 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cx#1 ) - (byte) mode_twoplanebitmap::cy#2 ? phi( mode_twoplanebitmap::@3/(byte) mode_twoplanebitmap::cy#4 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cy#2 ) - (byte~) mode_twoplanebitmap::$16 ? (byte) mode_twoplanebitmap::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_twoplanebitmap::$17 ? (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_twoplanebitmap::$18 ? (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_twoplanebitmap::$19 ? (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 - *((byte*) mode_twoplanebitmap::col#2) ? (byte~) mode_twoplanebitmap::$19 - (byte*) mode_twoplanebitmap::col#1 ? ++ (byte*) mode_twoplanebitmap::col#2 - (byte) mode_twoplanebitmap::cx#1 ? (byte) mode_twoplanebitmap::cx#2 + rangenext(0,$27) - (bool~) mode_twoplanebitmap::$20 ? (byte) mode_twoplanebitmap::cx#1 != rangelast(0,$27) + (byte) dtv_control#284 ← phi( mode_twoplanebitmap::@3/(byte) dtv_control#288 mode_twoplanebitmap::@4/(byte) dtv_control#284 ) + (byte*) mode_twoplanebitmap::col#2 ← phi( mode_twoplanebitmap::@3/(byte*) mode_twoplanebitmap::col#3 mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 ) + (byte) mode_twoplanebitmap::cx#2 ← phi( mode_twoplanebitmap::@3/(byte) mode_twoplanebitmap::cx#0 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cx#1 ) + (byte) mode_twoplanebitmap::cy#2 ← phi( mode_twoplanebitmap::@3/(byte) mode_twoplanebitmap::cy#4 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cy#2 ) + (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 + *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 + (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 + (byte) mode_twoplanebitmap::cx#1 ← (byte) mode_twoplanebitmap::cx#2 + rangenext(0,$27) + (bool~) mode_twoplanebitmap::$20 ← (byte) mode_twoplanebitmap::cx#1 != rangelast(0,$27) if((bool~) mode_twoplanebitmap::$20) goto mode_twoplanebitmap::@4 to:mode_twoplanebitmap::@5 mode_twoplanebitmap::@5: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@4 - (byte) dtv_control#278 ? phi( mode_twoplanebitmap::@4/(byte) dtv_control#284 ) - (byte*) mode_twoplanebitmap::col#4 ? phi( mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 ) - (byte) mode_twoplanebitmap::cy#3 ? phi( mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cy#2 ) - (byte) mode_twoplanebitmap::cy#1 ? (byte) mode_twoplanebitmap::cy#3 + rangenext(0,$18) - (bool~) mode_twoplanebitmap::$21 ? (byte) mode_twoplanebitmap::cy#1 != rangelast(0,$18) + (byte) dtv_control#278 ← phi( mode_twoplanebitmap::@4/(byte) dtv_control#284 ) + (byte*) mode_twoplanebitmap::col#4 ← phi( mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 ) + (byte) mode_twoplanebitmap::cy#3 ← phi( mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cy#2 ) + (byte) mode_twoplanebitmap::cy#1 ← (byte) mode_twoplanebitmap::cy#3 + rangenext(0,$18) + (bool~) mode_twoplanebitmap::$21 ← (byte) mode_twoplanebitmap::cy#1 != rangelast(0,$18) if((bool~) mode_twoplanebitmap::$21) goto mode_twoplanebitmap::@3 to:mode_twoplanebitmap::@6 mode_twoplanebitmap::@6: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@5 - (byte) dtv_control#273 ? phi( mode_twoplanebitmap::@5/(byte) dtv_control#278 ) - (byte*) mode_twoplanebitmap::gfxa#0 ? (byte*) mode_twoplanebitmap::PLANEA#0 - (byte) mode_twoplanebitmap::ay#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#273 ← phi( mode_twoplanebitmap::@5/(byte) dtv_control#278 ) + (byte*) mode_twoplanebitmap::gfxa#0 ← (byte*) mode_twoplanebitmap::PLANEA#0 + (byte) mode_twoplanebitmap::ay#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_twoplanebitmap::@7 mode_twoplanebitmap::@7: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13 mode_twoplanebitmap::@6 - (byte) dtv_control#266 ? phi( mode_twoplanebitmap::@13/(byte) dtv_control#231 mode_twoplanebitmap::@6/(byte) dtv_control#273 ) - (byte*) mode_twoplanebitmap::gfxa#7 ? phi( mode_twoplanebitmap::@13/(byte*) mode_twoplanebitmap::gfxa#8 mode_twoplanebitmap::@6/(byte*) mode_twoplanebitmap::gfxa#0 ) - (byte) mode_twoplanebitmap::ay#5 ? phi( mode_twoplanebitmap::@13/(byte) mode_twoplanebitmap::ay#1 mode_twoplanebitmap::@6/(byte) mode_twoplanebitmap::ay#0 ) - (byte) mode_twoplanebitmap::ax#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#266 ← phi( mode_twoplanebitmap::@13/(byte) dtv_control#231 mode_twoplanebitmap::@6/(byte) dtv_control#273 ) + (byte*) mode_twoplanebitmap::gfxa#7 ← phi( mode_twoplanebitmap::@13/(byte*) mode_twoplanebitmap::gfxa#8 mode_twoplanebitmap::@6/(byte*) mode_twoplanebitmap::gfxa#0 ) + (byte) mode_twoplanebitmap::ay#5 ← phi( mode_twoplanebitmap::@13/(byte) mode_twoplanebitmap::ay#1 mode_twoplanebitmap::@6/(byte) mode_twoplanebitmap::ay#0 ) + (byte) mode_twoplanebitmap::ax#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_twoplanebitmap::@8 mode_twoplanebitmap::@8: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@10 mode_twoplanebitmap::@7 - (byte) dtv_control#259 ? phi( mode_twoplanebitmap::@10/(byte) dtv_control#241 mode_twoplanebitmap::@7/(byte) dtv_control#266 ) - (byte) mode_twoplanebitmap::ax#5 ? phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ax#1 mode_twoplanebitmap::@7/(byte) mode_twoplanebitmap::ax#0 ) - (byte*) mode_twoplanebitmap::gfxa#5 ? phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@7/(byte*) mode_twoplanebitmap::gfxa#7 ) - (byte) mode_twoplanebitmap::ay#2 ? phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ay#4 mode_twoplanebitmap::@7/(byte) mode_twoplanebitmap::ay#5 ) - (byte~) mode_twoplanebitmap::$22 ? (byte) mode_twoplanebitmap::ay#2 & (byte/signed byte/word/signed word/dword/signed dword) 4 - (bool~) mode_twoplanebitmap::$23 ? (byte~) mode_twoplanebitmap::$22 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#259 ← phi( mode_twoplanebitmap::@10/(byte) dtv_control#241 mode_twoplanebitmap::@7/(byte) dtv_control#266 ) + (byte) mode_twoplanebitmap::ax#5 ← phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ax#1 mode_twoplanebitmap::@7/(byte) mode_twoplanebitmap::ax#0 ) + (byte*) mode_twoplanebitmap::gfxa#5 ← phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@7/(byte*) mode_twoplanebitmap::gfxa#7 ) + (byte) mode_twoplanebitmap::ay#2 ← phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ay#4 mode_twoplanebitmap::@7/(byte) mode_twoplanebitmap::ay#5 ) + (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#2 & (byte/signed byte/word/signed word/dword/signed dword) 4 + (bool~) mode_twoplanebitmap::$23 ← (byte~) mode_twoplanebitmap::$22 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mode_twoplanebitmap::$23) goto mode_twoplanebitmap::@9 to:mode_twoplanebitmap::@11 mode_twoplanebitmap::@9: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@8 - (byte) dtv_control#250 ? phi( mode_twoplanebitmap::@8/(byte) dtv_control#259 ) - (byte) mode_twoplanebitmap::ay#7 ? phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ay#2 ) - (byte) mode_twoplanebitmap::ax#4 ? phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ax#5 ) - (byte*) mode_twoplanebitmap::gfxa#3 ? phi( mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#5 ) - *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) mode_twoplanebitmap::gfxa#1 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 + (byte) dtv_control#250 ← phi( mode_twoplanebitmap::@8/(byte) dtv_control#259 ) + (byte) mode_twoplanebitmap::ay#7 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ay#2 ) + (byte) mode_twoplanebitmap::ax#4 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ax#5 ) + (byte*) mode_twoplanebitmap::gfxa#3 ← phi( mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#5 ) + *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 to:mode_twoplanebitmap::@10 mode_twoplanebitmap::@11: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@8 - (byte) dtv_control#249 ? phi( mode_twoplanebitmap::@8/(byte) dtv_control#259 ) - (byte) mode_twoplanebitmap::ay#6 ? phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ay#2 ) - (byte) mode_twoplanebitmap::ax#3 ? phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ax#5 ) - (byte*) mode_twoplanebitmap::gfxa#4 ? phi( mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#5 ) - *((byte*) mode_twoplanebitmap::gfxa#4) ? (byte/word/signed word/dword/signed dword) $ff - (byte*) mode_twoplanebitmap::gfxa#2 ? ++ (byte*) mode_twoplanebitmap::gfxa#4 + (byte) dtv_control#249 ← phi( mode_twoplanebitmap::@8/(byte) dtv_control#259 ) + (byte) mode_twoplanebitmap::ay#6 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ay#2 ) + (byte) mode_twoplanebitmap::ax#3 ← phi( mode_twoplanebitmap::@8/(byte) mode_twoplanebitmap::ax#5 ) + (byte*) mode_twoplanebitmap::gfxa#4 ← phi( mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#5 ) + *((byte*) mode_twoplanebitmap::gfxa#4) ← (byte/word/signed word/dword/signed dword) $ff + (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#4 to:mode_twoplanebitmap::@10 mode_twoplanebitmap::@10: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@11 mode_twoplanebitmap::@9 - (byte) dtv_control#241 ? phi( mode_twoplanebitmap::@11/(byte) dtv_control#249 mode_twoplanebitmap::@9/(byte) dtv_control#250 ) - (byte*) mode_twoplanebitmap::gfxa#6 ? phi( mode_twoplanebitmap::@11/(byte*) mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::@9/(byte*) mode_twoplanebitmap::gfxa#1 ) - (byte) mode_twoplanebitmap::ay#4 ? phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ay#6 mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ay#7 ) - (byte) mode_twoplanebitmap::ax#2 ? phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ax#3 mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ax#4 ) - (byte) mode_twoplanebitmap::ax#1 ? (byte) mode_twoplanebitmap::ax#2 + rangenext(0,$27) - (bool~) mode_twoplanebitmap::$24 ? (byte) mode_twoplanebitmap::ax#1 != rangelast(0,$27) + (byte) dtv_control#241 ← phi( mode_twoplanebitmap::@11/(byte) dtv_control#249 mode_twoplanebitmap::@9/(byte) dtv_control#250 ) + (byte*) mode_twoplanebitmap::gfxa#6 ← phi( mode_twoplanebitmap::@11/(byte*) mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::@9/(byte*) mode_twoplanebitmap::gfxa#1 ) + (byte) mode_twoplanebitmap::ay#4 ← phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ay#6 mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ay#7 ) + (byte) mode_twoplanebitmap::ax#2 ← phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ax#3 mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ax#4 ) + (byte) mode_twoplanebitmap::ax#1 ← (byte) mode_twoplanebitmap::ax#2 + rangenext(0,$27) + (bool~) mode_twoplanebitmap::$24 ← (byte) mode_twoplanebitmap::ax#1 != rangelast(0,$27) if((bool~) mode_twoplanebitmap::$24) goto mode_twoplanebitmap::@8 to:mode_twoplanebitmap::@13 mode_twoplanebitmap::@13: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@10 - (byte) dtv_control#231 ? phi( mode_twoplanebitmap::@10/(byte) dtv_control#241 ) - (byte*) mode_twoplanebitmap::gfxa#8 ? phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#6 ) - (byte) mode_twoplanebitmap::ay#3 ? phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ay#4 ) - (byte) mode_twoplanebitmap::ay#1 ? (byte) mode_twoplanebitmap::ay#3 + rangenext(0,$c7) - (bool~) mode_twoplanebitmap::$25 ? (byte) mode_twoplanebitmap::ay#1 != rangelast(0,$c7) + (byte) dtv_control#231 ← phi( mode_twoplanebitmap::@10/(byte) dtv_control#241 ) + (byte*) mode_twoplanebitmap::gfxa#8 ← phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#6 ) + (byte) mode_twoplanebitmap::ay#3 ← phi( mode_twoplanebitmap::@10/(byte) mode_twoplanebitmap::ay#4 ) + (byte) mode_twoplanebitmap::ay#1 ← (byte) mode_twoplanebitmap::ay#3 + rangenext(0,$c7) + (bool~) mode_twoplanebitmap::$25 ← (byte) mode_twoplanebitmap::ay#1 != rangelast(0,$c7) if((bool~) mode_twoplanebitmap::$25) goto mode_twoplanebitmap::@7 to:mode_twoplanebitmap::@14 mode_twoplanebitmap::@14: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13 - (byte) dtv_control#215 ? phi( mode_twoplanebitmap::@13/(byte) dtv_control#231 ) - (byte*) mode_twoplanebitmap::gfxb#0 ? (byte*) mode_twoplanebitmap::PLANEB#0 - (byte) mode_twoplanebitmap::by#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#215 ← phi( mode_twoplanebitmap::@13/(byte) dtv_control#231 ) + (byte*) mode_twoplanebitmap::gfxb#0 ← (byte*) mode_twoplanebitmap::PLANEB#0 + (byte) mode_twoplanebitmap::by#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_twoplanebitmap::@15 mode_twoplanebitmap::@15: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@14 mode_twoplanebitmap::@17 - (byte) dtv_control#200 ? phi( mode_twoplanebitmap::@14/(byte) dtv_control#215 mode_twoplanebitmap::@17/(byte) dtv_control#156 ) - (byte) mode_twoplanebitmap::by#4 ? phi( mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::by#0 mode_twoplanebitmap::@17/(byte) mode_twoplanebitmap::by#1 ) - (byte*) mode_twoplanebitmap::gfxb#3 ? phi( mode_twoplanebitmap::@14/(byte*) mode_twoplanebitmap::gfxb#0 mode_twoplanebitmap::@17/(byte*) mode_twoplanebitmap::gfxb#4 ) - (byte) mode_twoplanebitmap::bx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#200 ← phi( mode_twoplanebitmap::@14/(byte) dtv_control#215 mode_twoplanebitmap::@17/(byte) dtv_control#156 ) + (byte) mode_twoplanebitmap::by#4 ← phi( mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::by#0 mode_twoplanebitmap::@17/(byte) mode_twoplanebitmap::by#1 ) + (byte*) mode_twoplanebitmap::gfxb#3 ← phi( mode_twoplanebitmap::@14/(byte*) mode_twoplanebitmap::gfxb#0 mode_twoplanebitmap::@17/(byte*) mode_twoplanebitmap::gfxb#4 ) + (byte) mode_twoplanebitmap::bx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_twoplanebitmap::@16 mode_twoplanebitmap::@16: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@15 mode_twoplanebitmap::@16 - (byte) dtv_control#184 ? phi( mode_twoplanebitmap::@15/(byte) dtv_control#200 mode_twoplanebitmap::@16/(byte) dtv_control#184 ) - (byte) mode_twoplanebitmap::by#3 ? phi( mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::by#4 mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::by#3 ) - (byte) mode_twoplanebitmap::bx#2 ? phi( mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::bx#0 mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::bx#1 ) - (byte*) mode_twoplanebitmap::gfxb#2 ? phi( mode_twoplanebitmap::@15/(byte*) mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::@16/(byte*) mode_twoplanebitmap::gfxb#1 ) - *((byte*) mode_twoplanebitmap::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte*) mode_twoplanebitmap::gfxb#1 ? ++ (byte*) mode_twoplanebitmap::gfxb#2 - (byte) mode_twoplanebitmap::bx#1 ? (byte) mode_twoplanebitmap::bx#2 + rangenext(0,$27) - (bool~) mode_twoplanebitmap::$26 ? (byte) mode_twoplanebitmap::bx#1 != rangelast(0,$27) + (byte) dtv_control#184 ← phi( mode_twoplanebitmap::@15/(byte) dtv_control#200 mode_twoplanebitmap::@16/(byte) dtv_control#184 ) + (byte) mode_twoplanebitmap::by#3 ← phi( mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::by#4 mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::by#3 ) + (byte) mode_twoplanebitmap::bx#2 ← phi( mode_twoplanebitmap::@15/(byte) mode_twoplanebitmap::bx#0 mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::bx#1 ) + (byte*) mode_twoplanebitmap::gfxb#2 ← phi( mode_twoplanebitmap::@15/(byte*) mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::@16/(byte*) mode_twoplanebitmap::gfxb#1 ) + *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 + (byte) mode_twoplanebitmap::bx#1 ← (byte) mode_twoplanebitmap::bx#2 + rangenext(0,$27) + (bool~) mode_twoplanebitmap::$26 ← (byte) mode_twoplanebitmap::bx#1 != rangelast(0,$27) if((bool~) mode_twoplanebitmap::$26) goto mode_twoplanebitmap::@16 to:mode_twoplanebitmap::@17 mode_twoplanebitmap::@17: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@16 - (byte) dtv_control#156 ? phi( mode_twoplanebitmap::@16/(byte) dtv_control#184 ) - (byte*) mode_twoplanebitmap::gfxb#4 ? phi( mode_twoplanebitmap::@16/(byte*) mode_twoplanebitmap::gfxb#1 ) - (byte) mode_twoplanebitmap::by#2 ? phi( mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::by#3 ) - (byte) mode_twoplanebitmap::by#1 ? (byte) mode_twoplanebitmap::by#2 + rangenext(0,$c7) - (bool~) mode_twoplanebitmap::$27 ? (byte) mode_twoplanebitmap::by#1 != rangelast(0,$c7) + (byte) dtv_control#156 ← phi( mode_twoplanebitmap::@16/(byte) dtv_control#184 ) + (byte*) mode_twoplanebitmap::gfxb#4 ← phi( mode_twoplanebitmap::@16/(byte*) mode_twoplanebitmap::gfxb#1 ) + (byte) mode_twoplanebitmap::by#2 ← phi( mode_twoplanebitmap::@16/(byte) mode_twoplanebitmap::by#3 ) + (byte) mode_twoplanebitmap::by#1 ← (byte) mode_twoplanebitmap::by#2 + rangenext(0,$c7) + (bool~) mode_twoplanebitmap::$27 ← (byte) mode_twoplanebitmap::by#1 != rangelast(0,$c7) if((bool~) mode_twoplanebitmap::$27) goto mode_twoplanebitmap::@15 to:mode_twoplanebitmap::@18 mode_twoplanebitmap::@18: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@17 - (byte) dtv_control#124 ? phi( mode_twoplanebitmap::@17/(byte) dtv_control#156 ) + (byte) dtv_control#124 ← phi( mode_twoplanebitmap::@17/(byte) dtv_control#156 ) call mode_ctrl to:mode_twoplanebitmap::@19 mode_twoplanebitmap::@19: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@18 - (byte) dtv_control#87 ? phi( mode_twoplanebitmap::@18/(byte) dtv_control#16 ) - (byte) dtv_control#40 ? (byte) dtv_control#87 + (byte) dtv_control#87 ← phi( mode_twoplanebitmap::@18/(byte) dtv_control#16 ) + (byte) dtv_control#40 ← (byte) dtv_control#87 to:mode_twoplanebitmap::@return mode_twoplanebitmap::@return: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@19 - (byte) dtv_control#88 ? phi( mode_twoplanebitmap::@19/(byte) dtv_control#40 ) - (byte) dtv_control#41 ? (byte) dtv_control#88 + (byte) dtv_control#88 ← phi( mode_twoplanebitmap::@19/(byte) dtv_control#40 ) + (byte) dtv_control#41 ← (byte) dtv_control#88 return to:@return mode_sixsfred: scope:[mode_sixsfred] from menu::@40 - (byte*) mode_sixsfred::PLANEA#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte*) mode_sixsfred::PLANEB#0 ? ((byte*)) (word/signed word/dword/signed dword) $6000 - (byte*) mode_sixsfred::COLORS#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte~) mode_sixsfred::$0 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - (byte) dtv_control#42 ? (byte~) mode_sixsfred::$0 - (byte~) mode_sixsfred::$1 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - *((byte*) DTV_CONTROL#0) ? (byte~) mode_sixsfred::$1 - (byte~) mode_sixsfred::$2 ? (byte) VIC_ECM#0 | (byte) VIC_BMM#0 - (byte~) mode_sixsfred::$3 ? (byte~) mode_sixsfred::$2 | (byte) VIC_DEN#0 - (byte~) mode_sixsfred::$4 ? (byte~) mode_sixsfred::$3 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_sixsfred::$5 ? (byte~) mode_sixsfred::$4 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_sixsfred::$5 - (byte~) mode_sixsfred::$6 ? (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 - *((byte*) VIC_CONTROL2#0) ? (byte~) mode_sixsfred::$6 - (byte~) mode_sixsfred::$7 ? < (byte*) mode_sixsfred::PLANEA#0 - *((byte*) DTV_PLANEA_START_LO#0) ? (byte~) mode_sixsfred::$7 - (byte~) mode_sixsfred::$8 ? > (byte*) mode_sixsfred::PLANEA#0 - *((byte*) DTV_PLANEA_START_MI#0) ? (byte~) mode_sixsfred::$8 - *((byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) mode_sixsfred::$9 ? < (byte*) mode_sixsfred::PLANEB#0 - *((byte*) DTV_PLANEB_START_LO#0) ? (byte~) mode_sixsfred::$9 - (byte~) mode_sixsfred::$10 ? > (byte*) mode_sixsfred::PLANEB#0 - *((byte*) DTV_PLANEB_START_MI#0) ? (byte~) mode_sixsfred::$10 - *((byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) mode_sixsfred::$11 ? (byte*) mode_sixsfred::COLORS#0 / (word/signed word/dword/signed dword) $400 - (byte~) mode_sixsfred::$12 ? < (byte*~) mode_sixsfred::$11 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_sixsfred::$12 - (byte*~) mode_sixsfred::$13 ? (byte*) mode_sixsfred::COLORS#0 / (word/signed word/dword/signed dword) $400 - (byte~) mode_sixsfred::$14 ? > (byte*~) mode_sixsfred::$13 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_sixsfred::$14 - (byte) mode_sixsfred::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_sixsfred::PLANEA#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte*) mode_sixsfred::PLANEB#0 ← ((byte*)) (word/signed word/dword/signed dword) $6000 + (byte*) mode_sixsfred::COLORS#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte~) mode_sixsfred::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + (byte) dtv_control#42 ← (byte~) mode_sixsfred::$0 + (byte~) mode_sixsfred::$1 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + *((byte*) DTV_CONTROL#0) ← (byte~) mode_sixsfred::$1 + (byte~) mode_sixsfred::$2 ← (byte) VIC_ECM#0 | (byte) VIC_BMM#0 + (byte~) mode_sixsfred::$3 ← (byte~) mode_sixsfred::$2 | (byte) VIC_DEN#0 + (byte~) mode_sixsfred::$4 ← (byte~) mode_sixsfred::$3 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_sixsfred::$5 ← (byte~) mode_sixsfred::$4 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_sixsfred::$5 + (byte~) mode_sixsfred::$6 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 + *((byte*) VIC_CONTROL2#0) ← (byte~) mode_sixsfred::$6 + (byte~) mode_sixsfred::$7 ← < (byte*) mode_sixsfred::PLANEA#0 + *((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_sixsfred::$7 + (byte~) mode_sixsfred::$8 ← > (byte*) mode_sixsfred::PLANEA#0 + *((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_sixsfred::$8 + *((byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) mode_sixsfred::$9 ← < (byte*) mode_sixsfred::PLANEB#0 + *((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_sixsfred::$9 + (byte~) mode_sixsfred::$10 ← > (byte*) mode_sixsfred::PLANEB#0 + *((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_sixsfred::$10 + *((byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) mode_sixsfred::$11 ← (byte*) mode_sixsfred::COLORS#0 / (word/signed word/dword/signed dword) $400 + (byte~) mode_sixsfred::$12 ← < (byte*~) mode_sixsfred::$11 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_sixsfred::$12 + (byte*~) mode_sixsfred::$13 ← (byte*) mode_sixsfred::COLORS#0 / (word/signed word/dword/signed dword) $400 + (byte~) mode_sixsfred::$14 ← > (byte*~) mode_sixsfred::$13 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_sixsfred::$14 + (byte) mode_sixsfred::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@1 mode_sixsfred::@1: scope:[mode_sixsfred] from mode_sixsfred mode_sixsfred::@1 - (byte) dtv_control#289 ? phi( mode_sixsfred/(byte) dtv_control#42 mode_sixsfred::@1/(byte) dtv_control#289 ) - (byte) mode_sixsfred::i#2 ? phi( mode_sixsfred/(byte) mode_sixsfred::i#0 mode_sixsfred::@1/(byte) mode_sixsfred::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ? (byte) mode_sixsfred::i#2 - (byte) mode_sixsfred::i#1 ? (byte) mode_sixsfred::i#2 + rangenext(0,$f) - (bool~) mode_sixsfred::$16 ? (byte) mode_sixsfred::i#1 != rangelast(0,$f) + (byte) dtv_control#289 ← phi( mode_sixsfred/(byte) dtv_control#42 mode_sixsfred::@1/(byte) dtv_control#289 ) + (byte) mode_sixsfred::i#2 ← phi( mode_sixsfred/(byte) mode_sixsfred::i#0 mode_sixsfred::@1/(byte) mode_sixsfred::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 + (byte) mode_sixsfred::i#1 ← (byte) mode_sixsfred::i#2 + rangenext(0,$f) + (bool~) mode_sixsfred::$16 ← (byte) mode_sixsfred::i#1 != rangelast(0,$f) if((bool~) mode_sixsfred::$16) goto mode_sixsfred::@1 to:mode_sixsfred::@2 mode_sixsfred::@2: scope:[mode_sixsfred] from mode_sixsfred::@1 - (byte) dtv_control#285 ? phi( mode_sixsfred::@1/(byte) dtv_control#289 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) mode_sixsfred::col#0 ? (byte*) mode_sixsfred::COLORS#0 - (byte) mode_sixsfred::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#285 ← phi( mode_sixsfred::@1/(byte) dtv_control#289 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_sixsfred::col#0 ← (byte*) mode_sixsfred::COLORS#0 + (byte) mode_sixsfred::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@3 mode_sixsfred::@3: scope:[mode_sixsfred] from mode_sixsfred::@2 mode_sixsfred::@5 - (byte) dtv_control#279 ? phi( mode_sixsfred::@2/(byte) dtv_control#285 mode_sixsfred::@5/(byte) dtv_control#267 ) - (byte*) mode_sixsfred::col#3 ? phi( mode_sixsfred::@2/(byte*) mode_sixsfred::col#0 mode_sixsfred::@5/(byte*) mode_sixsfred::col#4 ) - (byte) mode_sixsfred::cy#4 ? phi( mode_sixsfred::@2/(byte) mode_sixsfred::cy#0 mode_sixsfred::@5/(byte) mode_sixsfred::cy#1 ) - (byte) mode_sixsfred::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#279 ← phi( mode_sixsfred::@2/(byte) dtv_control#285 mode_sixsfred::@5/(byte) dtv_control#267 ) + (byte*) mode_sixsfred::col#3 ← phi( mode_sixsfred::@2/(byte*) mode_sixsfred::col#0 mode_sixsfred::@5/(byte*) mode_sixsfred::col#4 ) + (byte) mode_sixsfred::cy#4 ← phi( mode_sixsfred::@2/(byte) mode_sixsfred::cy#0 mode_sixsfred::@5/(byte) mode_sixsfred::cy#1 ) + (byte) mode_sixsfred::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@4 mode_sixsfred::@4: scope:[mode_sixsfred] from mode_sixsfred::@3 mode_sixsfred::@4 - (byte) dtv_control#274 ? phi( mode_sixsfred::@3/(byte) dtv_control#279 mode_sixsfred::@4/(byte) dtv_control#274 ) - (byte*) mode_sixsfred::col#2 ? phi( mode_sixsfred::@3/(byte*) mode_sixsfred::col#3 mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 ) - (byte) mode_sixsfred::cy#2 ? phi( mode_sixsfred::@3/(byte) mode_sixsfred::cy#4 mode_sixsfred::@4/(byte) mode_sixsfred::cy#2 ) - (byte) mode_sixsfred::cx#2 ? phi( mode_sixsfred::@3/(byte) mode_sixsfred::cx#0 mode_sixsfred::@4/(byte) mode_sixsfred::cx#1 ) - (byte~) mode_sixsfred::$17 ? (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#2 - (byte~) mode_sixsfred::$18 ? (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f - *((byte*) mode_sixsfred::col#2) ? (byte~) mode_sixsfred::$18 - (byte*) mode_sixsfred::col#1 ? ++ (byte*) mode_sixsfred::col#2 - (byte) mode_sixsfred::cx#1 ? (byte) mode_sixsfred::cx#2 + rangenext(0,$27) - (bool~) mode_sixsfred::$19 ? (byte) mode_sixsfred::cx#1 != rangelast(0,$27) + (byte) dtv_control#274 ← phi( mode_sixsfred::@3/(byte) dtv_control#279 mode_sixsfred::@4/(byte) dtv_control#274 ) + (byte*) mode_sixsfred::col#2 ← phi( mode_sixsfred::@3/(byte*) mode_sixsfred::col#3 mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 ) + (byte) mode_sixsfred::cy#2 ← phi( mode_sixsfred::@3/(byte) mode_sixsfred::cy#4 mode_sixsfred::@4/(byte) mode_sixsfred::cy#2 ) + (byte) mode_sixsfred::cx#2 ← phi( mode_sixsfred::@3/(byte) mode_sixsfred::cx#0 mode_sixsfred::@4/(byte) mode_sixsfred::cx#1 ) + (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#2 + (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f + *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 + (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 + (byte) mode_sixsfred::cx#1 ← (byte) mode_sixsfred::cx#2 + rangenext(0,$27) + (bool~) mode_sixsfred::$19 ← (byte) mode_sixsfred::cx#1 != rangelast(0,$27) if((bool~) mode_sixsfred::$19) goto mode_sixsfred::@4 to:mode_sixsfred::@5 mode_sixsfred::@5: scope:[mode_sixsfred] from mode_sixsfred::@4 - (byte) dtv_control#267 ? phi( mode_sixsfred::@4/(byte) dtv_control#274 ) - (byte*) mode_sixsfred::col#4 ? phi( mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 ) - (byte) mode_sixsfred::cy#3 ? phi( mode_sixsfred::@4/(byte) mode_sixsfred::cy#2 ) - (byte) mode_sixsfred::cy#1 ? (byte) mode_sixsfred::cy#3 + rangenext(0,$18) - (bool~) mode_sixsfred::$20 ? (byte) mode_sixsfred::cy#1 != rangelast(0,$18) + (byte) dtv_control#267 ← phi( mode_sixsfred::@4/(byte) dtv_control#274 ) + (byte*) mode_sixsfred::col#4 ← phi( mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 ) + (byte) mode_sixsfred::cy#3 ← phi( mode_sixsfred::@4/(byte) mode_sixsfred::cy#2 ) + (byte) mode_sixsfred::cy#1 ← (byte) mode_sixsfred::cy#3 + rangenext(0,$18) + (bool~) mode_sixsfred::$20 ← (byte) mode_sixsfred::cy#1 != rangelast(0,$18) if((bool~) mode_sixsfred::$20) goto mode_sixsfred::@3 to:mode_sixsfred::@6 mode_sixsfred::@6: scope:[mode_sixsfred] from mode_sixsfred::@5 - (byte) dtv_control#260 ? phi( mode_sixsfred::@5/(byte) dtv_control#267 ) - (byte*) mode_sixsfred::gfxa#0 ? (byte*) mode_sixsfred::PLANEA#0 - (byte[]) mode_sixsfred::row_bitmask#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $55, (byte/word/signed word/dword/signed dword) $aa, (byte/word/signed word/dword/signed dword) $ff } - (byte) mode_sixsfred::ay#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#260 ← phi( mode_sixsfred::@5/(byte) dtv_control#267 ) + (byte*) mode_sixsfred::gfxa#0 ← (byte*) mode_sixsfred::PLANEA#0 + (byte[]) mode_sixsfred::row_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $55, (byte/word/signed word/dword/signed dword) $aa, (byte/word/signed word/dword/signed dword) $ff } + (byte) mode_sixsfred::ay#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@7 mode_sixsfred::@7: scope:[mode_sixsfred] from mode_sixsfred::@6 mode_sixsfred::@9 - (byte) dtv_control#251 ? phi( mode_sixsfred::@6/(byte) dtv_control#260 mode_sixsfred::@9/(byte) dtv_control#232 ) - (byte*) mode_sixsfred::gfxa#3 ? phi( mode_sixsfred::@6/(byte*) mode_sixsfred::gfxa#0 mode_sixsfred::@9/(byte*) mode_sixsfred::gfxa#4 ) - (byte) mode_sixsfred::ay#4 ? phi( mode_sixsfred::@6/(byte) mode_sixsfred::ay#0 mode_sixsfred::@9/(byte) mode_sixsfred::ay#1 ) - (byte) mode_sixsfred::ax#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#251 ← phi( mode_sixsfred::@6/(byte) dtv_control#260 mode_sixsfred::@9/(byte) dtv_control#232 ) + (byte*) mode_sixsfred::gfxa#3 ← phi( mode_sixsfred::@6/(byte*) mode_sixsfred::gfxa#0 mode_sixsfred::@9/(byte*) mode_sixsfred::gfxa#4 ) + (byte) mode_sixsfred::ay#4 ← phi( mode_sixsfred::@6/(byte) mode_sixsfred::ay#0 mode_sixsfred::@9/(byte) mode_sixsfred::ay#1 ) + (byte) mode_sixsfred::ax#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@8 mode_sixsfred::@8: scope:[mode_sixsfred] from mode_sixsfred::@7 mode_sixsfred::@8 - (byte) dtv_control#242 ? phi( mode_sixsfred::@7/(byte) dtv_control#251 mode_sixsfred::@8/(byte) dtv_control#242 ) - (byte) mode_sixsfred::ax#2 ? phi( mode_sixsfred::@7/(byte) mode_sixsfred::ax#0 mode_sixsfred::@8/(byte) mode_sixsfred::ax#1 ) - (byte*) mode_sixsfred::gfxa#2 ? phi( mode_sixsfred::@7/(byte*) mode_sixsfred::gfxa#3 mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 ) - (byte) mode_sixsfred::ay#2 ? phi( mode_sixsfred::@7/(byte) mode_sixsfred::ay#4 mode_sixsfred::@8/(byte) mode_sixsfred::ay#2 ) - (byte~) mode_sixsfred::$21 ? (byte) mode_sixsfred::ay#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) mode_sixsfred::$22 ? (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) mode_sixsfred::row#0 ? (byte~) mode_sixsfred::$22 - *((byte*) mode_sixsfred::gfxa#2) ? *((byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) - (byte*) mode_sixsfred::gfxa#1 ? ++ (byte*) mode_sixsfred::gfxa#2 - (byte) mode_sixsfred::ax#1 ? (byte) mode_sixsfred::ax#2 + rangenext(0,$27) - (bool~) mode_sixsfred::$23 ? (byte) mode_sixsfred::ax#1 != rangelast(0,$27) + (byte) dtv_control#242 ← phi( mode_sixsfred::@7/(byte) dtv_control#251 mode_sixsfred::@8/(byte) dtv_control#242 ) + (byte) mode_sixsfred::ax#2 ← phi( mode_sixsfred::@7/(byte) mode_sixsfred::ax#0 mode_sixsfred::@8/(byte) mode_sixsfred::ax#1 ) + (byte*) mode_sixsfred::gfxa#2 ← phi( mode_sixsfred::@7/(byte*) mode_sixsfred::gfxa#3 mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 ) + (byte) mode_sixsfred::ay#2 ← phi( mode_sixsfred::@7/(byte) mode_sixsfred::ay#4 mode_sixsfred::@8/(byte) mode_sixsfred::ay#2 ) + (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) mode_sixsfred::$22 ← (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$22 + *((byte*) mode_sixsfred::gfxa#2) ← *((byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) + (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 + (byte) mode_sixsfred::ax#1 ← (byte) mode_sixsfred::ax#2 + rangenext(0,$27) + (bool~) mode_sixsfred::$23 ← (byte) mode_sixsfred::ax#1 != rangelast(0,$27) if((bool~) mode_sixsfred::$23) goto mode_sixsfred::@8 to:mode_sixsfred::@9 mode_sixsfred::@9: scope:[mode_sixsfred] from mode_sixsfred::@8 - (byte) dtv_control#232 ? phi( mode_sixsfred::@8/(byte) dtv_control#242 ) - (byte*) mode_sixsfred::gfxa#4 ? phi( mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 ) - (byte) mode_sixsfred::ay#3 ? phi( mode_sixsfred::@8/(byte) mode_sixsfred::ay#2 ) - (byte) mode_sixsfred::ay#1 ? (byte) mode_sixsfred::ay#3 + rangenext(0,$c7) - (bool~) mode_sixsfred::$24 ? (byte) mode_sixsfred::ay#1 != rangelast(0,$c7) + (byte) dtv_control#232 ← phi( mode_sixsfred::@8/(byte) dtv_control#242 ) + (byte*) mode_sixsfred::gfxa#4 ← phi( mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 ) + (byte) mode_sixsfred::ay#3 ← phi( mode_sixsfred::@8/(byte) mode_sixsfred::ay#2 ) + (byte) mode_sixsfred::ay#1 ← (byte) mode_sixsfred::ay#3 + rangenext(0,$c7) + (bool~) mode_sixsfred::$24 ← (byte) mode_sixsfred::ay#1 != rangelast(0,$c7) if((bool~) mode_sixsfred::$24) goto mode_sixsfred::@7 to:mode_sixsfred::@10 mode_sixsfred::@10: scope:[mode_sixsfred] from mode_sixsfred::@9 - (byte) dtv_control#216 ? phi( mode_sixsfred::@9/(byte) dtv_control#232 ) - (byte*) mode_sixsfred::gfxb#0 ? (byte*) mode_sixsfred::PLANEB#0 - (byte) mode_sixsfred::by#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#216 ← phi( mode_sixsfred::@9/(byte) dtv_control#232 ) + (byte*) mode_sixsfred::gfxb#0 ← (byte*) mode_sixsfred::PLANEB#0 + (byte) mode_sixsfred::by#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@11 mode_sixsfred::@11: scope:[mode_sixsfred] from mode_sixsfred::@10 mode_sixsfred::@13 - (byte) dtv_control#201 ? phi( mode_sixsfred::@10/(byte) dtv_control#216 mode_sixsfred::@13/(byte) dtv_control#157 ) - (byte) mode_sixsfred::by#4 ? phi( mode_sixsfred::@10/(byte) mode_sixsfred::by#0 mode_sixsfred::@13/(byte) mode_sixsfred::by#1 ) - (byte*) mode_sixsfred::gfxb#3 ? phi( mode_sixsfred::@10/(byte*) mode_sixsfred::gfxb#0 mode_sixsfred::@13/(byte*) mode_sixsfred::gfxb#4 ) - (byte) mode_sixsfred::bx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#201 ← phi( mode_sixsfred::@10/(byte) dtv_control#216 mode_sixsfred::@13/(byte) dtv_control#157 ) + (byte) mode_sixsfred::by#4 ← phi( mode_sixsfred::@10/(byte) mode_sixsfred::by#0 mode_sixsfred::@13/(byte) mode_sixsfred::by#1 ) + (byte*) mode_sixsfred::gfxb#3 ← phi( mode_sixsfred::@10/(byte*) mode_sixsfred::gfxb#0 mode_sixsfred::@13/(byte*) mode_sixsfred::gfxb#4 ) + (byte) mode_sixsfred::bx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@12 mode_sixsfred::@12: scope:[mode_sixsfred] from mode_sixsfred::@11 mode_sixsfred::@12 - (byte) dtv_control#185 ? phi( mode_sixsfred::@11/(byte) dtv_control#201 mode_sixsfred::@12/(byte) dtv_control#185 ) - (byte) mode_sixsfred::by#3 ? phi( mode_sixsfred::@11/(byte) mode_sixsfred::by#4 mode_sixsfred::@12/(byte) mode_sixsfred::by#3 ) - (byte) mode_sixsfred::bx#2 ? phi( mode_sixsfred::@11/(byte) mode_sixsfred::bx#0 mode_sixsfred::@12/(byte) mode_sixsfred::bx#1 ) - (byte*) mode_sixsfred::gfxb#2 ? phi( mode_sixsfred::@11/(byte*) mode_sixsfred::gfxb#3 mode_sixsfred::@12/(byte*) mode_sixsfred::gfxb#1 ) - *((byte*) mode_sixsfred::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b - (byte*) mode_sixsfred::gfxb#1 ? ++ (byte*) mode_sixsfred::gfxb#2 - (byte) mode_sixsfred::bx#1 ? (byte) mode_sixsfred::bx#2 + rangenext(0,$27) - (bool~) mode_sixsfred::$25 ? (byte) mode_sixsfred::bx#1 != rangelast(0,$27) + (byte) dtv_control#185 ← phi( mode_sixsfred::@11/(byte) dtv_control#201 mode_sixsfred::@12/(byte) dtv_control#185 ) + (byte) mode_sixsfred::by#3 ← phi( mode_sixsfred::@11/(byte) mode_sixsfred::by#4 mode_sixsfred::@12/(byte) mode_sixsfred::by#3 ) + (byte) mode_sixsfred::bx#2 ← phi( mode_sixsfred::@11/(byte) mode_sixsfred::bx#0 mode_sixsfred::@12/(byte) mode_sixsfred::bx#1 ) + (byte*) mode_sixsfred::gfxb#2 ← phi( mode_sixsfred::@11/(byte*) mode_sixsfred::gfxb#3 mode_sixsfred::@12/(byte*) mode_sixsfred::gfxb#1 ) + *((byte*) mode_sixsfred::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b + (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 + (byte) mode_sixsfred::bx#1 ← (byte) mode_sixsfred::bx#2 + rangenext(0,$27) + (bool~) mode_sixsfred::$25 ← (byte) mode_sixsfred::bx#1 != rangelast(0,$27) if((bool~) mode_sixsfred::$25) goto mode_sixsfred::@12 to:mode_sixsfred::@13 mode_sixsfred::@13: scope:[mode_sixsfred] from mode_sixsfred::@12 - (byte) dtv_control#157 ? phi( mode_sixsfred::@12/(byte) dtv_control#185 ) - (byte*) mode_sixsfred::gfxb#4 ? phi( mode_sixsfred::@12/(byte*) mode_sixsfred::gfxb#1 ) - (byte) mode_sixsfred::by#2 ? phi( mode_sixsfred::@12/(byte) mode_sixsfred::by#3 ) - (byte) mode_sixsfred::by#1 ? (byte) mode_sixsfred::by#2 + rangenext(0,$c7) - (bool~) mode_sixsfred::$26 ? (byte) mode_sixsfred::by#1 != rangelast(0,$c7) + (byte) dtv_control#157 ← phi( mode_sixsfred::@12/(byte) dtv_control#185 ) + (byte*) mode_sixsfred::gfxb#4 ← phi( mode_sixsfred::@12/(byte*) mode_sixsfred::gfxb#1 ) + (byte) mode_sixsfred::by#2 ← phi( mode_sixsfred::@12/(byte) mode_sixsfred::by#3 ) + (byte) mode_sixsfred::by#1 ← (byte) mode_sixsfred::by#2 + rangenext(0,$c7) + (bool~) mode_sixsfred::$26 ← (byte) mode_sixsfred::by#1 != rangelast(0,$c7) if((bool~) mode_sixsfred::$26) goto mode_sixsfred::@11 to:mode_sixsfred::@14 mode_sixsfred::@14: scope:[mode_sixsfred] from mode_sixsfred::@13 - (byte) dtv_control#125 ? phi( mode_sixsfred::@13/(byte) dtv_control#157 ) + (byte) dtv_control#125 ← phi( mode_sixsfred::@13/(byte) dtv_control#157 ) call mode_ctrl to:mode_sixsfred::@15 mode_sixsfred::@15: scope:[mode_sixsfred] from mode_sixsfred::@14 - (byte) dtv_control#89 ? phi( mode_sixsfred::@14/(byte) dtv_control#16 ) - (byte) dtv_control#43 ? (byte) dtv_control#89 + (byte) dtv_control#89 ← phi( mode_sixsfred::@14/(byte) dtv_control#16 ) + (byte) dtv_control#43 ← (byte) dtv_control#89 to:mode_sixsfred::@return mode_sixsfred::@return: scope:[mode_sixsfred] from mode_sixsfred::@15 - (byte) dtv_control#90 ? phi( mode_sixsfred::@15/(byte) dtv_control#43 ) - (byte) dtv_control#44 ? (byte) dtv_control#90 + (byte) dtv_control#90 ← phi( mode_sixsfred::@15/(byte) dtv_control#43 ) + (byte) dtv_control#44 ← (byte) dtv_control#90 return to:@return mode_sixsfred2: scope:[mode_sixsfred2] from menu::@36 - (byte*) mode_sixsfred2::PLANEA#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte*) mode_sixsfred2::PLANEB#0 ? ((byte*)) (word/signed word/dword/signed dword) $6000 - (byte*) mode_sixsfred2::COLORS#0 ? ((byte*)) (word/dword/signed dword) $8000 - (byte) dtv_control#45 ? (byte) DTV_LINEAR#0 - *((byte*) DTV_CONTROL#0) ? (byte) DTV_LINEAR#0 - (byte~) mode_sixsfred2::$0 ? (byte) VIC_ECM#0 | (byte) VIC_BMM#0 - (byte~) mode_sixsfred2::$1 ? (byte~) mode_sixsfred2::$0 | (byte) VIC_DEN#0 - (byte~) mode_sixsfred2::$2 ? (byte~) mode_sixsfred2::$1 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_sixsfred2::$3 ? (byte~) mode_sixsfred2::$2 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_sixsfred2::$3 - (byte~) mode_sixsfred2::$4 ? (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 - *((byte*) VIC_CONTROL2#0) ? (byte~) mode_sixsfred2::$4 - (byte~) mode_sixsfred2::$5 ? < (byte*) mode_sixsfred2::PLANEA#0 - *((byte*) DTV_PLANEA_START_LO#0) ? (byte~) mode_sixsfred2::$5 - (byte~) mode_sixsfred2::$6 ? > (byte*) mode_sixsfred2::PLANEA#0 - *((byte*) DTV_PLANEA_START_MI#0) ? (byte~) mode_sixsfred2::$6 - *((byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) mode_sixsfred2::$7 ? < (byte*) mode_sixsfred2::PLANEB#0 - *((byte*) DTV_PLANEB_START_LO#0) ? (byte~) mode_sixsfred2::$7 - (byte~) mode_sixsfred2::$8 ? > (byte*) mode_sixsfred2::PLANEB#0 - *((byte*) DTV_PLANEB_START_MI#0) ? (byte~) mode_sixsfred2::$8 - *((byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) mode_sixsfred2::$9 ? (byte*) mode_sixsfred2::COLORS#0 / (word/signed word/dword/signed dword) $400 - (byte~) mode_sixsfred2::$10 ? < (byte*~) mode_sixsfred2::$9 - *((byte*) DTV_COLOR_BANK_LO#0) ? (byte~) mode_sixsfred2::$10 - (byte*~) mode_sixsfred2::$11 ? (byte*) mode_sixsfred2::COLORS#0 / (word/signed word/dword/signed dword) $400 - (byte~) mode_sixsfred2::$12 ? > (byte*~) mode_sixsfred2::$11 - *((byte*) DTV_COLOR_BANK_HI#0) ? (byte~) mode_sixsfred2::$12 - (byte) mode_sixsfred2::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_sixsfred2::PLANEA#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte*) mode_sixsfred2::PLANEB#0 ← ((byte*)) (word/signed word/dword/signed dword) $6000 + (byte*) mode_sixsfred2::COLORS#0 ← ((byte*)) (word/dword/signed dword) $8000 + (byte) dtv_control#45 ← (byte) DTV_LINEAR#0 + *((byte*) DTV_CONTROL#0) ← (byte) DTV_LINEAR#0 + (byte~) mode_sixsfred2::$0 ← (byte) VIC_ECM#0 | (byte) VIC_BMM#0 + (byte~) mode_sixsfred2::$1 ← (byte~) mode_sixsfred2::$0 | (byte) VIC_DEN#0 + (byte~) mode_sixsfred2::$2 ← (byte~) mode_sixsfred2::$1 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_sixsfred2::$3 ← (byte~) mode_sixsfred2::$2 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_sixsfred2::$3 + (byte~) mode_sixsfred2::$4 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 + *((byte*) VIC_CONTROL2#0) ← (byte~) mode_sixsfred2::$4 + (byte~) mode_sixsfred2::$5 ← < (byte*) mode_sixsfred2::PLANEA#0 + *((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_sixsfred2::$5 + (byte~) mode_sixsfred2::$6 ← > (byte*) mode_sixsfred2::PLANEA#0 + *((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_sixsfred2::$6 + *((byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) mode_sixsfred2::$7 ← < (byte*) mode_sixsfred2::PLANEB#0 + *((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_sixsfred2::$7 + (byte~) mode_sixsfred2::$8 ← > (byte*) mode_sixsfred2::PLANEB#0 + *((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_sixsfred2::$8 + *((byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) mode_sixsfred2::$9 ← (byte*) mode_sixsfred2::COLORS#0 / (word/signed word/dword/signed dword) $400 + (byte~) mode_sixsfred2::$10 ← < (byte*~) mode_sixsfred2::$9 + *((byte*) DTV_COLOR_BANK_LO#0) ← (byte~) mode_sixsfred2::$10 + (byte*~) mode_sixsfred2::$11 ← (byte*) mode_sixsfred2::COLORS#0 / (word/signed word/dword/signed dword) $400 + (byte~) mode_sixsfred2::$12 ← > (byte*~) mode_sixsfred2::$11 + *((byte*) DTV_COLOR_BANK_HI#0) ← (byte~) mode_sixsfred2::$12 + (byte) mode_sixsfred2::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@1 mode_sixsfred2::@1: scope:[mode_sixsfred2] from mode_sixsfred2 mode_sixsfred2::@1 - (byte) dtv_control#290 ? phi( mode_sixsfred2/(byte) dtv_control#45 mode_sixsfred2::@1/(byte) dtv_control#290 ) - (byte) mode_sixsfred2::i#2 ? phi( mode_sixsfred2/(byte) mode_sixsfred2::i#0 mode_sixsfred2::@1/(byte) mode_sixsfred2::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ? (byte) mode_sixsfred2::i#2 - (byte) mode_sixsfred2::i#1 ? (byte) mode_sixsfred2::i#2 + rangenext(0,$f) - (bool~) mode_sixsfred2::$14 ? (byte) mode_sixsfred2::i#1 != rangelast(0,$f) + (byte) dtv_control#290 ← phi( mode_sixsfred2/(byte) dtv_control#45 mode_sixsfred2::@1/(byte) dtv_control#290 ) + (byte) mode_sixsfred2::i#2 ← phi( mode_sixsfred2/(byte) mode_sixsfred2::i#0 mode_sixsfred2::@1/(byte) mode_sixsfred2::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 + (byte) mode_sixsfred2::i#1 ← (byte) mode_sixsfred2::i#2 + rangenext(0,$f) + (bool~) mode_sixsfred2::$14 ← (byte) mode_sixsfred2::i#1 != rangelast(0,$f) if((bool~) mode_sixsfred2::$14) goto mode_sixsfred2::@1 to:mode_sixsfred2::@2 mode_sixsfred2::@2: scope:[mode_sixsfred2] from mode_sixsfred2::@1 - (byte) dtv_control#286 ? phi( mode_sixsfred2::@1/(byte) dtv_control#290 ) - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) mode_sixsfred2::col#0 ? (byte*) mode_sixsfred2::COLORS#0 - (byte) mode_sixsfred2::cy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#286 ← phi( mode_sixsfred2::@1/(byte) dtv_control#290 ) + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_sixsfred2::col#0 ← (byte*) mode_sixsfred2::COLORS#0 + (byte) mode_sixsfred2::cy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@3 mode_sixsfred2::@3: scope:[mode_sixsfred2] from mode_sixsfred2::@2 mode_sixsfred2::@5 - (byte) dtv_control#280 ? phi( mode_sixsfred2::@2/(byte) dtv_control#286 mode_sixsfred2::@5/(byte) dtv_control#268 ) - (byte*) mode_sixsfred2::col#3 ? phi( mode_sixsfred2::@2/(byte*) mode_sixsfred2::col#0 mode_sixsfred2::@5/(byte*) mode_sixsfred2::col#4 ) - (byte) mode_sixsfred2::cy#4 ? phi( mode_sixsfred2::@2/(byte) mode_sixsfred2::cy#0 mode_sixsfred2::@5/(byte) mode_sixsfred2::cy#1 ) - (byte) mode_sixsfred2::cx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#280 ← phi( mode_sixsfred2::@2/(byte) dtv_control#286 mode_sixsfred2::@5/(byte) dtv_control#268 ) + (byte*) mode_sixsfred2::col#3 ← phi( mode_sixsfred2::@2/(byte*) mode_sixsfred2::col#0 mode_sixsfred2::@5/(byte*) mode_sixsfred2::col#4 ) + (byte) mode_sixsfred2::cy#4 ← phi( mode_sixsfred2::@2/(byte) mode_sixsfred2::cy#0 mode_sixsfred2::@5/(byte) mode_sixsfred2::cy#1 ) + (byte) mode_sixsfred2::cx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@4 mode_sixsfred2::@4: scope:[mode_sixsfred2] from mode_sixsfred2::@3 mode_sixsfred2::@4 - (byte) dtv_control#275 ? phi( mode_sixsfred2::@3/(byte) dtv_control#280 mode_sixsfred2::@4/(byte) dtv_control#275 ) - (byte*) mode_sixsfred2::col#2 ? phi( mode_sixsfred2::@3/(byte*) mode_sixsfred2::col#3 mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 ) - (byte) mode_sixsfred2::cy#2 ? phi( mode_sixsfred2::@3/(byte) mode_sixsfred2::cy#4 mode_sixsfred2::@4/(byte) mode_sixsfred2::cy#2 ) - (byte) mode_sixsfred2::cx#2 ? phi( mode_sixsfred2::@3/(byte) mode_sixsfred2::cx#0 mode_sixsfred2::@4/(byte) mode_sixsfred2::cx#1 ) - (byte~) mode_sixsfred2::$15 ? (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte~) mode_sixsfred2::$16 ? (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_sixsfred2::$17 ? (byte) mode_sixsfred2::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte~) mode_sixsfred2::$18 ? (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 - *((byte*) mode_sixsfred2::col#2) ? (byte~) mode_sixsfred2::$18 - (byte*) mode_sixsfred2::col#1 ? ++ (byte*) mode_sixsfred2::col#2 - (byte) mode_sixsfred2::cx#1 ? (byte) mode_sixsfred2::cx#2 + rangenext(0,$27) - (bool~) mode_sixsfred2::$19 ? (byte) mode_sixsfred2::cx#1 != rangelast(0,$27) + (byte) dtv_control#275 ← phi( mode_sixsfred2::@3/(byte) dtv_control#280 mode_sixsfred2::@4/(byte) dtv_control#275 ) + (byte*) mode_sixsfred2::col#2 ← phi( mode_sixsfred2::@3/(byte*) mode_sixsfred2::col#3 mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 ) + (byte) mode_sixsfred2::cy#2 ← phi( mode_sixsfred2::@3/(byte) mode_sixsfred2::cy#4 mode_sixsfred2::@4/(byte) mode_sixsfred2::cy#2 ) + (byte) mode_sixsfred2::cx#2 ← phi( mode_sixsfred2::@3/(byte) mode_sixsfred2::cx#0 mode_sixsfred2::@4/(byte) mode_sixsfred2::cx#1 ) + (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 + *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 + (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 + (byte) mode_sixsfred2::cx#1 ← (byte) mode_sixsfred2::cx#2 + rangenext(0,$27) + (bool~) mode_sixsfred2::$19 ← (byte) mode_sixsfred2::cx#1 != rangelast(0,$27) if((bool~) mode_sixsfred2::$19) goto mode_sixsfred2::@4 to:mode_sixsfred2::@5 mode_sixsfred2::@5: scope:[mode_sixsfred2] from mode_sixsfred2::@4 - (byte) dtv_control#268 ? phi( mode_sixsfred2::@4/(byte) dtv_control#275 ) - (byte*) mode_sixsfred2::col#4 ? phi( mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 ) - (byte) mode_sixsfred2::cy#3 ? phi( mode_sixsfred2::@4/(byte) mode_sixsfred2::cy#2 ) - (byte) mode_sixsfred2::cy#1 ? (byte) mode_sixsfred2::cy#3 + rangenext(0,$18) - (bool~) mode_sixsfred2::$20 ? (byte) mode_sixsfred2::cy#1 != rangelast(0,$18) + (byte) dtv_control#268 ← phi( mode_sixsfred2::@4/(byte) dtv_control#275 ) + (byte*) mode_sixsfred2::col#4 ← phi( mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 ) + (byte) mode_sixsfred2::cy#3 ← phi( mode_sixsfred2::@4/(byte) mode_sixsfred2::cy#2 ) + (byte) mode_sixsfred2::cy#1 ← (byte) mode_sixsfred2::cy#3 + rangenext(0,$18) + (bool~) mode_sixsfred2::$20 ← (byte) mode_sixsfred2::cy#1 != rangelast(0,$18) if((bool~) mode_sixsfred2::$20) goto mode_sixsfred2::@3 to:mode_sixsfred2::@6 mode_sixsfred2::@6: scope:[mode_sixsfred2] from mode_sixsfred2::@5 - (byte) dtv_control#261 ? phi( mode_sixsfred2::@5/(byte) dtv_control#268 ) - (byte*) mode_sixsfred2::gfxa#0 ? (byte*) mode_sixsfred2::PLANEA#0 - (byte[]) mode_sixsfred2::row_bitmask#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $55, (byte/word/signed word/dword/signed dword) $aa, (byte/word/signed word/dword/signed dword) $ff } - (byte) mode_sixsfred2::ay#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#261 ← phi( mode_sixsfred2::@5/(byte) dtv_control#268 ) + (byte*) mode_sixsfred2::gfxa#0 ← (byte*) mode_sixsfred2::PLANEA#0 + (byte[]) mode_sixsfred2::row_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $55, (byte/word/signed word/dword/signed dword) $aa, (byte/word/signed word/dword/signed dword) $ff } + (byte) mode_sixsfred2::ay#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@7 mode_sixsfred2::@7: scope:[mode_sixsfred2] from mode_sixsfred2::@6 mode_sixsfred2::@9 - (byte) dtv_control#252 ? phi( mode_sixsfred2::@6/(byte) dtv_control#261 mode_sixsfred2::@9/(byte) dtv_control#233 ) - (byte*) mode_sixsfred2::gfxa#3 ? phi( mode_sixsfred2::@6/(byte*) mode_sixsfred2::gfxa#0 mode_sixsfred2::@9/(byte*) mode_sixsfred2::gfxa#4 ) - (byte) mode_sixsfred2::ay#4 ? phi( mode_sixsfred2::@6/(byte) mode_sixsfred2::ay#0 mode_sixsfred2::@9/(byte) mode_sixsfred2::ay#1 ) - (byte) mode_sixsfred2::ax#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#252 ← phi( mode_sixsfred2::@6/(byte) dtv_control#261 mode_sixsfred2::@9/(byte) dtv_control#233 ) + (byte*) mode_sixsfred2::gfxa#3 ← phi( mode_sixsfred2::@6/(byte*) mode_sixsfred2::gfxa#0 mode_sixsfred2::@9/(byte*) mode_sixsfred2::gfxa#4 ) + (byte) mode_sixsfred2::ay#4 ← phi( mode_sixsfred2::@6/(byte) mode_sixsfred2::ay#0 mode_sixsfred2::@9/(byte) mode_sixsfred2::ay#1 ) + (byte) mode_sixsfred2::ax#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@8 mode_sixsfred2::@8: scope:[mode_sixsfred2] from mode_sixsfred2::@7 mode_sixsfred2::@8 - (byte) dtv_control#243 ? phi( mode_sixsfred2::@7/(byte) dtv_control#252 mode_sixsfred2::@8/(byte) dtv_control#243 ) - (byte) mode_sixsfred2::ax#2 ? phi( mode_sixsfred2::@7/(byte) mode_sixsfred2::ax#0 mode_sixsfred2::@8/(byte) mode_sixsfred2::ax#1 ) - (byte*) mode_sixsfred2::gfxa#2 ? phi( mode_sixsfred2::@7/(byte*) mode_sixsfred2::gfxa#3 mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 ) - (byte) mode_sixsfred2::ay#2 ? phi( mode_sixsfred2::@7/(byte) mode_sixsfred2::ay#4 mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#2 ) - (byte~) mode_sixsfred2::$21 ? (byte) mode_sixsfred2::ay#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) mode_sixsfred2::$22 ? (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) mode_sixsfred2::row#0 ? (byte~) mode_sixsfred2::$22 - *((byte*) mode_sixsfred2::gfxa#2) ? *((byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) - (byte*) mode_sixsfred2::gfxa#1 ? ++ (byte*) mode_sixsfred2::gfxa#2 - (byte) mode_sixsfred2::ax#1 ? (byte) mode_sixsfred2::ax#2 + rangenext(0,$27) - (bool~) mode_sixsfred2::$23 ? (byte) mode_sixsfred2::ax#1 != rangelast(0,$27) + (byte) dtv_control#243 ← phi( mode_sixsfred2::@7/(byte) dtv_control#252 mode_sixsfred2::@8/(byte) dtv_control#243 ) + (byte) mode_sixsfred2::ax#2 ← phi( mode_sixsfred2::@7/(byte) mode_sixsfred2::ax#0 mode_sixsfred2::@8/(byte) mode_sixsfred2::ax#1 ) + (byte*) mode_sixsfred2::gfxa#2 ← phi( mode_sixsfred2::@7/(byte*) mode_sixsfred2::gfxa#3 mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 ) + (byte) mode_sixsfred2::ay#2 ← phi( mode_sixsfred2::@7/(byte) mode_sixsfred2::ay#4 mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#2 ) + (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) mode_sixsfred2::$22 ← (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$22 + *((byte*) mode_sixsfred2::gfxa#2) ← *((byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) + (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 + (byte) mode_sixsfred2::ax#1 ← (byte) mode_sixsfred2::ax#2 + rangenext(0,$27) + (bool~) mode_sixsfred2::$23 ← (byte) mode_sixsfred2::ax#1 != rangelast(0,$27) if((bool~) mode_sixsfred2::$23) goto mode_sixsfred2::@8 to:mode_sixsfred2::@9 mode_sixsfred2::@9: scope:[mode_sixsfred2] from mode_sixsfred2::@8 - (byte) dtv_control#233 ? phi( mode_sixsfred2::@8/(byte) dtv_control#243 ) - (byte*) mode_sixsfred2::gfxa#4 ? phi( mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 ) - (byte) mode_sixsfred2::ay#3 ? phi( mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#2 ) - (byte) mode_sixsfred2::ay#1 ? (byte) mode_sixsfred2::ay#3 + rangenext(0,$c7) - (bool~) mode_sixsfred2::$24 ? (byte) mode_sixsfred2::ay#1 != rangelast(0,$c7) + (byte) dtv_control#233 ← phi( mode_sixsfred2::@8/(byte) dtv_control#243 ) + (byte*) mode_sixsfred2::gfxa#4 ← phi( mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 ) + (byte) mode_sixsfred2::ay#3 ← phi( mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#2 ) + (byte) mode_sixsfred2::ay#1 ← (byte) mode_sixsfred2::ay#3 + rangenext(0,$c7) + (bool~) mode_sixsfred2::$24 ← (byte) mode_sixsfred2::ay#1 != rangelast(0,$c7) if((bool~) mode_sixsfred2::$24) goto mode_sixsfred2::@7 to:mode_sixsfred2::@10 mode_sixsfred2::@10: scope:[mode_sixsfred2] from mode_sixsfred2::@9 - (byte) dtv_control#217 ? phi( mode_sixsfred2::@9/(byte) dtv_control#233 ) - (byte*) mode_sixsfred2::gfxb#0 ? (byte*) mode_sixsfred2::PLANEB#0 - (byte) mode_sixsfred2::by#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#217 ← phi( mode_sixsfred2::@9/(byte) dtv_control#233 ) + (byte*) mode_sixsfred2::gfxb#0 ← (byte*) mode_sixsfred2::PLANEB#0 + (byte) mode_sixsfred2::by#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@11 mode_sixsfred2::@11: scope:[mode_sixsfred2] from mode_sixsfred2::@10 mode_sixsfred2::@13 - (byte) dtv_control#202 ? phi( mode_sixsfred2::@10/(byte) dtv_control#217 mode_sixsfred2::@13/(byte) dtv_control#158 ) - (byte) mode_sixsfred2::by#4 ? phi( mode_sixsfred2::@10/(byte) mode_sixsfred2::by#0 mode_sixsfred2::@13/(byte) mode_sixsfred2::by#1 ) - (byte*) mode_sixsfred2::gfxb#3 ? phi( mode_sixsfred2::@10/(byte*) mode_sixsfred2::gfxb#0 mode_sixsfred2::@13/(byte*) mode_sixsfred2::gfxb#4 ) - (byte) mode_sixsfred2::bx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#202 ← phi( mode_sixsfred2::@10/(byte) dtv_control#217 mode_sixsfred2::@13/(byte) dtv_control#158 ) + (byte) mode_sixsfred2::by#4 ← phi( mode_sixsfred2::@10/(byte) mode_sixsfred2::by#0 mode_sixsfred2::@13/(byte) mode_sixsfred2::by#1 ) + (byte*) mode_sixsfred2::gfxb#3 ← phi( mode_sixsfred2::@10/(byte*) mode_sixsfred2::gfxb#0 mode_sixsfred2::@13/(byte*) mode_sixsfred2::gfxb#4 ) + (byte) mode_sixsfred2::bx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@12 mode_sixsfred2::@12: scope:[mode_sixsfred2] from mode_sixsfred2::@11 mode_sixsfred2::@12 - (byte) dtv_control#186 ? phi( mode_sixsfred2::@11/(byte) dtv_control#202 mode_sixsfred2::@12/(byte) dtv_control#186 ) - (byte) mode_sixsfred2::by#3 ? phi( mode_sixsfred2::@11/(byte) mode_sixsfred2::by#4 mode_sixsfred2::@12/(byte) mode_sixsfred2::by#3 ) - (byte) mode_sixsfred2::bx#2 ? phi( mode_sixsfred2::@11/(byte) mode_sixsfred2::bx#0 mode_sixsfred2::@12/(byte) mode_sixsfred2::bx#1 ) - (byte*) mode_sixsfred2::gfxb#2 ? phi( mode_sixsfred2::@11/(byte*) mode_sixsfred2::gfxb#3 mode_sixsfred2::@12/(byte*) mode_sixsfred2::gfxb#1 ) - *((byte*) mode_sixsfred2::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b - (byte*) mode_sixsfred2::gfxb#1 ? ++ (byte*) mode_sixsfred2::gfxb#2 - (byte) mode_sixsfred2::bx#1 ? (byte) mode_sixsfred2::bx#2 + rangenext(0,$27) - (bool~) mode_sixsfred2::$25 ? (byte) mode_sixsfred2::bx#1 != rangelast(0,$27) + (byte) dtv_control#186 ← phi( mode_sixsfred2::@11/(byte) dtv_control#202 mode_sixsfred2::@12/(byte) dtv_control#186 ) + (byte) mode_sixsfred2::by#3 ← phi( mode_sixsfred2::@11/(byte) mode_sixsfred2::by#4 mode_sixsfred2::@12/(byte) mode_sixsfred2::by#3 ) + (byte) mode_sixsfred2::bx#2 ← phi( mode_sixsfred2::@11/(byte) mode_sixsfred2::bx#0 mode_sixsfred2::@12/(byte) mode_sixsfred2::bx#1 ) + (byte*) mode_sixsfred2::gfxb#2 ← phi( mode_sixsfred2::@11/(byte*) mode_sixsfred2::gfxb#3 mode_sixsfred2::@12/(byte*) mode_sixsfred2::gfxb#1 ) + *((byte*) mode_sixsfred2::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b + (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 + (byte) mode_sixsfred2::bx#1 ← (byte) mode_sixsfred2::bx#2 + rangenext(0,$27) + (bool~) mode_sixsfred2::$25 ← (byte) mode_sixsfred2::bx#1 != rangelast(0,$27) if((bool~) mode_sixsfred2::$25) goto mode_sixsfred2::@12 to:mode_sixsfred2::@13 mode_sixsfred2::@13: scope:[mode_sixsfred2] from mode_sixsfred2::@12 - (byte) dtv_control#158 ? phi( mode_sixsfred2::@12/(byte) dtv_control#186 ) - (byte*) mode_sixsfred2::gfxb#4 ? phi( mode_sixsfred2::@12/(byte*) mode_sixsfred2::gfxb#1 ) - (byte) mode_sixsfred2::by#2 ? phi( mode_sixsfred2::@12/(byte) mode_sixsfred2::by#3 ) - (byte) mode_sixsfred2::by#1 ? (byte) mode_sixsfred2::by#2 + rangenext(0,$c7) - (bool~) mode_sixsfred2::$26 ? (byte) mode_sixsfred2::by#1 != rangelast(0,$c7) + (byte) dtv_control#158 ← phi( mode_sixsfred2::@12/(byte) dtv_control#186 ) + (byte*) mode_sixsfred2::gfxb#4 ← phi( mode_sixsfred2::@12/(byte*) mode_sixsfred2::gfxb#1 ) + (byte) mode_sixsfred2::by#2 ← phi( mode_sixsfred2::@12/(byte) mode_sixsfred2::by#3 ) + (byte) mode_sixsfred2::by#1 ← (byte) mode_sixsfred2::by#2 + rangenext(0,$c7) + (bool~) mode_sixsfred2::$26 ← (byte) mode_sixsfred2::by#1 != rangelast(0,$c7) if((bool~) mode_sixsfred2::$26) goto mode_sixsfred2::@11 to:mode_sixsfred2::@14 mode_sixsfred2::@14: scope:[mode_sixsfred2] from mode_sixsfred2::@13 - (byte) dtv_control#126 ? phi( mode_sixsfred2::@13/(byte) dtv_control#158 ) + (byte) dtv_control#126 ← phi( mode_sixsfred2::@13/(byte) dtv_control#158 ) call mode_ctrl to:mode_sixsfred2::@15 mode_sixsfred2::@15: scope:[mode_sixsfred2] from mode_sixsfred2::@14 - (byte) dtv_control#91 ? phi( mode_sixsfred2::@14/(byte) dtv_control#16 ) - (byte) dtv_control#46 ? (byte) dtv_control#91 + (byte) dtv_control#91 ← phi( mode_sixsfred2::@14/(byte) dtv_control#16 ) + (byte) dtv_control#46 ← (byte) dtv_control#91 to:mode_sixsfred2::@return mode_sixsfred2::@return: scope:[mode_sixsfred2] from mode_sixsfred2::@15 - (byte) dtv_control#92 ? phi( mode_sixsfred2::@15/(byte) dtv_control#46 ) - (byte) dtv_control#47 ? (byte) dtv_control#92 + (byte) dtv_control#92 ← phi( mode_sixsfred2::@15/(byte) dtv_control#46 ) + (byte) dtv_control#47 ← (byte) dtv_control#92 return to:@return mode_8bpppixelcell: scope:[mode_8bpppixelcell] from menu::@42 - (byte*) mode_8bpppixelcell::PLANEA#0 ? ((byte*)) (word/signed word/dword/signed dword) $3c00 - (byte*) mode_8bpppixelcell::PLANEB#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte~) mode_8bpppixelcell::$0 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - (byte~) mode_8bpppixelcell::$1 ? (byte~) mode_8bpppixelcell::$0 | (byte) DTV_CHUNKY#0 - (byte) dtv_control#48 ? (byte~) mode_8bpppixelcell::$1 - (byte~) mode_8bpppixelcell::$2 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - (byte~) mode_8bpppixelcell::$3 ? (byte~) mode_8bpppixelcell::$2 | (byte) DTV_CHUNKY#0 - *((byte*) DTV_CONTROL#0) ? (byte~) mode_8bpppixelcell::$3 - (byte~) mode_8bpppixelcell::$4 ? (byte) VIC_ECM#0 | (byte) VIC_DEN#0 - (byte~) mode_8bpppixelcell::$5 ? (byte~) mode_8bpppixelcell::$4 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_8bpppixelcell::$6 ? (byte~) mode_8bpppixelcell::$5 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_8bpppixelcell::$6 - (byte~) mode_8bpppixelcell::$7 ? (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 - *((byte*) VIC_CONTROL2#0) ? (byte~) mode_8bpppixelcell::$7 - (byte~) mode_8bpppixelcell::$8 ? < (byte*) mode_8bpppixelcell::PLANEA#0 - *((byte*) DTV_PLANEA_START_LO#0) ? (byte~) mode_8bpppixelcell::$8 - (byte~) mode_8bpppixelcell::$9 ? > (byte*) mode_8bpppixelcell::PLANEA#0 - *((byte*) DTV_PLANEA_START_MI#0) ? (byte~) mode_8bpppixelcell::$9 - *((byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) mode_8bpppixelcell::$10 ? < (byte*) mode_8bpppixelcell::PLANEB#0 - *((byte*) DTV_PLANEB_START_LO#0) ? (byte~) mode_8bpppixelcell::$10 - (byte~) mode_8bpppixelcell::$11 ? > (byte*) mode_8bpppixelcell::PLANEB#0 - *((byte*) DTV_PLANEB_START_MI#0) ? (byte~) mode_8bpppixelcell::$11 - *((byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mode_8bpppixelcell::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) mode_8bpppixelcell::PLANEA#0 ← ((byte*)) (word/signed word/dword/signed dword) $3c00 + (byte*) mode_8bpppixelcell::PLANEB#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte~) mode_8bpppixelcell::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + (byte~) mode_8bpppixelcell::$1 ← (byte~) mode_8bpppixelcell::$0 | (byte) DTV_CHUNKY#0 + (byte) dtv_control#48 ← (byte~) mode_8bpppixelcell::$1 + (byte~) mode_8bpppixelcell::$2 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + (byte~) mode_8bpppixelcell::$3 ← (byte~) mode_8bpppixelcell::$2 | (byte) DTV_CHUNKY#0 + *((byte*) DTV_CONTROL#0) ← (byte~) mode_8bpppixelcell::$3 + (byte~) mode_8bpppixelcell::$4 ← (byte) VIC_ECM#0 | (byte) VIC_DEN#0 + (byte~) mode_8bpppixelcell::$5 ← (byte~) mode_8bpppixelcell::$4 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_8bpppixelcell::$6 ← (byte~) mode_8bpppixelcell::$5 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_8bpppixelcell::$6 + (byte~) mode_8bpppixelcell::$7 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 + *((byte*) VIC_CONTROL2#0) ← (byte~) mode_8bpppixelcell::$7 + (byte~) mode_8bpppixelcell::$8 ← < (byte*) mode_8bpppixelcell::PLANEA#0 + *((byte*) DTV_PLANEA_START_LO#0) ← (byte~) mode_8bpppixelcell::$8 + (byte~) mode_8bpppixelcell::$9 ← > (byte*) mode_8bpppixelcell::PLANEA#0 + *((byte*) DTV_PLANEA_START_MI#0) ← (byte~) mode_8bpppixelcell::$9 + *((byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) mode_8bpppixelcell::$10 ← < (byte*) mode_8bpppixelcell::PLANEB#0 + *((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_8bpppixelcell::$10 + (byte~) mode_8bpppixelcell::$11 ← > (byte*) mode_8bpppixelcell::PLANEB#0 + *((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_8bpppixelcell::$11 + *((byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mode_8bpppixelcell::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bpppixelcell::@1 mode_8bpppixelcell::@1: scope:[mode_8bpppixelcell] from mode_8bpppixelcell mode_8bpppixelcell::@1 - (byte) dtv_control#287 ? phi( mode_8bpppixelcell/(byte) dtv_control#48 mode_8bpppixelcell::@1/(byte) dtv_control#287 ) - (byte) mode_8bpppixelcell::i#2 ? phi( mode_8bpppixelcell/(byte) mode_8bpppixelcell::i#0 mode_8bpppixelcell::@1/(byte) mode_8bpppixelcell::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ? (byte) mode_8bpppixelcell::i#2 - (byte) mode_8bpppixelcell::i#1 ? (byte) mode_8bpppixelcell::i#2 + rangenext(0,$f) - (bool~) mode_8bpppixelcell::$13 ? (byte) mode_8bpppixelcell::i#1 != rangelast(0,$f) + (byte) dtv_control#287 ← phi( mode_8bpppixelcell/(byte) dtv_control#48 mode_8bpppixelcell::@1/(byte) dtv_control#287 ) + (byte) mode_8bpppixelcell::i#2 ← phi( mode_8bpppixelcell/(byte) mode_8bpppixelcell::i#0 mode_8bpppixelcell::@1/(byte) mode_8bpppixelcell::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 + (byte) mode_8bpppixelcell::i#1 ← (byte) mode_8bpppixelcell::i#2 + rangenext(0,$f) + (bool~) mode_8bpppixelcell::$13 ← (byte) mode_8bpppixelcell::i#1 != rangelast(0,$f) if((bool~) mode_8bpppixelcell::$13) goto mode_8bpppixelcell::@1 to:mode_8bpppixelcell::@2 mode_8bpppixelcell::@2: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@1 - (byte) dtv_control#281 ? phi( mode_8bpppixelcell::@1/(byte) dtv_control#287 ) - (byte*) mode_8bpppixelcell::gfxa#0 ? (byte*) mode_8bpppixelcell::PLANEA#0 - (byte) mode_8bpppixelcell::ay#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#281 ← phi( mode_8bpppixelcell::@1/(byte) dtv_control#287 ) + (byte*) mode_8bpppixelcell::gfxa#0 ← (byte*) mode_8bpppixelcell::PLANEA#0 + (byte) mode_8bpppixelcell::ay#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bpppixelcell::@3 mode_8bpppixelcell::@3: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@2 mode_8bpppixelcell::@5 - (byte) dtv_control#276 ? phi( mode_8bpppixelcell::@2/(byte) dtv_control#281 mode_8bpppixelcell::@5/(byte) dtv_control#262 ) - (byte*) mode_8bpppixelcell::gfxa#3 ? phi( mode_8bpppixelcell::@2/(byte*) mode_8bpppixelcell::gfxa#0 mode_8bpppixelcell::@5/(byte*) mode_8bpppixelcell::gfxa#4 ) - (byte) mode_8bpppixelcell::ay#4 ? phi( mode_8bpppixelcell::@2/(byte) mode_8bpppixelcell::ay#0 mode_8bpppixelcell::@5/(byte) mode_8bpppixelcell::ay#1 ) - (byte) mode_8bpppixelcell::ax#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#276 ← phi( mode_8bpppixelcell::@2/(byte) dtv_control#281 mode_8bpppixelcell::@5/(byte) dtv_control#262 ) + (byte*) mode_8bpppixelcell::gfxa#3 ← phi( mode_8bpppixelcell::@2/(byte*) mode_8bpppixelcell::gfxa#0 mode_8bpppixelcell::@5/(byte*) mode_8bpppixelcell::gfxa#4 ) + (byte) mode_8bpppixelcell::ay#4 ← phi( mode_8bpppixelcell::@2/(byte) mode_8bpppixelcell::ay#0 mode_8bpppixelcell::@5/(byte) mode_8bpppixelcell::ay#1 ) + (byte) mode_8bpppixelcell::ax#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bpppixelcell::@4 mode_8bpppixelcell::@4: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@3 mode_8bpppixelcell::@4 - (byte) dtv_control#269 ? phi( mode_8bpppixelcell::@3/(byte) dtv_control#276 mode_8bpppixelcell::@4/(byte) dtv_control#269 ) - (byte*) mode_8bpppixelcell::gfxa#2 ? phi( mode_8bpppixelcell::@3/(byte*) mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 ) - (byte) mode_8bpppixelcell::ax#2 ? phi( mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ax#0 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ax#1 ) - (byte) mode_8bpppixelcell::ay#2 ? phi( mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ay#4 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#2 ) - (byte~) mode_8bpppixelcell::$14 ? (byte) mode_8bpppixelcell::ay#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_8bpppixelcell::$15 ? (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) mode_8bpppixelcell::$16 ? (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) mode_8bpppixelcell::$17 ? (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 - *((byte*) mode_8bpppixelcell::gfxa#2) ? (byte~) mode_8bpppixelcell::$17 - (byte*) mode_8bpppixelcell::gfxa#1 ? ++ (byte*) mode_8bpppixelcell::gfxa#2 - (byte) mode_8bpppixelcell::ax#1 ? (byte) mode_8bpppixelcell::ax#2 + rangenext(0,$27) - (bool~) mode_8bpppixelcell::$18 ? (byte) mode_8bpppixelcell::ax#1 != rangelast(0,$27) + (byte) dtv_control#269 ← phi( mode_8bpppixelcell::@3/(byte) dtv_control#276 mode_8bpppixelcell::@4/(byte) dtv_control#269 ) + (byte*) mode_8bpppixelcell::gfxa#2 ← phi( mode_8bpppixelcell::@3/(byte*) mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 ) + (byte) mode_8bpppixelcell::ax#2 ← phi( mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ax#0 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ax#1 ) + (byte) mode_8bpppixelcell::ay#2 ← phi( mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ay#4 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#2 ) + (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 + *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 + (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 + (byte) mode_8bpppixelcell::ax#1 ← (byte) mode_8bpppixelcell::ax#2 + rangenext(0,$27) + (bool~) mode_8bpppixelcell::$18 ← (byte) mode_8bpppixelcell::ax#1 != rangelast(0,$27) if((bool~) mode_8bpppixelcell::$18) goto mode_8bpppixelcell::@4 to:mode_8bpppixelcell::@5 mode_8bpppixelcell::@5: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@4 - (byte) dtv_control#262 ? phi( mode_8bpppixelcell::@4/(byte) dtv_control#269 ) - (byte*) mode_8bpppixelcell::gfxa#4 ? phi( mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 ) - (byte) mode_8bpppixelcell::ay#3 ? phi( mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#2 ) - (byte) mode_8bpppixelcell::ay#1 ? (byte) mode_8bpppixelcell::ay#3 + rangenext(0,$18) - (bool~) mode_8bpppixelcell::$19 ? (byte) mode_8bpppixelcell::ay#1 != rangelast(0,$18) + (byte) dtv_control#262 ← phi( mode_8bpppixelcell::@4/(byte) dtv_control#269 ) + (byte*) mode_8bpppixelcell::gfxa#4 ← phi( mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 ) + (byte) mode_8bpppixelcell::ay#3 ← phi( mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#2 ) + (byte) mode_8bpppixelcell::ay#1 ← (byte) mode_8bpppixelcell::ay#3 + rangenext(0,$18) + (bool~) mode_8bpppixelcell::$19 ← (byte) mode_8bpppixelcell::ay#1 != rangelast(0,$18) if((bool~) mode_8bpppixelcell::$19) goto mode_8bpppixelcell::@3 to:mode_8bpppixelcell::@6 mode_8bpppixelcell::@6: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@5 - (byte) dtv_control#253 ? phi( mode_8bpppixelcell::@5/(byte) dtv_control#262 ) - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_CHARROM#0 - (byte*) mode_8bpppixelcell::CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) mode_8bpppixelcell::gfxb#0 ? (byte*) mode_8bpppixelcell::PLANEB#0 - (byte*) mode_8bpppixelcell::chargen#0 ? (byte*) mode_8bpppixelcell::CHARGEN#0 - (byte) mode_8bpppixelcell::col#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mode_8bpppixelcell::ch#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#253 ← phi( mode_8bpppixelcell::@5/(byte) dtv_control#262 ) + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_CHARROM#0 + (byte*) mode_8bpppixelcell::CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) mode_8bpppixelcell::gfxb#0 ← (byte*) mode_8bpppixelcell::PLANEB#0 + (byte*) mode_8bpppixelcell::chargen#0 ← (byte*) mode_8bpppixelcell::CHARGEN#0 + (byte) mode_8bpppixelcell::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mode_8bpppixelcell::ch#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bpppixelcell::@7 mode_8bpppixelcell::@7: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@13 mode_8bpppixelcell::@6 - (byte) dtv_control#244 ? phi( mode_8bpppixelcell::@13/(byte) dtv_control#159 mode_8bpppixelcell::@6/(byte) dtv_control#253 ) - (byte) mode_8bpppixelcell::ch#8 ? phi( mode_8bpppixelcell::@13/(byte) mode_8bpppixelcell::ch#1 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::ch#0 ) - (byte) mode_8bpppixelcell::col#7 ? phi( mode_8bpppixelcell::@13/(byte) mode_8bpppixelcell::col#8 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::col#0 ) - (byte*) mode_8bpppixelcell::gfxb#7 ? phi( mode_8bpppixelcell::@13/(byte*) mode_8bpppixelcell::gfxb#8 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::gfxb#0 ) - (byte*) mode_8bpppixelcell::chargen#4 ? phi( mode_8bpppixelcell::@13/(byte*) mode_8bpppixelcell::chargen#5 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::chargen#0 ) - (byte) mode_8bpppixelcell::cr#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#244 ← phi( mode_8bpppixelcell::@13/(byte) dtv_control#159 mode_8bpppixelcell::@6/(byte) dtv_control#253 ) + (byte) mode_8bpppixelcell::ch#8 ← phi( mode_8bpppixelcell::@13/(byte) mode_8bpppixelcell::ch#1 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::ch#0 ) + (byte) mode_8bpppixelcell::col#7 ← phi( mode_8bpppixelcell::@13/(byte) mode_8bpppixelcell::col#8 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::col#0 ) + (byte*) mode_8bpppixelcell::gfxb#7 ← phi( mode_8bpppixelcell::@13/(byte*) mode_8bpppixelcell::gfxb#8 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::gfxb#0 ) + (byte*) mode_8bpppixelcell::chargen#4 ← phi( mode_8bpppixelcell::@13/(byte*) mode_8bpppixelcell::chargen#5 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::chargen#0 ) + (byte) mode_8bpppixelcell::cr#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bpppixelcell::@8 mode_8bpppixelcell::@8: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12 mode_8bpppixelcell::@7 - (byte) dtv_control#234 ? phi( mode_8bpppixelcell::@12/(byte) dtv_control#187 mode_8bpppixelcell::@7/(byte) dtv_control#244 ) - (byte) mode_8bpppixelcell::ch#7 ? phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#3 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::ch#8 ) - (byte) mode_8bpppixelcell::cr#6 ? phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::cr#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::cr#0 ) - (byte) mode_8bpppixelcell::col#5 ? phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#6 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::col#7 ) - (byte*) mode_8bpppixelcell::gfxb#5 ? phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#6 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::gfxb#7 ) - (byte*) mode_8bpppixelcell::chargen#2 ? phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#3 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::chargen#4 ) - (byte) mode_8bpppixelcell::bits#0 ? *((byte*) mode_8bpppixelcell::chargen#2) - (byte*) mode_8bpppixelcell::chargen#1 ? ++ (byte*) mode_8bpppixelcell::chargen#2 - (byte) mode_8bpppixelcell::cp#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#234 ← phi( mode_8bpppixelcell::@12/(byte) dtv_control#187 mode_8bpppixelcell::@7/(byte) dtv_control#244 ) + (byte) mode_8bpppixelcell::ch#7 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#3 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::ch#8 ) + (byte) mode_8bpppixelcell::cr#6 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::cr#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::cr#0 ) + (byte) mode_8bpppixelcell::col#5 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#6 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::col#7 ) + (byte*) mode_8bpppixelcell::gfxb#5 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#6 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::gfxb#7 ) + (byte*) mode_8bpppixelcell::chargen#2 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#3 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::chargen#4 ) + (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) + (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 + (byte) mode_8bpppixelcell::cp#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bpppixelcell::@9 mode_8bpppixelcell::@9: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@10 mode_8bpppixelcell::@8 - (byte) dtv_control#219 ? phi( mode_8bpppixelcell::@10/(byte) dtv_control#203 mode_8bpppixelcell::@8/(byte) dtv_control#234 ) - (byte) mode_8bpppixelcell::ch#6 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::ch#4 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::ch#7 ) - (byte*) mode_8bpppixelcell::chargen#8 ? phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::chargen#6 mode_8bpppixelcell::@8/(byte*) mode_8bpppixelcell::chargen#1 ) - (byte) mode_8bpppixelcell::cr#5 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cr#3 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::cr#6 ) - (byte) mode_8bpppixelcell::cp#4 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cp#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::cp#0 ) - (byte) mode_8bpppixelcell::col#4 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::col#5 ) - (byte*) mode_8bpppixelcell::gfxb#4 ? phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@8/(byte*) mode_8bpppixelcell::gfxb#5 ) - (byte) mode_8bpppixelcell::bits#2 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::bits#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::bits#0 ) - (byte) mode_8bpppixelcell::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) mode_8bpppixelcell::$20 ? (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 - (bool~) mode_8bpppixelcell::$21 ? (byte~) mode_8bpppixelcell::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mode_8bpppixelcell::$22 ? ! (bool~) mode_8bpppixelcell::$21 + (byte) dtv_control#219 ← phi( mode_8bpppixelcell::@10/(byte) dtv_control#203 mode_8bpppixelcell::@8/(byte) dtv_control#234 ) + (byte) mode_8bpppixelcell::ch#6 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::ch#4 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::ch#7 ) + (byte*) mode_8bpppixelcell::chargen#8 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::chargen#6 mode_8bpppixelcell::@8/(byte*) mode_8bpppixelcell::chargen#1 ) + (byte) mode_8bpppixelcell::cr#5 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cr#3 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::cr#6 ) + (byte) mode_8bpppixelcell::cp#4 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cp#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::cp#0 ) + (byte) mode_8bpppixelcell::col#4 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::col#5 ) + (byte*) mode_8bpppixelcell::gfxb#4 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@8/(byte*) mode_8bpppixelcell::gfxb#5 ) + (byte) mode_8bpppixelcell::bits#2 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::bits#1 mode_8bpppixelcell::@8/(byte) mode_8bpppixelcell::bits#0 ) + (byte) mode_8bpppixelcell::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 + (bool~) mode_8bpppixelcell::$21 ← (byte~) mode_8bpppixelcell::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mode_8bpppixelcell::$22 ← ! (bool~) mode_8bpppixelcell::$21 if((bool~) mode_8bpppixelcell::$22) goto mode_8bpppixelcell::@10 to:mode_8bpppixelcell::@11 mode_8bpppixelcell::@10: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@11 mode_8bpppixelcell::@9 - (byte) dtv_control#203 ? phi( mode_8bpppixelcell::@11/(byte) dtv_control#218 mode_8bpppixelcell::@9/(byte) dtv_control#219 ) - (byte) mode_8bpppixelcell::ch#4 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::ch#5 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::ch#6 ) - (byte*) mode_8bpppixelcell::chargen#6 ? phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::chargen#7 mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::chargen#8 ) - (byte) mode_8bpppixelcell::cr#3 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cr#4 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cr#5 ) - (byte) mode_8bpppixelcell::cp#2 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cp#3 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#4 ) - (byte) mode_8bpppixelcell::col#2 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::col#3 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#4 ) - (byte) mode_8bpppixelcell::bits#3 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::bits#4 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#2 ) - (byte*) mode_8bpppixelcell::gfxb#2 ? phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::gfxb#3 mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#4 ) - (byte) mode_8bpppixelcell::c#2 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::c#1 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::c#0 ) - *((byte*) mode_8bpppixelcell::gfxb#2) ? (byte) mode_8bpppixelcell::c#2 - (byte*) mode_8bpppixelcell::gfxb#1 ? ++ (byte*) mode_8bpppixelcell::gfxb#2 - (byte~) mode_8bpppixelcell::$23 ? (byte) mode_8bpppixelcell::bits#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) mode_8bpppixelcell::bits#1 ? (byte~) mode_8bpppixelcell::$23 - (byte) mode_8bpppixelcell::col#1 ? ++ (byte) mode_8bpppixelcell::col#2 - (byte) mode_8bpppixelcell::cp#1 ? (byte) mode_8bpppixelcell::cp#2 + rangenext(0,7) - (bool~) mode_8bpppixelcell::$24 ? (byte) mode_8bpppixelcell::cp#1 != rangelast(0,7) + (byte) dtv_control#203 ← phi( mode_8bpppixelcell::@11/(byte) dtv_control#218 mode_8bpppixelcell::@9/(byte) dtv_control#219 ) + (byte) mode_8bpppixelcell::ch#4 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::ch#5 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::ch#6 ) + (byte*) mode_8bpppixelcell::chargen#6 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::chargen#7 mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::chargen#8 ) + (byte) mode_8bpppixelcell::cr#3 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cr#4 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cr#5 ) + (byte) mode_8bpppixelcell::cp#2 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cp#3 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#4 ) + (byte) mode_8bpppixelcell::col#2 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::col#3 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#4 ) + (byte) mode_8bpppixelcell::bits#3 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::bits#4 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#2 ) + (byte*) mode_8bpppixelcell::gfxb#2 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::gfxb#3 mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#4 ) + (byte) mode_8bpppixelcell::c#2 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::c#1 mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::c#0 ) + *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 + (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 + (byte~) mode_8bpppixelcell::$23 ← (byte) mode_8bpppixelcell::bits#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_8bpppixelcell::bits#1 ← (byte~) mode_8bpppixelcell::$23 + (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 + (byte) mode_8bpppixelcell::cp#1 ← (byte) mode_8bpppixelcell::cp#2 + rangenext(0,7) + (bool~) mode_8bpppixelcell::$24 ← (byte) mode_8bpppixelcell::cp#1 != rangelast(0,7) if((bool~) mode_8bpppixelcell::$24) goto mode_8bpppixelcell::@9 to:mode_8bpppixelcell::@12 mode_8bpppixelcell::@11: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@9 - (byte) dtv_control#218 ? phi( mode_8bpppixelcell::@9/(byte) dtv_control#219 ) - (byte) mode_8bpppixelcell::ch#5 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::ch#6 ) - (byte*) mode_8bpppixelcell::chargen#7 ? phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::chargen#8 ) - (byte) mode_8bpppixelcell::cr#4 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cr#5 ) - (byte) mode_8bpppixelcell::cp#3 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#4 ) - (byte) mode_8bpppixelcell::bits#4 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#2 ) - (byte*) mode_8bpppixelcell::gfxb#3 ? phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#4 ) - (byte) mode_8bpppixelcell::col#3 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#4 ) - (byte) mode_8bpppixelcell::c#1 ? (byte) mode_8bpppixelcell::col#3 + (byte) dtv_control#218 ← phi( mode_8bpppixelcell::@9/(byte) dtv_control#219 ) + (byte) mode_8bpppixelcell::ch#5 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::ch#6 ) + (byte*) mode_8bpppixelcell::chargen#7 ← phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::chargen#8 ) + (byte) mode_8bpppixelcell::cr#4 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cr#5 ) + (byte) mode_8bpppixelcell::cp#3 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#4 ) + (byte) mode_8bpppixelcell::bits#4 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#2 ) + (byte*) mode_8bpppixelcell::gfxb#3 ← phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#4 ) + (byte) mode_8bpppixelcell::col#3 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#4 ) + (byte) mode_8bpppixelcell::c#1 ← (byte) mode_8bpppixelcell::col#3 to:mode_8bpppixelcell::@10 mode_8bpppixelcell::@12: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@10 - (byte) dtv_control#187 ? phi( mode_8bpppixelcell::@10/(byte) dtv_control#203 ) - (byte) mode_8bpppixelcell::col#6 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::col#1 ) - (byte*) mode_8bpppixelcell::gfxb#6 ? phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::gfxb#1 ) - (byte) mode_8bpppixelcell::ch#3 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::ch#4 ) - (byte*) mode_8bpppixelcell::chargen#3 ? phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::chargen#6 ) - (byte) mode_8bpppixelcell::cr#2 ? phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cr#3 ) - (byte) mode_8bpppixelcell::cr#1 ? (byte) mode_8bpppixelcell::cr#2 + rangenext(0,7) - (bool~) mode_8bpppixelcell::$25 ? (byte) mode_8bpppixelcell::cr#1 != rangelast(0,7) + (byte) dtv_control#187 ← phi( mode_8bpppixelcell::@10/(byte) dtv_control#203 ) + (byte) mode_8bpppixelcell::col#6 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::col#1 ) + (byte*) mode_8bpppixelcell::gfxb#6 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::gfxb#1 ) + (byte) mode_8bpppixelcell::ch#3 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::ch#4 ) + (byte*) mode_8bpppixelcell::chargen#3 ← phi( mode_8bpppixelcell::@10/(byte*) mode_8bpppixelcell::chargen#6 ) + (byte) mode_8bpppixelcell::cr#2 ← phi( mode_8bpppixelcell::@10/(byte) mode_8bpppixelcell::cr#3 ) + (byte) mode_8bpppixelcell::cr#1 ← (byte) mode_8bpppixelcell::cr#2 + rangenext(0,7) + (bool~) mode_8bpppixelcell::$25 ← (byte) mode_8bpppixelcell::cr#1 != rangelast(0,7) if((bool~) mode_8bpppixelcell::$25) goto mode_8bpppixelcell::@8 to:mode_8bpppixelcell::@13 mode_8bpppixelcell::@13: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12 - (byte) mode_8bpppixelcell::col#8 ? phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#6 ) - (byte*) mode_8bpppixelcell::gfxb#8 ? phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#6 ) - (byte) dtv_control#159 ? phi( mode_8bpppixelcell::@12/(byte) dtv_control#187 ) - (byte*) mode_8bpppixelcell::chargen#5 ? phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#3 ) - (byte) mode_8bpppixelcell::ch#2 ? phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#3 ) - (byte) mode_8bpppixelcell::ch#1 ? (byte) mode_8bpppixelcell::ch#2 + rangenext(0,$ff) - (bool~) mode_8bpppixelcell::$26 ? (byte) mode_8bpppixelcell::ch#1 != rangelast(0,$ff) + (byte) mode_8bpppixelcell::col#8 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#6 ) + (byte*) mode_8bpppixelcell::gfxb#8 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#6 ) + (byte) dtv_control#159 ← phi( mode_8bpppixelcell::@12/(byte) dtv_control#187 ) + (byte*) mode_8bpppixelcell::chargen#5 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#3 ) + (byte) mode_8bpppixelcell::ch#2 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#3 ) + (byte) mode_8bpppixelcell::ch#1 ← (byte) mode_8bpppixelcell::ch#2 + rangenext(0,$ff) + (bool~) mode_8bpppixelcell::$26 ← (byte) mode_8bpppixelcell::ch#1 != rangelast(0,$ff) if((bool~) mode_8bpppixelcell::$26) goto mode_8bpppixelcell::@7 to:mode_8bpppixelcell::@14 mode_8bpppixelcell::@14: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@13 - (byte) dtv_control#127 ? phi( mode_8bpppixelcell::@13/(byte) dtv_control#159 ) - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_IO#0 + (byte) dtv_control#127 ← phi( mode_8bpppixelcell::@13/(byte) dtv_control#159 ) + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0 call mode_ctrl to:mode_8bpppixelcell::@15 mode_8bpppixelcell::@15: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@14 - (byte) dtv_control#93 ? phi( mode_8bpppixelcell::@14/(byte) dtv_control#16 ) - (byte) dtv_control#49 ? (byte) dtv_control#93 + (byte) dtv_control#93 ← phi( mode_8bpppixelcell::@14/(byte) dtv_control#16 ) + (byte) dtv_control#49 ← (byte) dtv_control#93 to:mode_8bpppixelcell::@return mode_8bpppixelcell::@return: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@15 - (byte) dtv_control#94 ? phi( mode_8bpppixelcell::@15/(byte) dtv_control#49 ) - (byte) dtv_control#50 ? (byte) dtv_control#94 + (byte) dtv_control#94 ← phi( mode_8bpppixelcell::@15/(byte) dtv_control#49 ) + (byte) dtv_control#50 ← (byte) dtv_control#94 return to:@return mode_8bppchunkybmm: scope:[mode_8bppchunkybmm] from menu::@44 - (dword) mode_8bppchunkybmm::PLANEB#0 ? (dword/signed dword) $20000 - (byte~) mode_8bppchunkybmm::$0 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - (byte~) mode_8bppchunkybmm::$1 ? (byte~) mode_8bppchunkybmm::$0 | (byte) DTV_CHUNKY#0 - (byte~) mode_8bppchunkybmm::$2 ? (byte~) mode_8bppchunkybmm::$1 | (byte) DTV_COLORRAM_OFF#0 - (byte) dtv_control#51 ? (byte~) mode_8bppchunkybmm::$2 - (byte~) mode_8bppchunkybmm::$3 ? (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 - (byte~) mode_8bppchunkybmm::$4 ? (byte~) mode_8bppchunkybmm::$3 | (byte) DTV_CHUNKY#0 - (byte~) mode_8bppchunkybmm::$5 ? (byte~) mode_8bppchunkybmm::$4 | (byte) DTV_COLORRAM_OFF#0 - *((byte*) DTV_CONTROL#0) ? (byte~) mode_8bppchunkybmm::$5 - (byte~) mode_8bppchunkybmm::$6 ? (byte) VIC_ECM#0 | (byte) VIC_DEN#0 - (byte~) mode_8bppchunkybmm::$7 ? (byte~) mode_8bppchunkybmm::$6 | (byte) VIC_RSEL#0 - (byte/word/dword~) mode_8bppchunkybmm::$8 ? (byte~) mode_8bppchunkybmm::$7 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) VIC_CONTROL#0) ? (byte/word/dword~) mode_8bppchunkybmm::$8 - (byte~) mode_8bppchunkybmm::$9 ? (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 - *((byte*) VIC_CONTROL2#0) ? (byte~) mode_8bppchunkybmm::$9 - (word~) mode_8bppchunkybmm::$10 ? < (dword) mode_8bppchunkybmm::PLANEB#0 - (byte~) mode_8bppchunkybmm::$11 ? < (word~) mode_8bppchunkybmm::$10 - *((byte*) DTV_PLANEB_START_LO#0) ? (byte~) mode_8bppchunkybmm::$11 - (word~) mode_8bppchunkybmm::$12 ? < (dword) mode_8bppchunkybmm::PLANEB#0 - (byte~) mode_8bppchunkybmm::$13 ? > (word~) mode_8bppchunkybmm::$12 - *((byte*) DTV_PLANEB_START_MI#0) ? (byte~) mode_8bppchunkybmm::$13 - (word~) mode_8bppchunkybmm::$14 ? > (dword) mode_8bppchunkybmm::PLANEB#0 - (byte~) mode_8bppchunkybmm::$15 ? < (word~) mode_8bppchunkybmm::$14 - *((byte*) DTV_PLANEB_START_HI#0) ? (byte~) mode_8bppchunkybmm::$15 - *((byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 8 - *((byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mode_8bppchunkybmm::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mode_8bppchunkybmm::PLANEB#0 ← (dword/signed dword) $20000 + (byte~) mode_8bppchunkybmm::$0 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + (byte~) mode_8bppchunkybmm::$1 ← (byte~) mode_8bppchunkybmm::$0 | (byte) DTV_CHUNKY#0 + (byte~) mode_8bppchunkybmm::$2 ← (byte~) mode_8bppchunkybmm::$1 | (byte) DTV_COLORRAM_OFF#0 + (byte) dtv_control#51 ← (byte~) mode_8bppchunkybmm::$2 + (byte~) mode_8bppchunkybmm::$3 ← (byte) DTV_HIGHCOLOR#0 | (byte) DTV_LINEAR#0 + (byte~) mode_8bppchunkybmm::$4 ← (byte~) mode_8bppchunkybmm::$3 | (byte) DTV_CHUNKY#0 + (byte~) mode_8bppchunkybmm::$5 ← (byte~) mode_8bppchunkybmm::$4 | (byte) DTV_COLORRAM_OFF#0 + *((byte*) DTV_CONTROL#0) ← (byte~) mode_8bppchunkybmm::$5 + (byte~) mode_8bppchunkybmm::$6 ← (byte) VIC_ECM#0 | (byte) VIC_DEN#0 + (byte~) mode_8bppchunkybmm::$7 ← (byte~) mode_8bppchunkybmm::$6 | (byte) VIC_RSEL#0 + (byte/word/dword~) mode_8bppchunkybmm::$8 ← (byte~) mode_8bppchunkybmm::$7 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) VIC_CONTROL#0) ← (byte/word/dword~) mode_8bppchunkybmm::$8 + (byte~) mode_8bppchunkybmm::$9 ← (byte) VIC_MCM#0 | (byte) VIC_CSEL#0 + *((byte*) VIC_CONTROL2#0) ← (byte~) mode_8bppchunkybmm::$9 + (word~) mode_8bppchunkybmm::$10 ← < (dword) mode_8bppchunkybmm::PLANEB#0 + (byte~) mode_8bppchunkybmm::$11 ← < (word~) mode_8bppchunkybmm::$10 + *((byte*) DTV_PLANEB_START_LO#0) ← (byte~) mode_8bppchunkybmm::$11 + (word~) mode_8bppchunkybmm::$12 ← < (dword) mode_8bppchunkybmm::PLANEB#0 + (byte~) mode_8bppchunkybmm::$13 ← > (word~) mode_8bppchunkybmm::$12 + *((byte*) DTV_PLANEB_START_MI#0) ← (byte~) mode_8bppchunkybmm::$13 + (word~) mode_8bppchunkybmm::$14 ← > (dword) mode_8bppchunkybmm::PLANEB#0 + (byte~) mode_8bppchunkybmm::$15 ← < (word~) mode_8bppchunkybmm::$14 + *((byte*) DTV_PLANEB_START_HI#0) ← (byte~) mode_8bppchunkybmm::$15 + *((byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 8 + *((byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mode_8bppchunkybmm::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bppchunkybmm::@1 mode_8bppchunkybmm::@1: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm mode_8bppchunkybmm::@1 - (byte) dtv_control#263 ? phi( mode_8bppchunkybmm/(byte) dtv_control#51 mode_8bppchunkybmm::@1/(byte) dtv_control#263 ) - (byte) mode_8bppchunkybmm::i#2 ? phi( mode_8bppchunkybmm/(byte) mode_8bppchunkybmm::i#0 mode_8bppchunkybmm::@1/(byte) mode_8bppchunkybmm::i#1 ) - *((byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ? (byte) mode_8bppchunkybmm::i#2 - (byte) mode_8bppchunkybmm::i#1 ? (byte) mode_8bppchunkybmm::i#2 + rangenext(0,$f) - (bool~) mode_8bppchunkybmm::$23 ? (byte) mode_8bppchunkybmm::i#1 != rangelast(0,$f) + (byte) dtv_control#263 ← phi( mode_8bppchunkybmm/(byte) dtv_control#51 mode_8bppchunkybmm::@1/(byte) dtv_control#263 ) + (byte) mode_8bppchunkybmm::i#2 ← phi( mode_8bppchunkybmm/(byte) mode_8bppchunkybmm::i#0 mode_8bppchunkybmm::@1/(byte) mode_8bppchunkybmm::i#1 ) + *((byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 + (byte) mode_8bppchunkybmm::i#1 ← (byte) mode_8bppchunkybmm::i#2 + rangenext(0,$f) + (bool~) mode_8bppchunkybmm::$23 ← (byte) mode_8bppchunkybmm::i#1 != rangelast(0,$f) if((bool~) mode_8bppchunkybmm::$23) goto mode_8bppchunkybmm::@1 to:mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@2: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@1 - (byte) dtv_control#254 ? phi( mode_8bppchunkybmm::@1/(byte) dtv_control#263 ) - (dword~) mode_8bppchunkybmm::$16 ? (dword) mode_8bppchunkybmm::PLANEB#0 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_8bppchunkybmm::$17 ? ((byte)) (dword~) mode_8bppchunkybmm::$16 - (byte) mode_8bppchunkybmm::gfxbCpuBank#0 ? (byte~) mode_8bppchunkybmm::$17 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#0 ? (byte) mode_8bppchunkybmm::gfxbCpuBank#0 + (byte) dtv_control#254 ← phi( mode_8bppchunkybmm::@1/(byte) dtv_control#263 ) + (dword~) mode_8bppchunkybmm::$16 ← (dword) mode_8bppchunkybmm::PLANEB#0 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_8bppchunkybmm::$17 ← ((byte)) (dword~) mode_8bppchunkybmm::$16 + (byte) mode_8bppchunkybmm::gfxbCpuBank#0 ← (byte~) mode_8bppchunkybmm::$17 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#0 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#0 call dtvSetCpuBankSegment1 to:mode_8bppchunkybmm::@9 mode_8bppchunkybmm::@9: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@2 - (byte) dtv_control#245 ? phi( mode_8bppchunkybmm::@2/(byte) dtv_control#254 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#3 ? phi( mode_8bppchunkybmm::@2/(byte) mode_8bppchunkybmm::gfxbCpuBank#0 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#1 ? ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#3 - (byte*) mode_8bppchunkybmm::gfxb#0 ? ((byte*)) (word/signed word/dword/signed dword) $4000 - (byte) mode_8bppchunkybmm::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#245 ← phi( mode_8bppchunkybmm::@2/(byte) dtv_control#254 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#3 ← phi( mode_8bppchunkybmm::@2/(byte) mode_8bppchunkybmm::gfxbCpuBank#0 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#1 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#3 + (byte*) mode_8bppchunkybmm::gfxb#0 ← ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte) mode_8bppchunkybmm::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bppchunkybmm::@3 mode_8bppchunkybmm::@3: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@7 mode_8bppchunkybmm::@9 - (byte) dtv_control#235 ? phi( mode_8bppchunkybmm::@7/(byte) dtv_control#188 mode_8bppchunkybmm::@9/(byte) dtv_control#245 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#7 ? phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::gfxbCpuBank#9 mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::gfxbCpuBank#1 ) - (byte) mode_8bppchunkybmm::y#6 ? phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::y#1 mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::y#0 ) - (byte*) mode_8bppchunkybmm::gfxb#5 ? phi( mode_8bppchunkybmm::@7/(byte*) mode_8bppchunkybmm::gfxb#6 mode_8bppchunkybmm::@9/(byte*) mode_8bppchunkybmm::gfxb#0 ) - (word) mode_8bppchunkybmm::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) dtv_control#235 ← phi( mode_8bppchunkybmm::@7/(byte) dtv_control#188 mode_8bppchunkybmm::@9/(byte) dtv_control#245 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#7 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::gfxbCpuBank#9 mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::gfxbCpuBank#1 ) + (byte) mode_8bppchunkybmm::y#6 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::y#1 mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::y#0 ) + (byte*) mode_8bppchunkybmm::gfxb#5 ← phi( mode_8bppchunkybmm::@7/(byte*) mode_8bppchunkybmm::gfxb#6 mode_8bppchunkybmm::@9/(byte*) mode_8bppchunkybmm::gfxb#0 ) + (word) mode_8bppchunkybmm::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bppchunkybmm::@4 mode_8bppchunkybmm::@4: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@3 mode_8bppchunkybmm::@5 - (byte) dtv_control#221 ? phi( mode_8bppchunkybmm::@3/(byte) dtv_control#235 mode_8bppchunkybmm::@5/(byte) dtv_control#204 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#6 ? phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 ) - (byte) mode_8bppchunkybmm::y#5 ? phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::y#2 ) - (word) mode_8bppchunkybmm::x#4 ? phi( mode_8bppchunkybmm::@3/(word) mode_8bppchunkybmm::x#0 mode_8bppchunkybmm::@5/(word) mode_8bppchunkybmm::x#1 ) - (byte*) mode_8bppchunkybmm::gfxb#3 ? phi( mode_8bppchunkybmm::@3/(byte*) mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 ) - (bool~) mode_8bppchunkybmm::$24 ? (byte*) mode_8bppchunkybmm::gfxb#3 == (word/dword/signed dword) $8000 - (bool~) mode_8bppchunkybmm::$25 ? ! (bool~) mode_8bppchunkybmm::$24 + (byte) dtv_control#221 ← phi( mode_8bppchunkybmm::@3/(byte) dtv_control#235 mode_8bppchunkybmm::@5/(byte) dtv_control#204 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#6 ← phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 ) + (byte) mode_8bppchunkybmm::y#5 ← phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::y#2 ) + (word) mode_8bppchunkybmm::x#4 ← phi( mode_8bppchunkybmm::@3/(word) mode_8bppchunkybmm::x#0 mode_8bppchunkybmm::@5/(word) mode_8bppchunkybmm::x#1 ) + (byte*) mode_8bppchunkybmm::gfxb#3 ← phi( mode_8bppchunkybmm::@3/(byte*) mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 ) + (bool~) mode_8bppchunkybmm::$24 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (word/dword/signed dword) $8000 + (bool~) mode_8bppchunkybmm::$25 ← ! (bool~) mode_8bppchunkybmm::$24 if((bool~) mode_8bppchunkybmm::$25) goto mode_8bppchunkybmm::@5 to:mode_8bppchunkybmm::@6 mode_8bppchunkybmm::@5: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@10 mode_8bppchunkybmm::@4 - (byte) dtv_control#204 ? phi( mode_8bppchunkybmm::@10/(byte) dtv_control#220 mode_8bppchunkybmm::@4/(byte) dtv_control#221 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#8 ? phi( mode_8bppchunkybmm::@10/(byte) mode_8bppchunkybmm::gfxbCpuBank#2 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#6 ) - (byte*) mode_8bppchunkybmm::gfxb#4 ? phi( mode_8bppchunkybmm::@10/(byte*) mode_8bppchunkybmm::gfxb#2 mode_8bppchunkybmm::@4/(byte*) mode_8bppchunkybmm::gfxb#3 ) - (byte) mode_8bppchunkybmm::y#2 ? phi( mode_8bppchunkybmm::@10/(byte) mode_8bppchunkybmm::y#4 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::y#5 ) - (word) mode_8bppchunkybmm::x#2 ? phi( mode_8bppchunkybmm::@10/(word) mode_8bppchunkybmm::x#3 mode_8bppchunkybmm::@4/(word) mode_8bppchunkybmm::x#4 ) - (word~) mode_8bppchunkybmm::$27 ? (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#2 - (byte~) mode_8bppchunkybmm::$28 ? ((byte)) (word~) mode_8bppchunkybmm::$27 - (byte) mode_8bppchunkybmm::c#0 ? (byte~) mode_8bppchunkybmm::$28 - *((byte*) mode_8bppchunkybmm::gfxb#4) ? (byte) mode_8bppchunkybmm::c#0 - (byte*) mode_8bppchunkybmm::gfxb#1 ? ++ (byte*) mode_8bppchunkybmm::gfxb#4 - (word) mode_8bppchunkybmm::x#1 ? (word) mode_8bppchunkybmm::x#2 + rangenext(0,$13f) - (bool~) mode_8bppchunkybmm::$29 ? (word) mode_8bppchunkybmm::x#1 != rangelast(0,$13f) + (byte) dtv_control#204 ← phi( mode_8bppchunkybmm::@10/(byte) dtv_control#220 mode_8bppchunkybmm::@4/(byte) dtv_control#221 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#8 ← phi( mode_8bppchunkybmm::@10/(byte) mode_8bppchunkybmm::gfxbCpuBank#2 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#6 ) + (byte*) mode_8bppchunkybmm::gfxb#4 ← phi( mode_8bppchunkybmm::@10/(byte*) mode_8bppchunkybmm::gfxb#2 mode_8bppchunkybmm::@4/(byte*) mode_8bppchunkybmm::gfxb#3 ) + (byte) mode_8bppchunkybmm::y#2 ← phi( mode_8bppchunkybmm::@10/(byte) mode_8bppchunkybmm::y#4 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::y#5 ) + (word) mode_8bppchunkybmm::x#2 ← phi( mode_8bppchunkybmm::@10/(word) mode_8bppchunkybmm::x#3 mode_8bppchunkybmm::@4/(word) mode_8bppchunkybmm::x#4 ) + (word~) mode_8bppchunkybmm::$27 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#2 + (byte~) mode_8bppchunkybmm::$28 ← ((byte)) (word~) mode_8bppchunkybmm::$27 + (byte) mode_8bppchunkybmm::c#0 ← (byte~) mode_8bppchunkybmm::$28 + *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 + (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 + (word) mode_8bppchunkybmm::x#1 ← (word) mode_8bppchunkybmm::x#2 + rangenext(0,$13f) + (bool~) mode_8bppchunkybmm::$29 ← (word) mode_8bppchunkybmm::x#1 != rangelast(0,$13f) if((bool~) mode_8bppchunkybmm::$29) goto mode_8bppchunkybmm::@4 to:mode_8bppchunkybmm::@7 mode_8bppchunkybmm::@6: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@4 - (byte) dtv_control#236 ? phi( mode_8bppchunkybmm::@4/(byte) dtv_control#221 ) - (byte) mode_8bppchunkybmm::y#7 ? phi( mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::y#5 ) - (word) mode_8bppchunkybmm::x#5 ? phi( mode_8bppchunkybmm::@4/(word) mode_8bppchunkybmm::x#4 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#4 ? phi( mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#6 ) - (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) mode_8bppchunkybmm::gfxbCpuBank#4 + (byte) dtv_control#236 ← phi( mode_8bppchunkybmm::@4/(byte) dtv_control#221 ) + (byte) mode_8bppchunkybmm::y#7 ← phi( mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::y#5 ) + (word) mode_8bppchunkybmm::x#5 ← phi( mode_8bppchunkybmm::@4/(word) mode_8bppchunkybmm::x#4 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#4 ← phi( mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#6 ) + (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 call dtvSetCpuBankSegment1 to:mode_8bppchunkybmm::@10 mode_8bppchunkybmm::@10: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@6 - (byte) dtv_control#220 ? phi( mode_8bppchunkybmm::@6/(byte) dtv_control#236 ) - (byte) mode_8bppchunkybmm::y#4 ? phi( mode_8bppchunkybmm::@6/(byte) mode_8bppchunkybmm::y#7 ) - (word) mode_8bppchunkybmm::x#3 ? phi( mode_8bppchunkybmm::@6/(word) mode_8bppchunkybmm::x#5 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#5 ? phi( mode_8bppchunkybmm::@6/(byte) mode_8bppchunkybmm::gfxbCpuBank#4 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ? ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#5 - (byte*) mode_8bppchunkybmm::gfxb#2 ? ((byte*)) (word/signed word/dword/signed dword) $4000 + (byte) dtv_control#220 ← phi( mode_8bppchunkybmm::@6/(byte) dtv_control#236 ) + (byte) mode_8bppchunkybmm::y#4 ← phi( mode_8bppchunkybmm::@6/(byte) mode_8bppchunkybmm::y#7 ) + (word) mode_8bppchunkybmm::x#3 ← phi( mode_8bppchunkybmm::@6/(word) mode_8bppchunkybmm::x#5 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#5 ← phi( mode_8bppchunkybmm::@6/(byte) mode_8bppchunkybmm::gfxbCpuBank#4 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#5 + (byte*) mode_8bppchunkybmm::gfxb#2 ← ((byte*)) (word/signed word/dword/signed dword) $4000 to:mode_8bppchunkybmm::@5 mode_8bppchunkybmm::@7: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@5 - (byte) dtv_control#188 ? phi( mode_8bppchunkybmm::@5/(byte) dtv_control#204 ) - (byte) mode_8bppchunkybmm::gfxbCpuBank#9 ? phi( mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 ) - (byte*) mode_8bppchunkybmm::gfxb#6 ? phi( mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 ) - (byte) mode_8bppchunkybmm::y#3 ? phi( mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::y#2 ) - (byte) mode_8bppchunkybmm::y#1 ? (byte) mode_8bppchunkybmm::y#3 + rangenext(0,$c7) - (bool~) mode_8bppchunkybmm::$30 ? (byte) mode_8bppchunkybmm::y#1 != rangelast(0,$c7) + (byte) dtv_control#188 ← phi( mode_8bppchunkybmm::@5/(byte) dtv_control#204 ) + (byte) mode_8bppchunkybmm::gfxbCpuBank#9 ← phi( mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 ) + (byte*) mode_8bppchunkybmm::gfxb#6 ← phi( mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 ) + (byte) mode_8bppchunkybmm::y#3 ← phi( mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::y#2 ) + (byte) mode_8bppchunkybmm::y#1 ← (byte) mode_8bppchunkybmm::y#3 + rangenext(0,$c7) + (bool~) mode_8bppchunkybmm::$30 ← (byte) mode_8bppchunkybmm::y#1 != rangelast(0,$c7) if((bool~) mode_8bppchunkybmm::$30) goto mode_8bppchunkybmm::@3 to:mode_8bppchunkybmm::@8 mode_8bppchunkybmm::@8: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@7 - (byte) dtv_control#160 ? phi( mode_8bppchunkybmm::@7/(byte) dtv_control#188 ) - (byte/signed byte/word/signed word/dword/signed dword~) mode_8bppchunkybmm::$19 ? (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 - (byte~) mode_8bppchunkybmm::$20 ? ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) mode_8bppchunkybmm::$19 - (byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ? (byte~) mode_8bppchunkybmm::$20 + (byte) dtv_control#160 ← phi( mode_8bppchunkybmm::@7/(byte) dtv_control#188 ) + (byte/signed byte/word/signed word/dword/signed dword~) mode_8bppchunkybmm::$19 ← (word/signed word/dword/signed dword) $4000 / (word/signed word/dword/signed dword) $4000 + (byte~) mode_8bppchunkybmm::$20 ← ((byte)) (byte/signed byte/word/signed word/dword/signed dword~) mode_8bppchunkybmm::$19 + (byte) dtvSetCpuBankSegment1::cpuBankIdx#2 ← (byte~) mode_8bppchunkybmm::$20 call dtvSetCpuBankSegment1 to:mode_8bppchunkybmm::@11 mode_8bppchunkybmm::@11: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@8 - (byte) dtv_control#128 ? phi( mode_8bppchunkybmm::@8/(byte) dtv_control#160 ) + (byte) dtv_control#128 ← phi( mode_8bppchunkybmm::@8/(byte) dtv_control#160 ) call mode_ctrl to:mode_8bppchunkybmm::@12 mode_8bppchunkybmm::@12: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@11 - (byte) dtv_control#95 ? phi( mode_8bppchunkybmm::@11/(byte) dtv_control#16 ) - (byte) dtv_control#52 ? (byte) dtv_control#95 + (byte) dtv_control#95 ← phi( mode_8bppchunkybmm::@11/(byte) dtv_control#16 ) + (byte) dtv_control#52 ← (byte) dtv_control#95 to:mode_8bppchunkybmm::@return mode_8bppchunkybmm::@return: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@12 - (byte) dtv_control#96 ? phi( mode_8bppchunkybmm::@12/(byte) dtv_control#52 ) - (byte) dtv_control#53 ? (byte) dtv_control#96 + (byte) dtv_control#96 ← phi( mode_8bppchunkybmm::@12/(byte) dtv_control#52 ) + (byte) dtv_control#53 ← (byte) dtv_control#96 return to:@return @54: scope:[] from @41 - (byte) dtv_control#129 ? phi( @41/(byte) dtv_control#15 ) - (byte*) print_char_cursor#51 ? phi( @41/(byte*) print_char_cursor#70 ) - (byte*) print_line_cursor#49 ? phi( @41/(byte*) print_line_cursor#67 ) - (byte*) print_screen#33 ? phi( @41/(byte*) print_screen#50 ) + (byte) dtv_control#129 ← phi( @41/(byte) dtv_control#15 ) + (byte*) print_char_cursor#51 ← phi( @41/(byte*) print_char_cursor#70 ) + (byte*) print_line_cursor#49 ← phi( @41/(byte*) print_line_cursor#67 ) + (byte*) print_screen#33 ← phi( @41/(byte*) print_screen#50 ) call main to:@55 @55: scope:[] from @54 - (byte) dtv_control#97 ? phi( @54/(byte) dtv_control#1 ) - (byte*) print_char_cursor#30 ? phi( @54/(byte*) print_char_cursor#11 ) - (byte*) print_line_cursor#29 ? phi( @54/(byte*) print_line_cursor#10 ) - (byte*) print_screen#16 ? phi( @54/(byte*) print_screen#4 ) - (byte*) print_screen#7 ? (byte*) print_screen#16 - (byte*) print_line_cursor#15 ? (byte*) print_line_cursor#29 - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#30 - (byte) dtv_control#54 ? (byte) dtv_control#97 + (byte) dtv_control#97 ← phi( @54/(byte) dtv_control#1 ) + (byte*) print_char_cursor#30 ← phi( @54/(byte*) print_char_cursor#11 ) + (byte*) print_line_cursor#29 ← phi( @54/(byte*) print_line_cursor#10 ) + (byte*) print_screen#16 ← phi( @54/(byte*) print_screen#4 ) + (byte*) print_screen#7 ← (byte*) print_screen#16 + (byte*) print_line_cursor#15 ← (byte*) print_line_cursor#29 + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#30 + (byte) dtv_control#54 ← (byte) dtv_control#97 to:@end @end: scope:[] from @55 @@ -6512,36 +6512,36 @@ Culled Empty Block (label) bitmap_line::@34 Culled Empty Block (label) bitmap_line::@35 Culled Empty Block (label) bitmap_line::@36 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [191] (bool~) print_str_lines::$2 ? (byte) print_str_lines::ch#0 == (byte) '@' from [190] (bool~) print_str_lines::$1 ? (byte) print_str_lines::ch#0 != (byte) '@' -Inversing boolean not [366] (bool~) bitmap_init::$4 ? (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [365] (bool~) bitmap_init::$3 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [385] (bool~) bitmap_init::$12 ? (byte~) bitmap_init::$10 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [384] (bool~) bitmap_init::$11 ? (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [524] (bool~) bitmap_line_xdyi::$4 ? (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [523] (bool~) bitmap_line_xdyi::$3 ? (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 -Inversing boolean not [547] (bool~) bitmap_line_xdyd::$4 ? (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [546] (bool~) bitmap_line_xdyd::$3 ? (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 -Inversing boolean not [570] (bool~) bitmap_line_ydxi::$4 ? (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [569] (bool~) bitmap_line_ydxi::$3 ? (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 -Inversing boolean not [594] (bool~) bitmap_line_ydxd::$4 ? (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [593] (bool~) bitmap_line_ydxd::$3 ? (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 -Inversing boolean not [723] (bool~) menu::$31 ? (byte~) menu::$29 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [722] (bool~) menu::$30 ? (byte~) menu::$29 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [732] (bool~) menu::$35 ? (byte~) menu::$33 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [731] (bool~) menu::$34 ? (byte~) menu::$33 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [751] (bool~) menu::$39 ? (byte~) menu::$37 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [750] (bool~) menu::$38 ? (byte~) menu::$37 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [764] (bool~) menu::$43 ? (byte~) menu::$41 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [763] (bool~) menu::$42 ? (byte~) menu::$41 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [777] (bool~) menu::$47 ? (byte~) menu::$45 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [776] (bool~) menu::$46 ? (byte~) menu::$45 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [790] (bool~) menu::$51 ? (byte~) menu::$49 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [789] (bool~) menu::$50 ? (byte~) menu::$49 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [803] (bool~) menu::$55 ? (byte~) menu::$53 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [802] (bool~) menu::$54 ? (byte~) menu::$53 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [816] (bool~) menu::$59 ? (byte~) menu::$57 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [815] (bool~) menu::$58 ? (byte~) menu::$57 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [829] (bool~) menu::$63 ? (byte~) menu::$61 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [828] (bool~) menu::$62 ? (byte~) menu::$61 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [842] (bool~) menu::$67 ? (byte~) menu::$65 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [841] (bool~) menu::$66 ? (byte~) menu::$65 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [855] (bool~) menu::$71 ? (byte~) menu::$69 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [854] (bool~) menu::$70 ? (byte~) menu::$69 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [868] (bool~) menu::$75 ? (byte~) menu::$73 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [867] (bool~) menu::$74 ? (byte~) menu::$73 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [896] (bool~) mode_ctrl::$3 ? (byte~) mode_ctrl::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [895] (bool~) mode_ctrl::$2 ? (byte~) mode_ctrl::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [906] (bool~) mode_ctrl::$6 ? (byte~) mode_ctrl::$4 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [905] (bool~) mode_ctrl::$5 ? (byte~) mode_ctrl::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [918] (bool~) mode_ctrl::$10 ? (byte~) mode_ctrl::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [917] (bool~) mode_ctrl::$9 ? (byte~) mode_ctrl::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [930] (bool~) mode_ctrl::$14 ? (byte~) mode_ctrl::$12 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [929] (bool~) mode_ctrl::$13 ? (byte~) mode_ctrl::$12 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [942] (bool~) mode_ctrl::$18 ? (byte~) mode_ctrl::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [941] (bool~) mode_ctrl::$17 ? (byte~) mode_ctrl::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [954] (bool~) mode_ctrl::$22 ? (byte~) mode_ctrl::$20 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [953] (bool~) mode_ctrl::$21 ? (byte~) mode_ctrl::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [966] (bool~) mode_ctrl::$26 ? (byte~) mode_ctrl::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [965] (bool~) mode_ctrl::$25 ? (byte~) mode_ctrl::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [978] (bool~) mode_ctrl::$30 ? (byte~) mode_ctrl::$28 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [977] (bool~) mode_ctrl::$29 ? (byte~) mode_ctrl::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [985] (bool~) mode_ctrl::$32 ? (byte) mode_ctrl::ctrl#14 == (byte) dtv_control#72 from [984] (bool~) mode_ctrl::$31 ? (byte) mode_ctrl::ctrl#14 != (byte) dtv_control#72 -Inversing boolean not [1925] (bool~) mode_8bpppixelcell::$22 ? (byte~) mode_8bpppixelcell::$20 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1924] (bool~) mode_8bpppixelcell::$21 ? (byte~) mode_8bpppixelcell::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [2002] (bool~) mode_8bppchunkybmm::$25 ? (byte*) mode_8bppchunkybmm::gfxb#3 != (word/dword/signed dword) $8000 from [2001] (bool~) mode_8bppchunkybmm::$24 ? (byte*) mode_8bppchunkybmm::gfxb#3 == (word/dword/signed dword) $8000 +Inversing boolean not [191] (bool~) print_str_lines::$2 ← (byte) print_str_lines::ch#0 == (byte) '@' from [190] (bool~) print_str_lines::$1 ← (byte) print_str_lines::ch#0 != (byte) '@' +Inversing boolean not [366] (bool~) bitmap_init::$4 ← (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [365] (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [385] (bool~) bitmap_init::$12 ← (byte~) bitmap_init::$10 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [384] (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [524] (bool~) bitmap_line_xdyi::$4 ← (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [523] (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 +Inversing boolean not [547] (bool~) bitmap_line_xdyd::$4 ← (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [546] (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 +Inversing boolean not [570] (bool~) bitmap_line_ydxi::$4 ← (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [569] (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 +Inversing boolean not [594] (bool~) bitmap_line_ydxd::$4 ← (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [593] (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 +Inversing boolean not [723] (bool~) menu::$31 ← (byte~) menu::$29 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [722] (bool~) menu::$30 ← (byte~) menu::$29 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [732] (bool~) menu::$35 ← (byte~) menu::$33 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [731] (bool~) menu::$34 ← (byte~) menu::$33 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [751] (bool~) menu::$39 ← (byte~) menu::$37 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [750] (bool~) menu::$38 ← (byte~) menu::$37 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [764] (bool~) menu::$43 ← (byte~) menu::$41 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [763] (bool~) menu::$42 ← (byte~) menu::$41 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [777] (bool~) menu::$47 ← (byte~) menu::$45 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [776] (bool~) menu::$46 ← (byte~) menu::$45 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [790] (bool~) menu::$51 ← (byte~) menu::$49 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [789] (bool~) menu::$50 ← (byte~) menu::$49 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [803] (bool~) menu::$55 ← (byte~) menu::$53 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [802] (bool~) menu::$54 ← (byte~) menu::$53 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [816] (bool~) menu::$59 ← (byte~) menu::$57 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [815] (bool~) menu::$58 ← (byte~) menu::$57 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [829] (bool~) menu::$63 ← (byte~) menu::$61 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [828] (bool~) menu::$62 ← (byte~) menu::$61 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [842] (bool~) menu::$67 ← (byte~) menu::$65 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [841] (bool~) menu::$66 ← (byte~) menu::$65 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [855] (bool~) menu::$71 ← (byte~) menu::$69 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [854] (bool~) menu::$70 ← (byte~) menu::$69 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [868] (bool~) menu::$75 ← (byte~) menu::$73 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [867] (bool~) menu::$74 ← (byte~) menu::$73 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [896] (bool~) mode_ctrl::$3 ← (byte~) mode_ctrl::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [895] (bool~) mode_ctrl::$2 ← (byte~) mode_ctrl::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [906] (bool~) mode_ctrl::$6 ← (byte~) mode_ctrl::$4 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [905] (bool~) mode_ctrl::$5 ← (byte~) mode_ctrl::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [918] (bool~) mode_ctrl::$10 ← (byte~) mode_ctrl::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [917] (bool~) mode_ctrl::$9 ← (byte~) mode_ctrl::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [930] (bool~) mode_ctrl::$14 ← (byte~) mode_ctrl::$12 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [929] (bool~) mode_ctrl::$13 ← (byte~) mode_ctrl::$12 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [942] (bool~) mode_ctrl::$18 ← (byte~) mode_ctrl::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [941] (bool~) mode_ctrl::$17 ← (byte~) mode_ctrl::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [954] (bool~) mode_ctrl::$22 ← (byte~) mode_ctrl::$20 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [953] (bool~) mode_ctrl::$21 ← (byte~) mode_ctrl::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [966] (bool~) mode_ctrl::$26 ← (byte~) mode_ctrl::$24 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [965] (bool~) mode_ctrl::$25 ← (byte~) mode_ctrl::$24 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [978] (bool~) mode_ctrl::$30 ← (byte~) mode_ctrl::$28 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [977] (bool~) mode_ctrl::$29 ← (byte~) mode_ctrl::$28 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [985] (bool~) mode_ctrl::$32 ← (byte) mode_ctrl::ctrl#14 == (byte) dtv_control#72 from [984] (bool~) mode_ctrl::$31 ← (byte) mode_ctrl::ctrl#14 != (byte) dtv_control#72 +Inversing boolean not [1925] (bool~) mode_8bpppixelcell::$22 ← (byte~) mode_8bpppixelcell::$20 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1924] (bool~) mode_8bpppixelcell::$21 ← (byte~) mode_8bpppixelcell::$20 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [2002] (bool~) mode_8bppchunkybmm::$25 ← (byte*) mode_8bppchunkybmm::gfxb#3 != (word/dword/signed dword) $8000 from [2001] (bool~) mode_8bppchunkybmm::$24 ← (byte*) mode_8bppchunkybmm::gfxb#3 == (word/dword/signed dword) $8000 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte*) print_screen#0 = (byte*) print_line_cursor#0 (byte*) print_char_cursor#0 (byte*) print_screen#83 (byte*) print_line_cursor#102 (byte*) print_char_cursor#102 (byte*) print_screen#82 (byte*) print_line_cursor#101 (byte*) print_char_cursor#101 (byte*) print_screen#80 (byte*) print_line_cursor#99 (byte*) print_char_cursor#99 (byte*) print_screen#66 (byte*) print_line_cursor#85 (byte*) print_char_cursor#85 (byte*) print_screen#65 (byte*) print_line_cursor#83 (byte*) print_char_cursor#84 (byte*) print_screen#50 (byte*) print_line_cursor#67 (byte*) print_char_cursor#70 (byte*) print_screen#33 (byte*) print_line_cursor#49 (byte*) print_char_cursor#51 Alias (byte*) print_str_lines::str#2 = (byte*) print_str_lines::str#6 @@ -7961,130 +7961,130 @@ if() condition always true - replacing block destination [232] if(true) goto men if() condition always true - replacing block destination [297] if(true) goto mode_ctrl::@2 Successful SSA optimization Pass2ConstantIfs Successful SSA optimization Pass2ConstantStringConsolidation -Fixing inline constructor with bitmap_clear::$3 ? *(bitmap_plot_xhi#0+0) w= *(bitmap_plot_xlo#0+0) -Fixing inline constructor with bitmap_plot::$2 ? *(bitmap_plot_xhi#0 + bitmap_plot::x#4) w= *(bitmap_plot_xlo#0 + bitmap_plot::x#4) -Fixing inline constructor with bitmap_plot::$3 ? *(bitmap_plot_yhi#0 + bitmap_plot::y#4) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#4) +Fixing inline constructor with bitmap_clear::$3 ← *(bitmap_plot_xhi#0+0) w= *(bitmap_plot_xlo#0+0) +Fixing inline constructor with bitmap_plot::$2 ← *(bitmap_plot_xhi#0 + bitmap_plot::x#4) w= *(bitmap_plot_xlo#0 + bitmap_plot::x#4) +Fixing inline constructor with bitmap_plot::$3 ← *(bitmap_plot_yhi#0 + bitmap_plot::y#4) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#4) Successful SSA optimization Pass2FixInlineConstructors -Inferred type updated to byte in [483] (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$29 ? (byte) mode_stdbitmap::l#2 -Inferred type updated to byte in [484] (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$30 ? (byte) mode_stdbitmap::l#2 +Inferred type updated to byte in [483] (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$29 ← (byte) mode_stdbitmap::l#2 +Inferred type updated to byte in [484] (byte/signed word/word/dword/signed dword~) mode_stdbitmap::$30 ← (byte) mode_stdbitmap::l#2 Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ? ((byte*)) (word~) bitmap_clear::$3 -Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$0 +Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ← ((byte*)) (word~) bitmap_clear::$3 +Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$0 Successful SSA optimization Pass2NopCastElimination Removing unused block main::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value bitmap_init::x#1 ? ++ bitmap_init::x#2 to ++ +Resolved ranged next value bitmap_init::x#1 ← ++ bitmap_init::x#2 to ++ Resolved ranged comparison value if(bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_init::y#1 ? ++ bitmap_init::y#2 to ++ +Resolved ranged next value bitmap_init::y#1 ← ++ bitmap_init::y#2 to ++ Resolved ranged comparison value if(bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_clear::x#1 ? ++ bitmap_clear::x#2 to ++ +Resolved ranged next value bitmap_clear::x#1 ← ++ bitmap_clear::x#2 to ++ Resolved ranged comparison value if(bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value bitmap_clear::y#1 ? ++ bitmap_clear::y#4 to ++ +Resolved ranged next value bitmap_clear::y#1 ← ++ bitmap_clear::y#4 to ++ Resolved ranged comparison value if(bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value menu::i#1 ? ++ menu::i#2 to ++ +Resolved ranged next value menu::i#1 ← ++ menu::i#2 to ++ Resolved ranged comparison value if(menu::i#1!=rangelast(0,$f)) goto menu::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_stdchar::i#1 ? ++ mode_stdchar::i#2 to ++ +Resolved ranged next value mode_stdchar::i#1 ← ++ mode_stdchar::i#2 to ++ Resolved ranged comparison value if(mode_stdchar::i#1!=rangelast(0,$f)) goto mode_stdchar::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_stdchar::cx#1 ? ++ mode_stdchar::cx#2 to ++ +Resolved ranged next value mode_stdchar::cx#1 ← ++ mode_stdchar::cx#2 to ++ Resolved ranged comparison value if(mode_stdchar::cx#1!=rangelast(0,$27)) goto mode_stdchar::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_stdchar::cy#1 ? ++ mode_stdchar::cy#4 to ++ +Resolved ranged next value mode_stdchar::cy#1 ← ++ mode_stdchar::cy#4 to ++ Resolved ranged comparison value if(mode_stdchar::cy#1!=rangelast(0,$18)) goto mode_stdchar::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_ecmchar::i#1 ? ++ mode_ecmchar::i#2 to ++ +Resolved ranged next value mode_ecmchar::i#1 ← ++ mode_ecmchar::i#2 to ++ Resolved ranged comparison value if(mode_ecmchar::i#1!=rangelast(0,$f)) goto mode_ecmchar::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_ecmchar::cx#1 ? ++ mode_ecmchar::cx#2 to ++ +Resolved ranged next value mode_ecmchar::cx#1 ← ++ mode_ecmchar::cx#2 to ++ Resolved ranged comparison value if(mode_ecmchar::cx#1!=rangelast(0,$27)) goto mode_ecmchar::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_ecmchar::cy#1 ? ++ mode_ecmchar::cy#4 to ++ +Resolved ranged next value mode_ecmchar::cy#1 ← ++ mode_ecmchar::cy#4 to ++ Resolved ranged comparison value if(mode_ecmchar::cy#1!=rangelast(0,$18)) goto mode_ecmchar::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_mcchar::i#1 ? ++ mode_mcchar::i#2 to ++ +Resolved ranged next value mode_mcchar::i#1 ← ++ mode_mcchar::i#2 to ++ Resolved ranged comparison value if(mode_mcchar::i#1!=rangelast(0,$f)) goto mode_mcchar::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_mcchar::cx#1 ? ++ mode_mcchar::cx#2 to ++ +Resolved ranged next value mode_mcchar::cx#1 ← ++ mode_mcchar::cx#2 to ++ Resolved ranged comparison value if(mode_mcchar::cx#1!=rangelast(0,$27)) goto mode_mcchar::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_mcchar::cy#1 ? ++ mode_mcchar::cy#4 to ++ +Resolved ranged next value mode_mcchar::cy#1 ← ++ mode_mcchar::cy#4 to ++ Resolved ranged comparison value if(mode_mcchar::cy#1!=rangelast(0,$18)) goto mode_mcchar::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_stdbitmap::i#1 ? ++ mode_stdbitmap::i#2 to ++ +Resolved ranged next value mode_stdbitmap::i#1 ← ++ mode_stdbitmap::i#2 to ++ Resolved ranged comparison value if(mode_stdbitmap::i#1!=rangelast(0,$f)) goto mode_stdbitmap::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_stdbitmap::cx#1 ? ++ mode_stdbitmap::cx#2 to ++ +Resolved ranged next value mode_stdbitmap::cx#1 ← ++ mode_stdbitmap::cx#2 to ++ Resolved ranged comparison value if(mode_stdbitmap::cx#1!=rangelast(0,$27)) goto mode_stdbitmap::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_stdbitmap::cy#1 ? ++ mode_stdbitmap::cy#4 to ++ +Resolved ranged next value mode_stdbitmap::cy#1 ← ++ mode_stdbitmap::cy#4 to ++ Resolved ranged comparison value if(mode_stdbitmap::cy#1!=rangelast(0,$18)) goto mode_stdbitmap::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_hicolstdchar::i#1 ? ++ mode_hicolstdchar::i#2 to ++ +Resolved ranged next value mode_hicolstdchar::i#1 ← ++ mode_hicolstdchar::i#2 to ++ Resolved ranged comparison value if(mode_hicolstdchar::i#1!=rangelast(0,$f)) goto mode_hicolstdchar::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_hicolstdchar::cx#1 ? ++ mode_hicolstdchar::cx#2 to ++ +Resolved ranged next value mode_hicolstdchar::cx#1 ← ++ mode_hicolstdchar::cx#2 to ++ Resolved ranged comparison value if(mode_hicolstdchar::cx#1!=rangelast(0,$27)) goto mode_hicolstdchar::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_hicolstdchar::cy#1 ? ++ mode_hicolstdchar::cy#4 to ++ +Resolved ranged next value mode_hicolstdchar::cy#1 ← ++ mode_hicolstdchar::cy#4 to ++ Resolved ranged comparison value if(mode_hicolstdchar::cy#1!=rangelast(0,$18)) goto mode_hicolstdchar::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_hicolecmchar::i#1 ? ++ mode_hicolecmchar::i#2 to ++ +Resolved ranged next value mode_hicolecmchar::i#1 ← ++ mode_hicolecmchar::i#2 to ++ Resolved ranged comparison value if(mode_hicolecmchar::i#1!=rangelast(0,$f)) goto mode_hicolecmchar::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_hicolecmchar::cx#1 ? ++ mode_hicolecmchar::cx#2 to ++ +Resolved ranged next value mode_hicolecmchar::cx#1 ← ++ mode_hicolecmchar::cx#2 to ++ Resolved ranged comparison value if(mode_hicolecmchar::cx#1!=rangelast(0,$27)) goto mode_hicolecmchar::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_hicolecmchar::cy#1 ? ++ mode_hicolecmchar::cy#4 to ++ +Resolved ranged next value mode_hicolecmchar::cy#1 ← ++ mode_hicolecmchar::cy#4 to ++ Resolved ranged comparison value if(mode_hicolecmchar::cy#1!=rangelast(0,$18)) goto mode_hicolecmchar::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_hicolmcchar::i#1 ? ++ mode_hicolmcchar::i#2 to ++ +Resolved ranged next value mode_hicolmcchar::i#1 ← ++ mode_hicolmcchar::i#2 to ++ Resolved ranged comparison value if(mode_hicolmcchar::i#1!=rangelast(0,$f)) goto mode_hicolmcchar::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_hicolmcchar::cx#1 ? ++ mode_hicolmcchar::cx#2 to ++ +Resolved ranged next value mode_hicolmcchar::cx#1 ← ++ mode_hicolmcchar::cx#2 to ++ Resolved ranged comparison value if(mode_hicolmcchar::cx#1!=rangelast(0,$27)) goto mode_hicolmcchar::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_hicolmcchar::cy#1 ? ++ mode_hicolmcchar::cy#4 to ++ +Resolved ranged next value mode_hicolmcchar::cy#1 ← ++ mode_hicolmcchar::cy#4 to ++ Resolved ranged comparison value if(mode_hicolmcchar::cy#1!=rangelast(0,$18)) goto mode_hicolmcchar::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_twoplanebitmap::i#1 ? ++ mode_twoplanebitmap::i#2 to ++ +Resolved ranged next value mode_twoplanebitmap::i#1 ← ++ mode_twoplanebitmap::i#2 to ++ Resolved ranged comparison value if(mode_twoplanebitmap::i#1!=rangelast(0,$f)) goto mode_twoplanebitmap::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_twoplanebitmap::cx#1 ? ++ mode_twoplanebitmap::cx#2 to ++ +Resolved ranged next value mode_twoplanebitmap::cx#1 ← ++ mode_twoplanebitmap::cx#2 to ++ Resolved ranged comparison value if(mode_twoplanebitmap::cx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_twoplanebitmap::cy#1 ? ++ mode_twoplanebitmap::cy#4 to ++ +Resolved ranged next value mode_twoplanebitmap::cy#1 ← ++ mode_twoplanebitmap::cy#4 to ++ Resolved ranged comparison value if(mode_twoplanebitmap::cy#1!=rangelast(0,$18)) goto mode_twoplanebitmap::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_twoplanebitmap::ax#1 ? ++ mode_twoplanebitmap::ax#2 to ++ +Resolved ranged next value mode_twoplanebitmap::ax#1 ← ++ mode_twoplanebitmap::ax#2 to ++ Resolved ranged comparison value if(mode_twoplanebitmap::ax#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@8 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_twoplanebitmap::ay#1 ? ++ mode_twoplanebitmap::ay#5 to ++ +Resolved ranged next value mode_twoplanebitmap::ay#1 ← ++ mode_twoplanebitmap::ay#5 to ++ Resolved ranged comparison value if(mode_twoplanebitmap::ay#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@7 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value mode_twoplanebitmap::bx#1 ? ++ mode_twoplanebitmap::bx#2 to ++ +Resolved ranged next value mode_twoplanebitmap::bx#1 ← ++ mode_twoplanebitmap::bx#2 to ++ Resolved ranged comparison value if(mode_twoplanebitmap::bx#1!=rangelast(0,$27)) goto mode_twoplanebitmap::@16 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_twoplanebitmap::by#1 ? ++ mode_twoplanebitmap::by#4 to ++ +Resolved ranged next value mode_twoplanebitmap::by#1 ← ++ mode_twoplanebitmap::by#4 to ++ Resolved ranged comparison value if(mode_twoplanebitmap::by#1!=rangelast(0,$c7)) goto mode_twoplanebitmap::@15 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value mode_sixsfred::i#1 ? ++ mode_sixsfred::i#2 to ++ +Resolved ranged next value mode_sixsfred::i#1 ← ++ mode_sixsfred::i#2 to ++ Resolved ranged comparison value if(mode_sixsfred::i#1!=rangelast(0,$f)) goto mode_sixsfred::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_sixsfred::cx#1 ? ++ mode_sixsfred::cx#2 to ++ +Resolved ranged next value mode_sixsfred::cx#1 ← ++ mode_sixsfred::cx#2 to ++ Resolved ranged comparison value if(mode_sixsfred::cx#1!=rangelast(0,$27)) goto mode_sixsfred::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_sixsfred::cy#1 ? ++ mode_sixsfred::cy#4 to ++ +Resolved ranged next value mode_sixsfred::cy#1 ← ++ mode_sixsfred::cy#4 to ++ Resolved ranged comparison value if(mode_sixsfred::cy#1!=rangelast(0,$18)) goto mode_sixsfred::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_sixsfred::ax#1 ? ++ mode_sixsfred::ax#2 to ++ +Resolved ranged next value mode_sixsfred::ax#1 ← ++ mode_sixsfred::ax#2 to ++ Resolved ranged comparison value if(mode_sixsfred::ax#1!=rangelast(0,$27)) goto mode_sixsfred::@8 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_sixsfred::ay#1 ? ++ mode_sixsfred::ay#4 to ++ +Resolved ranged next value mode_sixsfred::ay#1 ← ++ mode_sixsfred::ay#4 to ++ Resolved ranged comparison value if(mode_sixsfred::ay#1!=rangelast(0,$c7)) goto mode_sixsfred::@7 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value mode_sixsfred::bx#1 ? ++ mode_sixsfred::bx#2 to ++ +Resolved ranged next value mode_sixsfred::bx#1 ← ++ mode_sixsfred::bx#2 to ++ Resolved ranged comparison value if(mode_sixsfred::bx#1!=rangelast(0,$27)) goto mode_sixsfred::@12 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_sixsfred::by#1 ? ++ mode_sixsfred::by#4 to ++ +Resolved ranged next value mode_sixsfred::by#1 ← ++ mode_sixsfred::by#4 to ++ Resolved ranged comparison value if(mode_sixsfred::by#1!=rangelast(0,$c7)) goto mode_sixsfred::@11 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value mode_sixsfred2::i#1 ? ++ mode_sixsfred2::i#2 to ++ +Resolved ranged next value mode_sixsfred2::i#1 ← ++ mode_sixsfred2::i#2 to ++ Resolved ranged comparison value if(mode_sixsfred2::i#1!=rangelast(0,$f)) goto mode_sixsfred2::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_sixsfred2::cx#1 ? ++ mode_sixsfred2::cx#2 to ++ +Resolved ranged next value mode_sixsfred2::cx#1 ← ++ mode_sixsfred2::cx#2 to ++ Resolved ranged comparison value if(mode_sixsfred2::cx#1!=rangelast(0,$27)) goto mode_sixsfred2::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_sixsfred2::cy#1 ? ++ mode_sixsfred2::cy#4 to ++ +Resolved ranged next value mode_sixsfred2::cy#1 ← ++ mode_sixsfred2::cy#4 to ++ Resolved ranged comparison value if(mode_sixsfred2::cy#1!=rangelast(0,$18)) goto mode_sixsfred2::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_sixsfred2::ax#1 ? ++ mode_sixsfred2::ax#2 to ++ +Resolved ranged next value mode_sixsfred2::ax#1 ← ++ mode_sixsfred2::ax#2 to ++ Resolved ranged comparison value if(mode_sixsfred2::ax#1!=rangelast(0,$27)) goto mode_sixsfred2::@8 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_sixsfred2::ay#1 ? ++ mode_sixsfred2::ay#4 to ++ +Resolved ranged next value mode_sixsfred2::ay#1 ← ++ mode_sixsfred2::ay#4 to ++ Resolved ranged comparison value if(mode_sixsfred2::ay#1!=rangelast(0,$c7)) goto mode_sixsfred2::@7 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value mode_sixsfred2::bx#1 ? ++ mode_sixsfred2::bx#2 to ++ +Resolved ranged next value mode_sixsfred2::bx#1 ← ++ mode_sixsfred2::bx#2 to ++ Resolved ranged comparison value if(mode_sixsfred2::bx#1!=rangelast(0,$27)) goto mode_sixsfred2::@12 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_sixsfred2::by#1 ? ++ mode_sixsfred2::by#4 to ++ +Resolved ranged next value mode_sixsfred2::by#1 ← ++ mode_sixsfred2::by#4 to ++ Resolved ranged comparison value if(mode_sixsfred2::by#1!=rangelast(0,$c7)) goto mode_sixsfred2::@11 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value mode_8bpppixelcell::i#1 ? ++ mode_8bpppixelcell::i#2 to ++ +Resolved ranged next value mode_8bpppixelcell::i#1 ← ++ mode_8bpppixelcell::i#2 to ++ Resolved ranged comparison value if(mode_8bpppixelcell::i#1!=rangelast(0,$f)) goto mode_8bpppixelcell::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_8bpppixelcell::ax#1 ? ++ mode_8bpppixelcell::ax#2 to ++ +Resolved ranged next value mode_8bpppixelcell::ax#1 ← ++ mode_8bpppixelcell::ax#2 to ++ Resolved ranged comparison value if(mode_8bpppixelcell::ax#1!=rangelast(0,$27)) goto mode_8bpppixelcell::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value mode_8bpppixelcell::ay#1 ? ++ mode_8bpppixelcell::ay#4 to ++ +Resolved ranged next value mode_8bpppixelcell::ay#1 ← ++ mode_8bpppixelcell::ay#4 to ++ Resolved ranged comparison value if(mode_8bpppixelcell::ay#1!=rangelast(0,$18)) goto mode_8bpppixelcell::@3 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value mode_8bpppixelcell::cp#1 ? ++ mode_8bpppixelcell::cp#2 to ++ +Resolved ranged next value mode_8bpppixelcell::cp#1 ← ++ mode_8bpppixelcell::cp#2 to ++ Resolved ranged comparison value if(mode_8bpppixelcell::cp#1!=rangelast(0,7)) goto mode_8bpppixelcell::@9 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value mode_8bpppixelcell::cr#1 ? ++ mode_8bpppixelcell::cr#6 to ++ +Resolved ranged next value mode_8bpppixelcell::cr#1 ← ++ mode_8bpppixelcell::cr#6 to ++ Resolved ranged comparison value if(mode_8bpppixelcell::cr#1!=rangelast(0,7)) goto mode_8bpppixelcell::@8 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value mode_8bpppixelcell::ch#1 ? ++ mode_8bpppixelcell::ch#7 to ++ +Resolved ranged next value mode_8bpppixelcell::ch#1 ← ++ mode_8bpppixelcell::ch#7 to ++ Resolved ranged comparison value if(mode_8bpppixelcell::ch#1!=rangelast(0,$ff)) goto mode_8bpppixelcell::@7 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value mode_8bppchunkybmm::i#1 ? ++ mode_8bppchunkybmm::i#2 to ++ +Resolved ranged next value mode_8bppchunkybmm::i#1 ← ++ mode_8bppchunkybmm::i#2 to ++ Resolved ranged comparison value if(mode_8bppchunkybmm::i#1!=rangelast(0,$f)) goto mode_8bppchunkybmm::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mode_8bppchunkybmm::x#1 ? ++ mode_8bppchunkybmm::x#2 to ++ +Resolved ranged next value mode_8bppchunkybmm::x#1 ← ++ mode_8bppchunkybmm::x#2 to ++ Resolved ranged comparison value if(mode_8bppchunkybmm::x#1!=rangelast(0,$13f)) goto mode_8bppchunkybmm::@4 to (word/signed word/dword/signed dword) $140 -Resolved ranged next value mode_8bppchunkybmm::y#1 ? ++ mode_8bppchunkybmm::y#6 to ++ +Resolved ranged next value mode_8bppchunkybmm::y#1 ← ++ mode_8bppchunkybmm::y#6 to ++ Resolved ranged comparison value if(mode_8bppchunkybmm::y#1!=rangelast(0,$c7)) goto mode_8bppchunkybmm::@3 to (byte/word/signed word/dword/signed dword) $c8 Culled Empty Block (label) @4 Culled Empty Block (label) @5 @@ -8824,284 +8824,284 @@ Calls in [mode_stdchar] to mode_ctrl:1121 Calls in [print_str_lines] to print_ln:1146 Created 188 initial phi equivalence classes -Coalesced [119] menu::c#3 ? menu::c#1 -Coalesced [120] menu::i#3 ? menu::i#1 -Coalesced [138] mode_8bppchunkybmm::gfxb#8 ? mode_8bppchunkybmm::gfxb#5 -Coalesced [139] mode_8bppchunkybmm::gfxbCpuBank#11 ? mode_8bppchunkybmm::gfxbCpuBank#7 -Coalesced [143] dtvSetCpuBankSegment1::cpuBankIdx#4 ? dtvSetCpuBankSegment1::cpuBankIdx#1 -Coalesced [146] mode_8bppchunkybmm::gfxbCpuBank#13 ? mode_8bppchunkybmm::gfxbCpuBank#2 -Coalesced [161] mode_8bppchunkybmm::gfxb#7 ? mode_8bppchunkybmm::gfxb#1 -Coalesced [162] mode_8bppchunkybmm::y#8 ? mode_8bppchunkybmm::y#1 -Coalesced [163] mode_8bppchunkybmm::gfxbCpuBank#10 ? mode_8bppchunkybmm::gfxbCpuBank#8 -Coalesced (already) [164] mode_8bppchunkybmm::gfxb#9 ? mode_8bppchunkybmm::gfxb#1 -Coalesced [165] mode_8bppchunkybmm::x#6 ? mode_8bppchunkybmm::x#1 -Coalesced (already) [166] mode_8bppchunkybmm::gfxbCpuBank#12 ? mode_8bppchunkybmm::gfxbCpuBank#8 -Coalesced [167] mode_8bppchunkybmm::gfxb#10 ? mode_8bppchunkybmm::gfxb#3 -Coalesced (already) [168] mode_8bppchunkybmm::gfxbCpuBank#14 ? mode_8bppchunkybmm::gfxbCpuBank#4 -Coalesced [169] mode_8bppchunkybmm::i#3 ? mode_8bppchunkybmm::i#1 -Coalesced [171] dtv_control#293 ? dtv_control#145 -Coalesced [186] mode_ctrl::ctrl#29 ? mode_ctrl::ctrl#1 -Coalesced [193] mode_ctrl::ctrl#31 ? mode_ctrl::ctrl#2 -Coalesced [200] mode_ctrl::ctrl#33 ? mode_ctrl::ctrl#3 -Coalesced [207] mode_ctrl::ctrl#35 ? mode_ctrl::ctrl#4 -Coalesced [214] mode_ctrl::ctrl#37 ? mode_ctrl::ctrl#5 -Coalesced [221] mode_ctrl::ctrl#39 ? mode_ctrl::ctrl#6 -Coalesced [233] dtv_control#294 ? dtv_control#17 -Coalesced [234] mode_ctrl::ctrl#41 ? mode_ctrl::ctrl#22 -Coalesced [235] mode_ctrl::ctrl#40 ? mode_ctrl::ctrl#13 -Coalesced [236] mode_ctrl::ctrl#38 ? mode_ctrl::ctrl#12 -Coalesced [237] mode_ctrl::ctrl#36 ? mode_ctrl::ctrl#11 -Coalesced [238] mode_ctrl::ctrl#34 ? mode_ctrl::ctrl#10 -Coalesced [239] mode_ctrl::ctrl#32 ? mode_ctrl::ctrl#17 -Coalesced [240] mode_ctrl::ctrl#30 ? mode_ctrl::ctrl#0 -Coalesced [278] mode_8bpppixelcell::gfxa#6 ? mode_8bpppixelcell::gfxa#3 -Coalesced [292] mode_8bpppixelcell::chargen#11 ? mode_8bpppixelcell::chargen#4 -Coalesced [293] mode_8bpppixelcell::gfxb#11 ? mode_8bpppixelcell::gfxb#7 -Coalesced [294] mode_8bpppixelcell::col#11 ? mode_8bpppixelcell::col#7 -Coalesced [298] mode_8bpppixelcell::bits#6 ? mode_8bpppixelcell::bits#0 -Coalesced [299] mode_8bpppixelcell::gfxb#13 ? mode_8bpppixelcell::gfxb#5 -Coalesced [300] mode_8bpppixelcell::col#13 ? mode_8bpppixelcell::col#5 -Not coalescing [304] mode_8bpppixelcell::c#3 ? mode_8bpppixelcell::col#2 -Coalesced [319] mode_8bpppixelcell::chargen#9 ? mode_8bpppixelcell::chargen#1 -Coalesced [320] mode_8bpppixelcell::gfxb#9 ? mode_8bpppixelcell::gfxb#1 -Coalesced [321] mode_8bpppixelcell::col#9 ? mode_8bpppixelcell::col#1 -Coalesced [322] mode_8bpppixelcell::ch#9 ? mode_8bpppixelcell::ch#1 -Coalesced (already) [323] mode_8bpppixelcell::chargen#10 ? mode_8bpppixelcell::chargen#1 -Coalesced (already) [324] mode_8bpppixelcell::gfxb#10 ? mode_8bpppixelcell::gfxb#1 -Coalesced (already) [325] mode_8bpppixelcell::col#10 ? mode_8bpppixelcell::col#1 -Coalesced [326] mode_8bpppixelcell::cr#7 ? mode_8bpppixelcell::cr#1 -Coalesced [327] mode_8bpppixelcell::bits#5 ? mode_8bpppixelcell::bits#1 -Coalesced (already) [328] mode_8bpppixelcell::gfxb#12 ? mode_8bpppixelcell::gfxb#1 -Coalesced (already) [329] mode_8bpppixelcell::col#12 ? mode_8bpppixelcell::col#1 -Coalesced [330] mode_8bpppixelcell::cp#5 ? mode_8bpppixelcell::cp#1 -Coalesced [331] mode_8bpppixelcell::ay#5 ? mode_8bpppixelcell::ay#1 -Coalesced [332] mode_8bpppixelcell::gfxa#5 ? mode_8bpppixelcell::gfxa#1 -Coalesced [333] mode_8bpppixelcell::ax#3 ? mode_8bpppixelcell::ax#1 -Coalesced (already) [334] mode_8bpppixelcell::gfxa#7 ? mode_8bpppixelcell::gfxa#1 -Coalesced [335] mode_8bpppixelcell::i#3 ? mode_8bpppixelcell::i#1 -Coalesced [359] mode_sixsfred::col#6 ? mode_sixsfred::col#3 -Coalesced [370] mode_sixsfred::gfxa#6 ? mode_sixsfred::gfxa#3 -Coalesced [381] mode_sixsfred::gfxb#6 ? mode_sixsfred::gfxb#3 -Coalesced [392] mode_sixsfred::gfxb#5 ? mode_sixsfred::gfxb#1 -Coalesced [393] mode_sixsfred::by#5 ? mode_sixsfred::by#1 -Coalesced (already) [394] mode_sixsfred::gfxb#7 ? mode_sixsfred::gfxb#1 -Coalesced [395] mode_sixsfred::bx#3 ? mode_sixsfred::bx#1 -Coalesced [396] mode_sixsfred::ay#5 ? mode_sixsfred::ay#1 -Coalesced [397] mode_sixsfred::gfxa#5 ? mode_sixsfred::gfxa#1 -Coalesced (already) [398] mode_sixsfred::gfxa#7 ? mode_sixsfred::gfxa#1 -Coalesced [399] mode_sixsfred::ax#3 ? mode_sixsfred::ax#1 -Coalesced [400] mode_sixsfred::cy#5 ? mode_sixsfred::cy#1 -Coalesced [401] mode_sixsfred::col#5 ? mode_sixsfred::col#1 -Coalesced [402] mode_sixsfred::cx#3 ? mode_sixsfred::cx#1 -Coalesced (already) [403] mode_sixsfred::col#7 ? mode_sixsfred::col#1 -Coalesced [404] mode_sixsfred::i#3 ? mode_sixsfred::i#1 -Coalesced [430] mode_twoplanebitmap::col#6 ? mode_twoplanebitmap::col#3 -Coalesced [443] mode_twoplanebitmap::gfxa#11 ? mode_twoplanebitmap::gfxa#7 -Coalesced [449] mode_twoplanebitmap::gfxa#12 ? mode_twoplanebitmap::gfxa#2 -Coalesced [456] mode_twoplanebitmap::gfxb#6 ? mode_twoplanebitmap::gfxb#3 -Coalesced [467] mode_twoplanebitmap::gfxb#5 ? mode_twoplanebitmap::gfxb#1 -Coalesced [468] mode_twoplanebitmap::by#5 ? mode_twoplanebitmap::by#1 -Coalesced (already) [469] mode_twoplanebitmap::gfxb#7 ? mode_twoplanebitmap::gfxb#1 -Coalesced [470] mode_twoplanebitmap::bx#3 ? mode_twoplanebitmap::bx#1 -Coalesced [471] mode_twoplanebitmap::ay#8 ? mode_twoplanebitmap::ay#1 -Coalesced [472] mode_twoplanebitmap::gfxa#9 ? mode_twoplanebitmap::gfxa#6 -Coalesced (already) [473] mode_twoplanebitmap::gfxa#10 ? mode_twoplanebitmap::gfxa#6 -Coalesced [474] mode_twoplanebitmap::ax#6 ? mode_twoplanebitmap::ax#1 -Coalesced [477] mode_twoplanebitmap::gfxa#13 ? mode_twoplanebitmap::gfxa#1 -Coalesced [478] mode_twoplanebitmap::cy#5 ? mode_twoplanebitmap::cy#1 -Coalesced [479] mode_twoplanebitmap::col#5 ? mode_twoplanebitmap::col#1 -Coalesced [480] mode_twoplanebitmap::cx#3 ? mode_twoplanebitmap::cx#1 -Coalesced (already) [481] mode_twoplanebitmap::col#7 ? mode_twoplanebitmap::col#1 -Coalesced [482] mode_twoplanebitmap::i#3 ? mode_twoplanebitmap::i#1 -Coalesced [506] mode_sixsfred2::col#6 ? mode_sixsfred2::col#3 -Coalesced [519] mode_sixsfred2::gfxa#6 ? mode_sixsfred2::gfxa#3 -Coalesced [530] mode_sixsfred2::gfxb#6 ? mode_sixsfred2::gfxb#3 -Coalesced [541] mode_sixsfred2::gfxb#5 ? mode_sixsfred2::gfxb#1 -Coalesced [542] mode_sixsfred2::by#5 ? mode_sixsfred2::by#1 -Coalesced (already) [543] mode_sixsfred2::gfxb#7 ? mode_sixsfred2::gfxb#1 -Coalesced [544] mode_sixsfred2::bx#3 ? mode_sixsfred2::bx#1 -Coalesced [545] mode_sixsfred2::ay#5 ? mode_sixsfred2::ay#1 -Coalesced [546] mode_sixsfred2::gfxa#5 ? mode_sixsfred2::gfxa#1 -Coalesced (already) [547] mode_sixsfred2::gfxa#7 ? mode_sixsfred2::gfxa#1 -Coalesced [548] mode_sixsfred2::ax#3 ? mode_sixsfred2::ax#1 -Coalesced [549] mode_sixsfred2::cy#5 ? mode_sixsfred2::cy#1 -Coalesced [550] mode_sixsfred2::col#5 ? mode_sixsfred2::col#1 -Coalesced [551] mode_sixsfred2::cx#3 ? mode_sixsfred2::cx#1 -Coalesced (already) [552] mode_sixsfred2::col#7 ? mode_sixsfred2::col#1 -Coalesced [553] mode_sixsfred2::i#3 ? mode_sixsfred2::i#1 -Coalesced [572] mode_hicolmcchar::col#6 ? mode_hicolmcchar::col#3 -Coalesced [573] mode_hicolmcchar::ch#6 ? mode_hicolmcchar::ch#3 -Coalesced [590] mode_hicolmcchar::cy#5 ? mode_hicolmcchar::cy#1 -Coalesced [591] mode_hicolmcchar::col#5 ? mode_hicolmcchar::col#1 -Coalesced [592] mode_hicolmcchar::ch#5 ? mode_hicolmcchar::ch#1 -Coalesced [593] mode_hicolmcchar::cx#3 ? mode_hicolmcchar::cx#1 -Coalesced (already) [594] mode_hicolmcchar::col#7 ? mode_hicolmcchar::col#1 -Coalesced (already) [595] mode_hicolmcchar::ch#7 ? mode_hicolmcchar::ch#1 -Coalesced [596] mode_hicolmcchar::i#3 ? mode_hicolmcchar::i#1 -Coalesced [616] mode_hicolecmchar::col#6 ? mode_hicolecmchar::col#3 -Coalesced [617] mode_hicolecmchar::ch#6 ? mode_hicolecmchar::ch#3 -Coalesced [634] mode_hicolecmchar::cy#5 ? mode_hicolecmchar::cy#1 -Coalesced [635] mode_hicolecmchar::col#5 ? mode_hicolecmchar::col#1 -Coalesced [636] mode_hicolecmchar::ch#5 ? mode_hicolecmchar::ch#1 -Coalesced [637] mode_hicolecmchar::cx#3 ? mode_hicolecmchar::cx#1 -Coalesced (already) [638] mode_hicolecmchar::col#7 ? mode_hicolecmchar::col#1 -Coalesced (already) [639] mode_hicolecmchar::ch#7 ? mode_hicolecmchar::ch#1 -Coalesced [640] mode_hicolecmchar::i#3 ? mode_hicolecmchar::i#1 -Coalesced [657] mode_hicolstdchar::col#6 ? mode_hicolstdchar::col#3 -Coalesced [658] mode_hicolstdchar::ch#6 ? mode_hicolstdchar::ch#3 -Coalesced [675] mode_hicolstdchar::cy#5 ? mode_hicolstdchar::cy#1 -Coalesced [676] mode_hicolstdchar::col#5 ? mode_hicolstdchar::col#1 -Coalesced [677] mode_hicolstdchar::ch#5 ? mode_hicolstdchar::ch#1 -Coalesced [678] mode_hicolstdchar::cx#3 ? mode_hicolstdchar::cx#1 -Coalesced (already) [679] mode_hicolstdchar::col#7 ? mode_hicolstdchar::col#1 -Coalesced (already) [680] mode_hicolstdchar::ch#7 ? mode_hicolstdchar::ch#1 -Coalesced [681] mode_hicolstdchar::i#3 ? mode_hicolstdchar::i#1 -Coalesced [696] mode_stdbitmap::ch#6 ? mode_stdbitmap::ch#3 -Coalesced [724] mode_stdbitmap::l#4 ? mode_stdbitmap::l#1 -Coalesced [725] mode_stdbitmap::cy#5 ? mode_stdbitmap::cy#1 -Coalesced [726] mode_stdbitmap::ch#5 ? mode_stdbitmap::ch#1 -Coalesced [727] mode_stdbitmap::cx#3 ? mode_stdbitmap::cx#1 -Coalesced (already) [728] mode_stdbitmap::ch#7 ? mode_stdbitmap::ch#1 -Coalesced [729] mode_stdbitmap::i#3 ? mode_stdbitmap::i#1 -Coalesced [740] bitmap_line_ydxi::xd#8 ? bitmap_line_ydxi::xd#0 -Coalesced [741] bitmap_line_ydxi::x#9 ? bitmap_line_ydxi::x#0 -Coalesced [742] bitmap_line_ydxi::y#9 ? bitmap_line_ydxi::y#0 -Coalesced [743] bitmap_line_ydxi::yd#8 ? bitmap_line_ydxi::yd#0 -Coalesced [744] bitmap_line_ydxi::y1#8 ? bitmap_line_ydxi::y1#0 -Coalesced [752] bitmap_line_xdyi::yd#7 ? bitmap_line_xdyi::yd#0 -Coalesced [753] bitmap_line_xdyi::x#8 ? bitmap_line_xdyi::x#0 -Coalesced [754] bitmap_line_xdyi::y#8 ? bitmap_line_xdyi::y#0 -Coalesced [755] bitmap_line_xdyi::xd#7 ? bitmap_line_xdyi::xd#0 -Coalesced [756] bitmap_line_xdyi::x1#7 ? bitmap_line_xdyi::x1#0 -Coalesced [765] bitmap_line_ydxd::xd#7 ? bitmap_line_ydxd::xd#0 -Coalesced [766] bitmap_line_ydxd::x#8 ? bitmap_line_ydxd::x#0 -Coalesced [767] bitmap_line_ydxd::y#9 ? bitmap_line_ydxd::y#0 -Coalesced [768] bitmap_line_ydxd::yd#7 ? bitmap_line_ydxd::yd#0 -Coalesced [769] bitmap_line_ydxd::y1#7 ? bitmap_line_ydxd::y1#0 -Coalesced [776] bitmap_line_xdyd::yd#7 ? bitmap_line_xdyd::yd#0 -Coalesced [777] bitmap_line_xdyd::x#8 ? bitmap_line_xdyd::x#0 -Coalesced [778] bitmap_line_xdyd::y#8 ? bitmap_line_xdyd::y#0 -Coalesced [779] bitmap_line_xdyd::xd#7 ? bitmap_line_xdyd::xd#0 -Coalesced [780] bitmap_line_xdyd::x1#7 ? bitmap_line_xdyd::x1#0 -Coalesced [791] bitmap_line_ydxd::xd#8 ? bitmap_line_ydxd::xd#1 -Coalesced [792] bitmap_line_ydxd::x#9 ? bitmap_line_ydxd::x#1 -Coalesced [793] bitmap_line_ydxd::y#10 ? bitmap_line_ydxd::y#1 -Coalesced [794] bitmap_line_ydxd::yd#8 ? bitmap_line_ydxd::yd#1 -Coalesced [795] bitmap_line_ydxd::y1#8 ? bitmap_line_ydxd::y1#1 -Coalesced [802] bitmap_line_xdyd::yd#8 ? bitmap_line_xdyd::yd#1 -Coalesced [803] bitmap_line_xdyd::x#9 ? bitmap_line_xdyd::x#1 -Coalesced [804] bitmap_line_xdyd::y#9 ? bitmap_line_xdyd::y#1 -Coalesced [805] bitmap_line_xdyd::xd#8 ? bitmap_line_xdyd::xd#1 -Coalesced [806] bitmap_line_xdyd::x1#8 ? bitmap_line_xdyd::x1#1 -Coalesced [815] bitmap_line_ydxi::xd#7 ? bitmap_line_ydxi::xd#1 -Coalesced [816] bitmap_line_ydxi::x#8 ? bitmap_line_ydxi::x#1 -Coalesced [817] bitmap_line_ydxi::y#8 ? bitmap_line_ydxi::y#1 -Coalesced [818] bitmap_line_ydxi::yd#7 ? bitmap_line_ydxi::yd#1 -Coalesced [819] bitmap_line_ydxi::y1#7 ? bitmap_line_ydxi::y1#1 -Coalesced [826] bitmap_line_xdyi::yd#8 ? bitmap_line_xdyi::yd#1 -Coalesced [827] bitmap_line_xdyi::x#9 ? bitmap_line_xdyi::x#1 -Coalesced [828] bitmap_line_xdyi::y#9 ? bitmap_line_xdyi::y#1 -Coalesced [829] bitmap_line_xdyi::xd#8 ? bitmap_line_xdyi::xd#1 -Coalesced [830] bitmap_line_xdyi::x1#8 ? bitmap_line_xdyi::x1#1 -Coalesced [834] bitmap_line_xdyi::x#10 ? bitmap_line_xdyi::x#6 -Coalesced [835] bitmap_line_xdyi::y#10 ? bitmap_line_xdyi::y#5 -Coalesced [836] bitmap_line_xdyi::e#7 ? bitmap_line_xdyi::e#0 -Coalesced [840] bitmap_plot::x#6 ? bitmap_plot::x#0 -Coalesced [841] bitmap_plot::y#6 ? bitmap_plot::y#0 -Coalesced [848] bitmap_line_xdyi::y#12 ? bitmap_line_xdyi::y#2 -Coalesced [849] bitmap_line_xdyi::e#9 ? bitmap_line_xdyi::e#2 -Coalesced [854] bitmap_line_xdyi::x#11 ? bitmap_line_xdyi::x#2 -Coalesced [855] bitmap_line_xdyi::y#11 ? bitmap_line_xdyi::y#6 -Coalesced [856] bitmap_line_xdyi::e#8 ? bitmap_line_xdyi::e#6 -Coalesced (already) [857] bitmap_line_xdyi::y#13 ? bitmap_line_xdyi::y#3 -Coalesced [858] bitmap_line_xdyi::e#10 ? bitmap_line_xdyi::e#1 -Coalesced [868] bitmap_line_ydxi::x#10 ? bitmap_line_ydxi::x#5 -Coalesced [869] bitmap_line_ydxi::y#10 ? bitmap_line_ydxi::y#6 -Coalesced [870] bitmap_line_ydxi::e#7 ? bitmap_line_ydxi::e#0 -Coalesced [874] bitmap_plot::x#8 ? bitmap_plot::x#2 -Coalesced [875] bitmap_plot::y#8 ? bitmap_plot::y#2 -Coalesced [882] bitmap_line_ydxi::x#12 ? bitmap_line_ydxi::x#2 -Coalesced [883] bitmap_line_ydxi::e#9 ? bitmap_line_ydxi::e#2 -Coalesced [888] bitmap_line_ydxi::x#11 ? bitmap_line_ydxi::x#6 -Coalesced [889] bitmap_line_ydxi::y#11 ? bitmap_line_ydxi::y#2 -Coalesced [890] bitmap_line_ydxi::e#8 ? bitmap_line_ydxi::e#6 -Coalesced (already) [891] bitmap_line_ydxi::x#13 ? bitmap_line_ydxi::x#3 -Coalesced [892] bitmap_line_ydxi::e#10 ? bitmap_line_ydxi::e#1 -Coalesced [895] bitmap_line_xdyd::x#10 ? bitmap_line_xdyd::x#6 -Coalesced [896] bitmap_line_xdyd::y#10 ? bitmap_line_xdyd::y#5 -Coalesced [897] bitmap_line_xdyd::e#7 ? bitmap_line_xdyd::e#0 -Coalesced [901] bitmap_plot::x#5 ? bitmap_plot::x#1 -Coalesced [902] bitmap_plot::y#5 ? bitmap_plot::y#1 -Coalesced [909] bitmap_line_xdyd::y#12 ? bitmap_line_xdyd::y#2 -Coalesced [910] bitmap_line_xdyd::e#9 ? bitmap_line_xdyd::e#2 -Coalesced [915] bitmap_line_xdyd::x#11 ? bitmap_line_xdyd::x#2 -Coalesced [916] bitmap_line_xdyd::y#11 ? bitmap_line_xdyd::y#6 -Coalesced [917] bitmap_line_xdyd::e#8 ? bitmap_line_xdyd::e#6 -Coalesced (already) [918] bitmap_line_xdyd::y#13 ? bitmap_line_xdyd::y#3 -Coalesced [919] bitmap_line_xdyd::e#10 ? bitmap_line_xdyd::e#1 -Coalesced [922] bitmap_line_ydxd::x#10 ? bitmap_line_ydxd::x#5 -Coalesced [923] bitmap_line_ydxd::y#11 ? bitmap_line_ydxd::y#7 -Coalesced [924] bitmap_line_ydxd::e#7 ? bitmap_line_ydxd::e#0 -Coalesced [928] bitmap_plot::x#7 ? bitmap_plot::x#3 -Coalesced [929] bitmap_plot::y#7 ? bitmap_plot::y#3 -Coalesced [936] bitmap_line_ydxd::x#12 ? bitmap_line_ydxd::x#2 -Coalesced [937] bitmap_line_ydxd::e#9 ? bitmap_line_ydxd::e#2 -Coalesced [942] bitmap_line_ydxd::x#11 ? bitmap_line_ydxd::x#6 -Coalesced [943] bitmap_line_ydxd::y#12 ? bitmap_line_ydxd::y#3 -Coalesced [944] bitmap_line_ydxd::e#8 ? bitmap_line_ydxd::e#6 -Coalesced (already) [945] bitmap_line_ydxd::x#13 ? bitmap_line_ydxd::x#3 -Coalesced [946] bitmap_line_ydxd::e#10 ? bitmap_line_ydxd::e#1 -Coalesced [950] bitmap_clear::bitmap#7 ? bitmap_clear::bitmap#3 -Coalesced [959] bitmap_clear::bitmap#6 ? bitmap_clear::bitmap#1 -Coalesced [960] bitmap_clear::y#5 ? bitmap_clear::y#1 -Coalesced (already) [961] bitmap_clear::bitmap#8 ? bitmap_clear::bitmap#1 -Coalesced [962] bitmap_clear::x#3 ? bitmap_clear::x#1 -Coalesced [985] bitmap_init::yoffs#7 ? bitmap_init::yoffs#1 -Coalesced [990] bitmap_init::y#5 ? bitmap_init::y#1 -Coalesced [991] bitmap_init::yoffs#5 ? bitmap_init::yoffs#4 -Coalesced (already) [992] bitmap_init::yoffs#6 ? bitmap_init::yoffs#2 -Coalesced [993] bitmap_init::x#5 ? bitmap_init::x#1 -Coalesced [994] bitmap_init::bits#5 ? bitmap_init::bits#4 -Coalesced [995] bitmap_init::bits#6 ? bitmap_init::bits#1 -Coalesced [1014] mode_mcchar::col#6 ? mode_mcchar::col#3 -Coalesced [1015] mode_mcchar::ch#6 ? mode_mcchar::ch#3 -Coalesced [1034] mode_mcchar::cy#5 ? mode_mcchar::cy#1 -Coalesced [1035] mode_mcchar::col#5 ? mode_mcchar::col#1 -Coalesced [1036] mode_mcchar::ch#5 ? mode_mcchar::ch#1 -Coalesced [1037] mode_mcchar::cx#3 ? mode_mcchar::cx#1 -Coalesced (already) [1038] mode_mcchar::col#7 ? mode_mcchar::col#1 -Coalesced (already) [1039] mode_mcchar::ch#7 ? mode_mcchar::ch#1 -Coalesced [1040] mode_mcchar::i#3 ? mode_mcchar::i#1 -Coalesced [1060] mode_ecmchar::col#6 ? mode_ecmchar::col#3 -Coalesced [1061] mode_ecmchar::ch#6 ? mode_ecmchar::ch#3 -Coalesced [1080] mode_ecmchar::cy#5 ? mode_ecmchar::cy#1 -Coalesced [1081] mode_ecmchar::col#5 ? mode_ecmchar::col#1 -Coalesced [1082] mode_ecmchar::ch#5 ? mode_ecmchar::ch#1 -Coalesced [1083] mode_ecmchar::cx#3 ? mode_ecmchar::cx#1 -Coalesced (already) [1084] mode_ecmchar::col#7 ? mode_ecmchar::col#1 -Coalesced (already) [1085] mode_ecmchar::ch#7 ? mode_ecmchar::ch#1 -Coalesced [1086] mode_ecmchar::i#3 ? mode_ecmchar::i#1 -Coalesced [1103] mode_stdchar::col#6 ? mode_stdchar::col#3 -Coalesced [1104] mode_stdchar::ch#6 ? mode_stdchar::ch#3 -Coalesced [1123] mode_stdchar::cy#5 ? mode_stdchar::cy#1 -Coalesced [1124] mode_stdchar::col#5 ? mode_stdchar::col#1 -Coalesced [1125] mode_stdchar::ch#5 ? mode_stdchar::ch#1 -Coalesced [1126] mode_stdchar::cx#3 ? mode_stdchar::cx#1 -Coalesced (already) [1127] mode_stdchar::col#7 ? mode_stdchar::col#1 -Coalesced (already) [1128] mode_stdchar::ch#7 ? mode_stdchar::ch#1 -Coalesced [1129] mode_stdchar::i#3 ? mode_stdchar::i#1 -Coalesced [1134] print_str_lines::str#11 ? print_str_lines::str#2 -Coalesced [1135] print_char_cursor#104 ? print_char_cursor#19 -Coalesced [1142] print_char_cursor#107 ? print_char_cursor#1 -Coalesced [1147] print_str_lines::str#10 ? print_str_lines::str#0 -Not coalescing [1148] print_char_cursor#103 ? print_line_cursor#19 -Coalesced [1149] print_line_cursor#103 ? print_line_cursor#19 -Coalesced (already) [1150] print_str_lines::str#12 ? print_str_lines::str#0 -Coalesced [1151] print_char_cursor#105 ? print_char_cursor#32 -Coalesced (already) [1152] print_char_cursor#106 ? print_char_cursor#17 -Coalesced [1153] print_line_cursor#104 ? print_line_cursor#17 -Coalesced (already) [1158] print_line_cursor#105 ? print_line_cursor#19 -Coalesced [1165] print_cls::sc#3 ? print_cls::sc#1 +Coalesced [119] menu::c#3 ← menu::c#1 +Coalesced [120] menu::i#3 ← menu::i#1 +Coalesced [138] mode_8bppchunkybmm::gfxb#8 ← mode_8bppchunkybmm::gfxb#5 +Coalesced [139] mode_8bppchunkybmm::gfxbCpuBank#11 ← mode_8bppchunkybmm::gfxbCpuBank#7 +Coalesced [143] dtvSetCpuBankSegment1::cpuBankIdx#4 ← dtvSetCpuBankSegment1::cpuBankIdx#1 +Coalesced [146] mode_8bppchunkybmm::gfxbCpuBank#13 ← mode_8bppchunkybmm::gfxbCpuBank#2 +Coalesced [161] mode_8bppchunkybmm::gfxb#7 ← mode_8bppchunkybmm::gfxb#1 +Coalesced [162] mode_8bppchunkybmm::y#8 ← mode_8bppchunkybmm::y#1 +Coalesced [163] mode_8bppchunkybmm::gfxbCpuBank#10 ← mode_8bppchunkybmm::gfxbCpuBank#8 +Coalesced (already) [164] mode_8bppchunkybmm::gfxb#9 ← mode_8bppchunkybmm::gfxb#1 +Coalesced [165] mode_8bppchunkybmm::x#6 ← mode_8bppchunkybmm::x#1 +Coalesced (already) [166] mode_8bppchunkybmm::gfxbCpuBank#12 ← mode_8bppchunkybmm::gfxbCpuBank#8 +Coalesced [167] mode_8bppchunkybmm::gfxb#10 ← mode_8bppchunkybmm::gfxb#3 +Coalesced (already) [168] mode_8bppchunkybmm::gfxbCpuBank#14 ← mode_8bppchunkybmm::gfxbCpuBank#4 +Coalesced [169] mode_8bppchunkybmm::i#3 ← mode_8bppchunkybmm::i#1 +Coalesced [171] dtv_control#293 ← dtv_control#145 +Coalesced [186] mode_ctrl::ctrl#29 ← mode_ctrl::ctrl#1 +Coalesced [193] mode_ctrl::ctrl#31 ← mode_ctrl::ctrl#2 +Coalesced [200] mode_ctrl::ctrl#33 ← mode_ctrl::ctrl#3 +Coalesced [207] mode_ctrl::ctrl#35 ← mode_ctrl::ctrl#4 +Coalesced [214] mode_ctrl::ctrl#37 ← mode_ctrl::ctrl#5 +Coalesced [221] mode_ctrl::ctrl#39 ← mode_ctrl::ctrl#6 +Coalesced [233] dtv_control#294 ← dtv_control#17 +Coalesced [234] mode_ctrl::ctrl#41 ← mode_ctrl::ctrl#22 +Coalesced [235] mode_ctrl::ctrl#40 ← mode_ctrl::ctrl#13 +Coalesced [236] mode_ctrl::ctrl#38 ← mode_ctrl::ctrl#12 +Coalesced [237] mode_ctrl::ctrl#36 ← mode_ctrl::ctrl#11 +Coalesced [238] mode_ctrl::ctrl#34 ← mode_ctrl::ctrl#10 +Coalesced [239] mode_ctrl::ctrl#32 ← mode_ctrl::ctrl#17 +Coalesced [240] mode_ctrl::ctrl#30 ← mode_ctrl::ctrl#0 +Coalesced [278] mode_8bpppixelcell::gfxa#6 ← mode_8bpppixelcell::gfxa#3 +Coalesced [292] mode_8bpppixelcell::chargen#11 ← mode_8bpppixelcell::chargen#4 +Coalesced [293] mode_8bpppixelcell::gfxb#11 ← mode_8bpppixelcell::gfxb#7 +Coalesced [294] mode_8bpppixelcell::col#11 ← mode_8bpppixelcell::col#7 +Coalesced [298] mode_8bpppixelcell::bits#6 ← mode_8bpppixelcell::bits#0 +Coalesced [299] mode_8bpppixelcell::gfxb#13 ← mode_8bpppixelcell::gfxb#5 +Coalesced [300] mode_8bpppixelcell::col#13 ← mode_8bpppixelcell::col#5 +Not coalescing [304] mode_8bpppixelcell::c#3 ← mode_8bpppixelcell::col#2 +Coalesced [319] mode_8bpppixelcell::chargen#9 ← mode_8bpppixelcell::chargen#1 +Coalesced [320] mode_8bpppixelcell::gfxb#9 ← mode_8bpppixelcell::gfxb#1 +Coalesced [321] mode_8bpppixelcell::col#9 ← mode_8bpppixelcell::col#1 +Coalesced [322] mode_8bpppixelcell::ch#9 ← mode_8bpppixelcell::ch#1 +Coalesced (already) [323] mode_8bpppixelcell::chargen#10 ← mode_8bpppixelcell::chargen#1 +Coalesced (already) [324] mode_8bpppixelcell::gfxb#10 ← mode_8bpppixelcell::gfxb#1 +Coalesced (already) [325] mode_8bpppixelcell::col#10 ← mode_8bpppixelcell::col#1 +Coalesced [326] mode_8bpppixelcell::cr#7 ← mode_8bpppixelcell::cr#1 +Coalesced [327] mode_8bpppixelcell::bits#5 ← mode_8bpppixelcell::bits#1 +Coalesced (already) [328] mode_8bpppixelcell::gfxb#12 ← mode_8bpppixelcell::gfxb#1 +Coalesced (already) [329] mode_8bpppixelcell::col#12 ← mode_8bpppixelcell::col#1 +Coalesced [330] mode_8bpppixelcell::cp#5 ← mode_8bpppixelcell::cp#1 +Coalesced [331] mode_8bpppixelcell::ay#5 ← mode_8bpppixelcell::ay#1 +Coalesced [332] mode_8bpppixelcell::gfxa#5 ← mode_8bpppixelcell::gfxa#1 +Coalesced [333] mode_8bpppixelcell::ax#3 ← mode_8bpppixelcell::ax#1 +Coalesced (already) [334] mode_8bpppixelcell::gfxa#7 ← mode_8bpppixelcell::gfxa#1 +Coalesced [335] mode_8bpppixelcell::i#3 ← mode_8bpppixelcell::i#1 +Coalesced [359] mode_sixsfred::col#6 ← mode_sixsfred::col#3 +Coalesced [370] mode_sixsfred::gfxa#6 ← mode_sixsfred::gfxa#3 +Coalesced [381] mode_sixsfred::gfxb#6 ← mode_sixsfred::gfxb#3 +Coalesced [392] mode_sixsfred::gfxb#5 ← mode_sixsfred::gfxb#1 +Coalesced [393] mode_sixsfred::by#5 ← mode_sixsfred::by#1 +Coalesced (already) [394] mode_sixsfred::gfxb#7 ← mode_sixsfred::gfxb#1 +Coalesced [395] mode_sixsfred::bx#3 ← mode_sixsfred::bx#1 +Coalesced [396] mode_sixsfred::ay#5 ← mode_sixsfred::ay#1 +Coalesced [397] mode_sixsfred::gfxa#5 ← mode_sixsfred::gfxa#1 +Coalesced (already) [398] mode_sixsfred::gfxa#7 ← mode_sixsfred::gfxa#1 +Coalesced [399] mode_sixsfred::ax#3 ← mode_sixsfred::ax#1 +Coalesced [400] mode_sixsfred::cy#5 ← mode_sixsfred::cy#1 +Coalesced [401] mode_sixsfred::col#5 ← mode_sixsfred::col#1 +Coalesced [402] mode_sixsfred::cx#3 ← mode_sixsfred::cx#1 +Coalesced (already) [403] mode_sixsfred::col#7 ← mode_sixsfred::col#1 +Coalesced [404] mode_sixsfred::i#3 ← mode_sixsfred::i#1 +Coalesced [430] mode_twoplanebitmap::col#6 ← mode_twoplanebitmap::col#3 +Coalesced [443] mode_twoplanebitmap::gfxa#11 ← mode_twoplanebitmap::gfxa#7 +Coalesced [449] mode_twoplanebitmap::gfxa#12 ← mode_twoplanebitmap::gfxa#2 +Coalesced [456] mode_twoplanebitmap::gfxb#6 ← mode_twoplanebitmap::gfxb#3 +Coalesced [467] mode_twoplanebitmap::gfxb#5 ← mode_twoplanebitmap::gfxb#1 +Coalesced [468] mode_twoplanebitmap::by#5 ← mode_twoplanebitmap::by#1 +Coalesced (already) [469] mode_twoplanebitmap::gfxb#7 ← mode_twoplanebitmap::gfxb#1 +Coalesced [470] mode_twoplanebitmap::bx#3 ← mode_twoplanebitmap::bx#1 +Coalesced [471] mode_twoplanebitmap::ay#8 ← mode_twoplanebitmap::ay#1 +Coalesced [472] mode_twoplanebitmap::gfxa#9 ← mode_twoplanebitmap::gfxa#6 +Coalesced (already) [473] mode_twoplanebitmap::gfxa#10 ← mode_twoplanebitmap::gfxa#6 +Coalesced [474] mode_twoplanebitmap::ax#6 ← mode_twoplanebitmap::ax#1 +Coalesced [477] mode_twoplanebitmap::gfxa#13 ← mode_twoplanebitmap::gfxa#1 +Coalesced [478] mode_twoplanebitmap::cy#5 ← mode_twoplanebitmap::cy#1 +Coalesced [479] mode_twoplanebitmap::col#5 ← mode_twoplanebitmap::col#1 +Coalesced [480] mode_twoplanebitmap::cx#3 ← mode_twoplanebitmap::cx#1 +Coalesced (already) [481] mode_twoplanebitmap::col#7 ← mode_twoplanebitmap::col#1 +Coalesced [482] mode_twoplanebitmap::i#3 ← mode_twoplanebitmap::i#1 +Coalesced [506] mode_sixsfred2::col#6 ← mode_sixsfred2::col#3 +Coalesced [519] mode_sixsfred2::gfxa#6 ← mode_sixsfred2::gfxa#3 +Coalesced [530] mode_sixsfred2::gfxb#6 ← mode_sixsfred2::gfxb#3 +Coalesced [541] mode_sixsfred2::gfxb#5 ← mode_sixsfred2::gfxb#1 +Coalesced [542] mode_sixsfred2::by#5 ← mode_sixsfred2::by#1 +Coalesced (already) [543] mode_sixsfred2::gfxb#7 ← mode_sixsfred2::gfxb#1 +Coalesced [544] mode_sixsfred2::bx#3 ← mode_sixsfred2::bx#1 +Coalesced [545] mode_sixsfred2::ay#5 ← mode_sixsfred2::ay#1 +Coalesced [546] mode_sixsfred2::gfxa#5 ← mode_sixsfred2::gfxa#1 +Coalesced (already) [547] mode_sixsfred2::gfxa#7 ← mode_sixsfred2::gfxa#1 +Coalesced [548] mode_sixsfred2::ax#3 ← mode_sixsfred2::ax#1 +Coalesced [549] mode_sixsfred2::cy#5 ← mode_sixsfred2::cy#1 +Coalesced [550] mode_sixsfred2::col#5 ← mode_sixsfred2::col#1 +Coalesced [551] mode_sixsfred2::cx#3 ← mode_sixsfred2::cx#1 +Coalesced (already) [552] mode_sixsfred2::col#7 ← mode_sixsfred2::col#1 +Coalesced [553] mode_sixsfred2::i#3 ← mode_sixsfred2::i#1 +Coalesced [572] mode_hicolmcchar::col#6 ← mode_hicolmcchar::col#3 +Coalesced [573] mode_hicolmcchar::ch#6 ← mode_hicolmcchar::ch#3 +Coalesced [590] mode_hicolmcchar::cy#5 ← mode_hicolmcchar::cy#1 +Coalesced [591] mode_hicolmcchar::col#5 ← mode_hicolmcchar::col#1 +Coalesced [592] mode_hicolmcchar::ch#5 ← mode_hicolmcchar::ch#1 +Coalesced [593] mode_hicolmcchar::cx#3 ← mode_hicolmcchar::cx#1 +Coalesced (already) [594] mode_hicolmcchar::col#7 ← mode_hicolmcchar::col#1 +Coalesced (already) [595] mode_hicolmcchar::ch#7 ← mode_hicolmcchar::ch#1 +Coalesced [596] mode_hicolmcchar::i#3 ← mode_hicolmcchar::i#1 +Coalesced [616] mode_hicolecmchar::col#6 ← mode_hicolecmchar::col#3 +Coalesced [617] mode_hicolecmchar::ch#6 ← mode_hicolecmchar::ch#3 +Coalesced [634] mode_hicolecmchar::cy#5 ← mode_hicolecmchar::cy#1 +Coalesced [635] mode_hicolecmchar::col#5 ← mode_hicolecmchar::col#1 +Coalesced [636] mode_hicolecmchar::ch#5 ← mode_hicolecmchar::ch#1 +Coalesced [637] mode_hicolecmchar::cx#3 ← mode_hicolecmchar::cx#1 +Coalesced (already) [638] mode_hicolecmchar::col#7 ← mode_hicolecmchar::col#1 +Coalesced (already) [639] mode_hicolecmchar::ch#7 ← mode_hicolecmchar::ch#1 +Coalesced [640] mode_hicolecmchar::i#3 ← mode_hicolecmchar::i#1 +Coalesced [657] mode_hicolstdchar::col#6 ← mode_hicolstdchar::col#3 +Coalesced [658] mode_hicolstdchar::ch#6 ← mode_hicolstdchar::ch#3 +Coalesced [675] mode_hicolstdchar::cy#5 ← mode_hicolstdchar::cy#1 +Coalesced [676] mode_hicolstdchar::col#5 ← mode_hicolstdchar::col#1 +Coalesced [677] mode_hicolstdchar::ch#5 ← mode_hicolstdchar::ch#1 +Coalesced [678] mode_hicolstdchar::cx#3 ← mode_hicolstdchar::cx#1 +Coalesced (already) [679] mode_hicolstdchar::col#7 ← mode_hicolstdchar::col#1 +Coalesced (already) [680] mode_hicolstdchar::ch#7 ← mode_hicolstdchar::ch#1 +Coalesced [681] mode_hicolstdchar::i#3 ← mode_hicolstdchar::i#1 +Coalesced [696] mode_stdbitmap::ch#6 ← mode_stdbitmap::ch#3 +Coalesced [724] mode_stdbitmap::l#4 ← mode_stdbitmap::l#1 +Coalesced [725] mode_stdbitmap::cy#5 ← mode_stdbitmap::cy#1 +Coalesced [726] mode_stdbitmap::ch#5 ← mode_stdbitmap::ch#1 +Coalesced [727] mode_stdbitmap::cx#3 ← mode_stdbitmap::cx#1 +Coalesced (already) [728] mode_stdbitmap::ch#7 ← mode_stdbitmap::ch#1 +Coalesced [729] mode_stdbitmap::i#3 ← mode_stdbitmap::i#1 +Coalesced [740] bitmap_line_ydxi::xd#8 ← bitmap_line_ydxi::xd#0 +Coalesced [741] bitmap_line_ydxi::x#9 ← bitmap_line_ydxi::x#0 +Coalesced [742] bitmap_line_ydxi::y#9 ← bitmap_line_ydxi::y#0 +Coalesced [743] bitmap_line_ydxi::yd#8 ← bitmap_line_ydxi::yd#0 +Coalesced [744] bitmap_line_ydxi::y1#8 ← bitmap_line_ydxi::y1#0 +Coalesced [752] bitmap_line_xdyi::yd#7 ← bitmap_line_xdyi::yd#0 +Coalesced [753] bitmap_line_xdyi::x#8 ← bitmap_line_xdyi::x#0 +Coalesced [754] bitmap_line_xdyi::y#8 ← bitmap_line_xdyi::y#0 +Coalesced [755] bitmap_line_xdyi::xd#7 ← bitmap_line_xdyi::xd#0 +Coalesced [756] bitmap_line_xdyi::x1#7 ← bitmap_line_xdyi::x1#0 +Coalesced [765] bitmap_line_ydxd::xd#7 ← bitmap_line_ydxd::xd#0 +Coalesced [766] bitmap_line_ydxd::x#8 ← bitmap_line_ydxd::x#0 +Coalesced [767] bitmap_line_ydxd::y#9 ← bitmap_line_ydxd::y#0 +Coalesced [768] bitmap_line_ydxd::yd#7 ← bitmap_line_ydxd::yd#0 +Coalesced [769] bitmap_line_ydxd::y1#7 ← bitmap_line_ydxd::y1#0 +Coalesced [776] bitmap_line_xdyd::yd#7 ← bitmap_line_xdyd::yd#0 +Coalesced [777] bitmap_line_xdyd::x#8 ← bitmap_line_xdyd::x#0 +Coalesced [778] bitmap_line_xdyd::y#8 ← bitmap_line_xdyd::y#0 +Coalesced [779] bitmap_line_xdyd::xd#7 ← bitmap_line_xdyd::xd#0 +Coalesced [780] bitmap_line_xdyd::x1#7 ← bitmap_line_xdyd::x1#0 +Coalesced [791] bitmap_line_ydxd::xd#8 ← bitmap_line_ydxd::xd#1 +Coalesced [792] bitmap_line_ydxd::x#9 ← bitmap_line_ydxd::x#1 +Coalesced [793] bitmap_line_ydxd::y#10 ← bitmap_line_ydxd::y#1 +Coalesced [794] bitmap_line_ydxd::yd#8 ← bitmap_line_ydxd::yd#1 +Coalesced [795] bitmap_line_ydxd::y1#8 ← bitmap_line_ydxd::y1#1 +Coalesced [802] bitmap_line_xdyd::yd#8 ← bitmap_line_xdyd::yd#1 +Coalesced [803] bitmap_line_xdyd::x#9 ← bitmap_line_xdyd::x#1 +Coalesced [804] bitmap_line_xdyd::y#9 ← bitmap_line_xdyd::y#1 +Coalesced [805] bitmap_line_xdyd::xd#8 ← bitmap_line_xdyd::xd#1 +Coalesced [806] bitmap_line_xdyd::x1#8 ← bitmap_line_xdyd::x1#1 +Coalesced [815] bitmap_line_ydxi::xd#7 ← bitmap_line_ydxi::xd#1 +Coalesced [816] bitmap_line_ydxi::x#8 ← bitmap_line_ydxi::x#1 +Coalesced [817] bitmap_line_ydxi::y#8 ← bitmap_line_ydxi::y#1 +Coalesced [818] bitmap_line_ydxi::yd#7 ← bitmap_line_ydxi::yd#1 +Coalesced [819] bitmap_line_ydxi::y1#7 ← bitmap_line_ydxi::y1#1 +Coalesced [826] bitmap_line_xdyi::yd#8 ← bitmap_line_xdyi::yd#1 +Coalesced [827] bitmap_line_xdyi::x#9 ← bitmap_line_xdyi::x#1 +Coalesced [828] bitmap_line_xdyi::y#9 ← bitmap_line_xdyi::y#1 +Coalesced [829] bitmap_line_xdyi::xd#8 ← bitmap_line_xdyi::xd#1 +Coalesced [830] bitmap_line_xdyi::x1#8 ← bitmap_line_xdyi::x1#1 +Coalesced [834] bitmap_line_xdyi::x#10 ← bitmap_line_xdyi::x#6 +Coalesced [835] bitmap_line_xdyi::y#10 ← bitmap_line_xdyi::y#5 +Coalesced [836] bitmap_line_xdyi::e#7 ← bitmap_line_xdyi::e#0 +Coalesced [840] bitmap_plot::x#6 ← bitmap_plot::x#0 +Coalesced [841] bitmap_plot::y#6 ← bitmap_plot::y#0 +Coalesced [848] bitmap_line_xdyi::y#12 ← bitmap_line_xdyi::y#2 +Coalesced [849] bitmap_line_xdyi::e#9 ← bitmap_line_xdyi::e#2 +Coalesced [854] bitmap_line_xdyi::x#11 ← bitmap_line_xdyi::x#2 +Coalesced [855] bitmap_line_xdyi::y#11 ← bitmap_line_xdyi::y#6 +Coalesced [856] bitmap_line_xdyi::e#8 ← bitmap_line_xdyi::e#6 +Coalesced (already) [857] bitmap_line_xdyi::y#13 ← bitmap_line_xdyi::y#3 +Coalesced [858] bitmap_line_xdyi::e#10 ← bitmap_line_xdyi::e#1 +Coalesced [868] bitmap_line_ydxi::x#10 ← bitmap_line_ydxi::x#5 +Coalesced [869] bitmap_line_ydxi::y#10 ← bitmap_line_ydxi::y#6 +Coalesced [870] bitmap_line_ydxi::e#7 ← bitmap_line_ydxi::e#0 +Coalesced [874] bitmap_plot::x#8 ← bitmap_plot::x#2 +Coalesced [875] bitmap_plot::y#8 ← bitmap_plot::y#2 +Coalesced [882] bitmap_line_ydxi::x#12 ← bitmap_line_ydxi::x#2 +Coalesced [883] bitmap_line_ydxi::e#9 ← bitmap_line_ydxi::e#2 +Coalesced [888] bitmap_line_ydxi::x#11 ← bitmap_line_ydxi::x#6 +Coalesced [889] bitmap_line_ydxi::y#11 ← bitmap_line_ydxi::y#2 +Coalesced [890] bitmap_line_ydxi::e#8 ← bitmap_line_ydxi::e#6 +Coalesced (already) [891] bitmap_line_ydxi::x#13 ← bitmap_line_ydxi::x#3 +Coalesced [892] bitmap_line_ydxi::e#10 ← bitmap_line_ydxi::e#1 +Coalesced [895] bitmap_line_xdyd::x#10 ← bitmap_line_xdyd::x#6 +Coalesced [896] bitmap_line_xdyd::y#10 ← bitmap_line_xdyd::y#5 +Coalesced [897] bitmap_line_xdyd::e#7 ← bitmap_line_xdyd::e#0 +Coalesced [901] bitmap_plot::x#5 ← bitmap_plot::x#1 +Coalesced [902] bitmap_plot::y#5 ← bitmap_plot::y#1 +Coalesced [909] bitmap_line_xdyd::y#12 ← bitmap_line_xdyd::y#2 +Coalesced [910] bitmap_line_xdyd::e#9 ← bitmap_line_xdyd::e#2 +Coalesced [915] bitmap_line_xdyd::x#11 ← bitmap_line_xdyd::x#2 +Coalesced [916] bitmap_line_xdyd::y#11 ← bitmap_line_xdyd::y#6 +Coalesced [917] bitmap_line_xdyd::e#8 ← bitmap_line_xdyd::e#6 +Coalesced (already) [918] bitmap_line_xdyd::y#13 ← bitmap_line_xdyd::y#3 +Coalesced [919] bitmap_line_xdyd::e#10 ← bitmap_line_xdyd::e#1 +Coalesced [922] bitmap_line_ydxd::x#10 ← bitmap_line_ydxd::x#5 +Coalesced [923] bitmap_line_ydxd::y#11 ← bitmap_line_ydxd::y#7 +Coalesced [924] bitmap_line_ydxd::e#7 ← bitmap_line_ydxd::e#0 +Coalesced [928] bitmap_plot::x#7 ← bitmap_plot::x#3 +Coalesced [929] bitmap_plot::y#7 ← bitmap_plot::y#3 +Coalesced [936] bitmap_line_ydxd::x#12 ← bitmap_line_ydxd::x#2 +Coalesced [937] bitmap_line_ydxd::e#9 ← bitmap_line_ydxd::e#2 +Coalesced [942] bitmap_line_ydxd::x#11 ← bitmap_line_ydxd::x#6 +Coalesced [943] bitmap_line_ydxd::y#12 ← bitmap_line_ydxd::y#3 +Coalesced [944] bitmap_line_ydxd::e#8 ← bitmap_line_ydxd::e#6 +Coalesced (already) [945] bitmap_line_ydxd::x#13 ← bitmap_line_ydxd::x#3 +Coalesced [946] bitmap_line_ydxd::e#10 ← bitmap_line_ydxd::e#1 +Coalesced [950] bitmap_clear::bitmap#7 ← bitmap_clear::bitmap#3 +Coalesced [959] bitmap_clear::bitmap#6 ← bitmap_clear::bitmap#1 +Coalesced [960] bitmap_clear::y#5 ← bitmap_clear::y#1 +Coalesced (already) [961] bitmap_clear::bitmap#8 ← bitmap_clear::bitmap#1 +Coalesced [962] bitmap_clear::x#3 ← bitmap_clear::x#1 +Coalesced [985] bitmap_init::yoffs#7 ← bitmap_init::yoffs#1 +Coalesced [990] bitmap_init::y#5 ← bitmap_init::y#1 +Coalesced [991] bitmap_init::yoffs#5 ← bitmap_init::yoffs#4 +Coalesced (already) [992] bitmap_init::yoffs#6 ← bitmap_init::yoffs#2 +Coalesced [993] bitmap_init::x#5 ← bitmap_init::x#1 +Coalesced [994] bitmap_init::bits#5 ← bitmap_init::bits#4 +Coalesced [995] bitmap_init::bits#6 ← bitmap_init::bits#1 +Coalesced [1014] mode_mcchar::col#6 ← mode_mcchar::col#3 +Coalesced [1015] mode_mcchar::ch#6 ← mode_mcchar::ch#3 +Coalesced [1034] mode_mcchar::cy#5 ← mode_mcchar::cy#1 +Coalesced [1035] mode_mcchar::col#5 ← mode_mcchar::col#1 +Coalesced [1036] mode_mcchar::ch#5 ← mode_mcchar::ch#1 +Coalesced [1037] mode_mcchar::cx#3 ← mode_mcchar::cx#1 +Coalesced (already) [1038] mode_mcchar::col#7 ← mode_mcchar::col#1 +Coalesced (already) [1039] mode_mcchar::ch#7 ← mode_mcchar::ch#1 +Coalesced [1040] mode_mcchar::i#3 ← mode_mcchar::i#1 +Coalesced [1060] mode_ecmchar::col#6 ← mode_ecmchar::col#3 +Coalesced [1061] mode_ecmchar::ch#6 ← mode_ecmchar::ch#3 +Coalesced [1080] mode_ecmchar::cy#5 ← mode_ecmchar::cy#1 +Coalesced [1081] mode_ecmchar::col#5 ← mode_ecmchar::col#1 +Coalesced [1082] mode_ecmchar::ch#5 ← mode_ecmchar::ch#1 +Coalesced [1083] mode_ecmchar::cx#3 ← mode_ecmchar::cx#1 +Coalesced (already) [1084] mode_ecmchar::col#7 ← mode_ecmchar::col#1 +Coalesced (already) [1085] mode_ecmchar::ch#7 ← mode_ecmchar::ch#1 +Coalesced [1086] mode_ecmchar::i#3 ← mode_ecmchar::i#1 +Coalesced [1103] mode_stdchar::col#6 ← mode_stdchar::col#3 +Coalesced [1104] mode_stdchar::ch#6 ← mode_stdchar::ch#3 +Coalesced [1123] mode_stdchar::cy#5 ← mode_stdchar::cy#1 +Coalesced [1124] mode_stdchar::col#5 ← mode_stdchar::col#1 +Coalesced [1125] mode_stdchar::ch#5 ← mode_stdchar::ch#1 +Coalesced [1126] mode_stdchar::cx#3 ← mode_stdchar::cx#1 +Coalesced (already) [1127] mode_stdchar::col#7 ← mode_stdchar::col#1 +Coalesced (already) [1128] mode_stdchar::ch#7 ← mode_stdchar::ch#1 +Coalesced [1129] mode_stdchar::i#3 ← mode_stdchar::i#1 +Coalesced [1134] print_str_lines::str#11 ← print_str_lines::str#2 +Coalesced [1135] print_char_cursor#104 ← print_char_cursor#19 +Coalesced [1142] print_char_cursor#107 ← print_char_cursor#1 +Coalesced [1147] print_str_lines::str#10 ← print_str_lines::str#0 +Not coalescing [1148] print_char_cursor#103 ← print_line_cursor#19 +Coalesced [1149] print_line_cursor#103 ← print_line_cursor#19 +Coalesced (already) [1150] print_str_lines::str#12 ← print_str_lines::str#0 +Coalesced [1151] print_char_cursor#105 ← print_char_cursor#32 +Coalesced (already) [1152] print_char_cursor#106 ← print_char_cursor#17 +Coalesced [1153] print_line_cursor#104 ← print_line_cursor#17 +Coalesced (already) [1158] print_line_cursor#105 ← print_line_cursor#19 +Coalesced [1165] print_cls::sc#3 ← print_cls::sc#1 Coalesced down to 125 phi equivalence classes Culled Empty Block (label) menu::@75 Culled Empty Block (label) menu::@74 @@ -9384,40 +9384,40 @@ FINAL CONTROL FLOW GRAPH [3] phi() main: scope:[main] from @1 asm { sei } - [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 - [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 - [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 + [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 + [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 + [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 to:main::@1 main::@1: scope:[main] from main main::@1 [8] phi() [9] call menu to:main::@1 menu: scope:[menu] from main::@1 - [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 - [11] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [12] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [13] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [14] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [15] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 - [16] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [17] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [18] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 + [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [13] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [15] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 + [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [18] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:menu::@1 menu::@1: scope:[menu] from menu menu::@1 - [19] (byte) menu::i#2 ? phi( menu/(byte/signed byte/word/signed word/dword/signed dword) 0 menu::@1/(byte) menu::i#1 ) - [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) - [21] (byte) menu::i#1 ? ++ (byte) menu::i#2 + [19] (byte) menu::i#2 ← phi( menu/(byte/signed byte/word/signed word/dword/signed dword) 0 menu::@1/(byte) menu::i#1 ) + [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) + [21] (byte) menu::i#1 ← ++ (byte) menu::i#2 [22] if((byte) menu::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto menu::@1 to:menu::@2 menu::@2: scope:[menu] from menu::@1 menu::@2 - [23] (byte*) menu::c#2 ? phi( menu::@1/(const byte*) COLS#0 menu::@2/(byte*) menu::c#1 ) - [24] *((byte*) menu::c#2) ? (const byte) LIGHT_GREEN#0 - [25] (byte*) menu::c#1 ? ++ (byte*) menu::c#2 + [23] (byte*) menu::c#2 ← phi( menu::@1/(const byte*) COLS#0 menu::@2/(byte*) menu::c#1 ) + [24] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 + [25] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 [26] if((byte*) menu::c#1!=(const byte*) COLS#0+(word/signed word/dword/signed dword) $3e8) goto menu::@2 to:menu::@3 menu::@3: scope:[menu] from menu::@2 - [27] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [28] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [27] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [28] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [29] call print_set_screen to:menu::@28 menu::@28: scope:[menu] from menu::@3 @@ -9431,10 +9431,10 @@ menu::@29: scope:[menu] from menu::@28 menu::@4: scope:[menu] from menu::@29 menu::@41 [34] phi() [35] call keyboard_key_pressed - [36] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 + [36] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 to:menu::@30 menu::@30: scope:[menu] from menu::@4 - [37] (byte~) menu::$29 ? (byte) keyboard_key_pressed::return#2 + [37] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2 [38] if((byte~) menu::$29==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@5 to:menu::@16 menu::@16: scope:[menu] from menu::@30 @@ -9447,10 +9447,10 @@ menu::@return: scope:[menu] from menu::@16 menu::@17 menu::@18 menu::@19 menu:: menu::@5: scope:[menu] from menu::@30 [42] phi() [43] call keyboard_key_pressed - [44] (byte) keyboard_key_pressed::return#24 ? (byte) keyboard_key_pressed::return#0 + [44] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0 to:menu::@31 menu::@31: scope:[menu] from menu::@5 - [45] (byte~) menu::$33 ? (byte) keyboard_key_pressed::return#24 + [45] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24 [46] if((byte~) menu::$33==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@6 to:menu::@17 menu::@17: scope:[menu] from menu::@31 @@ -9460,10 +9460,10 @@ menu::@17: scope:[menu] from menu::@31 menu::@6: scope:[menu] from menu::@31 [49] phi() [50] call keyboard_key_pressed - [51] (byte) keyboard_key_pressed::return#25 ? (byte) keyboard_key_pressed::return#0 + [51] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0 to:menu::@32 menu::@32: scope:[menu] from menu::@6 - [52] (byte~) menu::$37 ? (byte) keyboard_key_pressed::return#25 + [52] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25 [53] if((byte~) menu::$37==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@7 to:menu::@18 menu::@18: scope:[menu] from menu::@32 @@ -9473,10 +9473,10 @@ menu::@18: scope:[menu] from menu::@32 menu::@7: scope:[menu] from menu::@32 [56] phi() [57] call keyboard_key_pressed - [58] (byte) keyboard_key_pressed::return#26 ? (byte) keyboard_key_pressed::return#0 + [58] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0 to:menu::@33 menu::@33: scope:[menu] from menu::@7 - [59] (byte~) menu::$41 ? (byte) keyboard_key_pressed::return#26 + [59] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26 [60] if((byte~) menu::$41==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@8 to:menu::@19 menu::@19: scope:[menu] from menu::@33 @@ -9486,10 +9486,10 @@ menu::@19: scope:[menu] from menu::@33 menu::@8: scope:[menu] from menu::@33 [63] phi() [64] call keyboard_key_pressed - [65] (byte) keyboard_key_pressed::return#27 ? (byte) keyboard_key_pressed::return#0 + [65] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0 to:menu::@34 menu::@34: scope:[menu] from menu::@8 - [66] (byte~) menu::$45 ? (byte) keyboard_key_pressed::return#27 + [66] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27 [67] if((byte~) menu::$45==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@9 to:menu::@20 menu::@20: scope:[menu] from menu::@34 @@ -9499,10 +9499,10 @@ menu::@20: scope:[menu] from menu::@34 menu::@9: scope:[menu] from menu::@34 [70] phi() [71] call keyboard_key_pressed - [72] (byte) keyboard_key_pressed::return#28 ? (byte) keyboard_key_pressed::return#0 + [72] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0 to:menu::@35 menu::@35: scope:[menu] from menu::@9 - [73] (byte~) menu::$49 ? (byte) keyboard_key_pressed::return#28 + [73] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28 [74] if((byte~) menu::$49==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@10 to:menu::@21 menu::@21: scope:[menu] from menu::@35 @@ -9512,10 +9512,10 @@ menu::@21: scope:[menu] from menu::@35 menu::@10: scope:[menu] from menu::@35 [77] phi() [78] call keyboard_key_pressed - [79] (byte) keyboard_key_pressed::return#29 ? (byte) keyboard_key_pressed::return#0 + [79] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0 to:menu::@36 menu::@36: scope:[menu] from menu::@10 - [80] (byte~) menu::$53 ? (byte) keyboard_key_pressed::return#29 + [80] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29 [81] if((byte~) menu::$53==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@11 to:menu::@22 menu::@22: scope:[menu] from menu::@36 @@ -9525,10 +9525,10 @@ menu::@22: scope:[menu] from menu::@36 menu::@11: scope:[menu] from menu::@36 [84] phi() [85] call keyboard_key_pressed - [86] (byte) keyboard_key_pressed::return#30 ? (byte) keyboard_key_pressed::return#0 + [86] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0 to:menu::@37 menu::@37: scope:[menu] from menu::@11 - [87] (byte~) menu::$57 ? (byte) keyboard_key_pressed::return#30 + [87] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30 [88] if((byte~) menu::$57==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@12 to:menu::@23 menu::@23: scope:[menu] from menu::@37 @@ -9538,10 +9538,10 @@ menu::@23: scope:[menu] from menu::@37 menu::@12: scope:[menu] from menu::@37 [91] phi() [92] call keyboard_key_pressed - [93] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 + [93] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 to:menu::@38 menu::@38: scope:[menu] from menu::@12 - [94] (byte~) menu::$61 ? (byte) keyboard_key_pressed::return#10 + [94] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10 [95] if((byte~) menu::$61==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@13 to:menu::@24 menu::@24: scope:[menu] from menu::@38 @@ -9551,10 +9551,10 @@ menu::@24: scope:[menu] from menu::@38 menu::@13: scope:[menu] from menu::@38 [98] phi() [99] call keyboard_key_pressed - [100] (byte) keyboard_key_pressed::return#11 ? (byte) keyboard_key_pressed::return#0 + [100] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0 to:menu::@39 menu::@39: scope:[menu] from menu::@13 - [101] (byte~) menu::$65 ? (byte) keyboard_key_pressed::return#11 + [101] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11 [102] if((byte~) menu::$65==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@14 to:menu::@25 menu::@25: scope:[menu] from menu::@39 @@ -9564,10 +9564,10 @@ menu::@25: scope:[menu] from menu::@39 menu::@14: scope:[menu] from menu::@39 [105] phi() [106] call keyboard_key_pressed - [107] (byte) keyboard_key_pressed::return#12 ? (byte) keyboard_key_pressed::return#0 + [107] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0 to:menu::@40 menu::@40: scope:[menu] from menu::@14 - [108] (byte~) menu::$69 ? (byte) keyboard_key_pressed::return#12 + [108] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12 [109] if((byte~) menu::$69==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@15 to:menu::@26 menu::@26: scope:[menu] from menu::@40 @@ -9577,10 +9577,10 @@ menu::@26: scope:[menu] from menu::@40 menu::@15: scope:[menu] from menu::@40 [112] phi() [113] call keyboard_key_pressed - [114] (byte) keyboard_key_pressed::return#13 ? (byte) keyboard_key_pressed::return#0 + [114] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0 to:menu::@41 menu::@41: scope:[menu] from menu::@15 - [115] (byte~) menu::$73 ? (byte) keyboard_key_pressed::return#13 + [115] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13 [116] if((byte~) menu::$73==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 to:menu::@27 menu::@27: scope:[menu] from menu::@41 @@ -9588,21 +9588,21 @@ menu::@27: scope:[menu] from menu::@41 [118] call mode_8bppchunkybmm to:menu::@return mode_8bppchunkybmm: scope:[mode_8bppchunkybmm] from menu::@27 - [119] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 - [120] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [121] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 - [122] *((const byte*) DTV_PLANEB_START_LO#0) ? <<(const dword) mode_8bppchunkybmm::PLANEB#0 - [123] *((const byte*) DTV_PLANEB_START_MI#0) ? ><(const dword) mode_8bppchunkybmm::PLANEB#0 - [124] *((const byte*) DTV_PLANEB_START_HI#0) ? <>(const dword) mode_8bppchunkybmm::PLANEB#0 - [125] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 8 - [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [128] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 + [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 + [122] *((const byte*) DTV_PLANEB_START_LO#0) ← <<(const dword) mode_8bppchunkybmm::PLANEB#0 + [123] *((const byte*) DTV_PLANEB_START_MI#0) ← ><(const dword) mode_8bppchunkybmm::PLANEB#0 + [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 + [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 8 + [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [128] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bppchunkybmm::@1 mode_8bppchunkybmm::@1: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm mode_8bppchunkybmm::@1 - [129] (byte) mode_8bppchunkybmm::i#2 ? phi( mode_8bppchunkybmm/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bppchunkybmm::@1/(byte) mode_8bppchunkybmm::i#1 ) - [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ? (byte) mode_8bppchunkybmm::i#2 - [131] (byte) mode_8bppchunkybmm::i#1 ? ++ (byte) mode_8bppchunkybmm::i#2 + [129] (byte) mode_8bppchunkybmm::i#2 ← phi( mode_8bppchunkybmm/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bppchunkybmm::@1/(byte) mode_8bppchunkybmm::i#1 ) + [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 + [131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2 [132] if((byte) mode_8bppchunkybmm::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bppchunkybmm::@1 to:mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@2: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@1 @@ -9610,35 +9610,35 @@ mode_8bppchunkybmm::@2: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@1 [134] call dtvSetCpuBankSegment1 to:mode_8bppchunkybmm::@3 mode_8bppchunkybmm::@3: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@7 - [135] (byte) mode_8bppchunkybmm::gfxbCpuBank#7 ? phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::@2/++((byte))(const dword) mode_8bppchunkybmm::PLANEB#0/(word/signed word/dword/signed dword) $4000 ) - [135] (byte) mode_8bppchunkybmm::y#6 ? phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::y#1 mode_8bppchunkybmm::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [135] (byte*) mode_8bppchunkybmm::gfxb#5 ? phi( mode_8bppchunkybmm::@7/(byte*) mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::@2/((byte*))(word/signed word/dword/signed dword) $4000 ) + [135] (byte) mode_8bppchunkybmm::gfxbCpuBank#7 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::@2/++((byte))(const dword) mode_8bppchunkybmm::PLANEB#0/(word/signed word/dword/signed dword) $4000 ) + [135] (byte) mode_8bppchunkybmm::y#6 ← phi( mode_8bppchunkybmm::@7/(byte) mode_8bppchunkybmm::y#1 mode_8bppchunkybmm::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [135] (byte*) mode_8bppchunkybmm::gfxb#5 ← phi( mode_8bppchunkybmm::@7/(byte*) mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::@2/((byte*))(word/signed word/dword/signed dword) $4000 ) to:mode_8bppchunkybmm::@4 mode_8bppchunkybmm::@4: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@3 mode_8bppchunkybmm::@5 - [136] (byte) mode_8bppchunkybmm::gfxbCpuBank#4 ? phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 ) - [136] (word) mode_8bppchunkybmm::x#2 ? phi( mode_8bppchunkybmm::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bppchunkybmm::@5/(word) mode_8bppchunkybmm::x#1 ) - [136] (byte*) mode_8bppchunkybmm::gfxb#3 ? phi( mode_8bppchunkybmm::@3/(byte*) mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 ) + [136] (byte) mode_8bppchunkybmm::gfxbCpuBank#4 ← phi( mode_8bppchunkybmm::@3/(byte) mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::@5/(byte) mode_8bppchunkybmm::gfxbCpuBank#8 ) + [136] (word) mode_8bppchunkybmm::x#2 ← phi( mode_8bppchunkybmm::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bppchunkybmm::@5/(word) mode_8bppchunkybmm::x#1 ) + [136] (byte*) mode_8bppchunkybmm::gfxb#3 ← phi( mode_8bppchunkybmm::@3/(byte*) mode_8bppchunkybmm::gfxb#5 mode_8bppchunkybmm::@5/(byte*) mode_8bppchunkybmm::gfxb#1 ) [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word/dword/signed dword) $8000) goto mode_8bppchunkybmm::@5 to:mode_8bppchunkybmm::@6 mode_8bppchunkybmm::@6: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@4 - [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) mode_8bppchunkybmm::gfxbCpuBank#4 + [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 [139] call dtvSetCpuBankSegment1 to:mode_8bppchunkybmm::@9 mode_8bppchunkybmm::@9: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@6 - [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ? ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 + [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 to:mode_8bppchunkybmm::@5 mode_8bppchunkybmm::@5: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@4 mode_8bppchunkybmm::@9 - [141] (byte) mode_8bppchunkybmm::gfxbCpuBank#8 ? phi( mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::gfxbCpuBank#2 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#4 ) - [141] (byte*) mode_8bppchunkybmm::gfxb#4 ? phi( mode_8bppchunkybmm::@9/((byte*))(word/signed word/dword/signed dword) $4000 mode_8bppchunkybmm::@4/(byte*) mode_8bppchunkybmm::gfxb#3 ) - [142] (word~) mode_8bppchunkybmm::$27 ? (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 - [143] (byte) mode_8bppchunkybmm::c#0 ? ((byte)) (word~) mode_8bppchunkybmm::$27 - [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ? (byte) mode_8bppchunkybmm::c#0 - [145] (byte*) mode_8bppchunkybmm::gfxb#1 ? ++ (byte*) mode_8bppchunkybmm::gfxb#4 - [146] (word) mode_8bppchunkybmm::x#1 ? ++ (word) mode_8bppchunkybmm::x#2 + [141] (byte) mode_8bppchunkybmm::gfxbCpuBank#8 ← phi( mode_8bppchunkybmm::@9/(byte) mode_8bppchunkybmm::gfxbCpuBank#2 mode_8bppchunkybmm::@4/(byte) mode_8bppchunkybmm::gfxbCpuBank#4 ) + [141] (byte*) mode_8bppchunkybmm::gfxb#4 ← phi( mode_8bppchunkybmm::@9/((byte*))(word/signed word/dword/signed dword) $4000 mode_8bppchunkybmm::@4/(byte*) mode_8bppchunkybmm::gfxb#3 ) + [142] (word~) mode_8bppchunkybmm::$27 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 + [143] (byte) mode_8bppchunkybmm::c#0 ← ((byte)) (word~) mode_8bppchunkybmm::$27 + [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 + [145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 + [146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2 [147] if((word) mode_8bppchunkybmm::x#1!=(word/signed word/dword/signed dword) $140) goto mode_8bppchunkybmm::@4 to:mode_8bppchunkybmm::@7 mode_8bppchunkybmm::@7: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@5 - [148] (byte) mode_8bppchunkybmm::y#1 ? ++ (byte) mode_8bppchunkybmm::y#6 + [148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6 [149] if((byte) mode_8bppchunkybmm::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_8bppchunkybmm::@3 to:mode_8bppchunkybmm::@8 mode_8bppchunkybmm::@8: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm::@7 @@ -9653,10 +9653,10 @@ mode_8bppchunkybmm::@return: scope:[mode_8bppchunkybmm] from mode_8bppchunkybmm [154] return to:@return mode_ctrl: scope:[mode_ctrl] from mode_8bppchunkybmm::@10 mode_8bpppixelcell::@13 mode_ecmchar::@6 mode_hicolecmchar::@6 mode_hicolmcchar::@6 mode_hicolstdchar::@6 mode_mcchar::@6 mode_sixsfred2::@12 mode_sixsfred::@12 mode_stdbitmap::@8 mode_stdchar::@6 mode_twoplanebitmap::@15 - [155] (byte) dtv_control#145 ? phi( mode_8bppchunkybmm::@10/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 mode_8bpppixelcell::@13/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 mode_ecmchar::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_hicolmcchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_hicolstdchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_mcchar::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@12/(const byte) DTV_LINEAR#0 mode_sixsfred::@12/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 mode_stdbitmap::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@15/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 ) + [155] (byte) dtv_control#145 ← phi( mode_8bppchunkybmm::@10/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 mode_8bpppixelcell::@13/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 mode_ecmchar::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_hicolmcchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_hicolstdchar::@6/(const byte) DTV_HIGHCOLOR#0 mode_mcchar::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@12/(const byte) DTV_LINEAR#0 mode_sixsfred::@12/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 mode_stdbitmap::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@15/(const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 ) to:mode_ctrl::@1 mode_ctrl::@1: scope:[mode_ctrl] from mode_ctrl mode_ctrl::@11 mode_ctrl::@18 - [156] (byte) dtv_control#114 ? phi( mode_ctrl/(byte) dtv_control#145 mode_ctrl::@18/(byte) dtv_control#17 ) + [156] (byte) dtv_control#114 ← phi( mode_ctrl/(byte) dtv_control#145 mode_ctrl::@18/(byte) dtv_control#17 ) to:mode_ctrl::@2 mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@2 [157] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto mode_ctrl::@2 @@ -9664,312 +9664,312 @@ mode_ctrl::@2: scope:[mode_ctrl] from mode_ctrl::@1 mode_ctrl::@2 mode_ctrl::@3: scope:[mode_ctrl] from mode_ctrl::@2 [158] phi() [159] call keyboard_key_pressed - [160] (byte) keyboard_key_pressed::return#14 ? (byte) keyboard_key_pressed::return#0 + [160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@19 mode_ctrl::@19: scope:[mode_ctrl] from mode_ctrl::@3 - [161] (byte~) mode_ctrl::$1 ? (byte) keyboard_key_pressed::return#14 + [161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14 [162] if((byte~) mode_ctrl::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@4 to:mode_ctrl::@return mode_ctrl::@return: scope:[mode_ctrl] from mode_ctrl::@19 [163] return to:@return mode_ctrl::@4: scope:[mode_ctrl] from mode_ctrl::@19 - [164] (byte) mode_ctrl::ctrl#0 ? (byte) dtv_control#114 + [164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114 [165] call keyboard_key_pressed - [166] (byte) keyboard_key_pressed::return#15 ? (byte) keyboard_key_pressed::return#0 + [166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@20 mode_ctrl::@20: scope:[mode_ctrl] from mode_ctrl::@4 - [167] (byte~) mode_ctrl::$4 ? (byte) keyboard_key_pressed::return#15 + [167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15 [168] if((byte~) mode_ctrl::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@5 to:mode_ctrl::@12 mode_ctrl::@12: scope:[mode_ctrl] from mode_ctrl::@20 - [169] (byte) mode_ctrl::ctrl#1 ? (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 + [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 to:mode_ctrl::@5 mode_ctrl::@5: scope:[mode_ctrl] from mode_ctrl::@12 mode_ctrl::@20 - [170] (byte) mode_ctrl::ctrl#17 ? phi( mode_ctrl::@12/(byte) mode_ctrl::ctrl#1 mode_ctrl::@20/(byte) mode_ctrl::ctrl#0 ) + [170] (byte) mode_ctrl::ctrl#17 ← phi( mode_ctrl::@12/(byte) mode_ctrl::ctrl#1 mode_ctrl::@20/(byte) mode_ctrl::ctrl#0 ) [171] call keyboard_key_pressed - [172] (byte) keyboard_key_pressed::return#16 ? (byte) keyboard_key_pressed::return#0 + [172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@21 mode_ctrl::@21: scope:[mode_ctrl] from mode_ctrl::@5 - [173] (byte~) mode_ctrl::$8 ? (byte) keyboard_key_pressed::return#16 + [173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16 [174] if((byte~) mode_ctrl::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@6 to:mode_ctrl::@13 mode_ctrl::@13: scope:[mode_ctrl] from mode_ctrl::@21 - [175] (byte) mode_ctrl::ctrl#2 ? (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 + [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 to:mode_ctrl::@6 mode_ctrl::@6: scope:[mode_ctrl] from mode_ctrl::@13 mode_ctrl::@21 - [176] (byte) mode_ctrl::ctrl#10 ? phi( mode_ctrl::@13/(byte) mode_ctrl::ctrl#2 mode_ctrl::@21/(byte) mode_ctrl::ctrl#17 ) + [176] (byte) mode_ctrl::ctrl#10 ← phi( mode_ctrl::@13/(byte) mode_ctrl::ctrl#2 mode_ctrl::@21/(byte) mode_ctrl::ctrl#17 ) [177] call keyboard_key_pressed - [178] (byte) keyboard_key_pressed::return#17 ? (byte) keyboard_key_pressed::return#0 + [178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@22 mode_ctrl::@22: scope:[mode_ctrl] from mode_ctrl::@6 - [179] (byte~) mode_ctrl::$12 ? (byte) keyboard_key_pressed::return#17 + [179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17 [180] if((byte~) mode_ctrl::$12==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@7 to:mode_ctrl::@14 mode_ctrl::@14: scope:[mode_ctrl] from mode_ctrl::@22 - [181] (byte) mode_ctrl::ctrl#3 ? (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 + [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 to:mode_ctrl::@7 mode_ctrl::@7: scope:[mode_ctrl] from mode_ctrl::@14 mode_ctrl::@22 - [182] (byte) mode_ctrl::ctrl#11 ? phi( mode_ctrl::@14/(byte) mode_ctrl::ctrl#3 mode_ctrl::@22/(byte) mode_ctrl::ctrl#10 ) + [182] (byte) mode_ctrl::ctrl#11 ← phi( mode_ctrl::@14/(byte) mode_ctrl::ctrl#3 mode_ctrl::@22/(byte) mode_ctrl::ctrl#10 ) [183] call keyboard_key_pressed - [184] (byte) keyboard_key_pressed::return#18 ? (byte) keyboard_key_pressed::return#0 + [184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@23 mode_ctrl::@23: scope:[mode_ctrl] from mode_ctrl::@7 - [185] (byte~) mode_ctrl::$16 ? (byte) keyboard_key_pressed::return#18 + [185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18 [186] if((byte~) mode_ctrl::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@8 to:mode_ctrl::@15 mode_ctrl::@15: scope:[mode_ctrl] from mode_ctrl::@23 - [187] (byte) mode_ctrl::ctrl#4 ? (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 + [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 to:mode_ctrl::@8 mode_ctrl::@8: scope:[mode_ctrl] from mode_ctrl::@15 mode_ctrl::@23 - [188] (byte) mode_ctrl::ctrl#12 ? phi( mode_ctrl::@15/(byte) mode_ctrl::ctrl#4 mode_ctrl::@23/(byte) mode_ctrl::ctrl#11 ) + [188] (byte) mode_ctrl::ctrl#12 ← phi( mode_ctrl::@15/(byte) mode_ctrl::ctrl#4 mode_ctrl::@23/(byte) mode_ctrl::ctrl#11 ) [189] call keyboard_key_pressed - [190] (byte) keyboard_key_pressed::return#19 ? (byte) keyboard_key_pressed::return#0 + [190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@24 mode_ctrl::@24: scope:[mode_ctrl] from mode_ctrl::@8 - [191] (byte~) mode_ctrl::$20 ? (byte) keyboard_key_pressed::return#19 + [191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19 [192] if((byte~) mode_ctrl::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@9 to:mode_ctrl::@16 mode_ctrl::@16: scope:[mode_ctrl] from mode_ctrl::@24 - [193] (byte) mode_ctrl::ctrl#5 ? (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 + [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 to:mode_ctrl::@9 mode_ctrl::@9: scope:[mode_ctrl] from mode_ctrl::@16 mode_ctrl::@24 - [194] (byte) mode_ctrl::ctrl#13 ? phi( mode_ctrl::@16/(byte) mode_ctrl::ctrl#5 mode_ctrl::@24/(byte) mode_ctrl::ctrl#12 ) + [194] (byte) mode_ctrl::ctrl#13 ← phi( mode_ctrl::@16/(byte) mode_ctrl::ctrl#5 mode_ctrl::@24/(byte) mode_ctrl::ctrl#12 ) [195] call keyboard_key_pressed - [196] (byte) keyboard_key_pressed::return#20 ? (byte) keyboard_key_pressed::return#0 + [196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@25 mode_ctrl::@25: scope:[mode_ctrl] from mode_ctrl::@9 - [197] (byte~) mode_ctrl::$24 ? (byte) keyboard_key_pressed::return#20 + [197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20 [198] if((byte~) mode_ctrl::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@10 to:mode_ctrl::@17 mode_ctrl::@17: scope:[mode_ctrl] from mode_ctrl::@25 - [199] (byte) mode_ctrl::ctrl#6 ? (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 + [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 to:mode_ctrl::@10 mode_ctrl::@10: scope:[mode_ctrl] from mode_ctrl::@17 mode_ctrl::@25 - [200] (byte) mode_ctrl::ctrl#22 ? phi( mode_ctrl::@17/(byte) mode_ctrl::ctrl#6 mode_ctrl::@25/(byte) mode_ctrl::ctrl#13 ) + [200] (byte) mode_ctrl::ctrl#22 ← phi( mode_ctrl::@17/(byte) mode_ctrl::ctrl#6 mode_ctrl::@25/(byte) mode_ctrl::ctrl#13 ) [201] call keyboard_key_pressed - [202] (byte) keyboard_key_pressed::return#21 ? (byte) keyboard_key_pressed::return#0 + [202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0 to:mode_ctrl::@26 mode_ctrl::@26: scope:[mode_ctrl] from mode_ctrl::@10 - [203] (byte~) mode_ctrl::$28 ? (byte) keyboard_key_pressed::return#21 + [203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21 [204] if((byte~) mode_ctrl::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@27 to:mode_ctrl::@11 mode_ctrl::@11: scope:[mode_ctrl] from mode_ctrl::@26 mode_ctrl::@27 - [205] (byte) mode_ctrl::ctrl#14 ? phi( mode_ctrl::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ctrl::@27/(byte) mode_ctrl::ctrl#22 ) + [205] (byte) mode_ctrl::ctrl#14 ← phi( mode_ctrl::@26/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ctrl::@27/(byte) mode_ctrl::ctrl#22 ) [206] if((byte) mode_ctrl::ctrl#14==(byte) dtv_control#114) goto mode_ctrl::@1 to:mode_ctrl::@18 mode_ctrl::@18: scope:[mode_ctrl] from mode_ctrl::@11 - [207] (byte) dtv_control#17 ? (byte) mode_ctrl::ctrl#14 - [208] *((const byte*) DTV_CONTROL#0) ? (byte) mode_ctrl::ctrl#14 - [209] *((const byte*) BORDERCOL#0) ? (byte) mode_ctrl::ctrl#14 + [207] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 + [208] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14 + [209] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14 to:mode_ctrl::@1 mode_ctrl::@27: scope:[mode_ctrl] from mode_ctrl::@26 [210] phi() to:mode_ctrl::@11 keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@10 menu::@11 menu::@12 menu::@13 menu::@14 menu::@15 menu::@4 menu::@5 menu::@6 menu::@7 menu::@8 menu::@9 mode_ctrl::@10 mode_ctrl::@3 mode_ctrl::@4 mode_ctrl::@5 mode_ctrl::@6 mode_ctrl::@7 mode_ctrl::@8 mode_ctrl::@9 - [211] (byte) keyboard_key_pressed::key#20 ? phi( menu::@7/(const byte) KEY_4#0 menu::@8/(const byte) KEY_6#0 menu::@9/(const byte) KEY_7#0 menu::@10/(const byte) KEY_8#0 menu::@11/(const byte) KEY_A#0 menu::@12/(const byte) KEY_B#0 menu::@13/(const byte) KEY_C#0 menu::@14/(const byte) KEY_D#0 menu::@15/(const byte) KEY_E#0 menu::@4/(const byte) KEY_1#0 menu::@5/(const byte) KEY_2#0 menu::@6/(const byte) KEY_3#0 mode_ctrl::@4/(const byte) KEY_L#0 mode_ctrl::@5/(const byte) KEY_H#0 mode_ctrl::@6/(const byte) KEY_O#0 mode_ctrl::@7/(const byte) KEY_B#0 mode_ctrl::@8/(const byte) KEY_U#0 mode_ctrl::@9/(const byte) KEY_C#0 mode_ctrl::@10/(const byte) KEY_0#0 mode_ctrl::@3/(const byte) KEY_SPACE#0 ) - [212] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [213] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - [214] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 + [211] (byte) keyboard_key_pressed::key#20 ← phi( menu::@7/(const byte) KEY_4#0 menu::@8/(const byte) KEY_6#0 menu::@9/(const byte) KEY_7#0 menu::@10/(const byte) KEY_8#0 menu::@11/(const byte) KEY_A#0 menu::@12/(const byte) KEY_B#0 menu::@13/(const byte) KEY_C#0 menu::@14/(const byte) KEY_D#0 menu::@15/(const byte) KEY_E#0 menu::@4/(const byte) KEY_1#0 menu::@5/(const byte) KEY_2#0 menu::@6/(const byte) KEY_3#0 mode_ctrl::@4/(const byte) KEY_L#0 mode_ctrl::@5/(const byte) KEY_H#0 mode_ctrl::@6/(const byte) KEY_O#0 mode_ctrl::@7/(const byte) KEY_B#0 mode_ctrl::@8/(const byte) KEY_U#0 mode_ctrl::@9/(const byte) KEY_C#0 mode_ctrl::@10/(const byte) KEY_0#0 mode_ctrl::@3/(const byte) KEY_SPACE#0 ) + [212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + [214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 [215] call keyboard_matrix_read - [216] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + [216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 to:keyboard_key_pressed::@1 keyboard_key_pressed::@1: scope:[keyboard_key_pressed] from keyboard_key_pressed - [217] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 - [218] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) + [217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 + [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) to:keyboard_key_pressed::@return keyboard_key_pressed::@return: scope:[keyboard_key_pressed] from keyboard_key_pressed::@1 [219] return to:@return keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed - [220] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) - [221] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) + [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) + [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read [222] return to:@return dtvSetCpuBankSegment1: scope:[dtvSetCpuBankSegment1] from mode_8bppchunkybmm::@2 mode_8bppchunkybmm::@6 mode_8bppchunkybmm::@8 - [223] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ? phi( mode_8bppchunkybmm::@2/((byte))(const dword) mode_8bppchunkybmm::PLANEB#0/(word/signed word/dword/signed dword) $4000 mode_8bppchunkybmm::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 mode_8bppchunkybmm::@8/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 ) - [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 + [223] (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 ← phi( mode_8bppchunkybmm::@2/((byte))(const dword) mode_8bppchunkybmm::PLANEB#0/(word/signed word/dword/signed dword) $4000 mode_8bppchunkybmm::@6/(byte) dtvSetCpuBankSegment1::cpuBankIdx#1 mode_8bppchunkybmm::@8/((byte))(word/signed word/dword/signed dword) $4000/(word/signed word/dword/signed dword) $4000 ) + [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 asm { .byte$32,$dd lda$ff .byte$32,$00 } to:dtvSetCpuBankSegment1::@return dtvSetCpuBankSegment1::@return: scope:[dtvSetCpuBankSegment1] from dtvSetCpuBankSegment1 [226] return to:@return mode_8bpppixelcell: scope:[mode_8bpppixelcell] from menu::@26 - [227] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 - [228] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [229] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 - [230] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEA#0 - [231] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_8bpppixelcell::PLANEA#0 - [232] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [233] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [236] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEB#0 - [237] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_8bpppixelcell::PLANEB#0 - [238] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [239] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [242] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 + [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 + [230] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEA#0 + [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 + [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [236] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEB#0 + [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 + [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [242] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_8bpppixelcell::@1 mode_8bpppixelcell::@1: scope:[mode_8bpppixelcell] from mode_8bpppixelcell mode_8bpppixelcell::@1 - [243] (byte) mode_8bpppixelcell::i#2 ? phi( mode_8bpppixelcell/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bpppixelcell::@1/(byte) mode_8bpppixelcell::i#1 ) - [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ? (byte) mode_8bpppixelcell::i#2 - [245] (byte) mode_8bpppixelcell::i#1 ? ++ (byte) mode_8bpppixelcell::i#2 + [243] (byte) mode_8bpppixelcell::i#2 ← phi( mode_8bpppixelcell/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bpppixelcell::@1/(byte) mode_8bpppixelcell::i#1 ) + [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 + [245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2 [246] if((byte) mode_8bpppixelcell::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bpppixelcell::@1 to:mode_8bpppixelcell::@2 mode_8bpppixelcell::@2: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@1 mode_8bpppixelcell::@4 - [247] (byte*) mode_8bpppixelcell::gfxa#3 ? phi( mode_8bpppixelcell::@1/(const byte*) mode_8bpppixelcell::PLANEA#0 mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 ) - [247] (byte) mode_8bpppixelcell::ay#4 ? phi( mode_8bpppixelcell::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#1 ) + [247] (byte*) mode_8bpppixelcell::gfxa#3 ← phi( mode_8bpppixelcell::@1/(const byte*) mode_8bpppixelcell::PLANEA#0 mode_8bpppixelcell::@4/(byte*) mode_8bpppixelcell::gfxa#1 ) + [247] (byte) mode_8bpppixelcell::ay#4 ← phi( mode_8bpppixelcell::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bpppixelcell::@4/(byte) mode_8bpppixelcell::ay#1 ) to:mode_8bpppixelcell::@3 mode_8bpppixelcell::@3: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@2 mode_8bpppixelcell::@3 - [248] (byte*) mode_8bpppixelcell::gfxa#2 ? phi( mode_8bpppixelcell::@2/(byte*) mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::@3/(byte*) mode_8bpppixelcell::gfxa#1 ) - [248] (byte) mode_8bpppixelcell::ax#2 ? phi( mode_8bpppixelcell::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ax#1 ) - [249] (byte~) mode_8bpppixelcell::$14 ? (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [250] (byte~) mode_8bpppixelcell::$15 ? (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [251] (byte~) mode_8bpppixelcell::$16 ? (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [252] (byte~) mode_8bpppixelcell::$17 ? (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 - [253] *((byte*) mode_8bpppixelcell::gfxa#2) ? (byte~) mode_8bpppixelcell::$17 - [254] (byte*) mode_8bpppixelcell::gfxa#1 ? ++ (byte*) mode_8bpppixelcell::gfxa#2 - [255] (byte) mode_8bpppixelcell::ax#1 ? ++ (byte) mode_8bpppixelcell::ax#2 + [248] (byte*) mode_8bpppixelcell::gfxa#2 ← phi( mode_8bpppixelcell::@2/(byte*) mode_8bpppixelcell::gfxa#3 mode_8bpppixelcell::@3/(byte*) mode_8bpppixelcell::gfxa#1 ) + [248] (byte) mode_8bpppixelcell::ax#2 ← phi( mode_8bpppixelcell::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_8bpppixelcell::@3/(byte) mode_8bpppixelcell::ax#1 ) + [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 + [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 + [254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 + [255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2 [256] if((byte) mode_8bpppixelcell::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_8bpppixelcell::@3 to:mode_8bpppixelcell::@4 mode_8bpppixelcell::@4: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@3 - [257] (byte) mode_8bpppixelcell::ay#1 ? ++ (byte) mode_8bpppixelcell::ay#4 + [257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4 [258] if((byte) mode_8bpppixelcell::ay#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_8bpppixelcell::@2 to:mode_8bpppixelcell::@5 mode_8bpppixelcell::@5: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@4 - [259] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 + [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 to:mode_8bpppixelcell::@6 mode_8bpppixelcell::@6: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12 mode_8bpppixelcell::@5 - [260] (byte) mode_8bpppixelcell::ch#8 ? phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#1 mode_8bpppixelcell::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [260] (byte) mode_8bpppixelcell::col#7 ? phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [260] (byte*) mode_8bpppixelcell::gfxb#7 ? phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@5/(const byte*) mode_8bpppixelcell::PLANEB#0 ) - [260] (byte*) mode_8bpppixelcell::chargen#4 ? phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::@5/(const byte*) mode_8bpppixelcell::CHARGEN#0 ) + [260] (byte) mode_8bpppixelcell::ch#8 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::ch#1 mode_8bpppixelcell::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [260] (byte) mode_8bpppixelcell::col#7 ← phi( mode_8bpppixelcell::@12/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [260] (byte*) mode_8bpppixelcell::gfxb#7 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@5/(const byte*) mode_8bpppixelcell::PLANEB#0 ) + [260] (byte*) mode_8bpppixelcell::chargen#4 ← phi( mode_8bpppixelcell::@12/(byte*) mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::@5/(const byte*) mode_8bpppixelcell::CHARGEN#0 ) to:mode_8bpppixelcell::@7 mode_8bpppixelcell::@7: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@11 mode_8bpppixelcell::@6 - [261] (byte) mode_8bpppixelcell::cr#6 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cr#1 mode_8bpppixelcell::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [261] (byte) mode_8bpppixelcell::col#5 ? phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::col#7 ) - [261] (byte*) mode_8bpppixelcell::gfxb#5 ? phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::gfxb#7 ) - [261] (byte*) mode_8bpppixelcell::chargen#2 ? phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::chargen#4 ) - [262] (byte) mode_8bpppixelcell::bits#0 ? *((byte*) mode_8bpppixelcell::chargen#2) - [263] (byte*) mode_8bpppixelcell::chargen#1 ? ++ (byte*) mode_8bpppixelcell::chargen#2 + [261] (byte) mode_8bpppixelcell::cr#6 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::cr#1 mode_8bpppixelcell::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [261] (byte) mode_8bpppixelcell::col#5 ← phi( mode_8bpppixelcell::@11/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@6/(byte) mode_8bpppixelcell::col#7 ) + [261] (byte*) mode_8bpppixelcell::gfxb#5 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::gfxb#7 ) + [261] (byte*) mode_8bpppixelcell::chargen#2 ← phi( mode_8bpppixelcell::@11/(byte*) mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::@6/(byte*) mode_8bpppixelcell::chargen#4 ) + [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) + [263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 to:mode_8bpppixelcell::@8 mode_8bpppixelcell::@8: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@7 mode_8bpppixelcell::@9 - [264] (byte) mode_8bpppixelcell::cp#2 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#1 mode_8bpppixelcell::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [264] (byte) mode_8bpppixelcell::col#2 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::col#5 ) - [264] (byte*) mode_8bpppixelcell::gfxb#2 ? phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::gfxb#5 ) - [264] (byte) mode_8bpppixelcell::bits#2 ? phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::bits#0 ) - [265] (byte~) mode_8bpppixelcell::$20 ? (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 + [264] (byte) mode_8bpppixelcell::cp#2 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::cp#1 mode_8bpppixelcell::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [264] (byte) mode_8bpppixelcell::col#2 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::col#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::col#5 ) + [264] (byte*) mode_8bpppixelcell::gfxb#2 ← phi( mode_8bpppixelcell::@9/(byte*) mode_8bpppixelcell::gfxb#1 mode_8bpppixelcell::@7/(byte*) mode_8bpppixelcell::gfxb#5 ) + [264] (byte) mode_8bpppixelcell::bits#2 ← phi( mode_8bpppixelcell::@9/(byte) mode_8bpppixelcell::bits#1 mode_8bpppixelcell::@7/(byte) mode_8bpppixelcell::bits#0 ) + [265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 [266] if((byte~) mode_8bpppixelcell::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_8bpppixelcell::@9 to:mode_8bpppixelcell::@10 mode_8bpppixelcell::@10: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@8 - [267] (byte~) mode_8bpppixelcell::c#3 ? (byte) mode_8bpppixelcell::col#2 + [267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2 to:mode_8bpppixelcell::@9 mode_8bpppixelcell::@9: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@10 mode_8bpppixelcell::@8 - [268] (byte) mode_8bpppixelcell::c#2 ? phi( mode_8bpppixelcell::@10/(byte~) mode_8bpppixelcell::c#3 mode_8bpppixelcell::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [269] *((byte*) mode_8bpppixelcell::gfxb#2) ? (byte) mode_8bpppixelcell::c#2 - [270] (byte*) mode_8bpppixelcell::gfxb#1 ? ++ (byte*) mode_8bpppixelcell::gfxb#2 - [271] (byte) mode_8bpppixelcell::bits#1 ? (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [272] (byte) mode_8bpppixelcell::col#1 ? ++ (byte) mode_8bpppixelcell::col#2 - [273] (byte) mode_8bpppixelcell::cp#1 ? ++ (byte) mode_8bpppixelcell::cp#2 + [268] (byte) mode_8bpppixelcell::c#2 ← phi( mode_8bpppixelcell::@10/(byte~) mode_8bpppixelcell::c#3 mode_8bpppixelcell::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 + [270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 + [271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 + [273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2 [274] if((byte) mode_8bpppixelcell::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@8 to:mode_8bpppixelcell::@11 mode_8bpppixelcell::@11: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@9 - [275] (byte) mode_8bpppixelcell::cr#1 ? ++ (byte) mode_8bpppixelcell::cr#6 + [275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6 [276] if((byte) mode_8bpppixelcell::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@7 to:mode_8bpppixelcell::@12 mode_8bpppixelcell::@12: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@11 - [277] (byte) mode_8bpppixelcell::ch#1 ? ++ (byte) mode_8bpppixelcell::ch#8 + [277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8 [278] if((byte) mode_8bpppixelcell::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_8bpppixelcell::@6 to:mode_8bpppixelcell::@13 mode_8bpppixelcell::@13: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@12 - [279] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 + [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [280] call mode_ctrl to:mode_8bpppixelcell::@return mode_8bpppixelcell::@return: scope:[mode_8bpppixelcell] from mode_8bpppixelcell::@13 [281] return to:@return mode_sixsfred: scope:[mode_sixsfred] from menu::@25 - [282] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 - [283] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [284] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 - [285] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEA#0 - [286] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_sixsfred::PLANEA#0 - [287] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [288] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [291] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEB#0 - [292] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_sixsfred::PLANEB#0 - [293] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [294] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [297] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 - [298] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 + [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 + [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 + [285] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEA#0 + [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 + [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [291] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEB#0 + [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 + [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 + [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 to:mode_sixsfred::@1 mode_sixsfred::@1: scope:[mode_sixsfred] from mode_sixsfred mode_sixsfred::@1 - [299] (byte) mode_sixsfred::i#2 ? phi( mode_sixsfred/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@1/(byte) mode_sixsfred::i#1 ) - [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ? (byte) mode_sixsfred::i#2 - [301] (byte) mode_sixsfred::i#1 ? ++ (byte) mode_sixsfred::i#2 + [299] (byte) mode_sixsfred::i#2 ← phi( mode_sixsfred/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@1/(byte) mode_sixsfred::i#1 ) + [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 + [301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2 [302] if((byte) mode_sixsfred::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred::@1 to:mode_sixsfred::@2 mode_sixsfred::@2: scope:[mode_sixsfred] from mode_sixsfred::@1 - [303] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [303] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred::@3 mode_sixsfred::@3: scope:[mode_sixsfred] from mode_sixsfred::@2 mode_sixsfred::@5 - [304] (byte*) mode_sixsfred::col#3 ? phi( mode_sixsfred::@2/(const byte*) mode_sixsfred::COLORS#0 mode_sixsfred::@5/(byte*) mode_sixsfred::col#1 ) - [304] (byte) mode_sixsfred::cy#4 ? phi( mode_sixsfred::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@5/(byte) mode_sixsfred::cy#1 ) + [304] (byte*) mode_sixsfred::col#3 ← phi( mode_sixsfred::@2/(const byte*) mode_sixsfred::COLORS#0 mode_sixsfred::@5/(byte*) mode_sixsfred::col#1 ) + [304] (byte) mode_sixsfred::cy#4 ← phi( mode_sixsfred::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@5/(byte) mode_sixsfred::cy#1 ) to:mode_sixsfred::@4 mode_sixsfred::@4: scope:[mode_sixsfred] from mode_sixsfred::@3 mode_sixsfred::@4 - [305] (byte*) mode_sixsfred::col#2 ? phi( mode_sixsfred::@3/(byte*) mode_sixsfred::col#3 mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 ) - [305] (byte) mode_sixsfred::cx#2 ? phi( mode_sixsfred::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@4/(byte) mode_sixsfred::cx#1 ) - [306] (byte~) mode_sixsfred::$17 ? (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 - [307] (byte~) mode_sixsfred::$18 ? (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f - [308] *((byte*) mode_sixsfred::col#2) ? (byte~) mode_sixsfred::$18 - [309] (byte*) mode_sixsfred::col#1 ? ++ (byte*) mode_sixsfred::col#2 - [310] (byte) mode_sixsfred::cx#1 ? ++ (byte) mode_sixsfred::cx#2 + [305] (byte*) mode_sixsfred::col#2 ← phi( mode_sixsfred::@3/(byte*) mode_sixsfred::col#3 mode_sixsfred::@4/(byte*) mode_sixsfred::col#1 ) + [305] (byte) mode_sixsfred::cx#2 ← phi( mode_sixsfred::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@4/(byte) mode_sixsfred::cx#1 ) + [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 + [307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f + [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 + [309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 + [310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2 [311] if((byte) mode_sixsfred::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@4 to:mode_sixsfred::@5 mode_sixsfred::@5: scope:[mode_sixsfred] from mode_sixsfred::@4 - [312] (byte) mode_sixsfred::cy#1 ? ++ (byte) mode_sixsfred::cy#4 + [312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4 [313] if((byte) mode_sixsfred::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred::@3 to:mode_sixsfred::@6 mode_sixsfred::@6: scope:[mode_sixsfred] from mode_sixsfred::@5 mode_sixsfred::@8 - [314] (byte*) mode_sixsfred::gfxa#3 ? phi( mode_sixsfred::@5/(const byte*) mode_sixsfred::PLANEA#0 mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 ) - [314] (byte) mode_sixsfred::ay#4 ? phi( mode_sixsfred::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@8/(byte) mode_sixsfred::ay#1 ) + [314] (byte*) mode_sixsfred::gfxa#3 ← phi( mode_sixsfred::@5/(const byte*) mode_sixsfred::PLANEA#0 mode_sixsfred::@8/(byte*) mode_sixsfred::gfxa#1 ) + [314] (byte) mode_sixsfred::ay#4 ← phi( mode_sixsfred::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@8/(byte) mode_sixsfred::ay#1 ) to:mode_sixsfred::@7 mode_sixsfred::@7: scope:[mode_sixsfred] from mode_sixsfred::@6 mode_sixsfred::@7 - [315] (byte) mode_sixsfred::ax#2 ? phi( mode_sixsfred::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@7/(byte) mode_sixsfred::ax#1 ) - [315] (byte*) mode_sixsfred::gfxa#2 ? phi( mode_sixsfred::@6/(byte*) mode_sixsfred::gfxa#3 mode_sixsfred::@7/(byte*) mode_sixsfred::gfxa#1 ) - [316] (byte~) mode_sixsfred::$21 ? (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [317] (byte) mode_sixsfred::row#0 ? (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 - [318] *((byte*) mode_sixsfred::gfxa#2) ? *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) - [319] (byte*) mode_sixsfred::gfxa#1 ? ++ (byte*) mode_sixsfred::gfxa#2 - [320] (byte) mode_sixsfred::ax#1 ? ++ (byte) mode_sixsfred::ax#2 + [315] (byte) mode_sixsfred::ax#2 ← phi( mode_sixsfred::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@7/(byte) mode_sixsfred::ax#1 ) + [315] (byte*) mode_sixsfred::gfxa#2 ← phi( mode_sixsfred::@6/(byte*) mode_sixsfred::gfxa#3 mode_sixsfred::@7/(byte*) mode_sixsfred::gfxa#1 ) + [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 + [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) + [319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 + [320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2 [321] if((byte) mode_sixsfred::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@7 to:mode_sixsfred::@8 mode_sixsfred::@8: scope:[mode_sixsfred] from mode_sixsfred::@7 - [322] (byte) mode_sixsfred::ay#1 ? ++ (byte) mode_sixsfred::ay#4 + [322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4 [323] if((byte) mode_sixsfred::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@6 to:mode_sixsfred::@9 mode_sixsfred::@9: scope:[mode_sixsfred] from mode_sixsfred::@11 mode_sixsfred::@8 - [324] (byte) mode_sixsfred::by#4 ? phi( mode_sixsfred::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@11/(byte) mode_sixsfred::by#1 ) - [324] (byte*) mode_sixsfred::gfxb#3 ? phi( mode_sixsfred::@8/(const byte*) mode_sixsfred::PLANEB#0 mode_sixsfred::@11/(byte*) mode_sixsfred::gfxb#1 ) + [324] (byte) mode_sixsfred::by#4 ← phi( mode_sixsfred::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@11/(byte) mode_sixsfred::by#1 ) + [324] (byte*) mode_sixsfred::gfxb#3 ← phi( mode_sixsfred::@8/(const byte*) mode_sixsfred::PLANEB#0 mode_sixsfred::@11/(byte*) mode_sixsfred::gfxb#1 ) to:mode_sixsfred::@10 mode_sixsfred::@10: scope:[mode_sixsfred] from mode_sixsfred::@10 mode_sixsfred::@9 - [325] (byte) mode_sixsfred::bx#2 ? phi( mode_sixsfred::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@10/(byte) mode_sixsfred::bx#1 ) - [325] (byte*) mode_sixsfred::gfxb#2 ? phi( mode_sixsfred::@9/(byte*) mode_sixsfred::gfxb#3 mode_sixsfred::@10/(byte*) mode_sixsfred::gfxb#1 ) - [326] *((byte*) mode_sixsfred::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b - [327] (byte*) mode_sixsfred::gfxb#1 ? ++ (byte*) mode_sixsfred::gfxb#2 - [328] (byte) mode_sixsfred::bx#1 ? ++ (byte) mode_sixsfred::bx#2 + [325] (byte) mode_sixsfred::bx#2 ← phi( mode_sixsfred::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred::@10/(byte) mode_sixsfred::bx#1 ) + [325] (byte*) mode_sixsfred::gfxb#2 ← phi( mode_sixsfred::@9/(byte*) mode_sixsfred::gfxb#3 mode_sixsfred::@10/(byte*) mode_sixsfred::gfxb#1 ) + [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b + [327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 + [328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2 [329] if((byte) mode_sixsfred::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@10 to:mode_sixsfred::@11 mode_sixsfred::@11: scope:[mode_sixsfred] from mode_sixsfred::@10 - [330] (byte) mode_sixsfred::by#1 ? ++ (byte) mode_sixsfred::by#4 + [330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4 [331] if((byte) mode_sixsfred::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@9 to:mode_sixsfred::@12 mode_sixsfred::@12: scope:[mode_sixsfred] from mode_sixsfred::@11 @@ -9980,92 +9980,92 @@ mode_sixsfred::@return: scope:[mode_sixsfred] from mode_sixsfred::@12 [334] return to:@return mode_twoplanebitmap: scope:[mode_twoplanebitmap] from menu::@24 - [335] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 - [336] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [337] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [338] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEA#0 - [339] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_twoplanebitmap::PLANEA#0 - [340] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [341] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [344] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEB#0 - [345] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_twoplanebitmap::PLANEB#0 - [346] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [347] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [350] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 - [351] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 + [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 + [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [338] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEA#0 + [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 + [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [344] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEB#0 + [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 + [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 + [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 to:mode_twoplanebitmap::@1 mode_twoplanebitmap::@1: scope:[mode_twoplanebitmap] from mode_twoplanebitmap mode_twoplanebitmap::@1 - [352] (byte) mode_twoplanebitmap::i#2 ? phi( mode_twoplanebitmap/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@1/(byte) mode_twoplanebitmap::i#1 ) - [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ? (byte) mode_twoplanebitmap::i#2 - [354] (byte) mode_twoplanebitmap::i#1 ? ++ (byte) mode_twoplanebitmap::i#2 + [352] (byte) mode_twoplanebitmap::i#2 ← phi( mode_twoplanebitmap/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@1/(byte) mode_twoplanebitmap::i#1 ) + [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 + [354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2 [355] if((byte) mode_twoplanebitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_twoplanebitmap::@1 to:mode_twoplanebitmap::@2 mode_twoplanebitmap::@2: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@1 - [356] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [357] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $70 - [358] *((const byte*) BGCOL2#0) ? (byte/word/signed word/dword/signed dword) $d4 + [356] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [357] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $70 + [358] *((const byte*) BGCOL2#0) ← (byte/word/signed word/dword/signed dword) $d4 to:mode_twoplanebitmap::@3 mode_twoplanebitmap::@3: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@2 mode_twoplanebitmap::@5 - [359] (byte*) mode_twoplanebitmap::col#3 ? phi( mode_twoplanebitmap::@2/(const byte*) mode_twoplanebitmap::COLORS#0 mode_twoplanebitmap::@5/(byte*) mode_twoplanebitmap::col#1 ) - [359] (byte) mode_twoplanebitmap::cy#4 ? phi( mode_twoplanebitmap::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@5/(byte) mode_twoplanebitmap::cy#1 ) + [359] (byte*) mode_twoplanebitmap::col#3 ← phi( mode_twoplanebitmap::@2/(const byte*) mode_twoplanebitmap::COLORS#0 mode_twoplanebitmap::@5/(byte*) mode_twoplanebitmap::col#1 ) + [359] (byte) mode_twoplanebitmap::cy#4 ← phi( mode_twoplanebitmap::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@5/(byte) mode_twoplanebitmap::cy#1 ) to:mode_twoplanebitmap::@4 mode_twoplanebitmap::@4: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@3 mode_twoplanebitmap::@4 - [360] (byte*) mode_twoplanebitmap::col#2 ? phi( mode_twoplanebitmap::@3/(byte*) mode_twoplanebitmap::col#3 mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 ) - [360] (byte) mode_twoplanebitmap::cx#2 ? phi( mode_twoplanebitmap::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cx#1 ) - [361] (byte~) mode_twoplanebitmap::$16 ? (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [362] (byte~) mode_twoplanebitmap::$17 ? (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [363] (byte~) mode_twoplanebitmap::$18 ? (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [364] (byte~) mode_twoplanebitmap::$19 ? (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 - [365] *((byte*) mode_twoplanebitmap::col#2) ? (byte~) mode_twoplanebitmap::$19 - [366] (byte*) mode_twoplanebitmap::col#1 ? ++ (byte*) mode_twoplanebitmap::col#2 - [367] (byte) mode_twoplanebitmap::cx#1 ? ++ (byte) mode_twoplanebitmap::cx#2 + [360] (byte*) mode_twoplanebitmap::col#2 ← phi( mode_twoplanebitmap::@3/(byte*) mode_twoplanebitmap::col#3 mode_twoplanebitmap::@4/(byte*) mode_twoplanebitmap::col#1 ) + [360] (byte) mode_twoplanebitmap::cx#2 ← phi( mode_twoplanebitmap::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@4/(byte) mode_twoplanebitmap::cx#1 ) + [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 + [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 + [366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 + [367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2 [368] if((byte) mode_twoplanebitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@4 to:mode_twoplanebitmap::@5 mode_twoplanebitmap::@5: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@4 - [369] (byte) mode_twoplanebitmap::cy#1 ? ++ (byte) mode_twoplanebitmap::cy#4 + [369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4 [370] if((byte) mode_twoplanebitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_twoplanebitmap::@3 to:mode_twoplanebitmap::@6 mode_twoplanebitmap::@6: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@11 mode_twoplanebitmap::@5 - [371] (byte*) mode_twoplanebitmap::gfxa#7 ? phi( mode_twoplanebitmap::@11/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@5/(const byte*) mode_twoplanebitmap::PLANEA#0 ) - [371] (byte) mode_twoplanebitmap::ay#5 ? phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ay#1 mode_twoplanebitmap::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [371] (byte*) mode_twoplanebitmap::gfxa#7 ← phi( mode_twoplanebitmap::@11/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@5/(const byte*) mode_twoplanebitmap::PLANEA#0 ) + [371] (byte) mode_twoplanebitmap::ay#5 ← phi( mode_twoplanebitmap::@11/(byte) mode_twoplanebitmap::ay#1 mode_twoplanebitmap::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 ) to:mode_twoplanebitmap::@7 mode_twoplanebitmap::@7: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@6 mode_twoplanebitmap::@9 - [372] (byte) mode_twoplanebitmap::ax#2 ? phi( mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ax#1 mode_twoplanebitmap::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [372] (byte*) mode_twoplanebitmap::gfxa#3 ? phi( mode_twoplanebitmap::@9/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@6/(byte*) mode_twoplanebitmap::gfxa#7 ) - [373] (byte~) mode_twoplanebitmap::$22 ? (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 + [372] (byte) mode_twoplanebitmap::ax#2 ← phi( mode_twoplanebitmap::@9/(byte) mode_twoplanebitmap::ax#1 mode_twoplanebitmap::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [372] (byte*) mode_twoplanebitmap::gfxa#3 ← phi( mode_twoplanebitmap::@9/(byte*) mode_twoplanebitmap::gfxa#6 mode_twoplanebitmap::@6/(byte*) mode_twoplanebitmap::gfxa#7 ) + [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 [374] if((byte~) mode_twoplanebitmap::$22==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_twoplanebitmap::@8 to:mode_twoplanebitmap::@10 mode_twoplanebitmap::@10: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@7 - [375] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff - [376] (byte*) mode_twoplanebitmap::gfxa#2 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 + [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff + [376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 to:mode_twoplanebitmap::@9 mode_twoplanebitmap::@9: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@10 mode_twoplanebitmap::@8 - [377] (byte*) mode_twoplanebitmap::gfxa#6 ? phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#1 ) - [378] (byte) mode_twoplanebitmap::ax#1 ? ++ (byte) mode_twoplanebitmap::ax#2 + [377] (byte*) mode_twoplanebitmap::gfxa#6 ← phi( mode_twoplanebitmap::@10/(byte*) mode_twoplanebitmap::gfxa#2 mode_twoplanebitmap::@8/(byte*) mode_twoplanebitmap::gfxa#1 ) + [378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2 [379] if((byte) mode_twoplanebitmap::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@7 to:mode_twoplanebitmap::@11 mode_twoplanebitmap::@11: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@9 - [380] (byte) mode_twoplanebitmap::ay#1 ? ++ (byte) mode_twoplanebitmap::ay#5 + [380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5 [381] if((byte) mode_twoplanebitmap::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@6 to:mode_twoplanebitmap::@12 mode_twoplanebitmap::@12: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@11 mode_twoplanebitmap::@14 - [382] (byte) mode_twoplanebitmap::by#4 ? phi( mode_twoplanebitmap::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::by#1 ) - [382] (byte*) mode_twoplanebitmap::gfxb#3 ? phi( mode_twoplanebitmap::@11/(const byte*) mode_twoplanebitmap::PLANEB#0 mode_twoplanebitmap::@14/(byte*) mode_twoplanebitmap::gfxb#1 ) + [382] (byte) mode_twoplanebitmap::by#4 ← phi( mode_twoplanebitmap::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@14/(byte) mode_twoplanebitmap::by#1 ) + [382] (byte*) mode_twoplanebitmap::gfxb#3 ← phi( mode_twoplanebitmap::@11/(const byte*) mode_twoplanebitmap::PLANEB#0 mode_twoplanebitmap::@14/(byte*) mode_twoplanebitmap::gfxb#1 ) to:mode_twoplanebitmap::@13 mode_twoplanebitmap::@13: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@12 mode_twoplanebitmap::@13 - [383] (byte) mode_twoplanebitmap::bx#2 ? phi( mode_twoplanebitmap::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@13/(byte) mode_twoplanebitmap::bx#1 ) - [383] (byte*) mode_twoplanebitmap::gfxb#2 ? phi( mode_twoplanebitmap::@12/(byte*) mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::@13/(byte*) mode_twoplanebitmap::gfxb#1 ) - [384] *((byte*) mode_twoplanebitmap::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f - [385] (byte*) mode_twoplanebitmap::gfxb#1 ? ++ (byte*) mode_twoplanebitmap::gfxb#2 - [386] (byte) mode_twoplanebitmap::bx#1 ? ++ (byte) mode_twoplanebitmap::bx#2 + [383] (byte) mode_twoplanebitmap::bx#2 ← phi( mode_twoplanebitmap::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_twoplanebitmap::@13/(byte) mode_twoplanebitmap::bx#1 ) + [383] (byte*) mode_twoplanebitmap::gfxb#2 ← phi( mode_twoplanebitmap::@12/(byte*) mode_twoplanebitmap::gfxb#3 mode_twoplanebitmap::@13/(byte*) mode_twoplanebitmap::gfxb#1 ) + [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f + [385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 + [386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2 [387] if((byte) mode_twoplanebitmap::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@13 to:mode_twoplanebitmap::@14 mode_twoplanebitmap::@14: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@13 - [388] (byte) mode_twoplanebitmap::by#1 ? ++ (byte) mode_twoplanebitmap::by#4 + [388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4 [389] if((byte) mode_twoplanebitmap::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@12 to:mode_twoplanebitmap::@15 mode_twoplanebitmap::@15: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@14 @@ -10076,89 +10076,89 @@ mode_twoplanebitmap::@return: scope:[mode_twoplanebitmap] from mode_twoplanebit [392] return to:@return mode_twoplanebitmap::@8: scope:[mode_twoplanebitmap] from mode_twoplanebitmap::@7 - [393] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [394] (byte*) mode_twoplanebitmap::gfxa#1 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 + [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 to:mode_twoplanebitmap::@9 mode_sixsfred2: scope:[mode_sixsfred2] from menu::@23 - [395] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_LINEAR#0 - [396] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [397] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 - [398] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEA#0 - [399] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_sixsfred2::PLANEA#0 - [400] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [401] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [404] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEB#0 - [405] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_sixsfred2::PLANEB#0 - [406] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [407] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 - [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [410] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 - [411] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 + [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 + [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 + [398] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEA#0 + [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 + [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [404] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEB#0 + [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 + [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 + [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 + [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 to:mode_sixsfred2::@1 mode_sixsfred2::@1: scope:[mode_sixsfred2] from mode_sixsfred2 mode_sixsfred2::@1 - [412] (byte) mode_sixsfred2::i#2 ? phi( mode_sixsfred2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@1/(byte) mode_sixsfred2::i#1 ) - [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ? (byte) mode_sixsfred2::i#2 - [414] (byte) mode_sixsfred2::i#1 ? ++ (byte) mode_sixsfred2::i#2 + [412] (byte) mode_sixsfred2::i#2 ← phi( mode_sixsfred2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@1/(byte) mode_sixsfred2::i#1 ) + [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 + [414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2 [415] if((byte) mode_sixsfred2::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred2::@1 to:mode_sixsfred2::@2 mode_sixsfred2::@2: scope:[mode_sixsfred2] from mode_sixsfred2::@1 - [416] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [416] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_sixsfred2::@3 mode_sixsfred2::@3: scope:[mode_sixsfred2] from mode_sixsfred2::@2 mode_sixsfred2::@5 - [417] (byte*) mode_sixsfred2::col#3 ? phi( mode_sixsfred2::@2/(const byte*) mode_sixsfred2::COLORS#0 mode_sixsfred2::@5/(byte*) mode_sixsfred2::col#1 ) - [417] (byte) mode_sixsfred2::cy#4 ? phi( mode_sixsfred2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@5/(byte) mode_sixsfred2::cy#1 ) + [417] (byte*) mode_sixsfred2::col#3 ← phi( mode_sixsfred2::@2/(const byte*) mode_sixsfred2::COLORS#0 mode_sixsfred2::@5/(byte*) mode_sixsfred2::col#1 ) + [417] (byte) mode_sixsfred2::cy#4 ← phi( mode_sixsfred2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@5/(byte) mode_sixsfred2::cy#1 ) to:mode_sixsfred2::@4 mode_sixsfred2::@4: scope:[mode_sixsfred2] from mode_sixsfred2::@3 mode_sixsfred2::@4 - [418] (byte*) mode_sixsfred2::col#2 ? phi( mode_sixsfred2::@3/(byte*) mode_sixsfred2::col#3 mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 ) - [418] (byte) mode_sixsfred2::cx#2 ? phi( mode_sixsfred2::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@4/(byte) mode_sixsfred2::cx#1 ) - [419] (byte~) mode_sixsfred2::$15 ? (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 - [420] (byte~) mode_sixsfred2::$16 ? (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [421] (byte~) mode_sixsfred2::$17 ? (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 - [422] (byte~) mode_sixsfred2::$18 ? (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 - [423] *((byte*) mode_sixsfred2::col#2) ? (byte~) mode_sixsfred2::$18 - [424] (byte*) mode_sixsfred2::col#1 ? ++ (byte*) mode_sixsfred2::col#2 - [425] (byte) mode_sixsfred2::cx#1 ? ++ (byte) mode_sixsfred2::cx#2 + [418] (byte*) mode_sixsfred2::col#2 ← phi( mode_sixsfred2::@3/(byte*) mode_sixsfred2::col#3 mode_sixsfred2::@4/(byte*) mode_sixsfred2::col#1 ) + [418] (byte) mode_sixsfred2::cx#2 ← phi( mode_sixsfred2::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@4/(byte) mode_sixsfred2::cx#1 ) + [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 + [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 + [422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 + [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 + [424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 + [425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2 [426] if((byte) mode_sixsfred2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@4 to:mode_sixsfred2::@5 mode_sixsfred2::@5: scope:[mode_sixsfred2] from mode_sixsfred2::@4 - [427] (byte) mode_sixsfred2::cy#1 ? ++ (byte) mode_sixsfred2::cy#4 + [427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4 [428] if((byte) mode_sixsfred2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred2::@3 to:mode_sixsfred2::@6 mode_sixsfred2::@6: scope:[mode_sixsfred2] from mode_sixsfred2::@5 mode_sixsfred2::@8 - [429] (byte*) mode_sixsfred2::gfxa#3 ? phi( mode_sixsfred2::@5/(const byte*) mode_sixsfred2::PLANEA#0 mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 ) - [429] (byte) mode_sixsfred2::ay#4 ? phi( mode_sixsfred2::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#1 ) + [429] (byte*) mode_sixsfred2::gfxa#3 ← phi( mode_sixsfred2::@5/(const byte*) mode_sixsfred2::PLANEA#0 mode_sixsfred2::@8/(byte*) mode_sixsfred2::gfxa#1 ) + [429] (byte) mode_sixsfred2::ay#4 ← phi( mode_sixsfred2::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@8/(byte) mode_sixsfred2::ay#1 ) to:mode_sixsfred2::@7 mode_sixsfred2::@7: scope:[mode_sixsfred2] from mode_sixsfred2::@6 mode_sixsfred2::@7 - [430] (byte) mode_sixsfred2::ax#2 ? phi( mode_sixsfred2::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@7/(byte) mode_sixsfred2::ax#1 ) - [430] (byte*) mode_sixsfred2::gfxa#2 ? phi( mode_sixsfred2::@6/(byte*) mode_sixsfred2::gfxa#3 mode_sixsfred2::@7/(byte*) mode_sixsfred2::gfxa#1 ) - [431] (byte~) mode_sixsfred2::$21 ? (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [432] (byte) mode_sixsfred2::row#0 ? (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 - [433] *((byte*) mode_sixsfred2::gfxa#2) ? *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) - [434] (byte*) mode_sixsfred2::gfxa#1 ? ++ (byte*) mode_sixsfred2::gfxa#2 - [435] (byte) mode_sixsfred2::ax#1 ? ++ (byte) mode_sixsfred2::ax#2 + [430] (byte) mode_sixsfred2::ax#2 ← phi( mode_sixsfred2::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@7/(byte) mode_sixsfred2::ax#1 ) + [430] (byte*) mode_sixsfred2::gfxa#2 ← phi( mode_sixsfred2::@6/(byte*) mode_sixsfred2::gfxa#3 mode_sixsfred2::@7/(byte*) mode_sixsfred2::gfxa#1 ) + [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 + [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) + [434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 + [435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2 [436] if((byte) mode_sixsfred2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@7 to:mode_sixsfred2::@8 mode_sixsfred2::@8: scope:[mode_sixsfred2] from mode_sixsfred2::@7 - [437] (byte) mode_sixsfred2::ay#1 ? ++ (byte) mode_sixsfred2::ay#4 + [437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4 [438] if((byte) mode_sixsfred2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@6 to:mode_sixsfred2::@9 mode_sixsfred2::@9: scope:[mode_sixsfred2] from mode_sixsfred2::@11 mode_sixsfred2::@8 - [439] (byte) mode_sixsfred2::by#4 ? phi( mode_sixsfred2::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@11/(byte) mode_sixsfred2::by#1 ) - [439] (byte*) mode_sixsfred2::gfxb#3 ? phi( mode_sixsfred2::@8/(const byte*) mode_sixsfred2::PLANEB#0 mode_sixsfred2::@11/(byte*) mode_sixsfred2::gfxb#1 ) + [439] (byte) mode_sixsfred2::by#4 ← phi( mode_sixsfred2::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@11/(byte) mode_sixsfred2::by#1 ) + [439] (byte*) mode_sixsfred2::gfxb#3 ← phi( mode_sixsfred2::@8/(const byte*) mode_sixsfred2::PLANEB#0 mode_sixsfred2::@11/(byte*) mode_sixsfred2::gfxb#1 ) to:mode_sixsfred2::@10 mode_sixsfred2::@10: scope:[mode_sixsfred2] from mode_sixsfred2::@10 mode_sixsfred2::@9 - [440] (byte) mode_sixsfred2::bx#2 ? phi( mode_sixsfred2::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@10/(byte) mode_sixsfred2::bx#1 ) - [440] (byte*) mode_sixsfred2::gfxb#2 ? phi( mode_sixsfred2::@9/(byte*) mode_sixsfred2::gfxb#3 mode_sixsfred2::@10/(byte*) mode_sixsfred2::gfxb#1 ) - [441] *((byte*) mode_sixsfred2::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b - [442] (byte*) mode_sixsfred2::gfxb#1 ? ++ (byte*) mode_sixsfred2::gfxb#2 - [443] (byte) mode_sixsfred2::bx#1 ? ++ (byte) mode_sixsfred2::bx#2 + [440] (byte) mode_sixsfred2::bx#2 ← phi( mode_sixsfred2::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_sixsfred2::@10/(byte) mode_sixsfred2::bx#1 ) + [440] (byte*) mode_sixsfred2::gfxb#2 ← phi( mode_sixsfred2::@9/(byte*) mode_sixsfred2::gfxb#3 mode_sixsfred2::@10/(byte*) mode_sixsfred2::gfxb#1 ) + [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b + [442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 + [443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2 [444] if((byte) mode_sixsfred2::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@10 to:mode_sixsfred2::@11 mode_sixsfred2::@11: scope:[mode_sixsfred2] from mode_sixsfred2::@10 - [445] (byte) mode_sixsfred2::by#1 ? ++ (byte) mode_sixsfred2::by#4 + [445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4 [446] if((byte) mode_sixsfred2::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@9 to:mode_sixsfred2::@12 mode_sixsfred2::@12: scope:[mode_sixsfred2] from mode_sixsfred2::@11 @@ -10169,50 +10169,50 @@ mode_sixsfred2::@return: scope:[mode_sixsfred2] from mode_sixsfred2::@12 [449] return to:@return mode_hicolmcchar: scope:[mode_hicolmcchar] from menu::@22 - [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 - [451] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 - [452] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 - [453] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 - [454] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [455] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 - [456] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [457] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 - [458] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 + [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 + [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 + [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 + [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [455] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 + [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 + [458] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:mode_hicolmcchar::@1 mode_hicolmcchar::@1: scope:[mode_hicolmcchar] from mode_hicolmcchar mode_hicolmcchar::@1 - [459] (byte) mode_hicolmcchar::i#2 ? phi( mode_hicolmcchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolmcchar::@1/(byte) mode_hicolmcchar::i#1 ) - [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ? (byte) mode_hicolmcchar::i#2 - [461] (byte) mode_hicolmcchar::i#1 ? ++ (byte) mode_hicolmcchar::i#2 + [459] (byte) mode_hicolmcchar::i#2 ← phi( mode_hicolmcchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolmcchar::@1/(byte) mode_hicolmcchar::i#1 ) + [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 + [461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2 [462] if((byte) mode_hicolmcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolmcchar::@1 to:mode_hicolmcchar::@2 mode_hicolmcchar::@2: scope:[mode_hicolmcchar] from mode_hicolmcchar::@1 - [463] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [464] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 - [465] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 - [466] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 + [463] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [464] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 + [465] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 + [466] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 to:mode_hicolmcchar::@3 mode_hicolmcchar::@3: scope:[mode_hicolmcchar] from mode_hicolmcchar::@2 mode_hicolmcchar::@5 - [467] (byte*) mode_hicolmcchar::ch#3 ? phi( mode_hicolmcchar::@2/(const byte*) mode_hicolmcchar::SCREEN#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::ch#1 ) - [467] (byte*) mode_hicolmcchar::col#3 ? phi( mode_hicolmcchar::@2/(const byte*) mode_hicolmcchar::COLORS#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::col#1 ) - [467] (byte) mode_hicolmcchar::cy#4 ? phi( mode_hicolmcchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolmcchar::@5/(byte) mode_hicolmcchar::cy#1 ) + [467] (byte*) mode_hicolmcchar::ch#3 ← phi( mode_hicolmcchar::@2/(const byte*) mode_hicolmcchar::SCREEN#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::ch#1 ) + [467] (byte*) mode_hicolmcchar::col#3 ← phi( mode_hicolmcchar::@2/(const byte*) mode_hicolmcchar::COLORS#0 mode_hicolmcchar::@5/(byte*) mode_hicolmcchar::col#1 ) + [467] (byte) mode_hicolmcchar::cy#4 ← phi( mode_hicolmcchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolmcchar::@5/(byte) mode_hicolmcchar::cy#1 ) to:mode_hicolmcchar::@4 mode_hicolmcchar::@4: scope:[mode_hicolmcchar] from mode_hicolmcchar::@3 mode_hicolmcchar::@4 - [468] (byte*) mode_hicolmcchar::ch#2 ? phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::ch#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 ) - [468] (byte*) mode_hicolmcchar::col#2 ? phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::col#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 ) - [468] (byte) mode_hicolmcchar::cx#2 ? phi( mode_hicolmcchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cx#1 ) - [469] (byte~) mode_hicolmcchar::$26 ? (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [470] (byte~) mode_hicolmcchar::$27 ? (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [471] (byte~) mode_hicolmcchar::$28 ? (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [472] (byte) mode_hicolmcchar::v#0 ? (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 - [473] *((byte*) mode_hicolmcchar::col#2) ? (byte) mode_hicolmcchar::v#0 - [474] (byte*) mode_hicolmcchar::col#1 ? ++ (byte*) mode_hicolmcchar::col#2 - [475] *((byte*) mode_hicolmcchar::ch#2) ? (byte) mode_hicolmcchar::v#0 - [476] (byte*) mode_hicolmcchar::ch#1 ? ++ (byte*) mode_hicolmcchar::ch#2 - [477] (byte) mode_hicolmcchar::cx#1 ? ++ (byte) mode_hicolmcchar::cx#2 + [468] (byte*) mode_hicolmcchar::ch#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::ch#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::ch#1 ) + [468] (byte*) mode_hicolmcchar::col#2 ← phi( mode_hicolmcchar::@3/(byte*) mode_hicolmcchar::col#3 mode_hicolmcchar::@4/(byte*) mode_hicolmcchar::col#1 ) + [468] (byte) mode_hicolmcchar::cx#2 ← phi( mode_hicolmcchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolmcchar::@4/(byte) mode_hicolmcchar::cx#1 ) + [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 + [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 + [474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 + [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 + [476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 + [477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2 [478] if((byte) mode_hicolmcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolmcchar::@4 to:mode_hicolmcchar::@5 mode_hicolmcchar::@5: scope:[mode_hicolmcchar] from mode_hicolmcchar::@4 - [479] (byte) mode_hicolmcchar::cy#1 ? ++ (byte) mode_hicolmcchar::cy#4 + [479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4 [480] if((byte) mode_hicolmcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolmcchar::@3 to:mode_hicolmcchar::@6 mode_hicolmcchar::@6: scope:[mode_hicolmcchar] from mode_hicolmcchar::@5 @@ -10223,51 +10223,51 @@ mode_hicolmcchar::@return: scope:[mode_hicolmcchar] from mode_hicolmcchar::@6 [483] return to:@return mode_hicolecmchar: scope:[mode_hicolecmchar] from menu::@21 - [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 - [485] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 - [486] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 - [487] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 - [488] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [489] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 - [490] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [491] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [492] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 + [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 + [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 + [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 + [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [489] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 + [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [492] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:mode_hicolecmchar::@1 mode_hicolecmchar::@1: scope:[mode_hicolecmchar] from mode_hicolecmchar mode_hicolecmchar::@1 - [493] (byte) mode_hicolecmchar::i#2 ? phi( mode_hicolecmchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@1/(byte) mode_hicolecmchar::i#1 ) - [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ? (byte) mode_hicolecmchar::i#2 - [495] (byte) mode_hicolecmchar::i#1 ? ++ (byte) mode_hicolecmchar::i#2 + [493] (byte) mode_hicolecmchar::i#2 ← phi( mode_hicolecmchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@1/(byte) mode_hicolecmchar::i#1 ) + [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 + [495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2 [496] if((byte) mode_hicolecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolecmchar::@1 to:mode_hicolecmchar::@2 mode_hicolecmchar::@2: scope:[mode_hicolecmchar] from mode_hicolecmchar::@1 - [497] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [498] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 - [499] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 - [500] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 - [501] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) $5c + [497] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [498] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 + [499] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 + [500] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 + [501] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) $5c to:mode_hicolecmchar::@3 mode_hicolecmchar::@3: scope:[mode_hicolecmchar] from mode_hicolecmchar::@2 mode_hicolecmchar::@5 - [502] (byte*) mode_hicolecmchar::ch#3 ? phi( mode_hicolecmchar::@2/(const byte*) mode_hicolecmchar::SCREEN#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::ch#1 ) - [502] (byte*) mode_hicolecmchar::col#3 ? phi( mode_hicolecmchar::@2/(const byte*) mode_hicolecmchar::COLORS#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::col#1 ) - [502] (byte) mode_hicolecmchar::cy#4 ? phi( mode_hicolecmchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@5/(byte) mode_hicolecmchar::cy#1 ) + [502] (byte*) mode_hicolecmchar::ch#3 ← phi( mode_hicolecmchar::@2/(const byte*) mode_hicolecmchar::SCREEN#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::ch#1 ) + [502] (byte*) mode_hicolecmchar::col#3 ← phi( mode_hicolecmchar::@2/(const byte*) mode_hicolecmchar::COLORS#0 mode_hicolecmchar::@5/(byte*) mode_hicolecmchar::col#1 ) + [502] (byte) mode_hicolecmchar::cy#4 ← phi( mode_hicolecmchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@5/(byte) mode_hicolecmchar::cy#1 ) to:mode_hicolecmchar::@4 mode_hicolecmchar::@4: scope:[mode_hicolecmchar] from mode_hicolecmchar::@3 mode_hicolecmchar::@4 - [503] (byte*) mode_hicolecmchar::ch#2 ? phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::ch#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 ) - [503] (byte*) mode_hicolecmchar::col#2 ? phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::col#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 ) - [503] (byte) mode_hicolecmchar::cx#2 ? phi( mode_hicolecmchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cx#1 ) - [504] (byte~) mode_hicolecmchar::$26 ? (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [505] (byte~) mode_hicolecmchar::$27 ? (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [506] (byte~) mode_hicolecmchar::$28 ? (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [507] (byte) mode_hicolecmchar::v#0 ? (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 - [508] *((byte*) mode_hicolecmchar::col#2) ? (byte) mode_hicolecmchar::v#0 - [509] (byte*) mode_hicolecmchar::col#1 ? ++ (byte*) mode_hicolecmchar::col#2 - [510] *((byte*) mode_hicolecmchar::ch#2) ? (byte) mode_hicolecmchar::v#0 - [511] (byte*) mode_hicolecmchar::ch#1 ? ++ (byte*) mode_hicolecmchar::ch#2 - [512] (byte) mode_hicolecmchar::cx#1 ? ++ (byte) mode_hicolecmchar::cx#2 + [503] (byte*) mode_hicolecmchar::ch#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::ch#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::ch#1 ) + [503] (byte*) mode_hicolecmchar::col#2 ← phi( mode_hicolecmchar::@3/(byte*) mode_hicolecmchar::col#3 mode_hicolecmchar::@4/(byte*) mode_hicolecmchar::col#1 ) + [503] (byte) mode_hicolecmchar::cx#2 ← phi( mode_hicolecmchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolecmchar::@4/(byte) mode_hicolecmchar::cx#1 ) + [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 + [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 + [509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 + [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 + [511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 + [512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2 [513] if((byte) mode_hicolecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolecmchar::@4 to:mode_hicolecmchar::@5 mode_hicolecmchar::@5: scope:[mode_hicolecmchar] from mode_hicolecmchar::@4 - [514] (byte) mode_hicolecmchar::cy#1 ? ++ (byte) mode_hicolecmchar::cy#4 + [514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4 [515] if((byte) mode_hicolecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolecmchar::@3 to:mode_hicolecmchar::@6 mode_hicolecmchar::@6: scope:[mode_hicolecmchar] from mode_hicolecmchar::@5 @@ -10278,48 +10278,48 @@ mode_hicolecmchar::@return: scope:[mode_hicolecmchar] from mode_hicolecmchar::@ [518] return to:@return mode_hicolstdchar: scope:[mode_hicolstdchar] from menu::@20 - [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 - [520] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 - [521] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 - [522] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 - [523] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [524] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 - [525] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [526] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [527] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 + [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 + [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 + [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 + [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [524] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 + [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [527] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:mode_hicolstdchar::@1 mode_hicolstdchar::@1: scope:[mode_hicolstdchar] from mode_hicolstdchar mode_hicolstdchar::@1 - [528] (byte) mode_hicolstdchar::i#2 ? phi( mode_hicolstdchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolstdchar::@1/(byte) mode_hicolstdchar::i#1 ) - [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ? (byte) mode_hicolstdchar::i#2 - [530] (byte) mode_hicolstdchar::i#1 ? ++ (byte) mode_hicolstdchar::i#2 + [528] (byte) mode_hicolstdchar::i#2 ← phi( mode_hicolstdchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolstdchar::@1/(byte) mode_hicolstdchar::i#1 ) + [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 + [530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2 [531] if((byte) mode_hicolstdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolstdchar::@1 to:mode_hicolstdchar::@2 mode_hicolstdchar::@2: scope:[mode_hicolstdchar] from mode_hicolstdchar::@1 - [532] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [533] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [532] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [533] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_hicolstdchar::@3 mode_hicolstdchar::@3: scope:[mode_hicolstdchar] from mode_hicolstdchar::@2 mode_hicolstdchar::@5 - [534] (byte*) mode_hicolstdchar::ch#3 ? phi( mode_hicolstdchar::@2/(const byte*) mode_hicolstdchar::SCREEN#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::ch#1 ) - [534] (byte*) mode_hicolstdchar::col#3 ? phi( mode_hicolstdchar::@2/(const byte*) mode_hicolstdchar::COLORS#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::col#1 ) - [534] (byte) mode_hicolstdchar::cy#4 ? phi( mode_hicolstdchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolstdchar::@5/(byte) mode_hicolstdchar::cy#1 ) + [534] (byte*) mode_hicolstdchar::ch#3 ← phi( mode_hicolstdchar::@2/(const byte*) mode_hicolstdchar::SCREEN#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::ch#1 ) + [534] (byte*) mode_hicolstdchar::col#3 ← phi( mode_hicolstdchar::@2/(const byte*) mode_hicolstdchar::COLORS#0 mode_hicolstdchar::@5/(byte*) mode_hicolstdchar::col#1 ) + [534] (byte) mode_hicolstdchar::cy#4 ← phi( mode_hicolstdchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolstdchar::@5/(byte) mode_hicolstdchar::cy#1 ) to:mode_hicolstdchar::@4 mode_hicolstdchar::@4: scope:[mode_hicolstdchar] from mode_hicolstdchar::@3 mode_hicolstdchar::@4 - [535] (byte*) mode_hicolstdchar::ch#2 ? phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::ch#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 ) - [535] (byte*) mode_hicolstdchar::col#2 ? phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::col#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 ) - [535] (byte) mode_hicolstdchar::cx#2 ? phi( mode_hicolstdchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cx#1 ) - [536] (byte~) mode_hicolstdchar::$25 ? (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [537] (byte~) mode_hicolstdchar::$26 ? (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [538] (byte~) mode_hicolstdchar::$27 ? (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [539] (byte) mode_hicolstdchar::v#0 ? (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 - [540] *((byte*) mode_hicolstdchar::col#2) ? (byte) mode_hicolstdchar::v#0 - [541] (byte*) mode_hicolstdchar::col#1 ? ++ (byte*) mode_hicolstdchar::col#2 - [542] *((byte*) mode_hicolstdchar::ch#2) ? (byte) mode_hicolstdchar::v#0 - [543] (byte*) mode_hicolstdchar::ch#1 ? ++ (byte*) mode_hicolstdchar::ch#2 - [544] (byte) mode_hicolstdchar::cx#1 ? ++ (byte) mode_hicolstdchar::cx#2 + [535] (byte*) mode_hicolstdchar::ch#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::ch#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::ch#1 ) + [535] (byte*) mode_hicolstdchar::col#2 ← phi( mode_hicolstdchar::@3/(byte*) mode_hicolstdchar::col#3 mode_hicolstdchar::@4/(byte*) mode_hicolstdchar::col#1 ) + [535] (byte) mode_hicolstdchar::cx#2 ← phi( mode_hicolstdchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_hicolstdchar::@4/(byte) mode_hicolstdchar::cx#1 ) + [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 + [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 + [541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 + [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 + [543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 + [544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2 [545] if((byte) mode_hicolstdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolstdchar::@4 to:mode_hicolstdchar::@5 mode_hicolstdchar::@5: scope:[mode_hicolstdchar] from mode_hicolstdchar::@4 - [546] (byte) mode_hicolstdchar::cy#1 ? ++ (byte) mode_hicolstdchar::cy#4 + [546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4 [547] if((byte) mode_hicolstdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolstdchar::@3 to:mode_hicolstdchar::@6 mode_hicolstdchar::@6: scope:[mode_hicolstdchar] from mode_hicolstdchar::@5 @@ -10330,43 +10330,43 @@ mode_hicolstdchar::@return: scope:[mode_hicolstdchar] from mode_hicolstdchar::@ [550] return to:@return mode_stdbitmap: scope:[mode_stdbitmap] from menu::@19 - [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 - [552] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [553] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [554] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 - [555] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [556] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [557] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 + [552] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [554] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 + [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [557] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:mode_stdbitmap::@1 mode_stdbitmap::@1: scope:[mode_stdbitmap] from mode_stdbitmap mode_stdbitmap::@1 - [558] (byte) mode_stdbitmap::i#2 ? phi( mode_stdbitmap/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@1/(byte) mode_stdbitmap::i#1 ) - [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) - [560] (byte) mode_stdbitmap::i#1 ? ++ (byte) mode_stdbitmap::i#2 + [558] (byte) mode_stdbitmap::i#2 ← phi( mode_stdbitmap/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@1/(byte) mode_stdbitmap::i#1 ) + [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) + [560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2 [561] if((byte) mode_stdbitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdbitmap::@1 to:mode_stdbitmap::@2 mode_stdbitmap::@2: scope:[mode_stdbitmap] from mode_stdbitmap::@1 - [562] *((const byte*) BGCOL#0) ? (const byte) BLACK#0 - [563] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 + [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 + [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 to:mode_stdbitmap::@3 mode_stdbitmap::@3: scope:[mode_stdbitmap] from mode_stdbitmap::@2 mode_stdbitmap::@5 - [564] (byte*) mode_stdbitmap::ch#3 ? phi( mode_stdbitmap::@2/(const byte*) mode_stdbitmap::SCREEN#0 mode_stdbitmap::@5/(byte*) mode_stdbitmap::ch#1 ) - [564] (byte) mode_stdbitmap::cy#4 ? phi( mode_stdbitmap::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@5/(byte) mode_stdbitmap::cy#1 ) + [564] (byte*) mode_stdbitmap::ch#3 ← phi( mode_stdbitmap::@2/(const byte*) mode_stdbitmap::SCREEN#0 mode_stdbitmap::@5/(byte*) mode_stdbitmap::ch#1 ) + [564] (byte) mode_stdbitmap::cy#4 ← phi( mode_stdbitmap::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@5/(byte) mode_stdbitmap::cy#1 ) to:mode_stdbitmap::@4 mode_stdbitmap::@4: scope:[mode_stdbitmap] from mode_stdbitmap::@3 mode_stdbitmap::@4 - [565] (byte*) mode_stdbitmap::ch#2 ? phi( mode_stdbitmap::@3/(byte*) mode_stdbitmap::ch#3 mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 ) - [565] (byte) mode_stdbitmap::cx#2 ? phi( mode_stdbitmap::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@4/(byte) mode_stdbitmap::cx#1 ) - [566] (byte~) mode_stdbitmap::$22 ? (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 - [567] (byte) mode_stdbitmap::col#0 ? (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f - [568] (byte) mode_stdbitmap::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 - [569] (byte~) mode_stdbitmap::$25 ? (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [570] (byte~) mode_stdbitmap::$26 ? (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 - [571] *((byte*) mode_stdbitmap::ch#2) ? (byte~) mode_stdbitmap::$26 - [572] (byte*) mode_stdbitmap::ch#1 ? ++ (byte*) mode_stdbitmap::ch#2 - [573] (byte) mode_stdbitmap::cx#1 ? ++ (byte) mode_stdbitmap::cx#2 + [565] (byte*) mode_stdbitmap::ch#2 ← phi( mode_stdbitmap::@3/(byte*) mode_stdbitmap::ch#3 mode_stdbitmap::@4/(byte*) mode_stdbitmap::ch#1 ) + [565] (byte) mode_stdbitmap::cx#2 ← phi( mode_stdbitmap::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@4/(byte) mode_stdbitmap::cx#1 ) + [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 + [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f + [568] (byte) mode_stdbitmap::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 + [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 + [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 + [572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 + [573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2 [574] if((byte) mode_stdbitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdbitmap::@4 to:mode_stdbitmap::@5 mode_stdbitmap::@5: scope:[mode_stdbitmap] from mode_stdbitmap::@4 - [575] (byte) mode_stdbitmap::cy#1 ? ++ (byte) mode_stdbitmap::cy#4 + [575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4 [576] if((byte) mode_stdbitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdbitmap::@3 to:mode_stdbitmap::@6 mode_stdbitmap::@6: scope:[mode_stdbitmap] from mode_stdbitmap::@5 @@ -10378,15 +10378,15 @@ mode_stdbitmap::@9: scope:[mode_stdbitmap] from mode_stdbitmap::@6 [580] call bitmap_clear to:mode_stdbitmap::@7 mode_stdbitmap::@7: scope:[mode_stdbitmap] from mode_stdbitmap::@10 mode_stdbitmap::@9 - [581] (byte) mode_stdbitmap::l#2 ? phi( mode_stdbitmap::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@10/(byte) mode_stdbitmap::l#1 ) - [582] (byte) bitmap_line::x0#0 ? *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) - [583] (byte) bitmap_line::x1#0 ? *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) - [584] (byte) bitmap_line::y0#0 ? *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) - [585] (byte) bitmap_line::y1#0 ? *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) + [581] (byte) mode_stdbitmap::l#2 ← phi( mode_stdbitmap::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdbitmap::@10/(byte) mode_stdbitmap::l#1 ) + [582] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) + [583] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) + [584] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) + [585] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) [586] call bitmap_line to:mode_stdbitmap::@10 mode_stdbitmap::@10: scope:[mode_stdbitmap] from mode_stdbitmap::@7 - [587] (byte) mode_stdbitmap::l#1 ? ++ (byte) mode_stdbitmap::l#2 + [587] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2 [588] if((byte) mode_stdbitmap::l#1<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@7 to:mode_stdbitmap::@8 mode_stdbitmap::@8: scope:[mode_stdbitmap] from mode_stdbitmap::@10 @@ -10400,262 +10400,262 @@ bitmap_line: scope:[bitmap_line] from mode_stdbitmap::@7 [592] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 to:bitmap_line::@2 bitmap_line::@2: scope:[bitmap_line] from bitmap_line - [593] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 + [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [594] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 to:bitmap_line::@3 bitmap_line::@3: scope:[bitmap_line] from bitmap_line::@2 - [595] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 + [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [596] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8 to:bitmap_line::@4 bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3 - [597] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 - [598] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 - [599] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 - [600] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 - [601] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + [597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 + [598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 + [599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 + [600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 + [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 [602] call bitmap_line_ydxi to:bitmap_line::@return bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@10 bitmap_line::@12 bitmap_line::@13 bitmap_line::@14 bitmap_line::@4 bitmap_line::@6 bitmap_line::@8 bitmap_line::@9 [603] return to:@return bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@3 - [604] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 - [605] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 - [606] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - [607] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - [608] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 + [604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 + [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 + [606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + [607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 [609] call bitmap_line_xdyi to:bitmap_line::@return bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@2 - [610] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 + [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [611] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9 to:bitmap_line::@10 bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@7 - [612] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 - [613] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 - [614] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 - [615] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 - [616] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + [612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 + [613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 + [614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 + [615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 + [616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 [617] call bitmap_line_ydxd to:bitmap_line::@return bitmap_line::@9: scope:[bitmap_line] from bitmap_line::@7 - [618] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 - [619] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 - [620] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 - [621] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - [622] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 + [618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 + [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 + [620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 + [621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + [622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 [623] call bitmap_line_xdyd to:bitmap_line::@return bitmap_line::@1: scope:[bitmap_line] from bitmap_line - [624] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 + [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [625] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11 to:bitmap_line::@5 bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@1 - [626] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 + [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [627] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12 to:bitmap_line::@6 bitmap_line::@6: scope:[bitmap_line] from bitmap_line::@5 - [628] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 - [629] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 - [630] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - [631] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - [632] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + [628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 + [629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 + [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + [631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + [632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 [633] call bitmap_line_ydxd to:bitmap_line::@return bitmap_line::@12: scope:[bitmap_line] from bitmap_line::@5 - [634] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 - [635] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - [636] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 - [637] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - [638] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 + [634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 + [635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + [636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 + [637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + [638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 [639] call bitmap_line_xdyd to:bitmap_line::@return bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@1 - [640] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 + [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [641] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13 to:bitmap_line::@14 bitmap_line::@14: scope:[bitmap_line] from bitmap_line::@11 - [642] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 - [643] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 - [644] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 - [645] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 - [646] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + [642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 + [643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 + [644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 + [645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 + [646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 [647] call bitmap_line_ydxi to:bitmap_line::@return bitmap_line::@13: scope:[bitmap_line] from bitmap_line::@11 - [648] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 - [649] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - [650] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 - [651] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - [652] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + [648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 + [649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + [650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 + [651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + [652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 [653] call bitmap_line_xdyi to:bitmap_line::@return bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@8 - [654] (byte) bitmap_line_xdyi::x1#6 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 ) - [654] (byte) bitmap_line_xdyi::xd#5 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 ) - [654] (byte) bitmap_line_xdyi::y#5 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 ) - [654] (byte) bitmap_line_xdyi::x#6 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 ) - [654] (byte) bitmap_line_xdyi::yd#2 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 ) - [655] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [654] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 ) + [654] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 ) + [654] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 ) + [654] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 ) + [654] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 ) + [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_xdyi::@1 bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2 - [656] (byte) bitmap_line_xdyi::e#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) - [656] (byte) bitmap_line_xdyi::y#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) - [656] (byte) bitmap_line_xdyi::x#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) - [657] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - [658] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 + [656] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) + [656] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) + [656] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) + [657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 [659] call bitmap_plot to:bitmap_line_xdyi::@4 bitmap_line_xdyi::@4: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1 - [660] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 - [661] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 + [660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 + [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [662] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 to:bitmap_line_xdyi::@3 bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@4 - [663] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 - [664] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 + [663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 + [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 to:bitmap_line_xdyi::@2 bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@4 - [665] (byte) bitmap_line_xdyi::e#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 ) - [665] (byte) bitmap_line_xdyi::y#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::y#3 ) - [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [665] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 ) + [665] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::y#3 ) + [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [667] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 to:bitmap_line_xdyi::@return bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2 [668] return to:@return bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1 - [669] (byte) bitmap_plot::y#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) - [669] (byte) bitmap_plot::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) - [670] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) - [671] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) - [672] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 - [673] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) - [674] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 + [669] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) + [669] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) + [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) + [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) + [672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 + [673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) + [674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot [675] return to:@return bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@14 bitmap_line::@4 - [676] (byte) bitmap_line_ydxi::y1#6 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y1#0 ) - [676] (byte) bitmap_line_ydxi::yd#5 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::yd#0 ) - [676] (byte) bitmap_line_ydxi::y#6 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y#0 ) - [676] (byte) bitmap_line_ydxi::x#5 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::x#1 bitmap_line::@4/(byte) bitmap_line_ydxi::x#0 ) - [676] (byte) bitmap_line_ydxi::xd#2 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::xd#0 ) - [677] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [676] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y1#0 ) + [676] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::yd#0 ) + [676] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y#0 ) + [676] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::x#1 bitmap_line::@4/(byte) bitmap_line_ydxi::x#0 ) + [676] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::xd#0 ) + [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_ydxi::@1 bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2 - [678] (byte) bitmap_line_ydxi::e#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) - [678] (byte) bitmap_line_ydxi::y#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) - [678] (byte) bitmap_line_ydxi::x#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) - [679] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - [680] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 + [678] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) + [678] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) + [678] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) + [679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 [681] call bitmap_plot to:bitmap_line_ydxi::@4 bitmap_line_ydxi::@4: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1 - [682] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 - [683] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 + [682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 + [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [684] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 to:bitmap_line_ydxi::@3 bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@4 - [685] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 - [686] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 + [685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 + [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 to:bitmap_line_ydxi::@2 bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@4 - [687] (byte) bitmap_line_ydxi::e#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 ) - [687] (byte) bitmap_line_ydxi::x#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::x#3 ) - [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [687] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 ) + [687] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::x#3 ) + [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [689] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 to:bitmap_line_ydxi::@return bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2 [690] return to:@return bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@12 bitmap_line::@9 - [691] (byte) bitmap_line_xdyd::x1#6 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 ) - [691] (byte) bitmap_line_xdyd::xd#5 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 ) - [691] (byte) bitmap_line_xdyd::y#5 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 ) - [691] (byte) bitmap_line_xdyd::x#6 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 ) - [691] (byte) bitmap_line_xdyd::yd#2 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 ) - [692] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [691] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 ) + [691] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 ) + [691] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 ) + [691] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 ) + [691] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 ) + [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_xdyd::@1 bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2 - [693] (byte) bitmap_line_xdyd::e#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) - [693] (byte) bitmap_line_xdyd::y#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) - [693] (byte) bitmap_line_xdyd::x#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) - [694] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - [695] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 + [693] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) + [693] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) + [693] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) + [694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 [696] call bitmap_plot to:bitmap_line_xdyd::@4 bitmap_line_xdyd::@4: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1 - [697] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 - [698] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 + [697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 + [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [699] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 to:bitmap_line_xdyd::@3 bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@4 - [700] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 - [701] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 + [700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 + [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 to:bitmap_line_xdyd::@2 bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@4 - [702] (byte) bitmap_line_xdyd::e#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 ) - [702] (byte) bitmap_line_xdyd::y#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::y#3 ) - [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [702] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 ) + [702] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::y#3 ) + [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [704] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 to:bitmap_line_xdyd::@return bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2 [705] return to:@return bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@10 bitmap_line::@6 - [706] (byte) bitmap_line_ydxd::y1#6 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#1 ) - [706] (byte) bitmap_line_ydxd::yd#5 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#1 ) - [706] (byte) bitmap_line_ydxd::y#7 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y#1 ) - [706] (byte) bitmap_line_ydxd::x#5 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#0 bitmap_line::@6/(byte) bitmap_line_ydxd::x#1 ) - [706] (byte) bitmap_line_ydxd::xd#2 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#1 ) - [707] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [706] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#1 ) + [706] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#1 ) + [706] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y#1 ) + [706] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#0 bitmap_line::@6/(byte) bitmap_line_ydxd::x#1 ) + [706] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#1 ) + [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_ydxd::@1 bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2 - [708] (byte) bitmap_line_ydxd::e#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) - [708] (byte) bitmap_line_ydxd::y#2 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) - [708] (byte) bitmap_line_ydxd::x#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) - [709] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - [710] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 + [708] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) + [708] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) + [708] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) + [709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 [711] call bitmap_plot to:bitmap_line_ydxd::@4 bitmap_line_ydxd::@4: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1 - [712] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 - [713] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 + [712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 + [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [714] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 to:bitmap_line_ydxd::@3 bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@4 - [715] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 - [716] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 + [715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 + [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 to:bitmap_line_ydxd::@2 bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@4 - [717] (byte) bitmap_line_ydxd::e#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 ) - [717] (byte) bitmap_line_ydxd::x#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::x#3 ) - [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [717] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 ) + [717] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::x#3 ) + [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [719] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 to:bitmap_line_ydxd::@return bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2 [720] return to:@return bitmap_clear: scope:[bitmap_clear] from mode_stdbitmap::@9 - [721] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) - [722] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + [721] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) + [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - [723] (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - [723] (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) + [723] (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + [723] (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - [724] (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - [724] (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - [725] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [726] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - [727] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 + [724] (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + [724] (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + [725] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + [727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 [728] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - [729] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 + [729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 [730] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 @@ -10665,38 +10665,38 @@ bitmap_init: scope:[bitmap_init] from mode_stdbitmap::@6 [732] phi() to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - [733] (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - [733] (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - [734] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 - [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 - [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) mode_stdbitmap::BITMAP#0 - [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - [738] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [733] (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + [733] (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 + [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 + [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 + [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + [738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [739] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 to:bitmap_init::@2 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@6 - [740] (byte) bitmap_init::bits#4 ? phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) - [741] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 + [740] (byte) bitmap_init::bits#4 ← phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) + [741] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 [742] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 to:bitmap_init::@3 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@2 bitmap_init::@4 - [743] (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@2/((byte*))(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) - [743] (byte) bitmap_init::y#2 ? phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) - [744] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [745] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 - [746] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 - [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 - [748] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 - [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 - [750] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [743] (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@2/((byte*))(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) + [743] (byte) bitmap_init::y#2 ← phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) + [744] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [745] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 + [746] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 + [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 + [748] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 + [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 + [750] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [751] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@3 - [752] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 + [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 to:bitmap_init::@4 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@3 bitmap_init::@5 - [753] (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) - [754] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 + [753] (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) + [754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 [755] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 to:bitmap_init::@return bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@4 @@ -10706,52 +10706,52 @@ bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@1 [757] phi() to:bitmap_init::@2 mode_mcchar: scope:[mode_mcchar] from menu::@18 - [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 - [759] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [760] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [761] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [762] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [763] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 - [764] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [765] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 - [766] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 + [759] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [760] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [761] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [762] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [763] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 + [764] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [765] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 + [766] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:mode_mcchar::@1 mode_mcchar::@1: scope:[mode_mcchar] from mode_mcchar mode_mcchar::@1 - [767] (byte) mode_mcchar::i#2 ? phi( mode_mcchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_mcchar::@1/(byte) mode_mcchar::i#1 ) - [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) - [769] (byte) mode_mcchar::i#1 ? ++ (byte) mode_mcchar::i#2 + [767] (byte) mode_mcchar::i#2 ← phi( mode_mcchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_mcchar::@1/(byte) mode_mcchar::i#1 ) + [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) + [769] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2 [770] if((byte) mode_mcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_mcchar::@1 to:mode_mcchar::@2 mode_mcchar::@2: scope:[mode_mcchar] from mode_mcchar::@1 - [771] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [772] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 - [773] *((const byte*) BGCOL2#0) ? (const byte) GREEN#0 - [774] *((const byte*) BGCOL3#0) ? (const byte) BLUE#0 + [771] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [772] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 + [773] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 + [774] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 to:mode_mcchar::@3 mode_mcchar::@3: scope:[mode_mcchar] from mode_mcchar::@2 mode_mcchar::@5 - [775] (byte*) mode_mcchar::ch#3 ? phi( mode_mcchar::@2/(const byte*) mode_mcchar::SCREEN#0 mode_mcchar::@5/(byte*) mode_mcchar::ch#1 ) - [775] (byte*) mode_mcchar::col#3 ? phi( mode_mcchar::@2/(const byte*) mode_mcchar::COLORS#0 mode_mcchar::@5/(byte*) mode_mcchar::col#1 ) - [775] (byte) mode_mcchar::cy#4 ? phi( mode_mcchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_mcchar::@5/(byte) mode_mcchar::cy#1 ) + [775] (byte*) mode_mcchar::ch#3 ← phi( mode_mcchar::@2/(const byte*) mode_mcchar::SCREEN#0 mode_mcchar::@5/(byte*) mode_mcchar::ch#1 ) + [775] (byte*) mode_mcchar::col#3 ← phi( mode_mcchar::@2/(const byte*) mode_mcchar::COLORS#0 mode_mcchar::@5/(byte*) mode_mcchar::col#1 ) + [775] (byte) mode_mcchar::cy#4 ← phi( mode_mcchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_mcchar::@5/(byte) mode_mcchar::cy#1 ) to:mode_mcchar::@4 mode_mcchar::@4: scope:[mode_mcchar] from mode_mcchar::@3 mode_mcchar::@4 - [776] (byte*) mode_mcchar::ch#2 ? phi( mode_mcchar::@3/(byte*) mode_mcchar::ch#3 mode_mcchar::@4/(byte*) mode_mcchar::ch#1 ) - [776] (byte*) mode_mcchar::col#2 ? phi( mode_mcchar::@3/(byte*) mode_mcchar::col#3 mode_mcchar::@4/(byte*) mode_mcchar::col#1 ) - [776] (byte) mode_mcchar::cx#2 ? phi( mode_mcchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_mcchar::@4/(byte) mode_mcchar::cx#1 ) - [777] (byte~) mode_mcchar::$26 ? (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 - [778] (byte~) mode_mcchar::$27 ? (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f - [779] *((byte*) mode_mcchar::col#2) ? (byte~) mode_mcchar::$27 - [780] (byte*) mode_mcchar::col#1 ? ++ (byte*) mode_mcchar::col#2 - [781] (byte~) mode_mcchar::$28 ? (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [782] (byte~) mode_mcchar::$29 ? (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [783] (byte~) mode_mcchar::$30 ? (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [784] (byte~) mode_mcchar::$31 ? (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 - [785] *((byte*) mode_mcchar::ch#2) ? (byte~) mode_mcchar::$31 - [786] (byte*) mode_mcchar::ch#1 ? ++ (byte*) mode_mcchar::ch#2 - [787] (byte) mode_mcchar::cx#1 ? ++ (byte) mode_mcchar::cx#2 + [776] (byte*) mode_mcchar::ch#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::ch#3 mode_mcchar::@4/(byte*) mode_mcchar::ch#1 ) + [776] (byte*) mode_mcchar::col#2 ← phi( mode_mcchar::@3/(byte*) mode_mcchar::col#3 mode_mcchar::@4/(byte*) mode_mcchar::col#1 ) + [776] (byte) mode_mcchar::cx#2 ← phi( mode_mcchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_mcchar::@4/(byte) mode_mcchar::cx#1 ) + [777] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 + [778] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f + [779] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 + [780] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 + [781] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [782] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [783] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [784] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 + [785] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 + [786] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 + [787] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2 [788] if((byte) mode_mcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_mcchar::@4 to:mode_mcchar::@5 mode_mcchar::@5: scope:[mode_mcchar] from mode_mcchar::@4 - [789] (byte) mode_mcchar::cy#1 ? ++ (byte) mode_mcchar::cy#4 + [789] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4 [790] if((byte) mode_mcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_mcchar::@3 to:mode_mcchar::@6 mode_mcchar::@6: scope:[mode_mcchar] from mode_mcchar::@5 @@ -10762,53 +10762,53 @@ mode_mcchar::@return: scope:[mode_mcchar] from mode_mcchar::@6 [793] return to:@return mode_ecmchar: scope:[mode_ecmchar] from menu::@17 - [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 - [795] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [796] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [797] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [798] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [799] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 - [800] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [801] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [802] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 + [795] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [796] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [797] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [798] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [799] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 + [800] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [801] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [802] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:mode_ecmchar::@1 mode_ecmchar::@1: scope:[mode_ecmchar] from mode_ecmchar mode_ecmchar::@1 - [803] (byte) mode_ecmchar::i#2 ? phi( mode_ecmchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ecmchar::@1/(byte) mode_ecmchar::i#1 ) - [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) - [805] (byte) mode_ecmchar::i#1 ? ++ (byte) mode_ecmchar::i#2 + [803] (byte) mode_ecmchar::i#2 ← phi( mode_ecmchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ecmchar::@1/(byte) mode_ecmchar::i#1 ) + [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) + [805] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2 [806] if((byte) mode_ecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_ecmchar::@1 to:mode_ecmchar::@2 mode_ecmchar::@2: scope:[mode_ecmchar] from mode_ecmchar::@1 - [807] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [808] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [809] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - [810] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 - [811] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) 6 + [807] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [808] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [809] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + [810] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 + [811] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) 6 to:mode_ecmchar::@3 mode_ecmchar::@3: scope:[mode_ecmchar] from mode_ecmchar::@2 mode_ecmchar::@5 - [812] (byte*) mode_ecmchar::ch#3 ? phi( mode_ecmchar::@2/(const byte*) mode_ecmchar::SCREEN#0 mode_ecmchar::@5/(byte*) mode_ecmchar::ch#1 ) - [812] (byte*) mode_ecmchar::col#3 ? phi( mode_ecmchar::@2/(const byte*) mode_ecmchar::COLORS#0 mode_ecmchar::@5/(byte*) mode_ecmchar::col#1 ) - [812] (byte) mode_ecmchar::cy#4 ? phi( mode_ecmchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ecmchar::@5/(byte) mode_ecmchar::cy#1 ) + [812] (byte*) mode_ecmchar::ch#3 ← phi( mode_ecmchar::@2/(const byte*) mode_ecmchar::SCREEN#0 mode_ecmchar::@5/(byte*) mode_ecmchar::ch#1 ) + [812] (byte*) mode_ecmchar::col#3 ← phi( mode_ecmchar::@2/(const byte*) mode_ecmchar::COLORS#0 mode_ecmchar::@5/(byte*) mode_ecmchar::col#1 ) + [812] (byte) mode_ecmchar::cy#4 ← phi( mode_ecmchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ecmchar::@5/(byte) mode_ecmchar::cy#1 ) to:mode_ecmchar::@4 mode_ecmchar::@4: scope:[mode_ecmchar] from mode_ecmchar::@3 mode_ecmchar::@4 - [813] (byte*) mode_ecmchar::ch#2 ? phi( mode_ecmchar::@3/(byte*) mode_ecmchar::ch#3 mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 ) - [813] (byte*) mode_ecmchar::col#2 ? phi( mode_ecmchar::@3/(byte*) mode_ecmchar::col#3 mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 ) - [813] (byte) mode_ecmchar::cx#2 ? phi( mode_ecmchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ecmchar::@4/(byte) mode_ecmchar::cx#1 ) - [814] (byte~) mode_ecmchar::$26 ? (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 - [815] (byte~) mode_ecmchar::$27 ? (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f - [816] *((byte*) mode_ecmchar::col#2) ? (byte~) mode_ecmchar::$27 - [817] (byte*) mode_ecmchar::col#1 ? ++ (byte*) mode_ecmchar::col#2 - [818] (byte~) mode_ecmchar::$28 ? (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [819] (byte~) mode_ecmchar::$29 ? (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [820] (byte~) mode_ecmchar::$30 ? (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [821] (byte~) mode_ecmchar::$31 ? (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 - [822] *((byte*) mode_ecmchar::ch#2) ? (byte~) mode_ecmchar::$31 - [823] (byte*) mode_ecmchar::ch#1 ? ++ (byte*) mode_ecmchar::ch#2 - [824] (byte) mode_ecmchar::cx#1 ? ++ (byte) mode_ecmchar::cx#2 + [813] (byte*) mode_ecmchar::ch#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::ch#3 mode_ecmchar::@4/(byte*) mode_ecmchar::ch#1 ) + [813] (byte*) mode_ecmchar::col#2 ← phi( mode_ecmchar::@3/(byte*) mode_ecmchar::col#3 mode_ecmchar::@4/(byte*) mode_ecmchar::col#1 ) + [813] (byte) mode_ecmchar::cx#2 ← phi( mode_ecmchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_ecmchar::@4/(byte) mode_ecmchar::cx#1 ) + [814] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 + [815] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f + [816] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 + [817] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 + [818] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [819] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [820] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [821] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 + [822] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 + [823] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 + [824] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2 [825] if((byte) mode_ecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_ecmchar::@4 to:mode_ecmchar::@5 mode_ecmchar::@5: scope:[mode_ecmchar] from mode_ecmchar::@4 - [826] (byte) mode_ecmchar::cy#1 ? ++ (byte) mode_ecmchar::cy#4 + [826] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4 [827] if((byte) mode_ecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_ecmchar::@3 to:mode_ecmchar::@6 mode_ecmchar::@6: scope:[mode_ecmchar] from mode_ecmchar::@5 @@ -10819,50 +10819,50 @@ mode_ecmchar::@return: scope:[mode_ecmchar] from mode_ecmchar::@6 [830] return to:@return mode_stdchar: scope:[mode_stdchar] from menu::@16 - [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 - [832] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [833] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 - [834] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [835] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - [836] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 - [837] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [838] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 - [839] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 + [832] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [833] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 + [834] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [835] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + [836] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 + [837] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [838] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 + [839] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 to:mode_stdchar::@1 mode_stdchar::@1: scope:[mode_stdchar] from mode_stdchar mode_stdchar::@1 - [840] (byte) mode_stdchar::i#2 ? phi( mode_stdchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@1/(byte) mode_stdchar::i#1 ) - [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) - [842] (byte) mode_stdchar::i#1 ? ++ (byte) mode_stdchar::i#2 + [840] (byte) mode_stdchar::i#2 ← phi( mode_stdchar/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@1/(byte) mode_stdchar::i#1 ) + [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) + [842] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2 [843] if((byte) mode_stdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdchar::@1 to:mode_stdchar::@2 mode_stdchar::@2: scope:[mode_stdchar] from mode_stdchar::@1 - [844] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [845] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [844] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [845] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mode_stdchar::@3 mode_stdchar::@3: scope:[mode_stdchar] from mode_stdchar::@2 mode_stdchar::@5 - [846] (byte*) mode_stdchar::ch#3 ? phi( mode_stdchar::@2/(const byte*) mode_stdchar::SCREEN#0 mode_stdchar::@5/(byte*) mode_stdchar::ch#1 ) - [846] (byte*) mode_stdchar::col#3 ? phi( mode_stdchar::@2/(const byte*) mode_stdchar::COLORS#0 mode_stdchar::@5/(byte*) mode_stdchar::col#1 ) - [846] (byte) mode_stdchar::cy#4 ? phi( mode_stdchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@5/(byte) mode_stdchar::cy#1 ) + [846] (byte*) mode_stdchar::ch#3 ← phi( mode_stdchar::@2/(const byte*) mode_stdchar::SCREEN#0 mode_stdchar::@5/(byte*) mode_stdchar::ch#1 ) + [846] (byte*) mode_stdchar::col#3 ← phi( mode_stdchar::@2/(const byte*) mode_stdchar::COLORS#0 mode_stdchar::@5/(byte*) mode_stdchar::col#1 ) + [846] (byte) mode_stdchar::cy#4 ← phi( mode_stdchar::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@5/(byte) mode_stdchar::cy#1 ) to:mode_stdchar::@4 mode_stdchar::@4: scope:[mode_stdchar] from mode_stdchar::@3 mode_stdchar::@4 - [847] (byte*) mode_stdchar::ch#2 ? phi( mode_stdchar::@3/(byte*) mode_stdchar::ch#3 mode_stdchar::@4/(byte*) mode_stdchar::ch#1 ) - [847] (byte*) mode_stdchar::col#2 ? phi( mode_stdchar::@3/(byte*) mode_stdchar::col#3 mode_stdchar::@4/(byte*) mode_stdchar::col#1 ) - [847] (byte) mode_stdchar::cx#2 ? phi( mode_stdchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@4/(byte) mode_stdchar::cx#1 ) - [848] (byte~) mode_stdchar::$25 ? (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 - [849] (byte~) mode_stdchar::$26 ? (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f - [850] *((byte*) mode_stdchar::col#2) ? (byte~) mode_stdchar::$26 - [851] (byte*) mode_stdchar::col#1 ? ++ (byte*) mode_stdchar::col#2 - [852] (byte~) mode_stdchar::$27 ? (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [853] (byte~) mode_stdchar::$28 ? (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [854] (byte~) mode_stdchar::$29 ? (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [855] (byte~) mode_stdchar::$30 ? (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 - [856] *((byte*) mode_stdchar::ch#2) ? (byte~) mode_stdchar::$30 - [857] (byte*) mode_stdchar::ch#1 ? ++ (byte*) mode_stdchar::ch#2 - [858] (byte) mode_stdchar::cx#1 ? ++ (byte) mode_stdchar::cx#2 + [847] (byte*) mode_stdchar::ch#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::ch#3 mode_stdchar::@4/(byte*) mode_stdchar::ch#1 ) + [847] (byte*) mode_stdchar::col#2 ← phi( mode_stdchar::@3/(byte*) mode_stdchar::col#3 mode_stdchar::@4/(byte*) mode_stdchar::col#1 ) + [847] (byte) mode_stdchar::cx#2 ← phi( mode_stdchar::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 mode_stdchar::@4/(byte) mode_stdchar::cx#1 ) + [848] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 + [849] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f + [850] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 + [851] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 + [852] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [853] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [854] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [855] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 + [856] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 + [857] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 + [858] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2 [859] if((byte) mode_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdchar::@4 to:mode_stdchar::@5 mode_stdchar::@5: scope:[mode_stdchar] from mode_stdchar::@4 - [860] (byte) mode_stdchar::cy#1 ? ++ (byte) mode_stdchar::cy#4 + [860] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4 [861] if((byte) mode_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdchar::@3 to:mode_stdchar::@6 mode_stdchar::@6: scope:[mode_stdchar] from mode_stdchar::@5 @@ -10876,40 +10876,40 @@ print_str_lines: scope:[print_str_lines] from menu::@29 [865] phi() to:print_str_lines::@1 print_str_lines::@1: scope:[print_str_lines] from print_str_lines print_str_lines::@5 - [866] (byte*) print_line_cursor#17 ? phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@5/(byte*) print_line_cursor#19 ) - [866] (byte*) print_char_cursor#19 ? phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@5/(byte*~) print_char_cursor#103 ) - [866] (byte*) print_str_lines::str#2 ? phi( print_str_lines/(const byte[]) MENU_TEXT#0 print_str_lines::@5/(byte*) print_str_lines::str#0 ) + [866] (byte*) print_line_cursor#17 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@5/(byte*) print_line_cursor#19 ) + [866] (byte*) print_char_cursor#19 ← phi( print_str_lines/(const byte*) menu::SCREEN#0 print_str_lines::@5/(byte*~) print_char_cursor#103 ) + [866] (byte*) print_str_lines::str#2 ← phi( print_str_lines/(const byte[]) MENU_TEXT#0 print_str_lines::@5/(byte*) print_str_lines::str#0 ) [867] if(*((byte*) print_str_lines::str#2)!=(byte) '@') goto print_str_lines::@2 to:print_str_lines::@return print_str_lines::@return: scope:[print_str_lines] from print_str_lines::@1 [868] return to:@return print_str_lines::@2: scope:[print_str_lines] from print_str_lines::@1 print_str_lines::@3 - [869] (byte*) print_char_cursor#17 ? phi( print_str_lines::@1/(byte*) print_char_cursor#19 print_str_lines::@3/(byte*) print_char_cursor#32 ) - [869] (byte*) print_str_lines::str#3 ? phi( print_str_lines::@1/(byte*) print_str_lines::str#2 print_str_lines::@3/(byte*) print_str_lines::str#0 ) - [870] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#3) - [871] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#3 + [869] (byte*) print_char_cursor#17 ← phi( print_str_lines::@1/(byte*) print_char_cursor#19 print_str_lines::@3/(byte*) print_char_cursor#32 ) + [869] (byte*) print_str_lines::str#3 ← phi( print_str_lines::@1/(byte*) print_str_lines::str#2 print_str_lines::@3/(byte*) print_str_lines::str#0 ) + [870] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) + [871] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 [872] if((byte) print_str_lines::ch#0==(byte) '@') goto print_str_lines::@3 to:print_str_lines::@4 print_str_lines::@4: scope:[print_str_lines] from print_str_lines::@2 - [873] *((byte*) print_char_cursor#17) ? (byte) print_str_lines::ch#0 - [874] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#17 + [873] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 + [874] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 to:print_str_lines::@3 print_str_lines::@3: scope:[print_str_lines] from print_str_lines::@2 print_str_lines::@4 - [875] (byte*) print_char_cursor#32 ? phi( print_str_lines::@2/(byte*) print_char_cursor#17 print_str_lines::@4/(byte*) print_char_cursor#1 ) + [875] (byte*) print_char_cursor#32 ← phi( print_str_lines::@2/(byte*) print_char_cursor#17 print_str_lines::@4/(byte*) print_char_cursor#1 ) [876] if((byte) print_str_lines::ch#0!=(byte) '@') goto print_str_lines::@2 to:print_str_lines::@5 print_str_lines::@5: scope:[print_str_lines] from print_str_lines::@3 [877] phi() [878] call print_ln - [879] (byte*~) print_char_cursor#103 ? (byte*) print_line_cursor#19 + [879] (byte*~) print_char_cursor#103 ← (byte*) print_line_cursor#19 to:print_str_lines::@1 print_ln: scope:[print_ln] from print_str_lines::@5 [880] phi() to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [881] (byte*) print_line_cursor#18 ? phi( print_ln/(byte*) print_line_cursor#17 print_ln::@1/(byte*) print_line_cursor#19 ) - [882] (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [881] (byte*) print_line_cursor#18 ← phi( print_ln/(byte*) print_line_cursor#17 print_ln::@1/(byte*) print_line_cursor#19 ) + [882] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 [883] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 @@ -10919,9 +10919,9 @@ print_cls: scope:[print_cls] from menu::@28 [885] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [886] (byte*) print_cls::sc#2 ? phi( print_cls/(const byte*) menu::SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [887] *((byte*) print_cls::sc#2) ? (byte) ' ' - [888] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [886] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) menu::SCREEN#0 print_cls::@1/(byte*) print_cls::sc#1 ) + [887] *((byte*) print_cls::sc#2) ← (byte) ' ' + [888] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [889] if((byte*) print_cls::sc#1!=(const byte*) menu::SCREEN#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -12834,15 +12834,15 @@ bend: main: { //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal) // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 // Enable DTV extended modes lda #DTV_FEATURE_ENABLE sta DTV_FEATURE @@ -12874,39 +12874,39 @@ menu: { .label _73 = $b8 .label i = 2 .label c = 3 - //SEG18 [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG18 [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // Charset ROM // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG19 [11] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG19 [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG20 [12] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG20 [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG21 [13] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG21 [13] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // DTV Graphics Mode lda #0 sta DTV_CONTROL - //SEG22 [14] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG22 [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG23 [15] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG23 [15] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG24 [16] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG24 [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG25 [17] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG25 [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG26 [18] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG26 [18] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -12923,11 +12923,11 @@ menu: { jmp b1 //SEG31 menu::@1 b1: - //SEG32 [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG32 [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda DTV_PALETTE_DEFAULT,y sta DTV_PALETTE,y - //SEG33 [21] (byte) menu::i#1 ? ++ (byte) menu::i#2 -- vbuz1=_inc_vbuz1 + //SEG33 [21] (byte) menu::i#1 ← ++ (byte) menu::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG34 [22] if((byte) menu::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto menu::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -12948,11 +12948,11 @@ menu: { jmp b2 //SEG39 menu::@2 b2: - //SEG40 [24] *((byte*) menu::c#2) ? (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1 + //SEG40 [24] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1 lda #LIGHT_GREEN ldy #0 sta (c),y - //SEG41 [25] (byte*) menu::c#1 ? ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1 + //SEG41 [25] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1 inc c bne !+ inc c+1 @@ -12967,11 +12967,11 @@ menu: { jmp b3 //SEG43 menu::@3 b3: - //SEG44 [27] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG44 [27] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG45 [28] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG45 [28] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL //SEG46 [29] call print_set_screen @@ -13009,13 +13009,13 @@ menu: { lda #KEY_1 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG61 [36] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG61 [36] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_2 jmp b30 //SEG62 menu::@30 b30: - //SEG63 [37] (byte~) menu::$29 ? (byte) keyboard_key_pressed::return#2 -- vbuz1=vbuz2 + //SEG63 [37] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_2 sta _29 //SEG64 [38] if((byte~) menu::$29==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@5 -- vbuz1_eq_0_then_la1 @@ -13046,13 +13046,13 @@ menu: { lda #KEY_2 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG75 [44] (byte) keyboard_key_pressed::return#24 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG75 [44] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_24 jmp b31 //SEG76 menu::@31 b31: - //SEG77 [45] (byte~) menu::$33 ? (byte) keyboard_key_pressed::return#24 -- vbuz1=vbuz2 + //SEG77 [45] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_24 sta _33 //SEG78 [46] if((byte~) menu::$33==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@6 -- vbuz1_eq_0_then_la1 @@ -13079,13 +13079,13 @@ menu: { lda #KEY_3 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG87 [51] (byte) keyboard_key_pressed::return#25 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG87 [51] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_25 jmp b32 //SEG88 menu::@32 b32: - //SEG89 [52] (byte~) menu::$37 ? (byte) keyboard_key_pressed::return#25 -- vbuz1=vbuz2 + //SEG89 [52] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_25 sta _37 //SEG90 [53] if((byte~) menu::$37==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@7 -- vbuz1_eq_0_then_la1 @@ -13112,13 +13112,13 @@ menu: { lda #KEY_4 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG99 [58] (byte) keyboard_key_pressed::return#26 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG99 [58] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_26 jmp b33 //SEG100 menu::@33 b33: - //SEG101 [59] (byte~) menu::$41 ? (byte) keyboard_key_pressed::return#26 -- vbuz1=vbuz2 + //SEG101 [59] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_26 sta _41 //SEG102 [60] if((byte~) menu::$41==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@8 -- vbuz1_eq_0_then_la1 @@ -13145,13 +13145,13 @@ menu: { lda #KEY_6 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG111 [65] (byte) keyboard_key_pressed::return#27 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG111 [65] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_27 jmp b34 //SEG112 menu::@34 b34: - //SEG113 [66] (byte~) menu::$45 ? (byte) keyboard_key_pressed::return#27 -- vbuz1=vbuz2 + //SEG113 [66] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_27 sta _45 //SEG114 [67] if((byte~) menu::$45==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@9 -- vbuz1_eq_0_then_la1 @@ -13178,13 +13178,13 @@ menu: { lda #KEY_7 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG123 [72] (byte) keyboard_key_pressed::return#28 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG123 [72] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_28 jmp b35 //SEG124 menu::@35 b35: - //SEG125 [73] (byte~) menu::$49 ? (byte) keyboard_key_pressed::return#28 -- vbuz1=vbuz2 + //SEG125 [73] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_28 sta _49 //SEG126 [74] if((byte~) menu::$49==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@10 -- vbuz1_eq_0_then_la1 @@ -13211,13 +13211,13 @@ menu: { lda #KEY_8 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG135 [79] (byte) keyboard_key_pressed::return#29 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG135 [79] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_29 jmp b36 //SEG136 menu::@36 b36: - //SEG137 [80] (byte~) menu::$53 ? (byte) keyboard_key_pressed::return#29 -- vbuz1=vbuz2 + //SEG137 [80] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_29 sta _53 //SEG138 [81] if((byte~) menu::$53==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@11 -- vbuz1_eq_0_then_la1 @@ -13244,13 +13244,13 @@ menu: { lda #KEY_A sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG147 [86] (byte) keyboard_key_pressed::return#30 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG147 [86] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_30 jmp b37 //SEG148 menu::@37 b37: - //SEG149 [87] (byte~) menu::$57 ? (byte) keyboard_key_pressed::return#30 -- vbuz1=vbuz2 + //SEG149 [87] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_30 sta _57 //SEG150 [88] if((byte~) menu::$57==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@12 -- vbuz1_eq_0_then_la1 @@ -13277,13 +13277,13 @@ menu: { lda #KEY_B sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG159 [93] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG159 [93] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_10 jmp b38 //SEG160 menu::@38 b38: - //SEG161 [94] (byte~) menu::$61 ? (byte) keyboard_key_pressed::return#10 -- vbuz1=vbuz2 + //SEG161 [94] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_10 sta _61 //SEG162 [95] if((byte~) menu::$61==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@13 -- vbuz1_eq_0_then_la1 @@ -13310,13 +13310,13 @@ menu: { lda #KEY_C sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG171 [100] (byte) keyboard_key_pressed::return#11 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG171 [100] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_11 jmp b39 //SEG172 menu::@39 b39: - //SEG173 [101] (byte~) menu::$65 ? (byte) keyboard_key_pressed::return#11 -- vbuz1=vbuz2 + //SEG173 [101] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_11 sta _65 //SEG174 [102] if((byte~) menu::$65==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@14 -- vbuz1_eq_0_then_la1 @@ -13343,13 +13343,13 @@ menu: { lda #KEY_D sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG183 [107] (byte) keyboard_key_pressed::return#12 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG183 [107] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_12 jmp b40 //SEG184 menu::@40 b40: - //SEG185 [108] (byte~) menu::$69 ? (byte) keyboard_key_pressed::return#12 -- vbuz1=vbuz2 + //SEG185 [108] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_12 sta _69 //SEG186 [109] if((byte~) menu::$69==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@15 -- vbuz1_eq_0_then_la1 @@ -13376,13 +13376,13 @@ menu: { lda #KEY_E sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG195 [114] (byte) keyboard_key_pressed::return#13 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG195 [114] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_13 jmp b41 //SEG196 menu::@41 b41: - //SEG197 [115] (byte~) menu::$73 ? (byte) keyboard_key_pressed::return#13 -- vbuz1=vbuz2 + //SEG197 [115] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_13 sta _73 //SEG198 [116] if((byte~) menu::$73==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 -- vbuz1_eq_0_then_la1 @@ -13415,36 +13415,36 @@ mode_8bppchunkybmm: { .label x = 7 .label gfxbCpuBank = 9 .label y = 6 - //SEG203 [119] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2 + //SEG203 [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF sta DTV_CONTROL - //SEG204 [120] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG204 [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG205 [121] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG205 [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG206 [122] *((const byte*) DTV_PLANEB_START_LO#0) ? <<(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG206 [122] *((const byte*) DTV_PLANEB_START_LO#0) ← <<(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #PLANEB&$ffff sta DTV_PLANEB_START_LO - //SEG207 [123] *((const byte*) DTV_PLANEB_START_MI#0) ? ><(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG207 [123] *((const byte*) DTV_PLANEB_START_MI#0) ← ><(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_MI - //SEG208 [124] *((const byte*) DTV_PLANEB_START_HI#0) ? <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG208 [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #PLANEB>>$10 sta DTV_PLANEB_START_HI - //SEG209 [125] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 8 -- _deref_pbuc1=vbuc2 + //SEG209 [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 8 -- _deref_pbuc1=vbuc2 lda #8 sta DTV_PLANEB_STEP - //SEG210 [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG210 [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG211 [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG211 [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG212 [128] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG212 [128] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Border color lda #0 sta BORDERCOL @@ -13461,11 +13461,11 @@ mode_8bppchunkybmm: { jmp b1 //SEG217 mode_8bppchunkybmm::@1 b1: - //SEG218 [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ? (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG218 [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG219 [131] (byte) mode_8bppchunkybmm::i#1 ? ++ (byte) mode_8bppchunkybmm::i#2 -- vbuz1=_inc_vbuz1 + //SEG219 [131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG220 [132] if((byte) mode_8bppchunkybmm::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bppchunkybmm::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -13533,7 +13533,7 @@ mode_8bppchunkybmm: { jmp b6 //SEG245 mode_8bppchunkybmm::@6 b6: - //SEG246 [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuz1=vbuz2 + //SEG246 [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuz1=vbuz2 lda gfxbCpuBank sta dtvSetCpuBankSegment1.cpuBankIdx //SEG247 [139] call dtvSetCpuBankSegment1 @@ -13544,7 +13544,7 @@ mode_8bppchunkybmm: { jmp b9 //SEG250 mode_8bppchunkybmm::@9 b9: - //SEG251 [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ? ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuz1=_inc_vbuz1 + //SEG251 [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuz1=_inc_vbuz1 inc gfxbCpuBank //SEG252 [141] phi from mode_8bppchunkybmm::@9 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5] b5_from_b9: @@ -13562,7 +13562,7 @@ mode_8bppchunkybmm: { jmp b5 //SEG258 mode_8bppchunkybmm::@5 b5: - //SEG259 [142] (word~) mode_8bppchunkybmm::$27 ? (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3 + //SEG259 [142] (word~) mode_8bppchunkybmm::$27 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -13570,19 +13570,19 @@ mode_8bppchunkybmm: { lda #0 adc x+1 sta _27+1 - //SEG260 [143] (byte) mode_8bppchunkybmm::c#0 ? ((byte)) (word~) mode_8bppchunkybmm::$27 -- vbuz1=_byte_vwuz2 + //SEG260 [143] (byte) mode_8bppchunkybmm::c#0 ← ((byte)) (word~) mode_8bppchunkybmm::$27 -- vbuz1=_byte_vwuz2 lda _27 sta c - //SEG261 [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ? (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuz2 + //SEG261 [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuz2 lda c ldy #0 sta (gfxb),y - //SEG262 [145] (byte*) mode_8bppchunkybmm::gfxb#1 ? ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1 + //SEG262 [145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG263 [146] (word) mode_8bppchunkybmm::x#1 ? ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1 + //SEG263 [146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 @@ -13597,7 +13597,7 @@ mode_8bppchunkybmm: { jmp b7 //SEG265 mode_8bppchunkybmm::@7 b7: - //SEG266 [148] (byte) mode_8bppchunkybmm::y#1 ? ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1 + //SEG266 [148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG267 [149] if((byte) mode_8bppchunkybmm::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_8bppchunkybmm::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -13675,13 +13675,13 @@ mode_ctrl: { lda #KEY_SPACE sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG292 [160] (byte) keyboard_key_pressed::return#14 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG292 [160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_14 jmp b19 //SEG293 mode_ctrl::@19 b19: - //SEG294 [161] (byte~) mode_ctrl::$1 ? (byte) keyboard_key_pressed::return#14 -- vbuz1=vbuz2 + //SEG294 [161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_14 sta _1 //SEG295 [162] if((byte~) mode_ctrl::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@4 -- vbuz1_eq_0_then_la1 @@ -13695,7 +13695,7 @@ mode_ctrl: { rts //SEG298 mode_ctrl::@4 b4: - //SEG299 [164] (byte) mode_ctrl::ctrl#0 ? (byte) dtv_control#114 -- vbuz1=vbuz2 + //SEG299 [164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114 -- vbuz1=vbuz2 // Read the current control byte lda dtv_control sta ctrl @@ -13706,13 +13706,13 @@ mode_ctrl: { lda #KEY_L sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG303 [166] (byte) keyboard_key_pressed::return#15 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG303 [166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_15 jmp b20 //SEG304 mode_ctrl::@20 b20: - //SEG305 [167] (byte~) mode_ctrl::$4 ? (byte) keyboard_key_pressed::return#15 -- vbuz1=vbuz2 + //SEG305 [167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_15 sta _4 //SEG306 [168] if((byte~) mode_ctrl::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@5 -- vbuz1_eq_0_then_la1 @@ -13722,7 +13722,7 @@ mode_ctrl: { jmp b12 //SEG307 mode_ctrl::@12 b12: - //SEG308 [169] (byte) mode_ctrl::ctrl#1 ? (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG308 [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_LINEAR ora ctrl sta ctrl @@ -13740,13 +13740,13 @@ mode_ctrl: { lda #KEY_H sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG315 [172] (byte) keyboard_key_pressed::return#16 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG315 [172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_16 jmp b21 //SEG316 mode_ctrl::@21 b21: - //SEG317 [173] (byte~) mode_ctrl::$8 ? (byte) keyboard_key_pressed::return#16 -- vbuz1=vbuz2 + //SEG317 [173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_16 sta _8 //SEG318 [174] if((byte~) mode_ctrl::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@6 -- vbuz1_eq_0_then_la1 @@ -13756,7 +13756,7 @@ mode_ctrl: { jmp b13 //SEG319 mode_ctrl::@13 b13: - //SEG320 [175] (byte) mode_ctrl::ctrl#2 ? (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG320 [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_HIGHCOLOR ora ctrl sta ctrl @@ -13774,13 +13774,13 @@ mode_ctrl: { lda #KEY_O sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG327 [178] (byte) keyboard_key_pressed::return#17 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG327 [178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_17 jmp b22 //SEG328 mode_ctrl::@22 b22: - //SEG329 [179] (byte~) mode_ctrl::$12 ? (byte) keyboard_key_pressed::return#17 -- vbuz1=vbuz2 + //SEG329 [179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_17 sta _12 //SEG330 [180] if((byte~) mode_ctrl::$12==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@7 -- vbuz1_eq_0_then_la1 @@ -13790,7 +13790,7 @@ mode_ctrl: { jmp b14 //SEG331 mode_ctrl::@14 b14: - //SEG332 [181] (byte) mode_ctrl::ctrl#3 ? (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG332 [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_OVERSCAN ora ctrl sta ctrl @@ -13808,13 +13808,13 @@ mode_ctrl: { lda #KEY_B sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG339 [184] (byte) keyboard_key_pressed::return#18 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG339 [184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_18 jmp b23 //SEG340 mode_ctrl::@23 b23: - //SEG341 [185] (byte~) mode_ctrl::$16 ? (byte) keyboard_key_pressed::return#18 -- vbuz1=vbuz2 + //SEG341 [185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_18 sta _16 //SEG342 [186] if((byte~) mode_ctrl::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@8 -- vbuz1_eq_0_then_la1 @@ -13824,7 +13824,7 @@ mode_ctrl: { jmp b15 //SEG343 mode_ctrl::@15 b15: - //SEG344 [187] (byte) mode_ctrl::ctrl#4 ? (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG344 [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_BORDER_OFF ora ctrl sta ctrl @@ -13842,13 +13842,13 @@ mode_ctrl: { lda #KEY_U sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG351 [190] (byte) keyboard_key_pressed::return#19 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG351 [190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_19 jmp b24 //SEG352 mode_ctrl::@24 b24: - //SEG353 [191] (byte~) mode_ctrl::$20 ? (byte) keyboard_key_pressed::return#19 -- vbuz1=vbuz2 + //SEG353 [191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_19 sta _20 //SEG354 [192] if((byte~) mode_ctrl::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@9 -- vbuz1_eq_0_then_la1 @@ -13858,7 +13858,7 @@ mode_ctrl: { jmp b16 //SEG355 mode_ctrl::@16 b16: - //SEG356 [193] (byte) mode_ctrl::ctrl#5 ? (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG356 [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_CHUNKY ora ctrl sta ctrl @@ -13876,13 +13876,13 @@ mode_ctrl: { lda #KEY_C sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG363 [196] (byte) keyboard_key_pressed::return#20 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG363 [196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_20 jmp b25 //SEG364 mode_ctrl::@25 b25: - //SEG365 [197] (byte~) mode_ctrl::$24 ? (byte) keyboard_key_pressed::return#20 -- vbuz1=vbuz2 + //SEG365 [197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_20 sta _24 //SEG366 [198] if((byte~) mode_ctrl::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@10 -- vbuz1_eq_0_then_la1 @@ -13892,7 +13892,7 @@ mode_ctrl: { jmp b17 //SEG367 mode_ctrl::@17 b17: - //SEG368 [199] (byte) mode_ctrl::ctrl#6 ? (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG368 [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuz1=vbuz1_bor_vbuc1 lda #DTV_COLORRAM_OFF ora ctrl sta ctrl @@ -13910,13 +13910,13 @@ mode_ctrl: { lda #KEY_0 sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG375 [202] (byte) keyboard_key_pressed::return#21 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG375 [202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_21 jmp b26 //SEG376 mode_ctrl::@26 b26: - //SEG377 [203] (byte~) mode_ctrl::$28 ? (byte) keyboard_key_pressed::return#21 -- vbuz1=vbuz2 + //SEG377 [203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_21 sta _28 //SEG378 [204] if((byte~) mode_ctrl::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@27 -- vbuz1_eq_0_then_la1 @@ -13938,13 +13938,13 @@ mode_ctrl: { jmp b18 //SEG383 mode_ctrl::@18 b18: - //SEG384 [207] (byte) dtv_control#17 ? (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuz2 + //SEG384 [207] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuz2 lda ctrl sta dtv_control - //SEG385 [208] *((const byte*) DTV_CONTROL#0) ? (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1 + //SEG385 [208] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1 lda ctrl sta DTV_CONTROL - //SEG386 [209] *((const byte*) BORDERCOL#0) ? (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1 + //SEG386 [209] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuz1 lda ctrl sta BORDERCOL jmp b1_from_b18 @@ -13990,31 +13990,31 @@ keyboard_key_pressed: { .label return_28 = $ab .label return_29 = $ad .label return_30 = $af - //SEG392 [212] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG392 [212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and key sta colidx - //SEG393 [213] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 + //SEG393 [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 lda key lsr lsr lsr sta rowidx - //SEG394 [214] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 -- vbuz1=vbuz2 + //SEG394 [214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuz1=vbuz2 lda rowidx sta keyboard_matrix_read.rowid //SEG395 [215] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG396 [216] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 + //SEG396 [216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 lda keyboard_matrix_read.return sta keyboard_matrix_read.return_2 jmp b1 //SEG397 keyboard_key_pressed::@1 b1: - //SEG398 [217] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 + //SEG398 [217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 lda keyboard_matrix_read.return_2 sta _2 - //SEG399 [218] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG399 [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda _2 ldy colidx and keyboard_matrix_col_bitmask,y @@ -14036,11 +14036,11 @@ keyboard_matrix_read: { .label return = $d2 .label rowid = $ce .label return_2 = $cf - //SEG403 [220] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG403 [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy rowid lda keyboard_matrix_row_bitmask,y sta CIA1_PORT_A - //SEG404 [221] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 + //SEG404 [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff sta return @@ -14059,7 +14059,7 @@ dtvSetCpuBankSegment1: { // Move CPU BANK 1 SEGMENT ($4000-$7fff) .label cpuBank = $ff .label cpuBankIdx = $f - //SEG408 [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuz1 + //SEG408 [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuz1 lda cpuBankIdx sta cpuBank //SEG409 asm { .byte$32,$dd lda$ff .byte$32,$00 } @@ -14105,55 +14105,55 @@ mode_8bpppixelcell: { .label cr = $18 .label ch = $15 .label c = $1e - //SEG413 [227] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2 + //SEG413 [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY sta DTV_CONTROL - //SEG414 [228] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG414 [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG415 [229] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG415 [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG416 [230] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG416 [230] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG417 [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG418 [232] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG418 [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG419 [233] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG419 [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG420 [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG420 [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG421 [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG421 [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG422 [236] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG422 [236] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG423 [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG424 [238] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG424 [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG425 [239] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG425 [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_STEP - //SEG426 [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG426 [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG427 [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG427 [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG428 [242] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG428 [242] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Border color lda #0 sta BORDERCOL @@ -14170,11 +14170,11 @@ mode_8bpppixelcell: { jmp b1 //SEG433 mode_8bpppixelcell::@1 b1: - //SEG434 [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ? (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG434 [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG435 [245] (byte) mode_8bpppixelcell::i#1 ? ++ (byte) mode_8bpppixelcell::i#2 -- vbuz1=_inc_vbuz1 + //SEG435 [245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG436 [246] if((byte) mode_8bpppixelcell::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bpppixelcell::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -14212,35 +14212,35 @@ mode_8bpppixelcell: { jmp b3 //SEG450 mode_8bpppixelcell::@3 b3: - //SEG451 [249] (byte~) mode_8bpppixelcell::$14 ? (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG451 [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and ay sta _14 - //SEG452 [250] (byte~) mode_8bpppixelcell::$15 ? (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG452 [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _14 asl asl asl asl sta _15 - //SEG453 [251] (byte~) mode_8bpppixelcell::$16 ? (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG453 [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and ax sta _16 - //SEG454 [252] (byte~) mode_8bpppixelcell::$17 ? (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuz1=vbuz2_bor_vbuz3 + //SEG454 [252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuz1=vbuz2_bor_vbuz3 lda _15 ora _16 sta _17 - //SEG455 [253] *((byte*) mode_8bpppixelcell::gfxa#2) ? (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuz2 + //SEG455 [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuz2 lda _17 ldy #0 sta (gfxa),y - //SEG456 [254] (byte*) mode_8bpppixelcell::gfxa#1 ? ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG456 [254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG457 [255] (byte) mode_8bpppixelcell::ax#1 ? ++ (byte) mode_8bpppixelcell::ax#2 -- vbuz1=_inc_vbuz1 + //SEG457 [255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2 -- vbuz1=_inc_vbuz1 inc ax //SEG458 [256] if((byte) mode_8bpppixelcell::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_8bpppixelcell::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -14249,7 +14249,7 @@ mode_8bpppixelcell: { jmp b4 //SEG459 mode_8bpppixelcell::@4 b4: - //SEG460 [257] (byte) mode_8bpppixelcell::ay#1 ? ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1 + //SEG460 [257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG461 [258] if((byte) mode_8bpppixelcell::ay#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_8bpppixelcell::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -14258,7 +14258,7 @@ mode_8bpppixelcell: { jmp b5 //SEG462 mode_8bpppixelcell::@5 b5: - //SEG463 [259] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 + //SEG463 [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 // 8bpp cells for Plane B (charset) - ROM charset with 256 colors lda #PROCPORT_RAM_CHARROM sta PROCPORT @@ -14308,11 +14308,11 @@ mode_8bpppixelcell: { jmp b7 //SEG485 mode_8bpppixelcell::@7 b7: - //SEG486 [262] (byte) mode_8bpppixelcell::bits#0 ? *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2 + //SEG486 [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2 ldy #0 lda (chargen),y sta bits - //SEG487 [263] (byte*) mode_8bpppixelcell::chargen#1 ? ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG487 [263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 @@ -14335,7 +14335,7 @@ mode_8bpppixelcell: { jmp b8 //SEG498 mode_8bpppixelcell::@8 b8: - //SEG499 [265] (byte~) mode_8bpppixelcell::$20 ? (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG499 [265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and bits sta _20 @@ -14346,7 +14346,7 @@ mode_8bpppixelcell: { jmp b10 //SEG501 mode_8bpppixelcell::@10 b10: - //SEG502 [267] (byte~) mode_8bpppixelcell::c#3 ? (byte) mode_8bpppixelcell::col#2 -- vbuz1=vbuz2 + //SEG502 [267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2 -- vbuz1=vbuz2 lda col sta c //SEG503 [268] phi from mode_8bpppixelcell::@10 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9] @@ -14361,20 +14361,20 @@ mode_8bpppixelcell: { jmp b9 //SEG507 mode_8bpppixelcell::@9 b9: - //SEG508 [269] *((byte*) mode_8bpppixelcell::gfxb#2) ? (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuz2 + //SEG508 [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuz2 lda c ldy #0 sta (gfxb),y - //SEG509 [270] (byte*) mode_8bpppixelcell::gfxb#1 ? ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG509 [270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG510 [271] (byte) mode_8bpppixelcell::bits#1 ? (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG510 [271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl bits - //SEG511 [272] (byte) mode_8bpppixelcell::col#1 ? ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1 + //SEG511 [272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG512 [273] (byte) mode_8bpppixelcell::cp#1 ? ++ (byte) mode_8bpppixelcell::cp#2 -- vbuz1=_inc_vbuz1 + //SEG512 [273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2 -- vbuz1=_inc_vbuz1 inc cp //SEG513 [274] if((byte) mode_8bpppixelcell::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@8 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -14383,7 +14383,7 @@ mode_8bpppixelcell: { jmp b11 //SEG514 mode_8bpppixelcell::@11 b11: - //SEG515 [275] (byte) mode_8bpppixelcell::cr#1 ? ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1 + //SEG515 [275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1 inc cr //SEG516 [276] if((byte) mode_8bpppixelcell::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -14392,7 +14392,7 @@ mode_8bpppixelcell: { jmp b12 //SEG517 mode_8bpppixelcell::@12 b12: - //SEG518 [277] (byte) mode_8bpppixelcell::ch#1 ? ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1 + //SEG518 [277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1 inc ch //SEG519 [278] if((byte) mode_8bpppixelcell::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_8bpppixelcell::@6 -- vbuz1_neq_0_then_la1 lda ch @@ -14401,7 +14401,7 @@ mode_8bpppixelcell: { jmp b13 //SEG520 mode_8bpppixelcell::@13 b13: - //SEG521 [279] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG521 [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT //SEG522 [280] call mode_ctrl @@ -14442,59 +14442,59 @@ mode_sixsfred: { .label gfxb = $29 .label bx = $2b .label by = $28 - //SEG528 [282] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG528 [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR sta DTV_CONTROL - //SEG529 [283] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG529 [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG530 [284] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG530 [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG531 [285] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG531 [285] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG532 [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG533 [287] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG533 [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG534 [288] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG534 [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG535 [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG535 [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG536 [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG536 [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG537 [291] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG537 [291] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG538 [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG539 [293] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG539 [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG540 [294] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG540 [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG541 [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG541 [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG542 [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG542 [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG543 [297] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG543 [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG544 [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG545 [299] phi from mode_sixsfred to mode_sixsfred::@1 [phi:mode_sixsfred->mode_sixsfred::@1] @@ -14510,11 +14510,11 @@ mode_sixsfred: { jmp b1 //SEG549 mode_sixsfred::@1 b1: - //SEG550 [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ? (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG550 [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG551 [301] (byte) mode_sixsfred::i#1 ? ++ (byte) mode_sixsfred::i#2 -- vbuz1=_inc_vbuz1 + //SEG551 [301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG552 [302] if((byte) mode_sixsfred::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -14523,7 +14523,7 @@ mode_sixsfred: { jmp b2 //SEG553 mode_sixsfred::@2 b2: - //SEG554 [303] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG554 [303] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL @@ -14559,25 +14559,25 @@ mode_sixsfred: { jmp b4 //SEG568 mode_sixsfred::@4 b4: - //SEG569 [306] (byte~) mode_sixsfred::$17 ? (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG569 [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuz1=vbuz2_plus_vbuz3 lda cx clc adc cy sta _17 - //SEG570 [307] (byte~) mode_sixsfred::$18 ? (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG570 [307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and _17 sta _18 - //SEG571 [308] *((byte*) mode_sixsfred::col#2) ? (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuz2 + //SEG571 [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuz2 lda _18 ldy #0 sta (col),y - //SEG572 [309] (byte*) mode_sixsfred::col#1 ? ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1 + //SEG572 [309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG573 [310] (byte) mode_sixsfred::cx#1 ? ++ (byte) mode_sixsfred::cx#2 -- vbuz1=_inc_vbuz1 + //SEG573 [310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG574 [311] if((byte) mode_sixsfred::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -14586,7 +14586,7 @@ mode_sixsfred: { jmp b5 //SEG575 mode_sixsfred::@5 b5: - //SEG576 [312] (byte) mode_sixsfred::cy#1 ? ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1 + //SEG576 [312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG577 [313] if((byte) mode_sixsfred::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -14624,25 +14624,25 @@ mode_sixsfred: { jmp b7 //SEG591 mode_sixsfred::@7 b7: - //SEG592 [316] (byte~) mode_sixsfred::$21 ? (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG592 [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda ay lsr sta _21 - //SEG593 [317] (byte) mode_sixsfred::row#0 ? (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 + //SEG593 [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 lda #3 and _21 sta row - //SEG594 [318] *((byte*) mode_sixsfred::gfxa#2) ? *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG594 [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy row lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG595 [319] (byte*) mode_sixsfred::gfxa#1 ? ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG595 [319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG596 [320] (byte) mode_sixsfred::ax#1 ? ++ (byte) mode_sixsfred::ax#2 -- vbuz1=_inc_vbuz1 + //SEG596 [320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2 -- vbuz1=_inc_vbuz1 inc ax //SEG597 [321] if((byte) mode_sixsfred::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@7 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -14651,7 +14651,7 @@ mode_sixsfred: { jmp b8 //SEG598 mode_sixsfred::@8 b8: - //SEG599 [322] (byte) mode_sixsfred::ay#1 ? ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1 + //SEG599 [322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG600 [323] if((byte) mode_sixsfred::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -14689,16 +14689,16 @@ mode_sixsfred: { jmp b10 //SEG614 mode_sixsfred::@10 b10: - //SEG615 [326] *((byte*) mode_sixsfred::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 + //SEG615 [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 lda #$1b ldy #0 sta (gfxb),y - //SEG616 [327] (byte*) mode_sixsfred::gfxb#1 ? ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG616 [327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG617 [328] (byte) mode_sixsfred::bx#1 ? ++ (byte) mode_sixsfred::bx#2 -- vbuz1=_inc_vbuz1 + //SEG617 [328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2 -- vbuz1=_inc_vbuz1 inc bx //SEG618 [329] if((byte) mode_sixsfred::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@10 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -14707,7 +14707,7 @@ mode_sixsfred: { jmp b11 //SEG619 mode_sixsfred::@11 b11: - //SEG620 [330] (byte) mode_sixsfred::by#1 ? ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1 + //SEG620 [330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG621 [331] if((byte) mode_sixsfred::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@9 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -14761,59 +14761,59 @@ mode_twoplanebitmap: { .label gfxb = $36 .label bx = $38 .label by = $35 - //SEG630 [335] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG630 [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR sta DTV_CONTROL - //SEG631 [336] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG631 [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG632 [337] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG632 [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG633 [338] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG633 [338] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG634 [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG635 [340] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG635 [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG636 [341] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG636 [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG637 [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG637 [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG638 [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG638 [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG639 [344] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG639 [344] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG640 [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG641 [346] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG641 [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG642 [347] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG642 [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG643 [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG643 [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG644 [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG644 [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG645 [350] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG645 [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG646 [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG647 [352] phi from mode_twoplanebitmap to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1] @@ -14829,11 +14829,11 @@ mode_twoplanebitmap: { jmp b1 //SEG651 mode_twoplanebitmap::@1 b1: - //SEG652 [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ? (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG652 [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG653 [354] (byte) mode_twoplanebitmap::i#1 ? ++ (byte) mode_twoplanebitmap::i#2 -- vbuz1=_inc_vbuz1 + //SEG653 [354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG654 [355] if((byte) mode_twoplanebitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_twoplanebitmap::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -14842,14 +14842,14 @@ mode_twoplanebitmap: { jmp b2 //SEG655 mode_twoplanebitmap::@2 b2: - //SEG656 [356] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG656 [356] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG657 [357] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $70 -- _deref_pbuc1=vbuc2 + //SEG657 [357] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $70 -- _deref_pbuc1=vbuc2 lda #$70 sta BGCOL1 - //SEG658 [358] *((const byte*) BGCOL2#0) ? (byte/word/signed word/dword/signed dword) $d4 -- _deref_pbuc1=vbuc2 + //SEG658 [358] *((const byte*) BGCOL2#0) ← (byte/word/signed word/dword/signed dword) $d4 -- _deref_pbuc1=vbuc2 // Color for bits 00 lda #$d4 sta BGCOL2 @@ -14885,35 +14885,35 @@ mode_twoplanebitmap: { jmp b4 //SEG672 mode_twoplanebitmap::@4 b4: - //SEG673 [361] (byte~) mode_twoplanebitmap::$16 ? (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG673 [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _16 - //SEG674 [362] (byte~) mode_twoplanebitmap::$17 ? (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG674 [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _16 asl asl asl asl sta _17 - //SEG675 [363] (byte~) mode_twoplanebitmap::$18 ? (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG675 [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _18 - //SEG676 [364] (byte~) mode_twoplanebitmap::$19 ? (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuz1=vbuz2_bor_vbuz3 + //SEG676 [364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuz1=vbuz2_bor_vbuz3 lda _17 ora _18 sta _19 - //SEG677 [365] *((byte*) mode_twoplanebitmap::col#2) ? (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuz2 + //SEG677 [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuz2 lda _19 ldy #0 sta (col),y - //SEG678 [366] (byte*) mode_twoplanebitmap::col#1 ? ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1 + //SEG678 [366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG679 [367] (byte) mode_twoplanebitmap::cx#1 ? ++ (byte) mode_twoplanebitmap::cx#2 -- vbuz1=_inc_vbuz1 + //SEG679 [367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG680 [368] if((byte) mode_twoplanebitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -14922,7 +14922,7 @@ mode_twoplanebitmap: { jmp b5 //SEG681 mode_twoplanebitmap::@5 b5: - //SEG682 [369] (byte) mode_twoplanebitmap::cy#1 ? ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1 + //SEG682 [369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG683 [370] if((byte) mode_twoplanebitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_twoplanebitmap::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -14960,7 +14960,7 @@ mode_twoplanebitmap: { jmp b7 //SEG697 mode_twoplanebitmap::@7 b7: - //SEG698 [373] (byte~) mode_twoplanebitmap::$22 ? (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_band_vbuc1 + //SEG698 [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_band_vbuc1 lda #4 and ay sta _22 @@ -14971,11 +14971,11 @@ mode_twoplanebitmap: { jmp b10 //SEG700 mode_twoplanebitmap::@10 b10: - //SEG701 [375] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 + //SEG701 [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 lda #$ff ldy #0 sta (gfxa),y - //SEG702 [376] (byte*) mode_twoplanebitmap::gfxa#2 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG702 [376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -14987,7 +14987,7 @@ mode_twoplanebitmap: { jmp b9 //SEG705 mode_twoplanebitmap::@9 b9: - //SEG706 [378] (byte) mode_twoplanebitmap::ax#1 ? ++ (byte) mode_twoplanebitmap::ax#2 -- vbuz1=_inc_vbuz1 + //SEG706 [378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2 -- vbuz1=_inc_vbuz1 inc ax //SEG707 [379] if((byte) mode_twoplanebitmap::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@7 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -14996,7 +14996,7 @@ mode_twoplanebitmap: { jmp b11 //SEG708 mode_twoplanebitmap::@11 b11: - //SEG709 [380] (byte) mode_twoplanebitmap::ay#1 ? ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1 + //SEG709 [380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1 inc ay //SEG710 [381] if((byte) mode_twoplanebitmap::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -15034,16 +15034,16 @@ mode_twoplanebitmap: { jmp b13 //SEG724 mode_twoplanebitmap::@13 b13: - //SEG725 [384] *((byte*) mode_twoplanebitmap::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 + //SEG725 [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 lda #$f ldy #0 sta (gfxb),y - //SEG726 [385] (byte*) mode_twoplanebitmap::gfxb#1 ? ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG726 [385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG727 [386] (byte) mode_twoplanebitmap::bx#1 ? ++ (byte) mode_twoplanebitmap::bx#2 -- vbuz1=_inc_vbuz1 + //SEG727 [386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2 -- vbuz1=_inc_vbuz1 inc bx //SEG728 [387] if((byte) mode_twoplanebitmap::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@13 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -15052,7 +15052,7 @@ mode_twoplanebitmap: { jmp b14 //SEG729 mode_twoplanebitmap::@14 b14: - //SEG730 [388] (byte) mode_twoplanebitmap::by#1 ? ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1 + //SEG730 [388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG731 [389] if((byte) mode_twoplanebitmap::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@12 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -15077,11 +15077,11 @@ mode_twoplanebitmap: { rts //SEG739 mode_twoplanebitmap::@8 b8: - //SEG740 [393] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG740 [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (gfxa),y - //SEG741 [394] (byte*) mode_twoplanebitmap::gfxa#1 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG741 [394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -15115,59 +15115,59 @@ mode_sixsfred2: { .label gfxb = $43 .label bx = $45 .label by = $42 - //SEG743 [395] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG743 [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_LINEAR sta DTV_CONTROL - //SEG744 [396] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG744 [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG745 [397] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG745 [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG746 [398] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG746 [398] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG747 [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG748 [400] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG748 [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG749 [401] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG749 [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG750 [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG750 [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG751 [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG751 [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG752 [404] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG752 [404] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG753 [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG754 [406] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG754 [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG755 [407] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG755 [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG756 [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG756 [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG757 [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG757 [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG758 [410] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG758 [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG759 [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG760 [412] phi from mode_sixsfred2 to mode_sixsfred2::@1 [phi:mode_sixsfred2->mode_sixsfred2::@1] @@ -15183,11 +15183,11 @@ mode_sixsfred2: { jmp b1 //SEG764 mode_sixsfred2::@1 b1: - //SEG765 [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ? (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG765 [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG766 [414] (byte) mode_sixsfred2::i#1 ? ++ (byte) mode_sixsfred2::i#2 -- vbuz1=_inc_vbuz1 + //SEG766 [414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG767 [415] if((byte) mode_sixsfred2::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred2::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -15196,7 +15196,7 @@ mode_sixsfred2: { jmp b2 //SEG768 mode_sixsfred2::@2 b2: - //SEG769 [416] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG769 [416] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL @@ -15232,35 +15232,35 @@ mode_sixsfred2: { jmp b4 //SEG783 mode_sixsfred2::@4 b4: - //SEG784 [419] (byte~) mode_sixsfred2::$15 ? (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 + //SEG784 [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 lda #3 and cx sta _15 - //SEG785 [420] (byte~) mode_sixsfred2::$16 ? (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG785 [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _15 asl asl asl asl sta _16 - //SEG786 [421] (byte~) mode_sixsfred2::$17 ? (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 + //SEG786 [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 lda #3 and cy sta _17 - //SEG787 [422] (byte~) mode_sixsfred2::$18 ? (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuz1=vbuz2_bor_vbuz3 + //SEG787 [422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuz1=vbuz2_bor_vbuz3 lda _16 ora _17 sta _18 - //SEG788 [423] *((byte*) mode_sixsfred2::col#2) ? (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuz2 + //SEG788 [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuz2 lda _18 ldy #0 sta (col),y - //SEG789 [424] (byte*) mode_sixsfred2::col#1 ? ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1 + //SEG789 [424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG790 [425] (byte) mode_sixsfred2::cx#1 ? ++ (byte) mode_sixsfred2::cx#2 -- vbuz1=_inc_vbuz1 + //SEG790 [425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG791 [426] if((byte) mode_sixsfred2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -15269,7 +15269,7 @@ mode_sixsfred2: { jmp b5 //SEG792 mode_sixsfred2::@5 b5: - //SEG793 [427] (byte) mode_sixsfred2::cy#1 ? ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1 + //SEG793 [427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG794 [428] if((byte) mode_sixsfred2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred2::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -15307,25 +15307,25 @@ mode_sixsfred2: { jmp b7 //SEG808 mode_sixsfred2::@7 b7: - //SEG809 [431] (byte~) mode_sixsfred2::$21 ? (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG809 [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda ay lsr sta _21 - //SEG810 [432] (byte) mode_sixsfred2::row#0 ? (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 + //SEG810 [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_band_vbuc1 lda #3 and _21 sta row - //SEG811 [433] *((byte*) mode_sixsfred2::gfxa#2) ? *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG811 [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy row lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG812 [434] (byte*) mode_sixsfred2::gfxa#1 ? ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG812 [434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG813 [435] (byte) mode_sixsfred2::ax#1 ? ++ (byte) mode_sixsfred2::ax#2 -- vbuz1=_inc_vbuz1 + //SEG813 [435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2 -- vbuz1=_inc_vbuz1 inc ax //SEG814 [436] if((byte) mode_sixsfred2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@7 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -15334,7 +15334,7 @@ mode_sixsfred2: { jmp b8 //SEG815 mode_sixsfred2::@8 b8: - //SEG816 [437] (byte) mode_sixsfred2::ay#1 ? ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1 + //SEG816 [437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG817 [438] if((byte) mode_sixsfred2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -15372,16 +15372,16 @@ mode_sixsfred2: { jmp b10 //SEG831 mode_sixsfred2::@10 b10: - //SEG832 [441] *((byte*) mode_sixsfred2::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 + //SEG832 [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 lda #$1b ldy #0 sta (gfxb),y - //SEG833 [442] (byte*) mode_sixsfred2::gfxb#1 ? ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG833 [442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG834 [443] (byte) mode_sixsfred2::bx#1 ? ++ (byte) mode_sixsfred2::bx#2 -- vbuz1=_inc_vbuz1 + //SEG834 [443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2 -- vbuz1=_inc_vbuz1 inc bx //SEG835 [444] if((byte) mode_sixsfred2::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@10 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -15390,7 +15390,7 @@ mode_sixsfred2: { jmp b11 //SEG836 mode_sixsfred2::@11 b11: - //SEG837 [445] (byte) mode_sixsfred2::by#1 ? ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1 + //SEG837 [445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG838 [446] if((byte) mode_sixsfred2::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@9 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -15442,37 +15442,37 @@ mode_hicolmcchar: { .label ch = $4b .label cx = $48 .label cy = $47 - //SEG847 [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG847 [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG848 [451] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG848 [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG849 [452] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG849 [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG850 [453] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG850 [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG851 [454] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG851 [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG852 [455] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG852 [455] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG853 [456] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG853 [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG854 [457] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG854 [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL|VIC_MCM sta VIC_CONTROL2 - //SEG855 [458] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG855 [458] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -15489,11 +15489,11 @@ mode_hicolmcchar: { jmp b1 //SEG860 mode_hicolmcchar::@1 b1: - //SEG861 [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ? (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG861 [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG862 [461] (byte) mode_hicolmcchar::i#1 ? ++ (byte) mode_hicolmcchar::i#2 -- vbuz1=_inc_vbuz1 + //SEG862 [461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG863 [462] if((byte) mode_hicolmcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolmcchar::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -15502,17 +15502,17 @@ mode_hicolmcchar: { jmp b2 //SEG864 mode_hicolmcchar::@2 b2: - //SEG865 [463] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG865 [463] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG866 [464] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 + //SEG866 [464] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 lda #$50 sta BGCOL1 - //SEG867 [465] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 + //SEG867 [465] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 lda #$54 sta BGCOL2 - //SEG868 [466] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 + //SEG868 [466] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 lda #$58 sta BGCOL3 //SEG869 [467] phi from mode_hicolmcchar::@2 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3] @@ -15555,44 +15555,44 @@ mode_hicolmcchar: { jmp b4 //SEG886 mode_hicolmcchar::@4 b4: - //SEG887 [469] (byte~) mode_hicolmcchar::$26 ? (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG887 [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _26 - //SEG888 [470] (byte~) mode_hicolmcchar::$27 ? (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG888 [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _26 asl asl asl asl sta _27 - //SEG889 [471] (byte~) mode_hicolmcchar::$28 ? (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG889 [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _28 - //SEG890 [472] (byte) mode_hicolmcchar::v#0 ? (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuz1=vbuz2_bor_vbuz3 + //SEG890 [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuz1=vbuz2_bor_vbuz3 lda _27 ora _28 sta v - //SEG891 [473] *((byte*) mode_hicolmcchar::col#2) ? (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuz2 + //SEG891 [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuz2 lda v ldy #0 sta (col),y - //SEG892 [474] (byte*) mode_hicolmcchar::col#1 ? ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG892 [474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG893 [475] *((byte*) mode_hicolmcchar::ch#2) ? (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuz2 + //SEG893 [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuz2 lda v ldy #0 sta (ch),y - //SEG894 [476] (byte*) mode_hicolmcchar::ch#1 ? ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG894 [476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG895 [477] (byte) mode_hicolmcchar::cx#1 ? ++ (byte) mode_hicolmcchar::cx#2 -- vbuz1=_inc_vbuz1 + //SEG895 [477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG896 [478] if((byte) mode_hicolmcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolmcchar::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -15601,7 +15601,7 @@ mode_hicolmcchar: { jmp b5 //SEG897 mode_hicolmcchar::@5 b5: - //SEG898 [479] (byte) mode_hicolmcchar::cy#1 ? ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG898 [479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG899 [480] if((byte) mode_hicolmcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolmcchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -15651,37 +15651,37 @@ mode_hicolecmchar: { .label ch = $52 .label cx = $4f .label cy = $4e - //SEG908 [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG908 [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG909 [485] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG909 [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG910 [486] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG910 [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG911 [487] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG911 [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG912 [488] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG912 [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG913 [489] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG913 [489] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG914 [490] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG914 [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|VIC_ECM|3 sta VIC_CONTROL - //SEG915 [491] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG915 [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG916 [492] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG916 [492] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -15698,11 +15698,11 @@ mode_hicolecmchar: { jmp b1 //SEG921 mode_hicolecmchar::@1 b1: - //SEG922 [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ? (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG922 [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG923 [495] (byte) mode_hicolecmchar::i#1 ? ++ (byte) mode_hicolecmchar::i#2 -- vbuz1=_inc_vbuz1 + //SEG923 [495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG924 [496] if((byte) mode_hicolecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolecmchar::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -15711,20 +15711,20 @@ mode_hicolecmchar: { jmp b2 //SEG925 mode_hicolecmchar::@2 b2: - //SEG926 [497] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG926 [497] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG927 [498] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 + //SEG927 [498] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 lda #$50 sta BGCOL1 - //SEG928 [499] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 + //SEG928 [499] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 lda #$54 sta BGCOL2 - //SEG929 [500] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 + //SEG929 [500] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 lda #$58 sta BGCOL3 - //SEG930 [501] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) $5c -- _deref_pbuc1=vbuc2 + //SEG930 [501] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) $5c -- _deref_pbuc1=vbuc2 lda #$5c sta BGCOL4 //SEG931 [502] phi from mode_hicolecmchar::@2 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3] @@ -15767,44 +15767,44 @@ mode_hicolecmchar: { jmp b4 //SEG948 mode_hicolecmchar::@4 b4: - //SEG949 [504] (byte~) mode_hicolecmchar::$26 ? (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG949 [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _26 - //SEG950 [505] (byte~) mode_hicolecmchar::$27 ? (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG950 [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _26 asl asl asl asl sta _27 - //SEG951 [506] (byte~) mode_hicolecmchar::$28 ? (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG951 [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _28 - //SEG952 [507] (byte) mode_hicolecmchar::v#0 ? (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuz1=vbuz2_bor_vbuz3 + //SEG952 [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuz1=vbuz2_bor_vbuz3 lda _27 ora _28 sta v - //SEG953 [508] *((byte*) mode_hicolecmchar::col#2) ? (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuz2 + //SEG953 [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuz2 lda v ldy #0 sta (col),y - //SEG954 [509] (byte*) mode_hicolecmchar::col#1 ? ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG954 [509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG955 [510] *((byte*) mode_hicolecmchar::ch#2) ? (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuz2 + //SEG955 [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuz2 lda v ldy #0 sta (ch),y - //SEG956 [511] (byte*) mode_hicolecmchar::ch#1 ? ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG956 [511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG957 [512] (byte) mode_hicolecmchar::cx#1 ? ++ (byte) mode_hicolecmchar::cx#2 -- vbuz1=_inc_vbuz1 + //SEG957 [512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG958 [513] if((byte) mode_hicolecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolecmchar::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -15813,7 +15813,7 @@ mode_hicolecmchar: { jmp b5 //SEG959 mode_hicolecmchar::@5 b5: - //SEG960 [514] (byte) mode_hicolecmchar::cy#1 ? ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG960 [514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG961 [515] if((byte) mode_hicolecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolecmchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -15859,37 +15859,37 @@ mode_hicolstdchar: { .label ch = $59 .label cx = $56 .label cy = $55 - //SEG970 [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG970 [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG971 [520] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG971 [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG972 [521] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG972 [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG973 [522] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG973 [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG974 [523] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG974 [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG975 [524] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG975 [524] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG976 [525] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG976 [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG977 [526] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG977 [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG978 [527] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG978 [527] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -15906,11 +15906,11 @@ mode_hicolstdchar: { jmp b1 //SEG983 mode_hicolstdchar::@1 b1: - //SEG984 [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ? (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG984 [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta DTV_PALETTE,y - //SEG985 [530] (byte) mode_hicolstdchar::i#1 ? ++ (byte) mode_hicolstdchar::i#2 -- vbuz1=_inc_vbuz1 + //SEG985 [530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG986 [531] if((byte) mode_hicolstdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolstdchar::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -15919,11 +15919,11 @@ mode_hicolstdchar: { jmp b2 //SEG987 mode_hicolstdchar::@2 b2: - //SEG988 [532] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG988 [532] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG989 [533] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG989 [533] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL //SEG990 [534] phi from mode_hicolstdchar::@2 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3] @@ -15966,44 +15966,44 @@ mode_hicolstdchar: { jmp b4 //SEG1007 mode_hicolstdchar::@4 b4: - //SEG1008 [536] (byte~) mode_hicolstdchar::$25 ? (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1008 [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _25 - //SEG1009 [537] (byte~) mode_hicolstdchar::$26 ? (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1009 [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _25 asl asl asl asl sta _26 - //SEG1010 [538] (byte~) mode_hicolstdchar::$27 ? (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1010 [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _27 - //SEG1011 [539] (byte) mode_hicolstdchar::v#0 ? (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1011 [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuz1=vbuz2_bor_vbuz3 lda _26 ora _27 sta v - //SEG1012 [540] *((byte*) mode_hicolstdchar::col#2) ? (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuz2 + //SEG1012 [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuz2 lda v ldy #0 sta (col),y - //SEG1013 [541] (byte*) mode_hicolstdchar::col#1 ? ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1013 [541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1014 [542] *((byte*) mode_hicolstdchar::ch#2) ? (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuz2 + //SEG1014 [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuz2 lda v ldy #0 sta (ch),y - //SEG1015 [543] (byte*) mode_hicolstdchar::ch#1 ? ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1015 [543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1016 [544] (byte) mode_hicolstdchar::cx#1 ? ++ (byte) mode_hicolstdchar::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1016 [544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1017 [545] if((byte) mode_hicolstdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolstdchar::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -16012,7 +16012,7 @@ mode_hicolstdchar: { jmp b5 //SEG1018 mode_hicolstdchar::@5 b5: - //SEG1019 [546] (byte) mode_hicolstdchar::cy#1 ? ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1019 [546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1020 [547] if((byte) mode_hicolstdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolstdchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -16058,30 +16058,30 @@ mode_stdbitmap: { .label cx = $5d .label cy = $5c .label l = $60 - //SEG1029 [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1029 [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&BITMAP)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1030 [552] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1030 [552] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1031 [553] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1031 [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1032 [554] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1032 [554] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^BITMAP/$4000 sta CIA2_PORT_A - //SEG1033 [555] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1033 [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1034 [556] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1034 [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1035 [557] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1035 [557] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(BITMAP&$3fff)/$400 sta VIC_MEMORY @@ -16098,11 +16098,11 @@ mode_stdbitmap: { jmp b1 //SEG1040 mode_stdbitmap::@1 b1: - //SEG1041 [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG1041 [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda DTV_PALETTE_DEFAULT,y sta DTV_PALETTE,y - //SEG1042 [560] (byte) mode_stdbitmap::i#1 ? ++ (byte) mode_stdbitmap::i#2 -- vbuz1=_inc_vbuz1 + //SEG1042 [560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG1043 [561] if((byte) mode_stdbitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdbitmap::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -16111,11 +16111,11 @@ mode_stdbitmap: { jmp b2 //SEG1044 mode_stdbitmap::@2 b2: - //SEG1045 [562] *((const byte*) BGCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1045 [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 // Screen colors lda #BLACK sta BGCOL - //SEG1046 [563] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1046 [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL //SEG1047 [564] phi from mode_stdbitmap::@2 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3] @@ -16150,41 +16150,41 @@ mode_stdbitmap: { jmp b4 //SEG1060 mode_stdbitmap::@4 b4: - //SEG1061 [566] (byte~) mode_stdbitmap::$22 ? (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG1061 [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuz1=vbuz2_plus_vbuz3 lda cx clc adc cy sta _22 - //SEG1062 [567] (byte) mode_stdbitmap::col#0 ? (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1062 [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and _22 sta col - //SEG1063 [568] (byte) mode_stdbitmap::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuz2 + //SEG1063 [568] (byte) mode_stdbitmap::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuz2 lda #$f sec sbc col sta col2 - //SEG1064 [569] (byte~) mode_stdbitmap::$25 ? (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1064 [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda col asl asl asl asl sta _25 - //SEG1065 [570] (byte~) mode_stdbitmap::$26 ? (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1065 [570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuz1=vbuz2_bor_vbuz3 lda _25 ora col2 sta _26 - //SEG1066 [571] *((byte*) mode_stdbitmap::ch#2) ? (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuz2 + //SEG1066 [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuz2 lda _26 ldy #0 sta (ch),y - //SEG1067 [572] (byte*) mode_stdbitmap::ch#1 ? ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1067 [572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1068 [573] (byte) mode_stdbitmap::cx#1 ? ++ (byte) mode_stdbitmap::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1068 [573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1069 [574] if((byte) mode_stdbitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdbitmap::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -16193,7 +16193,7 @@ mode_stdbitmap: { jmp b5 //SEG1070 mode_stdbitmap::@5 b5: - //SEG1071 [575] (byte) mode_stdbitmap::cy#1 ? ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1071 [575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1072 [576] if((byte) mode_stdbitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdbitmap::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -16227,19 +16227,19 @@ mode_stdbitmap: { jmp b7 //SEG1084 mode_stdbitmap::@7 b7: - //SEG1085 [582] (byte) bitmap_line::x0#0 ? *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1085 [582] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG1086 [583] (byte) bitmap_line::x1#0 ? *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1086 [583] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x+1,y sta bitmap_line.x1 - //SEG1087 [584] (byte) bitmap_line::y0#0 ? *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1087 [584] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y,y sta bitmap_line.y0 - //SEG1088 [585] (byte) bitmap_line::y1#0 ? *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1088 [585] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y+1,y sta bitmap_line.y1 @@ -16248,7 +16248,7 @@ mode_stdbitmap: { jmp b10 //SEG1090 mode_stdbitmap::@10 b10: - //SEG1091 [587] (byte) mode_stdbitmap::l#1 ? ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1 + //SEG1091 [587] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG1092 [588] if((byte) mode_stdbitmap::l#1<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@7 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -16295,7 +16295,7 @@ bitmap_line: { jmp b2 //SEG1102 bitmap_line::@2 b2: - //SEG1103 [593] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1103 [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 lda x0 sec sbc x1 @@ -16307,7 +16307,7 @@ bitmap_line: { jmp b3 //SEG1105 bitmap_line::@3 b3: - //SEG1106 [595] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1106 [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 lda y0 sec sbc y1 @@ -16319,19 +16319,19 @@ bitmap_line: { jmp b4 //SEG1108 bitmap_line::@4 b4: - //SEG1109 [597] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1109 [597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y - //SEG1110 [598] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1110 [598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_ydxi.x - //SEG1111 [599] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1111 [599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y1 - //SEG1112 [600] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 + //SEG1112 [600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 lda yd_2 sta bitmap_line_ydxi.yd - //SEG1113 [601] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1113 [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_ydxi.xd //SEG1114 [602] call bitmap_line_ydxi @@ -16350,19 +16350,19 @@ bitmap_line: { rts //SEG1123 bitmap_line::@8 b8: - //SEG1124 [604] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1124 [604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x - //SEG1125 [605] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1125 [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyi.y - //SEG1126 [606] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1126 [606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x1 - //SEG1127 [607] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1127 [607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_xdyi.xd - //SEG1128 [608] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 + //SEG1128 [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 lda yd_2 sta bitmap_line_xdyi.yd //SEG1129 [609] call bitmap_line_xdyi @@ -16377,7 +16377,7 @@ bitmap_line: { jmp breturn //SEG1136 bitmap_line::@7 b7: - //SEG1137 [610] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1137 [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 lda y1 sec sbc y0 @@ -16389,19 +16389,19 @@ bitmap_line: { jmp b10 //SEG1139 bitmap_line::@10 b10: - //SEG1140 [612] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1140 [612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG1141 [613] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1141 [613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_ydxd.x - //SEG1142 [614] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1142 [614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y1 - //SEG1143 [615] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 + //SEG1143 [615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 lda yd sta bitmap_line_ydxd.yd - //SEG1144 [616] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1144 [616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_ydxd.xd //SEG1145 [617] call bitmap_line_ydxd @@ -16416,19 +16416,19 @@ bitmap_line: { jmp breturn //SEG1152 bitmap_line::@9 b9: - //SEG1153 [618] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1153 [618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyd.x - //SEG1154 [619] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1154 [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyd.y - //SEG1155 [620] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1155 [620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x1 - //SEG1156 [621] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG1156 [621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_xdyd.xd - //SEG1157 [622] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 + //SEG1157 [622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 lda yd sta bitmap_line_xdyd.yd //SEG1158 [623] call bitmap_line_xdyd @@ -16443,7 +16443,7 @@ bitmap_line: { jmp breturn //SEG1165 bitmap_line::@1 b1: - //SEG1166 [624] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1166 [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x0 @@ -16455,7 +16455,7 @@ bitmap_line: { jmp b5 //SEG1168 bitmap_line::@5 b5: - //SEG1169 [626] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1169 [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 lda y0 sec sbc y1 @@ -16467,19 +16467,19 @@ bitmap_line: { jmp b6 //SEG1171 bitmap_line::@6 b6: - //SEG1172 [628] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1172 [628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y - //SEG1173 [629] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1173 [629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_ydxd.x - //SEG1174 [630] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1174 [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y1 - //SEG1175 [631] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 + //SEG1175 [631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 lda yd_10 sta bitmap_line_ydxd.yd - //SEG1176 [632] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1176 [632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_ydxd.xd //SEG1177 [633] call bitmap_line_ydxd @@ -16494,19 +16494,19 @@ bitmap_line: { jmp breturn //SEG1184 bitmap_line::@12 b12: - //SEG1185 [634] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1185 [634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x - //SEG1186 [635] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1186 [635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_xdyd.y - //SEG1187 [636] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1187 [636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyd.x1 - //SEG1188 [637] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1188 [637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_xdyd.xd - //SEG1189 [638] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 + //SEG1189 [638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 lda yd_10 sta bitmap_line_xdyd.yd //SEG1190 [639] call bitmap_line_xdyd @@ -16521,7 +16521,7 @@ bitmap_line: { jmp breturn //SEG1197 bitmap_line::@11 b11: - //SEG1198 [640] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG1198 [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 lda y1 sec sbc y0 @@ -16533,19 +16533,19 @@ bitmap_line: { jmp b14 //SEG1200 bitmap_line::@14 b14: - //SEG1201 [642] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1201 [642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG1202 [643] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1202 [643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_ydxi.x - //SEG1203 [644] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1203 [644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y1 - //SEG1204 [645] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 + //SEG1204 [645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 lda yd_11 sta bitmap_line_ydxi.yd - //SEG1205 [646] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1205 [646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_ydxi.xd //SEG1206 [647] call bitmap_line_ydxi @@ -16560,19 +16560,19 @@ bitmap_line: { jmp breturn //SEG1213 bitmap_line::@13 b13: - //SEG1214 [648] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1214 [648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x - //SEG1215 [649] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1215 [649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_xdyi.y - //SEG1216 [650] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG1216 [650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x1 - //SEG1217 [651] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG1217 [651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_xdyi.xd - //SEG1218 [652] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 + //SEG1218 [652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 lda yd_11 sta bitmap_line_xdyi.yd //SEG1219 [653] call bitmap_line_xdyi @@ -16596,7 +16596,7 @@ bitmap_line_xdyi: { .label xd = $62 .label yd = $61 .label e = $66 - //SEG1227 [655] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1227 [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -16609,10 +16609,10 @@ bitmap_line_xdyi: { jmp b1 //SEG1232 bitmap_line_xdyi::@1 b1: - //SEG1233 [657] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 -- vbuz1=vbuz2 + //SEG1233 [657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1234 [658] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuz1=vbuz2 + //SEG1234 [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1235 [659] call bitmap_plot @@ -16624,9 +16624,9 @@ bitmap_line_xdyi: { jmp b4 //SEG1239 bitmap_line_xdyi::@4 b4: - //SEG1240 [660] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1240 [660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1241 [661] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1241 [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -16638,9 +16638,9 @@ bitmap_line_xdyi: { jmp b3 //SEG1243 bitmap_line_xdyi::@3 b3: - //SEG1244 [663] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1244 [663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1245 [664] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1245 [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -16653,7 +16653,7 @@ bitmap_line_xdyi: { jmp b2 //SEG1249 bitmap_line_xdyi::@2 b2: - //SEG1250 [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1250 [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -16676,19 +16676,19 @@ bitmap_plot: { .label plotter_y = $105 .label x = $67 .label y = $68 - //SEG1255 [670] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG1255 [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy x lda bitmap_plot_xhi,y sta plotter_x+1 lda bitmap_plot_xlo,y sta plotter_x - //SEG1256 [671] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG1256 [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy y lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG1257 [672] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG1257 [672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz2_plus_vwuz3 lda plotter_x clc adc plotter_y @@ -16696,13 +16696,13 @@ bitmap_plot: { lda plotter_x+1 adc plotter_y+1 sta _0+1 - //SEG1258 [673] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuz3 + //SEG1258 [673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuz3 ldy #0 lda (_0),y ldy x ora bitmap_plot_bit,y sta _1 - //SEG1259 [674] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuz2 + //SEG1259 [674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuz2 lda _1 ldy #0 sta (_0),y @@ -16722,7 +16722,7 @@ bitmap_line_ydxi: { .label yd = $6a .label xd = $69 .label e = $6e - //SEG1263 [677] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1263 [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -16735,10 +16735,10 @@ bitmap_line_ydxi: { jmp b1 //SEG1268 bitmap_line_ydxi::@1 b1: - //SEG1269 [679] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 -- vbuz1=vbuz2 + //SEG1269 [679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1270 [680] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuz1=vbuz2 + //SEG1270 [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1271 [681] call bitmap_plot @@ -16750,9 +16750,9 @@ bitmap_line_ydxi: { jmp b4 //SEG1275 bitmap_line_ydxi::@4 b4: - //SEG1276 [682] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1276 [682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1277 [683] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1277 [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -16764,9 +16764,9 @@ bitmap_line_ydxi: { jmp b3 //SEG1279 bitmap_line_ydxi::@3 b3: - //SEG1280 [685] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1280 [685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1281 [686] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1281 [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -16779,7 +16779,7 @@ bitmap_line_ydxi: { jmp b2 //SEG1285 bitmap_line_ydxi::@2 b2: - //SEG1286 [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1286 [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy y1 iny sty _6 @@ -16803,7 +16803,7 @@ bitmap_line_xdyd: { .label xd = $70 .label yd = $6f .label e = $74 - //SEG1291 [692] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1291 [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -16816,10 +16816,10 @@ bitmap_line_xdyd: { jmp b1 //SEG1296 bitmap_line_xdyd::@1 b1: - //SEG1297 [694] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 -- vbuz1=vbuz2 + //SEG1297 [694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1298 [695] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuz1=vbuz2 + //SEG1298 [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1299 [696] call bitmap_plot @@ -16831,9 +16831,9 @@ bitmap_line_xdyd: { jmp b4 //SEG1303 bitmap_line_xdyd::@4 b4: - //SEG1304 [697] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 + //SEG1304 [697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1305 [698] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1305 [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -16845,9 +16845,9 @@ bitmap_line_xdyd: { jmp b3 //SEG1307 bitmap_line_xdyd::@3 b3: - //SEG1308 [700] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG1308 [700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG1309 [701] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1309 [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -16860,7 +16860,7 @@ bitmap_line_xdyd: { jmp b2 //SEG1313 bitmap_line_xdyd::@2 b2: - //SEG1314 [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1314 [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -16884,7 +16884,7 @@ bitmap_line_ydxd: { .label yd = $76 .label xd = $75 .label e = $7a - //SEG1319 [707] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1319 [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -16897,10 +16897,10 @@ bitmap_line_ydxd: { jmp b1 //SEG1324 bitmap_line_ydxd::@1 b1: - //SEG1325 [709] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 -- vbuz1=vbuz2 + //SEG1325 [709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG1326 [710] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuz1=vbuz2 + //SEG1326 [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG1327 [711] call bitmap_plot @@ -16912,9 +16912,9 @@ bitmap_line_ydxd: { jmp b4 //SEG1331 bitmap_line_ydxd::@4 b4: - //SEG1332 [712] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG1332 [712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG1333 [713] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1333 [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -16926,9 +16926,9 @@ bitmap_line_ydxd: { jmp b3 //SEG1335 bitmap_line_ydxd::@3 b3: - //SEG1336 [715] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuz1=_dec_vbuz1 + //SEG1336 [715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuz1=_dec_vbuz1 dec x - //SEG1337 [716] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1337 [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -16941,7 +16941,7 @@ bitmap_line_ydxd: { jmp b2 //SEG1341 bitmap_line_ydxd::@2 b2: - //SEG1342 [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1342 [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy y1 iny sty _6 @@ -16962,12 +16962,12 @@ bitmap_clear: { .label x = $7e .label y = $7b .label _3 = $10d - //SEG1347 [721] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG1347 [721] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG1348 [722] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 + //SEG1348 [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 lda _3 sta bitmap lda _3+1 @@ -17000,16 +17000,16 @@ bitmap_clear: { jmp b2 //SEG1362 bitmap_clear::@2 b2: - //SEG1363 [725] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1363 [725] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG1364 [726] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG1364 [726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG1365 [727] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 + //SEG1365 [727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG1366 [728] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -17018,7 +17018,7 @@ bitmap_clear: { jmp b3 //SEG1367 bitmap_clear::@3 b3: - //SEG1368 [729] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG1368 [729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG1369 [730] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17059,23 +17059,23 @@ bitmap_init: { jmp b1 //SEG1379 bitmap_init::@1 b1: - //SEG1380 [734] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuz1=vbuz2_band_vbuc1 + //SEG1380 [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuz1=vbuz2_band_vbuc1 lda #$f8 and x sta _0 - //SEG1381 [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1381 [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuz1=vbuz2 lda _0 ldy x sta bitmap_plot_xlo,y - //SEG1382 [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG1382 [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #>mode_stdbitmap.BITMAP ldy x sta bitmap_plot_xhi,y - //SEG1383 [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1383 [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 lda bits ldy x sta bitmap_plot_bit,y - //SEG1384 [738] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG1384 [738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr bits //SEG1385 [739] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuz1_neq_0_then_la1 lda bits @@ -17089,7 +17089,7 @@ bitmap_init: { jmp b2 //SEG1388 bitmap_init::@2 b2: - //SEG1389 [741] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 + //SEG1389 [741] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG1390 [742] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuz1_neq_0_then_la1 lda x @@ -17113,29 +17113,29 @@ bitmap_init: { jmp b3 //SEG1397 bitmap_init::@3 b3: - //SEG1398 [744] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG1398 [744] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _6 - //SEG1399 [745] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 + //SEG1399 [745] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 lda yoffs sta _7 - //SEG1400 [746] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1400 [746] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuz1=vbuz2_bor_vbuz3 lda _6 ora _7 sta _8 - //SEG1401 [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1401 [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuz1=vbuz2 lda _8 ldy y sta bitmap_plot_ylo,y - //SEG1402 [748] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 + //SEG1402 [748] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 lda yoffs+1 sta _9 - //SEG1403 [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1403 [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuz1=vbuz2 lda _9 ldy y sta bitmap_plot_yhi,y - //SEG1404 [750] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG1404 [750] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _10 @@ -17146,7 +17146,7 @@ bitmap_init: { jmp b5 //SEG1406 bitmap_init::@5 b5: - //SEG1407 [752] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG1407 [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -17161,7 +17161,7 @@ bitmap_init: { jmp b4 //SEG1410 bitmap_init::@4 b4: - //SEG1411 [754] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 + //SEG1411 [754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 inc y //SEG1412 [755] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuz1_neq_0_then_la1 lda y @@ -17211,37 +17211,37 @@ mode_mcchar: { .label ch = $89 .label cx = $86 .label cy = $85 - //SEG1420 [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1420 [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1421 [759] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1421 [759] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1422 [760] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1422 [760] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1423 [761] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1423 [761] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1424 [762] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1424 [762] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1425 [763] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1425 [763] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1426 [764] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1426 [764] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1427 [765] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG1427 [765] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL|VIC_MCM sta VIC_CONTROL2 - //SEG1428 [766] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1428 [766] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -17258,11 +17258,11 @@ mode_mcchar: { jmp b1 //SEG1433 mode_mcchar::@1 b1: - //SEG1434 [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG1434 [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda DTV_PALETTE_DEFAULT,y sta DTV_PALETTE,y - //SEG1435 [769] (byte) mode_mcchar::i#1 ? ++ (byte) mode_mcchar::i#2 -- vbuz1=_inc_vbuz1 + //SEG1435 [769] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG1436 [770] if((byte) mode_mcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_mcchar::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -17271,17 +17271,17 @@ mode_mcchar: { jmp b2 //SEG1437 mode_mcchar::@2 b2: - //SEG1438 [771] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1438 [771] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG1439 [772] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1439 [772] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL1 - //SEG1440 [773] *((const byte*) BGCOL2#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG1440 [773] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BGCOL2 - //SEG1441 [774] *((const byte*) BGCOL3#0) ? (const byte) BLUE#0 -- _deref_pbuc1=vbuc2 + //SEG1441 [774] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 -- _deref_pbuc1=vbuc2 lda #BLUE sta BGCOL3 //SEG1442 [775] phi from mode_mcchar::@2 to mode_mcchar::@3 [phi:mode_mcchar::@2->mode_mcchar::@3] @@ -17324,53 +17324,53 @@ mode_mcchar: { jmp b4 //SEG1459 mode_mcchar::@4 b4: - //SEG1460 [777] (byte~) mode_mcchar::$26 ? (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG1460 [777] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3 lda cx clc adc cy sta _26 - //SEG1461 [778] (byte~) mode_mcchar::$27 ? (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1461 [778] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and _26 sta _27 - //SEG1462 [779] *((byte*) mode_mcchar::col#2) ? (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuz2 + //SEG1462 [779] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuz2 lda _27 ldy #0 sta (col),y - //SEG1463 [780] (byte*) mode_mcchar::col#1 ? ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1463 [780] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1464 [781] (byte~) mode_mcchar::$28 ? (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1464 [781] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _28 - //SEG1465 [782] (byte~) mode_mcchar::$29 ? (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1465 [782] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _28 asl asl asl asl sta _29 - //SEG1466 [783] (byte~) mode_mcchar::$30 ? (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1466 [783] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _30 - //SEG1467 [784] (byte~) mode_mcchar::$31 ? (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1467 [784] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuz1=vbuz2_bor_vbuz3 lda _29 ora _30 sta _31 - //SEG1468 [785] *((byte*) mode_mcchar::ch#2) ? (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuz2 + //SEG1468 [785] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuz2 lda _31 ldy #0 sta (ch),y - //SEG1469 [786] (byte*) mode_mcchar::ch#1 ? ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1469 [786] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1470 [787] (byte) mode_mcchar::cx#1 ? ++ (byte) mode_mcchar::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1470 [787] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1471 [788] if((byte) mode_mcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_mcchar::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17379,7 +17379,7 @@ mode_mcchar: { jmp b5 //SEG1472 mode_mcchar::@5 b5: - //SEG1473 [789] (byte) mode_mcchar::cy#1 ? ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1473 [789] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1474 [790] if((byte) mode_mcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_mcchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -17431,37 +17431,37 @@ mode_ecmchar: { .label ch = $90 .label cx = $8d .label cy = $8c - //SEG1483 [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1483 [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1484 [795] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1484 [795] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1485 [796] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1485 [796] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1486 [797] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1486 [797] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1487 [798] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1487 [798] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1488 [799] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1488 [799] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1489 [800] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1489 [800] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|VIC_ECM|3 sta VIC_CONTROL - //SEG1490 [801] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1490 [801] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1491 [802] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1491 [802] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -17478,11 +17478,11 @@ mode_ecmchar: { jmp b1 //SEG1496 mode_ecmchar::@1 b1: - //SEG1497 [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG1497 [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda DTV_PALETTE_DEFAULT,y sta DTV_PALETTE,y - //SEG1498 [805] (byte) mode_ecmchar::i#1 ? ++ (byte) mode_ecmchar::i#2 -- vbuz1=_inc_vbuz1 + //SEG1498 [805] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG1499 [806] if((byte) mode_ecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_ecmchar::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -17491,20 +17491,20 @@ mode_ecmchar: { jmp b2 //SEG1500 mode_ecmchar::@2 b2: - //SEG1501 [807] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1501 [807] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG1502 [808] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1502 [808] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BGCOL1 - //SEG1503 [809] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG1503 [809] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL2 - //SEG1504 [810] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG1504 [810] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL3 - //SEG1505 [811] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) 6 -- _deref_pbuc1=vbuc2 + //SEG1505 [811] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) 6 -- _deref_pbuc1=vbuc2 lda #6 sta BGCOL4 //SEG1506 [812] phi from mode_ecmchar::@2 to mode_ecmchar::@3 [phi:mode_ecmchar::@2->mode_ecmchar::@3] @@ -17547,53 +17547,53 @@ mode_ecmchar: { jmp b4 //SEG1523 mode_ecmchar::@4 b4: - //SEG1524 [814] (byte~) mode_ecmchar::$26 ? (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG1524 [814] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3 lda cx clc adc cy sta _26 - //SEG1525 [815] (byte~) mode_ecmchar::$27 ? (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1525 [815] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and _26 sta _27 - //SEG1526 [816] *((byte*) mode_ecmchar::col#2) ? (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuz2 + //SEG1526 [816] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuz2 lda _27 ldy #0 sta (col),y - //SEG1527 [817] (byte*) mode_ecmchar::col#1 ? ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1527 [817] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1528 [818] (byte~) mode_ecmchar::$28 ? (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1528 [818] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _28 - //SEG1529 [819] (byte~) mode_ecmchar::$29 ? (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1529 [819] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _28 asl asl asl asl sta _29 - //SEG1530 [820] (byte~) mode_ecmchar::$30 ? (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1530 [820] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _30 - //SEG1531 [821] (byte~) mode_ecmchar::$31 ? (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1531 [821] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuz1=vbuz2_bor_vbuz3 lda _29 ora _30 sta _31 - //SEG1532 [822] *((byte*) mode_ecmchar::ch#2) ? (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuz2 + //SEG1532 [822] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuz2 lda _31 ldy #0 sta (ch),y - //SEG1533 [823] (byte*) mode_ecmchar::ch#1 ? ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1533 [823] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1534 [824] (byte) mode_ecmchar::cx#1 ? ++ (byte) mode_ecmchar::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1534 [824] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1535 [825] if((byte) mode_ecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_ecmchar::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17602,7 +17602,7 @@ mode_ecmchar: { jmp b5 //SEG1536 mode_ecmchar::@5 b5: - //SEG1537 [826] (byte) mode_ecmchar::cy#1 ? ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1537 [826] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1538 [827] if((byte) mode_ecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_ecmchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -17650,37 +17650,37 @@ mode_stdchar: { .label ch = $97 .label cx = $94 .label cy = $93 - //SEG1547 [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1547 [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1548 [832] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1548 [832] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1549 [833] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1549 [833] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1550 [834] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1550 [834] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1551 [835] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1551 [835] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1552 [836] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1552 [836] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1553 [837] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1553 [837] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1554 [838] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1554 [838] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1555 [839] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1555 [839] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -17697,11 +17697,11 @@ mode_stdchar: { jmp b1 //SEG1560 mode_stdchar::@1 b1: - //SEG1561 [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG1561 [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy i lda DTV_PALETTE_DEFAULT,y sta DTV_PALETTE,y - //SEG1562 [842] (byte) mode_stdchar::i#1 ? ++ (byte) mode_stdchar::i#2 -- vbuz1=_inc_vbuz1 + //SEG1562 [842] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG1563 [843] if((byte) mode_stdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdchar::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -17710,11 +17710,11 @@ mode_stdchar: { jmp b2 //SEG1564 mode_stdchar::@2 b2: - //SEG1565 [844] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1565 [844] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG1566 [845] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1566 [845] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL //SEG1567 [846] phi from mode_stdchar::@2 to mode_stdchar::@3 [phi:mode_stdchar::@2->mode_stdchar::@3] @@ -17757,53 +17757,53 @@ mode_stdchar: { jmp b4 //SEG1584 mode_stdchar::@4 b4: - //SEG1585 [848] (byte~) mode_stdchar::$25 ? (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG1585 [848] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuz1=vbuz2_plus_vbuz3 lda cx clc adc cy sta _25 - //SEG1586 [849] (byte~) mode_stdchar::$26 ? (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1586 [849] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and _25 sta _26 - //SEG1587 [850] *((byte*) mode_stdchar::col#2) ? (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuz2 + //SEG1587 [850] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuz2 lda _26 ldy #0 sta (col),y - //SEG1588 [851] (byte*) mode_stdchar::col#1 ? ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1588 [851] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1589 [852] (byte~) mode_stdchar::$27 ? (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1589 [852] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cy sta _27 - //SEG1590 [853] (byte~) mode_stdchar::$28 ? (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 + //SEG1590 [853] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_rol_4 lda _27 asl asl asl asl sta _28 - //SEG1591 [854] (byte~) mode_stdchar::$29 ? (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG1591 [854] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and cx sta _29 - //SEG1592 [855] (byte~) mode_stdchar::$30 ? (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuz1=vbuz2_bor_vbuz3 + //SEG1592 [855] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuz1=vbuz2_bor_vbuz3 lda _28 ora _29 sta _30 - //SEG1593 [856] *((byte*) mode_stdchar::ch#2) ? (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuz2 + //SEG1593 [856] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuz2 lda _30 ldy #0 sta (ch),y - //SEG1594 [857] (byte*) mode_stdchar::ch#1 ? ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1594 [857] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1595 [858] (byte) mode_stdchar::cx#1 ? ++ (byte) mode_stdchar::cx#2 -- vbuz1=_inc_vbuz1 + //SEG1595 [858] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2 -- vbuz1=_inc_vbuz1 inc cx //SEG1596 [859] if((byte) mode_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdchar::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -17812,7 +17812,7 @@ mode_stdchar: { jmp b5 //SEG1597 mode_stdchar::@5 b5: - //SEG1598 [860] (byte) mode_stdchar::cy#1 ? ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1598 [860] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1599 [861] if((byte) mode_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -17881,11 +17881,11 @@ print_str_lines: { jmp b2 //SEG1619 print_str_lines::@2 b2: - //SEG1620 [870] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#3) -- vbuz1=_deref_pbuz2 + //SEG1620 [870] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) -- vbuz1=_deref_pbuz2 ldy #0 lda (str),y sta ch - //SEG1621 [871] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1 + //SEG1621 [871] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -17897,11 +17897,11 @@ print_str_lines: { jmp b4 //SEG1623 print_str_lines::@4 b4: - //SEG1624 [873] *((byte*) print_char_cursor#17) ? (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuz2 + //SEG1624 [873] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG1625 [874] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1 + //SEG1625 [874] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -17926,7 +17926,7 @@ print_str_lines: { //SEG1633 [880] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln] print_ln_from_b5: jsr print_ln - //SEG1634 [879] (byte*~) print_char_cursor#103 ? (byte*) print_line_cursor#19 -- pbuz1=pbuz2 + //SEG1634 [879] (byte*~) print_char_cursor#103 ← (byte*) print_line_cursor#19 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -17948,7 +17948,7 @@ print_ln: { jmp b1 //SEG1642 print_ln::@1 b1: - //SEG1643 [882] (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1643 [882] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -17989,11 +17989,11 @@ print_cls: { jmp b1 //SEG1652 print_cls::@1 b1: - //SEG1653 [887] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG1653 [887] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG1654 [888] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG1654 [888] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -18036,315 +18036,315 @@ print_set_screen: { REGISTER UPLIFT POTENTIAL REGISTERS Equivalence Class zp ZP_BYTE:273 [ bitmap_init::$7 ] has ALU potential. -Statement [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [11] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [12] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [13] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [14] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [15] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [16] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [17] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [18] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] ) always clobbers reg byte a +Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [13] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [15] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [18] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ menu::i#2 menu::i#1 ] -Statement [24] *((byte*) menu::c#2) ? (const byte) LIGHT_GREEN#0 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a reg byte y +Statement [24] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a reg byte y Statement [26] if((byte*) menu::c#1!=(const byte*) COLS#0+(word/signed word/dword/signed dword) $3e8) goto menu::@2 [ menu::c#1 ] ( main:2::menu:9 [ menu::c#1 ] ) always clobbers reg byte a -Statement [27] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [28] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [119] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [120] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [121] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [122] *((const byte*) DTV_PLANEB_START_LO#0) ? <<(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [123] *((const byte*) DTV_PLANEB_START_MI#0) ? ><(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [124] *((const byte*) DTV_PLANEB_START_HI#0) ? <>(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [125] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [128] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [27] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [28] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [122] *((const byte*) DTV_PLANEB_START_LO#0) ← <<(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [123] *((const byte*) DTV_PLANEB_START_MI#0) ← ><(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [128] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a Statement [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word/dword/signed dword) $8000) goto mode_8bppchunkybmm::@5 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] -Statement [142] (word~) mode_8bppchunkybmm::$27 ? (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ) always clobbers reg byte a -Statement [143] (byte) mode_8bppchunkybmm::c#0 ? ((byte)) (word~) mode_8bppchunkybmm::$27 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ) always clobbers reg byte a -Statement [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ? (byte) mode_8bppchunkybmm::c#0 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ) always clobbers reg byte y +Statement [142] (word~) mode_8bppchunkybmm::$27 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ) always clobbers reg byte a +Statement [143] (byte) mode_8bppchunkybmm::c#0 ← ((byte)) (word~) mode_8bppchunkybmm::$27 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ) always clobbers reg byte a +Statement [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:9 [ mode_8bppchunkybmm::gfxbCpuBank#4 mode_8bppchunkybmm::gfxbCpuBank#7 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::gfxbCpuBank#2 ] Statement [147] if((word) mode_8bppchunkybmm::x#1!=(word/signed word/dword/signed dword) $140) goto mode_8bppchunkybmm::@4 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ) always clobbers reg byte a Statement [157] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto mode_ctrl::@2 [ dtv_control#114 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:12 [ dtv_control#114 dtv_control#145 dtv_control#17 ] -Statement [169] (byte) mode_ctrl::ctrl#1 ? (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 [ dtv_control#114 mode_ctrl::ctrl#1 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#1 ] ) always clobbers reg byte a -Statement [175] (byte) mode_ctrl::ctrl#2 ? (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 [ dtv_control#114 mode_ctrl::ctrl#2 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#2 ] ) always clobbers reg byte a -Statement [181] (byte) mode_ctrl::ctrl#3 ? (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 [ dtv_control#114 mode_ctrl::ctrl#3 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#3 ] ) always clobbers reg byte a -Statement [187] (byte) mode_ctrl::ctrl#4 ? (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#4 ] ) always clobbers reg byte a -Statement [193] (byte) mode_ctrl::ctrl#5 ? (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 [ dtv_control#114 mode_ctrl::ctrl#5 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#5 ] ) always clobbers reg byte a -Statement [199] (byte) mode_ctrl::ctrl#6 ? (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#6 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#6 ] ) always clobbers reg byte a -Statement [213] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:9::keyboard_key_pressed:35 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:43 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:50 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:57 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:64 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:71 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:78 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:85 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:92 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:99 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:106 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:113 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a +Statement [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 [ dtv_control#114 mode_ctrl::ctrl#1 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#1 ] ) always clobbers reg byte a +Statement [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 [ dtv_control#114 mode_ctrl::ctrl#2 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#2 ] ) always clobbers reg byte a +Statement [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 [ dtv_control#114 mode_ctrl::ctrl#3 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#3 ] ) always clobbers reg byte a +Statement [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#4 ] ) always clobbers reg byte a +Statement [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 [ dtv_control#114 mode_ctrl::ctrl#5 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#5 ] ) always clobbers reg byte a +Statement [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#6 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#6 ] ) always clobbers reg byte a +Statement [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:9::keyboard_key_pressed:35 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:43 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:50 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:57 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:64 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:71 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:78 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:85 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:92 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:99 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:106 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:113 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:204 [ keyboard_key_pressed::colidx#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:13 [ mode_ctrl::ctrl#14 mode_ctrl::ctrl#22 mode_ctrl::ctrl#6 mode_ctrl::ctrl#13 mode_ctrl::ctrl#5 mode_ctrl::ctrl#12 mode_ctrl::ctrl#4 mode_ctrl::ctrl#11 mode_ctrl::ctrl#3 mode_ctrl::ctrl#10 mode_ctrl::ctrl#2 mode_ctrl::ctrl#17 mode_ctrl::ctrl#1 mode_ctrl::ctrl#0 ] -Statement [220] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a -Statement [221] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a +Statement [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a -Statement [227] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [228] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [229] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [230] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [231] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [232] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [233] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [236] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [237] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [238] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [239] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [242] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [250] (byte~) mode_8bpppixelcell::$15 ? (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ) always clobbers reg byte a +Statement [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [230] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [236] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [242] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] -Statement [251] (byte~) mode_8bpppixelcell::$16 ? (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ) always clobbers reg byte a +Statement [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:212 [ mode_8bpppixelcell::$15 ] -Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ? (byte~) mode_8bpppixelcell::$17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ) always clobbers reg byte y +Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ay#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:18 [ mode_8bpppixelcell::ax#2 mode_8bpppixelcell::ax#1 ] -Statement [259] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [262] (byte) mode_8bpppixelcell::bits#0 ? *((byte*) mode_8bpppixelcell::chargen#2) [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ) always clobbers reg byte a reg byte y +Statement [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:21 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::ch#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:28 [ mode_8bpppixelcell::col#2 mode_8bpppixelcell::col#5 mode_8bpppixelcell::col#7 mode_8bpppixelcell::col#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:24 [ mode_8bpppixelcell::cr#6 mode_8bpppixelcell::cr#1 ] -Statement [269] *((byte*) mode_8bpppixelcell::gfxb#2) ? (byte) mode_8bpppixelcell::c#2 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ) always clobbers reg byte y +Statement [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:25 [ mode_8bpppixelcell::bits#2 mode_8bpppixelcell::bits#1 mode_8bpppixelcell::bits#0 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:29 [ mode_8bpppixelcell::cp#2 mode_8bpppixelcell::cp#1 ] -Statement [279] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [282] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [283] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [284] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [285] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [286] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [287] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [288] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [291] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [292] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [293] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [294] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [297] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [298] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [303] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [306] (byte~) mode_sixsfred::$17 ? (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ) always clobbers reg byte a +Statement [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [285] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [291] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [303] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ] -Statement [308] *((byte*) mode_sixsfred::col#2) ? (byte~) mode_sixsfred::$18 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ) always clobbers reg byte y +Statement [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:32 [ mode_sixsfred::cy#4 mode_sixsfred::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:33 [ mode_sixsfred::cx#2 mode_sixsfred::cx#1 ] -Statement [316] (byte~) mode_sixsfred::$21 ? (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ) always clobbers reg byte a +Statement [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] -Statement [318] *((byte*) mode_sixsfred::gfxa#2) ? *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:36 [ mode_sixsfred::ay#4 mode_sixsfred::ay#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:39 [ mode_sixsfred::ax#2 mode_sixsfred::ax#1 ] -Statement [326] *((byte*) mode_sixsfred::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:40 [ mode_sixsfred::by#4 mode_sixsfred::by#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:43 [ mode_sixsfred::bx#2 mode_sixsfred::bx#1 ] -Statement [335] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [336] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [337] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [338] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [339] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [340] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [341] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [344] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [345] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [346] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [347] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [350] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [351] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [356] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [357] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [358] *((const byte*) BGCOL2#0) ? (byte/word/signed word/dword/signed dword) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [362] (byte~) mode_twoplanebitmap::$17 ? (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ) always clobbers reg byte a +Statement [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [338] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [344] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [356] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [357] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [358] *((const byte*) BGCOL2#0) ← (byte/word/signed word/dword/signed dword) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] -Statement [363] (byte~) mode_twoplanebitmap::$18 ? (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ) always clobbers reg byte a +Statement [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:221 [ mode_twoplanebitmap::$17 ] -Statement [365] *((byte*) mode_twoplanebitmap::col#2) ? (byte~) mode_twoplanebitmap::$19 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ) always clobbers reg byte y +Statement [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:45 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:46 [ mode_twoplanebitmap::cx#2 mode_twoplanebitmap::cx#1 ] -Statement [375] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:49 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::ay#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:52 [ mode_twoplanebitmap::ax#2 mode_twoplanebitmap::ax#1 ] -Statement [384] *((byte*) mode_twoplanebitmap::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:53 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::by#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:56 [ mode_twoplanebitmap::bx#2 mode_twoplanebitmap::bx#1 ] -Statement [393] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [395] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [396] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [397] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [398] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [399] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [400] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [401] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [404] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [405] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [406] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [407] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [410] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [411] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [416] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [420] (byte~) mode_sixsfred2::$16 ? (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ) always clobbers reg byte a +Statement [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [398] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [404] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [416] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] -Statement [421] (byte~) mode_sixsfred2::$17 ? (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ) always clobbers reg byte a +Statement [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:226 [ mode_sixsfred2::$16 ] -Statement [423] *((byte*) mode_sixsfred2::col#2) ? (byte~) mode_sixsfred2::$18 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ) always clobbers reg byte y +Statement [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:58 [ mode_sixsfred2::cy#4 mode_sixsfred2::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:59 [ mode_sixsfred2::cx#2 mode_sixsfred2::cx#1 ] -Statement [431] (byte~) mode_sixsfred2::$21 ? (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ) always clobbers reg byte a +Statement [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] -Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ? *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:62 [ mode_sixsfred2::ay#4 mode_sixsfred2::ay#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:65 [ mode_sixsfred2::ax#2 mode_sixsfred2::ax#1 ] -Statement [441] *((byte*) mode_sixsfred2::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:66 [ mode_sixsfred2::by#4 mode_sixsfred2::by#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:69 [ mode_sixsfred2::bx#2 mode_sixsfred2::bx#1 ] -Statement [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [451] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [452] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [453] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [454] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [455] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [456] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [457] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [458] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [463] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [464] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [465] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [466] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [470] (byte~) mode_hicolmcchar::$27 ? (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ) always clobbers reg byte a +Statement [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [455] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [458] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [463] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [464] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [465] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [466] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] -Statement [471] (byte~) mode_hicolmcchar::$28 ? (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ) always clobbers reg byte a +Statement [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:232 [ mode_hicolmcchar::$27 ] -Statement [473] *((byte*) mode_hicolmcchar::col#2) ? (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ) always clobbers reg byte y +Statement [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:71 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:72 [ mode_hicolmcchar::cx#2 mode_hicolmcchar::cx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:234 [ mode_hicolmcchar::v#0 ] -Statement [475] *((byte*) mode_hicolmcchar::ch#2) ? (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ) always clobbers reg byte y -Statement [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [485] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [486] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [487] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [488] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [489] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [490] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [491] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [492] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [497] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [498] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [499] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [500] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [501] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [505] (byte~) mode_hicolecmchar::$27 ? (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ) always clobbers reg byte a +Statement [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ) always clobbers reg byte y +Statement [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [489] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [492] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [497] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [498] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [499] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [500] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [501] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] -Statement [506] (byte~) mode_hicolecmchar::$28 ? (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ) always clobbers reg byte a +Statement [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:236 [ mode_hicolecmchar::$27 ] -Statement [508] *((byte*) mode_hicolecmchar::col#2) ? (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ) always clobbers reg byte y +Statement [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:78 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:79 [ mode_hicolecmchar::cx#2 mode_hicolecmchar::cx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:238 [ mode_hicolecmchar::v#0 ] -Statement [510] *((byte*) mode_hicolecmchar::ch#2) ? (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ) always clobbers reg byte y -Statement [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [520] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [521] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [522] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [523] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [524] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [525] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [526] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [527] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [532] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [533] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [537] (byte~) mode_hicolstdchar::$26 ? (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ) always clobbers reg byte a +Statement [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ) always clobbers reg byte y +Statement [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [524] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [527] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [532] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [533] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] -Statement [538] (byte~) mode_hicolstdchar::$27 ? (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ) always clobbers reg byte a +Statement [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:240 [ mode_hicolstdchar::$26 ] -Statement [540] *((byte*) mode_hicolstdchar::col#2) ? (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ) always clobbers reg byte y +Statement [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:85 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:86 [ mode_hicolstdchar::cx#2 mode_hicolstdchar::cx#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:242 [ mode_hicolstdchar::v#0 ] -Statement [542] *((byte*) mode_hicolstdchar::ch#2) ? (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ) always clobbers reg byte y -Statement [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [552] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [553] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [554] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [555] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [556] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [557] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) [ mode_stdbitmap::i#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::i#2 ] ) always clobbers reg byte a +Statement [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ) always clobbers reg byte y +Statement [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [552] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [554] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [557] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) [ mode_stdbitmap::i#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:91 [ mode_stdbitmap::i#2 mode_stdbitmap::i#1 ] -Statement [562] *((const byte*) BGCOL#0) ? (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [563] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [566] (byte~) mode_stdbitmap::$22 ? (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ) always clobbers reg byte a +Statement [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] -Statement [568] (byte) mode_stdbitmap::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ) always clobbers reg byte a +Statement [568] (byte) mode_stdbitmap::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:244 [ mode_stdbitmap::col#0 ] -Statement [569] (byte~) mode_stdbitmap::$25 ? (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ) always clobbers reg byte a +Statement [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:245 [ mode_stdbitmap::col2#0 ] -Statement [571] *((byte*) mode_stdbitmap::ch#2) ? (byte~) mode_stdbitmap::$26 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ) always clobbers reg byte y +Statement [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:92 [ mode_stdbitmap::cy#4 mode_stdbitmap::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:93 [ mode_stdbitmap::cx#2 mode_stdbitmap::cx#1 ] -Statement [593] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a +Statement [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:248 [ bitmap_line::x0#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:249 [ bitmap_line::x1#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:250 [ bitmap_line::y0#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:251 [ bitmap_line::y1#0 ] -Statement [595] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a +Statement [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:252 [ bitmap_line::xd#2 ] -Statement [610] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a -Statement [624] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a -Statement [626] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a +Statement [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a +Statement [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a +Statement [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:255 [ bitmap_line::xd#1 ] -Statement [640] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a -Statement [655] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a +Statement [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a +Statement [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:100 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:101 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:99 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ] -Statement [661] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a -Statement [664] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a -Statement [670] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a +Statement [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a +Statement [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a +Statement [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:102 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:103 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:104 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] @@ -18366,9 +18366,9 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:119 [ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] -Statement [671] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a -Statement [672] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a -Statement [673] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y +Statement [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a +Statement [672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a +Statement [673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:96 [ mode_stdbitmap::l#2 mode_stdbitmap::l#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:97 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:98 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] @@ -18394,423 +18394,423 @@ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:119 [ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:120 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:121 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:122 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] -Statement [674] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y -Statement [677] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a -Statement [683] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a -Statement [686] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a -Statement [692] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a -Statement [698] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a -Statement [701] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a -Statement [707] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a -Statement [713] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a -Statement [716] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a -Statement [721] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [722] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [725] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y +Statement [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a +Statement [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a +Statement [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a +Statement [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a +Statement [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a +Statement [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a +Statement [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a +Statement [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a +Statement [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a +Statement [721] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [725] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:123 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:126 [ bitmap_clear::x#2 bitmap_clear::x#1 ] -Statement [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) mode_stdbitmap::BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:127 [ bitmap_init::x#2 bitmap_init::x#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:128 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] -Statement [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [752] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:129 [ bitmap_init::y#2 bitmap_init::y#1 ] -Statement [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [759] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [760] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [761] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [762] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [763] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [764] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [765] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [766] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) [ mode_mcchar::i#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::i#2 ] ) always clobbers reg byte a +Statement [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [759] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [760] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [761] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [762] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [763] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [764] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [765] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [766] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) [ mode_mcchar::i#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:132 [ mode_mcchar::i#2 mode_mcchar::i#1 ] -Statement [771] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [772] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [773] *((const byte*) BGCOL2#0) ? (const byte) GREEN#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [774] *((const byte*) BGCOL3#0) ? (const byte) BLUE#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [777] (byte~) mode_mcchar::$26 ? (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ) always clobbers reg byte a +Statement [771] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [772] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [773] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [774] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [777] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] -Statement [779] *((byte*) mode_mcchar::col#2) ? (byte~) mode_mcchar::$27 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y +Statement [779] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:133 [ mode_mcchar::cy#4 mode_mcchar::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:134 [ mode_mcchar::cx#2 mode_mcchar::cx#1 ] -Statement [781] (byte~) mode_mcchar::$28 ? (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ) always clobbers reg byte a -Statement [782] (byte~) mode_mcchar::$29 ? (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ) always clobbers reg byte a -Statement [783] (byte~) mode_mcchar::$30 ? (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ) always clobbers reg byte a +Statement [781] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ) always clobbers reg byte a +Statement [782] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ) always clobbers reg byte a +Statement [783] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:280 [ mode_mcchar::$29 ] -Statement [785] *((byte*) mode_mcchar::ch#2) ? (byte~) mode_mcchar::$31 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y -Statement [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [795] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [796] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [797] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [798] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [799] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [800] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [801] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [802] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) [ mode_ecmchar::i#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::i#2 ] ) always clobbers reg byte a +Statement [785] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y +Statement [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [795] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [796] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [797] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [798] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [799] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [800] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [801] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [802] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) [ mode_ecmchar::i#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:139 [ mode_ecmchar::i#2 mode_ecmchar::i#1 ] -Statement [807] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [808] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [809] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [810] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [811] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) 6 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [814] (byte~) mode_ecmchar::$26 ? (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ) always clobbers reg byte a +Statement [807] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [808] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [809] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [810] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [811] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) 6 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [814] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] -Statement [816] *((byte*) mode_ecmchar::col#2) ? (byte~) mode_ecmchar::$27 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y +Statement [816] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:140 [ mode_ecmchar::cy#4 mode_ecmchar::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:141 [ mode_ecmchar::cx#2 mode_ecmchar::cx#1 ] -Statement [818] (byte~) mode_ecmchar::$28 ? (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ) always clobbers reg byte a -Statement [819] (byte~) mode_ecmchar::$29 ? (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ) always clobbers reg byte a -Statement [820] (byte~) mode_ecmchar::$30 ? (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ) always clobbers reg byte a +Statement [818] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ) always clobbers reg byte a +Statement [819] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ) always clobbers reg byte a +Statement [820] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:286 [ mode_ecmchar::$29 ] -Statement [822] *((byte*) mode_ecmchar::ch#2) ? (byte~) mode_ecmchar::$31 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y -Statement [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [832] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [833] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [834] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [835] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [836] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [837] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [838] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [839] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) [ mode_stdchar::i#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::i#2 ] ) always clobbers reg byte a +Statement [822] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y +Statement [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [832] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [833] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [834] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [835] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [836] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [837] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [838] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [839] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) [ mode_stdchar::i#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:146 [ mode_stdchar::i#2 mode_stdchar::i#1 ] -Statement [844] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [845] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [848] (byte~) mode_stdchar::$25 ? (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ) always clobbers reg byte a +Statement [844] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [845] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [848] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] -Statement [850] *((byte*) mode_stdchar::col#2) ? (byte~) mode_stdchar::$26 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y +Statement [850] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:147 [ mode_stdchar::cy#4 mode_stdchar::cy#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:148 [ mode_stdchar::cx#2 mode_stdchar::cx#1 ] -Statement [852] (byte~) mode_stdchar::$27 ? (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ) always clobbers reg byte a -Statement [853] (byte~) mode_stdchar::$28 ? (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ) always clobbers reg byte a -Statement [854] (byte~) mode_stdchar::$29 ? (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ) always clobbers reg byte a +Statement [852] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ) always clobbers reg byte a +Statement [853] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ) always clobbers reg byte a +Statement [854] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:292 [ mode_stdchar::$28 ] -Statement [856] *((byte*) mode_stdchar::ch#2) ? (byte~) mode_stdchar::$30 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y +Statement [856] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y Statement [867] if(*((byte*) print_str_lines::str#2)!=(byte) '@') goto print_str_lines::@2 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ) always clobbers reg byte a reg byte y -Statement [870] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y -Statement [873] *((byte*) print_char_cursor#17) ? (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte y +Statement [870] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y +Statement [873] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:295 [ print_str_lines::ch#0 ] -Statement [879] (byte*~) print_char_cursor#103 ? (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ) always clobbers reg byte a -Statement [882] (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:878 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a +Statement [879] (byte*~) print_char_cursor#103 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ) always clobbers reg byte a +Statement [882] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:878 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a Statement [883] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:878 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a -Statement [887] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [887] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [889] if((byte*) print_cls::sc#1!=(const byte*) menu::SCREEN#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [11] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [12] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [13] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [14] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [15] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [16] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [17] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [18] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] ) always clobbers reg byte a -Statement [24] *((byte*) menu::c#2) ? (const byte) LIGHT_GREEN#0 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a reg byte y +Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [13] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [15] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [18] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) [ menu::i#2 ] ( main:2::menu:9 [ menu::i#2 ] ) always clobbers reg byte a +Statement [24] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 [ menu::c#2 ] ( main:2::menu:9 [ menu::c#2 ] ) always clobbers reg byte a reg byte y Statement [26] if((byte*) menu::c#1!=(const byte*) COLS#0+(word/signed word/dword/signed dword) $3e8) goto menu::@2 [ menu::c#1 ] ( main:2::menu:9 [ menu::c#1 ] ) always clobbers reg byte a -Statement [27] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [28] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a -Statement [119] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [120] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [121] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [122] *((const byte*) DTV_PLANEB_START_LO#0) ? <<(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [123] *((const byte*) DTV_PLANEB_START_MI#0) ? ><(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [124] *((const byte*) DTV_PLANEB_START_HI#0) ? <>(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [125] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a -Statement [128] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [27] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [28] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9 [ ] ) always clobbers reg byte a +Statement [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [122] *((const byte*) DTV_PLANEB_START_LO#0) ← <<(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [123] *((const byte*) DTV_PLANEB_START_MI#0) ← ><(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 8 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a +Statement [128] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ ] ) always clobbers reg byte a Statement [137] if((byte*) mode_8bppchunkybmm::gfxb#3!=(word/dword/signed dword) $8000) goto mode_8bppchunkybmm::@5 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#3 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxbCpuBank#4 ] ) always clobbers reg byte a -Statement [142] (word~) mode_8bppchunkybmm::$27 ? (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ) always clobbers reg byte a -Statement [143] (byte) mode_8bppchunkybmm::c#0 ? ((byte)) (word~) mode_8bppchunkybmm::$27 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ) always clobbers reg byte a -Statement [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ? (byte) mode_8bppchunkybmm::c#0 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ) always clobbers reg byte y +Statement [142] (word~) mode_8bppchunkybmm::$27 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::$27 ] ) always clobbers reg byte a +Statement [143] (byte) mode_8bppchunkybmm::c#0 ← ((byte)) (word~) mode_8bppchunkybmm::$27 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 mode_8bppchunkybmm::c#0 ] ) always clobbers reg byte a +Statement [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#2 mode_8bppchunkybmm::gfxb#4 ] ) always clobbers reg byte y Statement [147] if((word) mode_8bppchunkybmm::x#1!=(word/signed word/dword/signed dword) $140) goto mode_8bppchunkybmm::@4 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ( main:2::menu:9::mode_8bppchunkybmm:118 [ mode_8bppchunkybmm::y#6 mode_8bppchunkybmm::gfxb#1 mode_8bppchunkybmm::gfxbCpuBank#8 mode_8bppchunkybmm::x#1 ] ) always clobbers reg byte a Statement [157] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto mode_ctrl::@2 [ dtv_control#114 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 ] ) always clobbers reg byte a -Statement [169] (byte) mode_ctrl::ctrl#1 ? (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 [ dtv_control#114 mode_ctrl::ctrl#1 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#1 ] ) always clobbers reg byte a -Statement [175] (byte) mode_ctrl::ctrl#2 ? (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 [ dtv_control#114 mode_ctrl::ctrl#2 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#2 ] ) always clobbers reg byte a -Statement [181] (byte) mode_ctrl::ctrl#3 ? (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 [ dtv_control#114 mode_ctrl::ctrl#3 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#3 ] ) always clobbers reg byte a -Statement [187] (byte) mode_ctrl::ctrl#4 ? (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#4 ] ) always clobbers reg byte a -Statement [193] (byte) mode_ctrl::ctrl#5 ? (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 [ dtv_control#114 mode_ctrl::ctrl#5 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#5 ] ) always clobbers reg byte a -Statement [199] (byte) mode_ctrl::ctrl#6 ? (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#6 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#6 ] ) always clobbers reg byte a -Statement [213] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:9::keyboard_key_pressed:35 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:43 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:50 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:57 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:64 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:71 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:78 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:85 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:92 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:99 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:106 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:113 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a -Statement [220] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a -Statement [221] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 [ dtv_control#114 mode_ctrl::ctrl#1 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#1 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#1 ] ) always clobbers reg byte a +Statement [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 [ dtv_control#114 mode_ctrl::ctrl#2 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#2 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#2 ] ) always clobbers reg byte a +Statement [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 [ dtv_control#114 mode_ctrl::ctrl#3 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#3 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#3 ] ) always clobbers reg byte a +Statement [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#4 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#4 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#4 ] ) always clobbers reg byte a +Statement [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 [ dtv_control#114 mode_ctrl::ctrl#5 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#5 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#5 ] ) always clobbers reg byte a +Statement [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 [ dtv_control#114 mode_ctrl::ctrl#6 ] ( main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829 [ dtv_control#114 mode_ctrl::ctrl#6 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863 [ dtv_control#114 mode_ctrl::ctrl#6 ] ) always clobbers reg byte a +Statement [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:9::keyboard_key_pressed:35 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:43 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:50 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:57 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:64 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:71 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:78 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:85 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:92 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:99 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:106 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::keyboard_key_pressed:113 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a +Statement [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a +Statement [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:9::keyboard_key_pressed:35::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:43::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:50::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:57::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:64::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:71::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:78::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:85::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:92::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:99::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:106::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::keyboard_key_pressed:113::keyboard_matrix_read:215 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:159::keyboard_matrix_read:215 [ dtv_control#114 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:165::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#0 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:171::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#17 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:177::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#10 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:183::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#11 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:189::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#12 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:195::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#13 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bppchunkybmm:118::mode_ctrl:153::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_8bpppixelcell:111::mode_ctrl:280::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred:104::mode_ctrl:333::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_twoplanebitmap:97::mode_ctrl:391::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_sixsfred2:90::mode_ctrl:448::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolmcchar:83::mode_ctrl:482::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolecmchar:76::mode_ctrl:517::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_hicolstdchar:69::mode_ctrl:549::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdbitmap:62::mode_ctrl:590::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_mcchar:55::mode_ctrl:792::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_ecmchar:48::mode_ctrl:829::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:9::mode_stdchar:40::mode_ctrl:863::keyboard_key_pressed:201::keyboard_matrix_read:215 [ dtv_control#114 mode_ctrl::ctrl#22 keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a Statement asm { .byte$32,$dd lda$ff .byte$32,$00 } always clobbers reg byte a -Statement [227] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [228] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [229] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [230] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [231] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [232] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [233] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [236] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [237] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [238] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [239] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [242] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [249] (byte~) mode_8bpppixelcell::$14 ? (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$14 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$14 ] ) always clobbers reg byte a -Statement [250] (byte~) mode_8bpppixelcell::$15 ? (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ) always clobbers reg byte a -Statement [251] (byte~) mode_8bpppixelcell::$16 ? (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ) always clobbers reg byte a -Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ? (byte~) mode_8bpppixelcell::$17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ) always clobbers reg byte y -Statement [259] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [262] (byte) mode_8bpppixelcell::bits#0 ? *((byte*) mode_8bpppixelcell::chargen#2) [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ) always clobbers reg byte a reg byte y -Statement [269] *((byte*) mode_8bpppixelcell::gfxb#2) ? (byte) mode_8bpppixelcell::c#2 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ) always clobbers reg byte y -Statement [279] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a -Statement [282] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [283] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [284] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [285] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [286] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [287] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [288] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [291] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [292] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [293] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [294] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [297] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [298] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [303] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a -Statement [306] (byte~) mode_sixsfred::$17 ? (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ) always clobbers reg byte a -Statement [308] *((byte*) mode_sixsfred::col#2) ? (byte~) mode_sixsfred::$18 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ) always clobbers reg byte y -Statement [316] (byte~) mode_sixsfred::$21 ? (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ) always clobbers reg byte a -Statement [318] *((byte*) mode_sixsfred::gfxa#2) ? *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [326] *((byte*) mode_sixsfred::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ) always clobbers reg byte a reg byte y -Statement [335] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [336] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [337] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [338] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [339] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [340] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [341] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [344] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [345] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [346] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [347] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [350] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [351] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [356] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [357] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [358] *((const byte*) BGCOL2#0) ? (byte/word/signed word/dword/signed dword) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a -Statement [361] (byte~) mode_twoplanebitmap::$16 ? (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$16 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$16 ] ) always clobbers reg byte a -Statement [362] (byte~) mode_twoplanebitmap::$17 ? (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ) always clobbers reg byte a -Statement [363] (byte~) mode_twoplanebitmap::$18 ? (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ) always clobbers reg byte a -Statement [365] *((byte*) mode_twoplanebitmap::col#2) ? (byte~) mode_twoplanebitmap::$19 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ) always clobbers reg byte y -Statement [373] (byte~) mode_twoplanebitmap::$22 ? (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$22 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$22 ] ) always clobbers reg byte a -Statement [375] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [384] *((byte*) mode_twoplanebitmap::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ) always clobbers reg byte a reg byte y -Statement [393] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [395] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [396] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [397] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [398] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [399] *((const byte*) DTV_PLANEA_START_MI#0) ? >(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [400] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [401] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [404] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [405] *((const byte*) DTV_PLANEB_START_MI#0) ? >(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [406] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [407] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [410] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [411] *((const byte*) DTV_COLOR_BANK_HI#0) ? >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [416] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a -Statement [419] (byte~) mode_sixsfred2::$15 ? (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$15 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$15 ] ) always clobbers reg byte a -Statement [420] (byte~) mode_sixsfred2::$16 ? (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ) always clobbers reg byte a -Statement [421] (byte~) mode_sixsfred2::$17 ? (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ) always clobbers reg byte a -Statement [423] *((byte*) mode_sixsfred2::col#2) ? (byte~) mode_sixsfred2::$18 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ) always clobbers reg byte y -Statement [431] (byte~) mode_sixsfred2::$21 ? (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ) always clobbers reg byte a -Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ? *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ) always clobbers reg byte a reg byte y -Statement [441] *((byte*) mode_sixsfred2::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ) always clobbers reg byte a reg byte y -Statement [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [451] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [452] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [453] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [454] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [455] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [456] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [457] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [458] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [463] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [464] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [465] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [466] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a -Statement [469] (byte~) mode_hicolmcchar::$26 ? (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$26 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$26 ] ) always clobbers reg byte a -Statement [470] (byte~) mode_hicolmcchar::$27 ? (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ) always clobbers reg byte a -Statement [471] (byte~) mode_hicolmcchar::$28 ? (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ) always clobbers reg byte a -Statement [473] *((byte*) mode_hicolmcchar::col#2) ? (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ) always clobbers reg byte y -Statement [475] *((byte*) mode_hicolmcchar::ch#2) ? (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ) always clobbers reg byte y -Statement [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [485] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [486] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [487] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [488] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [489] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [490] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [491] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [492] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [497] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [498] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [499] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [500] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [501] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a -Statement [504] (byte~) mode_hicolecmchar::$26 ? (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$26 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$26 ] ) always clobbers reg byte a -Statement [505] (byte~) mode_hicolecmchar::$27 ? (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ) always clobbers reg byte a -Statement [506] (byte~) mode_hicolecmchar::$28 ? (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ) always clobbers reg byte a -Statement [508] *((byte*) mode_hicolecmchar::col#2) ? (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ) always clobbers reg byte y -Statement [510] *((byte*) mode_hicolecmchar::ch#2) ? (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ) always clobbers reg byte y -Statement [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [520] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [521] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [522] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [523] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [524] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [525] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [526] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [527] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [532] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [533] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a -Statement [536] (byte~) mode_hicolstdchar::$25 ? (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$25 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$25 ] ) always clobbers reg byte a -Statement [537] (byte~) mode_hicolstdchar::$26 ? (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ) always clobbers reg byte a -Statement [538] (byte~) mode_hicolstdchar::$27 ? (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ) always clobbers reg byte a -Statement [540] *((byte*) mode_hicolstdchar::col#2) ? (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ) always clobbers reg byte y -Statement [542] *((byte*) mode_hicolstdchar::ch#2) ? (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ) always clobbers reg byte y -Statement [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [552] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [553] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [554] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [555] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [556] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [557] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) [ mode_stdbitmap::i#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::i#2 ] ) always clobbers reg byte a -Statement [562] *((const byte*) BGCOL#0) ? (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [563] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a -Statement [566] (byte~) mode_stdbitmap::$22 ? (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ) always clobbers reg byte a -Statement [568] (byte) mode_stdbitmap::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ) always clobbers reg byte a -Statement [569] (byte~) mode_stdbitmap::$25 ? (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ) always clobbers reg byte a -Statement [571] *((byte*) mode_stdbitmap::ch#2) ? (byte~) mode_stdbitmap::$26 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ) always clobbers reg byte y -Statement [593] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a -Statement [595] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a -Statement [610] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a -Statement [624] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a -Statement [626] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a -Statement [640] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a -Statement [655] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a -Statement [661] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a -Statement [664] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a -Statement [670] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a -Statement [671] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a -Statement [672] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a -Statement [673] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y -Statement [674] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y -Statement [677] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a -Statement [683] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a -Statement [686] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a -Statement [692] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a -Statement [698] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a -Statement [701] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a -Statement [707] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a -Statement [713] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a -Statement [716] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a -Statement [721] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [722] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [725] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y -Statement [734] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ) always clobbers reg byte a -Statement [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) mode_stdbitmap::BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [744] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ) always clobbers reg byte a -Statement [750] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ) always clobbers reg byte a -Statement [752] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a -Statement [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [759] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [760] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [761] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [762] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [763] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [764] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [765] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [766] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) [ mode_mcchar::i#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::i#2 ] ) always clobbers reg byte a -Statement [771] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [772] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [773] *((const byte*) BGCOL2#0) ? (const byte) GREEN#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [774] *((const byte*) BGCOL3#0) ? (const byte) BLUE#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a -Statement [777] (byte~) mode_mcchar::$26 ? (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ) always clobbers reg byte a -Statement [779] *((byte*) mode_mcchar::col#2) ? (byte~) mode_mcchar::$27 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y -Statement [781] (byte~) mode_mcchar::$28 ? (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ) always clobbers reg byte a -Statement [782] (byte~) mode_mcchar::$29 ? (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ) always clobbers reg byte a -Statement [783] (byte~) mode_mcchar::$30 ? (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ) always clobbers reg byte a -Statement [785] *((byte*) mode_mcchar::ch#2) ? (byte~) mode_mcchar::$31 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y -Statement [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [795] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [796] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [797] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [798] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [799] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [800] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [801] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [802] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) [ mode_ecmchar::i#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::i#2 ] ) always clobbers reg byte a -Statement [807] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [808] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [809] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [810] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [811] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) 6 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a -Statement [814] (byte~) mode_ecmchar::$26 ? (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ) always clobbers reg byte a -Statement [816] *((byte*) mode_ecmchar::col#2) ? (byte~) mode_ecmchar::$27 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y -Statement [818] (byte~) mode_ecmchar::$28 ? (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ) always clobbers reg byte a -Statement [819] (byte~) mode_ecmchar::$29 ? (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ) always clobbers reg byte a -Statement [820] (byte~) mode_ecmchar::$30 ? (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ) always clobbers reg byte a -Statement [822] *((byte*) mode_ecmchar::ch#2) ? (byte~) mode_ecmchar::$31 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y -Statement [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [832] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [833] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [834] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [835] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [836] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [837] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [838] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [839] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) [ mode_stdchar::i#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::i#2 ] ) always clobbers reg byte a -Statement [844] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [845] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a -Statement [848] (byte~) mode_stdchar::$25 ? (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ) always clobbers reg byte a -Statement [850] *((byte*) mode_stdchar::col#2) ? (byte~) mode_stdchar::$26 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y -Statement [852] (byte~) mode_stdchar::$27 ? (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ) always clobbers reg byte a -Statement [853] (byte~) mode_stdchar::$28 ? (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ) always clobbers reg byte a -Statement [854] (byte~) mode_stdchar::$29 ? (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ) always clobbers reg byte a -Statement [856] *((byte*) mode_stdchar::ch#2) ? (byte~) mode_stdchar::$30 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y +Statement [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [230] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [236] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [242] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$14 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$14 ] ) always clobbers reg byte a +Statement [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 ] ) always clobbers reg byte a +Statement [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 mode_8bpppixelcell::$15 mode_8bpppixelcell::$16 ] ) always clobbers reg byte a +Statement [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ay#4 mode_8bpppixelcell::ax#2 mode_8bpppixelcell::gfxa#2 ] ) always clobbers reg byte y +Statement [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#2 mode_8bpppixelcell::gfxb#5 mode_8bpppixelcell::col#5 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#0 ] ) always clobbers reg byte a reg byte y +Statement [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ( main:2::menu:9::mode_8bpppixelcell:111 [ mode_8bpppixelcell::ch#8 mode_8bpppixelcell::chargen#1 mode_8bpppixelcell::cr#6 mode_8bpppixelcell::bits#2 mode_8bpppixelcell::gfxb#2 mode_8bpppixelcell::col#2 mode_8bpppixelcell::cp#2 ] ) always clobbers reg byte y +Statement [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2::menu:9::mode_8bpppixelcell:111 [ ] ) always clobbers reg byte a +Statement [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [285] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [291] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [303] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred:104 [ ] ) always clobbers reg byte a +Statement [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 mode_sixsfred::$17 ] ) always clobbers reg byte a +Statement [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::cy#4 mode_sixsfred::cx#2 mode_sixsfred::col#2 ] ) always clobbers reg byte y +Statement [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 mode_sixsfred::$21 ] ) always clobbers reg byte a +Statement [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::ay#4 mode_sixsfred::gfxa#2 mode_sixsfred::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ( main:2::menu:9::mode_sixsfred:104 [ mode_sixsfred::by#4 mode_sixsfred::gfxb#2 mode_sixsfred::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [338] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [344] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [356] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [357] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $70 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [358] *((const byte*) BGCOL2#0) ← (byte/word/signed word/dword/signed dword) $d4 [ ] ( main:2::menu:9::mode_twoplanebitmap:97 [ ] ) always clobbers reg byte a +Statement [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$16 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$16 ] ) always clobbers reg byte a +Statement [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 ] ) always clobbers reg byte a +Statement [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 mode_twoplanebitmap::$17 mode_twoplanebitmap::$18 ] ) always clobbers reg byte a +Statement [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::cy#4 mode_twoplanebitmap::cx#2 mode_twoplanebitmap::col#2 ] ) always clobbers reg byte y +Statement [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$22 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 mode_twoplanebitmap::$22 ] ) always clobbers reg byte a +Statement [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::by#4 mode_twoplanebitmap::gfxb#2 mode_twoplanebitmap::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ( main:2::menu:9::mode_twoplanebitmap:97 [ mode_twoplanebitmap::ay#5 mode_twoplanebitmap::gfxa#3 mode_twoplanebitmap::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [398] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [404] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [416] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_sixsfred2:90 [ ] ) always clobbers reg byte a +Statement [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$15 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$15 ] ) always clobbers reg byte a +Statement [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 ] ) always clobbers reg byte a +Statement [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 mode_sixsfred2::$16 mode_sixsfred2::$17 ] ) always clobbers reg byte a +Statement [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::cy#4 mode_sixsfred2::cx#2 mode_sixsfred2::col#2 ] ) always clobbers reg byte y +Statement [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 mode_sixsfred2::$21 ] ) always clobbers reg byte a +Statement [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::ay#4 mode_sixsfred2::gfxa#2 mode_sixsfred2::ax#2 ] ) always clobbers reg byte a reg byte y +Statement [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ( main:2::menu:9::mode_sixsfred2:90 [ mode_sixsfred2::by#4 mode_sixsfred2::gfxb#2 mode_sixsfred2::bx#2 ] ) always clobbers reg byte a reg byte y +Statement [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [455] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [458] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [463] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [464] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [465] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [466] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolmcchar:83 [ ] ) always clobbers reg byte a +Statement [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$26 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$26 ] ) always clobbers reg byte a +Statement [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 ] ) always clobbers reg byte a +Statement [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::$27 mode_hicolmcchar::$28 ] ) always clobbers reg byte a +Statement [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::cx#2 mode_hicolmcchar::col#2 mode_hicolmcchar::ch#2 mode_hicolmcchar::v#0 ] ) always clobbers reg byte y +Statement [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ( main:2::menu:9::mode_hicolmcchar:83 [ mode_hicolmcchar::cy#4 mode_hicolmcchar::col#1 mode_hicolmcchar::cx#2 mode_hicolmcchar::ch#2 ] ) always clobbers reg byte y +Statement [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [489] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [492] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [497] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [498] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [499] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [500] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [501] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) $5c [ ] ( main:2::menu:9::mode_hicolecmchar:76 [ ] ) always clobbers reg byte a +Statement [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$26 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$26 ] ) always clobbers reg byte a +Statement [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 ] ) always clobbers reg byte a +Statement [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::$27 mode_hicolecmchar::$28 ] ) always clobbers reg byte a +Statement [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::cx#2 mode_hicolecmchar::col#2 mode_hicolecmchar::ch#2 mode_hicolecmchar::v#0 ] ) always clobbers reg byte y +Statement [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ( main:2::menu:9::mode_hicolecmchar:76 [ mode_hicolecmchar::cy#4 mode_hicolecmchar::col#1 mode_hicolecmchar::cx#2 mode_hicolecmchar::ch#2 ] ) always clobbers reg byte y +Statement [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [524] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [527] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [532] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [533] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_hicolstdchar:69 [ ] ) always clobbers reg byte a +Statement [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$25 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$25 ] ) always clobbers reg byte a +Statement [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 ] ) always clobbers reg byte a +Statement [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::$26 mode_hicolstdchar::$27 ] ) always clobbers reg byte a +Statement [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::cx#2 mode_hicolstdchar::col#2 mode_hicolstdchar::ch#2 mode_hicolstdchar::v#0 ] ) always clobbers reg byte y +Statement [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ( main:2::menu:9::mode_hicolstdchar:69 [ mode_hicolstdchar::cy#4 mode_hicolstdchar::col#1 mode_hicolstdchar::cx#2 mode_hicolstdchar::ch#2 ] ) always clobbers reg byte y +Statement [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [552] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [554] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [557] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) [ mode_stdbitmap::i#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::i#2 ] ) always clobbers reg byte a +Statement [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_stdbitmap:62 [ ] ) always clobbers reg byte a +Statement [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::$22 ] ) always clobbers reg byte a +Statement [568] (byte) mode_stdbitmap::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col#0 mode_stdbitmap::col2#0 ] ) always clobbers reg byte a +Statement [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 mode_stdbitmap::col2#0 mode_stdbitmap::$25 ] ) always clobbers reg byte a +Statement [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ( main:2::menu:9::mode_stdbitmap:62 [ mode_stdbitmap::cy#4 mode_stdbitmap::cx#2 mode_stdbitmap::ch#2 ] ) always clobbers reg byte y +Statement [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a +Statement [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a +Statement [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a +Statement [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a +Statement [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a +Statement [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586 [ mode_stdbitmap::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a +Statement [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a +Statement [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a +Statement [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a +Statement [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a +Statement [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a +Statement [672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a +Statement [673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y +Statement [674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:609::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyi:653::bitmap_plot:659 [ mode_stdbitmap::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647::bitmap_plot:681 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639::bitmap_plot:696 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633::bitmap_plot:711 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y +Statement [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a +Statement [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a +Statement [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:602 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxi:647 [ mode_stdbitmap::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a +Statement [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a +Statement [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a +Statement [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:623 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_xdyd:639 [ mode_stdbitmap::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a +Statement [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a +Statement [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a +Statement [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:617 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::menu:9::mode_stdbitmap:62::bitmap_line:586::bitmap_line_ydxd:633 [ mode_stdbitmap::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a +Statement [721] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [725] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_clear:580 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ) always clobbers reg byte a +Statement [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [744] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ) always clobbers reg byte a +Statement [750] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ) always clobbers reg byte a +Statement [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::menu:9::mode_stdbitmap:62::bitmap_init:578 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [759] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [760] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [761] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [762] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [763] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [764] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [765] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [766] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) [ mode_mcchar::i#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::i#2 ] ) always clobbers reg byte a +Statement [771] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [772] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [773] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [774] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 [ ] ( main:2::menu:9::mode_mcchar:55 [ ] ) always clobbers reg byte a +Statement [777] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 mode_mcchar::$26 ] ) always clobbers reg byte a +Statement [779] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::cx#2 mode_mcchar::col#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y +Statement [781] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$28 ] ) always clobbers reg byte a +Statement [782] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 ] ) always clobbers reg byte a +Statement [783] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 mode_mcchar::$29 mode_mcchar::$30 ] ) always clobbers reg byte a +Statement [785] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ( main:2::menu:9::mode_mcchar:55 [ mode_mcchar::cy#4 mode_mcchar::col#1 mode_mcchar::cx#2 mode_mcchar::ch#2 ] ) always clobbers reg byte y +Statement [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [795] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [796] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [797] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [798] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [799] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [800] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [801] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [802] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) [ mode_ecmchar::i#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::i#2 ] ) always clobbers reg byte a +Statement [807] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [808] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [809] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [810] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [811] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) 6 [ ] ( main:2::menu:9::mode_ecmchar:48 [ ] ) always clobbers reg byte a +Statement [814] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 mode_ecmchar::$26 ] ) always clobbers reg byte a +Statement [816] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::cx#2 mode_ecmchar::col#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y +Statement [818] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$28 ] ) always clobbers reg byte a +Statement [819] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 ] ) always clobbers reg byte a +Statement [820] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 mode_ecmchar::$29 mode_ecmchar::$30 ] ) always clobbers reg byte a +Statement [822] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ( main:2::menu:9::mode_ecmchar:48 [ mode_ecmchar::cy#4 mode_ecmchar::col#1 mode_ecmchar::cx#2 mode_ecmchar::ch#2 ] ) always clobbers reg byte y +Statement [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [832] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [833] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [834] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [835] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [836] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [837] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [838] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [839] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) [ mode_stdchar::i#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::i#2 ] ) always clobbers reg byte a +Statement [844] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [845] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::menu:9::mode_stdchar:40 [ ] ) always clobbers reg byte a +Statement [848] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 mode_stdchar::$25 ] ) always clobbers reg byte a +Statement [850] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::cx#2 mode_stdchar::col#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y +Statement [852] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$27 ] ) always clobbers reg byte a +Statement [853] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 ] ) always clobbers reg byte a +Statement [854] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 mode_stdchar::$28 mode_stdchar::$29 ] ) always clobbers reg byte a +Statement [856] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ( main:2::menu:9::mode_stdchar:40 [ mode_stdchar::cy#4 mode_stdchar::col#1 mode_stdchar::cx#2 mode_stdchar::ch#2 ] ) always clobbers reg byte y Statement [867] if(*((byte*) print_str_lines::str#2)!=(byte) '@') goto print_str_lines::@2 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#2 print_char_cursor#19 print_line_cursor#17 ] ) always clobbers reg byte a reg byte y -Statement [870] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y -Statement [873] *((byte*) print_char_cursor#17) ? (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte y -Statement [879] (byte*~) print_char_cursor#103 ? (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ) always clobbers reg byte a -Statement [882] (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:878 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a +Statement [870] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#3 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte a reg byte y +Statement [873] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ( main:2::menu:9::print_str_lines:33 [ print_line_cursor#17 print_str_lines::str#0 print_char_cursor#17 print_str_lines::ch#0 ] ) always clobbers reg byte y +Statement [879] (byte*~) print_char_cursor#103 ← (byte*) print_line_cursor#19 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ( main:2::menu:9::print_str_lines:33 [ print_str_lines::str#0 print_char_cursor#103 print_line_cursor#19 ] ) always clobbers reg byte a +Statement [882] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:878 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a Statement [883] if((byte*) print_line_cursor#19<(byte*) print_char_cursor#32) goto print_ln::@1 [ print_line_cursor#19 print_char_cursor#32 ] ( main:2::menu:9::print_str_lines:33::print_ln:878 [ print_str_lines::str#0 print_line_cursor#19 print_char_cursor#32 ] ) always clobbers reg byte a -Statement [887] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [887] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [889] if((byte*) print_cls::sc#1!=(const byte*) menu::SCREEN#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::menu:9::print_cls:31 [ print_cls::sc#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ menu::i#2 menu::i#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , Potential registers zp ZP_WORD:3 [ menu::c#2 menu::c#1 ] : zp ZP_WORD:3 , @@ -19722,15 +19722,15 @@ bend: main: { //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal) // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 // Enable DTV extended modes lda #DTV_FEATURE_ENABLE sta DTV_FEATURE @@ -19749,39 +19749,39 @@ menu: { .label SCREEN = $8000 .label CHARSET = $9800 .label c = 2 - //SEG18 [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG18 [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // Charset ROM // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG19 [11] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG19 [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG20 [12] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG20 [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG21 [13] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG21 [13] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // DTV Graphics Mode lda #0 sta DTV_CONTROL - //SEG22 [14] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG22 [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG23 [15] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG23 [15] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG24 [16] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG24 [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG25 [17] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG25 [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG26 [18] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG26 [18] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -19797,10 +19797,10 @@ menu: { jmp b1 //SEG31 menu::@1 b1: - //SEG32 [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG32 [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG33 [21] (byte) menu::i#1 ? ++ (byte) menu::i#2 -- vbuxx=_inc_vbuxx + //SEG33 [21] (byte) menu::i#1 ← ++ (byte) menu::i#2 -- vbuxx=_inc_vbuxx inx //SEG34 [22] if((byte) menu::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto menu::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -19820,11 +19820,11 @@ menu: { jmp b2 //SEG39 menu::@2 b2: - //SEG40 [24] *((byte*) menu::c#2) ? (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1 + //SEG40 [24] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1 lda #LIGHT_GREEN ldy #0 sta (c),y - //SEG41 [25] (byte*) menu::c#1 ? ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1 + //SEG41 [25] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1 inc c bne !+ inc c+1 @@ -19839,11 +19839,11 @@ menu: { jmp b3 //SEG43 menu::@3 b3: - //SEG44 [27] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG44 [27] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG45 [28] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG45 [28] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL //SEG46 [29] call print_set_screen @@ -19880,11 +19880,11 @@ menu: { //SEG60 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_1#0 [phi:menu::@4->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_1 jsr keyboard_key_pressed - //SEG61 [36] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 + //SEG61 [36] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 jmp b30 //SEG62 menu::@30 b30: - //SEG63 [37] (byte~) menu::$29 ? (byte) keyboard_key_pressed::return#2 + //SEG63 [37] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2 //SEG64 [38] if((byte~) menu::$29==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@5 -- vbuaa_eq_0_then_la1 cmp #0 beq b5_from_b30 @@ -19911,11 +19911,11 @@ menu: { //SEG74 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_2#0 [phi:menu::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_2 jsr keyboard_key_pressed - //SEG75 [44] (byte) keyboard_key_pressed::return#24 ? (byte) keyboard_key_pressed::return#0 + //SEG75 [44] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0 jmp b31 //SEG76 menu::@31 b31: - //SEG77 [45] (byte~) menu::$33 ? (byte) keyboard_key_pressed::return#24 + //SEG77 [45] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24 //SEG78 [46] if((byte~) menu::$33==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@6 -- vbuaa_eq_0_then_la1 cmp #0 beq b6_from_b31 @@ -19938,11 +19938,11 @@ menu: { //SEG86 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_3#0 [phi:menu::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_3 jsr keyboard_key_pressed - //SEG87 [51] (byte) keyboard_key_pressed::return#25 ? (byte) keyboard_key_pressed::return#0 + //SEG87 [51] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0 jmp b32 //SEG88 menu::@32 b32: - //SEG89 [52] (byte~) menu::$37 ? (byte) keyboard_key_pressed::return#25 + //SEG89 [52] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25 //SEG90 [53] if((byte~) menu::$37==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@7 -- vbuaa_eq_0_then_la1 cmp #0 beq b7_from_b32 @@ -19965,11 +19965,11 @@ menu: { //SEG98 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_4#0 [phi:menu::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_4 jsr keyboard_key_pressed - //SEG99 [58] (byte) keyboard_key_pressed::return#26 ? (byte) keyboard_key_pressed::return#0 + //SEG99 [58] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0 jmp b33 //SEG100 menu::@33 b33: - //SEG101 [59] (byte~) menu::$41 ? (byte) keyboard_key_pressed::return#26 + //SEG101 [59] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26 //SEG102 [60] if((byte~) menu::$41==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@8 -- vbuaa_eq_0_then_la1 cmp #0 beq b8_from_b33 @@ -19992,11 +19992,11 @@ menu: { //SEG110 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_6#0 [phi:menu::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_6 jsr keyboard_key_pressed - //SEG111 [65] (byte) keyboard_key_pressed::return#27 ? (byte) keyboard_key_pressed::return#0 + //SEG111 [65] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0 jmp b34 //SEG112 menu::@34 b34: - //SEG113 [66] (byte~) menu::$45 ? (byte) keyboard_key_pressed::return#27 + //SEG113 [66] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27 //SEG114 [67] if((byte~) menu::$45==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@9 -- vbuaa_eq_0_then_la1 cmp #0 beq b9_from_b34 @@ -20019,11 +20019,11 @@ menu: { //SEG122 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_7#0 [phi:menu::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_7 jsr keyboard_key_pressed - //SEG123 [72] (byte) keyboard_key_pressed::return#28 ? (byte) keyboard_key_pressed::return#0 + //SEG123 [72] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0 jmp b35 //SEG124 menu::@35 b35: - //SEG125 [73] (byte~) menu::$49 ? (byte) keyboard_key_pressed::return#28 + //SEG125 [73] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28 //SEG126 [74] if((byte~) menu::$49==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@10 -- vbuaa_eq_0_then_la1 cmp #0 beq b10_from_b35 @@ -20046,11 +20046,11 @@ menu: { //SEG134 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_8#0 [phi:menu::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_8 jsr keyboard_key_pressed - //SEG135 [79] (byte) keyboard_key_pressed::return#29 ? (byte) keyboard_key_pressed::return#0 + //SEG135 [79] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0 jmp b36 //SEG136 menu::@36 b36: - //SEG137 [80] (byte~) menu::$53 ? (byte) keyboard_key_pressed::return#29 + //SEG137 [80] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29 //SEG138 [81] if((byte~) menu::$53==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@11 -- vbuaa_eq_0_then_la1 cmp #0 beq b11_from_b36 @@ -20073,11 +20073,11 @@ menu: { //SEG146 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_A#0 [phi:menu::@11->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_A jsr keyboard_key_pressed - //SEG147 [86] (byte) keyboard_key_pressed::return#30 ? (byte) keyboard_key_pressed::return#0 + //SEG147 [86] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0 jmp b37 //SEG148 menu::@37 b37: - //SEG149 [87] (byte~) menu::$57 ? (byte) keyboard_key_pressed::return#30 + //SEG149 [87] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30 //SEG150 [88] if((byte~) menu::$57==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@12 -- vbuaa_eq_0_then_la1 cmp #0 beq b12_from_b37 @@ -20100,11 +20100,11 @@ menu: { //SEG158 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:menu::@12->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_B jsr keyboard_key_pressed - //SEG159 [93] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 + //SEG159 [93] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 jmp b38 //SEG160 menu::@38 b38: - //SEG161 [94] (byte~) menu::$61 ? (byte) keyboard_key_pressed::return#10 + //SEG161 [94] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10 //SEG162 [95] if((byte~) menu::$61==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@13 -- vbuaa_eq_0_then_la1 cmp #0 beq b13_from_b38 @@ -20127,11 +20127,11 @@ menu: { //SEG170 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:menu::@13->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_C jsr keyboard_key_pressed - //SEG171 [100] (byte) keyboard_key_pressed::return#11 ? (byte) keyboard_key_pressed::return#0 + //SEG171 [100] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0 jmp b39 //SEG172 menu::@39 b39: - //SEG173 [101] (byte~) menu::$65 ? (byte) keyboard_key_pressed::return#11 + //SEG173 [101] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11 //SEG174 [102] if((byte~) menu::$65==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@14 -- vbuaa_eq_0_then_la1 cmp #0 beq b14_from_b39 @@ -20154,11 +20154,11 @@ menu: { //SEG182 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_D#0 [phi:menu::@14->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_D jsr keyboard_key_pressed - //SEG183 [107] (byte) keyboard_key_pressed::return#12 ? (byte) keyboard_key_pressed::return#0 + //SEG183 [107] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0 jmp b40 //SEG184 menu::@40 b40: - //SEG185 [108] (byte~) menu::$69 ? (byte) keyboard_key_pressed::return#12 + //SEG185 [108] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12 //SEG186 [109] if((byte~) menu::$69==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@15 -- vbuaa_eq_0_then_la1 cmp #0 beq b15_from_b40 @@ -20181,11 +20181,11 @@ menu: { //SEG194 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_E#0 [phi:menu::@15->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_E jsr keyboard_key_pressed - //SEG195 [114] (byte) keyboard_key_pressed::return#13 ? (byte) keyboard_key_pressed::return#0 + //SEG195 [114] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0 jmp b41 //SEG196 menu::@41 b41: - //SEG197 [115] (byte~) menu::$73 ? (byte) keyboard_key_pressed::return#13 + //SEG197 [115] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13 //SEG198 [116] if((byte~) menu::$73==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 -- vbuaa_eq_0_then_la1 cmp #0 beq b4_from_b41 @@ -20212,36 +20212,36 @@ mode_8bppchunkybmm: { .label gfxb = 5 .label x = 2 .label y = 4 - //SEG203 [119] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2 + //SEG203 [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF sta DTV_CONTROL - //SEG204 [120] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG204 [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG205 [121] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG205 [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG206 [122] *((const byte*) DTV_PLANEB_START_LO#0) ? <<(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG206 [122] *((const byte*) DTV_PLANEB_START_LO#0) ← <<(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #PLANEB&$ffff sta DTV_PLANEB_START_LO - //SEG207 [123] *((const byte*) DTV_PLANEB_START_MI#0) ? ><(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG207 [123] *((const byte*) DTV_PLANEB_START_MI#0) ← ><(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_MI - //SEG208 [124] *((const byte*) DTV_PLANEB_START_HI#0) ? <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG208 [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #PLANEB>>$10 sta DTV_PLANEB_START_HI - //SEG209 [125] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 8 -- _deref_pbuc1=vbuc2 + //SEG209 [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 8 -- _deref_pbuc1=vbuc2 lda #8 sta DTV_PLANEB_STEP - //SEG210 [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG210 [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG211 [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG211 [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG212 [128] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG212 [128] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Border color lda #0 sta BORDERCOL @@ -20257,10 +20257,10 @@ mode_8bppchunkybmm: { jmp b1 //SEG217 mode_8bppchunkybmm::@1 b1: - //SEG218 [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ? (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG218 [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG219 [131] (byte) mode_8bppchunkybmm::i#1 ? ++ (byte) mode_8bppchunkybmm::i#2 -- vbuxx=_inc_vbuxx + //SEG219 [131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2 -- vbuxx=_inc_vbuxx inx //SEG220 [132] if((byte) mode_8bppchunkybmm::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bppchunkybmm::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -20325,7 +20325,7 @@ mode_8bppchunkybmm: { jmp b6 //SEG245 mode_8bppchunkybmm::@6 b6: - //SEG246 [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuaa=vbuxx + //SEG246 [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuaa=vbuxx txa //SEG247 [139] call dtvSetCpuBankSegment1 //SEG248 [223] phi from mode_8bppchunkybmm::@6 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1] @@ -20335,7 +20335,7 @@ mode_8bppchunkybmm: { jmp b9 //SEG250 mode_8bppchunkybmm::@9 b9: - //SEG251 [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ? ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx + //SEG251 [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx inx //SEG252 [141] phi from mode_8bppchunkybmm::@9 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5] b5_from_b9: @@ -20353,7 +20353,7 @@ mode_8bppchunkybmm: { jmp b5 //SEG258 mode_8bppchunkybmm::@5 b5: - //SEG259 [142] (word~) mode_8bppchunkybmm::$27 ? (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3 + //SEG259 [142] (word~) mode_8bppchunkybmm::$27 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -20361,17 +20361,17 @@ mode_8bppchunkybmm: { lda #0 adc x+1 sta _27+1 - //SEG260 [143] (byte) mode_8bppchunkybmm::c#0 ? ((byte)) (word~) mode_8bppchunkybmm::$27 -- vbuaa=_byte_vwuz1 + //SEG260 [143] (byte) mode_8bppchunkybmm::c#0 ← ((byte)) (word~) mode_8bppchunkybmm::$27 -- vbuaa=_byte_vwuz1 lda _27 - //SEG261 [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ? (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuaa + //SEG261 [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG262 [145] (byte*) mode_8bppchunkybmm::gfxb#1 ? ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1 + //SEG262 [145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG263 [146] (word) mode_8bppchunkybmm::x#1 ? ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1 + //SEG263 [146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 @@ -20386,7 +20386,7 @@ mode_8bppchunkybmm: { jmp b7 //SEG265 mode_8bppchunkybmm::@7 b7: - //SEG266 [148] (byte) mode_8bppchunkybmm::y#1 ? ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1 + //SEG266 [148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG267 [149] if((byte) mode_8bppchunkybmm::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_8bppchunkybmm::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -20453,11 +20453,11 @@ mode_ctrl: { //SEG291 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_SPACE#0 [phi:mode_ctrl::@3->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_SPACE jsr keyboard_key_pressed - //SEG292 [160] (byte) keyboard_key_pressed::return#14 ? (byte) keyboard_key_pressed::return#0 + //SEG292 [160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0 jmp b19 //SEG293 mode_ctrl::@19 b19: - //SEG294 [161] (byte~) mode_ctrl::$1 ? (byte) keyboard_key_pressed::return#14 + //SEG294 [161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14 //SEG295 [162] if((byte~) mode_ctrl::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@4 -- vbuaa_eq_0_then_la1 cmp #0 beq b4 @@ -20468,7 +20468,7 @@ mode_ctrl: { rts //SEG298 mode_ctrl::@4 b4: - //SEG299 [164] (byte) mode_ctrl::ctrl#0 ? (byte) dtv_control#114 -- vbuxx=vbuz1 + //SEG299 [164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114 -- vbuxx=vbuz1 // Read the current control byte ldx dtv_control //SEG300 [165] call keyboard_key_pressed @@ -20477,18 +20477,18 @@ mode_ctrl: { //SEG302 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_L#0 [phi:mode_ctrl::@4->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_L jsr keyboard_key_pressed - //SEG303 [166] (byte) keyboard_key_pressed::return#15 ? (byte) keyboard_key_pressed::return#0 + //SEG303 [166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0 jmp b20 //SEG304 mode_ctrl::@20 b20: - //SEG305 [167] (byte~) mode_ctrl::$4 ? (byte) keyboard_key_pressed::return#15 + //SEG305 [167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15 //SEG306 [168] if((byte~) mode_ctrl::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@5 -- vbuaa_eq_0_then_la1 cmp #0 beq b5_from_b20 jmp b12 //SEG307 mode_ctrl::@12 b12: - //SEG308 [169] (byte) mode_ctrl::ctrl#1 ? (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG308 [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_LINEAR tax @@ -20505,18 +20505,18 @@ mode_ctrl: { //SEG314 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_H#0 [phi:mode_ctrl::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_H jsr keyboard_key_pressed - //SEG315 [172] (byte) keyboard_key_pressed::return#16 ? (byte) keyboard_key_pressed::return#0 + //SEG315 [172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0 jmp b21 //SEG316 mode_ctrl::@21 b21: - //SEG317 [173] (byte~) mode_ctrl::$8 ? (byte) keyboard_key_pressed::return#16 + //SEG317 [173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16 //SEG318 [174] if((byte~) mode_ctrl::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@6 -- vbuaa_eq_0_then_la1 cmp #0 beq b6_from_b21 jmp b13 //SEG319 mode_ctrl::@13 b13: - //SEG320 [175] (byte) mode_ctrl::ctrl#2 ? (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG320 [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_HIGHCOLOR tax @@ -20533,18 +20533,18 @@ mode_ctrl: { //SEG326 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_O#0 [phi:mode_ctrl::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_O jsr keyboard_key_pressed - //SEG327 [178] (byte) keyboard_key_pressed::return#17 ? (byte) keyboard_key_pressed::return#0 + //SEG327 [178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0 jmp b22 //SEG328 mode_ctrl::@22 b22: - //SEG329 [179] (byte~) mode_ctrl::$12 ? (byte) keyboard_key_pressed::return#17 + //SEG329 [179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17 //SEG330 [180] if((byte~) mode_ctrl::$12==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@7 -- vbuaa_eq_0_then_la1 cmp #0 beq b7_from_b22 jmp b14 //SEG331 mode_ctrl::@14 b14: - //SEG332 [181] (byte) mode_ctrl::ctrl#3 ? (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG332 [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_OVERSCAN tax @@ -20561,18 +20561,18 @@ mode_ctrl: { //SEG338 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:mode_ctrl::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_B jsr keyboard_key_pressed - //SEG339 [184] (byte) keyboard_key_pressed::return#18 ? (byte) keyboard_key_pressed::return#0 + //SEG339 [184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0 jmp b23 //SEG340 mode_ctrl::@23 b23: - //SEG341 [185] (byte~) mode_ctrl::$16 ? (byte) keyboard_key_pressed::return#18 + //SEG341 [185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18 //SEG342 [186] if((byte~) mode_ctrl::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@8 -- vbuaa_eq_0_then_la1 cmp #0 beq b8_from_b23 jmp b15 //SEG343 mode_ctrl::@15 b15: - //SEG344 [187] (byte) mode_ctrl::ctrl#4 ? (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG344 [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_BORDER_OFF tax @@ -20589,18 +20589,18 @@ mode_ctrl: { //SEG350 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_U#0 [phi:mode_ctrl::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_U jsr keyboard_key_pressed - //SEG351 [190] (byte) keyboard_key_pressed::return#19 ? (byte) keyboard_key_pressed::return#0 + //SEG351 [190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0 jmp b24 //SEG352 mode_ctrl::@24 b24: - //SEG353 [191] (byte~) mode_ctrl::$20 ? (byte) keyboard_key_pressed::return#19 + //SEG353 [191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19 //SEG354 [192] if((byte~) mode_ctrl::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@9 -- vbuaa_eq_0_then_la1 cmp #0 beq b9_from_b24 jmp b16 //SEG355 mode_ctrl::@16 b16: - //SEG356 [193] (byte) mode_ctrl::ctrl#5 ? (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG356 [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_CHUNKY tax @@ -20617,18 +20617,18 @@ mode_ctrl: { //SEG362 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:mode_ctrl::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_C jsr keyboard_key_pressed - //SEG363 [196] (byte) keyboard_key_pressed::return#20 ? (byte) keyboard_key_pressed::return#0 + //SEG363 [196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0 jmp b25 //SEG364 mode_ctrl::@25 b25: - //SEG365 [197] (byte~) mode_ctrl::$24 ? (byte) keyboard_key_pressed::return#20 + //SEG365 [197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20 //SEG366 [198] if((byte~) mode_ctrl::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@10 -- vbuaa_eq_0_then_la1 cmp #0 beq b10_from_b25 jmp b17 //SEG367 mode_ctrl::@17 b17: - //SEG368 [199] (byte) mode_ctrl::ctrl#6 ? (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG368 [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_COLORRAM_OFF tax @@ -20645,11 +20645,11 @@ mode_ctrl: { //SEG374 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_0#0 [phi:mode_ctrl::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_0 jsr keyboard_key_pressed - //SEG375 [202] (byte) keyboard_key_pressed::return#21 ? (byte) keyboard_key_pressed::return#0 + //SEG375 [202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0 jmp b26 //SEG376 mode_ctrl::@26 b26: - //SEG377 [203] (byte~) mode_ctrl::$28 ? (byte) keyboard_key_pressed::return#21 + //SEG377 [203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21 //SEG378 [204] if((byte~) mode_ctrl::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@27 -- vbuaa_eq_0_then_la1 cmp #0 beq b27_from_b26 @@ -20666,11 +20666,11 @@ mode_ctrl: { jmp b18 //SEG383 mode_ctrl::@18 b18: - //SEG384 [207] (byte) dtv_control#17 ? (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuxx + //SEG384 [207] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuxx stx dtv_control - //SEG385 [208] *((const byte*) DTV_CONTROL#0) ? (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx + //SEG385 [208] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx stx DTV_CONTROL - //SEG386 [209] *((const byte*) BORDERCOL#0) ? (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx + //SEG386 [209] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx stx BORDERCOL jmp b1_from_b18 //SEG387 [210] phi from mode_ctrl::@26 to mode_ctrl::@27 [phi:mode_ctrl::@26->mode_ctrl::@27] @@ -20691,25 +20691,25 @@ mode_ctrl: { // keyboard_key_pressed(byte register(Y) key) keyboard_key_pressed: { .label colidx = 7 - //SEG392 [212] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuyy_band_vbuc1 + //SEG392 [212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuyy_band_vbuc1 tya and #7 sta colidx - //SEG393 [213] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuyy_ror_3 + //SEG393 [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuyy_ror_3 tya lsr lsr lsr - //SEG394 [214] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 -- vbuyy=vbuaa + //SEG394 [214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuyy=vbuaa tay //SEG395 [215] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG396 [216] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG396 [216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 jmp b1 //SEG397 keyboard_key_pressed::@1 b1: - //SEG398 [217] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 - //SEG399 [218] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuz1 + //SEG398 [217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 + //SEG399 [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuz1 ldy colidx and keyboard_matrix_col_bitmask,y jmp breturn @@ -20726,10 +20726,10 @@ keyboard_key_pressed: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(Y) rowid) keyboard_matrix_read: { - //SEG403 [220] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy + //SEG403 [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy lda keyboard_matrix_row_bitmask,y sta CIA1_PORT_A - //SEG404 [221] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG404 [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff jmp breturn @@ -20746,7 +20746,7 @@ keyboard_matrix_read: { dtvSetCpuBankSegment1: { // Move CPU BANK 1 SEGMENT ($4000-$7fff) .label cpuBank = $ff - //SEG408 [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuaa + //SEG408 [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuaa sta cpuBank //SEG409 asm { .byte$32,$dd lda$ff .byte$32,$00 } .byte $32, $dd @@ -20783,55 +20783,55 @@ mode_8bpppixelcell: { .label col = 9 .label cr = 7 .label ch = 4 - //SEG413 [227] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2 + //SEG413 [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY sta DTV_CONTROL - //SEG414 [228] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG414 [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG415 [229] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG415 [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG416 [230] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG416 [230] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG417 [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG418 [232] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG418 [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG419 [233] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG419 [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG420 [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG420 [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG421 [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG421 [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG422 [236] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG422 [236] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG423 [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG424 [238] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG424 [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG425 [239] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG425 [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_STEP - //SEG426 [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG426 [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG427 [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG427 [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG428 [242] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG428 [242] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Border color lda #0 sta BORDERCOL @@ -20847,10 +20847,10 @@ mode_8bpppixelcell: { jmp b1 //SEG433 mode_8bpppixelcell::@1 b1: - //SEG434 [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ? (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG434 [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG435 [245] (byte) mode_8bpppixelcell::i#1 ? ++ (byte) mode_8bpppixelcell::i#2 -- vbuxx=_inc_vbuxx + //SEG435 [245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2 -- vbuxx=_inc_vbuxx inx //SEG436 [246] if((byte) mode_8bpppixelcell::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bpppixelcell::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -20886,29 +20886,29 @@ mode_8bpppixelcell: { jmp b3 //SEG450 mode_8bpppixelcell::@3 b3: - //SEG451 [249] (byte~) mode_8bpppixelcell::$14 ? (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG451 [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and ay - //SEG452 [250] (byte~) mode_8bpppixelcell::$15 ? (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG452 [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _15 - //SEG453 [251] (byte~) mode_8bpppixelcell::$16 ? (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG453 [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG454 [252] (byte~) mode_8bpppixelcell::$17 ? (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuaa=vbuz1_bor_vbuaa + //SEG454 [252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuaa=vbuz1_bor_vbuaa ora _15 - //SEG455 [253] *((byte*) mode_8bpppixelcell::gfxa#2) ? (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuaa + //SEG455 [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxa),y - //SEG456 [254] (byte*) mode_8bpppixelcell::gfxa#1 ? ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG456 [254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG457 [255] (byte) mode_8bpppixelcell::ax#1 ? ++ (byte) mode_8bpppixelcell::ax#2 -- vbuxx=_inc_vbuxx + //SEG457 [255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2 -- vbuxx=_inc_vbuxx inx //SEG458 [256] if((byte) mode_8bpppixelcell::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_8bpppixelcell::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -20916,7 +20916,7 @@ mode_8bpppixelcell: { jmp b4 //SEG459 mode_8bpppixelcell::@4 b4: - //SEG460 [257] (byte) mode_8bpppixelcell::ay#1 ? ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1 + //SEG460 [257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG461 [258] if((byte) mode_8bpppixelcell::ay#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_8bpppixelcell::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -20925,7 +20925,7 @@ mode_8bpppixelcell: { jmp b5 //SEG462 mode_8bpppixelcell::@5 b5: - //SEG463 [259] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 + //SEG463 [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 // 8bpp cells for Plane B (charset) - ROM charset with 256 colors lda #PROCPORT_RAM_CHARROM sta PROCPORT @@ -20975,11 +20975,11 @@ mode_8bpppixelcell: { jmp b7 //SEG485 mode_8bpppixelcell::@7 b7: - //SEG486 [262] (byte) mode_8bpppixelcell::bits#0 ? *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2 + //SEG486 [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2 ldy #0 lda (chargen),y sta bits - //SEG487 [263] (byte*) mode_8bpppixelcell::chargen#1 ? ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG487 [263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 @@ -21001,7 +21001,7 @@ mode_8bpppixelcell: { jmp b8 //SEG498 mode_8bpppixelcell::@8 b8: - //SEG499 [265] (byte~) mode_8bpppixelcell::$20 ? (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG499 [265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and bits //SEG500 [266] if((byte~) mode_8bpppixelcell::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_8bpppixelcell::@9 -- vbuaa_eq_0_then_la1 @@ -21010,7 +21010,7 @@ mode_8bpppixelcell: { jmp b10 //SEG501 mode_8bpppixelcell::@10 b10: - //SEG502 [267] (byte~) mode_8bpppixelcell::c#3 ? (byte) mode_8bpppixelcell::col#2 -- vbuaa=vbuz1 + //SEG502 [267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2 -- vbuaa=vbuz1 lda col //SEG503 [268] phi from mode_8bpppixelcell::@10 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9] b9_from_b10: @@ -21023,19 +21023,19 @@ mode_8bpppixelcell: { jmp b9 //SEG507 mode_8bpppixelcell::@9 b9: - //SEG508 [269] *((byte*) mode_8bpppixelcell::gfxb#2) ? (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuaa + //SEG508 [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG509 [270] (byte*) mode_8bpppixelcell::gfxb#1 ? ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG509 [270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG510 [271] (byte) mode_8bpppixelcell::bits#1 ? (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG510 [271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl bits - //SEG511 [272] (byte) mode_8bpppixelcell::col#1 ? ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1 + //SEG511 [272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG512 [273] (byte) mode_8bpppixelcell::cp#1 ? ++ (byte) mode_8bpppixelcell::cp#2 -- vbuxx=_inc_vbuxx + //SEG512 [273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2 -- vbuxx=_inc_vbuxx inx //SEG513 [274] if((byte) mode_8bpppixelcell::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@8 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -21043,7 +21043,7 @@ mode_8bpppixelcell: { jmp b11 //SEG514 mode_8bpppixelcell::@11 b11: - //SEG515 [275] (byte) mode_8bpppixelcell::cr#1 ? ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1 + //SEG515 [275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1 inc cr //SEG516 [276] if((byte) mode_8bpppixelcell::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -21052,7 +21052,7 @@ mode_8bpppixelcell: { jmp b12 //SEG517 mode_8bpppixelcell::@12 b12: - //SEG518 [277] (byte) mode_8bpppixelcell::ch#1 ? ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1 + //SEG518 [277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1 inc ch //SEG519 [278] if((byte) mode_8bpppixelcell::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_8bpppixelcell::@6 -- vbuz1_neq_0_then_la1 lda ch @@ -21061,7 +21061,7 @@ mode_8bpppixelcell: { jmp b13 //SEG520 mode_8bpppixelcell::@13 b13: - //SEG521 [279] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG521 [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT //SEG522 [280] call mode_ctrl @@ -21094,59 +21094,59 @@ mode_sixsfred: { .label ay = 4 .label gfxb = 2 .label by = 4 - //SEG528 [282] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG528 [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR sta DTV_CONTROL - //SEG529 [283] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG529 [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG530 [284] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG530 [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG531 [285] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG531 [285] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG532 [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG533 [287] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG533 [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG534 [288] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG534 [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG535 [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG535 [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG536 [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG536 [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG537 [291] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG537 [291] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG538 [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG539 [293] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG539 [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG540 [294] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG540 [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG541 [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG541 [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG542 [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG542 [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG543 [297] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG543 [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG544 [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG545 [299] phi from mode_sixsfred to mode_sixsfred::@1 [phi:mode_sixsfred->mode_sixsfred::@1] @@ -21161,10 +21161,10 @@ mode_sixsfred: { jmp b1 //SEG549 mode_sixsfred::@1 b1: - //SEG550 [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ? (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG550 [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG551 [301] (byte) mode_sixsfred::i#1 ? ++ (byte) mode_sixsfred::i#2 -- vbuxx=_inc_vbuxx + //SEG551 [301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2 -- vbuxx=_inc_vbuxx inx //SEG552 [302] if((byte) mode_sixsfred::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -21172,7 +21172,7 @@ mode_sixsfred: { jmp b2 //SEG553 mode_sixsfred::@2 b2: - //SEG554 [303] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG554 [303] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL @@ -21207,21 +21207,21 @@ mode_sixsfred: { jmp b4 //SEG568 mode_sixsfred::@4 b4: - //SEG569 [306] (byte~) mode_sixsfred::$17 ? (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG569 [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG570 [307] (byte~) mode_sixsfred::$18 ? (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG570 [307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG571 [308] *((byte*) mode_sixsfred::col#2) ? (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuaa + //SEG571 [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG572 [309] (byte*) mode_sixsfred::col#1 ? ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1 + //SEG572 [309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG573 [310] (byte) mode_sixsfred::cx#1 ? ++ (byte) mode_sixsfred::cx#2 -- vbuxx=_inc_vbuxx + //SEG573 [310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2 -- vbuxx=_inc_vbuxx inx //SEG574 [311] if((byte) mode_sixsfred::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21229,7 +21229,7 @@ mode_sixsfred: { jmp b5 //SEG575 mode_sixsfred::@5 b5: - //SEG576 [312] (byte) mode_sixsfred::cy#1 ? ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1 + //SEG576 [312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG577 [313] if((byte) mode_sixsfred::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -21266,22 +21266,22 @@ mode_sixsfred: { jmp b7 //SEG591 mode_sixsfred::@7 b7: - //SEG592 [316] (byte~) mode_sixsfred::$21 ? (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 + //SEG592 [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 lda ay lsr - //SEG593 [317] (byte) mode_sixsfred::row#0 ? (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 + //SEG593 [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 and #3 - //SEG594 [318] *((byte*) mode_sixsfred::gfxa#2) ? *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa + //SEG594 [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa tay lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG595 [319] (byte*) mode_sixsfred::gfxa#1 ? ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG595 [319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG596 [320] (byte) mode_sixsfred::ax#1 ? ++ (byte) mode_sixsfred::ax#2 -- vbuxx=_inc_vbuxx + //SEG596 [320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2 -- vbuxx=_inc_vbuxx inx //SEG597 [321] if((byte) mode_sixsfred::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21289,7 +21289,7 @@ mode_sixsfred: { jmp b8 //SEG598 mode_sixsfred::@8 b8: - //SEG599 [322] (byte) mode_sixsfred::ay#1 ? ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1 + //SEG599 [322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG600 [323] if((byte) mode_sixsfred::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -21326,16 +21326,16 @@ mode_sixsfred: { jmp b10 //SEG614 mode_sixsfred::@10 b10: - //SEG615 [326] *((byte*) mode_sixsfred::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 + //SEG615 [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 lda #$1b ldy #0 sta (gfxb),y - //SEG616 [327] (byte*) mode_sixsfred::gfxb#1 ? ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG616 [327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG617 [328] (byte) mode_sixsfred::bx#1 ? ++ (byte) mode_sixsfred::bx#2 -- vbuxx=_inc_vbuxx + //SEG617 [328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2 -- vbuxx=_inc_vbuxx inx //SEG618 [329] if((byte) mode_sixsfred::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@10 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21343,7 +21343,7 @@ mode_sixsfred: { jmp b11 //SEG619 mode_sixsfred::@11 b11: - //SEG620 [330] (byte) mode_sixsfred::by#1 ? ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1 + //SEG620 [330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG621 [331] if((byte) mode_sixsfred::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@9 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -21389,59 +21389,59 @@ mode_twoplanebitmap: { .label ay = 4 .label gfxb = 2 .label by = 4 - //SEG630 [335] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG630 [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR sta DTV_CONTROL - //SEG631 [336] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG631 [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG632 [337] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG632 [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG633 [338] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG633 [338] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG634 [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG635 [340] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG635 [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG636 [341] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG636 [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG637 [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG637 [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG638 [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG638 [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG639 [344] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG639 [344] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG640 [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG641 [346] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG641 [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG642 [347] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG642 [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG643 [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG643 [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG644 [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG644 [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG645 [350] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG645 [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG646 [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG647 [352] phi from mode_twoplanebitmap to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1] @@ -21456,10 +21456,10 @@ mode_twoplanebitmap: { jmp b1 //SEG651 mode_twoplanebitmap::@1 b1: - //SEG652 [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ? (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG652 [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG653 [354] (byte) mode_twoplanebitmap::i#1 ? ++ (byte) mode_twoplanebitmap::i#2 -- vbuxx=_inc_vbuxx + //SEG653 [354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2 -- vbuxx=_inc_vbuxx inx //SEG654 [355] if((byte) mode_twoplanebitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_twoplanebitmap::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -21467,14 +21467,14 @@ mode_twoplanebitmap: { jmp b2 //SEG655 mode_twoplanebitmap::@2 b2: - //SEG656 [356] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG656 [356] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG657 [357] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $70 -- _deref_pbuc1=vbuc2 + //SEG657 [357] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $70 -- _deref_pbuc1=vbuc2 lda #$70 sta BGCOL1 - //SEG658 [358] *((const byte*) BGCOL2#0) ? (byte/word/signed word/dword/signed dword) $d4 -- _deref_pbuc1=vbuc2 + //SEG658 [358] *((const byte*) BGCOL2#0) ← (byte/word/signed word/dword/signed dword) $d4 -- _deref_pbuc1=vbuc2 // Color for bits 00 lda #$d4 sta BGCOL2 @@ -21509,29 +21509,29 @@ mode_twoplanebitmap: { jmp b4 //SEG672 mode_twoplanebitmap::@4 b4: - //SEG673 [361] (byte~) mode_twoplanebitmap::$16 ? (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG673 [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG674 [362] (byte~) mode_twoplanebitmap::$17 ? (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG674 [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _17 - //SEG675 [363] (byte~) mode_twoplanebitmap::$18 ? (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG675 [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG676 [364] (byte~) mode_twoplanebitmap::$19 ? (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuaa=vbuz1_bor_vbuaa + //SEG676 [364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuaa=vbuz1_bor_vbuaa ora _17 - //SEG677 [365] *((byte*) mode_twoplanebitmap::col#2) ? (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuaa + //SEG677 [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG678 [366] (byte*) mode_twoplanebitmap::col#1 ? ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1 + //SEG678 [366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG679 [367] (byte) mode_twoplanebitmap::cx#1 ? ++ (byte) mode_twoplanebitmap::cx#2 -- vbuxx=_inc_vbuxx + //SEG679 [367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2 -- vbuxx=_inc_vbuxx inx //SEG680 [368] if((byte) mode_twoplanebitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21539,7 +21539,7 @@ mode_twoplanebitmap: { jmp b5 //SEG681 mode_twoplanebitmap::@5 b5: - //SEG682 [369] (byte) mode_twoplanebitmap::cy#1 ? ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1 + //SEG682 [369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG683 [370] if((byte) mode_twoplanebitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_twoplanebitmap::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -21576,7 +21576,7 @@ mode_twoplanebitmap: { jmp b7 //SEG697 mode_twoplanebitmap::@7 b7: - //SEG698 [373] (byte~) mode_twoplanebitmap::$22 ? (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 + //SEG698 [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 lda #4 and ay //SEG699 [374] if((byte~) mode_twoplanebitmap::$22==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_twoplanebitmap::@8 -- vbuaa_eq_0_then_la1 @@ -21585,11 +21585,11 @@ mode_twoplanebitmap: { jmp b10 //SEG700 mode_twoplanebitmap::@10 b10: - //SEG701 [375] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 + //SEG701 [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 lda #$ff ldy #0 sta (gfxa),y - //SEG702 [376] (byte*) mode_twoplanebitmap::gfxa#2 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG702 [376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -21601,7 +21601,7 @@ mode_twoplanebitmap: { jmp b9 //SEG705 mode_twoplanebitmap::@9 b9: - //SEG706 [378] (byte) mode_twoplanebitmap::ax#1 ? ++ (byte) mode_twoplanebitmap::ax#2 -- vbuxx=_inc_vbuxx + //SEG706 [378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2 -- vbuxx=_inc_vbuxx inx //SEG707 [379] if((byte) mode_twoplanebitmap::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21609,7 +21609,7 @@ mode_twoplanebitmap: { jmp b11 //SEG708 mode_twoplanebitmap::@11 b11: - //SEG709 [380] (byte) mode_twoplanebitmap::ay#1 ? ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1 + //SEG709 [380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1 inc ay //SEG710 [381] if((byte) mode_twoplanebitmap::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -21646,16 +21646,16 @@ mode_twoplanebitmap: { jmp b13 //SEG724 mode_twoplanebitmap::@13 b13: - //SEG725 [384] *((byte*) mode_twoplanebitmap::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 + //SEG725 [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 lda #$f ldy #0 sta (gfxb),y - //SEG726 [385] (byte*) mode_twoplanebitmap::gfxb#1 ? ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG726 [385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG727 [386] (byte) mode_twoplanebitmap::bx#1 ? ++ (byte) mode_twoplanebitmap::bx#2 -- vbuxx=_inc_vbuxx + //SEG727 [386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2 -- vbuxx=_inc_vbuxx inx //SEG728 [387] if((byte) mode_twoplanebitmap::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@13 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21663,7 +21663,7 @@ mode_twoplanebitmap: { jmp b14 //SEG729 mode_twoplanebitmap::@14 b14: - //SEG730 [388] (byte) mode_twoplanebitmap::by#1 ? ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1 + //SEG730 [388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG731 [389] if((byte) mode_twoplanebitmap::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@12 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -21688,11 +21688,11 @@ mode_twoplanebitmap: { rts //SEG739 mode_twoplanebitmap::@8 b8: - //SEG740 [393] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG740 [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (gfxa),y - //SEG741 [394] (byte*) mode_twoplanebitmap::gfxa#1 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG741 [394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -21717,59 +21717,59 @@ mode_sixsfred2: { .label ay = 4 .label gfxb = 2 .label by = 4 - //SEG743 [395] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG743 [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_LINEAR sta DTV_CONTROL - //SEG744 [396] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG744 [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG745 [397] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG745 [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG746 [398] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG746 [398] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG747 [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG748 [400] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG748 [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG749 [401] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG749 [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG750 [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG750 [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG751 [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG751 [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_HI - //SEG752 [404] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG752 [404] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG753 [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG754 [406] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG754 [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG755 [407] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG755 [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG756 [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG756 [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG757 [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG757 [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_HI - //SEG758 [410] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG758 [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG759 [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG760 [412] phi from mode_sixsfred2 to mode_sixsfred2::@1 [phi:mode_sixsfred2->mode_sixsfred2::@1] @@ -21784,10 +21784,10 @@ mode_sixsfred2: { jmp b1 //SEG764 mode_sixsfred2::@1 b1: - //SEG765 [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ? (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG765 [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG766 [414] (byte) mode_sixsfred2::i#1 ? ++ (byte) mode_sixsfred2::i#2 -- vbuxx=_inc_vbuxx + //SEG766 [414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2 -- vbuxx=_inc_vbuxx inx //SEG767 [415] if((byte) mode_sixsfred2::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred2::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -21795,7 +21795,7 @@ mode_sixsfred2: { jmp b2 //SEG768 mode_sixsfred2::@2 b2: - //SEG769 [416] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG769 [416] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL @@ -21830,29 +21830,29 @@ mode_sixsfred2: { jmp b4 //SEG783 mode_sixsfred2::@4 b4: - //SEG784 [419] (byte~) mode_sixsfred2::$15 ? (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 + //SEG784 [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 txa and #3 - //SEG785 [420] (byte~) mode_sixsfred2::$16 ? (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG785 [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _16 - //SEG786 [421] (byte~) mode_sixsfred2::$17 ? (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 + //SEG786 [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 lda #3 and cy - //SEG787 [422] (byte~) mode_sixsfred2::$18 ? (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuaa=vbuz1_bor_vbuaa + //SEG787 [422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuaa=vbuz1_bor_vbuaa ora _16 - //SEG788 [423] *((byte*) mode_sixsfred2::col#2) ? (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuaa + //SEG788 [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG789 [424] (byte*) mode_sixsfred2::col#1 ? ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1 + //SEG789 [424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG790 [425] (byte) mode_sixsfred2::cx#1 ? ++ (byte) mode_sixsfred2::cx#2 -- vbuxx=_inc_vbuxx + //SEG790 [425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2 -- vbuxx=_inc_vbuxx inx //SEG791 [426] if((byte) mode_sixsfred2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21860,7 +21860,7 @@ mode_sixsfred2: { jmp b5 //SEG792 mode_sixsfred2::@5 b5: - //SEG793 [427] (byte) mode_sixsfred2::cy#1 ? ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1 + //SEG793 [427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG794 [428] if((byte) mode_sixsfred2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred2::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -21897,22 +21897,22 @@ mode_sixsfred2: { jmp b7 //SEG808 mode_sixsfred2::@7 b7: - //SEG809 [431] (byte~) mode_sixsfred2::$21 ? (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 + //SEG809 [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 lda ay lsr - //SEG810 [432] (byte) mode_sixsfred2::row#0 ? (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 + //SEG810 [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 and #3 - //SEG811 [433] *((byte*) mode_sixsfred2::gfxa#2) ? *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa + //SEG811 [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa tay lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG812 [434] (byte*) mode_sixsfred2::gfxa#1 ? ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG812 [434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG813 [435] (byte) mode_sixsfred2::ax#1 ? ++ (byte) mode_sixsfred2::ax#2 -- vbuxx=_inc_vbuxx + //SEG813 [435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2 -- vbuxx=_inc_vbuxx inx //SEG814 [436] if((byte) mode_sixsfred2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21920,7 +21920,7 @@ mode_sixsfred2: { jmp b8 //SEG815 mode_sixsfred2::@8 b8: - //SEG816 [437] (byte) mode_sixsfred2::ay#1 ? ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1 + //SEG816 [437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG817 [438] if((byte) mode_sixsfred2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -21957,16 +21957,16 @@ mode_sixsfred2: { jmp b10 //SEG831 mode_sixsfred2::@10 b10: - //SEG832 [441] *((byte*) mode_sixsfred2::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 + //SEG832 [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 lda #$1b ldy #0 sta (gfxb),y - //SEG833 [442] (byte*) mode_sixsfred2::gfxb#1 ? ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG833 [442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG834 [443] (byte) mode_sixsfred2::bx#1 ? ++ (byte) mode_sixsfred2::bx#2 -- vbuxx=_inc_vbuxx + //SEG834 [443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2 -- vbuxx=_inc_vbuxx inx //SEG835 [444] if((byte) mode_sixsfred2::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@10 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21974,7 +21974,7 @@ mode_sixsfred2: { jmp b11 //SEG836 mode_sixsfred2::@11 b11: - //SEG837 [445] (byte) mode_sixsfred2::by#1 ? ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1 + //SEG837 [445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG838 [446] if((byte) mode_sixsfred2::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@9 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -22021,37 +22021,37 @@ mode_hicolmcchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG847 [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG847 [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG848 [451] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG848 [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG849 [452] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG849 [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG850 [453] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG850 [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG851 [454] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG851 [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG852 [455] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG852 [455] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG853 [456] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG853 [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG854 [457] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG854 [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL|VIC_MCM sta VIC_CONTROL2 - //SEG855 [458] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG855 [458] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -22067,10 +22067,10 @@ mode_hicolmcchar: { jmp b1 //SEG860 mode_hicolmcchar::@1 b1: - //SEG861 [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ? (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG861 [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG862 [461] (byte) mode_hicolmcchar::i#1 ? ++ (byte) mode_hicolmcchar::i#2 -- vbuxx=_inc_vbuxx + //SEG862 [461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG863 [462] if((byte) mode_hicolmcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolmcchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -22078,17 +22078,17 @@ mode_hicolmcchar: { jmp b2 //SEG864 mode_hicolmcchar::@2 b2: - //SEG865 [463] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG865 [463] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG866 [464] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 + //SEG866 [464] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 lda #$50 sta BGCOL1 - //SEG867 [465] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 + //SEG867 [465] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 lda #$54 sta BGCOL2 - //SEG868 [466] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 + //SEG868 [466] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 lda #$58 sta BGCOL3 //SEG869 [467] phi from mode_hicolmcchar::@2 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3] @@ -22130,37 +22130,37 @@ mode_hicolmcchar: { jmp b4 //SEG886 mode_hicolmcchar::@4 b4: - //SEG887 [469] (byte~) mode_hicolmcchar::$26 ? (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG887 [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG888 [470] (byte~) mode_hicolmcchar::$27 ? (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG888 [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _27 - //SEG889 [471] (byte~) mode_hicolmcchar::$28 ? (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG889 [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG890 [472] (byte) mode_hicolmcchar::v#0 ? (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuaa=vbuz1_bor_vbuaa + //SEG890 [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuaa=vbuz1_bor_vbuaa ora _27 - //SEG891 [473] *((byte*) mode_hicolmcchar::col#2) ? (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa + //SEG891 [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG892 [474] (byte*) mode_hicolmcchar::col#1 ? ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG892 [474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG893 [475] *((byte*) mode_hicolmcchar::ch#2) ? (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa + //SEG893 [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG894 [476] (byte*) mode_hicolmcchar::ch#1 ? ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG894 [476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG895 [477] (byte) mode_hicolmcchar::cx#1 ? ++ (byte) mode_hicolmcchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG895 [477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG896 [478] if((byte) mode_hicolmcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolmcchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -22168,7 +22168,7 @@ mode_hicolmcchar: { jmp b5 //SEG897 mode_hicolmcchar::@5 b5: - //SEG898 [479] (byte) mode_hicolmcchar::cy#1 ? ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG898 [479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG899 [480] if((byte) mode_hicolmcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolmcchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -22213,37 +22213,37 @@ mode_hicolecmchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG908 [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG908 [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG909 [485] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG909 [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG910 [486] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG910 [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG911 [487] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG911 [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG912 [488] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG912 [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG913 [489] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG913 [489] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG914 [490] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG914 [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|VIC_ECM|3 sta VIC_CONTROL - //SEG915 [491] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG915 [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG916 [492] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG916 [492] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -22259,10 +22259,10 @@ mode_hicolecmchar: { jmp b1 //SEG921 mode_hicolecmchar::@1 b1: - //SEG922 [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ? (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG922 [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG923 [495] (byte) mode_hicolecmchar::i#1 ? ++ (byte) mode_hicolecmchar::i#2 -- vbuxx=_inc_vbuxx + //SEG923 [495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG924 [496] if((byte) mode_hicolecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolecmchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -22270,20 +22270,20 @@ mode_hicolecmchar: { jmp b2 //SEG925 mode_hicolecmchar::@2 b2: - //SEG926 [497] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG926 [497] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG927 [498] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 + //SEG927 [498] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 lda #$50 sta BGCOL1 - //SEG928 [499] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 + //SEG928 [499] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 lda #$54 sta BGCOL2 - //SEG929 [500] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 + //SEG929 [500] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 lda #$58 sta BGCOL3 - //SEG930 [501] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) $5c -- _deref_pbuc1=vbuc2 + //SEG930 [501] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) $5c -- _deref_pbuc1=vbuc2 lda #$5c sta BGCOL4 //SEG931 [502] phi from mode_hicolecmchar::@2 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3] @@ -22325,37 +22325,37 @@ mode_hicolecmchar: { jmp b4 //SEG948 mode_hicolecmchar::@4 b4: - //SEG949 [504] (byte~) mode_hicolecmchar::$26 ? (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG949 [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG950 [505] (byte~) mode_hicolecmchar::$27 ? (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG950 [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _27 - //SEG951 [506] (byte~) mode_hicolecmchar::$28 ? (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG951 [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG952 [507] (byte) mode_hicolecmchar::v#0 ? (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuaa=vbuz1_bor_vbuaa + //SEG952 [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuaa=vbuz1_bor_vbuaa ora _27 - //SEG953 [508] *((byte*) mode_hicolecmchar::col#2) ? (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa + //SEG953 [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG954 [509] (byte*) mode_hicolecmchar::col#1 ? ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG954 [509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG955 [510] *((byte*) mode_hicolecmchar::ch#2) ? (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa + //SEG955 [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG956 [511] (byte*) mode_hicolecmchar::ch#1 ? ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG956 [511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG957 [512] (byte) mode_hicolecmchar::cx#1 ? ++ (byte) mode_hicolecmchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG957 [512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG958 [513] if((byte) mode_hicolecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolecmchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -22363,7 +22363,7 @@ mode_hicolecmchar: { jmp b5 //SEG959 mode_hicolecmchar::@5 b5: - //SEG960 [514] (byte) mode_hicolecmchar::cy#1 ? ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG960 [514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG961 [515] if((byte) mode_hicolecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolecmchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -22404,37 +22404,37 @@ mode_hicolstdchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG970 [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG970 [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG971 [520] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG971 [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG972 [521] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG972 [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG973 [522] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG973 [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG974 [523] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG974 [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG975 [524] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG975 [524] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG976 [525] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG976 [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG977 [526] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG977 [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG978 [527] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG978 [527] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -22450,10 +22450,10 @@ mode_hicolstdchar: { jmp b1 //SEG983 mode_hicolstdchar::@1 b1: - //SEG984 [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ? (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG984 [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG985 [530] (byte) mode_hicolstdchar::i#1 ? ++ (byte) mode_hicolstdchar::i#2 -- vbuxx=_inc_vbuxx + //SEG985 [530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG986 [531] if((byte) mode_hicolstdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolstdchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -22461,11 +22461,11 @@ mode_hicolstdchar: { jmp b2 //SEG987 mode_hicolstdchar::@2 b2: - //SEG988 [532] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG988 [532] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG989 [533] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG989 [533] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL //SEG990 [534] phi from mode_hicolstdchar::@2 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3] @@ -22507,37 +22507,37 @@ mode_hicolstdchar: { jmp b4 //SEG1007 mode_hicolstdchar::@4 b4: - //SEG1008 [536] (byte~) mode_hicolstdchar::$25 ? (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1008 [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1009 [537] (byte~) mode_hicolstdchar::$26 ? (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1009 [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _26 - //SEG1010 [538] (byte~) mode_hicolstdchar::$27 ? (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1010 [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1011 [539] (byte) mode_hicolstdchar::v#0 ? (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuaa=vbuz1_bor_vbuaa + //SEG1011 [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuaa=vbuz1_bor_vbuaa ora _26 - //SEG1012 [540] *((byte*) mode_hicolstdchar::col#2) ? (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa + //SEG1012 [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1013 [541] (byte*) mode_hicolstdchar::col#1 ? ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1013 [541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1014 [542] *((byte*) mode_hicolstdchar::ch#2) ? (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa + //SEG1014 [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1015 [543] (byte*) mode_hicolstdchar::ch#1 ? ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1015 [543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1016 [544] (byte) mode_hicolstdchar::cx#1 ? ++ (byte) mode_hicolstdchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1016 [544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1017 [545] if((byte) mode_hicolstdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolstdchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -22545,7 +22545,7 @@ mode_hicolstdchar: { jmp b5 //SEG1018 mode_hicolstdchar::@5 b5: - //SEG1019 [546] (byte) mode_hicolstdchar::cy#1 ? ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1019 [546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1020 [547] if((byte) mode_hicolstdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolstdchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -22585,30 +22585,30 @@ mode_stdbitmap: { .label ch = 2 .label cy = 4 .label l = 4 - //SEG1029 [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1029 [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&BITMAP)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1030 [552] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1030 [552] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1031 [553] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1031 [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1032 [554] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1032 [554] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^BITMAP/$4000 sta CIA2_PORT_A - //SEG1033 [555] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1033 [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1034 [556] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1034 [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1035 [557] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1035 [557] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(BITMAP&$3fff)/$400 sta VIC_MEMORY @@ -22624,10 +22624,10 @@ mode_stdbitmap: { jmp b1 //SEG1040 mode_stdbitmap::@1 b1: - //SEG1041 [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1041 [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1042 [560] (byte) mode_stdbitmap::i#1 ? ++ (byte) mode_stdbitmap::i#2 -- vbuxx=_inc_vbuxx + //SEG1042 [560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2 -- vbuxx=_inc_vbuxx inx //SEG1043 [561] if((byte) mode_stdbitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdbitmap::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -22635,11 +22635,11 @@ mode_stdbitmap: { jmp b2 //SEG1044 mode_stdbitmap::@2 b2: - //SEG1045 [562] *((const byte*) BGCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1045 [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 // Screen colors lda #BLACK sta BGCOL - //SEG1046 [563] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1046 [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL //SEG1047 [564] phi from mode_stdbitmap::@2 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3] @@ -22673,36 +22673,36 @@ mode_stdbitmap: { jmp b4 //SEG1060 mode_stdbitmap::@4 b4: - //SEG1061 [566] (byte~) mode_stdbitmap::$22 ? (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1061 [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1062 [567] (byte) mode_stdbitmap::col#0 ? (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 + //SEG1062 [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 and #$f tay - //SEG1063 [568] (byte) mode_stdbitmap::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuyy + //SEG1063 [568] (byte) mode_stdbitmap::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuyy tya eor #$ff clc adc #$f+1 sta col2 - //SEG1064 [569] (byte~) mode_stdbitmap::$25 ? (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 + //SEG1064 [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 tya asl asl asl asl - //SEG1065 [570] (byte~) mode_stdbitmap::$26 ? (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuaa=vbuaa_bor_vbuz1 + //SEG1065 [570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuaa=vbuaa_bor_vbuz1 ora col2 - //SEG1066 [571] *((byte*) mode_stdbitmap::ch#2) ? (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuaa + //SEG1066 [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1067 [572] (byte*) mode_stdbitmap::ch#1 ? ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1067 [572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1068 [573] (byte) mode_stdbitmap::cx#1 ? ++ (byte) mode_stdbitmap::cx#2 -- vbuxx=_inc_vbuxx + //SEG1068 [573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1069 [574] if((byte) mode_stdbitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdbitmap::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -22710,7 +22710,7 @@ mode_stdbitmap: { jmp b5 //SEG1070 mode_stdbitmap::@5 b5: - //SEG1071 [575] (byte) mode_stdbitmap::cy#1 ? ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1071 [575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1072 [576] if((byte) mode_stdbitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdbitmap::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -22744,18 +22744,18 @@ mode_stdbitmap: { jmp b7 //SEG1084 mode_stdbitmap::@7 b7: - //SEG1085 [582] (byte) bitmap_line::x0#0 ? *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1085 [582] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG1086 [583] (byte) bitmap_line::x1#0 ? *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 + //SEG1086 [583] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 ldy l ldx lines_x+1,y - //SEG1087 [584] (byte) bitmap_line::y0#0 ? *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1087 [584] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y,y sta bitmap_line.y0 - //SEG1088 [585] (byte) bitmap_line::y1#0 ? *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1088 [585] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y+1,y sta bitmap_line.y1 @@ -22764,7 +22764,7 @@ mode_stdbitmap: { jmp b10 //SEG1090 mode_stdbitmap::@10 b10: - //SEG1091 [587] (byte) mode_stdbitmap::l#1 ? ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1 + //SEG1091 [587] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG1092 [588] if((byte) mode_stdbitmap::l#1<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@7 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -22807,7 +22807,7 @@ bitmap_line: { jmp b2 //SEG1102 bitmap_line::@2 b2: - //SEG1103 [593] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx + //SEG1103 [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx txa eor #$ff sec @@ -22820,7 +22820,7 @@ bitmap_line: { jmp b3 //SEG1105 bitmap_line::@3 b3: - //SEG1106 [595] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1106 [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 lda y0 sec sbc y1 @@ -22831,16 +22831,16 @@ bitmap_line: { jmp b4 //SEG1108 bitmap_line::@4 b4: - //SEG1109 [597] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1109 [597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y - //SEG1110 [598] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 - //SEG1111 [599] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1110 [598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 + //SEG1111 [599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y1 - //SEG1112 [600] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1112 [600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1113 [601] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1113 [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 //SEG1114 [602] call bitmap_line_ydxi //SEG1115 [676] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi] bitmap_line_ydxi_from_b4: @@ -22857,14 +22857,14 @@ bitmap_line: { rts //SEG1123 bitmap_line::@8 b8: - //SEG1124 [604] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1124 [604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x - //SEG1125 [605] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1125 [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyi.y - //SEG1126 [606] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1127 [607] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1128 [608] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1126 [606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1127 [607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1128 [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1129 [609] call bitmap_line_xdyi //SEG1130 [654] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi] @@ -22878,7 +22878,7 @@ bitmap_line: { jmp breturn //SEG1136 bitmap_line::@7 b7: - //SEG1137 [610] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1137 [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -22889,17 +22889,17 @@ bitmap_line: { jmp b10 //SEG1139 bitmap_line::@10 b10: - //SEG1140 [612] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1140 [612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG1141 [613] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1141 [613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1142 [614] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1142 [614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y1 - //SEG1143 [615] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1143 [615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1144 [616] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1144 [616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 //SEG1145 [617] call bitmap_line_ydxd //SEG1146 [706] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd] bitmap_line_ydxd_from_b10: @@ -22912,14 +22912,14 @@ bitmap_line: { jmp breturn //SEG1152 bitmap_line::@9 b9: - //SEG1153 [618] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1153 [618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x - //SEG1154 [619] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1154 [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyd.y - //SEG1155 [620] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1156 [621] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1157 [622] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1155 [620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1156 [621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1157 [622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1158 [623] call bitmap_line_xdyd //SEG1159 [691] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd] @@ -22933,7 +22933,7 @@ bitmap_line: { jmp breturn //SEG1165 bitmap_line::@1 b1: - //SEG1166 [624] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 + //SEG1166 [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 txa sec sbc x0 @@ -22945,7 +22945,7 @@ bitmap_line: { jmp b5 //SEG1168 bitmap_line::@5 b5: - //SEG1169 [626] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1169 [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 lda y0 sec sbc y1 @@ -22956,14 +22956,14 @@ bitmap_line: { jmp b6 //SEG1171 bitmap_line::@6 b6: - //SEG1172 [628] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1172 [628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y - //SEG1173 [629] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 - //SEG1174 [630] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - //SEG1175 [631] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1173 [629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 + //SEG1174 [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + //SEG1175 [631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1176 [632] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1176 [632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 //SEG1177 [633] call bitmap_line_ydxd //SEG1178 [706] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd] bitmap_line_ydxd_from_b6: @@ -22976,14 +22976,14 @@ bitmap_line: { jmp breturn //SEG1184 bitmap_line::@12 b12: - //SEG1185 [634] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1185 [634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x - //SEG1186 [635] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - //SEG1187 [636] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1186 [635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + //SEG1187 [636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x1 - //SEG1188 [637] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1189 [638] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1188 [637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1189 [638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1190 [639] call bitmap_line_xdyd //SEG1191 [691] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd] @@ -22997,7 +22997,7 @@ bitmap_line: { jmp breturn //SEG1197 bitmap_line::@11 b11: - //SEG1198 [640] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1198 [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -23008,15 +23008,15 @@ bitmap_line: { jmp b14 //SEG1200 bitmap_line::@14 b14: - //SEG1201 [642] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1201 [642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG1202 [643] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1202 [643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1203 [644] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 - //SEG1204 [645] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1203 [644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 + //SEG1204 [645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1205 [646] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1205 [646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 //SEG1206 [647] call bitmap_line_ydxi //SEG1207 [676] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi] bitmap_line_ydxi_from_b14: @@ -23029,14 +23029,14 @@ bitmap_line: { jmp breturn //SEG1213 bitmap_line::@13 b13: - //SEG1214 [648] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1214 [648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x - //SEG1215 [649] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - //SEG1216 [650] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1215 [649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + //SEG1216 [650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x1 - //SEG1217 [651] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1218 [652] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1217 [651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1218 [652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1219 [653] call bitmap_line_xdyi //SEG1220 [654] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi] @@ -23058,7 +23058,7 @@ bitmap_line_xdyi: { .label xd = 8 .label yd = 7 .label e = $c - //SEG1227 [655] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1227 [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -23071,9 +23071,9 @@ bitmap_line_xdyi: { jmp b1 //SEG1232 bitmap_line_xdyi::@1 b1: - //SEG1233 [657] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 + //SEG1233 [657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 ldx x - //SEG1234 [658] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 + //SEG1234 [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 ldy y //SEG1235 [659] call bitmap_plot //SEG1236 [669] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot] @@ -23084,9 +23084,9 @@ bitmap_line_xdyi: { jmp b4 //SEG1239 bitmap_line_xdyi::@4 b4: - //SEG1240 [660] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1240 [660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1241 [661] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1241 [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -23098,9 +23098,9 @@ bitmap_line_xdyi: { jmp b3 //SEG1243 bitmap_line_xdyi::@3 b3: - //SEG1244 [663] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1244 [663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1245 [664] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1245 [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -23113,7 +23113,7 @@ bitmap_line_xdyi: { jmp b2 //SEG1249 bitmap_line_xdyi::@2 b2: - //SEG1250 [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1250 [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1251 [667] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -23131,17 +23131,17 @@ bitmap_plot: { .label _0 = 2 .label plotter_x = 2 .label plotter_y = 5 - //SEG1255 [670] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG1255 [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_xhi,x sta plotter_x+1 lda bitmap_plot_xlo,x sta plotter_x - //SEG1256 [671] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG1256 [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG1257 [672] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG1257 [672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 lda _0 clc adc plotter_y @@ -23149,11 +23149,11 @@ bitmap_plot: { lda _0+1 adc plotter_y+1 sta _0+1 - //SEG1258 [673] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx + //SEG1258 [673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx lda bitmap_plot_bit,x ldy #0 ora (_0),y - //SEG1259 [674] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa + //SEG1259 [674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa ldy #0 sta (_0),y jmp breturn @@ -23170,7 +23170,7 @@ bitmap_line_ydxi: { .label yd = 7 .label xd = 8 .label e = 9 - //SEG1263 [677] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1263 [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -23183,8 +23183,8 @@ bitmap_line_ydxi: { jmp b1 //SEG1268 bitmap_line_ydxi::@1 b1: - //SEG1269 [679] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - //SEG1270 [680] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 + //SEG1269 [679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + //SEG1270 [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 ldy y //SEG1271 [681] call bitmap_plot //SEG1272 [669] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot] @@ -23195,9 +23195,9 @@ bitmap_line_ydxi: { jmp b4 //SEG1275 bitmap_line_ydxi::@4 b4: - //SEG1276 [682] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1276 [682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1277 [683] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1277 [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -23209,9 +23209,9 @@ bitmap_line_ydxi: { jmp b3 //SEG1279 bitmap_line_ydxi::@3 b3: - //SEG1280 [685] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx + //SEG1280 [685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG1281 [686] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1281 [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -23224,7 +23224,7 @@ bitmap_line_ydxi: { jmp b2 //SEG1285 bitmap_line_ydxi::@2 b2: - //SEG1286 [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1286 [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -23246,7 +23246,7 @@ bitmap_line_xdyd: { .label xd = 8 .label yd = 7 .label e = $c - //SEG1291 [692] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1291 [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -23259,9 +23259,9 @@ bitmap_line_xdyd: { jmp b1 //SEG1296 bitmap_line_xdyd::@1 b1: - //SEG1297 [694] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 + //SEG1297 [694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 ldx x - //SEG1298 [695] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 + //SEG1298 [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 ldy y //SEG1299 [696] call bitmap_plot //SEG1300 [669] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot] @@ -23272,9 +23272,9 @@ bitmap_line_xdyd: { jmp b4 //SEG1303 bitmap_line_xdyd::@4 b4: - //SEG1304 [697] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 + //SEG1304 [697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1305 [698] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1305 [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -23286,9 +23286,9 @@ bitmap_line_xdyd: { jmp b3 //SEG1307 bitmap_line_xdyd::@3 b3: - //SEG1308 [700] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG1308 [700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG1309 [701] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1309 [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -23301,7 +23301,7 @@ bitmap_line_xdyd: { jmp b2 //SEG1313 bitmap_line_xdyd::@2 b2: - //SEG1314 [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1314 [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1315 [704] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -23321,7 +23321,7 @@ bitmap_line_ydxd: { .label yd = 7 .label xd = 8 .label e = 9 - //SEG1319 [707] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1319 [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -23334,8 +23334,8 @@ bitmap_line_ydxd: { jmp b1 //SEG1324 bitmap_line_ydxd::@1 b1: - //SEG1325 [709] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - //SEG1326 [710] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 + //SEG1325 [709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + //SEG1326 [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 ldy y //SEG1327 [711] call bitmap_plot //SEG1328 [669] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot] @@ -23346,9 +23346,9 @@ bitmap_line_ydxd: { jmp b4 //SEG1331 bitmap_line_ydxd::@4 b4: - //SEG1332 [712] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG1332 [712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG1333 [713] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1333 [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -23360,9 +23360,9 @@ bitmap_line_ydxd: { jmp b3 //SEG1335 bitmap_line_ydxd::@3 b3: - //SEG1336 [715] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx + //SEG1336 [715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx dex - //SEG1337 [716] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1337 [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -23375,7 +23375,7 @@ bitmap_line_ydxd: { jmp b2 //SEG1341 bitmap_line_ydxd::@2 b2: - //SEG1342 [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1342 [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -23394,12 +23394,12 @@ bitmap_clear: { .label bitmap = 2 .label y = 4 .label _3 = 2 - //SEG1347 [721] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG1347 [721] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG1348 [722] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG1348 [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG1349 [723] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] b1_from_bitmap_clear: //SEG1350 [723] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 @@ -23427,16 +23427,16 @@ bitmap_clear: { jmp b2 //SEG1362 bitmap_clear::@2 b2: - //SEG1363 [725] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1363 [725] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG1364 [726] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG1364 [726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG1365 [727] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG1365 [727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG1366 [728] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 @@ -23444,7 +23444,7 @@ bitmap_clear: { jmp b3 //SEG1367 bitmap_clear::@3 b3: - //SEG1368 [729] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG1368 [729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG1369 [730] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -23475,18 +23475,18 @@ bitmap_init: { jmp b1 //SEG1379 bitmap_init::@1 b1: - //SEG1380 [734] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 + //SEG1380 [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 txa and #$f8 - //SEG1381 [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1381 [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_xlo,x - //SEG1382 [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG1382 [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #>mode_stdbitmap.BITMAP sta bitmap_plot_xhi,x - //SEG1383 [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy + //SEG1383 [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy tya sta bitmap_plot_bit,x - //SEG1384 [738] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 + //SEG1384 [738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 tya lsr tay @@ -23500,7 +23500,7 @@ bitmap_init: { jmp b2 //SEG1388 bitmap_init::@2 b2: - //SEG1389 [741] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG1389 [741] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG1390 [742] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -23522,20 +23522,20 @@ bitmap_init: { jmp b3 //SEG1397 bitmap_init::@3 b3: - //SEG1398 [744] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG1398 [744] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _6 - //SEG1399 [745] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG1399 [745] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG1400 [746] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa + //SEG1400 [746] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa ora _6 - //SEG1401 [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1401 [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG1402 [748] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG1402 [748] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG1403 [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1403 [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG1404 [750] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG1404 [750] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG1405 [751] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 @@ -23544,7 +23544,7 @@ bitmap_init: { jmp b5 //SEG1406 bitmap_init::@5 b5: - //SEG1407 [752] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG1407 [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -23559,7 +23559,7 @@ bitmap_init: { jmp b4 //SEG1410 bitmap_init::@4 b4: - //SEG1411 [754] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG1411 [754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG1412 [755] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -23601,37 +23601,37 @@ mode_mcchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG1420 [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1420 [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1421 [759] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1421 [759] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1422 [760] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1422 [760] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1423 [761] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1423 [761] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1424 [762] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1424 [762] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1425 [763] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1425 [763] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1426 [764] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1426 [764] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1427 [765] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG1427 [765] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL|VIC_MCM sta VIC_CONTROL2 - //SEG1428 [766] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1428 [766] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -23647,10 +23647,10 @@ mode_mcchar: { jmp b1 //SEG1433 mode_mcchar::@1 b1: - //SEG1434 [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1434 [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1435 [769] (byte) mode_mcchar::i#1 ? ++ (byte) mode_mcchar::i#2 -- vbuxx=_inc_vbuxx + //SEG1435 [769] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG1436 [770] if((byte) mode_mcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_mcchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -23658,17 +23658,17 @@ mode_mcchar: { jmp b2 //SEG1437 mode_mcchar::@2 b2: - //SEG1438 [771] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1438 [771] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG1439 [772] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1439 [772] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL1 - //SEG1440 [773] *((const byte*) BGCOL2#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG1440 [773] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BGCOL2 - //SEG1441 [774] *((const byte*) BGCOL3#0) ? (const byte) BLUE#0 -- _deref_pbuc1=vbuc2 + //SEG1441 [774] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 -- _deref_pbuc1=vbuc2 lda #BLUE sta BGCOL3 //SEG1442 [775] phi from mode_mcchar::@2 to mode_mcchar::@3 [phi:mode_mcchar::@2->mode_mcchar::@3] @@ -23710,43 +23710,43 @@ mode_mcchar: { jmp b4 //SEG1459 mode_mcchar::@4 b4: - //SEG1460 [777] (byte~) mode_mcchar::$26 ? (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1460 [777] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1461 [778] (byte~) mode_mcchar::$27 ? (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1461 [778] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1462 [779] *((byte*) mode_mcchar::col#2) ? (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuaa + //SEG1462 [779] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1463 [780] (byte*) mode_mcchar::col#1 ? ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1463 [780] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1464 [781] (byte~) mode_mcchar::$28 ? (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1464 [781] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1465 [782] (byte~) mode_mcchar::$29 ? (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1465 [782] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _29 - //SEG1466 [783] (byte~) mode_mcchar::$30 ? (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1466 [783] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1467 [784] (byte~) mode_mcchar::$31 ? (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuaa=vbuz1_bor_vbuaa + //SEG1467 [784] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuaa=vbuz1_bor_vbuaa ora _29 - //SEG1468 [785] *((byte*) mode_mcchar::ch#2) ? (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuaa + //SEG1468 [785] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1469 [786] (byte*) mode_mcchar::ch#1 ? ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1469 [786] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1470 [787] (byte) mode_mcchar::cx#1 ? ++ (byte) mode_mcchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1470 [787] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1471 [788] if((byte) mode_mcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_mcchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -23754,7 +23754,7 @@ mode_mcchar: { jmp b5 //SEG1472 mode_mcchar::@5 b5: - //SEG1473 [789] (byte) mode_mcchar::cy#1 ? ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1473 [789] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1474 [790] if((byte) mode_mcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_mcchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -23799,37 +23799,37 @@ mode_ecmchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG1483 [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1483 [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1484 [795] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1484 [795] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1485 [796] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1485 [796] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1486 [797] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1486 [797] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1487 [798] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1487 [798] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1488 [799] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1488 [799] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1489 [800] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1489 [800] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|VIC_ECM|3 sta VIC_CONTROL - //SEG1490 [801] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1490 [801] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1491 [802] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1491 [802] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -23845,10 +23845,10 @@ mode_ecmchar: { jmp b1 //SEG1496 mode_ecmchar::@1 b1: - //SEG1497 [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1497 [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1498 [805] (byte) mode_ecmchar::i#1 ? ++ (byte) mode_ecmchar::i#2 -- vbuxx=_inc_vbuxx + //SEG1498 [805] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG1499 [806] if((byte) mode_ecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_ecmchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -23856,20 +23856,20 @@ mode_ecmchar: { jmp b2 //SEG1500 mode_ecmchar::@2 b2: - //SEG1501 [807] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1501 [807] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG1502 [808] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1502 [808] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BGCOL1 - //SEG1503 [809] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG1503 [809] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL2 - //SEG1504 [810] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG1504 [810] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL3 - //SEG1505 [811] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) 6 -- _deref_pbuc1=vbuc2 + //SEG1505 [811] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) 6 -- _deref_pbuc1=vbuc2 lda #6 sta BGCOL4 //SEG1506 [812] phi from mode_ecmchar::@2 to mode_ecmchar::@3 [phi:mode_ecmchar::@2->mode_ecmchar::@3] @@ -23911,43 +23911,43 @@ mode_ecmchar: { jmp b4 //SEG1523 mode_ecmchar::@4 b4: - //SEG1524 [814] (byte~) mode_ecmchar::$26 ? (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1524 [814] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1525 [815] (byte~) mode_ecmchar::$27 ? (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1525 [815] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1526 [816] *((byte*) mode_ecmchar::col#2) ? (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuaa + //SEG1526 [816] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1527 [817] (byte*) mode_ecmchar::col#1 ? ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1527 [817] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1528 [818] (byte~) mode_ecmchar::$28 ? (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1528 [818] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1529 [819] (byte~) mode_ecmchar::$29 ? (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1529 [819] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _29 - //SEG1530 [820] (byte~) mode_ecmchar::$30 ? (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1530 [820] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1531 [821] (byte~) mode_ecmchar::$31 ? (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuaa=vbuz1_bor_vbuaa + //SEG1531 [821] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuaa=vbuz1_bor_vbuaa ora _29 - //SEG1532 [822] *((byte*) mode_ecmchar::ch#2) ? (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuaa + //SEG1532 [822] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1533 [823] (byte*) mode_ecmchar::ch#1 ? ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1533 [823] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1534 [824] (byte) mode_ecmchar::cx#1 ? ++ (byte) mode_ecmchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1534 [824] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1535 [825] if((byte) mode_ecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_ecmchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -23955,7 +23955,7 @@ mode_ecmchar: { jmp b5 //SEG1536 mode_ecmchar::@5 b5: - //SEG1537 [826] (byte) mode_ecmchar::cy#1 ? ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1537 [826] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1538 [827] if((byte) mode_ecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_ecmchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -23996,37 +23996,37 @@ mode_stdchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG1547 [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1547 [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1548 [832] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1548 [832] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1549 [833] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1549 [833] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1550 [834] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1550 [834] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1551 [835] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1551 [835] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1552 [836] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1552 [836] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1553 [837] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1553 [837] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1554 [838] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1554 [838] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1555 [839] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1555 [839] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -24042,10 +24042,10 @@ mode_stdchar: { jmp b1 //SEG1560 mode_stdchar::@1 b1: - //SEG1561 [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1561 [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1562 [842] (byte) mode_stdchar::i#1 ? ++ (byte) mode_stdchar::i#2 -- vbuxx=_inc_vbuxx + //SEG1562 [842] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG1563 [843] if((byte) mode_stdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -24053,11 +24053,11 @@ mode_stdchar: { jmp b2 //SEG1564 mode_stdchar::@2 b2: - //SEG1565 [844] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1565 [844] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG1566 [845] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1566 [845] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL //SEG1567 [846] phi from mode_stdchar::@2 to mode_stdchar::@3 [phi:mode_stdchar::@2->mode_stdchar::@3] @@ -24099,43 +24099,43 @@ mode_stdchar: { jmp b4 //SEG1584 mode_stdchar::@4 b4: - //SEG1585 [848] (byte~) mode_stdchar::$25 ? (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1585 [848] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1586 [849] (byte~) mode_stdchar::$26 ? (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1586 [849] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1587 [850] *((byte*) mode_stdchar::col#2) ? (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuaa + //SEG1587 [850] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1588 [851] (byte*) mode_stdchar::col#1 ? ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1588 [851] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1589 [852] (byte~) mode_stdchar::$27 ? (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1589 [852] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1590 [853] (byte~) mode_stdchar::$28 ? (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1590 [853] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _28 - //SEG1591 [854] (byte~) mode_stdchar::$29 ? (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1591 [854] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1592 [855] (byte~) mode_stdchar::$30 ? (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuaa=vbuz1_bor_vbuaa + //SEG1592 [855] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuaa=vbuz1_bor_vbuaa ora _28 - //SEG1593 [856] *((byte*) mode_stdchar::ch#2) ? (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuaa + //SEG1593 [856] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1594 [857] (byte*) mode_stdchar::ch#1 ? ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1594 [857] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1595 [858] (byte) mode_stdchar::cx#1 ? ++ (byte) mode_stdchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1595 [858] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1596 [859] if((byte) mode_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -24143,7 +24143,7 @@ mode_stdchar: { jmp b5 //SEG1597 mode_stdchar::@5 b5: - //SEG1598 [860] (byte) mode_stdchar::cy#1 ? ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1598 [860] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1599 [861] if((byte) mode_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -24211,10 +24211,10 @@ print_str_lines: { jmp b2 //SEG1619 print_str_lines::@2 b2: - //SEG1620 [870] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#3) -- vbuaa=_deref_pbuz1 + //SEG1620 [870] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y - //SEG1621 [871] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1 + //SEG1621 [871] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -24225,10 +24225,10 @@ print_str_lines: { jmp b4 //SEG1623 print_str_lines::@4 b4: - //SEG1624 [873] *((byte*) print_char_cursor#17) ? (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa + //SEG1624 [873] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG1625 [874] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1 + //SEG1625 [874] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -24252,7 +24252,7 @@ print_str_lines: { //SEG1633 [880] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln] print_ln_from_b5: jsr print_ln - //SEG1634 [879] (byte*~) print_char_cursor#103 ? (byte*) print_line_cursor#19 -- pbuz1=pbuz2 + //SEG1634 [879] (byte*~) print_char_cursor#103 ← (byte*) print_line_cursor#19 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -24274,7 +24274,7 @@ print_ln: { jmp b1 //SEG1642 print_ln::@1 b1: - //SEG1643 [882] (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1643 [882] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -24315,11 +24315,11 @@ print_cls: { jmp b1 //SEG1652 print_cls::@1 b1: - //SEG1653 [887] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG1653 [887] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG1654 [888] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG1654 [888] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -26902,15 +26902,15 @@ Score: 2305641 main: { //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt (prevent keyboard reading glitches and allows to hide basic/kernal) // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) DTV_FEATURE#0) ? (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) DTV_FEATURE#0) ← (const byte) DTV_FEATURE_ENABLE#0 -- _deref_pbuc1=vbuc2 // Enable DTV extended modes lda #DTV_FEATURE_ENABLE sta DTV_FEATURE @@ -26926,38 +26926,38 @@ menu: { .label SCREEN = $8000 .label CHARSET = $9800 .label c = 2 - //SEG18 [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG18 [10] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) menu::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // Charset ROM // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG19 [11] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG19 [11] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG20 [12] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG20 [12] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG21 [13] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG21 [13] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // DTV Graphics Mode sta DTV_CONTROL - //SEG22 [14] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG22 [14] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG23 [15] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG23 [15] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) menu::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG24 [16] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG24 [16] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG25 [17] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG25 [17] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG26 [18] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG26 [18] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) menu::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) menu::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -26969,10 +26969,10 @@ menu: { //SEG30 [19] phi (byte) menu::i#2 = (byte) menu::i#1 [phi:menu::@1->menu::@1#0] -- register_copy //SEG31 menu::@1 b1: - //SEG32 [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG32 [20] *((const byte*) DTV_PALETTE#0 + (byte) menu::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) menu::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG33 [21] (byte) menu::i#1 ? ++ (byte) menu::i#2 -- vbuxx=_inc_vbuxx + //SEG33 [21] (byte) menu::i#1 ← ++ (byte) menu::i#2 -- vbuxx=_inc_vbuxx inx //SEG34 [22] if((byte) menu::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto menu::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -26988,11 +26988,11 @@ menu: { //SEG38 [23] phi (byte*) menu::c#2 = (byte*) menu::c#1 [phi:menu::@2->menu::@2#0] -- register_copy //SEG39 menu::@2 b2: - //SEG40 [24] *((byte*) menu::c#2) ? (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1 + //SEG40 [24] *((byte*) menu::c#2) ← (const byte) LIGHT_GREEN#0 -- _deref_pbuz1=vbuc1 lda #LIGHT_GREEN ldy #0 sta (c),y - //SEG41 [25] (byte*) menu::c#1 ? ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1 + //SEG41 [25] (byte*) menu::c#1 ← ++ (byte*) menu::c#2 -- pbuz1=_inc_pbuz1 inc c bne !+ inc c+1 @@ -27005,11 +27005,11 @@ menu: { cmp #print_set_screen] @@ -27032,9 +27032,9 @@ menu: { //SEG60 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_1#0 [phi:menu::@4->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_1 jsr keyboard_key_pressed - //SEG61 [36] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 + //SEG61 [36] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 //SEG62 menu::@30 - //SEG63 [37] (byte~) menu::$29 ? (byte) keyboard_key_pressed::return#2 + //SEG63 [37] (byte~) menu::$29 ← (byte) keyboard_key_pressed::return#2 //SEG64 [38] if((byte~) menu::$29==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@5 -- vbuaa_eq_0_then_la1 cmp #0 beq b5 @@ -27053,9 +27053,9 @@ menu: { //SEG74 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_2#0 [phi:menu::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_2 jsr keyboard_key_pressed - //SEG75 [44] (byte) keyboard_key_pressed::return#24 ? (byte) keyboard_key_pressed::return#0 + //SEG75 [44] (byte) keyboard_key_pressed::return#24 ← (byte) keyboard_key_pressed::return#0 //SEG76 menu::@31 - //SEG77 [45] (byte~) menu::$33 ? (byte) keyboard_key_pressed::return#24 + //SEG77 [45] (byte~) menu::$33 ← (byte) keyboard_key_pressed::return#24 //SEG78 [46] if((byte~) menu::$33==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@6 -- vbuaa_eq_0_then_la1 cmp #0 beq b6 @@ -27072,9 +27072,9 @@ menu: { //SEG86 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_3#0 [phi:menu::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_3 jsr keyboard_key_pressed - //SEG87 [51] (byte) keyboard_key_pressed::return#25 ? (byte) keyboard_key_pressed::return#0 + //SEG87 [51] (byte) keyboard_key_pressed::return#25 ← (byte) keyboard_key_pressed::return#0 //SEG88 menu::@32 - //SEG89 [52] (byte~) menu::$37 ? (byte) keyboard_key_pressed::return#25 + //SEG89 [52] (byte~) menu::$37 ← (byte) keyboard_key_pressed::return#25 //SEG90 [53] if((byte~) menu::$37==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@7 -- vbuaa_eq_0_then_la1 cmp #0 beq b7 @@ -27091,9 +27091,9 @@ menu: { //SEG98 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_4#0 [phi:menu::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_4 jsr keyboard_key_pressed - //SEG99 [58] (byte) keyboard_key_pressed::return#26 ? (byte) keyboard_key_pressed::return#0 + //SEG99 [58] (byte) keyboard_key_pressed::return#26 ← (byte) keyboard_key_pressed::return#0 //SEG100 menu::@33 - //SEG101 [59] (byte~) menu::$41 ? (byte) keyboard_key_pressed::return#26 + //SEG101 [59] (byte~) menu::$41 ← (byte) keyboard_key_pressed::return#26 //SEG102 [60] if((byte~) menu::$41==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@8 -- vbuaa_eq_0_then_la1 cmp #0 beq b8 @@ -27110,9 +27110,9 @@ menu: { //SEG110 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_6#0 [phi:menu::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_6 jsr keyboard_key_pressed - //SEG111 [65] (byte) keyboard_key_pressed::return#27 ? (byte) keyboard_key_pressed::return#0 + //SEG111 [65] (byte) keyboard_key_pressed::return#27 ← (byte) keyboard_key_pressed::return#0 //SEG112 menu::@34 - //SEG113 [66] (byte~) menu::$45 ? (byte) keyboard_key_pressed::return#27 + //SEG113 [66] (byte~) menu::$45 ← (byte) keyboard_key_pressed::return#27 //SEG114 [67] if((byte~) menu::$45==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@9 -- vbuaa_eq_0_then_la1 cmp #0 beq b9 @@ -27129,9 +27129,9 @@ menu: { //SEG122 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_7#0 [phi:menu::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_7 jsr keyboard_key_pressed - //SEG123 [72] (byte) keyboard_key_pressed::return#28 ? (byte) keyboard_key_pressed::return#0 + //SEG123 [72] (byte) keyboard_key_pressed::return#28 ← (byte) keyboard_key_pressed::return#0 //SEG124 menu::@35 - //SEG125 [73] (byte~) menu::$49 ? (byte) keyboard_key_pressed::return#28 + //SEG125 [73] (byte~) menu::$49 ← (byte) keyboard_key_pressed::return#28 //SEG126 [74] if((byte~) menu::$49==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@10 -- vbuaa_eq_0_then_la1 cmp #0 beq b10 @@ -27148,9 +27148,9 @@ menu: { //SEG134 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_8#0 [phi:menu::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_8 jsr keyboard_key_pressed - //SEG135 [79] (byte) keyboard_key_pressed::return#29 ? (byte) keyboard_key_pressed::return#0 + //SEG135 [79] (byte) keyboard_key_pressed::return#29 ← (byte) keyboard_key_pressed::return#0 //SEG136 menu::@36 - //SEG137 [80] (byte~) menu::$53 ? (byte) keyboard_key_pressed::return#29 + //SEG137 [80] (byte~) menu::$53 ← (byte) keyboard_key_pressed::return#29 //SEG138 [81] if((byte~) menu::$53==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@11 -- vbuaa_eq_0_then_la1 cmp #0 beq b11 @@ -27167,9 +27167,9 @@ menu: { //SEG146 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_A#0 [phi:menu::@11->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_A jsr keyboard_key_pressed - //SEG147 [86] (byte) keyboard_key_pressed::return#30 ? (byte) keyboard_key_pressed::return#0 + //SEG147 [86] (byte) keyboard_key_pressed::return#30 ← (byte) keyboard_key_pressed::return#0 //SEG148 menu::@37 - //SEG149 [87] (byte~) menu::$57 ? (byte) keyboard_key_pressed::return#30 + //SEG149 [87] (byte~) menu::$57 ← (byte) keyboard_key_pressed::return#30 //SEG150 [88] if((byte~) menu::$57==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@12 -- vbuaa_eq_0_then_la1 cmp #0 beq b12 @@ -27186,9 +27186,9 @@ menu: { //SEG158 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:menu::@12->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_B jsr keyboard_key_pressed - //SEG159 [93] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 + //SEG159 [93] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 //SEG160 menu::@38 - //SEG161 [94] (byte~) menu::$61 ? (byte) keyboard_key_pressed::return#10 + //SEG161 [94] (byte~) menu::$61 ← (byte) keyboard_key_pressed::return#10 //SEG162 [95] if((byte~) menu::$61==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@13 -- vbuaa_eq_0_then_la1 cmp #0 beq b13 @@ -27205,9 +27205,9 @@ menu: { //SEG170 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:menu::@13->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_C jsr keyboard_key_pressed - //SEG171 [100] (byte) keyboard_key_pressed::return#11 ? (byte) keyboard_key_pressed::return#0 + //SEG171 [100] (byte) keyboard_key_pressed::return#11 ← (byte) keyboard_key_pressed::return#0 //SEG172 menu::@39 - //SEG173 [101] (byte~) menu::$65 ? (byte) keyboard_key_pressed::return#11 + //SEG173 [101] (byte~) menu::$65 ← (byte) keyboard_key_pressed::return#11 //SEG174 [102] if((byte~) menu::$65==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@14 -- vbuaa_eq_0_then_la1 cmp #0 beq b14 @@ -27224,9 +27224,9 @@ menu: { //SEG182 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_D#0 [phi:menu::@14->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_D jsr keyboard_key_pressed - //SEG183 [107] (byte) keyboard_key_pressed::return#12 ? (byte) keyboard_key_pressed::return#0 + //SEG183 [107] (byte) keyboard_key_pressed::return#12 ← (byte) keyboard_key_pressed::return#0 //SEG184 menu::@40 - //SEG185 [108] (byte~) menu::$69 ? (byte) keyboard_key_pressed::return#12 + //SEG185 [108] (byte~) menu::$69 ← (byte) keyboard_key_pressed::return#12 //SEG186 [109] if((byte~) menu::$69==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@15 -- vbuaa_eq_0_then_la1 cmp #0 beq b15 @@ -27243,9 +27243,9 @@ menu: { //SEG194 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_E#0 [phi:menu::@15->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_E jsr keyboard_key_pressed - //SEG195 [114] (byte) keyboard_key_pressed::return#13 ? (byte) keyboard_key_pressed::return#0 + //SEG195 [114] (byte) keyboard_key_pressed::return#13 ← (byte) keyboard_key_pressed::return#0 //SEG196 menu::@41 - //SEG197 [115] (byte~) menu::$73 ? (byte) keyboard_key_pressed::return#13 + //SEG197 [115] (byte~) menu::$73 ← (byte) keyboard_key_pressed::return#13 //SEG198 [116] if((byte~) menu::$73==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 -- vbuaa_eq_0_then_la1 cmp #0 bne !b4+ @@ -27271,35 +27271,35 @@ mode_8bppchunkybmm: { .label gfxb = 5 .label x = 2 .label y = 4 - //SEG203 [119] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2 + //SEG203 [119] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0|(const byte) DTV_COLORRAM_OFF#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY|DTV_COLORRAM_OFF sta DTV_CONTROL - //SEG204 [120] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG204 [120] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG205 [121] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG205 [121] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG206 [122] *((const byte*) DTV_PLANEB_START_LO#0) ? <<(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG206 [122] *((const byte*) DTV_PLANEB_START_LO#0) ← <<(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #PLANEB&$ffff sta DTV_PLANEB_START_LO - //SEG207 [123] *((const byte*) DTV_PLANEB_START_MI#0) ? ><(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG207 [123] *((const byte*) DTV_PLANEB_START_MI#0) ← ><(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_MI - //SEG208 [124] *((const byte*) DTV_PLANEB_START_HI#0) ? <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG208 [124] *((const byte*) DTV_PLANEB_START_HI#0) ← <>(const dword) mode_8bppchunkybmm::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #PLANEB>>$10 sta DTV_PLANEB_START_HI - //SEG209 [125] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 8 -- _deref_pbuc1=vbuc2 + //SEG209 [125] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 8 -- _deref_pbuc1=vbuc2 lda #8 sta DTV_PLANEB_STEP - //SEG210 [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG210 [126] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG211 [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG211 [127] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEB_MODULO_HI - //SEG212 [128] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG212 [128] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Border color sta BORDERCOL //SEG213 [129] phi from mode_8bppchunkybmm to mode_8bppchunkybmm::@1 [phi:mode_8bppchunkybmm->mode_8bppchunkybmm::@1] @@ -27310,10 +27310,10 @@ mode_8bppchunkybmm: { //SEG216 [129] phi (byte) mode_8bppchunkybmm::i#2 = (byte) mode_8bppchunkybmm::i#1 [phi:mode_8bppchunkybmm::@1->mode_8bppchunkybmm::@1#0] -- register_copy //SEG217 mode_8bppchunkybmm::@1 b1: - //SEG218 [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ? (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG218 [130] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bppchunkybmm::i#2) ← (byte) mode_8bppchunkybmm::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG219 [131] (byte) mode_8bppchunkybmm::i#1 ? ++ (byte) mode_8bppchunkybmm::i#2 -- vbuxx=_inc_vbuxx + //SEG219 [131] (byte) mode_8bppchunkybmm::i#1 ← ++ (byte) mode_8bppchunkybmm::i#2 -- vbuxx=_inc_vbuxx inx //SEG220 [132] if((byte) mode_8bppchunkybmm::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bppchunkybmm::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -27363,14 +27363,14 @@ mode_8bppchunkybmm: { cmp #<$8000 bne b5 //SEG245 mode_8bppchunkybmm::@6 - //SEG246 [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ? (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuaa=vbuxx + //SEG246 [138] (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 ← (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuaa=vbuxx txa //SEG247 [139] call dtvSetCpuBankSegment1 //SEG248 [223] phi from mode_8bppchunkybmm::@6 to dtvSetCpuBankSegment1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1] //SEG249 [223] phi (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 = (byte) dtvSetCpuBankSegment1::cpuBankIdx#1 [phi:mode_8bppchunkybmm::@6->dtvSetCpuBankSegment1#0] -- register_copy jsr dtvSetCpuBankSegment1 //SEG250 mode_8bppchunkybmm::@9 - //SEG251 [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ? ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx + //SEG251 [140] (byte) mode_8bppchunkybmm::gfxbCpuBank#2 ← ++ (byte) mode_8bppchunkybmm::gfxbCpuBank#4 -- vbuxx=_inc_vbuxx inx //SEG252 [141] phi from mode_8bppchunkybmm::@9 to mode_8bppchunkybmm::@5 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5] //SEG253 [141] phi (byte) mode_8bppchunkybmm::gfxbCpuBank#8 = (byte) mode_8bppchunkybmm::gfxbCpuBank#2 [phi:mode_8bppchunkybmm::@9->mode_8bppchunkybmm::@5#0] -- register_copy @@ -27384,7 +27384,7 @@ mode_8bppchunkybmm: { //SEG257 [141] phi (byte*) mode_8bppchunkybmm::gfxb#4 = (byte*) mode_8bppchunkybmm::gfxb#3 [phi:mode_8bppchunkybmm::@4->mode_8bppchunkybmm::@5#1] -- register_copy //SEG258 mode_8bppchunkybmm::@5 b5: - //SEG259 [142] (word~) mode_8bppchunkybmm::$27 ? (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3 + //SEG259 [142] (word~) mode_8bppchunkybmm::$27 ← (word) mode_8bppchunkybmm::x#2 + (byte) mode_8bppchunkybmm::y#6 -- vwuz1=vwuz2_plus_vbuz3 lda y clc adc x @@ -27392,17 +27392,17 @@ mode_8bppchunkybmm: { lda #0 adc x+1 sta _27+1 - //SEG260 [143] (byte) mode_8bppchunkybmm::c#0 ? ((byte)) (word~) mode_8bppchunkybmm::$27 -- vbuaa=_byte_vwuz1 + //SEG260 [143] (byte) mode_8bppchunkybmm::c#0 ← ((byte)) (word~) mode_8bppchunkybmm::$27 -- vbuaa=_byte_vwuz1 lda _27 - //SEG261 [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ? (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuaa + //SEG261 [144] *((byte*) mode_8bppchunkybmm::gfxb#4) ← (byte) mode_8bppchunkybmm::c#0 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG262 [145] (byte*) mode_8bppchunkybmm::gfxb#1 ? ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1 + //SEG262 [145] (byte*) mode_8bppchunkybmm::gfxb#1 ← ++ (byte*) mode_8bppchunkybmm::gfxb#4 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG263 [146] (word) mode_8bppchunkybmm::x#1 ? ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1 + //SEG263 [146] (word) mode_8bppchunkybmm::x#1 ← ++ (word) mode_8bppchunkybmm::x#2 -- vwuz1=_inc_vwuz1 inc x bne !+ inc x+1 @@ -27415,7 +27415,7 @@ mode_8bppchunkybmm: { cmp #<$140 bne b4 //SEG265 mode_8bppchunkybmm::@7 - //SEG266 [148] (byte) mode_8bppchunkybmm::y#1 ? ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1 + //SEG266 [148] (byte) mode_8bppchunkybmm::y#1 ← ++ (byte) mode_8bppchunkybmm::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG267 [149] if((byte) mode_8bppchunkybmm::y#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_8bppchunkybmm::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -27462,9 +27462,9 @@ mode_ctrl: { //SEG291 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_SPACE#0 [phi:mode_ctrl::@3->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_SPACE jsr keyboard_key_pressed - //SEG292 [160] (byte) keyboard_key_pressed::return#14 ? (byte) keyboard_key_pressed::return#0 + //SEG292 [160] (byte) keyboard_key_pressed::return#14 ← (byte) keyboard_key_pressed::return#0 //SEG293 mode_ctrl::@19 - //SEG294 [161] (byte~) mode_ctrl::$1 ? (byte) keyboard_key_pressed::return#14 + //SEG294 [161] (byte~) mode_ctrl::$1 ← (byte) keyboard_key_pressed::return#14 //SEG295 [162] if((byte~) mode_ctrl::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@4 -- vbuaa_eq_0_then_la1 cmp #0 beq b4 @@ -27473,7 +27473,7 @@ mode_ctrl: { rts //SEG298 mode_ctrl::@4 b4: - //SEG299 [164] (byte) mode_ctrl::ctrl#0 ? (byte) dtv_control#114 -- vbuxx=vbuz1 + //SEG299 [164] (byte) mode_ctrl::ctrl#0 ← (byte) dtv_control#114 -- vbuxx=vbuz1 // Read the current control byte ldx dtv_control //SEG300 [165] call keyboard_key_pressed @@ -27481,14 +27481,14 @@ mode_ctrl: { //SEG302 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_L#0 [phi:mode_ctrl::@4->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_L jsr keyboard_key_pressed - //SEG303 [166] (byte) keyboard_key_pressed::return#15 ? (byte) keyboard_key_pressed::return#0 + //SEG303 [166] (byte) keyboard_key_pressed::return#15 ← (byte) keyboard_key_pressed::return#0 //SEG304 mode_ctrl::@20 - //SEG305 [167] (byte~) mode_ctrl::$4 ? (byte) keyboard_key_pressed::return#15 + //SEG305 [167] (byte~) mode_ctrl::$4 ← (byte) keyboard_key_pressed::return#15 //SEG306 [168] if((byte~) mode_ctrl::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@5 -- vbuaa_eq_0_then_la1 cmp #0 beq b5 //SEG307 mode_ctrl::@12 - //SEG308 [169] (byte) mode_ctrl::ctrl#1 ? (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG308 [169] (byte) mode_ctrl::ctrl#1 ← (byte) mode_ctrl::ctrl#0 | (const byte) DTV_LINEAR#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_LINEAR tax @@ -27501,14 +27501,14 @@ mode_ctrl: { //SEG314 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_H#0 [phi:mode_ctrl::@5->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_H jsr keyboard_key_pressed - //SEG315 [172] (byte) keyboard_key_pressed::return#16 ? (byte) keyboard_key_pressed::return#0 + //SEG315 [172] (byte) keyboard_key_pressed::return#16 ← (byte) keyboard_key_pressed::return#0 //SEG316 mode_ctrl::@21 - //SEG317 [173] (byte~) mode_ctrl::$8 ? (byte) keyboard_key_pressed::return#16 + //SEG317 [173] (byte~) mode_ctrl::$8 ← (byte) keyboard_key_pressed::return#16 //SEG318 [174] if((byte~) mode_ctrl::$8==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@6 -- vbuaa_eq_0_then_la1 cmp #0 beq b6 //SEG319 mode_ctrl::@13 - //SEG320 [175] (byte) mode_ctrl::ctrl#2 ? (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG320 [175] (byte) mode_ctrl::ctrl#2 ← (byte) mode_ctrl::ctrl#17 | (const byte) DTV_HIGHCOLOR#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_HIGHCOLOR tax @@ -27521,14 +27521,14 @@ mode_ctrl: { //SEG326 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_O#0 [phi:mode_ctrl::@6->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_O jsr keyboard_key_pressed - //SEG327 [178] (byte) keyboard_key_pressed::return#17 ? (byte) keyboard_key_pressed::return#0 + //SEG327 [178] (byte) keyboard_key_pressed::return#17 ← (byte) keyboard_key_pressed::return#0 //SEG328 mode_ctrl::@22 - //SEG329 [179] (byte~) mode_ctrl::$12 ? (byte) keyboard_key_pressed::return#17 + //SEG329 [179] (byte~) mode_ctrl::$12 ← (byte) keyboard_key_pressed::return#17 //SEG330 [180] if((byte~) mode_ctrl::$12==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@7 -- vbuaa_eq_0_then_la1 cmp #0 beq b7 //SEG331 mode_ctrl::@14 - //SEG332 [181] (byte) mode_ctrl::ctrl#3 ? (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG332 [181] (byte) mode_ctrl::ctrl#3 ← (byte) mode_ctrl::ctrl#10 | (const byte) DTV_OVERSCAN#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_OVERSCAN tax @@ -27541,14 +27541,14 @@ mode_ctrl: { //SEG338 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_B#0 [phi:mode_ctrl::@7->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_B jsr keyboard_key_pressed - //SEG339 [184] (byte) keyboard_key_pressed::return#18 ? (byte) keyboard_key_pressed::return#0 + //SEG339 [184] (byte) keyboard_key_pressed::return#18 ← (byte) keyboard_key_pressed::return#0 //SEG340 mode_ctrl::@23 - //SEG341 [185] (byte~) mode_ctrl::$16 ? (byte) keyboard_key_pressed::return#18 + //SEG341 [185] (byte~) mode_ctrl::$16 ← (byte) keyboard_key_pressed::return#18 //SEG342 [186] if((byte~) mode_ctrl::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@8 -- vbuaa_eq_0_then_la1 cmp #0 beq b8 //SEG343 mode_ctrl::@15 - //SEG344 [187] (byte) mode_ctrl::ctrl#4 ? (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG344 [187] (byte) mode_ctrl::ctrl#4 ← (byte) mode_ctrl::ctrl#11 | (const byte) DTV_BORDER_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_BORDER_OFF tax @@ -27561,14 +27561,14 @@ mode_ctrl: { //SEG350 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_U#0 [phi:mode_ctrl::@8->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_U jsr keyboard_key_pressed - //SEG351 [190] (byte) keyboard_key_pressed::return#19 ? (byte) keyboard_key_pressed::return#0 + //SEG351 [190] (byte) keyboard_key_pressed::return#19 ← (byte) keyboard_key_pressed::return#0 //SEG352 mode_ctrl::@24 - //SEG353 [191] (byte~) mode_ctrl::$20 ? (byte) keyboard_key_pressed::return#19 + //SEG353 [191] (byte~) mode_ctrl::$20 ← (byte) keyboard_key_pressed::return#19 //SEG354 [192] if((byte~) mode_ctrl::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@9 -- vbuaa_eq_0_then_la1 cmp #0 beq b9 //SEG355 mode_ctrl::@16 - //SEG356 [193] (byte) mode_ctrl::ctrl#5 ? (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG356 [193] (byte) mode_ctrl::ctrl#5 ← (byte) mode_ctrl::ctrl#12 | (const byte) DTV_CHUNKY#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_CHUNKY tax @@ -27581,14 +27581,14 @@ mode_ctrl: { //SEG362 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_C#0 [phi:mode_ctrl::@9->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_C jsr keyboard_key_pressed - //SEG363 [196] (byte) keyboard_key_pressed::return#20 ? (byte) keyboard_key_pressed::return#0 + //SEG363 [196] (byte) keyboard_key_pressed::return#20 ← (byte) keyboard_key_pressed::return#0 //SEG364 mode_ctrl::@25 - //SEG365 [197] (byte~) mode_ctrl::$24 ? (byte) keyboard_key_pressed::return#20 + //SEG365 [197] (byte~) mode_ctrl::$24 ← (byte) keyboard_key_pressed::return#20 //SEG366 [198] if((byte~) mode_ctrl::$24==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@10 -- vbuaa_eq_0_then_la1 cmp #0 beq b10 //SEG367 mode_ctrl::@17 - //SEG368 [199] (byte) mode_ctrl::ctrl#6 ? (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG368 [199] (byte) mode_ctrl::ctrl#6 ← (byte) mode_ctrl::ctrl#13 | (const byte) DTV_COLORRAM_OFF#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #DTV_COLORRAM_OFF tax @@ -27601,9 +27601,9 @@ mode_ctrl: { //SEG374 [211] phi (byte) keyboard_key_pressed::key#20 = (const byte) KEY_0#0 [phi:mode_ctrl::@10->keyboard_key_pressed#0] -- vbuyy=vbuc1 ldy #KEY_0 jsr keyboard_key_pressed - //SEG375 [202] (byte) keyboard_key_pressed::return#21 ? (byte) keyboard_key_pressed::return#0 + //SEG375 [202] (byte) keyboard_key_pressed::return#21 ← (byte) keyboard_key_pressed::return#0 //SEG376 mode_ctrl::@26 - //SEG377 [203] (byte~) mode_ctrl::$28 ? (byte) keyboard_key_pressed::return#21 + //SEG377 [203] (byte~) mode_ctrl::$28 ← (byte) keyboard_key_pressed::return#21 //SEG378 [204] if((byte~) mode_ctrl::$28==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_ctrl::@27 -- vbuaa_eq_0_then_la1 cmp #0 beq b11 @@ -27616,11 +27616,11 @@ mode_ctrl: { cpx dtv_control beq b1 //SEG383 mode_ctrl::@18 - //SEG384 [207] (byte) dtv_control#17 ? (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuxx + //SEG384 [207] (byte) dtv_control#17 ← (byte) mode_ctrl::ctrl#14 -- vbuz1=vbuxx stx dtv_control - //SEG385 [208] *((const byte*) DTV_CONTROL#0) ? (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx + //SEG385 [208] *((const byte*) DTV_CONTROL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx stx DTV_CONTROL - //SEG386 [209] *((const byte*) BORDERCOL#0) ? (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx + //SEG386 [209] *((const byte*) BORDERCOL#0) ← (byte) mode_ctrl::ctrl#14 -- _deref_pbuc1=vbuxx stx BORDERCOL jmp b1 //SEG387 [210] phi from mode_ctrl::@26 to mode_ctrl::@27 [phi:mode_ctrl::@26->mode_ctrl::@27] @@ -27636,23 +27636,23 @@ mode_ctrl: { // keyboard_key_pressed(byte register(Y) key) keyboard_key_pressed: { .label colidx = 7 - //SEG392 [212] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuyy_band_vbuc1 + //SEG392 [212] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#20 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuyy_band_vbuc1 tya and #7 sta colidx - //SEG393 [213] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuyy_ror_3 + //SEG393 [213] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#20 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuyy_ror_3 tya lsr lsr lsr - //SEG394 [214] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 -- vbuyy=vbuaa + //SEG394 [214] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuyy=vbuaa tay //SEG395 [215] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG396 [216] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG396 [216] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 //SEG397 keyboard_key_pressed::@1 - //SEG398 [217] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 - //SEG399 [218] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuz1 + //SEG398 [217] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 + //SEG399 [218] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuz1 ldy colidx and keyboard_matrix_col_bitmask,y //SEG400 keyboard_key_pressed::@return @@ -27667,10 +27667,10 @@ keyboard_key_pressed: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(Y) rowid) keyboard_matrix_read: { - //SEG403 [220] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy + //SEG403 [220] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuyy lda keyboard_matrix_row_bitmask,y sta CIA1_PORT_A - //SEG404 [221] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG404 [221] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff //SEG405 keyboard_matrix_read::@return @@ -27685,7 +27685,7 @@ keyboard_matrix_read: { dtvSetCpuBankSegment1: { // Move CPU BANK 1 SEGMENT ($4000-$7fff) .label cpuBank = $ff - //SEG408 [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ? (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuaa + //SEG408 [224] *((const byte*) dtvSetCpuBankSegment1::cpuBank#0) ← (byte) dtvSetCpuBankSegment1::cpuBankIdx#3 -- _deref_pbuc1=vbuaa sta cpuBank //SEG409 asm { .byte$32,$dd lda$ff .byte$32,$00 } .byte $32, $dd @@ -27720,51 +27720,51 @@ mode_8bpppixelcell: { .label col = 9 .label cr = 7 .label ch = 4 - //SEG413 [227] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2 + //SEG413 [227] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0|(const byte) DTV_CHUNKY#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR|DTV_CHUNKY sta DTV_CONTROL - //SEG414 [228] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG414 [228] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG415 [229] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG415 [229] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG416 [230] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG416 [230] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG417 [231] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG418 [232] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG418 [232] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG419 [233] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG419 [233] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG420 [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG420 [234] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG421 [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG421 [235] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEA_MODULO_HI - //SEG422 [236] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG422 [236] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG423 [237] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_8bpppixelcell::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG424 [238] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG424 [238] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG425 [239] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG425 [239] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEB_STEP - //SEG426 [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG426 [240] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEB_MODULO_LO - //SEG427 [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG427 [241] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEB_MODULO_HI - //SEG428 [242] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG428 [242] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Border color sta BORDERCOL //SEG429 [243] phi from mode_8bpppixelcell to mode_8bpppixelcell::@1 [phi:mode_8bpppixelcell->mode_8bpppixelcell::@1] @@ -27775,10 +27775,10 @@ mode_8bpppixelcell: { //SEG432 [243] phi (byte) mode_8bpppixelcell::i#2 = (byte) mode_8bpppixelcell::i#1 [phi:mode_8bpppixelcell::@1->mode_8bpppixelcell::@1#0] -- register_copy //SEG433 mode_8bpppixelcell::@1 b1: - //SEG434 [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ? (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG434 [244] *((const byte*) DTV_PALETTE#0 + (byte) mode_8bpppixelcell::i#2) ← (byte) mode_8bpppixelcell::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG435 [245] (byte) mode_8bpppixelcell::i#1 ? ++ (byte) mode_8bpppixelcell::i#2 -- vbuxx=_inc_vbuxx + //SEG435 [245] (byte) mode_8bpppixelcell::i#1 ← ++ (byte) mode_8bpppixelcell::i#2 -- vbuxx=_inc_vbuxx inx //SEG436 [246] if((byte) mode_8bpppixelcell::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_8bpppixelcell::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -27806,42 +27806,42 @@ mode_8bpppixelcell: { //SEG449 [248] phi (byte) mode_8bpppixelcell::ax#2 = (byte) mode_8bpppixelcell::ax#1 [phi:mode_8bpppixelcell::@3->mode_8bpppixelcell::@3#1] -- register_copy //SEG450 mode_8bpppixelcell::@3 b3: - //SEG451 [249] (byte~) mode_8bpppixelcell::$14 ? (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG451 [249] (byte~) mode_8bpppixelcell::$14 ← (byte) mode_8bpppixelcell::ay#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and ay - //SEG452 [250] (byte~) mode_8bpppixelcell::$15 ? (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG452 [250] (byte~) mode_8bpppixelcell::$15 ← (byte~) mode_8bpppixelcell::$14 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _15 - //SEG453 [251] (byte~) mode_8bpppixelcell::$16 ? (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG453 [251] (byte~) mode_8bpppixelcell::$16 ← (byte) mode_8bpppixelcell::ax#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG454 [252] (byte~) mode_8bpppixelcell::$17 ? (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuaa=vbuz1_bor_vbuaa + //SEG454 [252] (byte~) mode_8bpppixelcell::$17 ← (byte~) mode_8bpppixelcell::$15 | (byte~) mode_8bpppixelcell::$16 -- vbuaa=vbuz1_bor_vbuaa ora _15 - //SEG455 [253] *((byte*) mode_8bpppixelcell::gfxa#2) ? (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuaa + //SEG455 [253] *((byte*) mode_8bpppixelcell::gfxa#2) ← (byte~) mode_8bpppixelcell::$17 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxa),y - //SEG456 [254] (byte*) mode_8bpppixelcell::gfxa#1 ? ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG456 [254] (byte*) mode_8bpppixelcell::gfxa#1 ← ++ (byte*) mode_8bpppixelcell::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG457 [255] (byte) mode_8bpppixelcell::ax#1 ? ++ (byte) mode_8bpppixelcell::ax#2 -- vbuxx=_inc_vbuxx + //SEG457 [255] (byte) mode_8bpppixelcell::ax#1 ← ++ (byte) mode_8bpppixelcell::ax#2 -- vbuxx=_inc_vbuxx inx //SEG458 [256] if((byte) mode_8bpppixelcell::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_8bpppixelcell::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b3 //SEG459 mode_8bpppixelcell::@4 - //SEG460 [257] (byte) mode_8bpppixelcell::ay#1 ? ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1 + //SEG460 [257] (byte) mode_8bpppixelcell::ay#1 ← ++ (byte) mode_8bpppixelcell::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG461 [258] if((byte) mode_8bpppixelcell::ay#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_8bpppixelcell::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$19 cmp ay bne b2 //SEG462 mode_8bpppixelcell::@5 - //SEG463 [259] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 + //SEG463 [259] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_CHARROM#0 -- _deref_pbuc1=vbuc2 // 8bpp cells for Plane B (charset) - ROM charset with 256 colors lda #PROCPORT_RAM_CHARROM sta PROCPORT @@ -27882,11 +27882,11 @@ mode_8bpppixelcell: { //SEG484 [261] phi (byte*) mode_8bpppixelcell::chargen#2 = (byte*) mode_8bpppixelcell::chargen#1 [phi:mode_8bpppixelcell::@11->mode_8bpppixelcell::@7#3] -- register_copy //SEG485 mode_8bpppixelcell::@7 b7: - //SEG486 [262] (byte) mode_8bpppixelcell::bits#0 ? *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2 + //SEG486 [262] (byte) mode_8bpppixelcell::bits#0 ← *((byte*) mode_8bpppixelcell::chargen#2) -- vbuz1=_deref_pbuz2 ldy #0 lda (chargen),y sta bits - //SEG487 [263] (byte*) mode_8bpppixelcell::chargen#1 ? ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1 + //SEG487 [263] (byte*) mode_8bpppixelcell::chargen#1 ← ++ (byte*) mode_8bpppixelcell::chargen#2 -- pbuz1=_inc_pbuz1 inc chargen bne !+ inc chargen+1 @@ -27904,14 +27904,14 @@ mode_8bpppixelcell: { //SEG497 [264] phi (byte) mode_8bpppixelcell::bits#2 = (byte) mode_8bpppixelcell::bits#1 [phi:mode_8bpppixelcell::@9->mode_8bpppixelcell::@8#3] -- register_copy //SEG498 mode_8bpppixelcell::@8 b8: - //SEG499 [265] (byte~) mode_8bpppixelcell::$20 ? (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG499 [265] (byte~) mode_8bpppixelcell::$20 ← (byte) mode_8bpppixelcell::bits#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and bits //SEG500 [266] if((byte~) mode_8bpppixelcell::$20==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_8bpppixelcell::@9 -- vbuaa_eq_0_then_la1 cmp #0 beq b4 //SEG501 mode_8bpppixelcell::@10 - //SEG502 [267] (byte~) mode_8bpppixelcell::c#3 ? (byte) mode_8bpppixelcell::col#2 -- vbuaa=vbuz1 + //SEG502 [267] (byte~) mode_8bpppixelcell::c#3 ← (byte) mode_8bpppixelcell::col#2 -- vbuaa=vbuz1 lda col //SEG503 [268] phi from mode_8bpppixelcell::@10 to mode_8bpppixelcell::@9 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9] //SEG504 [268] phi (byte) mode_8bpppixelcell::c#2 = (byte~) mode_8bpppixelcell::c#3 [phi:mode_8bpppixelcell::@10->mode_8bpppixelcell::@9#0] -- register_copy @@ -27922,39 +27922,39 @@ mode_8bpppixelcell: { lda #0 //SEG507 mode_8bpppixelcell::@9 b9: - //SEG508 [269] *((byte*) mode_8bpppixelcell::gfxb#2) ? (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuaa + //SEG508 [269] *((byte*) mode_8bpppixelcell::gfxb#2) ← (byte) mode_8bpppixelcell::c#2 -- _deref_pbuz1=vbuaa ldy #0 sta (gfxb),y - //SEG509 [270] (byte*) mode_8bpppixelcell::gfxb#1 ? ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG509 [270] (byte*) mode_8bpppixelcell::gfxb#1 ← ++ (byte*) mode_8bpppixelcell::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG510 [271] (byte) mode_8bpppixelcell::bits#1 ? (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG510 [271] (byte) mode_8bpppixelcell::bits#1 ← (byte) mode_8bpppixelcell::bits#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl bits - //SEG511 [272] (byte) mode_8bpppixelcell::col#1 ? ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1 + //SEG511 [272] (byte) mode_8bpppixelcell::col#1 ← ++ (byte) mode_8bpppixelcell::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG512 [273] (byte) mode_8bpppixelcell::cp#1 ? ++ (byte) mode_8bpppixelcell::cp#2 -- vbuxx=_inc_vbuxx + //SEG512 [273] (byte) mode_8bpppixelcell::cp#1 ← ++ (byte) mode_8bpppixelcell::cp#2 -- vbuxx=_inc_vbuxx inx //SEG513 [274] if((byte) mode_8bpppixelcell::cp#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@8 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b8 //SEG514 mode_8bpppixelcell::@11 - //SEG515 [275] (byte) mode_8bpppixelcell::cr#1 ? ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1 + //SEG515 [275] (byte) mode_8bpppixelcell::cr#1 ← ++ (byte) mode_8bpppixelcell::cr#6 -- vbuz1=_inc_vbuz1 inc cr //SEG516 [276] if((byte) mode_8bpppixelcell::cr#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto mode_8bpppixelcell::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 cmp cr bne b7 //SEG517 mode_8bpppixelcell::@12 - //SEG518 [277] (byte) mode_8bpppixelcell::ch#1 ? ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1 + //SEG518 [277] (byte) mode_8bpppixelcell::ch#1 ← ++ (byte) mode_8bpppixelcell::ch#8 -- vbuz1=_inc_vbuz1 inc ch //SEG519 [278] if((byte) mode_8bpppixelcell::ch#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_8bpppixelcell::@6 -- vbuz1_neq_0_then_la1 lda ch cmp #0 bne b6 //SEG520 mode_8bpppixelcell::@13 - //SEG521 [279] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG521 [279] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT //SEG522 [280] call mode_ctrl @@ -27984,57 +27984,57 @@ mode_sixsfred: { .label ay = 4 .label gfxb = 2 .label by = 4 - //SEG528 [282] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG528 [282] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR sta DTV_CONTROL - //SEG529 [283] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG529 [283] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG530 [284] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG530 [284] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG531 [285] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG531 [285] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG532 [286] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG533 [287] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG533 [287] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG534 [288] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG534 [288] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG535 [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG535 [289] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG536 [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG536 [290] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEA_MODULO_HI - //SEG537 [291] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG537 [291] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG538 [292] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG539 [293] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG539 [293] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG540 [294] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG540 [294] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG541 [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG541 [295] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG542 [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG542 [296] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEB_MODULO_HI - //SEG543 [297] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG543 [297] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG544 [298] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG545 [299] phi from mode_sixsfred to mode_sixsfred::@1 [phi:mode_sixsfred->mode_sixsfred::@1] @@ -28045,16 +28045,16 @@ mode_sixsfred: { //SEG548 [299] phi (byte) mode_sixsfred::i#2 = (byte) mode_sixsfred::i#1 [phi:mode_sixsfred::@1->mode_sixsfred::@1#0] -- register_copy //SEG549 mode_sixsfred::@1 b1: - //SEG550 [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ? (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG550 [300] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred::i#2) ← (byte) mode_sixsfred::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG551 [301] (byte) mode_sixsfred::i#1 ? ++ (byte) mode_sixsfred::i#2 -- vbuxx=_inc_vbuxx + //SEG551 [301] (byte) mode_sixsfred::i#1 ← ++ (byte) mode_sixsfred::i#2 -- vbuxx=_inc_vbuxx inx //SEG552 [302] if((byte) mode_sixsfred::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG553 mode_sixsfred::@2 - //SEG554 [303] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG554 [303] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL @@ -28081,27 +28081,27 @@ mode_sixsfred: { //SEG567 [305] phi (byte) mode_sixsfred::cx#2 = (byte) mode_sixsfred::cx#1 [phi:mode_sixsfred::@4->mode_sixsfred::@4#1] -- register_copy //SEG568 mode_sixsfred::@4 b4: - //SEG569 [306] (byte~) mode_sixsfred::$17 ? (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG569 [306] (byte~) mode_sixsfred::$17 ← (byte) mode_sixsfred::cx#2 + (byte) mode_sixsfred::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG570 [307] (byte~) mode_sixsfred::$18 ? (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG570 [307] (byte~) mode_sixsfred::$18 ← (byte~) mode_sixsfred::$17 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG571 [308] *((byte*) mode_sixsfred::col#2) ? (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuaa + //SEG571 [308] *((byte*) mode_sixsfred::col#2) ← (byte~) mode_sixsfred::$18 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG572 [309] (byte*) mode_sixsfred::col#1 ? ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1 + //SEG572 [309] (byte*) mode_sixsfred::col#1 ← ++ (byte*) mode_sixsfred::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG573 [310] (byte) mode_sixsfred::cx#1 ? ++ (byte) mode_sixsfred::cx#2 -- vbuxx=_inc_vbuxx + //SEG573 [310] (byte) mode_sixsfred::cx#1 ← ++ (byte) mode_sixsfred::cx#2 -- vbuxx=_inc_vbuxx inx //SEG574 [311] if((byte) mode_sixsfred::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG575 mode_sixsfred::@5 - //SEG576 [312] (byte) mode_sixsfred::cy#1 ? ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1 + //SEG576 [312] (byte) mode_sixsfred::cy#1 ← ++ (byte) mode_sixsfred::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG577 [313] if((byte) mode_sixsfred::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -28130,28 +28130,28 @@ mode_sixsfred: { //SEG590 [315] phi (byte*) mode_sixsfred::gfxa#2 = (byte*) mode_sixsfred::gfxa#1 [phi:mode_sixsfred::@7->mode_sixsfred::@7#1] -- register_copy //SEG591 mode_sixsfred::@7 b7: - //SEG592 [316] (byte~) mode_sixsfred::$21 ? (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 + //SEG592 [316] (byte~) mode_sixsfred::$21 ← (byte) mode_sixsfred::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 lda ay lsr - //SEG593 [317] (byte) mode_sixsfred::row#0 ? (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 + //SEG593 [317] (byte) mode_sixsfred::row#0 ← (byte~) mode_sixsfred::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 and #3 - //SEG594 [318] *((byte*) mode_sixsfred::gfxa#2) ? *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa + //SEG594 [318] *((byte*) mode_sixsfred::gfxa#2) ← *((const byte[]) mode_sixsfred::row_bitmask#0 + (byte) mode_sixsfred::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa tay lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG595 [319] (byte*) mode_sixsfred::gfxa#1 ? ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG595 [319] (byte*) mode_sixsfred::gfxa#1 ← ++ (byte*) mode_sixsfred::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG596 [320] (byte) mode_sixsfred::ax#1 ? ++ (byte) mode_sixsfred::ax#2 -- vbuxx=_inc_vbuxx + //SEG596 [320] (byte) mode_sixsfred::ax#1 ← ++ (byte) mode_sixsfred::ax#2 -- vbuxx=_inc_vbuxx inx //SEG597 [321] if((byte) mode_sixsfred::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b7 //SEG598 mode_sixsfred::@8 - //SEG599 [322] (byte) mode_sixsfred::ay#1 ? ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1 + //SEG599 [322] (byte) mode_sixsfred::ay#1 ← ++ (byte) mode_sixsfred::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG600 [323] if((byte) mode_sixsfred::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -28180,22 +28180,22 @@ mode_sixsfred: { //SEG613 [325] phi (byte*) mode_sixsfred::gfxb#2 = (byte*) mode_sixsfred::gfxb#1 [phi:mode_sixsfred::@10->mode_sixsfred::@10#1] -- register_copy //SEG614 mode_sixsfred::@10 b10: - //SEG615 [326] *((byte*) mode_sixsfred::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 + //SEG615 [326] *((byte*) mode_sixsfred::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 lda #$1b ldy #0 sta (gfxb),y - //SEG616 [327] (byte*) mode_sixsfred::gfxb#1 ? ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG616 [327] (byte*) mode_sixsfred::gfxb#1 ← ++ (byte*) mode_sixsfred::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG617 [328] (byte) mode_sixsfred::bx#1 ? ++ (byte) mode_sixsfred::bx#2 -- vbuxx=_inc_vbuxx + //SEG617 [328] (byte) mode_sixsfred::bx#1 ← ++ (byte) mode_sixsfred::bx#2 -- vbuxx=_inc_vbuxx inx //SEG618 [329] if((byte) mode_sixsfred::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred::@10 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b10 //SEG619 mode_sixsfred::@11 - //SEG620 [330] (byte) mode_sixsfred::by#1 ? ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1 + //SEG620 [330] (byte) mode_sixsfred::by#1 ← ++ (byte) mode_sixsfred::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG621 [331] if((byte) mode_sixsfred::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred::@9 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -28235,57 +28235,57 @@ mode_twoplanebitmap: { .label ay = 4 .label gfxb = 2 .label by = 4 - //SEG630 [335] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG630 [335] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0|(const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR|DTV_LINEAR sta DTV_CONTROL - //SEG631 [336] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG631 [336] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG632 [337] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG632 [337] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG633 [338] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG633 [338] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG634 [339] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG635 [340] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG635 [340] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG636 [341] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG636 [341] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG637 [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG637 [342] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG638 [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG638 [343] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEA_MODULO_HI - //SEG639 [344] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG639 [344] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG640 [345] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_twoplanebitmap::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG641 [346] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG641 [346] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG642 [347] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG642 [347] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG643 [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG643 [348] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG644 [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG644 [349] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEB_MODULO_HI - //SEG645 [350] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG645 [350] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG646 [351] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_twoplanebitmap::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG647 [352] phi from mode_twoplanebitmap to mode_twoplanebitmap::@1 [phi:mode_twoplanebitmap->mode_twoplanebitmap::@1] @@ -28296,23 +28296,23 @@ mode_twoplanebitmap: { //SEG650 [352] phi (byte) mode_twoplanebitmap::i#2 = (byte) mode_twoplanebitmap::i#1 [phi:mode_twoplanebitmap::@1->mode_twoplanebitmap::@1#0] -- register_copy //SEG651 mode_twoplanebitmap::@1 b1: - //SEG652 [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ? (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG652 [353] *((const byte*) DTV_PALETTE#0 + (byte) mode_twoplanebitmap::i#2) ← (byte) mode_twoplanebitmap::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG653 [354] (byte) mode_twoplanebitmap::i#1 ? ++ (byte) mode_twoplanebitmap::i#2 -- vbuxx=_inc_vbuxx + //SEG653 [354] (byte) mode_twoplanebitmap::i#1 ← ++ (byte) mode_twoplanebitmap::i#2 -- vbuxx=_inc_vbuxx inx //SEG654 [355] if((byte) mode_twoplanebitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_twoplanebitmap::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG655 mode_twoplanebitmap::@2 - //SEG656 [356] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG656 [356] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG657 [357] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $70 -- _deref_pbuc1=vbuc2 + //SEG657 [357] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $70 -- _deref_pbuc1=vbuc2 lda #$70 sta BGCOL1 - //SEG658 [358] *((const byte*) BGCOL2#0) ? (byte/word/signed word/dword/signed dword) $d4 -- _deref_pbuc1=vbuc2 + //SEG658 [358] *((const byte*) BGCOL2#0) ← (byte/word/signed word/dword/signed dword) $d4 -- _deref_pbuc1=vbuc2 // Color for bits 00 lda #$d4 sta BGCOL2 @@ -28339,35 +28339,35 @@ mode_twoplanebitmap: { //SEG671 [360] phi (byte) mode_twoplanebitmap::cx#2 = (byte) mode_twoplanebitmap::cx#1 [phi:mode_twoplanebitmap::@4->mode_twoplanebitmap::@4#1] -- register_copy //SEG672 mode_twoplanebitmap::@4 b4: - //SEG673 [361] (byte~) mode_twoplanebitmap::$16 ? (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG673 [361] (byte~) mode_twoplanebitmap::$16 ← (byte) mode_twoplanebitmap::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG674 [362] (byte~) mode_twoplanebitmap::$17 ? (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG674 [362] (byte~) mode_twoplanebitmap::$17 ← (byte~) mode_twoplanebitmap::$16 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _17 - //SEG675 [363] (byte~) mode_twoplanebitmap::$18 ? (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG675 [363] (byte~) mode_twoplanebitmap::$18 ← (byte) mode_twoplanebitmap::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG676 [364] (byte~) mode_twoplanebitmap::$19 ? (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuaa=vbuz1_bor_vbuaa + //SEG676 [364] (byte~) mode_twoplanebitmap::$19 ← (byte~) mode_twoplanebitmap::$17 | (byte~) mode_twoplanebitmap::$18 -- vbuaa=vbuz1_bor_vbuaa ora _17 - //SEG677 [365] *((byte*) mode_twoplanebitmap::col#2) ? (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuaa + //SEG677 [365] *((byte*) mode_twoplanebitmap::col#2) ← (byte~) mode_twoplanebitmap::$19 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG678 [366] (byte*) mode_twoplanebitmap::col#1 ? ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1 + //SEG678 [366] (byte*) mode_twoplanebitmap::col#1 ← ++ (byte*) mode_twoplanebitmap::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG679 [367] (byte) mode_twoplanebitmap::cx#1 ? ++ (byte) mode_twoplanebitmap::cx#2 -- vbuxx=_inc_vbuxx + //SEG679 [367] (byte) mode_twoplanebitmap::cx#1 ← ++ (byte) mode_twoplanebitmap::cx#2 -- vbuxx=_inc_vbuxx inx //SEG680 [368] if((byte) mode_twoplanebitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG681 mode_twoplanebitmap::@5 - //SEG682 [369] (byte) mode_twoplanebitmap::cy#1 ? ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1 + //SEG682 [369] (byte) mode_twoplanebitmap::cy#1 ← ++ (byte) mode_twoplanebitmap::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG683 [370] if((byte) mode_twoplanebitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_twoplanebitmap::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -28396,18 +28396,18 @@ mode_twoplanebitmap: { //SEG696 [372] phi (byte*) mode_twoplanebitmap::gfxa#3 = (byte*) mode_twoplanebitmap::gfxa#6 [phi:mode_twoplanebitmap::@9->mode_twoplanebitmap::@7#1] -- register_copy //SEG697 mode_twoplanebitmap::@7 b7: - //SEG698 [373] (byte~) mode_twoplanebitmap::$22 ? (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 + //SEG698 [373] (byte~) mode_twoplanebitmap::$22 ← (byte) mode_twoplanebitmap::ay#5 & (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_band_vbuc1 lda #4 and ay //SEG699 [374] if((byte~) mode_twoplanebitmap::$22==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mode_twoplanebitmap::@8 -- vbuaa_eq_0_then_la1 cmp #0 beq b8 //SEG700 mode_twoplanebitmap::@10 - //SEG701 [375] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 + //SEG701 [375] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuz1=vbuc1 lda #$ff ldy #0 sta (gfxa),y - //SEG702 [376] (byte*) mode_twoplanebitmap::gfxa#2 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG702 [376] (byte*) mode_twoplanebitmap::gfxa#2 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -28416,13 +28416,13 @@ mode_twoplanebitmap: { //SEG704 [377] phi (byte*) mode_twoplanebitmap::gfxa#6 = (byte*) mode_twoplanebitmap::gfxa#2 [phi:mode_twoplanebitmap::@10/mode_twoplanebitmap::@8->mode_twoplanebitmap::@9#0] -- register_copy //SEG705 mode_twoplanebitmap::@9 b9: - //SEG706 [378] (byte) mode_twoplanebitmap::ax#1 ? ++ (byte) mode_twoplanebitmap::ax#2 -- vbuxx=_inc_vbuxx + //SEG706 [378] (byte) mode_twoplanebitmap::ax#1 ← ++ (byte) mode_twoplanebitmap::ax#2 -- vbuxx=_inc_vbuxx inx //SEG707 [379] if((byte) mode_twoplanebitmap::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b7 //SEG708 mode_twoplanebitmap::@11 - //SEG709 [380] (byte) mode_twoplanebitmap::ay#1 ? ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1 + //SEG709 [380] (byte) mode_twoplanebitmap::ay#1 ← ++ (byte) mode_twoplanebitmap::ay#5 -- vbuz1=_inc_vbuz1 inc ay //SEG710 [381] if((byte) mode_twoplanebitmap::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -28451,22 +28451,22 @@ mode_twoplanebitmap: { //SEG723 [383] phi (byte*) mode_twoplanebitmap::gfxb#2 = (byte*) mode_twoplanebitmap::gfxb#1 [phi:mode_twoplanebitmap::@13->mode_twoplanebitmap::@13#1] -- register_copy //SEG724 mode_twoplanebitmap::@13 b13: - //SEG725 [384] *((byte*) mode_twoplanebitmap::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 + //SEG725 [384] *((byte*) mode_twoplanebitmap::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $f -- _deref_pbuz1=vbuc1 lda #$f ldy #0 sta (gfxb),y - //SEG726 [385] (byte*) mode_twoplanebitmap::gfxb#1 ? ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG726 [385] (byte*) mode_twoplanebitmap::gfxb#1 ← ++ (byte*) mode_twoplanebitmap::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG727 [386] (byte) mode_twoplanebitmap::bx#1 ? ++ (byte) mode_twoplanebitmap::bx#2 -- vbuxx=_inc_vbuxx + //SEG727 [386] (byte) mode_twoplanebitmap::bx#1 ← ++ (byte) mode_twoplanebitmap::bx#2 -- vbuxx=_inc_vbuxx inx //SEG728 [387] if((byte) mode_twoplanebitmap::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_twoplanebitmap::@13 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b13 //SEG729 mode_twoplanebitmap::@14 - //SEG730 [388] (byte) mode_twoplanebitmap::by#1 ? ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1 + //SEG730 [388] (byte) mode_twoplanebitmap::by#1 ← ++ (byte) mode_twoplanebitmap::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG731 [389] if((byte) mode_twoplanebitmap::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_twoplanebitmap::@12 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -28485,11 +28485,11 @@ mode_twoplanebitmap: { rts //SEG739 mode_twoplanebitmap::@8 b8: - //SEG740 [393] *((byte*) mode_twoplanebitmap::gfxa#3) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG740 [393] *((byte*) mode_twoplanebitmap::gfxa#3) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (gfxa),y - //SEG741 [394] (byte*) mode_twoplanebitmap::gfxa#1 ? ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 + //SEG741 [394] (byte*) mode_twoplanebitmap::gfxa#1 ← ++ (byte*) mode_twoplanebitmap::gfxa#3 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 @@ -28514,57 +28514,57 @@ mode_sixsfred2: { .label ay = 4 .label gfxb = 2 .label by = 4 - //SEG743 [395] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 + //SEG743 [395] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_LINEAR#0 -- _deref_pbuc1=vbuc2 lda #DTV_LINEAR sta DTV_CONTROL - //SEG744 [396] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG744 [396] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_ECM#0|(const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Mode lda #VIC_ECM|VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG745 [397] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG745 [397] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_MCM#0|(const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM|VIC_CSEL sta VIC_CONTROL2 - //SEG746 [398] *((const byte*) DTV_PLANEA_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG746 [398] *((const byte*) DTV_PLANEA_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane A Counter lda #(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 + //SEG747 [399] *((const byte*) DTV_PLANEA_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEA#0 -- _deref_pbuc1=vbuc2 lda #>PLANEA sta DTV_PLANEA_START_MI - //SEG748 [400] *((const byte*) DTV_PLANEA_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG748 [400] *((const byte*) DTV_PLANEA_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_START_HI - //SEG749 [401] *((const byte*) DTV_PLANEA_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG749 [401] *((const byte*) DTV_PLANEA_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEA_STEP - //SEG750 [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG750 [402] *((const byte*) DTV_PLANEA_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEA_MODULO_LO - //SEG751 [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG751 [403] *((const byte*) DTV_PLANEA_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEA_MODULO_HI - //SEG752 [404] *((const byte*) DTV_PLANEB_START_LO#0) ? <(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG752 [404] *((const byte*) DTV_PLANEB_START_LO#0) ← <(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 // Linear Graphics Plane B Counter lda #(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 + //SEG753 [405] *((const byte*) DTV_PLANEB_START_MI#0) ← >(const byte*) mode_sixsfred2::PLANEB#0 -- _deref_pbuc1=vbuc2 lda #>PLANEB sta DTV_PLANEB_START_MI - //SEG754 [406] *((const byte*) DTV_PLANEB_START_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG754 [406] *((const byte*) DTV_PLANEB_START_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_START_HI - //SEG755 [407] *((const byte*) DTV_PLANEB_STEP#0) ? (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 + //SEG755 [407] *((const byte*) DTV_PLANEB_STEP#0) ← (byte/signed byte/word/signed word/dword/signed dword) 1 -- _deref_pbuc1=vbuc2 lda #1 sta DTV_PLANEB_STEP - //SEG756 [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG756 [408] *((const byte*) DTV_PLANEB_MODULO_LO#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_PLANEB_MODULO_LO - //SEG757 [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG757 [409] *((const byte*) DTV_PLANEB_MODULO_HI#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_PLANEB_MODULO_HI - //SEG758 [410] *((const byte*) DTV_COLOR_BANK_LO#0) ? <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG758 [410] *((const byte*) DTV_COLOR_BANK_LO#0) ← <(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG759 [411] *((const byte*) DTV_COLOR_BANK_HI#0) ← >(const byte*) mode_sixsfred2::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #>COLORS/$400 sta DTV_COLOR_BANK_HI //SEG760 [412] phi from mode_sixsfred2 to mode_sixsfred2::@1 [phi:mode_sixsfred2->mode_sixsfred2::@1] @@ -28575,16 +28575,16 @@ mode_sixsfred2: { //SEG763 [412] phi (byte) mode_sixsfred2::i#2 = (byte) mode_sixsfred2::i#1 [phi:mode_sixsfred2::@1->mode_sixsfred2::@1#0] -- register_copy //SEG764 mode_sixsfred2::@1 b1: - //SEG765 [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ? (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG765 [413] *((const byte*) DTV_PALETTE#0 + (byte) mode_sixsfred2::i#2) ← (byte) mode_sixsfred2::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG766 [414] (byte) mode_sixsfred2::i#1 ? ++ (byte) mode_sixsfred2::i#2 -- vbuxx=_inc_vbuxx + //SEG766 [414] (byte) mode_sixsfred2::i#1 ← ++ (byte) mode_sixsfred2::i#2 -- vbuxx=_inc_vbuxx inx //SEG767 [415] if((byte) mode_sixsfred2::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_sixsfred2::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG768 mode_sixsfred2::@2 - //SEG769 [416] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG769 [416] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL @@ -28611,35 +28611,35 @@ mode_sixsfred2: { //SEG782 [418] phi (byte) mode_sixsfred2::cx#2 = (byte) mode_sixsfred2::cx#1 [phi:mode_sixsfred2::@4->mode_sixsfred2::@4#1] -- register_copy //SEG783 mode_sixsfred2::@4 b4: - //SEG784 [419] (byte~) mode_sixsfred2::$15 ? (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 + //SEG784 [419] (byte~) mode_sixsfred2::$15 ← (byte) mode_sixsfred2::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_band_vbuc1 txa and #3 - //SEG785 [420] (byte~) mode_sixsfred2::$16 ? (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG785 [420] (byte~) mode_sixsfred2::$16 ← (byte~) mode_sixsfred2::$15 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _16 - //SEG786 [421] (byte~) mode_sixsfred2::$17 ? (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 + //SEG786 [421] (byte~) mode_sixsfred2::$17 ← (byte) mode_sixsfred2::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_band_vbuc1 lda #3 and cy - //SEG787 [422] (byte~) mode_sixsfred2::$18 ? (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuaa=vbuz1_bor_vbuaa + //SEG787 [422] (byte~) mode_sixsfred2::$18 ← (byte~) mode_sixsfred2::$16 | (byte~) mode_sixsfred2::$17 -- vbuaa=vbuz1_bor_vbuaa ora _16 - //SEG788 [423] *((byte*) mode_sixsfred2::col#2) ? (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuaa + //SEG788 [423] *((byte*) mode_sixsfred2::col#2) ← (byte~) mode_sixsfred2::$18 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG789 [424] (byte*) mode_sixsfred2::col#1 ? ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1 + //SEG789 [424] (byte*) mode_sixsfred2::col#1 ← ++ (byte*) mode_sixsfred2::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG790 [425] (byte) mode_sixsfred2::cx#1 ? ++ (byte) mode_sixsfred2::cx#2 -- vbuxx=_inc_vbuxx + //SEG790 [425] (byte) mode_sixsfred2::cx#1 ← ++ (byte) mode_sixsfred2::cx#2 -- vbuxx=_inc_vbuxx inx //SEG791 [426] if((byte) mode_sixsfred2::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG792 mode_sixsfred2::@5 - //SEG793 [427] (byte) mode_sixsfred2::cy#1 ? ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1 + //SEG793 [427] (byte) mode_sixsfred2::cy#1 ← ++ (byte) mode_sixsfred2::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG794 [428] if((byte) mode_sixsfred2::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_sixsfred2::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -28668,28 +28668,28 @@ mode_sixsfred2: { //SEG807 [430] phi (byte*) mode_sixsfred2::gfxa#2 = (byte*) mode_sixsfred2::gfxa#1 [phi:mode_sixsfred2::@7->mode_sixsfred2::@7#1] -- register_copy //SEG808 mode_sixsfred2::@7 b7: - //SEG809 [431] (byte~) mode_sixsfred2::$21 ? (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 + //SEG809 [431] (byte~) mode_sixsfred2::$21 ← (byte) mode_sixsfred2::ay#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_ror_1 lda ay lsr - //SEG810 [432] (byte) mode_sixsfred2::row#0 ? (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 + //SEG810 [432] (byte) mode_sixsfred2::row#0 ← (byte~) mode_sixsfred2::$21 & (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuaa_band_vbuc1 and #3 - //SEG811 [433] *((byte*) mode_sixsfred2::gfxa#2) ? *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa + //SEG811 [433] *((byte*) mode_sixsfred2::gfxa#2) ← *((const byte[]) mode_sixsfred2::row_bitmask#0 + (byte) mode_sixsfred2::row#0) -- _deref_pbuz1=pbuc1_derefidx_vbuaa tay lda row_bitmask,y ldy #0 sta (gfxa),y - //SEG812 [434] (byte*) mode_sixsfred2::gfxa#1 ? ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1 + //SEG812 [434] (byte*) mode_sixsfred2::gfxa#1 ← ++ (byte*) mode_sixsfred2::gfxa#2 -- pbuz1=_inc_pbuz1 inc gfxa bne !+ inc gfxa+1 !: - //SEG813 [435] (byte) mode_sixsfred2::ax#1 ? ++ (byte) mode_sixsfred2::ax#2 -- vbuxx=_inc_vbuxx + //SEG813 [435] (byte) mode_sixsfred2::ax#1 ← ++ (byte) mode_sixsfred2::ax#2 -- vbuxx=_inc_vbuxx inx //SEG814 [436] if((byte) mode_sixsfred2::ax#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b7 //SEG815 mode_sixsfred2::@8 - //SEG816 [437] (byte) mode_sixsfred2::ay#1 ? ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1 + //SEG816 [437] (byte) mode_sixsfred2::ay#1 ← ++ (byte) mode_sixsfred2::ay#4 -- vbuz1=_inc_vbuz1 inc ay //SEG817 [438] if((byte) mode_sixsfred2::ay#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@6 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -28718,22 +28718,22 @@ mode_sixsfred2: { //SEG830 [440] phi (byte*) mode_sixsfred2::gfxb#2 = (byte*) mode_sixsfred2::gfxb#1 [phi:mode_sixsfred2::@10->mode_sixsfred2::@10#1] -- register_copy //SEG831 mode_sixsfred2::@10 b10: - //SEG832 [441] *((byte*) mode_sixsfred2::gfxb#2) ? (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 + //SEG832 [441] *((byte*) mode_sixsfred2::gfxb#2) ← (byte/signed byte/word/signed word/dword/signed dword) $1b -- _deref_pbuz1=vbuc1 lda #$1b ldy #0 sta (gfxb),y - //SEG833 [442] (byte*) mode_sixsfred2::gfxb#1 ? ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1 + //SEG833 [442] (byte*) mode_sixsfred2::gfxb#1 ← ++ (byte*) mode_sixsfred2::gfxb#2 -- pbuz1=_inc_pbuz1 inc gfxb bne !+ inc gfxb+1 !: - //SEG834 [443] (byte) mode_sixsfred2::bx#1 ? ++ (byte) mode_sixsfred2::bx#2 -- vbuxx=_inc_vbuxx + //SEG834 [443] (byte) mode_sixsfred2::bx#1 ← ++ (byte) mode_sixsfred2::bx#2 -- vbuxx=_inc_vbuxx inx //SEG835 [444] if((byte) mode_sixsfred2::bx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_sixsfred2::@10 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b10 //SEG836 mode_sixsfred2::@11 - //SEG837 [445] (byte) mode_sixsfred2::by#1 ? ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1 + //SEG837 [445] (byte) mode_sixsfred2::by#1 ← ++ (byte) mode_sixsfred2::by#4 -- vbuz1=_inc_vbuz1 inc by //SEG838 [446] if((byte) mode_sixsfred2::by#1!=(byte/word/signed word/dword/signed dword) $c8) goto mode_sixsfred2::@9 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -28774,37 +28774,37 @@ mode_hicolmcchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG847 [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG847 [450] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolmcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG848 [451] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG848 [451] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG849 [452] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG849 [452] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolmcchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG850 [453] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG850 [453] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG851 [454] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG851 [454] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG852 [455] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG852 [455] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolmcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG853 [456] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG853 [456] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG854 [457] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG854 [457] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL|VIC_MCM sta VIC_CONTROL2 - //SEG855 [458] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG855 [458] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolmcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolmcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -28816,26 +28816,26 @@ mode_hicolmcchar: { //SEG859 [459] phi (byte) mode_hicolmcchar::i#2 = (byte) mode_hicolmcchar::i#1 [phi:mode_hicolmcchar::@1->mode_hicolmcchar::@1#0] -- register_copy //SEG860 mode_hicolmcchar::@1 b1: - //SEG861 [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ? (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG861 [460] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolmcchar::i#2) ← (byte) mode_hicolmcchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG862 [461] (byte) mode_hicolmcchar::i#1 ? ++ (byte) mode_hicolmcchar::i#2 -- vbuxx=_inc_vbuxx + //SEG862 [461] (byte) mode_hicolmcchar::i#1 ← ++ (byte) mode_hicolmcchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG863 [462] if((byte) mode_hicolmcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolmcchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG864 mode_hicolmcchar::@2 - //SEG865 [463] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG865 [463] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG866 [464] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 + //SEG866 [464] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 lda #$50 sta BGCOL1 - //SEG867 [465] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 + //SEG867 [465] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 lda #$54 sta BGCOL2 - //SEG868 [466] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 + //SEG868 [466] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 lda #$58 sta BGCOL3 //SEG869 [467] phi from mode_hicolmcchar::@2 to mode_hicolmcchar::@3 [phi:mode_hicolmcchar::@2->mode_hicolmcchar::@3] @@ -28869,43 +28869,43 @@ mode_hicolmcchar: { //SEG885 [468] phi (byte) mode_hicolmcchar::cx#2 = (byte) mode_hicolmcchar::cx#1 [phi:mode_hicolmcchar::@4->mode_hicolmcchar::@4#2] -- register_copy //SEG886 mode_hicolmcchar::@4 b4: - //SEG887 [469] (byte~) mode_hicolmcchar::$26 ? (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG887 [469] (byte~) mode_hicolmcchar::$26 ← (byte) mode_hicolmcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG888 [470] (byte~) mode_hicolmcchar::$27 ? (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG888 [470] (byte~) mode_hicolmcchar::$27 ← (byte~) mode_hicolmcchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _27 - //SEG889 [471] (byte~) mode_hicolmcchar::$28 ? (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG889 [471] (byte~) mode_hicolmcchar::$28 ← (byte) mode_hicolmcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG890 [472] (byte) mode_hicolmcchar::v#0 ? (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuaa=vbuz1_bor_vbuaa + //SEG890 [472] (byte) mode_hicolmcchar::v#0 ← (byte~) mode_hicolmcchar::$27 | (byte~) mode_hicolmcchar::$28 -- vbuaa=vbuz1_bor_vbuaa ora _27 - //SEG891 [473] *((byte*) mode_hicolmcchar::col#2) ? (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa + //SEG891 [473] *((byte*) mode_hicolmcchar::col#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG892 [474] (byte*) mode_hicolmcchar::col#1 ? ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG892 [474] (byte*) mode_hicolmcchar::col#1 ← ++ (byte*) mode_hicolmcchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG893 [475] *((byte*) mode_hicolmcchar::ch#2) ? (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa + //SEG893 [475] *((byte*) mode_hicolmcchar::ch#2) ← (byte) mode_hicolmcchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG894 [476] (byte*) mode_hicolmcchar::ch#1 ? ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG894 [476] (byte*) mode_hicolmcchar::ch#1 ← ++ (byte*) mode_hicolmcchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG895 [477] (byte) mode_hicolmcchar::cx#1 ? ++ (byte) mode_hicolmcchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG895 [477] (byte) mode_hicolmcchar::cx#1 ← ++ (byte) mode_hicolmcchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG896 [478] if((byte) mode_hicolmcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolmcchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG897 mode_hicolmcchar::@5 - //SEG898 [479] (byte) mode_hicolmcchar::cy#1 ? ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG898 [479] (byte) mode_hicolmcchar::cy#1 ← ++ (byte) mode_hicolmcchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG899 [480] if((byte) mode_hicolmcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolmcchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -28944,37 +28944,37 @@ mode_hicolecmchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG908 [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG908 [484] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG909 [485] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG909 [485] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG910 [486] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG910 [486] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolecmchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG911 [487] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG911 [487] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG912 [488] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG912 [488] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG913 [489] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG913 [489] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG914 [490] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG914 [490] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|VIC_ECM|3 sta VIC_CONTROL - //SEG915 [491] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG915 [491] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG916 [492] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG916 [492] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -28986,29 +28986,29 @@ mode_hicolecmchar: { //SEG920 [493] phi (byte) mode_hicolecmchar::i#2 = (byte) mode_hicolecmchar::i#1 [phi:mode_hicolecmchar::@1->mode_hicolecmchar::@1#0] -- register_copy //SEG921 mode_hicolecmchar::@1 b1: - //SEG922 [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ? (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG922 [494] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolecmchar::i#2) ← (byte) mode_hicolecmchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG923 [495] (byte) mode_hicolecmchar::i#1 ? ++ (byte) mode_hicolecmchar::i#2 -- vbuxx=_inc_vbuxx + //SEG923 [495] (byte) mode_hicolecmchar::i#1 ← ++ (byte) mode_hicolecmchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG924 [496] if((byte) mode_hicolecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolecmchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG925 mode_hicolecmchar::@2 - //SEG926 [497] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG926 [497] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG927 [498] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 + //SEG927 [498] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) $50 -- _deref_pbuc1=vbuc2 lda #$50 sta BGCOL1 - //SEG928 [499] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 + //SEG928 [499] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) $54 -- _deref_pbuc1=vbuc2 lda #$54 sta BGCOL2 - //SEG929 [500] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 + //SEG929 [500] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) $58 -- _deref_pbuc1=vbuc2 lda #$58 sta BGCOL3 - //SEG930 [501] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) $5c -- _deref_pbuc1=vbuc2 + //SEG930 [501] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) $5c -- _deref_pbuc1=vbuc2 lda #$5c sta BGCOL4 //SEG931 [502] phi from mode_hicolecmchar::@2 to mode_hicolecmchar::@3 [phi:mode_hicolecmchar::@2->mode_hicolecmchar::@3] @@ -29042,43 +29042,43 @@ mode_hicolecmchar: { //SEG947 [503] phi (byte) mode_hicolecmchar::cx#2 = (byte) mode_hicolecmchar::cx#1 [phi:mode_hicolecmchar::@4->mode_hicolecmchar::@4#2] -- register_copy //SEG948 mode_hicolecmchar::@4 b4: - //SEG949 [504] (byte~) mode_hicolecmchar::$26 ? (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG949 [504] (byte~) mode_hicolecmchar::$26 ← (byte) mode_hicolecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG950 [505] (byte~) mode_hicolecmchar::$27 ? (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG950 [505] (byte~) mode_hicolecmchar::$27 ← (byte~) mode_hicolecmchar::$26 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _27 - //SEG951 [506] (byte~) mode_hicolecmchar::$28 ? (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG951 [506] (byte~) mode_hicolecmchar::$28 ← (byte) mode_hicolecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG952 [507] (byte) mode_hicolecmchar::v#0 ? (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuaa=vbuz1_bor_vbuaa + //SEG952 [507] (byte) mode_hicolecmchar::v#0 ← (byte~) mode_hicolecmchar::$27 | (byte~) mode_hicolecmchar::$28 -- vbuaa=vbuz1_bor_vbuaa ora _27 - //SEG953 [508] *((byte*) mode_hicolecmchar::col#2) ? (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa + //SEG953 [508] *((byte*) mode_hicolecmchar::col#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG954 [509] (byte*) mode_hicolecmchar::col#1 ? ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG954 [509] (byte*) mode_hicolecmchar::col#1 ← ++ (byte*) mode_hicolecmchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG955 [510] *((byte*) mode_hicolecmchar::ch#2) ? (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa + //SEG955 [510] *((byte*) mode_hicolecmchar::ch#2) ← (byte) mode_hicolecmchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG956 [511] (byte*) mode_hicolecmchar::ch#1 ? ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG956 [511] (byte*) mode_hicolecmchar::ch#1 ← ++ (byte*) mode_hicolecmchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG957 [512] (byte) mode_hicolecmchar::cx#1 ? ++ (byte) mode_hicolecmchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG957 [512] (byte) mode_hicolecmchar::cx#1 ← ++ (byte) mode_hicolecmchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG958 [513] if((byte) mode_hicolecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolecmchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG959 mode_hicolecmchar::@5 - //SEG960 [514] (byte) mode_hicolecmchar::cy#1 ? ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG960 [514] (byte) mode_hicolecmchar::cy#1 ← ++ (byte) mode_hicolecmchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG961 [515] if((byte) mode_hicolecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolecmchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -29113,37 +29113,37 @@ mode_hicolstdchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG970 [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG970 [519] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_hicolstdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG971 [520] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG971 [520] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #COLORS/$400 sta DTV_COLOR_BANK_LO - //SEG972 [521] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG972 [521] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const byte*) mode_hicolstdchar::COLORS#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG973 [522] *((const byte*) DTV_CONTROL#0) ? (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 + //SEG973 [522] *((const byte*) DTV_CONTROL#0) ← (const byte) DTV_HIGHCOLOR#0 -- _deref_pbuc1=vbuc2 lda #DTV_HIGHCOLOR sta DTV_CONTROL - //SEG974 [523] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG974 [523] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG975 [524] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG975 [524] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_hicolstdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG976 [525] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG976 [525] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG977 [526] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG977 [526] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG978 [527] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG978 [527] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_hicolstdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_hicolstdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -29155,20 +29155,20 @@ mode_hicolstdchar: { //SEG982 [528] phi (byte) mode_hicolstdchar::i#2 = (byte) mode_hicolstdchar::i#1 [phi:mode_hicolstdchar::@1->mode_hicolstdchar::@1#0] -- register_copy //SEG983 mode_hicolstdchar::@1 b1: - //SEG984 [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ? (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG984 [529] *((const byte*) DTV_PALETTE#0 + (byte) mode_hicolstdchar::i#2) ← (byte) mode_hicolstdchar::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta DTV_PALETTE,x - //SEG985 [530] (byte) mode_hicolstdchar::i#1 ? ++ (byte) mode_hicolstdchar::i#2 -- vbuxx=_inc_vbuxx + //SEG985 [530] (byte) mode_hicolstdchar::i#1 ← ++ (byte) mode_hicolstdchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG986 [531] if((byte) mode_hicolstdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_hicolstdchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG987 mode_hicolstdchar::@2 - //SEG988 [532] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG988 [532] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG989 [533] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG989 [533] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta BORDERCOL //SEG990 [534] phi from mode_hicolstdchar::@2 to mode_hicolstdchar::@3 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3] //SEG991 [534] phi (byte*) mode_hicolstdchar::ch#3 = (const byte*) mode_hicolstdchar::SCREEN#0 [phi:mode_hicolstdchar::@2->mode_hicolstdchar::@3#0] -- pbuz1=pbuc1 @@ -29201,43 +29201,43 @@ mode_hicolstdchar: { //SEG1006 [535] phi (byte) mode_hicolstdchar::cx#2 = (byte) mode_hicolstdchar::cx#1 [phi:mode_hicolstdchar::@4->mode_hicolstdchar::@4#2] -- register_copy //SEG1007 mode_hicolstdchar::@4 b4: - //SEG1008 [536] (byte~) mode_hicolstdchar::$25 ? (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1008 [536] (byte~) mode_hicolstdchar::$25 ← (byte) mode_hicolstdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1009 [537] (byte~) mode_hicolstdchar::$26 ? (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1009 [537] (byte~) mode_hicolstdchar::$26 ← (byte~) mode_hicolstdchar::$25 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _26 - //SEG1010 [538] (byte~) mode_hicolstdchar::$27 ? (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1010 [538] (byte~) mode_hicolstdchar::$27 ← (byte) mode_hicolstdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1011 [539] (byte) mode_hicolstdchar::v#0 ? (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuaa=vbuz1_bor_vbuaa + //SEG1011 [539] (byte) mode_hicolstdchar::v#0 ← (byte~) mode_hicolstdchar::$26 | (byte~) mode_hicolstdchar::$27 -- vbuaa=vbuz1_bor_vbuaa ora _26 - //SEG1012 [540] *((byte*) mode_hicolstdchar::col#2) ? (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa + //SEG1012 [540] *((byte*) mode_hicolstdchar::col#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1013 [541] (byte*) mode_hicolstdchar::col#1 ? ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1013 [541] (byte*) mode_hicolstdchar::col#1 ← ++ (byte*) mode_hicolstdchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1014 [542] *((byte*) mode_hicolstdchar::ch#2) ? (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa + //SEG1014 [542] *((byte*) mode_hicolstdchar::ch#2) ← (byte) mode_hicolstdchar::v#0 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1015 [543] (byte*) mode_hicolstdchar::ch#1 ? ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1015 [543] (byte*) mode_hicolstdchar::ch#1 ← ++ (byte*) mode_hicolstdchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1016 [544] (byte) mode_hicolstdchar::cx#1 ? ++ (byte) mode_hicolstdchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1016 [544] (byte) mode_hicolstdchar::cx#1 ← ++ (byte) mode_hicolstdchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1017 [545] if((byte) mode_hicolstdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_hicolstdchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG1018 mode_hicolstdchar::@5 - //SEG1019 [546] (byte) mode_hicolstdchar::cy#1 ? ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1019 [546] (byte) mode_hicolstdchar::cy#1 ← ++ (byte) mode_hicolstdchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1020 [547] if((byte) mode_hicolstdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_hicolstdchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -29271,30 +29271,30 @@ mode_stdbitmap: { .label ch = 2 .label cy = 4 .label l = 4 - //SEG1029 [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1029 [551] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdbitmap::BITMAP#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&BITMAP)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1030 [552] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1030 [552] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_CONTROL - //SEG1031 [553] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1031 [553] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1032 [554] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1032 [554] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdbitmap::BITMAP#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^BITMAP/$4000 sta CIA2_PORT_A - //SEG1033 [555] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1033 [555] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1034 [556] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1034 [556] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1035 [557] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1035 [557] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdbitmap::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdbitmap::BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(BITMAP&$3fff)/$400 sta VIC_MEMORY @@ -29306,20 +29306,20 @@ mode_stdbitmap: { //SEG1039 [558] phi (byte) mode_stdbitmap::i#2 = (byte) mode_stdbitmap::i#1 [phi:mode_stdbitmap::@1->mode_stdbitmap::@1#0] -- register_copy //SEG1040 mode_stdbitmap::@1 b1: - //SEG1041 [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1041 [559] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdbitmap::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdbitmap::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1042 [560] (byte) mode_stdbitmap::i#1 ? ++ (byte) mode_stdbitmap::i#2 -- vbuxx=_inc_vbuxx + //SEG1042 [560] (byte) mode_stdbitmap::i#1 ← ++ (byte) mode_stdbitmap::i#2 -- vbuxx=_inc_vbuxx inx //SEG1043 [561] if((byte) mode_stdbitmap::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdbitmap::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG1044 mode_stdbitmap::@2 - //SEG1045 [562] *((const byte*) BGCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1045 [562] *((const byte*) BGCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 // Screen colors lda #BLACK sta BGCOL - //SEG1046 [563] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1046 [563] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 sta BORDERCOL //SEG1047 [564] phi from mode_stdbitmap::@2 to mode_stdbitmap::@3 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3] //SEG1048 [564] phi (byte*) mode_stdbitmap::ch#3 = (const byte*) mode_stdbitmap::SCREEN#0 [phi:mode_stdbitmap::@2->mode_stdbitmap::@3#0] -- pbuz1=pbuc1 @@ -29344,42 +29344,42 @@ mode_stdbitmap: { //SEG1059 [565] phi (byte) mode_stdbitmap::cx#2 = (byte) mode_stdbitmap::cx#1 [phi:mode_stdbitmap::@4->mode_stdbitmap::@4#1] -- register_copy //SEG1060 mode_stdbitmap::@4 b4: - //SEG1061 [566] (byte~) mode_stdbitmap::$22 ? (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1061 [566] (byte~) mode_stdbitmap::$22 ← (byte) mode_stdbitmap::cx#2 + (byte) mode_stdbitmap::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1062 [567] (byte) mode_stdbitmap::col#0 ? (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 + //SEG1062 [567] (byte) mode_stdbitmap::col#0 ← (byte~) mode_stdbitmap::$22 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuyy=vbuaa_band_vbuc1 and #$f tay - //SEG1063 [568] (byte) mode_stdbitmap::col2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuyy + //SEG1063 [568] (byte) mode_stdbitmap::col2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) mode_stdbitmap::col#0 -- vbuz1=vbuc1_minus_vbuyy tya eor #$ff clc adc #$f+1 sta col2 - //SEG1064 [569] (byte~) mode_stdbitmap::$25 ? (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 + //SEG1064 [569] (byte~) mode_stdbitmap::$25 ← (byte) mode_stdbitmap::col#0 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuyy_rol_4 tya asl asl asl asl - //SEG1065 [570] (byte~) mode_stdbitmap::$26 ? (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuaa=vbuaa_bor_vbuz1 + //SEG1065 [570] (byte~) mode_stdbitmap::$26 ← (byte~) mode_stdbitmap::$25 | (byte) mode_stdbitmap::col2#0 -- vbuaa=vbuaa_bor_vbuz1 ora col2 - //SEG1066 [571] *((byte*) mode_stdbitmap::ch#2) ? (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuaa + //SEG1066 [571] *((byte*) mode_stdbitmap::ch#2) ← (byte~) mode_stdbitmap::$26 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1067 [572] (byte*) mode_stdbitmap::ch#1 ? ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1067 [572] (byte*) mode_stdbitmap::ch#1 ← ++ (byte*) mode_stdbitmap::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1068 [573] (byte) mode_stdbitmap::cx#1 ? ++ (byte) mode_stdbitmap::cx#2 -- vbuxx=_inc_vbuxx + //SEG1068 [573] (byte) mode_stdbitmap::cx#1 ← ++ (byte) mode_stdbitmap::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1069 [574] if((byte) mode_stdbitmap::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdbitmap::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG1070 mode_stdbitmap::@5 - //SEG1071 [575] (byte) mode_stdbitmap::cy#1 ? ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1071 [575] (byte) mode_stdbitmap::cy#1 ← ++ (byte) mode_stdbitmap::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1072 [576] if((byte) mode_stdbitmap::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdbitmap::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -29402,22 +29402,22 @@ mode_stdbitmap: { //SEG1083 [581] phi (byte) mode_stdbitmap::l#2 = (byte) mode_stdbitmap::l#1 [phi:mode_stdbitmap::@10->mode_stdbitmap::@7#0] -- register_copy //SEG1084 mode_stdbitmap::@7 b7: - //SEG1085 [582] (byte) bitmap_line::x0#0 ? *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1085 [582] (byte) bitmap_line::x0#0 ← *((const byte[]) mode_stdbitmap::lines_x#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG1086 [583] (byte) bitmap_line::x1#0 ? *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 + //SEG1086 [583] (byte) bitmap_line::x1#0 ← *((const byte[]) mode_stdbitmap::lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuxx=pbuc1_derefidx_vbuz1 ldx lines_x+1,y - //SEG1087 [584] (byte) bitmap_line::y0#0 ? *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1087 [584] (byte) bitmap_line::y0#0 ← *((const byte[]) mode_stdbitmap::lines_y#0 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 lda lines_y,y sta bitmap_line.y0 - //SEG1088 [585] (byte) bitmap_line::y1#0 ? *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG1088 [585] (byte) bitmap_line::y1#0 ← *((const byte[]) mode_stdbitmap::lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mode_stdbitmap::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 lda lines_y+1,y sta bitmap_line.y1 //SEG1089 [586] call bitmap_line jsr bitmap_line //SEG1090 mode_stdbitmap::@10 - //SEG1091 [587] (byte) mode_stdbitmap::l#1 ? ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1 + //SEG1091 [587] (byte) mode_stdbitmap::l#1 ← ++ (byte) mode_stdbitmap::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG1092 [588] if((byte) mode_stdbitmap::l#1<(const byte) mode_stdbitmap::lines_cnt#0) goto mode_stdbitmap::@7 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -29452,7 +29452,7 @@ bitmap_line: { bcs b1 !: //SEG1102 bitmap_line::@2 - //SEG1103 [593] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx + //SEG1103 [593] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuxx txa eor #$ff sec @@ -29463,7 +29463,7 @@ bitmap_line: { cmp y1 bcc b7 //SEG1105 bitmap_line::@3 - //SEG1106 [595] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1106 [595] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 sec sbc y1 tay @@ -29471,16 +29471,16 @@ bitmap_line: { cpy xd bcc b8 //SEG1108 bitmap_line::@4 - //SEG1109 [597] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1109 [597] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y - //SEG1110 [598] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 - //SEG1111 [599] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1110 [598] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 + //SEG1111 [599] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y1 - //SEG1112 [600] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1112 [600] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1113 [601] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1113 [601] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 //SEG1114 [602] call bitmap_line_ydxi //SEG1115 [676] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi] //SEG1116 [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#0 [phi:bitmap_line::@4->bitmap_line_ydxi#0] -- register_copy @@ -29494,14 +29494,14 @@ bitmap_line: { rts //SEG1123 bitmap_line::@8 b8: - //SEG1124 [604] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1124 [604] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x - //SEG1125 [605] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1125 [605] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyi.y - //SEG1126 [606] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1127 [607] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1128 [608] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuyy + //SEG1126 [606] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1127 [607] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1128 [608] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1129 [609] call bitmap_line_xdyi //SEG1130 [654] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi] @@ -29514,7 +29514,7 @@ bitmap_line: { rts //SEG1136 bitmap_line::@7 b7: - //SEG1137 [610] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1137 [610] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -29523,17 +29523,17 @@ bitmap_line: { cpy xd bcc b9 //SEG1139 bitmap_line::@10 - //SEG1140 [612] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1140 [612] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG1141 [613] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1141 [613] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1142 [614] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1142 [614] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y1 - //SEG1143 [615] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1143 [615] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1144 [616] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + //SEG1144 [616] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 //SEG1145 [617] call bitmap_line_ydxd //SEG1146 [706] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd] //SEG1147 [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#0 [phi:bitmap_line::@10->bitmap_line_ydxd#0] -- register_copy @@ -29545,14 +29545,14 @@ bitmap_line: { rts //SEG1152 bitmap_line::@9 b9: - //SEG1153 [618] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1153 [618] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x - //SEG1154 [619] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1154 [619] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyd.y - //SEG1155 [620] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 - //SEG1156 [621] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - //SEG1157 [622] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuyy + //SEG1155 [620] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 + //SEG1156 [621] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + //SEG1157 [622] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1158 [623] call bitmap_line_xdyd //SEG1159 [691] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd] @@ -29565,7 +29565,7 @@ bitmap_line: { rts //SEG1165 bitmap_line::@1 b1: - //SEG1166 [624] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 + //SEG1166 [624] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuxx_minus_vbuz2 txa sec sbc x0 @@ -29575,7 +29575,7 @@ bitmap_line: { cmp y1 bcc b11 //SEG1168 bitmap_line::@5 - //SEG1169 [626] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1169 [626] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuyy=vbuz1_minus_vbuz2 sec sbc y1 tay @@ -29583,14 +29583,14 @@ bitmap_line: { cpy xd bcc b12 //SEG1171 bitmap_line::@6 - //SEG1172 [628] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG1172 [628] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y - //SEG1173 [629] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 - //SEG1174 [630] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - //SEG1175 [631] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1173 [629] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 + //SEG1174 [630] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + //SEG1175 [631] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_ydxd.yd - //SEG1176 [632] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1176 [632] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 //SEG1177 [633] call bitmap_line_ydxd //SEG1178 [706] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd] //SEG1179 [706] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#1 [phi:bitmap_line::@6->bitmap_line_ydxd#0] -- register_copy @@ -29602,14 +29602,14 @@ bitmap_line: { rts //SEG1184 bitmap_line::@12 b12: - //SEG1185 [634] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1185 [634] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x - //SEG1186 [635] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - //SEG1187 [636] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1186 [635] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + //SEG1187 [636] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyd.x1 - //SEG1188 [637] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1189 [638] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuyy + //SEG1188 [637] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1189 [638] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuyy sty bitmap_line_xdyd.yd //SEG1190 [639] call bitmap_line_xdyd //SEG1191 [691] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd] @@ -29622,7 +29622,7 @@ bitmap_line: { rts //SEG1197 bitmap_line::@11 b11: - //SEG1198 [640] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 + //SEG1198 [640] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuyy=vbuz1_minus_vbuz2 lda y1 sec sbc y0 @@ -29631,15 +29631,15 @@ bitmap_line: { cpy xd bcc b13 //SEG1200 bitmap_line::@14 - //SEG1201 [642] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG1201 [642] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG1202 [643] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG1202 [643] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG1203 [644] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 - //SEG1204 [645] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1203 [644] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 + //SEG1204 [645] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_ydxi.yd - //SEG1205 [646] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + //SEG1205 [646] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 //SEG1206 [647] call bitmap_line_ydxi //SEG1207 [676] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi] //SEG1208 [676] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#1 [phi:bitmap_line::@14->bitmap_line_ydxi#0] -- register_copy @@ -29651,14 +29651,14 @@ bitmap_line: { rts //SEG1213 bitmap_line::@13 b13: - //SEG1214 [648] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG1214 [648] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x - //SEG1215 [649] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - //SEG1216 [650] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuxx + //SEG1215 [649] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + //SEG1216 [650] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuxx stx bitmap_line_xdyi.x1 - //SEG1217 [651] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - //SEG1218 [652] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuyy + //SEG1217 [651] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + //SEG1218 [652] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuyy sty bitmap_line_xdyi.yd //SEG1219 [653] call bitmap_line_xdyi //SEG1220 [654] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi] @@ -29679,7 +29679,7 @@ bitmap_line_xdyi: { .label xd = 8 .label yd = 7 .label e = $c - //SEG1227 [655] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1227 [655] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -29689,9 +29689,9 @@ bitmap_line_xdyi: { //SEG1231 [656] phi (byte) bitmap_line_xdyi::x#3 = (byte) bitmap_line_xdyi::x#6 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#2] -- register_copy //SEG1232 bitmap_line_xdyi::@1 b1: - //SEG1233 [657] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 + //SEG1233 [657] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuxx=vbuz1 ldx x - //SEG1234 [658] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 + //SEG1234 [658] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 ldy y //SEG1235 [659] call bitmap_plot //SEG1236 [669] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot] @@ -29699,9 +29699,9 @@ bitmap_line_xdyi: { //SEG1238 [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1239 bitmap_line_xdyi::@4 - //SEG1240 [660] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 + //SEG1240 [660] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1241 [661] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1241 [661] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -29711,9 +29711,9 @@ bitmap_line_xdyi: { cmp e bcs b2 //SEG1243 bitmap_line_xdyi::@3 - //SEG1244 [663] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1244 [663] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1245 [664] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1245 [664] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -29723,7 +29723,7 @@ bitmap_line_xdyi: { //SEG1248 [665] phi (byte) bitmap_line_xdyi::y#6 = (byte) bitmap_line_xdyi::y#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#1] -- register_copy //SEG1249 bitmap_line_xdyi::@2 b2: - //SEG1250 [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1250 [666] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1251 [667] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -29739,17 +29739,17 @@ bitmap_plot: { .label _0 = 2 .label plotter_x = 2 .label plotter_y = 5 - //SEG1255 [670] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG1255 [670] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_xhi,x sta plotter_x+1 lda bitmap_plot_xlo,x sta plotter_x - //SEG1256 [671] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG1256 [671] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG1257 [672] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG1257 [672] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 lda _0 clc adc plotter_y @@ -29757,11 +29757,11 @@ bitmap_plot: { lda _0+1 adc plotter_y+1 sta _0+1 - //SEG1258 [673] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx + //SEG1258 [673] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx lda bitmap_plot_bit,x ldy #0 ora (_0),y - //SEG1259 [674] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa + //SEG1259 [674] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa sta (_0),y //SEG1260 bitmap_plot::@return //SEG1261 [675] return @@ -29775,7 +29775,7 @@ bitmap_line_ydxi: { .label yd = 7 .label xd = 8 .label e = 9 - //SEG1263 [677] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1263 [677] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -29785,8 +29785,8 @@ bitmap_line_ydxi: { //SEG1267 [678] phi (byte) bitmap_line_ydxi::x#3 = (byte) bitmap_line_ydxi::x#5 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#2] -- register_copy //SEG1268 bitmap_line_ydxi::@1 b1: - //SEG1269 [679] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - //SEG1270 [680] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 + //SEG1269 [679] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + //SEG1270 [680] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 ldy y //SEG1271 [681] call bitmap_plot //SEG1272 [669] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot] @@ -29794,9 +29794,9 @@ bitmap_line_ydxi: { //SEG1274 [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1275 bitmap_line_ydxi::@4 - //SEG1276 [682] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG1276 [682] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG1277 [683] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1277 [683] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -29806,9 +29806,9 @@ bitmap_line_ydxi: { cmp e bcs b2 //SEG1279 bitmap_line_ydxi::@3 - //SEG1280 [685] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx + //SEG1280 [685] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG1281 [686] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1281 [686] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -29818,7 +29818,7 @@ bitmap_line_ydxi: { //SEG1284 [687] phi (byte) bitmap_line_ydxi::x#6 = (byte) bitmap_line_ydxi::x#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#1] -- register_copy //SEG1285 bitmap_line_ydxi::@2 b2: - //SEG1286 [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1286 [688] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -29838,7 +29838,7 @@ bitmap_line_xdyd: { .label xd = 8 .label yd = 7 .label e = $c - //SEG1291 [692] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1291 [692] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -29848,9 +29848,9 @@ bitmap_line_xdyd: { //SEG1295 [693] phi (byte) bitmap_line_xdyd::x#3 = (byte) bitmap_line_xdyd::x#6 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#2] -- register_copy //SEG1296 bitmap_line_xdyd::@1 b1: - //SEG1297 [694] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 + //SEG1297 [694] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuxx=vbuz1 ldx x - //SEG1298 [695] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 + //SEG1298 [695] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 ldy y //SEG1299 [696] call bitmap_plot //SEG1300 [669] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot] @@ -29858,9 +29858,9 @@ bitmap_line_xdyd: { //SEG1302 [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1303 bitmap_line_xdyd::@4 - //SEG1304 [697] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 + //SEG1304 [697] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG1305 [698] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1305 [698] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -29870,9 +29870,9 @@ bitmap_line_xdyd: { cmp e bcs b2 //SEG1307 bitmap_line_xdyd::@3 - //SEG1308 [700] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG1308 [700] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG1309 [701] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1309 [701] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -29882,7 +29882,7 @@ bitmap_line_xdyd: { //SEG1312 [702] phi (byte) bitmap_line_xdyd::y#6 = (byte) bitmap_line_xdyd::y#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#1] -- register_copy //SEG1313 bitmap_line_xdyd::@2 b2: - //SEG1314 [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1314 [703] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx x1 inx //SEG1315 [704] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 -- vbuz1_neq_vbuxx_then_la1 @@ -29900,7 +29900,7 @@ bitmap_line_ydxd: { .label yd = 7 .label xd = 8 .label e = 9 - //SEG1319 [707] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG1319 [707] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -29910,8 +29910,8 @@ bitmap_line_ydxd: { //SEG1323 [708] phi (byte) bitmap_line_ydxd::x#3 = (byte) bitmap_line_ydxd::x#5 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#2] -- register_copy //SEG1324 bitmap_line_ydxd::@1 b1: - //SEG1325 [709] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - //SEG1326 [710] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 + //SEG1325 [709] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + //SEG1326 [710] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 ldy y //SEG1327 [711] call bitmap_plot //SEG1328 [669] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot] @@ -29919,9 +29919,9 @@ bitmap_line_ydxd: { //SEG1330 [669] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG1331 bitmap_line_ydxd::@4 - //SEG1332 [712] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG1332 [712] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG1333 [713] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG1333 [713] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -29931,9 +29931,9 @@ bitmap_line_ydxd: { cmp e bcs b2 //SEG1335 bitmap_line_ydxd::@3 - //SEG1336 [715] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx + //SEG1336 [715] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx dex - //SEG1337 [716] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG1337 [716] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -29943,7 +29943,7 @@ bitmap_line_ydxd: { //SEG1340 [717] phi (byte) bitmap_line_ydxd::x#6 = (byte) bitmap_line_ydxd::x#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#1] -- register_copy //SEG1341 bitmap_line_ydxd::@2 b2: - //SEG1342 [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 + //SEG1342 [718] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_1 lda y1 clc adc #1 @@ -29960,12 +29960,12 @@ bitmap_clear: { .label bitmap = 2 .label y = 4 .label _3 = 2 - //SEG1347 [721] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG1347 [721] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG1348 [722] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG1348 [722] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG1349 [723] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] //SEG1350 [723] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 lda #0 @@ -29985,22 +29985,22 @@ bitmap_clear: { //SEG1361 [724] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy //SEG1362 bitmap_clear::@2 b2: - //SEG1363 [725] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG1363 [725] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (bitmap),y - //SEG1364 [726] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG1364 [726] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG1365 [727] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG1365 [727] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG1366 [728] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 bne b2 //SEG1367 bitmap_clear::@3 - //SEG1368 [729] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG1368 [729] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG1369 [730] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -30025,18 +30025,18 @@ bitmap_init: { //SEG1378 [733] phi (byte) bitmap_init::x#2 = (byte) bitmap_init::x#1 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy //SEG1379 bitmap_init::@1 b1: - //SEG1380 [734] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 + //SEG1380 [734] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 txa and #$f8 - //SEG1381 [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1381 [735] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_xlo,x - //SEG1382 [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG1382 [736] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) mode_stdbitmap::BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #>mode_stdbitmap.BITMAP sta bitmap_plot_xhi,x - //SEG1383 [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy + //SEG1383 [737] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy tya sta bitmap_plot_bit,x - //SEG1384 [738] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 + //SEG1384 [738] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 tya lsr tay @@ -30048,7 +30048,7 @@ bitmap_init: { ldy #$80 //SEG1388 bitmap_init::@2 b2: - //SEG1389 [741] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG1389 [741] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG1390 [742] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -30065,27 +30065,27 @@ bitmap_init: { //SEG1396 [743] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy //SEG1397 bitmap_init::@3 b3: - //SEG1398 [744] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG1398 [744] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _6 - //SEG1399 [745] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG1399 [745] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG1400 [746] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa + //SEG1400 [746] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa ora _6 - //SEG1401 [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1401 [747] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG1402 [748] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG1402 [748] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG1403 [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG1403 [749] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG1404 [750] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG1404 [750] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG1405 [751] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 cmp #7 bne b4 //SEG1406 bitmap_init::@5 - //SEG1407 [752] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG1407 [752] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -30097,7 +30097,7 @@ bitmap_init: { //SEG1409 [753] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy //SEG1410 bitmap_init::@4 b4: - //SEG1411 [754] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG1411 [754] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG1412 [755] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -30132,36 +30132,36 @@ mode_mcchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG1420 [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1420 [758] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_mcchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1421 [759] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1421 [759] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1422 [760] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1422 [760] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1423 [761] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1423 [761] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_CONTROL - //SEG1424 [762] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1424 [762] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1425 [763] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1425 [763] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_mcchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1426 [764] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1426 [764] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1427 [765] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG1427 [765] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0|(const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL|VIC_MCM sta VIC_CONTROL2 - //SEG1428 [766] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1428 [766] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_mcchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_mcchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -30173,26 +30173,26 @@ mode_mcchar: { //SEG1432 [767] phi (byte) mode_mcchar::i#2 = (byte) mode_mcchar::i#1 [phi:mode_mcchar::@1->mode_mcchar::@1#0] -- register_copy //SEG1433 mode_mcchar::@1 b1: - //SEG1434 [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1434 [768] *((const byte*) DTV_PALETTE#0 + (byte) mode_mcchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_mcchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1435 [769] (byte) mode_mcchar::i#1 ? ++ (byte) mode_mcchar::i#2 -- vbuxx=_inc_vbuxx + //SEG1435 [769] (byte) mode_mcchar::i#1 ← ++ (byte) mode_mcchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG1436 [770] if((byte) mode_mcchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_mcchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG1437 mode_mcchar::@2 - //SEG1438 [771] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1438 [771] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG1439 [772] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1439 [772] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL1 - //SEG1440 [773] *((const byte*) BGCOL2#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG1440 [773] *((const byte*) BGCOL2#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BGCOL2 - //SEG1441 [774] *((const byte*) BGCOL3#0) ? (const byte) BLUE#0 -- _deref_pbuc1=vbuc2 + //SEG1441 [774] *((const byte*) BGCOL3#0) ← (const byte) BLUE#0 -- _deref_pbuc1=vbuc2 lda #BLUE sta BGCOL3 //SEG1442 [775] phi from mode_mcchar::@2 to mode_mcchar::@3 [phi:mode_mcchar::@2->mode_mcchar::@3] @@ -30226,49 +30226,49 @@ mode_mcchar: { //SEG1458 [776] phi (byte) mode_mcchar::cx#2 = (byte) mode_mcchar::cx#1 [phi:mode_mcchar::@4->mode_mcchar::@4#2] -- register_copy //SEG1459 mode_mcchar::@4 b4: - //SEG1460 [777] (byte~) mode_mcchar::$26 ? (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1460 [777] (byte~) mode_mcchar::$26 ← (byte) mode_mcchar::cx#2 + (byte) mode_mcchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1461 [778] (byte~) mode_mcchar::$27 ? (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1461 [778] (byte~) mode_mcchar::$27 ← (byte~) mode_mcchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1462 [779] *((byte*) mode_mcchar::col#2) ? (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuaa + //SEG1462 [779] *((byte*) mode_mcchar::col#2) ← (byte~) mode_mcchar::$27 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1463 [780] (byte*) mode_mcchar::col#1 ? ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1463 [780] (byte*) mode_mcchar::col#1 ← ++ (byte*) mode_mcchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1464 [781] (byte~) mode_mcchar::$28 ? (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1464 [781] (byte~) mode_mcchar::$28 ← (byte) mode_mcchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1465 [782] (byte~) mode_mcchar::$29 ? (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1465 [782] (byte~) mode_mcchar::$29 ← (byte~) mode_mcchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _29 - //SEG1466 [783] (byte~) mode_mcchar::$30 ? (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1466 [783] (byte~) mode_mcchar::$30 ← (byte) mode_mcchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1467 [784] (byte~) mode_mcchar::$31 ? (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuaa=vbuz1_bor_vbuaa + //SEG1467 [784] (byte~) mode_mcchar::$31 ← (byte~) mode_mcchar::$29 | (byte~) mode_mcchar::$30 -- vbuaa=vbuz1_bor_vbuaa ora _29 - //SEG1468 [785] *((byte*) mode_mcchar::ch#2) ? (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuaa + //SEG1468 [785] *((byte*) mode_mcchar::ch#2) ← (byte~) mode_mcchar::$31 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1469 [786] (byte*) mode_mcchar::ch#1 ? ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1469 [786] (byte*) mode_mcchar::ch#1 ← ++ (byte*) mode_mcchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1470 [787] (byte) mode_mcchar::cx#1 ? ++ (byte) mode_mcchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1470 [787] (byte) mode_mcchar::cx#1 ← ++ (byte) mode_mcchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1471 [788] if((byte) mode_mcchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_mcchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG1472 mode_mcchar::@5 - //SEG1473 [789] (byte) mode_mcchar::cy#1 ? ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1473 [789] (byte) mode_mcchar::cy#1 ← ++ (byte) mode_mcchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1474 [790] if((byte) mode_mcchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_mcchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -30307,36 +30307,36 @@ mode_ecmchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG1483 [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1483 [794] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_ecmchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1484 [795] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1484 [795] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1485 [796] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1485 [796] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1486 [797] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1486 [797] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_CONTROL - //SEG1487 [798] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1487 [798] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1488 [799] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1488 [799] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_ecmchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1489 [800] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1489 [800] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(const byte) VIC_ECM#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|VIC_ECM|3 sta VIC_CONTROL - //SEG1490 [801] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1490 [801] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1491 [802] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1491 [802] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_ecmchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_ecmchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -30348,28 +30348,28 @@ mode_ecmchar: { //SEG1495 [803] phi (byte) mode_ecmchar::i#2 = (byte) mode_ecmchar::i#1 [phi:mode_ecmchar::@1->mode_ecmchar::@1#0] -- register_copy //SEG1496 mode_ecmchar::@1 b1: - //SEG1497 [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1497 [804] *((const byte*) DTV_PALETTE#0 + (byte) mode_ecmchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_ecmchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1498 [805] (byte) mode_ecmchar::i#1 ? ++ (byte) mode_ecmchar::i#2 -- vbuxx=_inc_vbuxx + //SEG1498 [805] (byte) mode_ecmchar::i#1 ← ++ (byte) mode_ecmchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG1499 [806] if((byte) mode_ecmchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_ecmchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG1500 mode_ecmchar::@2 - //SEG1501 [807] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1501 [807] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BORDERCOL - //SEG1502 [808] *((const byte*) BGCOL1#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1502 [808] *((const byte*) BGCOL1#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta BGCOL1 - //SEG1503 [809] *((const byte*) BGCOL2#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG1503 [809] *((const byte*) BGCOL2#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL2 - //SEG1504 [810] *((const byte*) BGCOL3#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG1504 [810] *((const byte*) BGCOL3#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL3 - //SEG1505 [811] *((const byte*) BGCOL4#0) ? (byte/signed byte/word/signed word/dword/signed dword) 6 -- _deref_pbuc1=vbuc2 + //SEG1505 [811] *((const byte*) BGCOL4#0) ← (byte/signed byte/word/signed word/dword/signed dword) 6 -- _deref_pbuc1=vbuc2 lda #6 sta BGCOL4 //SEG1506 [812] phi from mode_ecmchar::@2 to mode_ecmchar::@3 [phi:mode_ecmchar::@2->mode_ecmchar::@3] @@ -30403,49 +30403,49 @@ mode_ecmchar: { //SEG1522 [813] phi (byte) mode_ecmchar::cx#2 = (byte) mode_ecmchar::cx#1 [phi:mode_ecmchar::@4->mode_ecmchar::@4#2] -- register_copy //SEG1523 mode_ecmchar::@4 b4: - //SEG1524 [814] (byte~) mode_ecmchar::$26 ? (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1524 [814] (byte~) mode_ecmchar::$26 ← (byte) mode_ecmchar::cx#2 + (byte) mode_ecmchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1525 [815] (byte~) mode_ecmchar::$27 ? (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1525 [815] (byte~) mode_ecmchar::$27 ← (byte~) mode_ecmchar::$26 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1526 [816] *((byte*) mode_ecmchar::col#2) ? (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuaa + //SEG1526 [816] *((byte*) mode_ecmchar::col#2) ← (byte~) mode_ecmchar::$27 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1527 [817] (byte*) mode_ecmchar::col#1 ? ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1527 [817] (byte*) mode_ecmchar::col#1 ← ++ (byte*) mode_ecmchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1528 [818] (byte~) mode_ecmchar::$28 ? (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1528 [818] (byte~) mode_ecmchar::$28 ← (byte) mode_ecmchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1529 [819] (byte~) mode_ecmchar::$29 ? (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1529 [819] (byte~) mode_ecmchar::$29 ← (byte~) mode_ecmchar::$28 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _29 - //SEG1530 [820] (byte~) mode_ecmchar::$30 ? (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1530 [820] (byte~) mode_ecmchar::$30 ← (byte) mode_ecmchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1531 [821] (byte~) mode_ecmchar::$31 ? (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuaa=vbuz1_bor_vbuaa + //SEG1531 [821] (byte~) mode_ecmchar::$31 ← (byte~) mode_ecmchar::$29 | (byte~) mode_ecmchar::$30 -- vbuaa=vbuz1_bor_vbuaa ora _29 - //SEG1532 [822] *((byte*) mode_ecmchar::ch#2) ? (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuaa + //SEG1532 [822] *((byte*) mode_ecmchar::ch#2) ← (byte~) mode_ecmchar::$31 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1533 [823] (byte*) mode_ecmchar::ch#1 ? ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1533 [823] (byte*) mode_ecmchar::ch#1 ← ++ (byte*) mode_ecmchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1534 [824] (byte) mode_ecmchar::cx#1 ? ++ (byte) mode_ecmchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1534 [824] (byte) mode_ecmchar::cx#1 ← ++ (byte) mode_ecmchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1535 [825] if((byte) mode_ecmchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_ecmchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG1536 mode_ecmchar::@5 - //SEG1537 [826] (byte) mode_ecmchar::cy#1 ? ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1537 [826] (byte) mode_ecmchar::cy#1 ← ++ (byte) mode_ecmchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1538 [827] if((byte) mode_ecmchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_ecmchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -30480,36 +30480,36 @@ mode_stdchar: { .label col = 2 .label ch = 5 .label cy = 4 - //SEG1547 [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ? ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 + //SEG1547 [831] *((const byte*) DTV_GRAPHICS_VIC_BANK#0) ← ((byte))((dword))(const byte*) mode_stdchar::CHARSET#0/(dword/signed dword) $10000 -- _deref_pbuc1=vbuc2 // DTV Graphics Bank lda #($ffffffff&CHARSET)/$10000 sta DTV_GRAPHICS_VIC_BANK - //SEG1548 [832] *((const byte*) DTV_COLOR_BANK_LO#0) ? <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1548 [832] *((const byte*) DTV_COLOR_BANK_LO#0) ← <((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // DTV Color Bank lda #DTV_COLOR_BANK_DEFAULT/$400 sta DTV_COLOR_BANK_LO - //SEG1549 [833] *((const byte*) DTV_COLOR_BANK_HI#0) ? >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1549 [833] *((const byte*) DTV_COLOR_BANK_HI#0) ← >((word))(const dword) DTV_COLOR_BANK_DEFAULT#0/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #0 sta DTV_COLOR_BANK_HI - //SEG1550 [834] *((const byte*) DTV_CONTROL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1550 [834] *((const byte*) DTV_CONTROL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta DTV_CONTROL - //SEG1551 [835] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1551 [835] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // VIC Graphics Bank lda #3 sta CIA2_PORT_A_DDR - //SEG1552 [836] *((const byte*) CIA2_PORT_A#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 + //SEG1552 [836] *((const byte*) CIA2_PORT_A#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3^((byte))((word))(const byte*) mode_stdchar::CHARSET#0/(word/signed word/dword/signed dword) $4000 -- _deref_pbuc1=vbuc2 // Set VIC Bank bits to output - all others to input lda #3^CHARSET/$4000 sta CIA2_PORT_A - //SEG1553 [837] *((const byte*) VIC_CONTROL#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1553 [837] *((const byte*) VIC_CONTROL#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Set VIC Bank // VIC Graphics Mode lda #VIC_DEN|VIC_RSEL|3 sta VIC_CONTROL - //SEG1554 [838] *((const byte*) VIC_CONTROL2#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG1554 [838] *((const byte*) VIC_CONTROL2#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta VIC_CONTROL2 - //SEG1555 [839] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG1555 [839] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) mode_stdchar::SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) mode_stdchar::CHARSET#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 // VIC Memory Pointers lda #(SCREEN&$3fff)/$40|(CHARSET&$3fff)/$400 sta VIC_MEMORY @@ -30521,20 +30521,20 @@ mode_stdchar: { //SEG1559 [840] phi (byte) mode_stdchar::i#2 = (byte) mode_stdchar::i#1 [phi:mode_stdchar::@1->mode_stdchar::@1#0] -- register_copy //SEG1560 mode_stdchar::@1 b1: - //SEG1561 [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ? *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG1561 [841] *((const byte*) DTV_PALETTE#0 + (byte) mode_stdchar::i#2) ← *((const byte[$10]) DTV_PALETTE_DEFAULT#0 + (byte) mode_stdchar::i#2) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda DTV_PALETTE_DEFAULT,x sta DTV_PALETTE,x - //SEG1562 [842] (byte) mode_stdchar::i#1 ? ++ (byte) mode_stdchar::i#2 -- vbuxx=_inc_vbuxx + //SEG1562 [842] (byte) mode_stdchar::i#1 ← ++ (byte) mode_stdchar::i#2 -- vbuxx=_inc_vbuxx inx //SEG1563 [843] if((byte) mode_stdchar::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mode_stdchar::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG1564 mode_stdchar::@2 - //SEG1565 [844] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1565 [844] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 // Screen colors lda #0 sta BGCOL - //SEG1566 [845] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG1566 [845] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta BORDERCOL //SEG1567 [846] phi from mode_stdchar::@2 to mode_stdchar::@3 [phi:mode_stdchar::@2->mode_stdchar::@3] //SEG1568 [846] phi (byte*) mode_stdchar::ch#3 = (const byte*) mode_stdchar::SCREEN#0 [phi:mode_stdchar::@2->mode_stdchar::@3#0] -- pbuz1=pbuc1 @@ -30567,49 +30567,49 @@ mode_stdchar: { //SEG1583 [847] phi (byte) mode_stdchar::cx#2 = (byte) mode_stdchar::cx#1 [phi:mode_stdchar::@4->mode_stdchar::@4#2] -- register_copy //SEG1584 mode_stdchar::@4 b4: - //SEG1585 [848] (byte~) mode_stdchar::$25 ? (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 + //SEG1585 [848] (byte~) mode_stdchar::$25 ← (byte) mode_stdchar::cx#2 + (byte) mode_stdchar::cy#4 -- vbuaa=vbuxx_plus_vbuz1 txa clc adc cy - //SEG1586 [849] (byte~) mode_stdchar::$26 ? (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 + //SEG1586 [849] (byte~) mode_stdchar::$26 ← (byte~) mode_stdchar::$25 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuaa_band_vbuc1 and #$f - //SEG1587 [850] *((byte*) mode_stdchar::col#2) ? (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuaa + //SEG1587 [850] *((byte*) mode_stdchar::col#2) ← (byte~) mode_stdchar::$26 -- _deref_pbuz1=vbuaa ldy #0 sta (col),y - //SEG1588 [851] (byte*) mode_stdchar::col#1 ? ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1 + //SEG1588 [851] (byte*) mode_stdchar::col#1 ← ++ (byte*) mode_stdchar::col#2 -- pbuz1=_inc_pbuz1 inc col bne !+ inc col+1 !: - //SEG1589 [852] (byte~) mode_stdchar::$27 ? (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG1589 [852] (byte~) mode_stdchar::$27 ← (byte) mode_stdchar::cy#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and cy - //SEG1590 [853] (byte~) mode_stdchar::$28 ? (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 + //SEG1590 [853] (byte~) mode_stdchar::$28 ← (byte~) mode_stdchar::$27 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuaa_rol_4 asl asl asl asl sta _28 - //SEG1591 [854] (byte~) mode_stdchar::$29 ? (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG1591 [854] (byte~) mode_stdchar::$29 ← (byte) mode_stdchar::cx#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG1592 [855] (byte~) mode_stdchar::$30 ? (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuaa=vbuz1_bor_vbuaa + //SEG1592 [855] (byte~) mode_stdchar::$30 ← (byte~) mode_stdchar::$28 | (byte~) mode_stdchar::$29 -- vbuaa=vbuz1_bor_vbuaa ora _28 - //SEG1593 [856] *((byte*) mode_stdchar::ch#2) ? (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuaa + //SEG1593 [856] *((byte*) mode_stdchar::ch#2) ← (byte~) mode_stdchar::$30 -- _deref_pbuz1=vbuaa ldy #0 sta (ch),y - //SEG1594 [857] (byte*) mode_stdchar::ch#1 ? ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1 + //SEG1594 [857] (byte*) mode_stdchar::ch#1 ← ++ (byte*) mode_stdchar::ch#2 -- pbuz1=_inc_pbuz1 inc ch bne !+ inc ch+1 !: - //SEG1595 [858] (byte) mode_stdchar::cx#1 ? ++ (byte) mode_stdchar::cx#2 -- vbuxx=_inc_vbuxx + //SEG1595 [858] (byte) mode_stdchar::cx#1 ← ++ (byte) mode_stdchar::cx#2 -- vbuxx=_inc_vbuxx inx //SEG1596 [859] if((byte) mode_stdchar::cx#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto mode_stdchar::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG1597 mode_stdchar::@5 - //SEG1598 [860] (byte) mode_stdchar::cy#1 ? ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1 + //SEG1598 [860] (byte) mode_stdchar::cy#1 ← ++ (byte) mode_stdchar::cy#4 -- vbuz1=_inc_vbuz1 inc cy //SEG1599 [861] if((byte) mode_stdchar::cy#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto mode_stdchar::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -30664,10 +30664,10 @@ print_str_lines: { //SEG1618 [869] phi (byte*) print_str_lines::str#3 = (byte*) print_str_lines::str#2 [phi:print_str_lines::@1/print_str_lines::@3->print_str_lines::@2#1] -- register_copy //SEG1619 print_str_lines::@2 b2: - //SEG1620 [870] (byte) print_str_lines::ch#0 ? *((byte*) print_str_lines::str#3) -- vbuaa=_deref_pbuz1 + //SEG1620 [870] (byte) print_str_lines::ch#0 ← *((byte*) print_str_lines::str#3) -- vbuaa=_deref_pbuz1 ldy #0 lda (str),y - //SEG1621 [871] (byte*) print_str_lines::str#0 ? ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1 + //SEG1621 [871] (byte*) print_str_lines::str#0 ← ++ (byte*) print_str_lines::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -30676,10 +30676,10 @@ print_str_lines: { cmp #'@' beq b3 //SEG1623 print_str_lines::@4 - //SEG1624 [873] *((byte*) print_char_cursor#17) ? (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa + //SEG1624 [873] *((byte*) print_char_cursor#17) ← (byte) print_str_lines::ch#0 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG1625 [874] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1 + //SEG1625 [874] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#17 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -30696,7 +30696,7 @@ print_str_lines: { //SEG1632 [878] call print_ln //SEG1633 [880] phi from print_str_lines::@5 to print_ln [phi:print_str_lines::@5->print_ln] jsr print_ln - //SEG1634 [879] (byte*~) print_char_cursor#103 ? (byte*) print_line_cursor#19 -- pbuz1=pbuz2 + //SEG1634 [879] (byte*~) print_char_cursor#103 ← (byte*) print_line_cursor#19 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -30714,7 +30714,7 @@ print_ln: { //SEG1641 [881] phi (byte*) print_line_cursor#18 = (byte*) print_line_cursor#17 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy //SEG1642 print_ln::@1 b1: - //SEG1643 [882] (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1643 [882] (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#18 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -30749,11 +30749,11 @@ print_cls: { //SEG1651 [886] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy //SEG1652 print_cls::@1 b1: - //SEG1653 [887] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG1653 [887] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG1654 [888] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG1654 [888] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 diff --git a/src/test/ref/cast-precedence-problem.log b/src/test/ref/cast-precedence-problem.log index bcf9355a3..6576aa747 100644 --- a/src/test/ref/cast-precedence-problem.log +++ b/src/test/ref/cast-precedence-problem.log @@ -7,31 +7,31 @@ CONTROL FLOW GRAPH SSA @begin: scope:[] from to:@1 main: scope:[main] from @1 - (byte*) main::SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte) main::min#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) main::max#0 ? (byte/word/signed word/dword/signed dword) $c8 - (byte~) main::$0 ? (byte) main::min#0 + (byte) main::max#0 - (word) main::sumw#0 ? ((word)) (byte~) main::$0 - (word~) main::$1 ? (word) main::sumw#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) main::$2 ? ((byte)) (word~) main::$1 - (byte/signed word/word/dword/signed dword~) main::$3 ? (byte~) main::$2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) main::midw#0 ? (byte/signed word/word/dword/signed dword~) main::$3 - *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte) main::midw#0 - (byte~) main::$4 ? (byte) main::min#0 + (byte) main::max#0 - (byte) main::sumb#0 ? (byte~) main::$4 - (byte~) main::$5 ? (byte) main::sumb#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/signed word/word/dword/signed dword~) main::$6 ? (byte~) main::$5 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) main::midb#0 ? (byte/signed word/word/dword/signed dword~) main::$6 - *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) main::midb#0 - (byte*) main::BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (bool~) main::$7 ? *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) + (byte*) main::SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte) main::min#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) main::max#0 ← (byte/word/signed word/dword/signed dword) $c8 + (byte~) main::$0 ← (byte) main::min#0 + (byte) main::max#0 + (word) main::sumw#0 ← ((word)) (byte~) main::$0 + (word~) main::$1 ← (word) main::sumw#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) main::$2 ← ((byte)) (word~) main::$1 + (byte/signed word/word/dword/signed dword~) main::$3 ← (byte~) main::$2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) main::midw#0 ← (byte/signed word/word/dword/signed dword~) main::$3 + *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) main::midw#0 + (byte~) main::$4 ← (byte) main::min#0 + (byte) main::max#0 + (byte) main::sumb#0 ← (byte~) main::$4 + (byte~) main::$5 ← (byte) main::sumb#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/signed word/word/dword/signed dword~) main::$6 ← (byte~) main::$5 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) main::midb#0 ← (byte/signed word/word/dword/signed dword~) main::$6 + *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) main::midb#0 + (byte*) main::BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (bool~) main::$7 ← *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == *((byte*) main::SCREEN#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) if((bool~) main::$7) goto main::@1 to:main::@3 main::@1: scope:[main] from main - *((byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + *((byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 to:main::@return main::@3: scope:[main] from main - *((byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 + *((byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 to:main::@return main::@return: scope:[main] from main::@1 main::@3 return @@ -139,18 +139,18 @@ FINAL CONTROL FLOW GRAPH @end: scope:[] from @1 [3] phi() main: scope:[main] from @1 - [4] *((const byte*) main::SCREEN#0) ? (const byte) main::midw#0 - [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (const byte) main::midb#0 + [4] *((const byte*) main::SCREEN#0) ← (const byte) main::midw#0 + [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [6] if(*((const byte*) main::SCREEN#0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 to:main::@2 main::@2: scope:[main] from main - [7] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 + [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 to:main::@return main::@return: scope:[main] from main::@1 main::@2 [8] return to:@return main::@1: scope:[main] from main - [9] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 to:main::@return @@ -200,10 +200,10 @@ main: { .const sumw = min+max .const midb = (sumb>>1)+1 .const midw = (sumw>>1)+1 - //SEG10 [4] *((const byte*) main::SCREEN#0) ? (const byte) main::midw#0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) main::SCREEN#0) ← (const byte) main::midw#0 -- _deref_pbuc1=vbuc2 lda #midw sta SCREEN - //SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (const byte) main::midb#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 -- _deref_pbuc1=vbuc2 lda #midb sta SCREEN+1 //SEG12 [6] if(*((const byte*) main::SCREEN#0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 -- _deref_pbuc1_eq__deref_pbuc2_then_la1 @@ -213,7 +213,7 @@ main: { jmp b2 //SEG13 main::@2 b2: - //SEG14 [7] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL jmp breturn @@ -223,18 +223,18 @@ main: { rts //SEG17 main::@1 b1: - //SEG18 [9] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG18 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL jmp breturn } REGISTER UPLIFT POTENTIAL REGISTERS -Statement [4] *((const byte*) main::SCREEN#0) ? (const byte) main::midw#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (const byte) main::midb#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [4] *((const byte*) main::SCREEN#0) ← (const byte) main::midw#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 [ ] ( main:2 [ ] ) always clobbers reg byte a Statement [6] if(*((const byte*) main::SCREEN#0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [9] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a REGISTER UPLIFT SCOPES Uplift Scope [main] @@ -275,10 +275,10 @@ main: { .const sumw = min+max .const midb = (sumb>>1)+1 .const midw = (sumw>>1)+1 - //SEG10 [4] *((const byte*) main::SCREEN#0) ? (const byte) main::midw#0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) main::SCREEN#0) ← (const byte) main::midw#0 -- _deref_pbuc1=vbuc2 lda #midw sta SCREEN - //SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (const byte) main::midb#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 -- _deref_pbuc1=vbuc2 lda #midb sta SCREEN+1 //SEG12 [6] if(*((const byte*) main::SCREEN#0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 -- _deref_pbuc1_eq__deref_pbuc2_then_la1 @@ -288,7 +288,7 @@ main: { jmp b2 //SEG13 main::@2 b2: - //SEG14 [7] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL jmp breturn @@ -298,7 +298,7 @@ main: { rts //SEG17 main::@1 b1: - //SEG18 [9] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG18 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL jmp breturn @@ -379,10 +379,10 @@ main: { .const sumw = min+max .const midb = (sumb>>1)+1 .const midw = (sumw>>1)+1 - //SEG10 [4] *((const byte*) main::SCREEN#0) ? (const byte) main::midw#0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) main::SCREEN#0) ← (const byte) main::midw#0 -- _deref_pbuc1=vbuc2 lda #midw sta SCREEN - //SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (const byte) main::midb#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (const byte) main::midb#0 -- _deref_pbuc1=vbuc2 lda #midb sta SCREEN+1 //SEG12 [6] if(*((const byte*) main::SCREEN#0)==*((const byte*) main::SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) 1)) goto main::@1 -- _deref_pbuc1_eq__deref_pbuc2_then_la1 @@ -390,7 +390,7 @@ main: { cmp SCREEN+1 beq b1 //SEG13 main::@2 - //SEG14 [7] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL //SEG15 main::@return @@ -398,7 +398,7 @@ main: { rts //SEG17 main::@1 b1: - //SEG18 [9] *((const byte*) main::BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG18 [9] *((const byte*) main::BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL rts diff --git a/src/test/ref/complex/tetris/tetris.log b/src/test/ref/complex/tetris/tetris.log index 6ec08e34d..40569eaec 100644 --- a/src/test/ref/complex/tetris/tetris.log +++ b/src/test/ref/complex/tetris/tetris.log @@ -8,508 +8,508 @@ Resolved forward reference COLLISION_NONE to (byte) COLLISION_NONE Resolved forward reference COLLISION_NONE to (byte) COLLISION_NONE Resolved forward reference COLLISION_NONE to (byte) COLLISION_NONE Identified constant variable (byte) render_screen_original::SPACE -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx Inlined call call vicSelectGfxBank (byte*) PLAYFIELD_CHARSET -Inlined call (byte~) render_show::$2 ? call toD018 (byte*) PLAYFIELD_SCREEN_1 (byte*) PLAYFIELD_CHARSET -Inlined call (byte~) render_show::$1 ? call toD018 (byte*) PLAYFIELD_SCREEN_2 (byte*) PLAYFIELD_CHARSET -Inlined call (byte~) $6 ? call toSpritePtr (byte*) PLAYFIELD_SPRITES -Inlined call (byte~) sprites_irq::$5 ? call toSpritePtr (byte*) PLAYFIELD_SPRITES +Inlined call (byte~) render_show::$2 ← call toD018 (byte*) PLAYFIELD_SCREEN_1 (byte*) PLAYFIELD_CHARSET +Inlined call (byte~) render_show::$1 ← call toD018 (byte*) PLAYFIELD_SCREEN_2 (byte*) PLAYFIELD_CHARSET +Inlined call (byte~) $6 ← call toSpritePtr (byte*) PLAYFIELD_SPRITES +Inlined call (byte~) sprites_irq::$5 ← call toSpritePtr (byte*) PLAYFIELD_SPRITES CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@5 @5: scope:[] from @begin - (byte) KEY_DEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_RETURN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_CRSR_RIGHT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_F7#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) KEY_F1#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_F3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) KEY_F5#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) KEY_CRSR_DOWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) KEY_3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) KEY_W#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) KEY_A#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) KEY_4#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) KEY_Z#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) KEY_S#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) KEY_E#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) KEY_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) KEY_5#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) KEY_R#0 ? (byte/signed byte/word/signed word/dword/signed dword) $11 - (byte) KEY_D#0 ? (byte/signed byte/word/signed word/dword/signed dword) $12 - (byte) KEY_6#0 ? (byte/signed byte/word/signed word/dword/signed dword) $13 - (byte) KEY_C#0 ? (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte) KEY_F#0 ? (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) KEY_T#0 ? (byte/signed byte/word/signed word/dword/signed dword) $16 - (byte) KEY_X#0 ? (byte/signed byte/word/signed word/dword/signed dword) $17 - (byte) KEY_7#0 ? (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte) KEY_Y#0 ? (byte/signed byte/word/signed word/dword/signed dword) $19 - (byte) KEY_G#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1a - (byte) KEY_8#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1b - (byte) KEY_B#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1c - (byte) KEY_H#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1d - (byte) KEY_U#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1e - (byte) KEY_V#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1f - (byte) KEY_9#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) KEY_I#0 ? (byte/signed byte/word/signed word/dword/signed dword) $21 - (byte) KEY_J#0 ? (byte/signed byte/word/signed word/dword/signed dword) $22 - (byte) KEY_0#0 ? (byte/signed byte/word/signed word/dword/signed dword) $23 - (byte) KEY_M#0 ? (byte/signed byte/word/signed word/dword/signed dword) $24 - (byte) KEY_K#0 ? (byte/signed byte/word/signed word/dword/signed dword) $25 - (byte) KEY_O#0 ? (byte/signed byte/word/signed word/dword/signed dword) $26 - (byte) KEY_N#0 ? (byte/signed byte/word/signed word/dword/signed dword) $27 - (byte) KEY_PLUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte) KEY_P#0 ? (byte/signed byte/word/signed word/dword/signed dword) $29 - (byte) KEY_L#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2a - (byte) KEY_MINUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2b - (byte) KEY_DOT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2c - (byte) KEY_COLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2d - (byte) KEY_AT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2e - (byte) KEY_COMMA#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2f - (byte) KEY_POUND#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) KEY_ASTERISK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) KEY_SEMICOLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $32 - (byte) KEY_HOME#0 ? (byte/signed byte/word/signed word/dword/signed dword) $33 - (byte) KEY_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $34 - (byte) KEY_EQUALS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) KEY_ARROW_UP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) KEY_SLASH#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte) KEY_1#0 ? (byte/signed byte/word/signed word/dword/signed dword) $38 - (byte) KEY_ARROW_LEFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $39 - (byte) KEY_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3a - (byte) KEY_2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3b - (byte) KEY_SPACE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3c - (byte) KEY_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3d - (byte) KEY_Q#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3e - (byte) KEY_RUNSTOP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3f - (byte[]) keyboard_char_keycodes#0 ? { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } - (byte[8]) keyboard_matrix_row_bitmask#0 ? { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } - (byte[8]) keyboard_matrix_col_bitmask#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } + (byte) KEY_DEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_RETURN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_CRSR_RIGHT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_F7#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) KEY_F1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_F3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) KEY_F5#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) KEY_CRSR_DOWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) KEY_3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) KEY_W#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) KEY_A#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) KEY_4#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) KEY_Z#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) KEY_S#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) KEY_E#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) KEY_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) KEY_5#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) KEY_R#0 ← (byte/signed byte/word/signed word/dword/signed dword) $11 + (byte) KEY_D#0 ← (byte/signed byte/word/signed word/dword/signed dword) $12 + (byte) KEY_6#0 ← (byte/signed byte/word/signed word/dword/signed dword) $13 + (byte) KEY_C#0 ← (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte) KEY_F#0 ← (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) KEY_T#0 ← (byte/signed byte/word/signed word/dword/signed dword) $16 + (byte) KEY_X#0 ← (byte/signed byte/word/signed word/dword/signed dword) $17 + (byte) KEY_7#0 ← (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte) KEY_Y#0 ← (byte/signed byte/word/signed word/dword/signed dword) $19 + (byte) KEY_G#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1a + (byte) KEY_8#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1b + (byte) KEY_B#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1c + (byte) KEY_H#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1d + (byte) KEY_U#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1e + (byte) KEY_V#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1f + (byte) KEY_9#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) KEY_I#0 ← (byte/signed byte/word/signed word/dword/signed dword) $21 + (byte) KEY_J#0 ← (byte/signed byte/word/signed word/dword/signed dword) $22 + (byte) KEY_0#0 ← (byte/signed byte/word/signed word/dword/signed dword) $23 + (byte) KEY_M#0 ← (byte/signed byte/word/signed word/dword/signed dword) $24 + (byte) KEY_K#0 ← (byte/signed byte/word/signed word/dword/signed dword) $25 + (byte) KEY_O#0 ← (byte/signed byte/word/signed word/dword/signed dword) $26 + (byte) KEY_N#0 ← (byte/signed byte/word/signed word/dword/signed dword) $27 + (byte) KEY_PLUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) KEY_P#0 ← (byte/signed byte/word/signed word/dword/signed dword) $29 + (byte) KEY_L#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2a + (byte) KEY_MINUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2b + (byte) KEY_DOT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2c + (byte) KEY_COLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2d + (byte) KEY_AT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2e + (byte) KEY_COMMA#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2f + (byte) KEY_POUND#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) KEY_ASTERISK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) KEY_SEMICOLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $32 + (byte) KEY_HOME#0 ← (byte/signed byte/word/signed word/dword/signed dword) $33 + (byte) KEY_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $34 + (byte) KEY_EQUALS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) KEY_ARROW_UP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) KEY_SLASH#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte) KEY_1#0 ← (byte/signed byte/word/signed word/dword/signed dword) $38 + (byte) KEY_ARROW_LEFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $39 + (byte) KEY_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3a + (byte) KEY_2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3b + (byte) KEY_SPACE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3c + (byte) KEY_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3d + (byte) KEY_Q#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3e + (byte) KEY_RUNSTOP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3f + (byte[]) keyboard_char_keycodes#0 ← { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } + (byte[8]) keyboard_matrix_row_bitmask#0 ← { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } + (byte[8]) keyboard_matrix_col_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } to:@9 keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_event_scan::@8 - (byte) keyboard_matrix_read::rowid#1 ? phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::rowid#0 ) - *((byte*) CIA1_PORT_A#0) ? *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) - (byte~) keyboard_matrix_read::$0 ? ~ *((byte*) CIA1_PORT_B#0) - (byte) keyboard_matrix_read::row_pressed_bits#0 ? (byte~) keyboard_matrix_read::$0 - (byte) keyboard_matrix_read::return#0 ? (byte) keyboard_matrix_read::row_pressed_bits#0 + (byte) keyboard_matrix_read::rowid#1 ← phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::rowid#0 ) + *((byte*) CIA1_PORT_A#0) ← *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) + (byte~) keyboard_matrix_read::$0 ← ~ *((byte*) CIA1_PORT_B#0) + (byte) keyboard_matrix_read::row_pressed_bits#0 ← (byte~) keyboard_matrix_read::$0 + (byte) keyboard_matrix_read::return#0 ← (byte) keyboard_matrix_read::row_pressed_bits#0 to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read - (byte) keyboard_matrix_read::return#3 ? phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) - (byte) keyboard_matrix_read::return#1 ? (byte) keyboard_matrix_read::return#3 + (byte) keyboard_matrix_read::return#3 ← phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) + (byte) keyboard_matrix_read::return#1 ← (byte) keyboard_matrix_read::return#3 return to:@return @9: scope:[] from @5 - (byte[8]) keyboard_events#0 ? { fill( 8, 0) } - (byte) keyboard_events_size#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_modifiers#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_MODIFIER_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_MODIFIER_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_MODIFIER_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_MODIFIER_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte~) $0 ? (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 - (byte) KEY_MODIFIER_SHIFT#0 ? (byte~) $0 - (byte[8]) keyboard_scan_values#0 ? { fill( 8, 0) } + (byte[8]) keyboard_events#0 ← { fill( 8, 0) } + (byte) keyboard_events_size#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_MODIFIER_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_MODIFIER_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_MODIFIER_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_MODIFIER_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte~) $0 ← (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 + (byte) KEY_MODIFIER_SHIFT#0 ← (byte~) $0 + (byte[8]) keyboard_scan_values#0 ← { fill( 8, 0) } to:@12 keyboard_event_scan: scope:[keyboard_event_scan] from main::@35 - (byte) keyboard_events_size#55 ? phi( main::@35/(byte) keyboard_events_size#26 ) - (byte) keyboard_event_scan::keycode#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_event_scan::row#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#55 ← phi( main::@35/(byte) keyboard_events_size#26 ) + (byte) keyboard_event_scan::keycode#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_event_scan::row#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_event_scan::@8 keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@10 - (byte) keyboard_events_size#45 ? phi( keyboard_event_scan/(byte) keyboard_events_size#55 keyboard_event_scan::@10/(byte) keyboard_events_size#56 ) - (byte) keyboard_event_scan::keycode#11 ? phi( keyboard_event_scan/(byte) keyboard_event_scan::keycode#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#14 ) - (byte) keyboard_event_scan::row#2 ? phi( keyboard_event_scan/(byte) keyboard_event_scan::row#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::row#1 ) - (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 + (byte) keyboard_events_size#45 ← phi( keyboard_event_scan/(byte) keyboard_events_size#55 keyboard_event_scan::@10/(byte) keyboard_events_size#56 ) + (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte) keyboard_event_scan::keycode#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#14 ) + (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte) keyboard_event_scan::row#0 keyboard_event_scan::@10/(byte) keyboard_event_scan::row#1 ) + (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 call keyboard_matrix_read - (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#1 + (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#1 to:keyboard_event_scan::@25 keyboard_event_scan::@25: scope:[keyboard_event_scan] from keyboard_event_scan::@8 - (byte) keyboard_events_size#37 ? phi( keyboard_event_scan::@8/(byte) keyboard_events_size#45 ) - (byte) keyboard_event_scan::keycode#7 ? phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#11 ) - (byte) keyboard_event_scan::row#3 ? phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::row#2 ) - (byte) keyboard_matrix_read::return#4 ? phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::return#2 ) - (byte~) keyboard_event_scan::$12 ? (byte) keyboard_matrix_read::return#4 - (byte) keyboard_event_scan::row_scan#0 ? (byte~) keyboard_event_scan::$12 - (bool~) keyboard_event_scan::$13 ? (byte) keyboard_event_scan::row_scan#0 != *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#3) + (byte) keyboard_events_size#37 ← phi( keyboard_event_scan::@8/(byte) keyboard_events_size#45 ) + (byte) keyboard_event_scan::keycode#7 ← phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#11 ) + (byte) keyboard_event_scan::row#3 ← phi( keyboard_event_scan::@8/(byte) keyboard_event_scan::row#2 ) + (byte) keyboard_matrix_read::return#4 ← phi( keyboard_event_scan::@8/(byte) keyboard_matrix_read::return#2 ) + (byte~) keyboard_event_scan::$12 ← (byte) keyboard_matrix_read::return#4 + (byte) keyboard_event_scan::row_scan#0 ← (byte~) keyboard_event_scan::$12 + (bool~) keyboard_event_scan::$13 ← (byte) keyboard_event_scan::row_scan#0 != *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#3) if((bool~) keyboard_event_scan::$13) goto keyboard_event_scan::@9 to:keyboard_event_scan::@21 keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - (byte) keyboard_events_size#30 ? phi( keyboard_event_scan::@25/(byte) keyboard_events_size#37 ) - (byte) keyboard_event_scan::keycode#12 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) - (byte) keyboard_event_scan::row#9 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) - (byte) keyboard_event_scan::row_scan#5 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row_scan#0 ) - (byte) keyboard_event_scan::col#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#30 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#37 ) + (byte) keyboard_event_scan::keycode#12 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) + (byte) keyboard_event_scan::row#9 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) + (byte) keyboard_event_scan::row_scan#5 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row_scan#0 ) + (byte) keyboard_event_scan::col#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:keyboard_event_scan::@11 keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@25 - (byte) keyboard_events_size#64 ? phi( keyboard_event_scan::@25/(byte) keyboard_events_size#37 ) - (byte) keyboard_event_scan::row#7 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) - (byte) keyboard_event_scan::keycode#3 ? phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) - (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ? (byte) keyboard_event_scan::keycode#3 + (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) keyboard_event_scan::keycode#1 ? (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 + (byte) keyboard_events_size#64 ← phi( keyboard_event_scan::@25/(byte) keyboard_events_size#37 ) + (byte) keyboard_event_scan::row#7 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::row#3 ) + (byte) keyboard_event_scan::keycode#3 ← phi( keyboard_event_scan::@25/(byte) keyboard_event_scan::keycode#7 ) + (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 ← (byte) keyboard_event_scan::keycode#3 + (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) keyboard_event_scan::keycode#1 ← (byte/signed word/word/dword/signed dword~) keyboard_event_scan::$14 to:keyboard_event_scan::@10 keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@20 keyboard_event_scan::@21 - (byte) keyboard_events_size#56 ? phi( keyboard_event_scan::@20/(byte) keyboard_events_size#63 keyboard_event_scan::@21/(byte) keyboard_events_size#64 ) - (byte) keyboard_event_scan::keycode#14 ? phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@21/(byte) keyboard_event_scan::keycode#1 ) - (byte) keyboard_event_scan::row#4 ? phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::row#6 keyboard_event_scan::@21/(byte) keyboard_event_scan::row#7 ) - (byte) keyboard_event_scan::row#1 ? (byte) keyboard_event_scan::row#4 + rangenext(0,7) - (bool~) keyboard_event_scan::$25 ? (byte) keyboard_event_scan::row#1 != rangelast(0,7) + (byte) keyboard_events_size#56 ← phi( keyboard_event_scan::@20/(byte) keyboard_events_size#63 keyboard_event_scan::@21/(byte) keyboard_events_size#64 ) + (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@21/(byte) keyboard_event_scan::keycode#1 ) + (byte) keyboard_event_scan::row#4 ← phi( keyboard_event_scan::@20/(byte) keyboard_event_scan::row#6 keyboard_event_scan::@21/(byte) keyboard_event_scan::row#7 ) + (byte) keyboard_event_scan::row#1 ← (byte) keyboard_event_scan::row#4 + rangenext(0,7) + (bool~) keyboard_event_scan::$25 ← (byte) keyboard_event_scan::row#1 != rangelast(0,7) if((bool~) keyboard_event_scan::$25) goto keyboard_event_scan::@8 to:keyboard_event_scan::@23 keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@12 keyboard_event_scan::@9 - (byte) keyboard_events_size#21 ? phi( keyboard_event_scan::@12/(byte) keyboard_events_size#29 keyboard_event_scan::@9/(byte) keyboard_events_size#30 ) - (byte) keyboard_event_scan::keycode#8 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 keyboard_event_scan::@9/(byte) keyboard_event_scan::keycode#12 ) - (byte) keyboard_event_scan::col#2 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@9/(byte) keyboard_event_scan::col#0 ) - (byte) keyboard_event_scan::row#5 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 keyboard_event_scan::@9/(byte) keyboard_event_scan::row#9 ) - (byte) keyboard_event_scan::row_scan#1 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 keyboard_event_scan::@9/(byte) keyboard_event_scan::row_scan#5 ) - (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#1 ^ *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#5) - (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) - (bool~) keyboard_event_scan::$17 ? (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$18 ? ! (bool~) keyboard_event_scan::$17 + (byte) keyboard_events_size#21 ← phi( keyboard_event_scan::@12/(byte) keyboard_events_size#29 keyboard_event_scan::@9/(byte) keyboard_events_size#30 ) + (byte) keyboard_event_scan::keycode#8 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 keyboard_event_scan::@9/(byte) keyboard_event_scan::keycode#12 ) + (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@9/(byte) keyboard_event_scan::col#0 ) + (byte) keyboard_event_scan::row#5 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 keyboard_event_scan::@9/(byte) keyboard_event_scan::row#9 ) + (byte) keyboard_event_scan::row_scan#1 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 keyboard_event_scan::@9/(byte) keyboard_event_scan::row_scan#5 ) + (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#1 ^ *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#5) + (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) + (bool~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$18 ← ! (bool~) keyboard_event_scan::$17 if((bool~) keyboard_event_scan::$18) goto keyboard_event_scan::@12 to:keyboard_event_scan::@16 keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@11 keyboard_event_scan::@13 keyboard_event_scan::@14 keyboard_event_scan::@18 - (byte) keyboard_events_size#29 ? phi( keyboard_event_scan::@11/(byte) keyboard_events_size#21 keyboard_event_scan::@13/(byte) keyboard_events_size#38 keyboard_event_scan::@14/(byte) keyboard_events_size#1 keyboard_event_scan::@18/(byte) keyboard_events_size#2 ) - (byte) keyboard_event_scan::row#8 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 keyboard_event_scan::@13/(byte) keyboard_event_scan::row#10 keyboard_event_scan::@14/(byte) keyboard_event_scan::row#11 keyboard_event_scan::@18/(byte) keyboard_event_scan::row#12 ) - (byte) keyboard_event_scan::row_scan#4 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 keyboard_event_scan::@13/(byte) keyboard_event_scan::row_scan#7 keyboard_event_scan::@14/(byte) keyboard_event_scan::row_scan#8 keyboard_event_scan::@18/(byte) keyboard_event_scan::row_scan#9 ) - (byte) keyboard_event_scan::col#3 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 keyboard_event_scan::@13/(byte) keyboard_event_scan::col#5 keyboard_event_scan::@14/(byte) keyboard_event_scan::col#6 keyboard_event_scan::@18/(byte) keyboard_event_scan::col#7 ) - (byte) keyboard_event_scan::keycode#4 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 keyboard_event_scan::@13/(byte) keyboard_event_scan::keycode#9 keyboard_event_scan::@14/(byte) keyboard_event_scan::keycode#5 keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#6 ) - (byte) keyboard_event_scan::keycode#2 ? ++ (byte) keyboard_event_scan::keycode#4 - (byte) keyboard_event_scan::col#1 ? (byte) keyboard_event_scan::col#3 + rangenext(0,7) - (bool~) keyboard_event_scan::$24 ? (byte) keyboard_event_scan::col#1 != rangelast(0,7) + (byte) keyboard_events_size#29 ← phi( keyboard_event_scan::@11/(byte) keyboard_events_size#21 keyboard_event_scan::@13/(byte) keyboard_events_size#38 keyboard_event_scan::@14/(byte) keyboard_events_size#1 keyboard_event_scan::@18/(byte) keyboard_events_size#2 ) + (byte) keyboard_event_scan::row#8 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 keyboard_event_scan::@13/(byte) keyboard_event_scan::row#10 keyboard_event_scan::@14/(byte) keyboard_event_scan::row#11 keyboard_event_scan::@18/(byte) keyboard_event_scan::row#12 ) + (byte) keyboard_event_scan::row_scan#4 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 keyboard_event_scan::@13/(byte) keyboard_event_scan::row_scan#7 keyboard_event_scan::@14/(byte) keyboard_event_scan::row_scan#8 keyboard_event_scan::@18/(byte) keyboard_event_scan::row_scan#9 ) + (byte) keyboard_event_scan::col#3 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 keyboard_event_scan::@13/(byte) keyboard_event_scan::col#5 keyboard_event_scan::@14/(byte) keyboard_event_scan::col#6 keyboard_event_scan::@18/(byte) keyboard_event_scan::col#7 ) + (byte) keyboard_event_scan::keycode#4 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 keyboard_event_scan::@13/(byte) keyboard_event_scan::keycode#9 keyboard_event_scan::@14/(byte) keyboard_event_scan::keycode#5 keyboard_event_scan::@18/(byte) keyboard_event_scan::keycode#6 ) + (byte) keyboard_event_scan::keycode#2 ← ++ (byte) keyboard_event_scan::keycode#4 + (byte) keyboard_event_scan::col#1 ← (byte) keyboard_event_scan::col#3 + rangenext(0,7) + (bool~) keyboard_event_scan::$24 ← (byte) keyboard_event_scan::col#1 != rangelast(0,7) if((bool~) keyboard_event_scan::$24) goto keyboard_event_scan::@11 to:keyboard_event_scan::@20 keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@11 - (byte) keyboard_event_scan::row#13 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 ) - (byte) keyboard_event_scan::keycode#13 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 ) - (byte) keyboard_event_scan::col#8 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 ) - (byte) keyboard_event_scan::row_scan#6 ? phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 ) - (byte) keyboard_events_size#10 ? phi( keyboard_event_scan::@11/(byte) keyboard_events_size#21 ) - (bool~) keyboard_event_scan::$19 ? (byte) keyboard_events_size#10 != (byte/signed byte/word/signed word/dword/signed dword) 8 - (bool~) keyboard_event_scan::$20 ? ! (bool~) keyboard_event_scan::$19 + (byte) keyboard_event_scan::row#13 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row#5 ) + (byte) keyboard_event_scan::keycode#13 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::keycode#8 ) + (byte) keyboard_event_scan::col#8 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::col#2 ) + (byte) keyboard_event_scan::row_scan#6 ← phi( keyboard_event_scan::@11/(byte) keyboard_event_scan::row_scan#1 ) + (byte) keyboard_events_size#10 ← phi( keyboard_event_scan::@11/(byte) keyboard_events_size#21 ) + (bool~) keyboard_event_scan::$19 ← (byte) keyboard_events_size#10 != (byte/signed byte/word/signed word/dword/signed dword) 8 + (bool~) keyboard_event_scan::$20 ← ! (bool~) keyboard_event_scan::$19 if((bool~) keyboard_event_scan::$20) goto keyboard_event_scan::@13 to:keyboard_event_scan::@17 keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@16 - (byte) keyboard_events_size#38 ? phi( keyboard_event_scan::@16/(byte) keyboard_events_size#10 ) - (byte) keyboard_event_scan::row#10 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) - (byte) keyboard_event_scan::row_scan#7 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) - (byte) keyboard_event_scan::col#5 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) - (byte) keyboard_event_scan::keycode#9 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) + (byte) keyboard_events_size#38 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#10 ) + (byte) keyboard_event_scan::row#10 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) + (byte) keyboard_event_scan::row_scan#7 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) + (byte) keyboard_event_scan::col#5 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) + (byte) keyboard_event_scan::keycode#9 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) to:keyboard_event_scan::@12 keyboard_event_scan::@17: scope:[keyboard_event_scan] from keyboard_event_scan::@16 - (byte) keyboard_event_scan::row#14 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) - (byte) keyboard_events_size#22 ? phi( keyboard_event_scan::@16/(byte) keyboard_events_size#10 ) - (byte) keyboard_event_scan::keycode#10 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) - (byte) keyboard_event_scan::col#4 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) - (byte) keyboard_event_scan::row_scan#2 ? phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) - (byte~) keyboard_event_scan::$21 ? (byte) keyboard_event_scan::row_scan#2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#4) - (byte) keyboard_event_scan::event_type#0 ? (byte~) keyboard_event_scan::$21 - (bool~) keyboard_event_scan::$22 ? (byte) keyboard_event_scan::event_type#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_event_scan::row#14 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row#13 ) + (byte) keyboard_events_size#22 ← phi( keyboard_event_scan::@16/(byte) keyboard_events_size#10 ) + (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#13 ) + (byte) keyboard_event_scan::col#4 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::col#8 ) + (byte) keyboard_event_scan::row_scan#2 ← phi( keyboard_event_scan::@16/(byte) keyboard_event_scan::row_scan#6 ) + (byte~) keyboard_event_scan::$21 ← (byte) keyboard_event_scan::row_scan#2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#4) + (byte) keyboard_event_scan::event_type#0 ← (byte~) keyboard_event_scan::$21 + (bool~) keyboard_event_scan::$22 ← (byte) keyboard_event_scan::event_type#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) keyboard_event_scan::$22) goto keyboard_event_scan::@14 to:keyboard_event_scan::@18 keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@17 - (byte) keyboard_event_scan::row#11 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) - (byte) keyboard_event_scan::row_scan#8 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) - (byte) keyboard_event_scan::col#6 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) - (byte) keyboard_events_size#11 ? phi( keyboard_event_scan::@17/(byte) keyboard_events_size#22 ) - (byte) keyboard_event_scan::keycode#5 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) - (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#5 | (byte/signed byte/word/signed word/dword/signed dword) $40 - *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#11) ? (byte/word/dword~) keyboard_event_scan::$23 - (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#11 + (byte) keyboard_event_scan::row#11 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) + (byte) keyboard_event_scan::row_scan#8 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) + (byte) keyboard_event_scan::col#6 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) + (byte) keyboard_events_size#11 ← phi( keyboard_event_scan::@17/(byte) keyboard_events_size#22 ) + (byte) keyboard_event_scan::keycode#5 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) + (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#5 | (byte/signed byte/word/signed word/dword/signed dword) $40 + *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#11) ← (byte/word/dword~) keyboard_event_scan::$23 + (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#11 to:keyboard_event_scan::@12 keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@17 - (byte) keyboard_event_scan::row#12 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) - (byte) keyboard_event_scan::row_scan#9 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) - (byte) keyboard_event_scan::col#7 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) - (byte) keyboard_events_size#12 ? phi( keyboard_event_scan::@17/(byte) keyboard_events_size#22 ) - (byte) keyboard_event_scan::keycode#6 ? phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) - *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ? (byte) keyboard_event_scan::keycode#6 - (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#12 + (byte) keyboard_event_scan::row#12 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row#14 ) + (byte) keyboard_event_scan::row_scan#9 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::row_scan#2 ) + (byte) keyboard_event_scan::col#7 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::col#4 ) + (byte) keyboard_events_size#12 ← phi( keyboard_event_scan::@17/(byte) keyboard_events_size#22 ) + (byte) keyboard_event_scan::keycode#6 ← phi( keyboard_event_scan::@17/(byte) keyboard_event_scan::keycode#10 ) + *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#12) ← (byte) keyboard_event_scan::keycode#6 + (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#12 to:keyboard_event_scan::@12 keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@12 - (byte) keyboard_events_size#63 ? phi( keyboard_event_scan::@12/(byte) keyboard_events_size#29 ) - (byte) keyboard_event_scan::keycode#15 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 ) - (byte) keyboard_event_scan::row#6 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 ) - (byte) keyboard_event_scan::row_scan#3 ? phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 ) - *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#6) ? (byte) keyboard_event_scan::row_scan#3 + (byte) keyboard_events_size#63 ← phi( keyboard_event_scan::@12/(byte) keyboard_events_size#29 ) + (byte) keyboard_event_scan::keycode#15 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::keycode#2 ) + (byte) keyboard_event_scan::row#6 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row#8 ) + (byte) keyboard_event_scan::row_scan#3 ← phi( keyboard_event_scan::@12/(byte) keyboard_event_scan::row_scan#4 ) + *((byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#6) ← (byte) keyboard_event_scan::row_scan#3 to:keyboard_event_scan::@10 keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@10 - (byte) keyboard_events_size#78 ? phi( keyboard_event_scan::@10/(byte) keyboard_events_size#56 ) - (byte) keyboard_modifiers#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_event_pressed::keycode#0 ? (byte) KEY_LSHIFT#0 + (byte) keyboard_events_size#78 ← phi( keyboard_event_scan::@10/(byte) keyboard_events_size#56 ) + (byte) keyboard_modifiers#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_event_pressed::keycode#0 ← (byte) KEY_LSHIFT#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@26 keyboard_event_scan::@26: scope:[keyboard_event_scan] from keyboard_event_scan::@23 - (byte) keyboard_events_size#75 ? phi( keyboard_event_scan::@23/(byte) keyboard_events_size#78 ) - (byte) keyboard_modifiers#18 ? phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#1 ) - (byte) keyboard_event_pressed::return#7 ? phi( keyboard_event_scan::@23/(byte) keyboard_event_pressed::return#0 ) - (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#7 - (bool~) keyboard_event_scan::$1 ? (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$2 ? ! (bool~) keyboard_event_scan::$1 + (byte) keyboard_events_size#75 ← phi( keyboard_event_scan::@23/(byte) keyboard_events_size#78 ) + (byte) keyboard_modifiers#18 ← phi( keyboard_event_scan::@23/(byte) keyboard_modifiers#1 ) + (byte) keyboard_event_pressed::return#7 ← phi( keyboard_event_scan::@23/(byte) keyboard_event_pressed::return#0 ) + (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#7 + (bool~) keyboard_event_scan::$1 ← (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$2 ← ! (bool~) keyboard_event_scan::$1 if((bool~) keyboard_event_scan::$2) goto keyboard_event_scan::@1 to:keyboard_event_scan::@24 keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan::@24 keyboard_event_scan::@26 - (byte) keyboard_events_size#70 ? phi( keyboard_event_scan::@24/(byte) keyboard_events_size#74 keyboard_event_scan::@26/(byte) keyboard_events_size#75 ) - (byte) keyboard_modifiers#26 ? phi( keyboard_event_scan::@24/(byte) keyboard_modifiers#2 keyboard_event_scan::@26/(byte) keyboard_modifiers#18 ) - (byte) keyboard_event_pressed::keycode#1 ? (byte) KEY_RSHIFT#0 + (byte) keyboard_events_size#70 ← phi( keyboard_event_scan::@24/(byte) keyboard_events_size#74 keyboard_event_scan::@26/(byte) keyboard_events_size#75 ) + (byte) keyboard_modifiers#26 ← phi( keyboard_event_scan::@24/(byte) keyboard_modifiers#2 keyboard_event_scan::@26/(byte) keyboard_modifiers#18 ) + (byte) keyboard_event_pressed::keycode#1 ← (byte) KEY_RSHIFT#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@27 keyboard_event_scan::@27: scope:[keyboard_event_scan] from keyboard_event_scan::@1 - (byte) keyboard_events_size#65 ? phi( keyboard_event_scan::@1/(byte) keyboard_events_size#70 ) - (byte) keyboard_modifiers#19 ? phi( keyboard_event_scan::@1/(byte) keyboard_modifiers#26 ) - (byte) keyboard_event_pressed::return#8 ? phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::return#1 ) - (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#8 - (bool~) keyboard_event_scan::$4 ? (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$5 ? ! (bool~) keyboard_event_scan::$4 + (byte) keyboard_events_size#65 ← phi( keyboard_event_scan::@1/(byte) keyboard_events_size#70 ) + (byte) keyboard_modifiers#19 ← phi( keyboard_event_scan::@1/(byte) keyboard_modifiers#26 ) + (byte) keyboard_event_pressed::return#8 ← phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::return#1 ) + (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#8 + (bool~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$5 ← ! (bool~) keyboard_event_scan::$4 if((bool~) keyboard_event_scan::$5) goto keyboard_event_scan::@2 to:keyboard_event_scan::@5 keyboard_event_scan::@24: scope:[keyboard_event_scan] from keyboard_event_scan::@26 - (byte) keyboard_events_size#74 ? phi( keyboard_event_scan::@26/(byte) keyboard_events_size#75 ) - (byte) keyboard_modifiers#10 ? phi( keyboard_event_scan::@26/(byte) keyboard_modifiers#18 ) - (byte~) keyboard_event_scan::$26 ? (byte) keyboard_modifiers#10 | (byte) KEY_MODIFIER_LSHIFT#0 - (byte) keyboard_modifiers#2 ? (byte~) keyboard_event_scan::$26 + (byte) keyboard_events_size#74 ← phi( keyboard_event_scan::@26/(byte) keyboard_events_size#75 ) + (byte) keyboard_modifiers#10 ← phi( keyboard_event_scan::@26/(byte) keyboard_modifiers#18 ) + (byte~) keyboard_event_scan::$26 ← (byte) keyboard_modifiers#10 | (byte) KEY_MODIFIER_LSHIFT#0 + (byte) keyboard_modifiers#2 ← (byte~) keyboard_event_scan::$26 to:keyboard_event_scan::@1 keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@27 keyboard_event_scan::@5 - (byte) keyboard_events_size#57 ? phi( keyboard_event_scan::@27/(byte) keyboard_events_size#65 keyboard_event_scan::@5/(byte) keyboard_events_size#66 ) - (byte) keyboard_modifiers#27 ? phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#19 keyboard_event_scan::@5/(byte) keyboard_modifiers#3 ) - (byte) keyboard_event_pressed::keycode#2 ? (byte) KEY_CTRL#0 + (byte) keyboard_events_size#57 ← phi( keyboard_event_scan::@27/(byte) keyboard_events_size#65 keyboard_event_scan::@5/(byte) keyboard_events_size#66 ) + (byte) keyboard_modifiers#27 ← phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#19 keyboard_event_scan::@5/(byte) keyboard_modifiers#3 ) + (byte) keyboard_event_pressed::keycode#2 ← (byte) KEY_CTRL#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@28 keyboard_event_scan::@28: scope:[keyboard_event_scan] from keyboard_event_scan::@2 - (byte) keyboard_events_size#46 ? phi( keyboard_event_scan::@2/(byte) keyboard_events_size#57 ) - (byte) keyboard_modifiers#20 ? phi( keyboard_event_scan::@2/(byte) keyboard_modifiers#27 ) - (byte) keyboard_event_pressed::return#9 ? phi( keyboard_event_scan::@2/(byte) keyboard_event_pressed::return#2 ) - (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#9 - (bool~) keyboard_event_scan::$7 ? (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$8 ? ! (bool~) keyboard_event_scan::$7 + (byte) keyboard_events_size#46 ← phi( keyboard_event_scan::@2/(byte) keyboard_events_size#57 ) + (byte) keyboard_modifiers#20 ← phi( keyboard_event_scan::@2/(byte) keyboard_modifiers#27 ) + (byte) keyboard_event_pressed::return#9 ← phi( keyboard_event_scan::@2/(byte) keyboard_event_pressed::return#2 ) + (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#9 + (bool~) keyboard_event_scan::$7 ← (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$8 ← ! (bool~) keyboard_event_scan::$7 if((bool~) keyboard_event_scan::$8) goto keyboard_event_scan::@3 to:keyboard_event_scan::@6 keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@27 - (byte) keyboard_events_size#66 ? phi( keyboard_event_scan::@27/(byte) keyboard_events_size#65 ) - (byte) keyboard_modifiers#11 ? phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#19 ) - (byte~) keyboard_event_scan::$27 ? (byte) keyboard_modifiers#11 | (byte) KEY_MODIFIER_RSHIFT#0 - (byte) keyboard_modifiers#3 ? (byte~) keyboard_event_scan::$27 + (byte) keyboard_events_size#66 ← phi( keyboard_event_scan::@27/(byte) keyboard_events_size#65 ) + (byte) keyboard_modifiers#11 ← phi( keyboard_event_scan::@27/(byte) keyboard_modifiers#19 ) + (byte~) keyboard_event_scan::$27 ← (byte) keyboard_modifiers#11 | (byte) KEY_MODIFIER_RSHIFT#0 + (byte) keyboard_modifiers#3 ← (byte~) keyboard_event_scan::$27 to:keyboard_event_scan::@2 keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@28 keyboard_event_scan::@6 - (byte) keyboard_events_size#39 ? phi( keyboard_event_scan::@28/(byte) keyboard_events_size#46 keyboard_event_scan::@6/(byte) keyboard_events_size#47 ) - (byte) keyboard_modifiers#28 ? phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#20 keyboard_event_scan::@6/(byte) keyboard_modifiers#4 ) - (byte) keyboard_event_pressed::keycode#3 ? (byte) KEY_COMMODORE#0 + (byte) keyboard_events_size#39 ← phi( keyboard_event_scan::@28/(byte) keyboard_events_size#46 keyboard_event_scan::@6/(byte) keyboard_events_size#47 ) + (byte) keyboard_modifiers#28 ← phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#20 keyboard_event_scan::@6/(byte) keyboard_modifiers#4 ) + (byte) keyboard_event_pressed::keycode#3 ← (byte) KEY_COMMODORE#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#3 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#3 ← (byte) keyboard_event_pressed::return#5 to:keyboard_event_scan::@29 keyboard_event_scan::@29: scope:[keyboard_event_scan] from keyboard_event_scan::@3 - (byte) keyboard_events_size#31 ? phi( keyboard_event_scan::@3/(byte) keyboard_events_size#39 ) - (byte) keyboard_modifiers#21 ? phi( keyboard_event_scan::@3/(byte) keyboard_modifiers#28 ) - (byte) keyboard_event_pressed::return#10 ? phi( keyboard_event_scan::@3/(byte) keyboard_event_pressed::return#3 ) - (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#10 - (bool~) keyboard_event_scan::$10 ? (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) keyboard_event_scan::$11 ? ! (bool~) keyboard_event_scan::$10 + (byte) keyboard_events_size#31 ← phi( keyboard_event_scan::@3/(byte) keyboard_events_size#39 ) + (byte) keyboard_modifiers#21 ← phi( keyboard_event_scan::@3/(byte) keyboard_modifiers#28 ) + (byte) keyboard_event_pressed::return#10 ← phi( keyboard_event_scan::@3/(byte) keyboard_event_pressed::return#3 ) + (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#10 + (bool~) keyboard_event_scan::$10 ← (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) keyboard_event_scan::$11 ← ! (bool~) keyboard_event_scan::$10 if((bool~) keyboard_event_scan::$11) goto keyboard_event_scan::@4 to:keyboard_event_scan::@7 keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@28 - (byte) keyboard_events_size#47 ? phi( keyboard_event_scan::@28/(byte) keyboard_events_size#46 ) - (byte) keyboard_modifiers#12 ? phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#20 ) - (byte~) keyboard_event_scan::$28 ? (byte) keyboard_modifiers#12 | (byte) KEY_MODIFIER_CTRL#0 - (byte) keyboard_modifiers#4 ? (byte~) keyboard_event_scan::$28 + (byte) keyboard_events_size#47 ← phi( keyboard_event_scan::@28/(byte) keyboard_events_size#46 ) + (byte) keyboard_modifiers#12 ← phi( keyboard_event_scan::@28/(byte) keyboard_modifiers#20 ) + (byte~) keyboard_event_scan::$28 ← (byte) keyboard_modifiers#12 | (byte) KEY_MODIFIER_CTRL#0 + (byte) keyboard_modifiers#4 ← (byte~) keyboard_event_scan::$28 to:keyboard_event_scan::@3 keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - (byte) keyboard_modifiers#22 ? phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#21 ) - (byte) keyboard_events_size#23 ? phi( keyboard_event_scan::@29/(byte) keyboard_events_size#31 ) + (byte) keyboard_modifiers#22 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#21 ) + (byte) keyboard_events_size#23 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#31 ) to:keyboard_event_scan::@return keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan::@29 - (byte) keyboard_events_size#24 ? phi( keyboard_event_scan::@29/(byte) keyboard_events_size#31 ) - (byte) keyboard_modifiers#13 ? phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#21 ) - (byte~) keyboard_event_scan::$29 ? (byte) keyboard_modifiers#13 | (byte) KEY_MODIFIER_COMMODORE#0 - (byte) keyboard_modifiers#5 ? (byte~) keyboard_event_scan::$29 + (byte) keyboard_events_size#24 ← phi( keyboard_event_scan::@29/(byte) keyboard_events_size#31 ) + (byte) keyboard_modifiers#13 ← phi( keyboard_event_scan::@29/(byte) keyboard_modifiers#21 ) + (byte~) keyboard_event_scan::$29 ← (byte) keyboard_modifiers#13 | (byte) KEY_MODIFIER_COMMODORE#0 + (byte) keyboard_modifiers#5 ← (byte~) keyboard_event_scan::$29 to:keyboard_event_scan::@return keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@4 keyboard_event_scan::@7 - (byte) keyboard_modifiers#14 ? phi( keyboard_event_scan::@4/(byte) keyboard_modifiers#22 keyboard_event_scan::@7/(byte) keyboard_modifiers#5 ) - (byte) keyboard_events_size#13 ? phi( keyboard_event_scan::@4/(byte) keyboard_events_size#23 keyboard_event_scan::@7/(byte) keyboard_events_size#24 ) - (byte) keyboard_events_size#3 ? (byte) keyboard_events_size#13 - (byte) keyboard_modifiers#6 ? (byte) keyboard_modifiers#14 + (byte) keyboard_modifiers#14 ← phi( keyboard_event_scan::@4/(byte) keyboard_modifiers#22 keyboard_event_scan::@7/(byte) keyboard_modifiers#5 ) + (byte) keyboard_events_size#13 ← phi( keyboard_event_scan::@4/(byte) keyboard_events_size#23 keyboard_event_scan::@7/(byte) keyboard_events_size#24 ) + (byte) keyboard_events_size#3 ← (byte) keyboard_events_size#13 + (byte) keyboard_modifiers#6 ← (byte) keyboard_modifiers#14 return to:@return keyboard_event_pressed: scope:[keyboard_event_pressed] from keyboard_event_scan::@1 keyboard_event_scan::@2 keyboard_event_scan::@23 keyboard_event_scan::@3 play_move_down::@1 - (byte) keyboard_event_pressed::keycode#5 ? phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::keycode#1 keyboard_event_scan::@2/(byte) keyboard_event_pressed::keycode#2 keyboard_event_scan::@23/(byte) keyboard_event_pressed::keycode#0 keyboard_event_scan::@3/(byte) keyboard_event_pressed::keycode#3 play_move_down::@1/(byte) keyboard_event_pressed::keycode#4 ) - (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) keyboard_event_pressed::row_bits#0 ? *((byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) - (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) keyboard_event_pressed::$2 ? (byte) keyboard_event_pressed::row_bits#0 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) - (byte) keyboard_event_pressed::return#4 ? (byte~) keyboard_event_pressed::$2 + (byte) keyboard_event_pressed::keycode#5 ← phi( keyboard_event_scan::@1/(byte) keyboard_event_pressed::keycode#1 keyboard_event_scan::@2/(byte) keyboard_event_pressed::keycode#2 keyboard_event_scan::@23/(byte) keyboard_event_pressed::keycode#0 keyboard_event_scan::@3/(byte) keyboard_event_pressed::keycode#3 play_move_down::@1/(byte) keyboard_event_pressed::keycode#4 ) + (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) keyboard_event_pressed::row_bits#0 ← *((byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) + (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) keyboard_event_pressed::$2 ← (byte) keyboard_event_pressed::row_bits#0 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) + (byte) keyboard_event_pressed::return#4 ← (byte~) keyboard_event_pressed::$2 to:keyboard_event_pressed::@return keyboard_event_pressed::@return: scope:[keyboard_event_pressed] from keyboard_event_pressed - (byte) keyboard_event_pressed::return#11 ? phi( keyboard_event_pressed/(byte) keyboard_event_pressed::return#4 ) - (byte) keyboard_event_pressed::return#5 ? (byte) keyboard_event_pressed::return#11 + (byte) keyboard_event_pressed::return#11 ← phi( keyboard_event_pressed/(byte) keyboard_event_pressed::return#4 ) + (byte) keyboard_event_pressed::return#5 ← (byte) keyboard_event_pressed::return#11 return to:@return keyboard_event_get: scope:[keyboard_event_get] from main::@36 - (byte) keyboard_events_size#14 ? phi( main::@36/(byte) keyboard_events_size#6 ) - (bool~) keyboard_event_get::$0 ? (byte) keyboard_events_size#14 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_events_size#14 ← phi( main::@36/(byte) keyboard_events_size#6 ) + (bool~) keyboard_event_get::$0 ← (byte) keyboard_events_size#14 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) keyboard_event_get::$0) goto keyboard_event_get::@1 to:keyboard_event_get::@3 keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get - (byte) keyboard_events_size#25 ? phi( keyboard_event_get/(byte) keyboard_events_size#14 ) - (byte) keyboard_event_get::return#0 ? (byte/word/signed word/dword/signed dword) $ff + (byte) keyboard_events_size#25 ← phi( keyboard_event_get/(byte) keyboard_events_size#14 ) + (byte) keyboard_event_get::return#0 ← (byte/word/signed word/dword/signed dword) $ff to:keyboard_event_get::@return keyboard_event_get::@3: scope:[keyboard_event_get] from keyboard_event_get - (byte) keyboard_events_size#15 ? phi( keyboard_event_get/(byte) keyboard_events_size#14 ) - (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#15 - (byte) keyboard_event_get::return#1 ? *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) + (byte) keyboard_events_size#15 ← phi( keyboard_event_get/(byte) keyboard_events_size#14 ) + (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#15 + (byte) keyboard_event_get::return#1 ← *((byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) to:keyboard_event_get::@return keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get::@1 keyboard_event_get::@3 - (byte) keyboard_events_size#16 ? phi( keyboard_event_get::@1/(byte) keyboard_events_size#25 keyboard_event_get::@3/(byte) keyboard_events_size#4 ) - (byte) keyboard_event_get::return#4 ? phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get::@3/(byte) keyboard_event_get::return#1 ) - (byte) keyboard_event_get::return#2 ? (byte) keyboard_event_get::return#4 - (byte) keyboard_events_size#5 ? (byte) keyboard_events_size#16 + (byte) keyboard_events_size#16 ← phi( keyboard_event_get::@1/(byte) keyboard_events_size#25 keyboard_event_get::@3/(byte) keyboard_events_size#4 ) + (byte) keyboard_event_get::return#4 ← phi( keyboard_event_get::@1/(byte) keyboard_event_get::return#0 keyboard_event_get::@3/(byte) keyboard_event_get::return#1 ) + (byte) keyboard_event_get::return#2 ← (byte) keyboard_event_get::return#4 + (byte) keyboard_events_size#5 ← (byte) keyboard_events_size#16 return to:@return @12: scope:[] from @9 - (byte) keyboard_modifiers#62 ? phi( @9/(byte) keyboard_modifiers#0 ) - (byte) keyboard_events_size#81 ? phi( @9/(byte) keyboard_events_size#0 ) - (word*) SID_VOICE3_FREQ#0 ? ((word*)) (word/dword/signed dword) $d40e - (byte*) SID_VOICE3_FREQ_LOW#0 ? ((byte*)) (word/dword/signed dword) $d40e - (byte*) SID_VOICE3_FREQ_HIGH#0 ? ((byte*)) (word/dword/signed dword) $d40f - (byte*) SID_VOICE3_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d412 - (byte) SID_CONTROL_NOISE#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) SID_CONTROL_PULSE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) SID_CONTROL_SAWTOOTH#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) SID_CONTROL_TRIANGLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) SID_CONTROL_TEST#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) SID_CONTROL_RING#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) SID_CONTROL_SYNC#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) SID_CONTROL_GATE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) SID_VOICE3_OSC#0 ? ((byte*)) (word/dword/signed dword) $d41b + (byte) keyboard_modifiers#62 ← phi( @9/(byte) keyboard_modifiers#0 ) + (byte) keyboard_events_size#81 ← phi( @9/(byte) keyboard_events_size#0 ) + (word*) SID_VOICE3_FREQ#0 ← ((word*)) (word/dword/signed dword) $d40e + (byte*) SID_VOICE3_FREQ_LOW#0 ← ((byte*)) (word/dword/signed dword) $d40e + (byte*) SID_VOICE3_FREQ_HIGH#0 ← ((byte*)) (word/dword/signed dword) $d40f + (byte*) SID_VOICE3_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d412 + (byte) SID_CONTROL_NOISE#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) SID_CONTROL_PULSE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) SID_CONTROL_SAWTOOTH#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) SID_CONTROL_TRIANGLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) SID_CONTROL_TEST#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) SID_CONTROL_RING#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) SID_CONTROL_SYNC#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) SID_CONTROL_GATE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) SID_VOICE3_OSC#0 ← ((byte*)) (word/dword/signed dword) $d41b to:@14 sid_rnd_init: scope:[sid_rnd_init] from main - *((word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff - *((byte*) SID_VOICE3_CONTROL#0) ? (byte) SID_CONTROL_NOISE#0 + *((word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff + *((byte*) SID_VOICE3_CONTROL#0) ← (byte) SID_CONTROL_NOISE#0 to:sid_rnd_init::@return sid_rnd_init::@return: scope:[sid_rnd_init] from sid_rnd_init return to:@return sid_rnd: scope:[sid_rnd] from play_spawn_current::@4 - (byte) sid_rnd::return#0 ? *((byte*) SID_VOICE3_OSC#0) + (byte) sid_rnd::return#0 ← *((byte*) SID_VOICE3_OSC#0) to:sid_rnd::@return sid_rnd::@return: scope:[sid_rnd] from sid_rnd - (byte) sid_rnd::return#3 ? phi( sid_rnd/(byte) sid_rnd::return#0 ) - (byte) sid_rnd::return#1 ? (byte) sid_rnd::return#3 + (byte) sid_rnd::return#3 ← phi( sid_rnd/(byte) sid_rnd::return#0 ) + (byte) sid_rnd::return#1 ← (byte) sid_rnd::return#3 return to:@return @14: scope:[] from @12 - (byte) keyboard_modifiers#60 ? phi( @12/(byte) keyboard_modifiers#62 ) - (byte) keyboard_events_size#79 ? phi( @12/(byte) keyboard_events_size#81 ) - (byte*) PLAYFIELD_SCREEN_1#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) PLAYFIELD_SCREEN_2#0 ? ((byte*)) (word/signed word/dword/signed dword) $2c00 - (byte*~) $1 ? (byte*) PLAYFIELD_SCREEN_1#0 + (word) SPRITE_PTRS#0 - (byte*) PLAYFIELD_SPRITE_PTRS_1#0 ? (byte*~) $1 - (byte*~) $2 ? (byte*) PLAYFIELD_SCREEN_2#0 + (word) SPRITE_PTRS#0 - (byte*) PLAYFIELD_SPRITE_PTRS_2#0 ? (byte*~) $2 - (byte*) PLAYFIELD_SCREEN_ORIGINAL#0 ? ((byte*)) (word/signed word/dword/signed dword) $1800 - (byte*) PLAYFIELD_COLORS_ORIGINAL#0 ? ((byte*)) (word/signed word/dword/signed dword) $1c00 - (byte*) PLAYFIELD_SPRITES#0 ? ((byte*)) (word/signed word/dword/signed dword) $2000 - (byte*) PLAYFIELD_CHARSET#0 ? ((byte*)) (word/signed word/dword/signed dword) $2800 - (byte) PLAYFIELD_LINES#0 ? (byte/signed byte/word/signed word/dword/signed dword) $16 - (byte) PLAYFIELD_COLS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte~) $3 ? (byte) PLAYFIELD_LINES#0 * (byte) PLAYFIELD_COLS#0 - (byte[$3]) playfield#0 ? { fill( $3, 0) } - (byte*) current_piece_gfx#0 ? (byte*) 0 - (byte) current_piece_char#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) current_xpos#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) current_ypos#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) render_screen_render#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) render_screen_show#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword) score_bcd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) lines_bcd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) level_bcd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) level#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) game_over#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#60 ← phi( @12/(byte) keyboard_modifiers#62 ) + (byte) keyboard_events_size#79 ← phi( @12/(byte) keyboard_events_size#81 ) + (byte*) PLAYFIELD_SCREEN_1#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) PLAYFIELD_SCREEN_2#0 ← ((byte*)) (word/signed word/dword/signed dword) $2c00 + (byte*~) $1 ← (byte*) PLAYFIELD_SCREEN_1#0 + (word) SPRITE_PTRS#0 + (byte*) PLAYFIELD_SPRITE_PTRS_1#0 ← (byte*~) $1 + (byte*~) $2 ← (byte*) PLAYFIELD_SCREEN_2#0 + (word) SPRITE_PTRS#0 + (byte*) PLAYFIELD_SPRITE_PTRS_2#0 ← (byte*~) $2 + (byte*) PLAYFIELD_SCREEN_ORIGINAL#0 ← ((byte*)) (word/signed word/dword/signed dword) $1800 + (byte*) PLAYFIELD_COLORS_ORIGINAL#0 ← ((byte*)) (word/signed word/dword/signed dword) $1c00 + (byte*) PLAYFIELD_SPRITES#0 ← ((byte*)) (word/signed word/dword/signed dword) $2000 + (byte*) PLAYFIELD_CHARSET#0 ← ((byte*)) (word/signed word/dword/signed dword) $2800 + (byte) PLAYFIELD_LINES#0 ← (byte/signed byte/word/signed word/dword/signed dword) $16 + (byte) PLAYFIELD_COLS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte~) $3 ← (byte) PLAYFIELD_LINES#0 * (byte) PLAYFIELD_COLS#0 + (byte[$3]) playfield#0 ← { fill( $3, 0) } + (byte*) current_piece_gfx#0 ← (byte*) 0 + (byte) current_piece_char#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) current_xpos#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) current_ypos#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_screen_render#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) render_screen_show#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) score_bcd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) lines_bcd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) game_over#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 kickasm(location (byte*) PLAYFIELD_CHARSET#0) {{ .fill 8,$00 // Place a filled char at the start of the charset .import binary "playfield-screen.imap" }} - (byte) PLAYFIELD_SCREEN_ORIGINAL_WIDTH#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) PLAYFIELD_SCREEN_ORIGINAL_WIDTH#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 kickasm(location (byte*) PLAYFIELD_SCREEN_ORIGINAL#0) {{ // Load chars for the screen .var screen = LoadBinary("playfield-screen.iscr") // Load extended colors for the screen @@ -521,295 +521,295 @@ sid_rnd::@return: scope:[sid_rnd] from sid_rnd }} kickasm(location (byte*) PLAYFIELD_COLORS_ORIGINAL#0) {{ .import binary "playfield-screen.col" }} - (byte[]) PIECES_COLORS_1#0 ? { (byte) BLUE#0, (byte) GREEN#0, (byte) PURPLE#0, (byte) BLUE#0, (byte) RED#0, (byte) LIGHT_GREEN#0, (byte) RED#0, (byte) BLUE#0, (byte) LIGHT_BLUE#0, (byte) RED#0, (byte) BLUE#0, (byte) GREEN#0, (byte) PURPLE#0, (byte) BLUE#0, (byte) RED#0, (byte) LIGHT_GREEN#0, (byte) RED#0, (byte) BLUE#0, (byte) LIGHT_BLUE#0, (byte) RED#0, (byte) BLUE#0, (byte) GREEN#0, (byte) PURPLE#0, (byte) BLUE#0, (byte) RED#0, (byte) LIGHT_GREEN#0, (byte) RED#0, (byte) BLUE#0, (byte) LIGHT_BLUE#0, (byte) RED#0 } - (byte[]) PIECES_COLORS_2#0 ? { (byte) CYAN#0, (byte) LIGHT_GREEN#0, (byte) PINK#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_BLUE#0, (byte) DARK_GREY#0, (byte) PURPLE#0, (byte) RED#0, (byte) ORANGE#0, (byte) CYAN#0, (byte) LIGHT_GREEN#0, (byte) PINK#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_BLUE#0, (byte) DARK_GREY#0, (byte) PURPLE#0, (byte) RED#0, (byte) ORANGE#0, (byte) CYAN#0, (byte) LIGHT_GREEN#0, (byte) PINK#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_BLUE#0, (byte) DARK_GREY#0, (byte) PURPLE#0, (byte) RED#0, (byte) ORANGE#0 } - (byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 ? { fill( PLAYFIELD_LINES#0, 0) } - (byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 ? { fill( PLAYFIELD_LINES#0, 0) } + (byte[]) PIECES_COLORS_1#0 ← { (byte) BLUE#0, (byte) GREEN#0, (byte) PURPLE#0, (byte) BLUE#0, (byte) RED#0, (byte) LIGHT_GREEN#0, (byte) RED#0, (byte) BLUE#0, (byte) LIGHT_BLUE#0, (byte) RED#0, (byte) BLUE#0, (byte) GREEN#0, (byte) PURPLE#0, (byte) BLUE#0, (byte) RED#0, (byte) LIGHT_GREEN#0, (byte) RED#0, (byte) BLUE#0, (byte) LIGHT_BLUE#0, (byte) RED#0, (byte) BLUE#0, (byte) GREEN#0, (byte) PURPLE#0, (byte) BLUE#0, (byte) RED#0, (byte) LIGHT_GREEN#0, (byte) RED#0, (byte) BLUE#0, (byte) LIGHT_BLUE#0, (byte) RED#0 } + (byte[]) PIECES_COLORS_2#0 ← { (byte) CYAN#0, (byte) LIGHT_GREEN#0, (byte) PINK#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_BLUE#0, (byte) DARK_GREY#0, (byte) PURPLE#0, (byte) RED#0, (byte) ORANGE#0, (byte) CYAN#0, (byte) LIGHT_GREEN#0, (byte) PINK#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_BLUE#0, (byte) DARK_GREY#0, (byte) PURPLE#0, (byte) RED#0, (byte) ORANGE#0, (byte) CYAN#0, (byte) LIGHT_GREEN#0, (byte) PINK#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_GREEN#0, (byte) LIGHT_BLUE#0, (byte) DARK_GREY#0, (byte) PURPLE#0, (byte) RED#0, (byte) ORANGE#0 } + (byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 ← { fill( PLAYFIELD_LINES#0, 0) } + (byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 ← { fill( PLAYFIELD_LINES#0, 0) } to:@23 render_init: scope:[render_init] from main::@25 - (byte*) render_init::vicSelectGfxBank1_gfx#0 ? (byte*) PLAYFIELD_CHARSET#0 + (byte*) render_init::vicSelectGfxBank1_gfx#0 ← (byte*) PLAYFIELD_CHARSET#0 to:render_init::vicSelectGfxBank1 render_init::vicSelectGfxBank1: scope:[render_init] from render_init - (byte*) render_init::vicSelectGfxBank1_gfx#1 ? phi( render_init/(byte*) render_init::vicSelectGfxBank1_gfx#0 ) - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*) render_init::vicSelectGfxBank1_toDd001_gfx#0 ? (byte*) render_init::vicSelectGfxBank1_gfx#1 + (byte*) render_init::vicSelectGfxBank1_gfx#1 ← phi( render_init/(byte*) render_init::vicSelectGfxBank1_gfx#0 ) + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte*) render_init::vicSelectGfxBank1_toDd001_gfx#0 ← (byte*) render_init::vicSelectGfxBank1_gfx#1 to:render_init::vicSelectGfxBank1_toDd001 render_init::vicSelectGfxBank1_toDd001: scope:[render_init] from render_init::vicSelectGfxBank1 - (byte*) render_init::vicSelectGfxBank1_toDd001_gfx#1 ? phi( render_init::vicSelectGfxBank1/(byte*) render_init::vicSelectGfxBank1_toDd001_gfx#0 ) - (word) render_init::vicSelectGfxBank1_toDd001_$0#0 ? ((word)) (byte*) render_init::vicSelectGfxBank1_toDd001_gfx#1 - (byte) render_init::vicSelectGfxBank1_toDd001_$1#0 ? > (word) render_init::vicSelectGfxBank1_toDd001_$0#0 - (byte) render_init::vicSelectGfxBank1_toDd001_$2#0 ? (byte) render_init::vicSelectGfxBank1_toDd001_$1#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte/word/dword) render_init::vicSelectGfxBank1_toDd001_$3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte) render_init::vicSelectGfxBank1_toDd001_$2#0 - (byte) render_init::vicSelectGfxBank1_toDd001_return#0 ? (byte/word/dword) render_init::vicSelectGfxBank1_toDd001_$3#0 + (byte*) render_init::vicSelectGfxBank1_toDd001_gfx#1 ← phi( render_init::vicSelectGfxBank1/(byte*) render_init::vicSelectGfxBank1_toDd001_gfx#0 ) + (word) render_init::vicSelectGfxBank1_toDd001_$0#0 ← ((word)) (byte*) render_init::vicSelectGfxBank1_toDd001_gfx#1 + (byte) render_init::vicSelectGfxBank1_toDd001_$1#0 ← > (word) render_init::vicSelectGfxBank1_toDd001_$0#0 + (byte) render_init::vicSelectGfxBank1_toDd001_$2#0 ← (byte) render_init::vicSelectGfxBank1_toDd001_$1#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte/word/dword) render_init::vicSelectGfxBank1_toDd001_$3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte) render_init::vicSelectGfxBank1_toDd001_$2#0 + (byte) render_init::vicSelectGfxBank1_toDd001_return#0 ← (byte/word/dword) render_init::vicSelectGfxBank1_toDd001_$3#0 to:render_init::vicSelectGfxBank1_toDd001_@return render_init::vicSelectGfxBank1_toDd001_@return: scope:[render_init] from render_init::vicSelectGfxBank1_toDd001 - (byte) render_init::vicSelectGfxBank1_toDd001_return#2 ? phi( render_init::vicSelectGfxBank1_toDd001/(byte) render_init::vicSelectGfxBank1_toDd001_return#0 ) - (byte) render_init::vicSelectGfxBank1_toDd001_return#1 ? (byte) render_init::vicSelectGfxBank1_toDd001_return#2 + (byte) render_init::vicSelectGfxBank1_toDd001_return#2 ← phi( render_init::vicSelectGfxBank1_toDd001/(byte) render_init::vicSelectGfxBank1_toDd001_return#0 ) + (byte) render_init::vicSelectGfxBank1_toDd001_return#1 ← (byte) render_init::vicSelectGfxBank1_toDd001_return#2 to:render_init::vicSelectGfxBank1_@1 render_init::vicSelectGfxBank1_@1: scope:[render_init] from render_init::vicSelectGfxBank1_toDd001_@return - (byte) render_init::vicSelectGfxBank1_toDd001_return#3 ? phi( render_init::vicSelectGfxBank1_toDd001_@return/(byte) render_init::vicSelectGfxBank1_toDd001_return#1 ) - (byte) render_init::vicSelectGfxBank1_$0#0 ? (byte) render_init::vicSelectGfxBank1_toDd001_return#3 - *((byte*) CIA2_PORT_A#0) ? (byte) render_init::vicSelectGfxBank1_$0#0 + (byte) render_init::vicSelectGfxBank1_toDd001_return#3 ← phi( render_init::vicSelectGfxBank1_toDd001_@return/(byte) render_init::vicSelectGfxBank1_toDd001_return#1 ) + (byte) render_init::vicSelectGfxBank1_$0#0 ← (byte) render_init::vicSelectGfxBank1_toDd001_return#3 + *((byte*) CIA2_PORT_A#0) ← (byte) render_init::vicSelectGfxBank1_$0#0 to:render_init::@3 render_init::@3: scope:[render_init] from render_init::vicSelectGfxBank1_@1 - (byte~) render_init::$1 ? (byte) VIC_ECM#0 | (byte) VIC_DEN#0 - (byte~) render_init::$2 ? (byte~) render_init::$1 | (byte) VIC_RSEL#0 - (byte/word/dword~) render_init::$3 ? (byte~) render_init::$2 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) D011#0) ? (byte/word/dword~) render_init::$3 - *((byte*) BORDERCOL#0) ? (byte) BLACK#0 - *((byte*) BGCOL1#0) ? (byte) BLACK#0 - *((byte*) BGCOL2#0) ? *((byte[]) PIECES_COLORS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) - *((byte*) BGCOL3#0) ? *((byte[]) PIECES_COLORS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) - *((byte*) BGCOL4#0) ? (byte) GREY#0 - (byte*) render_screen_original::screen#0 ? (byte*) PLAYFIELD_SCREEN_1#0 + (byte~) render_init::$1 ← (byte) VIC_ECM#0 | (byte) VIC_DEN#0 + (byte~) render_init::$2 ← (byte~) render_init::$1 | (byte) VIC_RSEL#0 + (byte/word/dword~) render_init::$3 ← (byte~) render_init::$2 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) D011#0) ← (byte/word/dword~) render_init::$3 + *((byte*) BORDERCOL#0) ← (byte) BLACK#0 + *((byte*) BGCOL1#0) ← (byte) BLACK#0 + *((byte*) BGCOL2#0) ← *((byte[]) PIECES_COLORS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) + *((byte*) BGCOL3#0) ← *((byte[]) PIECES_COLORS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) + *((byte*) BGCOL4#0) ← (byte) GREY#0 + (byte*) render_screen_original::screen#0 ← (byte*) PLAYFIELD_SCREEN_1#0 call render_screen_original to:render_init::@4 render_init::@4: scope:[render_init] from render_init::@3 - (byte*) render_screen_original::screen#1 ? (byte*) PLAYFIELD_SCREEN_2#0 + (byte*) render_screen_original::screen#1 ← (byte*) PLAYFIELD_SCREEN_2#0 call render_screen_original to:render_init::@5 render_init::@5: scope:[render_init] from render_init::@4 - (byte/signed byte/word/signed word/dword/signed dword~) render_init::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 2 * (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*~) render_init::$7 ? (byte*) PLAYFIELD_SCREEN_1#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_init::$6 - (byte*~) render_init::$8 ? (byte*~) render_init::$7 + (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte*) render_init::li_1#0 ? (byte*~) render_init::$8 - (byte/signed byte/word/signed word/dword/signed dword~) render_init::$9 ? (byte/signed byte/word/signed word/dword/signed dword) 2 * (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*~) render_init::$10 ? (byte*) PLAYFIELD_SCREEN_2#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_init::$9 - (byte*~) render_init::$11 ? (byte*~) render_init::$10 + (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte*) render_init::li_2#0 ? (byte*~) render_init::$11 - (byte/signed word/word/dword/signed dword~) render_init::$12 ? (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) render_init::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte/signed byte/word/signed word/dword/signed dword~) render_init::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 2 * (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*~) render_init::$7 ← (byte*) PLAYFIELD_SCREEN_1#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_init::$6 + (byte*~) render_init::$8 ← (byte*~) render_init::$7 + (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte*) render_init::li_1#0 ← (byte*~) render_init::$8 + (byte/signed byte/word/signed word/dword/signed dword~) render_init::$9 ← (byte/signed byte/word/signed word/dword/signed dword) 2 * (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*~) render_init::$10 ← (byte*) PLAYFIELD_SCREEN_2#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_init::$9 + (byte*~) render_init::$11 ← (byte*~) render_init::$10 + (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte*) render_init::li_2#0 ← (byte*~) render_init::$11 + (byte/signed word/word/dword/signed dword~) render_init::$12 ← (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_init::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_init::@1 render_init::@1: scope:[render_init] from render_init::@1 render_init::@5 - (byte*) render_init::li_2#2 ? phi( render_init::@1/(byte*) render_init::li_2#1 render_init::@5/(byte*) render_init::li_2#0 ) - (byte*) render_init::li_1#2 ? phi( render_init::@1/(byte*) render_init::li_1#1 render_init::@5/(byte*) render_init::li_1#0 ) - (byte) render_init::i#2 ? phi( render_init::@1/(byte) render_init::i#1 render_init::@5/(byte) render_init::i#0 ) - (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 - (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 - (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte) render_init::i#1 ? (byte) render_init::i#2 + rangenext(0,render_init::$12) - (bool~) render_init::$15 ? (byte) render_init::i#1 != rangelast(0,render_init::$12) + (byte*) render_init::li_2#2 ← phi( render_init::@1/(byte*) render_init::li_2#1 render_init::@5/(byte*) render_init::li_2#0 ) + (byte*) render_init::li_1#2 ← phi( render_init::@1/(byte*) render_init::li_1#1 render_init::@5/(byte*) render_init::li_1#0 ) + (byte) render_init::i#2 ← phi( render_init::@1/(byte) render_init::i#1 render_init::@5/(byte) render_init::i#0 ) + (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 + (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 + (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) render_init::i#1 ← (byte) render_init::i#2 + rangenext(0,render_init::$12) + (bool~) render_init::$15 ← (byte) render_init::i#1 != rangelast(0,render_init::$12) if((bool~) render_init::$15) goto render_init::@1 to:render_init::@2 render_init::@2: scope:[render_init] from render_init::@1 - (byte) render_screen_show#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) render_screen_render#1 ? (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) render_screen_show#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_screen_render#1 ← (byte/signed byte/word/signed word/dword/signed dword) $40 to:render_init::@return render_init::@return: scope:[render_init] from render_init::@2 - (byte) render_screen_render#9 ? phi( render_init::@2/(byte) render_screen_render#1 ) - (byte) render_screen_show#9 ? phi( render_init::@2/(byte) render_screen_show#1 ) - (byte) render_screen_show#2 ? (byte) render_screen_show#9 - (byte) render_screen_render#2 ? (byte) render_screen_render#9 + (byte) render_screen_render#9 ← phi( render_init::@2/(byte) render_screen_render#1 ) + (byte) render_screen_show#9 ← phi( render_init::@2/(byte) render_screen_show#1 ) + (byte) render_screen_show#2 ← (byte) render_screen_show#9 + (byte) render_screen_render#2 ← (byte) render_screen_render#9 return to:@return render_show: scope:[render_show] from main::@6 - (byte) level#86 ? phi( main::@6/(byte) level#93 ) - (byte) render_screen_show#10 ? phi( main::@6/(byte) render_screen_show#18 ) - (byte) render_show::d018val#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) render_show::$0 ? (byte) render_screen_show#10 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level#86 ← phi( main::@6/(byte) level#93 ) + (byte) render_screen_show#10 ← phi( main::@6/(byte) render_screen_show#18 ) + (byte) render_show::d018val#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) render_show::$0 ← (byte) render_screen_show#10 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) render_show::$0) goto render_show::@1 to:render_show::@3 render_show::@1: scope:[render_show] from render_show - (byte) render_screen_show#41 ? phi( render_show/(byte) render_screen_show#10 ) - (byte) level#72 ? phi( render_show/(byte) level#86 ) - (byte*) render_show::toD0181_screen#0 ? (byte*) PLAYFIELD_SCREEN_1#0 - (byte*) render_show::toD0181_gfx#0 ? (byte*) PLAYFIELD_CHARSET#0 + (byte) render_screen_show#41 ← phi( render_show/(byte) render_screen_show#10 ) + (byte) level#72 ← phi( render_show/(byte) level#86 ) + (byte*) render_show::toD0181_screen#0 ← (byte*) PLAYFIELD_SCREEN_1#0 + (byte*) render_show::toD0181_gfx#0 ← (byte*) PLAYFIELD_CHARSET#0 to:render_show::toD0181 render_show::toD0181: scope:[render_show] from render_show::@1 - (byte) render_screen_show#33 ? phi( render_show::@1/(byte) render_screen_show#41 ) - (byte) level#58 ? phi( render_show::@1/(byte) level#72 ) - (byte*) render_show::toD0181_gfx#1 ? phi( render_show::@1/(byte*) render_show::toD0181_gfx#0 ) - (byte*) render_show::toD0181_screen#1 ? phi( render_show::@1/(byte*) render_show::toD0181_screen#0 ) - (word) render_show::toD0181_$0#0 ? ((word)) (byte*) render_show::toD0181_screen#1 - (word) render_show::toD0181_$1#0 ? (word) render_show::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff - (word) render_show::toD0181_$2#0 ? (word) render_show::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) render_show::toD0181_$3#0 ? > (word) render_show::toD0181_$2#0 - (word) render_show::toD0181_$4#0 ? ((word)) (byte*) render_show::toD0181_gfx#1 - (byte) render_show::toD0181_$5#0 ? > (word) render_show::toD0181_$4#0 - (byte) render_show::toD0181_$6#0 ? (byte) render_show::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) render_show::toD0181_$7#0 ? (byte) render_show::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) render_show::toD0181_$8#0 ? (byte) render_show::toD0181_$3#0 | (byte) render_show::toD0181_$7#0 - (byte) render_show::toD0181_return#0 ? (byte) render_show::toD0181_$8#0 + (byte) render_screen_show#33 ← phi( render_show::@1/(byte) render_screen_show#41 ) + (byte) level#58 ← phi( render_show::@1/(byte) level#72 ) + (byte*) render_show::toD0181_gfx#1 ← phi( render_show::@1/(byte*) render_show::toD0181_gfx#0 ) + (byte*) render_show::toD0181_screen#1 ← phi( render_show::@1/(byte*) render_show::toD0181_screen#0 ) + (word) render_show::toD0181_$0#0 ← ((word)) (byte*) render_show::toD0181_screen#1 + (word) render_show::toD0181_$1#0 ← (word) render_show::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff + (word) render_show::toD0181_$2#0 ← (word) render_show::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_show::toD0181_$3#0 ← > (word) render_show::toD0181_$2#0 + (word) render_show::toD0181_$4#0 ← ((word)) (byte*) render_show::toD0181_gfx#1 + (byte) render_show::toD0181_$5#0 ← > (word) render_show::toD0181_$4#0 + (byte) render_show::toD0181_$6#0 ← (byte) render_show::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_show::toD0181_$7#0 ← (byte) render_show::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) render_show::toD0181_$8#0 ← (byte) render_show::toD0181_$3#0 | (byte) render_show::toD0181_$7#0 + (byte) render_show::toD0181_return#0 ← (byte) render_show::toD0181_$8#0 to:render_show::toD0181_@return render_show::toD0181_@return: scope:[render_show] from render_show::toD0181 - (byte) render_screen_show#25 ? phi( render_show::toD0181/(byte) render_screen_show#33 ) - (byte) level#42 ? phi( render_show::toD0181/(byte) level#58 ) - (byte) render_show::toD0181_return#2 ? phi( render_show::toD0181/(byte) render_show::toD0181_return#0 ) - (byte) render_show::toD0181_return#1 ? (byte) render_show::toD0181_return#2 + (byte) render_screen_show#25 ← phi( render_show::toD0181/(byte) render_screen_show#33 ) + (byte) level#42 ← phi( render_show::toD0181/(byte) level#58 ) + (byte) render_show::toD0181_return#2 ← phi( render_show::toD0181/(byte) render_show::toD0181_return#0 ) + (byte) render_show::toD0181_return#1 ← (byte) render_show::toD0181_return#2 to:render_show::@5 render_show::@5: scope:[render_show] from render_show::toD0181_@return - (byte) render_screen_show#19 ? phi( render_show::toD0181_@return/(byte) render_screen_show#25 ) - (byte) level#26 ? phi( render_show::toD0181_@return/(byte) level#42 ) - (byte) render_show::toD0181_return#3 ? phi( render_show::toD0181_@return/(byte) render_show::toD0181_return#1 ) - (byte~) render_show::$2 ? (byte) render_show::toD0181_return#3 - (byte) render_show::d018val#1 ? (byte~) render_show::$2 + (byte) render_screen_show#19 ← phi( render_show::toD0181_@return/(byte) render_screen_show#25 ) + (byte) level#26 ← phi( render_show::toD0181_@return/(byte) level#42 ) + (byte) render_show::toD0181_return#3 ← phi( render_show::toD0181_@return/(byte) render_show::toD0181_return#1 ) + (byte~) render_show::$2 ← (byte) render_show::toD0181_return#3 + (byte) render_show::d018val#1 ← (byte~) render_show::$2 to:render_show::@2 render_show::@3: scope:[render_show] from render_show - (byte) render_screen_show#42 ? phi( render_show/(byte) render_screen_show#10 ) - (byte) level#73 ? phi( render_show/(byte) level#86 ) - (byte*) render_show::toD0182_screen#0 ? (byte*) PLAYFIELD_SCREEN_2#0 - (byte*) render_show::toD0182_gfx#0 ? (byte*) PLAYFIELD_CHARSET#0 + (byte) render_screen_show#42 ← phi( render_show/(byte) render_screen_show#10 ) + (byte) level#73 ← phi( render_show/(byte) level#86 ) + (byte*) render_show::toD0182_screen#0 ← (byte*) PLAYFIELD_SCREEN_2#0 + (byte*) render_show::toD0182_gfx#0 ← (byte*) PLAYFIELD_CHARSET#0 to:render_show::toD0182 render_show::toD0182: scope:[render_show] from render_show::@3 - (byte) render_screen_show#34 ? phi( render_show::@3/(byte) render_screen_show#42 ) - (byte) level#59 ? phi( render_show::@3/(byte) level#73 ) - (byte*) render_show::toD0182_gfx#1 ? phi( render_show::@3/(byte*) render_show::toD0182_gfx#0 ) - (byte*) render_show::toD0182_screen#1 ? phi( render_show::@3/(byte*) render_show::toD0182_screen#0 ) - (word) render_show::toD0182_$0#0 ? ((word)) (byte*) render_show::toD0182_screen#1 - (word) render_show::toD0182_$1#0 ? (word) render_show::toD0182_$0#0 & (word/signed word/dword/signed dword) $3fff - (word) render_show::toD0182_$2#0 ? (word) render_show::toD0182_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) render_show::toD0182_$3#0 ? > (word) render_show::toD0182_$2#0 - (word) render_show::toD0182_$4#0 ? ((word)) (byte*) render_show::toD0182_gfx#1 - (byte) render_show::toD0182_$5#0 ? > (word) render_show::toD0182_$4#0 - (byte) render_show::toD0182_$6#0 ? (byte) render_show::toD0182_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) render_show::toD0182_$7#0 ? (byte) render_show::toD0182_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) render_show::toD0182_$8#0 ? (byte) render_show::toD0182_$3#0 | (byte) render_show::toD0182_$7#0 - (byte) render_show::toD0182_return#0 ? (byte) render_show::toD0182_$8#0 + (byte) render_screen_show#34 ← phi( render_show::@3/(byte) render_screen_show#42 ) + (byte) level#59 ← phi( render_show::@3/(byte) level#73 ) + (byte*) render_show::toD0182_gfx#1 ← phi( render_show::@3/(byte*) render_show::toD0182_gfx#0 ) + (byte*) render_show::toD0182_screen#1 ← phi( render_show::@3/(byte*) render_show::toD0182_screen#0 ) + (word) render_show::toD0182_$0#0 ← ((word)) (byte*) render_show::toD0182_screen#1 + (word) render_show::toD0182_$1#0 ← (word) render_show::toD0182_$0#0 & (word/signed word/dword/signed dword) $3fff + (word) render_show::toD0182_$2#0 ← (word) render_show::toD0182_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_show::toD0182_$3#0 ← > (word) render_show::toD0182_$2#0 + (word) render_show::toD0182_$4#0 ← ((word)) (byte*) render_show::toD0182_gfx#1 + (byte) render_show::toD0182_$5#0 ← > (word) render_show::toD0182_$4#0 + (byte) render_show::toD0182_$6#0 ← (byte) render_show::toD0182_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_show::toD0182_$7#0 ← (byte) render_show::toD0182_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) render_show::toD0182_$8#0 ← (byte) render_show::toD0182_$3#0 | (byte) render_show::toD0182_$7#0 + (byte) render_show::toD0182_return#0 ← (byte) render_show::toD0182_$8#0 to:render_show::toD0182_@return render_show::toD0182_@return: scope:[render_show] from render_show::toD0182 - (byte) render_screen_show#26 ? phi( render_show::toD0182/(byte) render_screen_show#34 ) - (byte) level#43 ? phi( render_show::toD0182/(byte) level#59 ) - (byte) render_show::toD0182_return#2 ? phi( render_show::toD0182/(byte) render_show::toD0182_return#0 ) - (byte) render_show::toD0182_return#1 ? (byte) render_show::toD0182_return#2 + (byte) render_screen_show#26 ← phi( render_show::toD0182/(byte) render_screen_show#34 ) + (byte) level#43 ← phi( render_show::toD0182/(byte) level#59 ) + (byte) render_show::toD0182_return#2 ← phi( render_show::toD0182/(byte) render_show::toD0182_return#0 ) + (byte) render_show::toD0182_return#1 ← (byte) render_show::toD0182_return#2 to:render_show::@6 render_show::@6: scope:[render_show] from render_show::toD0182_@return - (byte) render_screen_show#20 ? phi( render_show::toD0182_@return/(byte) render_screen_show#26 ) - (byte) level#27 ? phi( render_show::toD0182_@return/(byte) level#43 ) - (byte) render_show::toD0182_return#3 ? phi( render_show::toD0182_@return/(byte) render_show::toD0182_return#1 ) - (byte~) render_show::$1 ? (byte) render_show::toD0182_return#3 - (byte) render_show::d018val#2 ? (byte~) render_show::$1 + (byte) render_screen_show#20 ← phi( render_show::toD0182_@return/(byte) render_screen_show#26 ) + (byte) level#27 ← phi( render_show::toD0182_@return/(byte) level#43 ) + (byte) render_show::toD0182_return#3 ← phi( render_show::toD0182_@return/(byte) render_show::toD0182_return#1 ) + (byte~) render_show::$1 ← (byte) render_show::toD0182_return#3 + (byte) render_show::d018val#2 ← (byte~) render_show::$1 to:render_show::@2 render_show::@2: scope:[render_show] from render_show::@5 render_show::@6 - (byte) render_screen_show#11 ? phi( render_show::@5/(byte) render_screen_show#19 render_show::@6/(byte) render_screen_show#20 ) - (byte) level#12 ? phi( render_show::@5/(byte) level#26 render_show::@6/(byte) level#27 ) - (byte) render_show::d018val#3 ? phi( render_show::@5/(byte) render_show::d018val#1 render_show::@6/(byte) render_show::d018val#2 ) - *((byte*) D018#0) ? (byte) render_show::d018val#3 - *((byte*) BGCOL2#0) ? *((byte[]) PIECES_COLORS_1#0 + (byte) level#12) - *((byte*) BGCOL3#0) ? *((byte[]) PIECES_COLORS_2#0 + (byte) level#12) - (byte) render_screen_showing#1 ? (byte) render_screen_show#11 + (byte) render_screen_show#11 ← phi( render_show::@5/(byte) render_screen_show#19 render_show::@6/(byte) render_screen_show#20 ) + (byte) level#12 ← phi( render_show::@5/(byte) level#26 render_show::@6/(byte) level#27 ) + (byte) render_show::d018val#3 ← phi( render_show::@5/(byte) render_show::d018val#1 render_show::@6/(byte) render_show::d018val#2 ) + *((byte*) D018#0) ← (byte) render_show::d018val#3 + *((byte*) BGCOL2#0) ← *((byte[]) PIECES_COLORS_1#0 + (byte) level#12) + *((byte*) BGCOL3#0) ← *((byte[]) PIECES_COLORS_2#0 + (byte) level#12) + (byte) render_screen_showing#1 ← (byte) render_screen_show#11 to:render_show::@return render_show::@return: scope:[render_show] from render_show::@2 - (byte) render_screen_showing#6 ? phi( render_show::@2/(byte) render_screen_showing#1 ) - (byte) render_screen_showing#2 ? (byte) render_screen_showing#6 + (byte) render_screen_showing#6 ← phi( render_show::@2/(byte) render_screen_showing#1 ) + (byte) render_screen_showing#2 ← (byte) render_screen_showing#6 return to:@return render_screen_swap: scope:[render_screen_swap] from main::@42 - (byte) render_screen_show#12 ? phi( main::@42/(byte) render_screen_show#21 ) - (byte) render_screen_render#10 ? phi( main::@42/(byte) render_screen_render#20 ) - (byte) render_screen_render#3 ? (byte) render_screen_render#10 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) render_screen_show#3 ? (byte) render_screen_show#12 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) render_screen_show#12 ← phi( main::@42/(byte) render_screen_show#21 ) + (byte) render_screen_render#10 ← phi( main::@42/(byte) render_screen_render#20 ) + (byte) render_screen_render#3 ← (byte) render_screen_render#10 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) render_screen_show#3 ← (byte) render_screen_show#12 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 to:render_screen_swap::@return render_screen_swap::@return: scope:[render_screen_swap] from render_screen_swap - (byte) render_screen_show#13 ? phi( render_screen_swap/(byte) render_screen_show#3 ) - (byte) render_screen_render#11 ? phi( render_screen_swap/(byte) render_screen_render#3 ) - (byte) render_screen_render#4 ? (byte) render_screen_render#11 - (byte) render_screen_show#4 ? (byte) render_screen_show#13 + (byte) render_screen_show#13 ← phi( render_screen_swap/(byte) render_screen_show#3 ) + (byte) render_screen_render#11 ← phi( render_screen_swap/(byte) render_screen_render#3 ) + (byte) render_screen_render#4 ← (byte) render_screen_render#11 + (byte) render_screen_show#4 ← (byte) render_screen_show#13 return to:@return render_score: scope:[render_score] from main::@41 - (byte) level_bcd#95 ? phi( main::@41/(byte) level_bcd#78 ) - (word) lines_bcd#69 ? phi( main::@41/(word) lines_bcd#68 ) - (dword) score_bcd#35 ? phi( main::@41/(dword) score_bcd#47 ) - (byte) render_screen_render#12 ? phi( main::@41/(byte) render_screen_render#21 ) - (byte*) render_score::screen#0 ? (byte*) 0 - (bool~) render_score::$0 ? (byte) render_screen_render#12 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#95 ← phi( main::@41/(byte) level_bcd#78 ) + (word) lines_bcd#69 ← phi( main::@41/(word) lines_bcd#68 ) + (dword) score_bcd#35 ← phi( main::@41/(dword) score_bcd#47 ) + (byte) render_screen_render#12 ← phi( main::@41/(byte) render_screen_render#21 ) + (byte*) render_score::screen#0 ← (byte*) 0 + (bool~) render_score::$0 ← (byte) render_screen_render#12 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) render_score::$0) goto render_score::@1 to:render_score::@3 render_score::@1: scope:[render_score] from render_score - (byte) level_bcd#87 ? phi( render_score/(byte) level_bcd#95 ) - (word) lines_bcd#58 ? phi( render_score/(word) lines_bcd#69 ) - (dword) score_bcd#20 ? phi( render_score/(dword) score_bcd#35 ) - (byte*) render_score::screen#1 ? (byte*) PLAYFIELD_SCREEN_1#0 + (byte) level_bcd#87 ← phi( render_score/(byte) level_bcd#95 ) + (word) lines_bcd#58 ← phi( render_score/(word) lines_bcd#69 ) + (dword) score_bcd#20 ← phi( render_score/(dword) score_bcd#35 ) + (byte*) render_score::screen#1 ← (byte*) PLAYFIELD_SCREEN_1#0 to:render_score::@2 render_score::@3: scope:[render_score] from render_score - (byte) level_bcd#88 ? phi( render_score/(byte) level_bcd#95 ) - (word) lines_bcd#59 ? phi( render_score/(word) lines_bcd#69 ) - (dword) score_bcd#21 ? phi( render_score/(dword) score_bcd#35 ) - (byte*) render_score::screen#2 ? (byte*) PLAYFIELD_SCREEN_2#0 + (byte) level_bcd#88 ← phi( render_score/(byte) level_bcd#95 ) + (word) lines_bcd#59 ← phi( render_score/(word) lines_bcd#69 ) + (dword) score_bcd#21 ← phi( render_score/(dword) score_bcd#35 ) + (byte*) render_score::screen#2 ← (byte*) PLAYFIELD_SCREEN_2#0 to:render_score::@2 render_score::@2: scope:[render_score] from render_score::@1 render_score::@3 - (byte) level_bcd#79 ? phi( render_score::@1/(byte) level_bcd#87 render_score::@3/(byte) level_bcd#88 ) - (word) lines_bcd#47 ? phi( render_score::@1/(word) lines_bcd#58 render_score::@3/(word) lines_bcd#59 ) - (byte*) render_score::screen#3 ? phi( render_score::@1/(byte*) render_score::screen#1 render_score::@3/(byte*) render_score::screen#2 ) - (dword) score_bcd#10 ? phi( render_score::@1/(dword) score_bcd#20 render_score::@3/(dword) score_bcd#21 ) - (dword*~) render_score::$1 ? & (dword) score_bcd#10 - (byte*~) render_score::$2 ? ((byte*)) (dword*~) render_score::$1 - (byte*) render_score::score_bytes#0 ? (byte*~) render_score::$2 - (byte/word/signed word/dword/signed dword~) render_score::$3 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte/signed word/word/dword/signed dword~) render_score::$4 ? (byte/word/signed word/dword/signed dword~) render_score::$3 + (byte/signed byte/word/signed word/dword/signed dword) $1c - (word) render_score::score_offset#0 ? (byte/signed word/word/dword/signed dword~) render_score::$4 - (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 - (word) render_bcd::offset#0 ? (word) render_score::score_offset#0 - (byte) render_bcd::bcd#0 ? *((byte*) render_score::score_bytes#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) - (byte) render_bcd::only_low#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#79 ← phi( render_score::@1/(byte) level_bcd#87 render_score::@3/(byte) level_bcd#88 ) + (word) lines_bcd#47 ← phi( render_score::@1/(word) lines_bcd#58 render_score::@3/(word) lines_bcd#59 ) + (byte*) render_score::screen#3 ← phi( render_score::@1/(byte*) render_score::screen#1 render_score::@3/(byte*) render_score::screen#2 ) + (dword) score_bcd#10 ← phi( render_score::@1/(dword) score_bcd#20 render_score::@3/(dword) score_bcd#21 ) + (dword*~) render_score::$1 ← & (dword) score_bcd#10 + (byte*~) render_score::$2 ← ((byte*)) (dword*~) render_score::$1 + (byte*) render_score::score_bytes#0 ← (byte*~) render_score::$2 + (byte/word/signed word/dword/signed dword~) render_score::$3 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte/signed word/word/dword/signed dword~) render_score::$4 ← (byte/word/signed word/dword/signed dword~) render_score::$3 + (byte/signed byte/word/signed word/dword/signed dword) $1c + (word) render_score::score_offset#0 ← (byte/signed word/word/dword/signed dword~) render_score::$4 + (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 + (word) render_bcd::offset#0 ← (word) render_score::score_offset#0 + (byte) render_bcd::bcd#0 ← *((byte*) render_score::score_bytes#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) + (byte) render_bcd::only_low#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call render_bcd to:render_score::@5 render_score::@5: scope:[render_score] from render_score::@2 - (byte) level_bcd#69 ? phi( render_score::@2/(byte) level_bcd#79 ) - (word) lines_bcd#35 ? phi( render_score::@2/(word) lines_bcd#47 ) - (byte*) render_score::score_bytes#1 ? phi( render_score::@2/(byte*) render_score::score_bytes#0 ) - (byte*) render_score::screen#4 ? phi( render_score::@2/(byte*) render_score::screen#3 ) - (word) render_score::score_offset#1 ? phi( render_score::@2/(word) render_score::score_offset#0 ) - (word/signed dword/dword~) render_score::$6 ? (word) render_score::score_offset#1 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#4 - (word) render_bcd::offset#1 ? (word/signed dword/dword~) render_score::$6 - (byte) render_bcd::bcd#1 ? *((byte*) render_score::score_bytes#1 + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte) render_bcd::only_low#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#69 ← phi( render_score::@2/(byte) level_bcd#79 ) + (word) lines_bcd#35 ← phi( render_score::@2/(word) lines_bcd#47 ) + (byte*) render_score::score_bytes#1 ← phi( render_score::@2/(byte*) render_score::score_bytes#0 ) + (byte*) render_score::screen#4 ← phi( render_score::@2/(byte*) render_score::screen#3 ) + (word) render_score::score_offset#1 ← phi( render_score::@2/(word) render_score::score_offset#0 ) + (word/signed dword/dword~) render_score::$6 ← (word) render_score::score_offset#1 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#4 + (word) render_bcd::offset#1 ← (word/signed dword/dword~) render_score::$6 + (byte) render_bcd::bcd#1 ← *((byte*) render_score::score_bytes#1 + (byte/signed byte/word/signed word/dword/signed dword) 1) + (byte) render_bcd::only_low#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call render_bcd to:render_score::@6 render_score::@6: scope:[render_score] from render_score::@5 - (byte) level_bcd#57 ? phi( render_score::@5/(byte) level_bcd#69 ) - (word) lines_bcd#21 ? phi( render_score::@5/(word) lines_bcd#35 ) - (byte*) render_score::score_bytes#2 ? phi( render_score::@5/(byte*) render_score::score_bytes#1 ) - (byte*) render_score::screen#5 ? phi( render_score::@5/(byte*) render_score::screen#4 ) - (word) render_score::score_offset#2 ? phi( render_score::@5/(word) render_score::score_offset#1 ) - (word/signed dword/dword~) render_score::$8 ? (word) render_score::score_offset#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#5 - (word) render_bcd::offset#2 ? (word/signed dword/dword~) render_score::$8 - (byte) render_bcd::bcd#2 ? *((byte*) render_score::score_bytes#2 + (byte/signed byte/word/signed word/dword/signed dword) 0) - (byte) render_bcd::only_low#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#57 ← phi( render_score::@5/(byte) level_bcd#69 ) + (word) lines_bcd#21 ← phi( render_score::@5/(word) lines_bcd#35 ) + (byte*) render_score::score_bytes#2 ← phi( render_score::@5/(byte*) render_score::score_bytes#1 ) + (byte*) render_score::screen#5 ← phi( render_score::@5/(byte*) render_score::screen#4 ) + (word) render_score::score_offset#2 ← phi( render_score::@5/(word) render_score::score_offset#1 ) + (word/signed dword/dword~) render_score::$8 ← (word) render_score::score_offset#2 + (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#5 + (word) render_bcd::offset#2 ← (word/signed dword/dword~) render_score::$8 + (byte) render_bcd::bcd#2 ← *((byte*) render_score::score_bytes#2 + (byte/signed byte/word/signed word/dword/signed dword) 0) + (byte) render_bcd::only_low#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call render_bcd to:render_score::@7 render_score::@7: scope:[render_score] from render_score::@6 - (byte) level_bcd#42 ? phi( render_score::@6/(byte) level_bcd#57 ) - (byte*) render_score::screen#6 ? phi( render_score::@6/(byte*) render_score::screen#5 ) - (word) lines_bcd#10 ? phi( render_score::@6/(word) lines_bcd#21 ) - (byte/signed byte/word/signed word/dword/signed dword~) render_score::$10 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/signed word/word/dword/signed dword/signed byte~) render_score::$11 ? (byte/signed byte/word/signed word/dword/signed dword~) render_score::$10 + (byte/signed byte/word/signed word/dword/signed dword) $16 - (word) render_score::lines_offset#0 ? (byte/signed word/word/dword/signed dword/signed byte~) render_score::$11 - (byte~) render_score::$12 ? > (word) lines_bcd#10 - (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#6 - (word) render_bcd::offset#3 ? (word) render_score::lines_offset#0 - (byte) render_bcd::bcd#3 ? (byte~) render_score::$12 - (byte) render_bcd::only_low#3 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) level_bcd#42 ← phi( render_score::@6/(byte) level_bcd#57 ) + (byte*) render_score::screen#6 ← phi( render_score::@6/(byte*) render_score::screen#5 ) + (word) lines_bcd#10 ← phi( render_score::@6/(word) lines_bcd#21 ) + (byte/signed byte/word/signed word/dword/signed dword~) render_score::$10 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/signed word/word/dword/signed dword/signed byte~) render_score::$11 ← (byte/signed byte/word/signed word/dword/signed dword~) render_score::$10 + (byte/signed byte/word/signed word/dword/signed dword) $16 + (word) render_score::lines_offset#0 ← (byte/signed word/word/dword/signed dword/signed byte~) render_score::$11 + (byte~) render_score::$12 ← > (word) lines_bcd#10 + (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#6 + (word) render_bcd::offset#3 ← (word) render_score::lines_offset#0 + (byte) render_bcd::bcd#3 ← (byte~) render_score::$12 + (byte) render_bcd::only_low#3 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call render_bcd to:render_score::@8 render_score::@8: scope:[render_score] from render_score::@7 - (byte) level_bcd#26 ? phi( render_score::@7/(byte) level_bcd#42 ) - (byte*) render_score::screen#7 ? phi( render_score::@7/(byte*) render_score::screen#6 ) - (word) lines_bcd#11 ? phi( render_score::@7/(word) lines_bcd#10 ) - (word) render_score::lines_offset#1 ? phi( render_score::@7/(word) render_score::lines_offset#0 ) - (word/signed dword/dword~) render_score::$14 ? (word) render_score::lines_offset#1 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) render_score::$15 ? < (word) lines_bcd#11 - (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#7 - (word) render_bcd::offset#4 ? (word/signed dword/dword~) render_score::$14 - (byte) render_bcd::bcd#4 ? (byte~) render_score::$15 - (byte) render_bcd::only_low#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#26 ← phi( render_score::@7/(byte) level_bcd#42 ) + (byte*) render_score::screen#7 ← phi( render_score::@7/(byte*) render_score::screen#6 ) + (word) lines_bcd#11 ← phi( render_score::@7/(word) lines_bcd#10 ) + (word) render_score::lines_offset#1 ← phi( render_score::@7/(word) render_score::lines_offset#0 ) + (word/signed dword/dword~) render_score::$14 ← (word) render_score::lines_offset#1 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) render_score::$15 ← < (word) lines_bcd#11 + (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#7 + (word) render_bcd::offset#4 ← (word/signed dword/dword~) render_score::$14 + (byte) render_bcd::bcd#4 ← (byte~) render_score::$15 + (byte) render_bcd::only_low#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call render_bcd to:render_score::@9 render_score::@9: scope:[render_score] from render_score::@8 - (byte) level_bcd#13 ? phi( render_score::@8/(byte) level_bcd#26 ) - (byte*) render_score::screen#8 ? phi( render_score::@8/(byte*) render_score::screen#7 ) - (word/signed word/dword/signed dword~) render_score::$17 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) $13 - (word/signed dword/dword/signed word~) render_score::$18 ? (word/signed word/dword/signed dword~) render_score::$17 + (byte/signed byte/word/signed word/dword/signed dword) $1f - (word) render_score::level_offset#0 ? (word/signed dword/dword/signed word~) render_score::$18 - (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#8 - (word) render_bcd::offset#5 ? (word) render_score::level_offset#0 - (byte) render_bcd::bcd#5 ? (byte) level_bcd#13 - (byte) render_bcd::only_low#5 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#13 ← phi( render_score::@8/(byte) level_bcd#26 ) + (byte*) render_score::screen#8 ← phi( render_score::@8/(byte*) render_score::screen#7 ) + (word/signed word/dword/signed dword~) render_score::$17 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) $13 + (word/signed dword/dword/signed word~) render_score::$18 ← (word/signed word/dword/signed dword~) render_score::$17 + (byte/signed byte/word/signed word/dword/signed dword) $1f + (word) render_score::level_offset#0 ← (word/signed dword/dword/signed word~) render_score::$18 + (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#8 + (word) render_bcd::offset#5 ← (word) render_score::level_offset#0 + (byte) render_bcd::bcd#5 ← (byte) level_bcd#13 + (byte) render_bcd::only_low#5 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call render_bcd to:render_score::@10 render_score::@10: scope:[render_score] from render_score::@9 @@ -818,368 +818,368 @@ render_score::@return: scope:[render_score] from render_score::@10 return to:@return render_bcd: scope:[render_bcd] from render_score::@2 render_score::@5 render_score::@6 render_score::@7 render_score::@8 render_score::@9 - (byte) render_bcd::bcd#8 ? phi( render_score::@2/(byte) render_bcd::bcd#0 render_score::@5/(byte) render_bcd::bcd#1 render_score::@6/(byte) render_bcd::bcd#2 render_score::@7/(byte) render_bcd::bcd#3 render_score::@8/(byte) render_bcd::bcd#4 render_score::@9/(byte) render_bcd::bcd#5 ) - (byte) render_bcd::only_low#6 ? phi( render_score::@2/(byte) render_bcd::only_low#0 render_score::@5/(byte) render_bcd::only_low#1 render_score::@6/(byte) render_bcd::only_low#2 render_score::@7/(byte) render_bcd::only_low#3 render_score::@8/(byte) render_bcd::only_low#4 render_score::@9/(byte) render_bcd::only_low#5 ) - (word) render_bcd::offset#6 ? phi( render_score::@2/(word) render_bcd::offset#0 render_score::@5/(word) render_bcd::offset#1 render_score::@6/(word) render_bcd::offset#2 render_score::@7/(word) render_bcd::offset#3 render_score::@8/(word) render_bcd::offset#4 render_score::@9/(word) render_bcd::offset#5 ) - (byte*) render_bcd::screen#6 ? phi( render_score::@2/(byte*) render_bcd::screen#0 render_score::@5/(byte*) render_bcd::screen#1 render_score::@6/(byte*) render_bcd::screen#2 render_score::@7/(byte*) render_bcd::screen#3 render_score::@8/(byte*) render_bcd::screen#4 render_score::@9/(byte*) render_bcd::screen#5 ) - (byte) render_bcd::ZERO_CHAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte*~) render_bcd::$0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 - (byte*) render_bcd::screen_pos#0 ? (byte*~) render_bcd::$0 - (bool~) render_bcd::$1 ? (byte) render_bcd::only_low#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) render_bcd::$2 ? ! (bool~) render_bcd::$1 + (byte) render_bcd::bcd#8 ← phi( render_score::@2/(byte) render_bcd::bcd#0 render_score::@5/(byte) render_bcd::bcd#1 render_score::@6/(byte) render_bcd::bcd#2 render_score::@7/(byte) render_bcd::bcd#3 render_score::@8/(byte) render_bcd::bcd#4 render_score::@9/(byte) render_bcd::bcd#5 ) + (byte) render_bcd::only_low#6 ← phi( render_score::@2/(byte) render_bcd::only_low#0 render_score::@5/(byte) render_bcd::only_low#1 render_score::@6/(byte) render_bcd::only_low#2 render_score::@7/(byte) render_bcd::only_low#3 render_score::@8/(byte) render_bcd::only_low#4 render_score::@9/(byte) render_bcd::only_low#5 ) + (word) render_bcd::offset#6 ← phi( render_score::@2/(word) render_bcd::offset#0 render_score::@5/(word) render_bcd::offset#1 render_score::@6/(word) render_bcd::offset#2 render_score::@7/(word) render_bcd::offset#3 render_score::@8/(word) render_bcd::offset#4 render_score::@9/(word) render_bcd::offset#5 ) + (byte*) render_bcd::screen#6 ← phi( render_score::@2/(byte*) render_bcd::screen#0 render_score::@5/(byte*) render_bcd::screen#1 render_score::@6/(byte*) render_bcd::screen#2 render_score::@7/(byte*) render_bcd::screen#3 render_score::@8/(byte*) render_bcd::screen#4 render_score::@9/(byte*) render_bcd::screen#5 ) + (byte) render_bcd::ZERO_CHAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte*~) render_bcd::$0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 + (byte*) render_bcd::screen_pos#0 ← (byte*~) render_bcd::$0 + (bool~) render_bcd::$1 ← (byte) render_bcd::only_low#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) render_bcd::$2 ← ! (bool~) render_bcd::$1 if((bool~) render_bcd::$2) goto render_bcd::@1 to:render_bcd::@2 render_bcd::@1: scope:[render_bcd] from render_bcd render_bcd::@2 - (byte*) render_bcd::screen_pos#3 ? phi( render_bcd/(byte*) render_bcd::screen_pos#0 render_bcd::@2/(byte*) render_bcd::screen_pos#2 ) - (byte) render_bcd::bcd#6 ? phi( render_bcd/(byte) render_bcd::bcd#8 render_bcd::@2/(byte) render_bcd::bcd#7 ) - (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte~) render_bcd::$4 ? (byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 - *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 - (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 + (byte*) render_bcd::screen_pos#3 ← phi( render_bcd/(byte*) render_bcd::screen_pos#0 render_bcd::@2/(byte*) render_bcd::screen_pos#2 ) + (byte) render_bcd::bcd#6 ← phi( render_bcd/(byte) render_bcd::bcd#8 render_bcd::@2/(byte) render_bcd::bcd#7 ) + (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte~) render_bcd::$4 ← (byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 + *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 + (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 to:render_bcd::@return render_bcd::@2: scope:[render_bcd] from render_bcd - (byte*) render_bcd::screen_pos#4 ? phi( render_bcd/(byte*) render_bcd::screen_pos#0 ) - (byte) render_bcd::bcd#7 ? phi( render_bcd/(byte) render_bcd::bcd#8 ) - (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte~) render_bcd::$6 ? (byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 - *((byte*) render_bcd::screen_pos#4) ? (byte~) render_bcd::$6 - (byte*) render_bcd::screen_pos#2 ? ++ (byte*) render_bcd::screen_pos#4 + (byte*) render_bcd::screen_pos#4 ← phi( render_bcd/(byte*) render_bcd::screen_pos#0 ) + (byte) render_bcd::bcd#7 ← phi( render_bcd/(byte) render_bcd::bcd#8 ) + (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte~) render_bcd::$6 ← (byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 + *((byte*) render_bcd::screen_pos#4) ← (byte~) render_bcd::$6 + (byte*) render_bcd::screen_pos#2 ← ++ (byte*) render_bcd::screen_pos#4 to:render_bcd::@1 render_bcd::@return: scope:[render_bcd] from render_bcd::@1 return to:@return render_screen_original: scope:[render_screen_original] from render_init::@3 render_init::@4 - (byte*) render_screen_original::screen#9 ? phi( render_init::@3/(byte*) render_screen_original::screen#0 render_init::@4/(byte*) render_screen_original::screen#1 ) - (byte) render_screen_original::SPACE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) render_screen_original::$1 ? (byte*) PLAYFIELD_SCREEN_ORIGINAL#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$0 - (byte*) render_screen_original::oscr#0 ? (byte*~) render_screen_original::$1 - (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$2 ? (byte/signed byte/word/signed word/dword/signed dword) $20 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*~) render_screen_original::$3 ? (byte*) PLAYFIELD_COLORS_ORIGINAL#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$2 - (byte*) render_screen_original::ocols#0 ? (byte*~) render_screen_original::$3 - (byte*) render_screen_original::cols#0 ? (byte*) COLS#0 - (byte) render_screen_original::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) render_screen_original::screen#9 ← phi( render_init::@3/(byte*) render_screen_original::screen#0 render_init::@4/(byte*) render_screen_original::screen#1 ) + (byte) render_screen_original::SPACE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 * (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*~) render_screen_original::$1 ← (byte*) PLAYFIELD_SCREEN_ORIGINAL#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$0 + (byte*) render_screen_original::oscr#0 ← (byte*~) render_screen_original::$1 + (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$2 ← (byte/signed byte/word/signed word/dword/signed dword) $20 * (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*~) render_screen_original::$3 ← (byte*) PLAYFIELD_COLORS_ORIGINAL#0 + (byte/signed byte/word/signed word/dword/signed dword~) render_screen_original::$2 + (byte*) render_screen_original::ocols#0 ← (byte*~) render_screen_original::$3 + (byte*) render_screen_original::cols#0 ← (byte*) COLS#0 + (byte) render_screen_original::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_screen_original::@1 render_screen_original::@1: scope:[render_screen_original] from render_screen_original render_screen_original::@7 - (byte) render_screen_original::y#6 ? phi( render_screen_original/(byte) render_screen_original::y#0 render_screen_original::@7/(byte) render_screen_original::y#1 ) - (byte*) render_screen_original::ocols#4 ? phi( render_screen_original/(byte*) render_screen_original::ocols#0 render_screen_original::@7/(byte*) render_screen_original::ocols#5 ) - (byte*) render_screen_original::oscr#4 ? phi( render_screen_original/(byte*) render_screen_original::oscr#0 render_screen_original::@7/(byte*) render_screen_original::oscr#5 ) - (byte*) render_screen_original::cols#7 ? phi( render_screen_original/(byte*) render_screen_original::cols#0 render_screen_original::@7/(byte*) render_screen_original::cols#8 ) - (byte*) render_screen_original::screen#8 ? phi( render_screen_original/(byte*) render_screen_original::screen#9 render_screen_original::@7/(byte*) render_screen_original::screen#10 ) - (byte) render_screen_original::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_screen_original::y#6 ← phi( render_screen_original/(byte) render_screen_original::y#0 render_screen_original::@7/(byte) render_screen_original::y#1 ) + (byte*) render_screen_original::ocols#4 ← phi( render_screen_original/(byte*) render_screen_original::ocols#0 render_screen_original::@7/(byte*) render_screen_original::ocols#5 ) + (byte*) render_screen_original::oscr#4 ← phi( render_screen_original/(byte*) render_screen_original::oscr#0 render_screen_original::@7/(byte*) render_screen_original::oscr#5 ) + (byte*) render_screen_original::cols#7 ← phi( render_screen_original/(byte*) render_screen_original::cols#0 render_screen_original::@7/(byte*) render_screen_original::cols#8 ) + (byte*) render_screen_original::screen#8 ← phi( render_screen_original/(byte*) render_screen_original::screen#9 render_screen_original::@7/(byte*) render_screen_original::screen#10 ) + (byte) render_screen_original::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_screen_original::@2 render_screen_original::@2: scope:[render_screen_original] from render_screen_original::@1 render_screen_original::@2 - (byte) render_screen_original::y#5 ? phi( render_screen_original::@1/(byte) render_screen_original::y#6 render_screen_original::@2/(byte) render_screen_original::y#5 ) - (byte*) render_screen_original::ocols#3 ? phi( render_screen_original::@1/(byte*) render_screen_original::ocols#4 render_screen_original::@2/(byte*) render_screen_original::ocols#3 ) - (byte*) render_screen_original::oscr#3 ? phi( render_screen_original::@1/(byte*) render_screen_original::oscr#4 render_screen_original::@2/(byte*) render_screen_original::oscr#3 ) - (byte) render_screen_original::x#4 ? phi( render_screen_original::@1/(byte) render_screen_original::x#0 render_screen_original::@2/(byte) render_screen_original::x#1 ) - (byte*) render_screen_original::cols#4 ? phi( render_screen_original::@1/(byte*) render_screen_original::cols#7 render_screen_original::@2/(byte*) render_screen_original::cols#1 ) - (byte*) render_screen_original::screen#5 ? phi( render_screen_original::@1/(byte*) render_screen_original::screen#8 render_screen_original::@2/(byte*) render_screen_original::screen#2 ) - *((byte*) render_screen_original::screen#5) ? (byte) render_screen_original::SPACE#0 - (byte*) render_screen_original::screen#2 ? ++ (byte*) render_screen_original::screen#5 - *((byte*) render_screen_original::cols#4) ? (byte) BLACK#0 - (byte*) render_screen_original::cols#1 ? ++ (byte*) render_screen_original::cols#4 - (byte) render_screen_original::x#1 ? ++ (byte) render_screen_original::x#4 - (bool~) render_screen_original::$4 ? (byte) render_screen_original::x#1 != (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_screen_original::y#5 ← phi( render_screen_original::@1/(byte) render_screen_original::y#6 render_screen_original::@2/(byte) render_screen_original::y#5 ) + (byte*) render_screen_original::ocols#3 ← phi( render_screen_original::@1/(byte*) render_screen_original::ocols#4 render_screen_original::@2/(byte*) render_screen_original::ocols#3 ) + (byte*) render_screen_original::oscr#3 ← phi( render_screen_original::@1/(byte*) render_screen_original::oscr#4 render_screen_original::@2/(byte*) render_screen_original::oscr#3 ) + (byte) render_screen_original::x#4 ← phi( render_screen_original::@1/(byte) render_screen_original::x#0 render_screen_original::@2/(byte) render_screen_original::x#1 ) + (byte*) render_screen_original::cols#4 ← phi( render_screen_original::@1/(byte*) render_screen_original::cols#7 render_screen_original::@2/(byte*) render_screen_original::cols#1 ) + (byte*) render_screen_original::screen#5 ← phi( render_screen_original::@1/(byte*) render_screen_original::screen#8 render_screen_original::@2/(byte*) render_screen_original::screen#2 ) + *((byte*) render_screen_original::screen#5) ← (byte) render_screen_original::SPACE#0 + (byte*) render_screen_original::screen#2 ← ++ (byte*) render_screen_original::screen#5 + *((byte*) render_screen_original::cols#4) ← (byte) BLACK#0 + (byte*) render_screen_original::cols#1 ← ++ (byte*) render_screen_original::cols#4 + (byte) render_screen_original::x#1 ← ++ (byte) render_screen_original::x#4 + (bool~) render_screen_original::$4 ← (byte) render_screen_original::x#1 != (byte/signed byte/word/signed word/dword/signed dword) 4 if((bool~) render_screen_original::$4) goto render_screen_original::@2 to:render_screen_original::@4 render_screen_original::@4: scope:[render_screen_original] from render_screen_original::@2 render_screen_original::@4 - (byte) render_screen_original::y#4 ? phi( render_screen_original::@2/(byte) render_screen_original::y#5 render_screen_original::@4/(byte) render_screen_original::y#4 ) - (byte) render_screen_original::x#5 ? phi( render_screen_original::@2/(byte) render_screen_original::x#1 render_screen_original::@4/(byte) render_screen_original::x#2 ) - (byte*) render_screen_original::cols#5 ? phi( render_screen_original::@2/(byte*) render_screen_original::cols#1 render_screen_original::@4/(byte*) render_screen_original::cols#2 ) - (byte*) render_screen_original::ocols#2 ? phi( render_screen_original::@2/(byte*) render_screen_original::ocols#3 render_screen_original::@4/(byte*) render_screen_original::ocols#1 ) - (byte*) render_screen_original::screen#6 ? phi( render_screen_original::@2/(byte*) render_screen_original::screen#2 render_screen_original::@4/(byte*) render_screen_original::screen#3 ) - (byte*) render_screen_original::oscr#2 ? phi( render_screen_original::@2/(byte*) render_screen_original::oscr#3 render_screen_original::@4/(byte*) render_screen_original::oscr#1 ) - *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) - (byte*) render_screen_original::screen#3 ? ++ (byte*) render_screen_original::screen#6 - (byte*) render_screen_original::oscr#1 ? ++ (byte*) render_screen_original::oscr#2 - *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) - (byte*) render_screen_original::cols#2 ? ++ (byte*) render_screen_original::cols#5 - (byte*) render_screen_original::ocols#1 ? ++ (byte*) render_screen_original::ocols#2 - (byte) render_screen_original::x#2 ? ++ (byte) render_screen_original::x#5 - (bool~) render_screen_original::$5 ? (byte) render_screen_original::x#2 != (byte/signed byte/word/signed word/dword/signed dword) $24 + (byte) render_screen_original::y#4 ← phi( render_screen_original::@2/(byte) render_screen_original::y#5 render_screen_original::@4/(byte) render_screen_original::y#4 ) + (byte) render_screen_original::x#5 ← phi( render_screen_original::@2/(byte) render_screen_original::x#1 render_screen_original::@4/(byte) render_screen_original::x#2 ) + (byte*) render_screen_original::cols#5 ← phi( render_screen_original::@2/(byte*) render_screen_original::cols#1 render_screen_original::@4/(byte*) render_screen_original::cols#2 ) + (byte*) render_screen_original::ocols#2 ← phi( render_screen_original::@2/(byte*) render_screen_original::ocols#3 render_screen_original::@4/(byte*) render_screen_original::ocols#1 ) + (byte*) render_screen_original::screen#6 ← phi( render_screen_original::@2/(byte*) render_screen_original::screen#2 render_screen_original::@4/(byte*) render_screen_original::screen#3 ) + (byte*) render_screen_original::oscr#2 ← phi( render_screen_original::@2/(byte*) render_screen_original::oscr#3 render_screen_original::@4/(byte*) render_screen_original::oscr#1 ) + *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) + (byte*) render_screen_original::screen#3 ← ++ (byte*) render_screen_original::screen#6 + (byte*) render_screen_original::oscr#1 ← ++ (byte*) render_screen_original::oscr#2 + *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) + (byte*) render_screen_original::cols#2 ← ++ (byte*) render_screen_original::cols#5 + (byte*) render_screen_original::ocols#1 ← ++ (byte*) render_screen_original::ocols#2 + (byte) render_screen_original::x#2 ← ++ (byte) render_screen_original::x#5 + (bool~) render_screen_original::$5 ← (byte) render_screen_original::x#2 != (byte/signed byte/word/signed word/dword/signed dword) $24 if((bool~) render_screen_original::$5) goto render_screen_original::@4 to:render_screen_original::@6 render_screen_original::@6: scope:[render_screen_original] from render_screen_original::@4 render_screen_original::@6 - (byte*) render_screen_original::ocols#6 ? phi( render_screen_original::@4/(byte*) render_screen_original::ocols#1 render_screen_original::@6/(byte*) render_screen_original::ocols#6 ) - (byte*) render_screen_original::oscr#6 ? phi( render_screen_original::@4/(byte*) render_screen_original::oscr#1 render_screen_original::@6/(byte*) render_screen_original::oscr#6 ) - (byte) render_screen_original::y#3 ? phi( render_screen_original::@4/(byte) render_screen_original::y#4 render_screen_original::@6/(byte) render_screen_original::y#3 ) - (byte) render_screen_original::x#6 ? phi( render_screen_original::@4/(byte) render_screen_original::x#2 render_screen_original::@6/(byte) render_screen_original::x#3 ) - (byte*) render_screen_original::cols#6 ? phi( render_screen_original::@4/(byte*) render_screen_original::cols#2 render_screen_original::@6/(byte*) render_screen_original::cols#3 ) - (byte*) render_screen_original::screen#7 ? phi( render_screen_original::@4/(byte*) render_screen_original::screen#3 render_screen_original::@6/(byte*) render_screen_original::screen#4 ) - *((byte*) render_screen_original::screen#7) ? (byte) render_screen_original::SPACE#0 - (byte*) render_screen_original::screen#4 ? ++ (byte*) render_screen_original::screen#7 - *((byte*) render_screen_original::cols#6) ? (byte) BLACK#0 - (byte*) render_screen_original::cols#3 ? ++ (byte*) render_screen_original::cols#6 - (byte) render_screen_original::x#3 ? ++ (byte) render_screen_original::x#6 - (bool~) render_screen_original::$6 ? (byte) render_screen_original::x#3 != (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) render_screen_original::ocols#6 ← phi( render_screen_original::@4/(byte*) render_screen_original::ocols#1 render_screen_original::@6/(byte*) render_screen_original::ocols#6 ) + (byte*) render_screen_original::oscr#6 ← phi( render_screen_original::@4/(byte*) render_screen_original::oscr#1 render_screen_original::@6/(byte*) render_screen_original::oscr#6 ) + (byte) render_screen_original::y#3 ← phi( render_screen_original::@4/(byte) render_screen_original::y#4 render_screen_original::@6/(byte) render_screen_original::y#3 ) + (byte) render_screen_original::x#6 ← phi( render_screen_original::@4/(byte) render_screen_original::x#2 render_screen_original::@6/(byte) render_screen_original::x#3 ) + (byte*) render_screen_original::cols#6 ← phi( render_screen_original::@4/(byte*) render_screen_original::cols#2 render_screen_original::@6/(byte*) render_screen_original::cols#3 ) + (byte*) render_screen_original::screen#7 ← phi( render_screen_original::@4/(byte*) render_screen_original::screen#3 render_screen_original::@6/(byte*) render_screen_original::screen#4 ) + *((byte*) render_screen_original::screen#7) ← (byte) render_screen_original::SPACE#0 + (byte*) render_screen_original::screen#4 ← ++ (byte*) render_screen_original::screen#7 + *((byte*) render_screen_original::cols#6) ← (byte) BLACK#0 + (byte*) render_screen_original::cols#3 ← ++ (byte*) render_screen_original::cols#6 + (byte) render_screen_original::x#3 ← ++ (byte) render_screen_original::x#6 + (bool~) render_screen_original::$6 ← (byte) render_screen_original::x#3 != (byte/signed byte/word/signed word/dword/signed dword) $28 if((bool~) render_screen_original::$6) goto render_screen_original::@6 to:render_screen_original::@7 render_screen_original::@7: scope:[render_screen_original] from render_screen_original::@6 - (byte*) render_screen_original::ocols#5 ? phi( render_screen_original::@6/(byte*) render_screen_original::ocols#6 ) - (byte*) render_screen_original::oscr#5 ? phi( render_screen_original::@6/(byte*) render_screen_original::oscr#6 ) - (byte*) render_screen_original::cols#8 ? phi( render_screen_original::@6/(byte*) render_screen_original::cols#3 ) - (byte*) render_screen_original::screen#10 ? phi( render_screen_original::@6/(byte*) render_screen_original::screen#4 ) - (byte) render_screen_original::y#2 ? phi( render_screen_original::@6/(byte) render_screen_original::y#3 ) - (byte) render_screen_original::y#1 ? (byte) render_screen_original::y#2 + rangenext(0,$18) - (bool~) render_screen_original::$7 ? (byte) render_screen_original::y#1 != rangelast(0,$18) + (byte*) render_screen_original::ocols#5 ← phi( render_screen_original::@6/(byte*) render_screen_original::ocols#6 ) + (byte*) render_screen_original::oscr#5 ← phi( render_screen_original::@6/(byte*) render_screen_original::oscr#6 ) + (byte*) render_screen_original::cols#8 ← phi( render_screen_original::@6/(byte*) render_screen_original::cols#3 ) + (byte*) render_screen_original::screen#10 ← phi( render_screen_original::@6/(byte*) render_screen_original::screen#4 ) + (byte) render_screen_original::y#2 ← phi( render_screen_original::@6/(byte) render_screen_original::y#3 ) + (byte) render_screen_original::y#1 ← (byte) render_screen_original::y#2 + rangenext(0,$18) + (bool~) render_screen_original::$7 ← (byte) render_screen_original::y#1 != rangelast(0,$18) if((bool~) render_screen_original::$7) goto render_screen_original::@1 to:render_screen_original::@return render_screen_original::@return: scope:[render_screen_original] from render_screen_original::@7 return to:@return render_playfield: scope:[render_playfield] from main::@23 main::@31 - (byte) render_screen_render#22 ? phi( main::@23/(byte) render_screen_render#30 main::@31/(byte) render_screen_render#31 ) - (byte/signed word/word/dword/signed dword~) render_playfield::$0 ? (byte) PLAYFIELD_COLS#0 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) render_playfield::i#0 ? (byte/signed word/word/dword/signed dword~) render_playfield::$0 - (byte/signed word/word/dword/signed dword~) render_playfield::$1 ? (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) render_playfield::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_screen_render#22 ← phi( main::@23/(byte) render_screen_render#30 main::@31/(byte) render_screen_render#31 ) + (byte/signed word/word/dword/signed dword~) render_playfield::$0 ← (byte) PLAYFIELD_COLS#0 * (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_playfield::i#0 ← (byte/signed word/word/dword/signed dword~) render_playfield::$0 + (byte/signed word/word/dword/signed dword~) render_playfield::$1 ← (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_playfield::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 to:render_playfield::@1 render_playfield::@1: scope:[render_playfield] from render_playfield render_playfield::@3 - (byte) render_playfield::i#3 ? phi( render_playfield/(byte) render_playfield::i#0 render_playfield::@3/(byte) render_playfield::i#4 ) - (byte) render_screen_render#13 ? phi( render_playfield/(byte) render_screen_render#22 render_playfield::@3/(byte) render_screen_render#23 ) - (byte) render_playfield::l#2 ? phi( render_playfield/(byte) render_playfield::l#0 render_playfield::@3/(byte) render_playfield::l#1 ) - (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) render_playfield::$3 ? (byte) render_screen_render#13 + (byte~) render_playfield::$2 - (byte*) render_playfield::screen_line#0 ? *((byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) - (byte/signed word/word/dword/signed dword~) render_playfield::$4 ? (byte) PLAYFIELD_COLS#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) render_playfield::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_playfield::i#3 ← phi( render_playfield/(byte) render_playfield::i#0 render_playfield::@3/(byte) render_playfield::i#4 ) + (byte) render_screen_render#13 ← phi( render_playfield/(byte) render_screen_render#22 render_playfield::@3/(byte) render_screen_render#23 ) + (byte) render_playfield::l#2 ← phi( render_playfield/(byte) render_playfield::l#0 render_playfield::@3/(byte) render_playfield::l#1 ) + (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) render_playfield::$3 ← (byte) render_screen_render#13 + (byte~) render_playfield::$2 + (byte*) render_playfield::screen_line#0 ← *((byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) + (byte/signed word/word/dword/signed dword~) render_playfield::$4 ← (byte) PLAYFIELD_COLS#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_playfield::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_playfield::@2 render_playfield::@2: scope:[render_playfield] from render_playfield::@1 render_playfield::@2 - (byte) render_screen_render#32 ? phi( render_playfield::@1/(byte) render_screen_render#13 render_playfield::@2/(byte) render_screen_render#32 ) - (byte) render_playfield::l#4 ? phi( render_playfield::@1/(byte) render_playfield::l#2 render_playfield::@2/(byte) render_playfield::l#4 ) - (byte) render_playfield::c#2 ? phi( render_playfield::@1/(byte) render_playfield::c#0 render_playfield::@2/(byte) render_playfield::c#1 ) - (byte*) render_playfield::screen_line#2 ? phi( render_playfield::@1/(byte*) render_playfield::screen_line#0 render_playfield::@2/(byte*) render_playfield::screen_line#1 ) - (byte) render_playfield::i#2 ? phi( render_playfield::@1/(byte) render_playfield::i#3 render_playfield::@2/(byte) render_playfield::i#1 ) - *((byte*) render_playfield::screen_line#2) ? *((byte[$3]) playfield#0 + (byte) render_playfield::i#2) - (byte*) render_playfield::screen_line#1 ? ++ (byte*) render_playfield::screen_line#2 - (byte) render_playfield::i#1 ? ++ (byte) render_playfield::i#2 - (byte) render_playfield::c#1 ? (byte) render_playfield::c#2 + rangenext(0,render_playfield::$4) - (bool~) render_playfield::$5 ? (byte) render_playfield::c#1 != rangelast(0,render_playfield::$4) + (byte) render_screen_render#32 ← phi( render_playfield::@1/(byte) render_screen_render#13 render_playfield::@2/(byte) render_screen_render#32 ) + (byte) render_playfield::l#4 ← phi( render_playfield::@1/(byte) render_playfield::l#2 render_playfield::@2/(byte) render_playfield::l#4 ) + (byte) render_playfield::c#2 ← phi( render_playfield::@1/(byte) render_playfield::c#0 render_playfield::@2/(byte) render_playfield::c#1 ) + (byte*) render_playfield::screen_line#2 ← phi( render_playfield::@1/(byte*) render_playfield::screen_line#0 render_playfield::@2/(byte*) render_playfield::screen_line#1 ) + (byte) render_playfield::i#2 ← phi( render_playfield::@1/(byte) render_playfield::i#3 render_playfield::@2/(byte) render_playfield::i#1 ) + *((byte*) render_playfield::screen_line#2) ← *((byte[$3]) playfield#0 + (byte) render_playfield::i#2) + (byte*) render_playfield::screen_line#1 ← ++ (byte*) render_playfield::screen_line#2 + (byte) render_playfield::i#1 ← ++ (byte) render_playfield::i#2 + (byte) render_playfield::c#1 ← (byte) render_playfield::c#2 + rangenext(0,render_playfield::$4) + (bool~) render_playfield::$5 ← (byte) render_playfield::c#1 != rangelast(0,render_playfield::$4) if((bool~) render_playfield::$5) goto render_playfield::@2 to:render_playfield::@3 render_playfield::@3: scope:[render_playfield] from render_playfield::@2 - (byte) render_playfield::i#4 ? phi( render_playfield::@2/(byte) render_playfield::i#1 ) - (byte) render_screen_render#23 ? phi( render_playfield::@2/(byte) render_screen_render#32 ) - (byte) render_playfield::l#3 ? phi( render_playfield::@2/(byte) render_playfield::l#4 ) - (byte) render_playfield::l#1 ? (byte) render_playfield::l#3 + rangenext(2,render_playfield::$1) - (bool~) render_playfield::$6 ? (byte) render_playfield::l#1 != rangelast(2,render_playfield::$1) + (byte) render_playfield::i#4 ← phi( render_playfield::@2/(byte) render_playfield::i#1 ) + (byte) render_screen_render#23 ← phi( render_playfield::@2/(byte) render_screen_render#32 ) + (byte) render_playfield::l#3 ← phi( render_playfield::@2/(byte) render_playfield::l#4 ) + (byte) render_playfield::l#1 ← (byte) render_playfield::l#3 + rangenext(2,render_playfield::$1) + (bool~) render_playfield::$6 ← (byte) render_playfield::l#1 != rangelast(2,render_playfield::$1) if((bool~) render_playfield::$6) goto render_playfield::@1 to:render_playfield::@return render_playfield::@return: scope:[render_playfield] from render_playfield::@3 return to:@return render_moving: scope:[render_moving] from main::@32 main::@39 - (byte) current_piece_char#68 ? phi( main::@32/(byte) current_piece_char#80 main::@39/(byte) current_piece_char#84 ) - (byte*) current_piece_gfx#64 ? phi( main::@32/(byte*) current_piece_gfx#81 main::@39/(byte*) current_piece_gfx#82 ) - (byte) current_xpos#59 ? phi( main::@32/(byte) current_xpos#79 main::@39/(byte) current_xpos#80 ) - (byte) render_screen_render#33 ? phi( main::@32/(byte) render_screen_render#36 main::@39/(byte) render_screen_render#39 ) - (byte) current_ypos#13 ? phi( main::@32/(byte) current_ypos#30 main::@39/(byte) current_ypos#31 ) - (byte) render_moving::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) render_moving::$0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) render_moving::ypos2#0 ? (byte~) render_moving::$0 - (byte) render_moving::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) current_piece_char#68 ← phi( main::@32/(byte) current_piece_char#80 main::@39/(byte) current_piece_char#84 ) + (byte*) current_piece_gfx#64 ← phi( main::@32/(byte*) current_piece_gfx#81 main::@39/(byte*) current_piece_gfx#82 ) + (byte) current_xpos#59 ← phi( main::@32/(byte) current_xpos#79 main::@39/(byte) current_xpos#80 ) + (byte) render_screen_render#33 ← phi( main::@32/(byte) render_screen_render#36 main::@39/(byte) render_screen_render#39 ) + (byte) current_ypos#13 ← phi( main::@32/(byte) current_ypos#30 main::@39/(byte) current_ypos#31 ) + (byte) render_moving::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) render_moving::$0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_moving::ypos2#0 ← (byte~) render_moving::$0 + (byte) render_moving::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_moving::@1 render_moving::@1: scope:[render_moving] from render_moving render_moving::@3 - (byte) current_piece_char#52 ? phi( render_moving/(byte) current_piece_char#68 render_moving::@3/(byte) current_piece_char#69 ) - (byte) render_moving::l#5 ? phi( render_moving/(byte) render_moving::l#0 render_moving::@3/(byte) render_moving::l#1 ) - (byte*) current_piece_gfx#46 ? phi( render_moving/(byte*) current_piece_gfx#64 render_moving::@3/(byte*) current_piece_gfx#65 ) - (byte) render_moving::i#5 ? phi( render_moving/(byte) render_moving::i#0 render_moving::@3/(byte) render_moving::i#8 ) - (byte) current_xpos#36 ? phi( render_moving/(byte) current_xpos#59 render_moving::@3/(byte) current_xpos#60 ) - (byte) render_screen_render#24 ? phi( render_moving/(byte) render_screen_render#33 render_moving::@3/(byte) render_screen_render#34 ) - (byte) render_moving::ypos2#2 ? phi( render_moving/(byte) render_moving::ypos2#0 render_moving::@3/(byte) render_moving::ypos2#1 ) - (bool~) render_moving::$1 ? (byte) render_moving::ypos2#2 > (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) current_piece_char#52 ← phi( render_moving/(byte) current_piece_char#68 render_moving::@3/(byte) current_piece_char#69 ) + (byte) render_moving::l#5 ← phi( render_moving/(byte) render_moving::l#0 render_moving::@3/(byte) render_moving::l#1 ) + (byte*) current_piece_gfx#46 ← phi( render_moving/(byte*) current_piece_gfx#64 render_moving::@3/(byte*) current_piece_gfx#65 ) + (byte) render_moving::i#5 ← phi( render_moving/(byte) render_moving::i#0 render_moving::@3/(byte) render_moving::i#8 ) + (byte) current_xpos#36 ← phi( render_moving/(byte) current_xpos#59 render_moving::@3/(byte) current_xpos#60 ) + (byte) render_screen_render#24 ← phi( render_moving/(byte) render_screen_render#33 render_moving::@3/(byte) render_screen_render#34 ) + (byte) render_moving::ypos2#2 ← phi( render_moving/(byte) render_moving::ypos2#0 render_moving::@3/(byte) render_moving::ypos2#1 ) + (bool~) render_moving::$1 ← (byte) render_moving::ypos2#2 > (byte/signed byte/word/signed word/dword/signed dword) 2 if((bool~) render_moving::$1) goto render_moving::@2 to:render_moving::@8 render_moving::@2: scope:[render_moving] from render_moving::@1 - (byte) render_moving::l#8 ? phi( render_moving::@1/(byte) render_moving::l#5 ) - (byte) current_piece_char#37 ? phi( render_moving::@1/(byte) current_piece_char#52 ) - (byte) render_moving::i#6 ? phi( render_moving::@1/(byte) render_moving::i#5 ) - (byte*) current_piece_gfx#29 ? phi( render_moving::@1/(byte*) current_piece_gfx#46 ) - (byte) current_xpos#16 ? phi( render_moving::@1/(byte) current_xpos#36 ) - (byte) render_moving::ypos2#3 ? phi( render_moving::@1/(byte) render_moving::ypos2#2 ) - (byte) render_screen_render#14 ? phi( render_moving::@1/(byte) render_screen_render#24 ) - (byte~) render_moving::$2 ? (byte) render_screen_render#14 + (byte) render_moving::ypos2#3 - (byte*) render_moving::screen_line#0 ? *((byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) - (byte) render_moving::xpos#0 ? (byte) current_xpos#16 - (byte) render_moving::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_moving::l#8 ← phi( render_moving::@1/(byte) render_moving::l#5 ) + (byte) current_piece_char#37 ← phi( render_moving::@1/(byte) current_piece_char#52 ) + (byte) render_moving::i#6 ← phi( render_moving::@1/(byte) render_moving::i#5 ) + (byte*) current_piece_gfx#29 ← phi( render_moving::@1/(byte*) current_piece_gfx#46 ) + (byte) current_xpos#16 ← phi( render_moving::@1/(byte) current_xpos#36 ) + (byte) render_moving::ypos2#3 ← phi( render_moving::@1/(byte) render_moving::ypos2#2 ) + (byte) render_screen_render#14 ← phi( render_moving::@1/(byte) render_screen_render#24 ) + (byte~) render_moving::$2 ← (byte) render_screen_render#14 + (byte) render_moving::ypos2#3 + (byte*) render_moving::screen_line#0 ← *((byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) + (byte) render_moving::xpos#0 ← (byte) current_xpos#16 + (byte) render_moving::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_moving::@4 render_moving::@8: scope:[render_moving] from render_moving::@1 - (byte) current_piece_char#85 ? phi( render_moving::@1/(byte) current_piece_char#52 ) - (byte*) current_piece_gfx#83 ? phi( render_moving::@1/(byte*) current_piece_gfx#46 ) - (byte) current_xpos#82 ? phi( render_moving::@1/(byte) current_xpos#36 ) - (byte) render_screen_render#42 ? phi( render_moving::@1/(byte) render_screen_render#24 ) - (byte) render_moving::l#4 ? phi( render_moving::@1/(byte) render_moving::l#5 ) - (byte) render_moving::ypos2#6 ? phi( render_moving::@1/(byte) render_moving::ypos2#2 ) - (byte) render_moving::i#3 ? phi( render_moving::@1/(byte) render_moving::i#5 ) - (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) current_piece_char#85 ← phi( render_moving::@1/(byte) current_piece_char#52 ) + (byte*) current_piece_gfx#83 ← phi( render_moving::@1/(byte*) current_piece_gfx#46 ) + (byte) current_xpos#82 ← phi( render_moving::@1/(byte) current_xpos#36 ) + (byte) render_screen_render#42 ← phi( render_moving::@1/(byte) render_screen_render#24 ) + (byte) render_moving::l#4 ← phi( render_moving::@1/(byte) render_moving::l#5 ) + (byte) render_moving::ypos2#6 ← phi( render_moving::@1/(byte) render_moving::ypos2#2 ) + (byte) render_moving::i#3 ← phi( render_moving::@1/(byte) render_moving::i#5 ) + (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 to:render_moving::@3 render_moving::@3: scope:[render_moving] from render_moving::@5 render_moving::@8 - (byte) current_piece_char#69 ? phi( render_moving::@5/(byte) current_piece_char#38 render_moving::@8/(byte) current_piece_char#85 ) - (byte*) current_piece_gfx#65 ? phi( render_moving::@5/(byte*) current_piece_gfx#30 render_moving::@8/(byte*) current_piece_gfx#83 ) - (byte) render_moving::i#8 ? phi( render_moving::@5/(byte) render_moving::i#7 render_moving::@8/(byte) render_moving::i#1 ) - (byte) current_xpos#60 ? phi( render_moving::@5/(byte) current_xpos#81 render_moving::@8/(byte) current_xpos#82 ) - (byte) render_screen_render#34 ? phi( render_moving::@5/(byte) render_screen_render#41 render_moving::@8/(byte) render_screen_render#42 ) - (byte) render_moving::l#2 ? phi( render_moving::@5/(byte) render_moving::l#3 render_moving::@8/(byte) render_moving::l#4 ) - (byte) render_moving::ypos2#4 ? phi( render_moving::@5/(byte) render_moving::ypos2#5 render_moving::@8/(byte) render_moving::ypos2#6 ) - (byte) render_moving::ypos2#1 ? (byte) render_moving::ypos2#4 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) render_moving::l#1 ? (byte) render_moving::l#2 + rangenext(0,3) - (bool~) render_moving::$6 ? (byte) render_moving::l#1 != rangelast(0,3) + (byte) current_piece_char#69 ← phi( render_moving::@5/(byte) current_piece_char#38 render_moving::@8/(byte) current_piece_char#85 ) + (byte*) current_piece_gfx#65 ← phi( render_moving::@5/(byte*) current_piece_gfx#30 render_moving::@8/(byte*) current_piece_gfx#83 ) + (byte) render_moving::i#8 ← phi( render_moving::@5/(byte) render_moving::i#7 render_moving::@8/(byte) render_moving::i#1 ) + (byte) current_xpos#60 ← phi( render_moving::@5/(byte) current_xpos#81 render_moving::@8/(byte) current_xpos#82 ) + (byte) render_screen_render#34 ← phi( render_moving::@5/(byte) render_screen_render#41 render_moving::@8/(byte) render_screen_render#42 ) + (byte) render_moving::l#2 ← phi( render_moving::@5/(byte) render_moving::l#3 render_moving::@8/(byte) render_moving::l#4 ) + (byte) render_moving::ypos2#4 ← phi( render_moving::@5/(byte) render_moving::ypos2#5 render_moving::@8/(byte) render_moving::ypos2#6 ) + (byte) render_moving::ypos2#1 ← (byte) render_moving::ypos2#4 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_moving::l#1 ← (byte) render_moving::l#2 + rangenext(0,3) + (bool~) render_moving::$6 ← (byte) render_moving::l#1 != rangelast(0,3) if((bool~) render_moving::$6) goto render_moving::@1 to:render_moving::@return render_moving::@4: scope:[render_moving] from render_moving::@2 render_moving::@5 - (byte) current_xpos#98 ? phi( render_moving::@2/(byte) current_xpos#16 render_moving::@5/(byte) current_xpos#81 ) - (byte) render_screen_render#46 ? phi( render_moving::@2/(byte) render_screen_render#14 render_moving::@5/(byte) render_screen_render#41 ) - (byte) render_moving::l#6 ? phi( render_moving::@2/(byte) render_moving::l#8 render_moving::@5/(byte) render_moving::l#3 ) - (byte) render_moving::ypos2#7 ? phi( render_moving::@2/(byte) render_moving::ypos2#3 render_moving::@5/(byte) render_moving::ypos2#5 ) - (byte*) render_moving::screen_line#2 ? phi( render_moving::@2/(byte*) render_moving::screen_line#0 render_moving::@5/(byte*) render_moving::screen_line#3 ) - (byte) current_piece_char#24 ? phi( render_moving::@2/(byte) current_piece_char#37 render_moving::@5/(byte) current_piece_char#38 ) - (byte) render_moving::c#3 ? phi( render_moving::@2/(byte) render_moving::c#0 render_moving::@5/(byte) render_moving::c#1 ) - (byte) render_moving::xpos#4 ? phi( render_moving::@2/(byte) render_moving::xpos#0 render_moving::@5/(byte) render_moving::xpos#1 ) - (byte) render_moving::i#4 ? phi( render_moving::@2/(byte) render_moving::i#6 render_moving::@5/(byte) render_moving::i#7 ) - (byte*) current_piece_gfx#15 ? phi( render_moving::@2/(byte*) current_piece_gfx#29 render_moving::@5/(byte*) current_piece_gfx#30 ) - (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#15 + (byte) render_moving::i#4) - (byte) render_moving::i#2 ? ++ (byte) render_moving::i#4 - (bool~) render_moving::$3 ? (byte) render_moving::current_cell#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) render_moving::$4 ? ! (bool~) render_moving::$3 + (byte) current_xpos#98 ← phi( render_moving::@2/(byte) current_xpos#16 render_moving::@5/(byte) current_xpos#81 ) + (byte) render_screen_render#46 ← phi( render_moving::@2/(byte) render_screen_render#14 render_moving::@5/(byte) render_screen_render#41 ) + (byte) render_moving::l#6 ← phi( render_moving::@2/(byte) render_moving::l#8 render_moving::@5/(byte) render_moving::l#3 ) + (byte) render_moving::ypos2#7 ← phi( render_moving::@2/(byte) render_moving::ypos2#3 render_moving::@5/(byte) render_moving::ypos2#5 ) + (byte*) render_moving::screen_line#2 ← phi( render_moving::@2/(byte*) render_moving::screen_line#0 render_moving::@5/(byte*) render_moving::screen_line#3 ) + (byte) current_piece_char#24 ← phi( render_moving::@2/(byte) current_piece_char#37 render_moving::@5/(byte) current_piece_char#38 ) + (byte) render_moving::c#3 ← phi( render_moving::@2/(byte) render_moving::c#0 render_moving::@5/(byte) render_moving::c#1 ) + (byte) render_moving::xpos#4 ← phi( render_moving::@2/(byte) render_moving::xpos#0 render_moving::@5/(byte) render_moving::xpos#1 ) + (byte) render_moving::i#4 ← phi( render_moving::@2/(byte) render_moving::i#6 render_moving::@5/(byte) render_moving::i#7 ) + (byte*) current_piece_gfx#15 ← phi( render_moving::@2/(byte*) current_piece_gfx#29 render_moving::@5/(byte*) current_piece_gfx#30 ) + (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#15 + (byte) render_moving::i#4) + (byte) render_moving::i#2 ← ++ (byte) render_moving::i#4 + (bool~) render_moving::$3 ← (byte) render_moving::current_cell#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) render_moving::$4 ← ! (bool~) render_moving::$3 if((bool~) render_moving::$4) goto render_moving::@5 to:render_moving::@6 render_moving::@5: scope:[render_moving] from render_moving::@4 render_moving::@6 - (byte) current_xpos#81 ? phi( render_moving::@4/(byte) current_xpos#98 render_moving::@6/(byte) current_xpos#99 ) - (byte) render_screen_render#41 ? phi( render_moving::@4/(byte) render_screen_render#46 render_moving::@6/(byte) render_screen_render#47 ) - (byte*) render_moving::screen_line#3 ? phi( render_moving::@4/(byte*) render_moving::screen_line#2 render_moving::@6/(byte*) render_moving::screen_line#1 ) - (byte) current_piece_char#38 ? phi( render_moving::@4/(byte) current_piece_char#24 render_moving::@6/(byte) current_piece_char#12 ) - (byte) render_moving::i#7 ? phi( render_moving::@4/(byte) render_moving::i#2 render_moving::@6/(byte) render_moving::i#9 ) - (byte*) current_piece_gfx#30 ? phi( render_moving::@4/(byte*) current_piece_gfx#15 render_moving::@6/(byte*) current_piece_gfx#47 ) - (byte) render_moving::l#3 ? phi( render_moving::@4/(byte) render_moving::l#6 render_moving::@6/(byte) render_moving::l#7 ) - (byte) render_moving::ypos2#5 ? phi( render_moving::@4/(byte) render_moving::ypos2#7 render_moving::@6/(byte) render_moving::ypos2#8 ) - (byte) render_moving::c#2 ? phi( render_moving::@4/(byte) render_moving::c#3 render_moving::@6/(byte) render_moving::c#4 ) - (byte) render_moving::xpos#2 ? phi( render_moving::@4/(byte) render_moving::xpos#4 render_moving::@6/(byte) render_moving::xpos#3 ) - (byte) render_moving::xpos#1 ? ++ (byte) render_moving::xpos#2 - (byte) render_moving::c#1 ? (byte) render_moving::c#2 + rangenext(0,3) - (bool~) render_moving::$5 ? (byte) render_moving::c#1 != rangelast(0,3) + (byte) current_xpos#81 ← phi( render_moving::@4/(byte) current_xpos#98 render_moving::@6/(byte) current_xpos#99 ) + (byte) render_screen_render#41 ← phi( render_moving::@4/(byte) render_screen_render#46 render_moving::@6/(byte) render_screen_render#47 ) + (byte*) render_moving::screen_line#3 ← phi( render_moving::@4/(byte*) render_moving::screen_line#2 render_moving::@6/(byte*) render_moving::screen_line#1 ) + (byte) current_piece_char#38 ← phi( render_moving::@4/(byte) current_piece_char#24 render_moving::@6/(byte) current_piece_char#12 ) + (byte) render_moving::i#7 ← phi( render_moving::@4/(byte) render_moving::i#2 render_moving::@6/(byte) render_moving::i#9 ) + (byte*) current_piece_gfx#30 ← phi( render_moving::@4/(byte*) current_piece_gfx#15 render_moving::@6/(byte*) current_piece_gfx#47 ) + (byte) render_moving::l#3 ← phi( render_moving::@4/(byte) render_moving::l#6 render_moving::@6/(byte) render_moving::l#7 ) + (byte) render_moving::ypos2#5 ← phi( render_moving::@4/(byte) render_moving::ypos2#7 render_moving::@6/(byte) render_moving::ypos2#8 ) + (byte) render_moving::c#2 ← phi( render_moving::@4/(byte) render_moving::c#3 render_moving::@6/(byte) render_moving::c#4 ) + (byte) render_moving::xpos#2 ← phi( render_moving::@4/(byte) render_moving::xpos#4 render_moving::@6/(byte) render_moving::xpos#3 ) + (byte) render_moving::xpos#1 ← ++ (byte) render_moving::xpos#2 + (byte) render_moving::c#1 ← (byte) render_moving::c#2 + rangenext(0,3) + (bool~) render_moving::$5 ← (byte) render_moving::c#1 != rangelast(0,3) if((bool~) render_moving::$5) goto render_moving::@4 to:render_moving::@3 render_moving::@6: scope:[render_moving] from render_moving::@4 - (byte) current_xpos#99 ? phi( render_moving::@4/(byte) current_xpos#98 ) - (byte) render_screen_render#47 ? phi( render_moving::@4/(byte) render_screen_render#46 ) - (byte) render_moving::i#9 ? phi( render_moving::@4/(byte) render_moving::i#2 ) - (byte*) current_piece_gfx#47 ? phi( render_moving::@4/(byte*) current_piece_gfx#15 ) - (byte) render_moving::l#7 ? phi( render_moving::@4/(byte) render_moving::l#6 ) - (byte) render_moving::ypos2#8 ? phi( render_moving::@4/(byte) render_moving::ypos2#7 ) - (byte) render_moving::c#4 ? phi( render_moving::@4/(byte) render_moving::c#3 ) - (byte) render_moving::xpos#3 ? phi( render_moving::@4/(byte) render_moving::xpos#4 ) - (byte*) render_moving::screen_line#1 ? phi( render_moving::@4/(byte*) render_moving::screen_line#2 ) - (byte) current_piece_char#12 ? phi( render_moving::@4/(byte) current_piece_char#24 ) - *((byte*) render_moving::screen_line#1 + (byte) render_moving::xpos#3) ? (byte) current_piece_char#12 + (byte) current_xpos#99 ← phi( render_moving::@4/(byte) current_xpos#98 ) + (byte) render_screen_render#47 ← phi( render_moving::@4/(byte) render_screen_render#46 ) + (byte) render_moving::i#9 ← phi( render_moving::@4/(byte) render_moving::i#2 ) + (byte*) current_piece_gfx#47 ← phi( render_moving::@4/(byte*) current_piece_gfx#15 ) + (byte) render_moving::l#7 ← phi( render_moving::@4/(byte) render_moving::l#6 ) + (byte) render_moving::ypos2#8 ← phi( render_moving::@4/(byte) render_moving::ypos2#7 ) + (byte) render_moving::c#4 ← phi( render_moving::@4/(byte) render_moving::c#3 ) + (byte) render_moving::xpos#3 ← phi( render_moving::@4/(byte) render_moving::xpos#4 ) + (byte*) render_moving::screen_line#1 ← phi( render_moving::@4/(byte*) render_moving::screen_line#2 ) + (byte) current_piece_char#12 ← phi( render_moving::@4/(byte) current_piece_char#24 ) + *((byte*) render_moving::screen_line#1 + (byte) render_moving::xpos#3) ← (byte) current_piece_char#12 to:render_moving::@5 render_moving::@return: scope:[render_moving] from render_moving::@3 return to:@return render_next: scope:[render_next] from main::@33 main::@40 - (byte) next_piece_idx#36 ? phi( main::@33/(byte) next_piece_idx#47 main::@40/(byte) next_piece_idx#48 ) - (byte) render_screen_render#15 ? phi( main::@33/(byte) render_screen_render#25 main::@40/(byte) render_screen_render#26 ) - (word/signed word/dword/signed dword~) render_next::$0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) $c - (word/signed dword/dword/signed word~) render_next::$1 ? (word/signed word/dword/signed dword~) render_next::$0 + (byte/signed byte/word/signed word/dword/signed dword) $18 - (word/signed dword/dword/signed word~) render_next::$2 ? (word/signed dword/dword/signed word~) render_next::$1 + (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) render_next::next_area_offset#0 ? (word/signed dword/dword/signed word~) render_next::$2 - (byte*) render_next::screen_next_area#0 ? (byte*) 0 - (bool~) render_next::$3 ? (byte) render_screen_render#15 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) next_piece_idx#36 ← phi( main::@33/(byte) next_piece_idx#47 main::@40/(byte) next_piece_idx#48 ) + (byte) render_screen_render#15 ← phi( main::@33/(byte) render_screen_render#25 main::@40/(byte) render_screen_render#26 ) + (word/signed word/dword/signed dword~) render_next::$0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) $c + (word/signed dword/dword/signed word~) render_next::$1 ← (word/signed word/dword/signed dword~) render_next::$0 + (byte/signed byte/word/signed word/dword/signed dword) $18 + (word/signed dword/dword/signed word~) render_next::$2 ← (word/signed dword/dword/signed word~) render_next::$1 + (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) render_next::next_area_offset#0 ← (word/signed dword/dword/signed word~) render_next::$2 + (byte*) render_next::screen_next_area#0 ← (byte*) 0 + (bool~) render_next::$3 ← (byte) render_screen_render#15 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) render_next::$3) goto render_next::@1 to:render_next::@3 render_next::@1: scope:[render_next] from render_next - (byte) next_piece_idx#24 ? phi( render_next/(byte) next_piece_idx#36 ) - (word) render_next::next_area_offset#1 ? phi( render_next/(word) render_next::next_area_offset#0 ) - (byte*~) render_next::$6 ? (byte*) PLAYFIELD_SCREEN_1#0 + (word) render_next::next_area_offset#1 - (byte*) render_next::screen_next_area#1 ? (byte*~) render_next::$6 + (byte) next_piece_idx#24 ← phi( render_next/(byte) next_piece_idx#36 ) + (word) render_next::next_area_offset#1 ← phi( render_next/(word) render_next::next_area_offset#0 ) + (byte*~) render_next::$6 ← (byte*) PLAYFIELD_SCREEN_1#0 + (word) render_next::next_area_offset#1 + (byte*) render_next::screen_next_area#1 ← (byte*~) render_next::$6 to:render_next::@2 render_next::@3: scope:[render_next] from render_next - (byte) next_piece_idx#25 ? phi( render_next/(byte) next_piece_idx#36 ) - (word) render_next::next_area_offset#2 ? phi( render_next/(word) render_next::next_area_offset#0 ) - (byte*~) render_next::$5 ? (byte*) PLAYFIELD_SCREEN_2#0 + (word) render_next::next_area_offset#2 - (byte*) render_next::screen_next_area#2 ? (byte*~) render_next::$5 + (byte) next_piece_idx#25 ← phi( render_next/(byte) next_piece_idx#36 ) + (word) render_next::next_area_offset#2 ← phi( render_next/(word) render_next::next_area_offset#0 ) + (byte*~) render_next::$5 ← (byte*) PLAYFIELD_SCREEN_2#0 + (word) render_next::next_area_offset#2 + (byte*) render_next::screen_next_area#2 ← (byte*~) render_next::$5 to:render_next::@2 render_next::@2: scope:[render_next] from render_next::@1 render_next::@3 - (byte*) render_next::screen_next_area#11 ? phi( render_next::@1/(byte*) render_next::screen_next_area#1 render_next::@3/(byte*) render_next::screen_next_area#2 ) - (byte) next_piece_idx#12 ? phi( render_next::@1/(byte) next_piece_idx#24 render_next::@3/(byte) next_piece_idx#25 ) - (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) render_next::next_piece_gfx#0 ? ((byte*)) *((word[]) PIECES#0 + (byte~) render_next::$4) - (byte) render_next::next_piece_char#0 ? *((byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) - (byte) render_next::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) render_next::screen_next_area#11 ← phi( render_next::@1/(byte*) render_next::screen_next_area#1 render_next::@3/(byte*) render_next::screen_next_area#2 ) + (byte) next_piece_idx#12 ← phi( render_next::@1/(byte) next_piece_idx#24 render_next::@3/(byte) next_piece_idx#25 ) + (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) render_next::next_piece_gfx#0 ← ((byte*)) *((word[]) PIECES#0 + (byte~) render_next::$4) + (byte) render_next::next_piece_char#0 ← *((byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) + (byte) render_next::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_next::@5 render_next::@5: scope:[render_next] from render_next::@11 render_next::@2 - (byte) render_next::l#7 ? phi( render_next::@11/(byte) render_next::l#1 render_next::@2/(byte) render_next::l#0 ) - (byte*) render_next::screen_next_area#10 ? phi( render_next::@11/(byte*) render_next::screen_next_area#4 render_next::@2/(byte*) render_next::screen_next_area#11 ) - (byte) render_next::next_piece_char#3 ? phi( render_next::@11/(byte) render_next::next_piece_char#5 render_next::@2/(byte) render_next::next_piece_char#0 ) - (byte*) render_next::next_piece_gfx#3 ? phi( render_next::@11/(byte*) render_next::next_piece_gfx#5 render_next::@2/(byte*) render_next::next_piece_gfx#0 ) - (byte) render_next::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_next::l#7 ← phi( render_next::@11/(byte) render_next::l#1 render_next::@2/(byte) render_next::l#0 ) + (byte*) render_next::screen_next_area#10 ← phi( render_next::@11/(byte*) render_next::screen_next_area#4 render_next::@2/(byte*) render_next::screen_next_area#11 ) + (byte) render_next::next_piece_char#3 ← phi( render_next::@11/(byte) render_next::next_piece_char#5 render_next::@2/(byte) render_next::next_piece_char#0 ) + (byte*) render_next::next_piece_gfx#3 ← phi( render_next::@11/(byte*) render_next::next_piece_gfx#5 render_next::@2/(byte*) render_next::next_piece_gfx#0 ) + (byte) render_next::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_next::@6 render_next::@6: scope:[render_next] from render_next::@5 render_next::@8 - (byte) render_next::l#6 ? phi( render_next::@5/(byte) render_next::l#7 render_next::@8/(byte) render_next::l#3 ) - (byte) render_next::c#5 ? phi( render_next::@5/(byte) render_next::c#0 render_next::@8/(byte) render_next::c#1 ) - (byte*) render_next::screen_next_area#9 ? phi( render_next::@5/(byte*) render_next::screen_next_area#10 render_next::@8/(byte*) render_next::screen_next_area#3 ) - (byte) render_next::next_piece_char#2 ? phi( render_next::@5/(byte) render_next::next_piece_char#3 render_next::@8/(byte) render_next::next_piece_char#4 ) - (byte*) render_next::next_piece_gfx#2 ? phi( render_next::@5/(byte*) render_next::next_piece_gfx#3 render_next::@8/(byte*) render_next::next_piece_gfx#4 ) - (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) - (byte*) render_next::next_piece_gfx#1 ? ++ (byte*) render_next::next_piece_gfx#2 - (bool~) render_next::$7 ? (byte) render_next::cell#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_next::l#6 ← phi( render_next::@5/(byte) render_next::l#7 render_next::@8/(byte) render_next::l#3 ) + (byte) render_next::c#5 ← phi( render_next::@5/(byte) render_next::c#0 render_next::@8/(byte) render_next::c#1 ) + (byte*) render_next::screen_next_area#9 ← phi( render_next::@5/(byte*) render_next::screen_next_area#10 render_next::@8/(byte*) render_next::screen_next_area#3 ) + (byte) render_next::next_piece_char#2 ← phi( render_next::@5/(byte) render_next::next_piece_char#3 render_next::@8/(byte) render_next::next_piece_char#4 ) + (byte*) render_next::next_piece_gfx#2 ← phi( render_next::@5/(byte*) render_next::next_piece_gfx#3 render_next::@8/(byte*) render_next::next_piece_gfx#4 ) + (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) + (byte*) render_next::next_piece_gfx#1 ← ++ (byte*) render_next::next_piece_gfx#2 + (bool~) render_next::$7 ← (byte) render_next::cell#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) render_next::$7) goto render_next::@7 to:render_next::@9 render_next::@7: scope:[render_next] from render_next::@6 - (byte) render_next::l#4 ? phi( render_next::@6/(byte) render_next::l#6 ) - (byte*) render_next::next_piece_gfx#6 ? phi( render_next::@6/(byte*) render_next::next_piece_gfx#1 ) - (byte) render_next::c#3 ? phi( render_next::@6/(byte) render_next::c#5 ) - (byte*) render_next::screen_next_area#5 ? phi( render_next::@6/(byte*) render_next::screen_next_area#9 ) - (byte) render_next::next_piece_char#1 ? phi( render_next::@6/(byte) render_next::next_piece_char#2 ) - *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#1 + (byte) render_next::l#4 ← phi( render_next::@6/(byte) render_next::l#6 ) + (byte*) render_next::next_piece_gfx#6 ← phi( render_next::@6/(byte*) render_next::next_piece_gfx#1 ) + (byte) render_next::c#3 ← phi( render_next::@6/(byte) render_next::c#5 ) + (byte*) render_next::screen_next_area#5 ← phi( render_next::@6/(byte*) render_next::screen_next_area#9 ) + (byte) render_next::next_piece_char#1 ← phi( render_next::@6/(byte) render_next::next_piece_char#2 ) + *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#1 to:render_next::@8 render_next::@9: scope:[render_next] from render_next::@6 - (byte) render_next::next_piece_char#6 ? phi( render_next::@6/(byte) render_next::next_piece_char#2 ) - (byte) render_next::l#5 ? phi( render_next::@6/(byte) render_next::l#6 ) - (byte*) render_next::next_piece_gfx#7 ? phi( render_next::@6/(byte*) render_next::next_piece_gfx#1 ) - (byte) render_next::c#4 ? phi( render_next::@6/(byte) render_next::c#5 ) - (byte*) render_next::screen_next_area#6 ? phi( render_next::@6/(byte*) render_next::screen_next_area#9 ) - *((byte*) render_next::screen_next_area#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_next::next_piece_char#6 ← phi( render_next::@6/(byte) render_next::next_piece_char#2 ) + (byte) render_next::l#5 ← phi( render_next::@6/(byte) render_next::l#6 ) + (byte*) render_next::next_piece_gfx#7 ← phi( render_next::@6/(byte*) render_next::next_piece_gfx#1 ) + (byte) render_next::c#4 ← phi( render_next::@6/(byte) render_next::c#5 ) + (byte*) render_next::screen_next_area#6 ← phi( render_next::@6/(byte*) render_next::screen_next_area#9 ) + *((byte*) render_next::screen_next_area#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_next::@8 render_next::@8: scope:[render_next] from render_next::@7 render_next::@9 - (byte) render_next::next_piece_char#4 ? phi( render_next::@7/(byte) render_next::next_piece_char#1 render_next::@9/(byte) render_next::next_piece_char#6 ) - (byte) render_next::l#3 ? phi( render_next::@7/(byte) render_next::l#4 render_next::@9/(byte) render_next::l#5 ) - (byte*) render_next::next_piece_gfx#4 ? phi( render_next::@7/(byte*) render_next::next_piece_gfx#6 render_next::@9/(byte*) render_next::next_piece_gfx#7 ) - (byte) render_next::c#2 ? phi( render_next::@7/(byte) render_next::c#3 render_next::@9/(byte) render_next::c#4 ) - (byte*) render_next::screen_next_area#7 ? phi( render_next::@7/(byte*) render_next::screen_next_area#5 render_next::@9/(byte*) render_next::screen_next_area#6 ) - (byte*) render_next::screen_next_area#3 ? ++ (byte*) render_next::screen_next_area#7 - (byte) render_next::c#1 ? (byte) render_next::c#2 + rangenext(0,3) - (bool~) render_next::$8 ? (byte) render_next::c#1 != rangelast(0,3) + (byte) render_next::next_piece_char#4 ← phi( render_next::@7/(byte) render_next::next_piece_char#1 render_next::@9/(byte) render_next::next_piece_char#6 ) + (byte) render_next::l#3 ← phi( render_next::@7/(byte) render_next::l#4 render_next::@9/(byte) render_next::l#5 ) + (byte*) render_next::next_piece_gfx#4 ← phi( render_next::@7/(byte*) render_next::next_piece_gfx#6 render_next::@9/(byte*) render_next::next_piece_gfx#7 ) + (byte) render_next::c#2 ← phi( render_next::@7/(byte) render_next::c#3 render_next::@9/(byte) render_next::c#4 ) + (byte*) render_next::screen_next_area#7 ← phi( render_next::@7/(byte*) render_next::screen_next_area#5 render_next::@9/(byte*) render_next::screen_next_area#6 ) + (byte*) render_next::screen_next_area#3 ← ++ (byte*) render_next::screen_next_area#7 + (byte) render_next::c#1 ← (byte) render_next::c#2 + rangenext(0,3) + (bool~) render_next::$8 ← (byte) render_next::c#1 != rangelast(0,3) if((bool~) render_next::$8) goto render_next::@6 to:render_next::@11 render_next::@11: scope:[render_next] from render_next::@8 - (byte) render_next::next_piece_char#5 ? phi( render_next::@8/(byte) render_next::next_piece_char#4 ) - (byte*) render_next::next_piece_gfx#5 ? phi( render_next::@8/(byte*) render_next::next_piece_gfx#4 ) - (byte) render_next::l#2 ? phi( render_next::@8/(byte) render_next::l#3 ) - (byte*) render_next::screen_next_area#8 ? phi( render_next::@8/(byte*) render_next::screen_next_area#3 ) - (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#8 + (byte/signed byte/word/signed word/dword/signed dword) $24 - (byte) render_next::l#1 ? (byte) render_next::l#2 + rangenext(0,3) - (bool~) render_next::$9 ? (byte) render_next::l#1 != rangelast(0,3) + (byte) render_next::next_piece_char#5 ← phi( render_next::@8/(byte) render_next::next_piece_char#4 ) + (byte*) render_next::next_piece_gfx#5 ← phi( render_next::@8/(byte*) render_next::next_piece_gfx#4 ) + (byte) render_next::l#2 ← phi( render_next::@8/(byte) render_next::l#3 ) + (byte*) render_next::screen_next_area#8 ← phi( render_next::@8/(byte*) render_next::screen_next_area#3 ) + (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#8 + (byte/signed byte/word/signed word/dword/signed dword) $24 + (byte) render_next::l#1 ← (byte) render_next::l#2 + rangenext(0,3) + (bool~) render_next::$9 ← (byte) render_next::l#1 != rangelast(0,3) if((bool~) render_next::$9) goto render_next::@5 to:render_next::@return render_next::@return: scope:[render_next] from render_next::@11 return to:@return @23: scope:[] from @14 - (byte) level_bcd#101 ? phi( @14/(byte) level_bcd#0 ) - (byte) level#109 ? phi( @14/(byte) level#0 ) - (dword) score_bcd#84 ? phi( @14/(dword) score_bcd#0 ) - (word) lines_bcd#88 ? phi( @14/(word) lines_bcd#0 ) - (byte) keyboard_modifiers#58 ? phi( @14/(byte) keyboard_modifiers#60 ) - (byte) keyboard_events_size#76 ? phi( @14/(byte) keyboard_events_size#79 ) - (byte) render_screen_showing#45 ? phi( @14/(byte) render_screen_showing#0 ) - (byte) game_over#88 ? phi( @14/(byte) game_over#0 ) - (byte) current_ypos#100 ? phi( @14/(byte) current_ypos#0 ) - (byte) current_xpos#124 ? phi( @14/(byte) current_xpos#0 ) - (byte*) current_piece_gfx#114 ? phi( @14/(byte*) current_piece_gfx#0 ) - (byte) current_piece_char#102 ? phi( @14/(byte) current_piece_char#0 ) - (byte) render_screen_render#62 ? phi( @14/(byte) render_screen_render#0 ) - (byte) render_screen_show#60 ? phi( @14/(byte) render_screen_show#0 ) + (byte) level_bcd#101 ← phi( @14/(byte) level_bcd#0 ) + (byte) level#109 ← phi( @14/(byte) level#0 ) + (dword) score_bcd#84 ← phi( @14/(dword) score_bcd#0 ) + (word) lines_bcd#88 ← phi( @14/(word) lines_bcd#0 ) + (byte) keyboard_modifiers#58 ← phi( @14/(byte) keyboard_modifiers#60 ) + (byte) keyboard_events_size#76 ← phi( @14/(byte) keyboard_events_size#79 ) + (byte) render_screen_showing#45 ← phi( @14/(byte) render_screen_showing#0 ) + (byte) game_over#88 ← phi( @14/(byte) game_over#0 ) + (byte) current_ypos#100 ← phi( @14/(byte) current_ypos#0 ) + (byte) current_xpos#124 ← phi( @14/(byte) current_xpos#0 ) + (byte*) current_piece_gfx#114 ← phi( @14/(byte*) current_piece_gfx#0 ) + (byte) current_piece_char#102 ← phi( @14/(byte) current_piece_char#0 ) + (byte) render_screen_render#62 ← phi( @14/(byte) render_screen_render#0 ) + (byte) render_screen_show#60 ← phi( @14/(byte) render_screen_show#0 ) kickasm(location (byte*) PLAYFIELD_SPRITES#0) {{ .var sprites = LoadPicture("playfield-sprites.png", List().add($010101, $000000)) // Put the sprites into memory .for(var sy=0;sy<10;sy++) { @@ -1197,2627 +1197,2627 @@ render_next::@return: scope:[render_next] from render_next::@11 }} to:@24 sprites_init: scope:[sprites_init] from main::@26 - *((byte*) SPRITES_ENABLE#0) ? (byte/signed byte/word/signed word/dword/signed dword) $f - *((byte*) SPRITES_MC#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) SPRITES_EXPAND_Y#0) ? *((byte*) SPRITES_MC#0) - *((byte*) SPRITES_EXPAND_X#0) ? *((byte*) SPRITES_EXPAND_Y#0) - (byte/signed byte/word/signed word/dword/signed dword~) sprites_init::$0 ? (byte/signed byte/word/signed word/dword/signed dword) $f * (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte/signed word/word/dword/signed dword/signed byte~) sprites_init::$1 ? (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte/signed byte/word/signed word/dword/signed dword~) sprites_init::$0 - (byte) sprites_init::xpos#0 ? (byte/signed word/word/dword/signed dword/signed byte~) sprites_init::$1 - (byte) sprites_init::s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) SPRITES_ENABLE#0) ← (byte/signed byte/word/signed word/dword/signed dword) $f + *((byte*) SPRITES_MC#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) SPRITES_EXPAND_Y#0) ← *((byte*) SPRITES_MC#0) + *((byte*) SPRITES_EXPAND_X#0) ← *((byte*) SPRITES_EXPAND_Y#0) + (byte/signed byte/word/signed word/dword/signed dword~) sprites_init::$0 ← (byte/signed byte/word/signed word/dword/signed dword) $f * (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte/signed word/word/dword/signed dword/signed byte~) sprites_init::$1 ← (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte/signed byte/word/signed word/dword/signed dword~) sprites_init::$0 + (byte) sprites_init::xpos#0 ← (byte/signed word/word/dword/signed dword/signed byte~) sprites_init::$1 + (byte) sprites_init::s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sprites_init::@1 sprites_init::@1: scope:[sprites_init] from sprites_init sprites_init::@1 - (byte) sprites_init::xpos#2 ? phi( sprites_init/(byte) sprites_init::xpos#0 sprites_init::@1/(byte) sprites_init::xpos#1 ) - (byte) sprites_init::s#2 ? phi( sprites_init/(byte) sprites_init::s#0 sprites_init::@1/(byte) sprites_init::s#1 ) - (byte~) sprites_init::$2 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) sprites_init::s2#0 ? (byte~) sprites_init::$2 - *((byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 - *((byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (byte) BLACK#0 - (byte/signed word/word/dword/signed dword~) sprites_init::$3 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte) sprites_init::xpos#1 ? (byte/signed word/word/dword/signed dword~) sprites_init::$3 - (byte) sprites_init::s#1 ? (byte) sprites_init::s#2 + rangenext(0,3) - (bool~) sprites_init::$4 ? (byte) sprites_init::s#1 != rangelast(0,3) + (byte) sprites_init::xpos#2 ← phi( sprites_init/(byte) sprites_init::xpos#0 sprites_init::@1/(byte) sprites_init::xpos#1 ) + (byte) sprites_init::s#2 ← phi( sprites_init/(byte) sprites_init::s#0 sprites_init::@1/(byte) sprites_init::s#1 ) + (byte~) sprites_init::$2 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sprites_init::s2#0 ← (byte~) sprites_init::$2 + *((byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 + *((byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (byte) BLACK#0 + (byte/signed word/word/dword/signed dword~) sprites_init::$3 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte) sprites_init::xpos#1 ← (byte/signed word/word/dword/signed dword~) sprites_init::$3 + (byte) sprites_init::s#1 ← (byte) sprites_init::s#2 + rangenext(0,3) + (bool~) sprites_init::$4 ← (byte) sprites_init::s#1 != rangelast(0,3) if((bool~) sprites_init::$4) goto sprites_init::@1 to:sprites_init::@return sprites_init::@return: scope:[sprites_init] from sprites_init::@1 return to:@return @24: scope:[] from @23 - (byte) level_bcd#96 ? phi( @23/(byte) level_bcd#101 ) - (byte) level#103 ? phi( @23/(byte) level#109 ) - (dword) score_bcd#80 ? phi( @23/(dword) score_bcd#84 ) - (word) lines_bcd#83 ? phi( @23/(word) lines_bcd#88 ) - (byte) keyboard_modifiers#55 ? phi( @23/(byte) keyboard_modifiers#58 ) - (byte) keyboard_events_size#71 ? phi( @23/(byte) keyboard_events_size#76 ) - (byte) render_screen_showing#42 ? phi( @23/(byte) render_screen_showing#45 ) - (byte) game_over#86 ? phi( @23/(byte) game_over#88 ) - (byte) current_ypos#97 ? phi( @23/(byte) current_ypos#100 ) - (byte) current_xpos#121 ? phi( @23/(byte) current_xpos#124 ) - (byte*) current_piece_gfx#111 ? phi( @23/(byte*) current_piece_gfx#114 ) - (byte) current_piece_char#99 ? phi( @23/(byte) current_piece_char#102 ) - (byte) render_screen_render#60 ? phi( @23/(byte) render_screen_render#62 ) - (byte) render_screen_show#57 ? phi( @23/(byte) render_screen_show#60 ) - (byte) SPRITES_FIRST_YPOS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte/signed word/word/dword/signed dword~) $4 ? (byte) SPRITES_FIRST_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) $13 - (byte) IRQ_RASTER_FIRST#0 ? (byte/signed word/word/dword/signed dword~) $4 - (byte) irq_raster_next#0 ? (byte) IRQ_RASTER_FIRST#0 - (byte/signed word/word/dword/signed dword~) $5 ? (byte) SPRITES_FIRST_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) irq_sprite_ypos#0 ? (byte/signed word/word/dword/signed dword~) $5 - (byte*) toSpritePtr1_sprite#0 ? (byte*) PLAYFIELD_SPRITES#0 + (byte) level_bcd#96 ← phi( @23/(byte) level_bcd#101 ) + (byte) level#103 ← phi( @23/(byte) level#109 ) + (dword) score_bcd#80 ← phi( @23/(dword) score_bcd#84 ) + (word) lines_bcd#83 ← phi( @23/(word) lines_bcd#88 ) + (byte) keyboard_modifiers#55 ← phi( @23/(byte) keyboard_modifiers#58 ) + (byte) keyboard_events_size#71 ← phi( @23/(byte) keyboard_events_size#76 ) + (byte) render_screen_showing#42 ← phi( @23/(byte) render_screen_showing#45 ) + (byte) game_over#86 ← phi( @23/(byte) game_over#88 ) + (byte) current_ypos#97 ← phi( @23/(byte) current_ypos#100 ) + (byte) current_xpos#121 ← phi( @23/(byte) current_xpos#124 ) + (byte*) current_piece_gfx#111 ← phi( @23/(byte*) current_piece_gfx#114 ) + (byte) current_piece_char#99 ← phi( @23/(byte) current_piece_char#102 ) + (byte) render_screen_render#60 ← phi( @23/(byte) render_screen_render#62 ) + (byte) render_screen_show#57 ← phi( @23/(byte) render_screen_show#60 ) + (byte) SPRITES_FIRST_YPOS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte/signed word/word/dword/signed dword~) $4 ← (byte) SPRITES_FIRST_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) $13 + (byte) IRQ_RASTER_FIRST#0 ← (byte/signed word/word/dword/signed dword~) $4 + (byte) irq_raster_next#0 ← (byte) IRQ_RASTER_FIRST#0 + (byte/signed word/word/dword/signed dword~) $5 ← (byte) SPRITES_FIRST_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) irq_sprite_ypos#0 ← (byte/signed word/word/dword/signed dword~) $5 + (byte*) toSpritePtr1_sprite#0 ← (byte*) PLAYFIELD_SPRITES#0 to:toSpritePtr1 toSpritePtr1: scope:[] from @24 - (byte) level_bcd#89 ? phi( @24/(byte) level_bcd#96 ) - (byte) level#96 ? phi( @24/(byte) level#103 ) - (dword) score_bcd#74 ? phi( @24/(dword) score_bcd#80 ) - (word) lines_bcd#77 ? phi( @24/(word) lines_bcd#83 ) - (byte) keyboard_modifiers#52 ? phi( @24/(byte) keyboard_modifiers#55 ) - (byte) keyboard_events_size#67 ? phi( @24/(byte) keyboard_events_size#71 ) - (byte) render_screen_showing#38 ? phi( @24/(byte) render_screen_showing#42 ) - (byte) game_over#81 ? phi( @24/(byte) game_over#86 ) - (byte) current_ypos#94 ? phi( @24/(byte) current_ypos#97 ) - (byte) current_xpos#118 ? phi( @24/(byte) current_xpos#121 ) - (byte*) current_piece_gfx#106 ? phi( @24/(byte*) current_piece_gfx#111 ) - (byte) current_piece_char#93 ? phi( @24/(byte) current_piece_char#99 ) - (byte) render_screen_render#57 ? phi( @24/(byte) render_screen_render#60 ) - (byte) render_screen_show#54 ? phi( @24/(byte) render_screen_show#57 ) - (byte) irq_raster_next#24 ? phi( @24/(byte) irq_raster_next#0 ) - (byte) irq_sprite_ypos#24 ? phi( @24/(byte) irq_sprite_ypos#0 ) - (byte*) toSpritePtr1_sprite#1 ? phi( @24/(byte*) toSpritePtr1_sprite#0 ) - (word) toSpritePtr1_$0#0 ? ((word)) (byte*) toSpritePtr1_sprite#1 - (word) toSpritePtr1_$1#0 ? (word) toSpritePtr1_$0#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) toSpritePtr1_$2#0 ? ((byte)) (word) toSpritePtr1_$1#0 - (byte) toSpritePtr1_return#0 ? (byte) toSpritePtr1_$2#0 + (byte) level_bcd#89 ← phi( @24/(byte) level_bcd#96 ) + (byte) level#96 ← phi( @24/(byte) level#103 ) + (dword) score_bcd#74 ← phi( @24/(dword) score_bcd#80 ) + (word) lines_bcd#77 ← phi( @24/(word) lines_bcd#83 ) + (byte) keyboard_modifiers#52 ← phi( @24/(byte) keyboard_modifiers#55 ) + (byte) keyboard_events_size#67 ← phi( @24/(byte) keyboard_events_size#71 ) + (byte) render_screen_showing#38 ← phi( @24/(byte) render_screen_showing#42 ) + (byte) game_over#81 ← phi( @24/(byte) game_over#86 ) + (byte) current_ypos#94 ← phi( @24/(byte) current_ypos#97 ) + (byte) current_xpos#118 ← phi( @24/(byte) current_xpos#121 ) + (byte*) current_piece_gfx#106 ← phi( @24/(byte*) current_piece_gfx#111 ) + (byte) current_piece_char#93 ← phi( @24/(byte) current_piece_char#99 ) + (byte) render_screen_render#57 ← phi( @24/(byte) render_screen_render#60 ) + (byte) render_screen_show#54 ← phi( @24/(byte) render_screen_show#57 ) + (byte) irq_raster_next#24 ← phi( @24/(byte) irq_raster_next#0 ) + (byte) irq_sprite_ypos#24 ← phi( @24/(byte) irq_sprite_ypos#0 ) + (byte*) toSpritePtr1_sprite#1 ← phi( @24/(byte*) toSpritePtr1_sprite#0 ) + (word) toSpritePtr1_$0#0 ← ((word)) (byte*) toSpritePtr1_sprite#1 + (word) toSpritePtr1_$1#0 ← (word) toSpritePtr1_$0#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) toSpritePtr1_$2#0 ← ((byte)) (word) toSpritePtr1_$1#0 + (byte) toSpritePtr1_return#0 ← (byte) toSpritePtr1_$2#0 to:toSpritePtr1_@return toSpritePtr1_@return: scope:[] from toSpritePtr1 - (byte) level_bcd#80 ? phi( toSpritePtr1/(byte) level_bcd#89 ) - (byte) level#87 ? phi( toSpritePtr1/(byte) level#96 ) - (dword) score_bcd#67 ? phi( toSpritePtr1/(dword) score_bcd#74 ) - (word) lines_bcd#70 ? phi( toSpritePtr1/(word) lines_bcd#77 ) - (byte) keyboard_modifiers#46 ? phi( toSpritePtr1/(byte) keyboard_modifiers#52 ) - (byte) keyboard_events_size#58 ? phi( toSpritePtr1/(byte) keyboard_events_size#67 ) - (byte) render_screen_showing#32 ? phi( toSpritePtr1/(byte) render_screen_showing#38 ) - (byte) game_over#72 ? phi( toSpritePtr1/(byte) game_over#81 ) - (byte) current_ypos#87 ? phi( toSpritePtr1/(byte) current_ypos#94 ) - (byte) current_xpos#111 ? phi( toSpritePtr1/(byte) current_xpos#118 ) - (byte*) current_piece_gfx#98 ? phi( toSpritePtr1/(byte*) current_piece_gfx#106 ) - (byte) current_piece_char#86 ? phi( toSpritePtr1/(byte) current_piece_char#93 ) - (byte) render_screen_render#52 ? phi( toSpritePtr1/(byte) render_screen_render#57 ) - (byte) render_screen_show#48 ? phi( toSpritePtr1/(byte) render_screen_show#54 ) - (byte) irq_raster_next#23 ? phi( toSpritePtr1/(byte) irq_raster_next#24 ) - (byte) irq_sprite_ypos#22 ? phi( toSpritePtr1/(byte) irq_sprite_ypos#24 ) - (byte) toSpritePtr1_return#2 ? phi( toSpritePtr1/(byte) toSpritePtr1_return#0 ) - (byte) toSpritePtr1_return#1 ? (byte) toSpritePtr1_return#2 + (byte) level_bcd#80 ← phi( toSpritePtr1/(byte) level_bcd#89 ) + (byte) level#87 ← phi( toSpritePtr1/(byte) level#96 ) + (dword) score_bcd#67 ← phi( toSpritePtr1/(dword) score_bcd#74 ) + (word) lines_bcd#70 ← phi( toSpritePtr1/(word) lines_bcd#77 ) + (byte) keyboard_modifiers#46 ← phi( toSpritePtr1/(byte) keyboard_modifiers#52 ) + (byte) keyboard_events_size#58 ← phi( toSpritePtr1/(byte) keyboard_events_size#67 ) + (byte) render_screen_showing#32 ← phi( toSpritePtr1/(byte) render_screen_showing#38 ) + (byte) game_over#72 ← phi( toSpritePtr1/(byte) game_over#81 ) + (byte) current_ypos#87 ← phi( toSpritePtr1/(byte) current_ypos#94 ) + (byte) current_xpos#111 ← phi( toSpritePtr1/(byte) current_xpos#118 ) + (byte*) current_piece_gfx#98 ← phi( toSpritePtr1/(byte*) current_piece_gfx#106 ) + (byte) current_piece_char#86 ← phi( toSpritePtr1/(byte) current_piece_char#93 ) + (byte) render_screen_render#52 ← phi( toSpritePtr1/(byte) render_screen_render#57 ) + (byte) render_screen_show#48 ← phi( toSpritePtr1/(byte) render_screen_show#54 ) + (byte) irq_raster_next#23 ← phi( toSpritePtr1/(byte) irq_raster_next#24 ) + (byte) irq_sprite_ypos#22 ← phi( toSpritePtr1/(byte) irq_sprite_ypos#24 ) + (byte) toSpritePtr1_return#2 ← phi( toSpritePtr1/(byte) toSpritePtr1_return#0 ) + (byte) toSpritePtr1_return#1 ← (byte) toSpritePtr1_return#2 to:@39 @39: scope:[] from toSpritePtr1_@return - (byte) level_bcd#70 ? phi( toSpritePtr1_@return/(byte) level_bcd#80 ) - (byte) level#74 ? phi( toSpritePtr1_@return/(byte) level#87 ) - (dword) score_bcd#58 ? phi( toSpritePtr1_@return/(dword) score_bcd#67 ) - (word) lines_bcd#60 ? phi( toSpritePtr1_@return/(word) lines_bcd#70 ) - (byte) keyboard_modifiers#39 ? phi( toSpritePtr1_@return/(byte) keyboard_modifiers#46 ) - (byte) keyboard_events_size#48 ? phi( toSpritePtr1_@return/(byte) keyboard_events_size#58 ) - (byte) render_screen_showing#27 ? phi( toSpritePtr1_@return/(byte) render_screen_showing#32 ) - (byte) game_over#59 ? phi( toSpritePtr1_@return/(byte) game_over#72 ) - (byte) current_ypos#77 ? phi( toSpritePtr1_@return/(byte) current_ypos#87 ) - (byte) current_xpos#100 ? phi( toSpritePtr1_@return/(byte) current_xpos#111 ) - (byte*) current_piece_gfx#84 ? phi( toSpritePtr1_@return/(byte*) current_piece_gfx#98 ) - (byte) current_piece_char#70 ? phi( toSpritePtr1_@return/(byte) current_piece_char#86 ) - (byte) render_screen_render#48 ? phi( toSpritePtr1_@return/(byte) render_screen_render#52 ) - (byte) render_screen_show#43 ? phi( toSpritePtr1_@return/(byte) render_screen_show#48 ) - (byte) irq_raster_next#22 ? phi( toSpritePtr1_@return/(byte) irq_raster_next#23 ) - (byte) irq_sprite_ypos#21 ? phi( toSpritePtr1_@return/(byte) irq_sprite_ypos#22 ) - (byte) toSpritePtr1_return#3 ? phi( toSpritePtr1_@return/(byte) toSpritePtr1_return#1 ) - (byte~) $6 ? (byte) toSpritePtr1_return#3 - (byte/signed word/word/dword/signed dword~) $7 ? (byte~) $6 + (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) irq_sprite_ptr#0 ? (byte/signed word/word/dword/signed dword~) $7 - (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level_bcd#70 ← phi( toSpritePtr1_@return/(byte) level_bcd#80 ) + (byte) level#74 ← phi( toSpritePtr1_@return/(byte) level#87 ) + (dword) score_bcd#58 ← phi( toSpritePtr1_@return/(dword) score_bcd#67 ) + (word) lines_bcd#60 ← phi( toSpritePtr1_@return/(word) lines_bcd#70 ) + (byte) keyboard_modifiers#39 ← phi( toSpritePtr1_@return/(byte) keyboard_modifiers#46 ) + (byte) keyboard_events_size#48 ← phi( toSpritePtr1_@return/(byte) keyboard_events_size#58 ) + (byte) render_screen_showing#27 ← phi( toSpritePtr1_@return/(byte) render_screen_showing#32 ) + (byte) game_over#59 ← phi( toSpritePtr1_@return/(byte) game_over#72 ) + (byte) current_ypos#77 ← phi( toSpritePtr1_@return/(byte) current_ypos#87 ) + (byte) current_xpos#100 ← phi( toSpritePtr1_@return/(byte) current_xpos#111 ) + (byte*) current_piece_gfx#84 ← phi( toSpritePtr1_@return/(byte*) current_piece_gfx#98 ) + (byte) current_piece_char#70 ← phi( toSpritePtr1_@return/(byte) current_piece_char#86 ) + (byte) render_screen_render#48 ← phi( toSpritePtr1_@return/(byte) render_screen_render#52 ) + (byte) render_screen_show#43 ← phi( toSpritePtr1_@return/(byte) render_screen_show#48 ) + (byte) irq_raster_next#22 ← phi( toSpritePtr1_@return/(byte) irq_raster_next#23 ) + (byte) irq_sprite_ypos#21 ← phi( toSpritePtr1_@return/(byte) irq_sprite_ypos#22 ) + (byte) toSpritePtr1_return#3 ← phi( toSpritePtr1_@return/(byte) toSpritePtr1_return#1 ) + (byte~) $6 ← (byte) toSpritePtr1_return#3 + (byte/signed word/word/dword/signed dword~) $7 ← (byte~) $6 + (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) irq_sprite_ptr#0 ← (byte/signed word/word/dword/signed dword~) $7 + (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@26 sprites_irq_init: scope:[sprites_irq_init] from main::@27 asm { sei } - *((byte*) IRQ_STATUS#0) ? (byte) IRQ_RASTER#0 + *((byte*) IRQ_STATUS#0) ← (byte) IRQ_RASTER#0 asm { ldaCIA1_INTERRUPT } - *((byte*) PROCPORT_DDR#0) ? (byte) PROCPORT_DDR_MEMORY_MASK#0 - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_IO#0 - *((byte*) CIA1_INTERRUPT#0) ? (byte) CIA_INTERRUPT_CLEAR#0 - *((byte*) VIC_CONTROL#0) ? *((byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f - *((byte*) RASTER#0) ? (byte) IRQ_RASTER_FIRST#0 - *((byte*) IRQ_ENABLE#0) ? (byte) IRQ_RASTER#0 - (void()*~) sprites_irq_init::$0 ? & interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() - *((void()**) HARDWARE_IRQ#0) ? (void()*~) sprites_irq_init::$0 + *((byte*) PROCPORT_DDR#0) ← (byte) PROCPORT_DDR_MEMORY_MASK#0 + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0 + *((byte*) CIA1_INTERRUPT#0) ← (byte) CIA_INTERRUPT_CLEAR#0 + *((byte*) VIC_CONTROL#0) ← *((byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f + *((byte*) RASTER#0) ← (byte) IRQ_RASTER_FIRST#0 + *((byte*) IRQ_ENABLE#0) ← (byte) IRQ_RASTER#0 + (void()*~) sprites_irq_init::$0 ← & interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() + *((void()**) HARDWARE_IRQ#0) ← (void()*~) sprites_irq_init::$0 asm { cli } to:sprites_irq_init::@return sprites_irq_init::@return: scope:[sprites_irq_init] from sprites_irq_init return to:@return sprites_irq: scope:[sprites_irq] from - (byte) irq_cnt#15 ? phi( @38/(byte) irq_cnt#17 ) - (byte) render_screen_showing#15 ? phi( @38/(byte) render_screen_showing#14 ) - (byte) irq_sprite_ptr#12 ? phi( @38/(byte) irq_sprite_ptr#14 ) - (byte) irq_raster_next#5 ? phi( @38/(byte) irq_raster_next#10 ) - (byte) irq_sprite_ypos#5 ? phi( @38/(byte) irq_sprite_ypos#9 ) + (byte) irq_cnt#15 ← phi( @38/(byte) irq_cnt#17 ) + (byte) render_screen_showing#15 ← phi( @38/(byte) render_screen_showing#14 ) + (byte) irq_sprite_ptr#12 ← phi( @38/(byte) irq_sprite_ptr#14 ) + (byte) irq_raster_next#5 ← phi( @38/(byte) irq_raster_next#10 ) + (byte) irq_sprite_ypos#5 ← phi( @38/(byte) irq_sprite_ypos#9 ) asm { cld } - (byte) sprites_irq::ypos#0 ? (byte) irq_sprite_ypos#5 - *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte) sprites_irq::ypos#0 - *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ypos#0 - *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 4) ? (byte) sprites_irq::ypos#0 - *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 6) ? (byte) sprites_irq::ypos#0 - (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ? (byte) irq_raster_next#5 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) sprites_irq::raster_sprite_gfx_modify#0 ? (byte/signed word/word/dword/signed dword~) sprites_irq::$0 + (byte) sprites_irq::ypos#0 ← (byte) irq_sprite_ypos#5 + *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) sprites_irq::ypos#0 + *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ypos#0 + *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 4) ← (byte) sprites_irq::ypos#0 + *((byte*) SPRITES_YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 6) ← (byte) sprites_irq::ypos#0 + (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ← (byte) irq_raster_next#5 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sprites_irq::raster_sprite_gfx_modify#0 ← (byte/signed word/word/dword/signed dword~) sprites_irq::$0 to:sprites_irq::@11 sprites_irq::@11: scope:[sprites_irq] from sprites_irq sprites_irq::@11 - (byte) irq_sprite_ypos#23 ? phi( sprites_irq/(byte) irq_sprite_ypos#5 sprites_irq::@11/(byte) irq_sprite_ypos#23 ) - (byte) irq_raster_next#21 ? phi( sprites_irq/(byte) irq_raster_next#5 sprites_irq::@11/(byte) irq_raster_next#21 ) - (byte) irq_cnt#13 ? phi( sprites_irq/(byte) irq_cnt#15 sprites_irq::@11/(byte) irq_cnt#13 ) - (byte) render_screen_showing#11 ? phi( sprites_irq/(byte) render_screen_showing#15 sprites_irq::@11/(byte) render_screen_showing#11 ) - (byte) irq_sprite_ptr#9 ? phi( sprites_irq/(byte) irq_sprite_ptr#12 sprites_irq::@11/(byte) irq_sprite_ptr#9 ) - (byte) sprites_irq::raster_sprite_gfx_modify#1 ? phi( sprites_irq/(byte) sprites_irq::raster_sprite_gfx_modify#0 sprites_irq::@11/(byte) sprites_irq::raster_sprite_gfx_modify#1 ) - (bool~) sprites_irq::$4 ? *((byte*) RASTER#0) < (byte) sprites_irq::raster_sprite_gfx_modify#1 + (byte) irq_sprite_ypos#23 ← phi( sprites_irq/(byte) irq_sprite_ypos#5 sprites_irq::@11/(byte) irq_sprite_ypos#23 ) + (byte) irq_raster_next#21 ← phi( sprites_irq/(byte) irq_raster_next#5 sprites_irq::@11/(byte) irq_raster_next#21 ) + (byte) irq_cnt#13 ← phi( sprites_irq/(byte) irq_cnt#15 sprites_irq::@11/(byte) irq_cnt#13 ) + (byte) render_screen_showing#11 ← phi( sprites_irq/(byte) render_screen_showing#15 sprites_irq::@11/(byte) render_screen_showing#11 ) + (byte) irq_sprite_ptr#9 ← phi( sprites_irq/(byte) irq_sprite_ptr#12 sprites_irq::@11/(byte) irq_sprite_ptr#9 ) + (byte) sprites_irq::raster_sprite_gfx_modify#1 ← phi( sprites_irq/(byte) sprites_irq::raster_sprite_gfx_modify#0 sprites_irq::@11/(byte) sprites_irq::raster_sprite_gfx_modify#1 ) + (bool~) sprites_irq::$4 ← *((byte*) RASTER#0) < (byte) sprites_irq::raster_sprite_gfx_modify#1 if((bool~) sprites_irq::$4) goto sprites_irq::@11 to:sprites_irq::@12 sprites_irq::@12: scope:[sprites_irq] from sprites_irq::@11 - (byte) irq_sprite_ypos#19 ? phi( sprites_irq::@11/(byte) irq_sprite_ypos#23 ) - (byte) irq_raster_next#18 ? phi( sprites_irq::@11/(byte) irq_raster_next#21 ) - (byte) irq_cnt#10 ? phi( sprites_irq::@11/(byte) irq_cnt#13 ) - (byte) render_screen_showing#7 ? phi( sprites_irq::@11/(byte) render_screen_showing#11 ) - (byte) irq_sprite_ptr#5 ? phi( sprites_irq::@11/(byte) irq_sprite_ptr#9 ) - (byte) sprites_irq::ptr#0 ? (byte) irq_sprite_ptr#5 - (bool~) sprites_irq::$1 ? (byte) render_screen_showing#7 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) irq_sprite_ypos#19 ← phi( sprites_irq::@11/(byte) irq_sprite_ypos#23 ) + (byte) irq_raster_next#18 ← phi( sprites_irq::@11/(byte) irq_raster_next#21 ) + (byte) irq_cnt#10 ← phi( sprites_irq::@11/(byte) irq_cnt#13 ) + (byte) render_screen_showing#7 ← phi( sprites_irq::@11/(byte) render_screen_showing#11 ) + (byte) irq_sprite_ptr#5 ← phi( sprites_irq::@11/(byte) irq_sprite_ptr#9 ) + (byte) sprites_irq::ptr#0 ← (byte) irq_sprite_ptr#5 + (bool~) sprites_irq::$1 ← (byte) render_screen_showing#7 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) sprites_irq::$1) goto sprites_irq::@1 to:sprites_irq::@13 sprites_irq::@1: scope:[sprites_irq] from sprites_irq::@12 - (byte) irq_sprite_ptr#15 ? phi( sprites_irq::@12/(byte) irq_sprite_ptr#5 ) - (byte) irq_sprite_ypos#15 ? phi( sprites_irq::@12/(byte) irq_sprite_ypos#19 ) - (byte) irq_raster_next#14 ? phi( sprites_irq::@12/(byte) irq_raster_next#18 ) - (byte) irq_cnt#7 ? phi( sprites_irq::@12/(byte) irq_cnt#10 ) - (byte) sprites_irq::ptr#5 ? phi( sprites_irq::@12/(byte) sprites_irq::ptr#0 ) - *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte) sprites_irq::ptr#5 - (byte) sprites_irq::ptr#1 ? ++ (byte) sprites_irq::ptr#5 - *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#1 - *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#1 - (byte) sprites_irq::ptr#2 ? ++ (byte) sprites_irq::ptr#1 - *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#2 + (byte) irq_sprite_ptr#15 ← phi( sprites_irq::@12/(byte) irq_sprite_ptr#5 ) + (byte) irq_sprite_ypos#15 ← phi( sprites_irq::@12/(byte) irq_sprite_ypos#19 ) + (byte) irq_raster_next#14 ← phi( sprites_irq::@12/(byte) irq_raster_next#18 ) + (byte) irq_cnt#7 ← phi( sprites_irq::@12/(byte) irq_cnt#10 ) + (byte) sprites_irq::ptr#5 ← phi( sprites_irq::@12/(byte) sprites_irq::ptr#0 ) + *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) sprites_irq::ptr#5 + (byte) sprites_irq::ptr#1 ← ++ (byte) sprites_irq::ptr#5 + *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#1 + *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#1 + (byte) sprites_irq::ptr#2 ← ++ (byte) sprites_irq::ptr#1 + *((byte*) PLAYFIELD_SPRITE_PTRS_1#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#2 to:sprites_irq::@2 sprites_irq::@13: scope:[sprites_irq] from sprites_irq::@12 - (byte) irq_sprite_ptr#16 ? phi( sprites_irq::@12/(byte) irq_sprite_ptr#5 ) - (byte) irq_sprite_ypos#16 ? phi( sprites_irq::@12/(byte) irq_sprite_ypos#19 ) - (byte) irq_raster_next#15 ? phi( sprites_irq::@12/(byte) irq_raster_next#18 ) - (byte) irq_cnt#8 ? phi( sprites_irq::@12/(byte) irq_cnt#10 ) - (byte) sprites_irq::ptr#6 ? phi( sprites_irq::@12/(byte) sprites_irq::ptr#0 ) - *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte) sprites_irq::ptr#6 - (byte) sprites_irq::ptr#3 ? ++ (byte) sprites_irq::ptr#6 - *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#3 - *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#3 - (byte) sprites_irq::ptr#4 ? ++ (byte) sprites_irq::ptr#3 - *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#4 + (byte) irq_sprite_ptr#16 ← phi( sprites_irq::@12/(byte) irq_sprite_ptr#5 ) + (byte) irq_sprite_ypos#16 ← phi( sprites_irq::@12/(byte) irq_sprite_ypos#19 ) + (byte) irq_raster_next#15 ← phi( sprites_irq::@12/(byte) irq_raster_next#18 ) + (byte) irq_cnt#8 ← phi( sprites_irq::@12/(byte) irq_cnt#10 ) + (byte) sprites_irq::ptr#6 ← phi( sprites_irq::@12/(byte) sprites_irq::ptr#0 ) + *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte) sprites_irq::ptr#6 + (byte) sprites_irq::ptr#3 ← ++ (byte) sprites_irq::ptr#6 + *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#3 + *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#3 + (byte) sprites_irq::ptr#4 ← ++ (byte) sprites_irq::ptr#3 + *((byte*) PLAYFIELD_SPRITE_PTRS_2#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#4 to:sprites_irq::@2 sprites_irq::@2: scope:[sprites_irq] from sprites_irq::@1 sprites_irq::@13 - (byte) irq_sprite_ptr#13 ? phi( sprites_irq::@1/(byte) irq_sprite_ptr#15 sprites_irq::@13/(byte) irq_sprite_ptr#16 ) - (byte) irq_sprite_ypos#12 ? phi( sprites_irq::@1/(byte) irq_sprite_ypos#15 sprites_irq::@13/(byte) irq_sprite_ypos#16 ) - (byte) irq_raster_next#11 ? phi( sprites_irq::@1/(byte) irq_raster_next#14 sprites_irq::@13/(byte) irq_raster_next#15 ) - (byte) irq_cnt#4 ? phi( sprites_irq::@1/(byte) irq_cnt#7 sprites_irq::@13/(byte) irq_cnt#8 ) - (byte) irq_cnt#1 ? ++ (byte) irq_cnt#4 - (bool~) sprites_irq::$2 ? (byte) irq_cnt#1 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) irq_sprite_ptr#13 ← phi( sprites_irq::@1/(byte) irq_sprite_ptr#15 sprites_irq::@13/(byte) irq_sprite_ptr#16 ) + (byte) irq_sprite_ypos#12 ← phi( sprites_irq::@1/(byte) irq_sprite_ypos#15 sprites_irq::@13/(byte) irq_sprite_ypos#16 ) + (byte) irq_raster_next#11 ← phi( sprites_irq::@1/(byte) irq_raster_next#14 sprites_irq::@13/(byte) irq_raster_next#15 ) + (byte) irq_cnt#4 ← phi( sprites_irq::@1/(byte) irq_cnt#7 sprites_irq::@13/(byte) irq_cnt#8 ) + (byte) irq_cnt#1 ← ++ (byte) irq_cnt#4 + (bool~) sprites_irq::$2 ← (byte) irq_cnt#1 == (byte/signed byte/word/signed word/dword/signed dword) 9 if((bool~) sprites_irq::$2) goto sprites_irq::@3 to:sprites_irq::@7 sprites_irq::@3: scope:[sprites_irq] from sprites_irq::@2 - (byte) irq_cnt#18 ? phi( sprites_irq::@2/(byte) irq_cnt#1 ) - (byte) irq_raster_next#6 ? phi( sprites_irq::@2/(byte) irq_raster_next#11 ) - (byte) irq_raster_next#1 ? (byte) irq_raster_next#6 + (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) irq_sprite_ypos#1 ? (byte) SPRITES_FIRST_YPOS#0 - (byte*) sprites_irq::toSpritePtr2_sprite#0 ? (byte*) PLAYFIELD_SPRITES#0 + (byte) irq_cnt#18 ← phi( sprites_irq::@2/(byte) irq_cnt#1 ) + (byte) irq_raster_next#6 ← phi( sprites_irq::@2/(byte) irq_raster_next#11 ) + (byte) irq_raster_next#1 ← (byte) irq_raster_next#6 + (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) irq_sprite_ypos#1 ← (byte) SPRITES_FIRST_YPOS#0 + (byte*) sprites_irq::toSpritePtr2_sprite#0 ← (byte*) PLAYFIELD_SPRITES#0 to:sprites_irq::toSpritePtr2 sprites_irq::toSpritePtr2: scope:[sprites_irq] from sprites_irq::@3 - (byte) irq_sprite_ypos#20 ? phi( sprites_irq::@3/(byte) irq_sprite_ypos#1 ) - (byte) irq_cnt#16 ? phi( sprites_irq::@3/(byte) irq_cnt#18 ) - (byte) irq_raster_next#19 ? phi( sprites_irq::@3/(byte) irq_raster_next#1 ) - (byte*) sprites_irq::toSpritePtr2_sprite#1 ? phi( sprites_irq::@3/(byte*) sprites_irq::toSpritePtr2_sprite#0 ) - (word) sprites_irq::toSpritePtr2_$0#0 ? ((word)) (byte*) sprites_irq::toSpritePtr2_sprite#1 - (word) sprites_irq::toSpritePtr2_$1#0 ? (word) sprites_irq::toSpritePtr2_$0#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) sprites_irq::toSpritePtr2_$2#0 ? ((byte)) (word) sprites_irq::toSpritePtr2_$1#0 - (byte) sprites_irq::toSpritePtr2_return#0 ? (byte) sprites_irq::toSpritePtr2_$2#0 + (byte) irq_sprite_ypos#20 ← phi( sprites_irq::@3/(byte) irq_sprite_ypos#1 ) + (byte) irq_cnt#16 ← phi( sprites_irq::@3/(byte) irq_cnt#18 ) + (byte) irq_raster_next#19 ← phi( sprites_irq::@3/(byte) irq_raster_next#1 ) + (byte*) sprites_irq::toSpritePtr2_sprite#1 ← phi( sprites_irq::@3/(byte*) sprites_irq::toSpritePtr2_sprite#0 ) + (word) sprites_irq::toSpritePtr2_$0#0 ← ((word)) (byte*) sprites_irq::toSpritePtr2_sprite#1 + (word) sprites_irq::toSpritePtr2_$1#0 ← (word) sprites_irq::toSpritePtr2_$0#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) sprites_irq::toSpritePtr2_$2#0 ← ((byte)) (word) sprites_irq::toSpritePtr2_$1#0 + (byte) sprites_irq::toSpritePtr2_return#0 ← (byte) sprites_irq::toSpritePtr2_$2#0 to:sprites_irq::toSpritePtr2_@return sprites_irq::toSpritePtr2_@return: scope:[sprites_irq] from sprites_irq::toSpritePtr2 - (byte) irq_sprite_ypos#17 ? phi( sprites_irq::toSpritePtr2/(byte) irq_sprite_ypos#20 ) - (byte) irq_cnt#14 ? phi( sprites_irq::toSpritePtr2/(byte) irq_cnt#16 ) - (byte) irq_raster_next#16 ? phi( sprites_irq::toSpritePtr2/(byte) irq_raster_next#19 ) - (byte) sprites_irq::toSpritePtr2_return#2 ? phi( sprites_irq::toSpritePtr2/(byte) sprites_irq::toSpritePtr2_return#0 ) - (byte) sprites_irq::toSpritePtr2_return#1 ? (byte) sprites_irq::toSpritePtr2_return#2 + (byte) irq_sprite_ypos#17 ← phi( sprites_irq::toSpritePtr2/(byte) irq_sprite_ypos#20 ) + (byte) irq_cnt#14 ← phi( sprites_irq::toSpritePtr2/(byte) irq_cnt#16 ) + (byte) irq_raster_next#16 ← phi( sprites_irq::toSpritePtr2/(byte) irq_raster_next#19 ) + (byte) sprites_irq::toSpritePtr2_return#2 ← phi( sprites_irq::toSpritePtr2/(byte) sprites_irq::toSpritePtr2_return#0 ) + (byte) sprites_irq::toSpritePtr2_return#1 ← (byte) sprites_irq::toSpritePtr2_return#2 to:sprites_irq::@15 sprites_irq::@15: scope:[sprites_irq] from sprites_irq::toSpritePtr2_@return - (byte) irq_sprite_ypos#13 ? phi( sprites_irq::toSpritePtr2_@return/(byte) irq_sprite_ypos#17 ) - (byte) irq_cnt#11 ? phi( sprites_irq::toSpritePtr2_@return/(byte) irq_cnt#14 ) - (byte) irq_raster_next#13 ? phi( sprites_irq::toSpritePtr2_@return/(byte) irq_raster_next#16 ) - (byte) sprites_irq::toSpritePtr2_return#3 ? phi( sprites_irq::toSpritePtr2_@return/(byte) sprites_irq::toSpritePtr2_return#1 ) - (byte~) sprites_irq::$5 ? (byte) sprites_irq::toSpritePtr2_return#3 - (byte) irq_sprite_ptr#1 ? (byte~) sprites_irq::$5 + (byte) irq_sprite_ypos#13 ← phi( sprites_irq::toSpritePtr2_@return/(byte) irq_sprite_ypos#17 ) + (byte) irq_cnt#11 ← phi( sprites_irq::toSpritePtr2_@return/(byte) irq_cnt#14 ) + (byte) irq_raster_next#13 ← phi( sprites_irq::toSpritePtr2_@return/(byte) irq_raster_next#16 ) + (byte) sprites_irq::toSpritePtr2_return#3 ← phi( sprites_irq::toSpritePtr2_@return/(byte) sprites_irq::toSpritePtr2_return#1 ) + (byte~) sprites_irq::$5 ← (byte) sprites_irq::toSpritePtr2_return#3 + (byte) irq_sprite_ptr#1 ← (byte~) sprites_irq::$5 to:sprites_irq::@6 sprites_irq::@7: scope:[sprites_irq] from sprites_irq::@2 - (byte) irq_raster_next#12 ? phi( sprites_irq::@2/(byte) irq_raster_next#11 ) - (byte) irq_sprite_ptr#10 ? phi( sprites_irq::@2/(byte) irq_sprite_ptr#13 ) - (byte) irq_sprite_ypos#10 ? phi( sprites_irq::@2/(byte) irq_sprite_ypos#12 ) - (byte) irq_cnt#5 ? phi( sprites_irq::@2/(byte) irq_cnt#1 ) - (bool~) sprites_irq::$3 ? (byte) irq_cnt#5 == (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) irq_raster_next#12 ← phi( sprites_irq::@2/(byte) irq_raster_next#11 ) + (byte) irq_sprite_ptr#10 ← phi( sprites_irq::@2/(byte) irq_sprite_ptr#13 ) + (byte) irq_sprite_ypos#10 ← phi( sprites_irq::@2/(byte) irq_sprite_ypos#12 ) + (byte) irq_cnt#5 ← phi( sprites_irq::@2/(byte) irq_cnt#1 ) + (bool~) sprites_irq::$3 ← (byte) irq_cnt#5 == (byte/signed byte/word/signed word/dword/signed dword) $a if((bool~) sprites_irq::$3) goto sprites_irq::@4 to:sprites_irq::@8 sprites_irq::@4: scope:[sprites_irq] from sprites_irq::@7 - (byte) irq_sprite_ptr#6 ? phi( sprites_irq::@7/(byte) irq_sprite_ptr#10 ) - (byte) irq_sprite_ypos#6 ? phi( sprites_irq::@7/(byte) irq_sprite_ypos#10 ) - (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) irq_raster_next#2 ? (byte) IRQ_RASTER_FIRST#0 - (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#6 + (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#6 + (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) irq_sprite_ptr#6 ← phi( sprites_irq::@7/(byte) irq_sprite_ptr#10 ) + (byte) irq_sprite_ypos#6 ← phi( sprites_irq::@7/(byte) irq_sprite_ypos#10 ) + (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) irq_raster_next#2 ← (byte) IRQ_RASTER_FIRST#0 + (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#6 + (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#6 + (byte/signed byte/word/signed word/dword/signed dword) 3 to:sprites_irq::@6 sprites_irq::@8: scope:[sprites_irq] from sprites_irq::@7 - (byte) irq_cnt#12 ? phi( sprites_irq::@7/(byte) irq_cnt#5 ) - (byte) irq_sprite_ptr#7 ? phi( sprites_irq::@7/(byte) irq_sprite_ptr#10 ) - (byte) irq_sprite_ypos#7 ? phi( sprites_irq::@7/(byte) irq_sprite_ypos#10 ) - (byte) irq_raster_next#7 ? phi( sprites_irq::@7/(byte) irq_raster_next#12 ) - (byte) irq_raster_next#3 ? (byte) irq_raster_next#7 + (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#7 + (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#7 + (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) irq_cnt#12 ← phi( sprites_irq::@7/(byte) irq_cnt#5 ) + (byte) irq_sprite_ptr#7 ← phi( sprites_irq::@7/(byte) irq_sprite_ptr#10 ) + (byte) irq_sprite_ypos#7 ← phi( sprites_irq::@7/(byte) irq_sprite_ypos#10 ) + (byte) irq_raster_next#7 ← phi( sprites_irq::@7/(byte) irq_raster_next#12 ) + (byte) irq_raster_next#3 ← (byte) irq_raster_next#7 + (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#7 + (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#7 + (byte/signed byte/word/signed word/dword/signed dword) 3 to:sprites_irq::@6 sprites_irq::@6: scope:[sprites_irq] from sprites_irq::@15 sprites_irq::@4 sprites_irq::@8 - (byte) irq_sprite_ptr#11 ? phi( sprites_irq::@15/(byte) irq_sprite_ptr#1 sprites_irq::@4/(byte) irq_sprite_ptr#2 sprites_irq::@8/(byte) irq_sprite_ptr#3 ) - (byte) irq_sprite_ypos#11 ? phi( sprites_irq::@15/(byte) irq_sprite_ypos#13 sprites_irq::@4/(byte) irq_sprite_ypos#2 sprites_irq::@8/(byte) irq_sprite_ypos#3 ) - (byte) irq_cnt#9 ? phi( sprites_irq::@15/(byte) irq_cnt#11 sprites_irq::@4/(byte) irq_cnt#2 sprites_irq::@8/(byte) irq_cnt#12 ) - (byte) irq_raster_next#8 ? phi( sprites_irq::@15/(byte) irq_raster_next#13 sprites_irq::@4/(byte) irq_raster_next#2 sprites_irq::@8/(byte) irq_raster_next#3 ) - *((byte*) RASTER#0) ? (byte) irq_raster_next#8 - *((byte*) IRQ_STATUS#0) ? (byte) IRQ_RASTER#0 + (byte) irq_sprite_ptr#11 ← phi( sprites_irq::@15/(byte) irq_sprite_ptr#1 sprites_irq::@4/(byte) irq_sprite_ptr#2 sprites_irq::@8/(byte) irq_sprite_ptr#3 ) + (byte) irq_sprite_ypos#11 ← phi( sprites_irq::@15/(byte) irq_sprite_ypos#13 sprites_irq::@4/(byte) irq_sprite_ypos#2 sprites_irq::@8/(byte) irq_sprite_ypos#3 ) + (byte) irq_cnt#9 ← phi( sprites_irq::@15/(byte) irq_cnt#11 sprites_irq::@4/(byte) irq_cnt#2 sprites_irq::@8/(byte) irq_cnt#12 ) + (byte) irq_raster_next#8 ← phi( sprites_irq::@15/(byte) irq_raster_next#13 sprites_irq::@4/(byte) irq_raster_next#2 sprites_irq::@8/(byte) irq_raster_next#3 ) + *((byte*) RASTER#0) ← (byte) irq_raster_next#8 + *((byte*) IRQ_STATUS#0) ← (byte) IRQ_RASTER#0 to:sprites_irq::@return sprites_irq::@return: scope:[sprites_irq] from sprites_irq::@6 - (byte) irq_sprite_ptr#8 ? phi( sprites_irq::@6/(byte) irq_sprite_ptr#11 ) - (byte) irq_sprite_ypos#8 ? phi( sprites_irq::@6/(byte) irq_sprite_ypos#11 ) - (byte) irq_raster_next#9 ? phi( sprites_irq::@6/(byte) irq_raster_next#8 ) - (byte) irq_cnt#6 ? phi( sprites_irq::@6/(byte) irq_cnt#9 ) - (byte) irq_cnt#3 ? (byte) irq_cnt#6 - (byte) irq_raster_next#4 ? (byte) irq_raster_next#9 - (byte) irq_sprite_ypos#4 ? (byte) irq_sprite_ypos#8 - (byte) irq_sprite_ptr#4 ? (byte) irq_sprite_ptr#8 + (byte) irq_sprite_ptr#8 ← phi( sprites_irq::@6/(byte) irq_sprite_ptr#11 ) + (byte) irq_sprite_ypos#8 ← phi( sprites_irq::@6/(byte) irq_sprite_ypos#11 ) + (byte) irq_raster_next#9 ← phi( sprites_irq::@6/(byte) irq_raster_next#8 ) + (byte) irq_cnt#6 ← phi( sprites_irq::@6/(byte) irq_cnt#9 ) + (byte) irq_cnt#3 ← (byte) irq_cnt#6 + (byte) irq_raster_next#4 ← (byte) irq_raster_next#9 + (byte) irq_sprite_ypos#4 ← (byte) irq_sprite_ypos#8 + (byte) irq_sprite_ptr#4 ← (byte) irq_sprite_ptr#8 return to:@return @26: scope:[] from @39 - (byte) irq_cnt#20 ? phi( @39/(byte) irq_cnt#0 ) - (byte) irq_sprite_ptr#18 ? phi( @39/(byte) irq_sprite_ptr#0 ) - (byte) level_bcd#63 ? phi( @39/(byte) level_bcd#70 ) - (byte) level#66 ? phi( @39/(byte) level#74 ) - (dword) score_bcd#53 ? phi( @39/(dword) score_bcd#58 ) - (word) lines_bcd#53 ? phi( @39/(word) lines_bcd#60 ) - (byte) keyboard_modifiers#34 ? phi( @39/(byte) keyboard_modifiers#39 ) - (byte) keyboard_events_size#40 ? phi( @39/(byte) keyboard_events_size#48 ) - (byte) render_screen_showing#21 ? phi( @39/(byte) render_screen_showing#27 ) - (byte) game_over#51 ? phi( @39/(byte) game_over#59 ) - (byte) current_ypos#69 ? phi( @39/(byte) current_ypos#77 ) - (byte) current_xpos#88 ? phi( @39/(byte) current_xpos#100 ) - (byte*) current_piece_gfx#72 ? phi( @39/(byte*) current_piece_gfx#84 ) - (byte) current_piece_char#58 ? phi( @39/(byte) current_piece_char#70 ) - (byte) render_screen_render#43 ? phi( @39/(byte) render_screen_render#48 ) - (byte) render_screen_show#35 ? phi( @39/(byte) render_screen_show#43 ) - (byte) irq_raster_next#20 ? phi( @39/(byte) irq_raster_next#22 ) - (byte) irq_sprite_ypos#18 ? phi( @39/(byte) irq_sprite_ypos#21 ) - (byte/signed byte/word/signed word/dword/signed dword~) $8 ? (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte/signed word/word/dword/signed dword/signed byte~) $9 ? (byte/signed byte/word/signed word/dword/signed dword~) $8 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte[$9]) PIECE_T#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte/signed byte/word/signed word/dword/signed dword~) $10 ? (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte/signed word/word/dword/signed dword/signed byte~) $11 ? (byte/signed byte/word/signed word/dword/signed dword~) $10 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte[$11]) PIECE_S#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte/signed byte/word/signed word/dword/signed dword~) $12 ? (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte/signed word/word/dword/signed dword/signed byte~) $13 ? (byte/signed byte/word/signed word/dword/signed dword~) $12 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte[$13]) PIECE_Z#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte/signed byte/word/signed word/dword/signed dword~) $14 ? (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte/signed word/word/dword/signed dword/signed byte~) $15 ? (byte/signed byte/word/signed word/dword/signed dword~) $14 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte[$15]) PIECE_L#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte/signed byte/word/signed word/dword/signed dword~) $16 ? (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte/signed word/word/dword/signed dword/signed byte~) $17 ? (byte/signed byte/word/signed word/dword/signed dword~) $16 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte[$17]) PIECE_J#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte/signed byte/word/signed word/dword/signed dword~) $18 ? (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte/signed word/word/dword/signed dword/signed byte~) $19 ? (byte/signed byte/word/signed word/dword/signed dword~) $18 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte[$19]) PIECE_O#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte/signed byte/word/signed word/dword/signed dword~) $20 ? (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte/signed word/word/dword/signed dword/signed byte~) $21 ? (byte/signed byte/word/signed word/dword/signed dword~) $20 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte[$21]) PIECE_I#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (word~) $22 ? ((word)) (byte[$9]) PIECE_T#0 - (word~) $23 ? ((word)) (byte[$11]) PIECE_S#0 - (word~) $24 ? ((word)) (byte[$13]) PIECE_Z#0 - (word~) $25 ? ((word)) (byte[$17]) PIECE_J#0 - (word~) $26 ? ((word)) (byte[$19]) PIECE_O#0 - (word~) $27 ? ((word)) (byte[$21]) PIECE_I#0 - (word~) $28 ? ((word)) (byte[$15]) PIECE_L#0 - (word[]) PIECES#0 ? { (word~) $22, (word~) $23, (word~) $24, (word~) $25, (word~) $26, (word~) $27, (word~) $28 } - (byte[]) PIECES_CHARS#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $66, (byte/word/signed word/dword/signed dword) $a6, (byte/signed byte/word/signed word/dword/signed dword) $66, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/word/signed word/dword/signed dword) $a6 } - (byte[]) PIECES_NEXT_CHARS#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/word/signed word/dword/signed dword) $a4, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/word/signed word/dword/signed dword) $a4 } - (byte[]) PIECES_START_X#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4 } - (byte[]) PIECES_START_Y#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1 } - (byte*[PLAYFIELD_LINES#0]) playfield_lines#0 ? { fill( PLAYFIELD_LINES#0, 0) } - (byte/signed word/word/dword/signed dword~) $29 ? (byte) PLAYFIELD_LINES#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte[$29]) playfield_lines_idx#0 ? { fill( $29, 0) } - (byte) next_piece_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) current_piece#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) current_orientation#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte[]) MOVEDOWN_SLOW_SPEEDS#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $30, (byte/signed byte/word/signed word/dword/signed dword) $2b, (byte/signed byte/word/signed word/dword/signed dword) $26, (byte/signed byte/word/signed word/dword/signed dword) $21, (byte/signed byte/word/signed word/dword/signed dword) $1c, (byte/signed byte/word/signed word/dword/signed dword) $17, (byte/signed byte/word/signed word/dword/signed dword) $12, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1 } - (byte) current_movedown_slow#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) current_movedown_fast#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) current_movedown_counter#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword[]) SCORE_BASE_BCD#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $40, (word/signed word/dword/signed dword) $100, (word/signed word/dword/signed dword) $300, (word/signed word/dword/signed dword) $1200 } - (dword[5]) score_add_bcd#0 ? { fill( 5, 0) } + (byte) irq_cnt#20 ← phi( @39/(byte) irq_cnt#0 ) + (byte) irq_sprite_ptr#18 ← phi( @39/(byte) irq_sprite_ptr#0 ) + (byte) level_bcd#63 ← phi( @39/(byte) level_bcd#70 ) + (byte) level#66 ← phi( @39/(byte) level#74 ) + (dword) score_bcd#53 ← phi( @39/(dword) score_bcd#58 ) + (word) lines_bcd#53 ← phi( @39/(word) lines_bcd#60 ) + (byte) keyboard_modifiers#34 ← phi( @39/(byte) keyboard_modifiers#39 ) + (byte) keyboard_events_size#40 ← phi( @39/(byte) keyboard_events_size#48 ) + (byte) render_screen_showing#21 ← phi( @39/(byte) render_screen_showing#27 ) + (byte) game_over#51 ← phi( @39/(byte) game_over#59 ) + (byte) current_ypos#69 ← phi( @39/(byte) current_ypos#77 ) + (byte) current_xpos#88 ← phi( @39/(byte) current_xpos#100 ) + (byte*) current_piece_gfx#72 ← phi( @39/(byte*) current_piece_gfx#84 ) + (byte) current_piece_char#58 ← phi( @39/(byte) current_piece_char#70 ) + (byte) render_screen_render#43 ← phi( @39/(byte) render_screen_render#48 ) + (byte) render_screen_show#35 ← phi( @39/(byte) render_screen_show#43 ) + (byte) irq_raster_next#20 ← phi( @39/(byte) irq_raster_next#22 ) + (byte) irq_sprite_ypos#18 ← phi( @39/(byte) irq_sprite_ypos#21 ) + (byte/signed byte/word/signed word/dword/signed dword~) $8 ← (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte/signed word/word/dword/signed dword/signed byte~) $9 ← (byte/signed byte/word/signed word/dword/signed dword~) $8 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte[$9]) PIECE_T#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte/signed byte/word/signed word/dword/signed dword~) $10 ← (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte/signed word/word/dword/signed dword/signed byte~) $11 ← (byte/signed byte/word/signed word/dword/signed dword~) $10 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte[$11]) PIECE_S#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte/signed byte/word/signed word/dword/signed dword~) $12 ← (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte/signed word/word/dword/signed dword/signed byte~) $13 ← (byte/signed byte/word/signed word/dword/signed dword~) $12 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte[$13]) PIECE_Z#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte/signed byte/word/signed word/dword/signed dword~) $14 ← (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte/signed word/word/dword/signed dword/signed byte~) $15 ← (byte/signed byte/word/signed word/dword/signed dword~) $14 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte[$15]) PIECE_L#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte/signed byte/word/signed word/dword/signed dword~) $16 ← (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte/signed word/word/dword/signed dword/signed byte~) $17 ← (byte/signed byte/word/signed word/dword/signed dword~) $16 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte[$17]) PIECE_J#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte/signed byte/word/signed word/dword/signed dword~) $18 ← (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte/signed word/word/dword/signed dword/signed byte~) $19 ← (byte/signed byte/word/signed word/dword/signed dword~) $18 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte[$19]) PIECE_O#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte/signed byte/word/signed word/dword/signed dword~) $20 ← (byte/signed byte/word/signed word/dword/signed dword) 4 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte/signed word/word/dword/signed dword/signed byte~) $21 ← (byte/signed byte/word/signed word/dword/signed dword~) $20 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte[$21]) PIECE_I#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (word~) $22 ← ((word)) (byte[$9]) PIECE_T#0 + (word~) $23 ← ((word)) (byte[$11]) PIECE_S#0 + (word~) $24 ← ((word)) (byte[$13]) PIECE_Z#0 + (word~) $25 ← ((word)) (byte[$17]) PIECE_J#0 + (word~) $26 ← ((word)) (byte[$19]) PIECE_O#0 + (word~) $27 ← ((word)) (byte[$21]) PIECE_I#0 + (word~) $28 ← ((word)) (byte[$15]) PIECE_L#0 + (word[]) PIECES#0 ← { (word~) $22, (word~) $23, (word~) $24, (word~) $25, (word~) $26, (word~) $27, (word~) $28 } + (byte[]) PIECES_CHARS#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $66, (byte/word/signed word/dword/signed dword) $a6, (byte/signed byte/word/signed word/dword/signed dword) $66, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/word/signed word/dword/signed dword) $a6 } + (byte[]) PIECES_NEXT_CHARS#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/word/signed word/dword/signed dword) $a4, (byte/signed byte/word/signed word/dword/signed dword) $64, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/word/signed word/dword/signed dword) $a4 } + (byte[]) PIECES_START_X#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4 } + (byte[]) PIECES_START_Y#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 1 } + (byte*[PLAYFIELD_LINES#0]) playfield_lines#0 ← { fill( PLAYFIELD_LINES#0, 0) } + (byte/signed word/word/dword/signed dword~) $29 ← (byte) PLAYFIELD_LINES#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte[$29]) playfield_lines_idx#0 ← { fill( $29, 0) } + (byte) next_piece_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) current_piece#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) current_orientation#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte[]) MOVEDOWN_SLOW_SPEEDS#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $30, (byte/signed byte/word/signed word/dword/signed dword) $2b, (byte/signed byte/word/signed word/dword/signed dword) $26, (byte/signed byte/word/signed word/dword/signed dword) $21, (byte/signed byte/word/signed word/dword/signed dword) $1c, (byte/signed byte/word/signed word/dword/signed dword) $17, (byte/signed byte/word/signed word/dword/signed dword) $12, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 1 } + (byte) current_movedown_slow#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) current_movedown_fast#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) current_movedown_counter#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword[]) SCORE_BASE_BCD#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) $40, (word/signed word/dword/signed dword) $100, (word/signed word/dword/signed dword) $300, (word/signed word/dword/signed dword) $1200 } + (dword[5]) score_add_bcd#0 ← { fill( 5, 0) } to:@31 play_init: scope:[play_init] from main::@28 - (byte) level#44 ? phi( main::@28/(byte) level#60 ) - (byte) play_init::idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) play_init::pli#0 ? (byte[$3]) playfield#0 - (byte/signed word/word/dword/signed dword~) play_init::$1 ? (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_init::j#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level#44 ← phi( main::@28/(byte) level#60 ) + (byte) play_init::idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) play_init::pli#0 ← (byte[$3]) playfield#0 + (byte/signed word/word/dword/signed dword~) play_init::$1 ← (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_init::j#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_init::@1 play_init::@1: scope:[play_init] from play_init play_init::@1 - (byte) level#28 ? phi( play_init/(byte) level#44 play_init::@1/(byte) level#28 ) - (byte) play_init::idx#2 ? phi( play_init/(byte) play_init::idx#0 play_init::@1/(byte) play_init::idx#1 ) - (byte*) play_init::pli#2 ? phi( play_init/(byte*) play_init::pli#0 play_init::@1/(byte*) play_init::pli#1 ) - (byte) play_init::j#2 ? phi( play_init/(byte) play_init::j#0 play_init::@1/(byte) play_init::j#1 ) - (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 - *((byte[$29]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 - (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (byte) PLAYFIELD_COLS#0 - (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (byte) PLAYFIELD_COLS#0 - (byte) play_init::j#1 ? (byte) play_init::j#2 + rangenext(0,play_init::$1) - (bool~) play_init::$3 ? (byte) play_init::j#1 != rangelast(0,play_init::$1) + (byte) level#28 ← phi( play_init/(byte) level#44 play_init::@1/(byte) level#28 ) + (byte) play_init::idx#2 ← phi( play_init/(byte) play_init::idx#0 play_init::@1/(byte) play_init::idx#1 ) + (byte*) play_init::pli#2 ← phi( play_init/(byte*) play_init::pli#0 play_init::@1/(byte*) play_init::pli#1 ) + (byte) play_init::j#2 ← phi( play_init/(byte) play_init::j#0 play_init::@1/(byte) play_init::j#1 ) + (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 + *((byte[$29]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 + (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (byte) PLAYFIELD_COLS#0 + (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (byte) PLAYFIELD_COLS#0 + (byte) play_init::j#1 ← (byte) play_init::j#2 + rangenext(0,play_init::$1) + (bool~) play_init::$3 ← (byte) play_init::j#1 != rangelast(0,play_init::$1) if((bool~) play_init::$3) goto play_init::@1 to:play_init::@2 play_init::@2: scope:[play_init] from play_init::@1 - (byte) level#13 ? phi( play_init::@1/(byte) level#28 ) - (byte~) play_init::$0 ? (byte) PLAYFIELD_COLS#0 * (byte) PLAYFIELD_LINES#0 - *((byte[$29]) playfield_lines_idx#0 + (byte) PLAYFIELD_LINES#0) ? (byte~) play_init::$0 - (byte) current_movedown_slow#1 ? *((byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#13) - (byte) play_init::b#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) level#13 ← phi( play_init::@1/(byte) level#28 ) + (byte~) play_init::$0 ← (byte) PLAYFIELD_COLS#0 * (byte) PLAYFIELD_LINES#0 + *((byte[$29]) playfield_lines_idx#0 + (byte) PLAYFIELD_LINES#0) ← (byte~) play_init::$0 + (byte) current_movedown_slow#1 ← *((byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#13) + (byte) play_init::b#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_init::@3 play_init::@3: scope:[play_init] from play_init::@2 play_init::@3 - (byte) current_movedown_slow#29 ? phi( play_init::@2/(byte) current_movedown_slow#1 play_init::@3/(byte) current_movedown_slow#29 ) - (byte) play_init::b#2 ? phi( play_init::@2/(byte) play_init::b#0 play_init::@3/(byte) play_init::b#1 ) - (byte~) play_init::$4 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) play_init::b4#0 ? (byte~) play_init::$4 - *((dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) - (byte) play_init::b#1 ? (byte) play_init::b#2 + rangenext(0,4) - (bool~) play_init::$5 ? (byte) play_init::b#1 != rangelast(0,4) + (byte) current_movedown_slow#29 ← phi( play_init::@2/(byte) current_movedown_slow#1 play_init::@3/(byte) current_movedown_slow#29 ) + (byte) play_init::b#2 ← phi( play_init::@2/(byte) play_init::b#0 play_init::@3/(byte) play_init::b#1 ) + (byte~) play_init::$4 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) play_init::b4#0 ← (byte~) play_init::$4 + *((dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) + (byte) play_init::b#1 ← (byte) play_init::b#2 + rangenext(0,4) + (bool~) play_init::$5 ← (byte) play_init::b#1 != rangelast(0,4) if((bool~) play_init::$5) goto play_init::@3 to:play_init::@return play_init::@return: scope:[play_init] from play_init::@3 - (byte) current_movedown_slow#16 ? phi( play_init::@3/(byte) current_movedown_slow#29 ) - (byte) current_movedown_slow#2 ? (byte) current_movedown_slow#16 + (byte) current_movedown_slow#16 ← phi( play_init::@3/(byte) current_movedown_slow#29 ) + (byte) current_movedown_slow#2 ← (byte) current_movedown_slow#16 return to:@return play_movement: scope:[play_movement] from main::@11 - (byte) next_piece_idx#26 ? phi( main::@11/(byte) next_piece_idx#33 ) - (byte) game_over#23 ? phi( main::@11/(byte) game_over#32 ) - (byte) current_xpos#37 ? phi( main::@11/(byte) current_xpos#56 ) - (byte*) current_piece_gfx#31 ? phi( main::@11/(byte*) current_piece_gfx#43 ) - (byte) current_orientation#32 ? phi( main::@11/(byte) current_orientation#47 ) - (byte) current_piece_char#25 ? phi( main::@11/(byte) current_piece_char#34 ) - (byte*) current_piece#24 ? phi( main::@11/(byte*) current_piece#37 ) - (byte) level_bcd#27 ? phi( main::@11/(byte) level_bcd#39 ) - (byte) current_movedown_slow#30 ? phi( main::@11/(byte) current_movedown_slow#44 ) - (byte) level#29 ? phi( main::@11/(byte) level#39 ) - (dword) score_bcd#22 ? phi( main::@11/(dword) score_bcd#32 ) - (word) lines_bcd#22 ? phi( main::@11/(word) lines_bcd#32 ) - (byte) current_ypos#32 ? phi( main::@11/(byte) current_ypos#47 ) - (byte) current_movedown_counter#18 ? phi( main::@11/(byte) current_movedown_counter#25 ) - (byte) play_movement::key_event#1 ? phi( main::@11/(byte) play_movement::key_event#0 ) - (byte) play_movement::render#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) play_move_down::key_event#0 ? (byte) play_movement::key_event#1 + (byte) next_piece_idx#26 ← phi( main::@11/(byte) next_piece_idx#33 ) + (byte) game_over#23 ← phi( main::@11/(byte) game_over#32 ) + (byte) current_xpos#37 ← phi( main::@11/(byte) current_xpos#56 ) + (byte*) current_piece_gfx#31 ← phi( main::@11/(byte*) current_piece_gfx#43 ) + (byte) current_orientation#32 ← phi( main::@11/(byte) current_orientation#47 ) + (byte) current_piece_char#25 ← phi( main::@11/(byte) current_piece_char#34 ) + (byte*) current_piece#24 ← phi( main::@11/(byte*) current_piece#37 ) + (byte) level_bcd#27 ← phi( main::@11/(byte) level_bcd#39 ) + (byte) current_movedown_slow#30 ← phi( main::@11/(byte) current_movedown_slow#44 ) + (byte) level#29 ← phi( main::@11/(byte) level#39 ) + (dword) score_bcd#22 ← phi( main::@11/(dword) score_bcd#32 ) + (word) lines_bcd#22 ← phi( main::@11/(word) lines_bcd#32 ) + (byte) current_ypos#32 ← phi( main::@11/(byte) current_ypos#47 ) + (byte) current_movedown_counter#18 ← phi( main::@11/(byte) current_movedown_counter#25 ) + (byte) play_movement::key_event#1 ← phi( main::@11/(byte) play_movement::key_event#0 ) + (byte) play_movement::render#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_move_down::key_event#0 ← (byte) play_movement::key_event#1 call play_move_down - (byte) play_move_down::return#0 ? (byte) play_move_down::return#3 + (byte) play_move_down::return#0 ← (byte) play_move_down::return#3 to:play_movement::@5 play_movement::@5: scope:[play_movement] from play_movement - (byte) play_movement::key_event#4 ? phi( play_movement/(byte) play_movement::key_event#1 ) - (byte) play_movement::render#4 ? phi( play_movement/(byte) play_movement::render#0 ) - (byte) next_piece_idx#13 ? phi( play_movement/(byte) next_piece_idx#4 ) - (byte) game_over#12 ? phi( play_movement/(byte) game_over#4 ) - (byte) current_xpos#17 ? phi( play_movement/(byte) current_xpos#5 ) - (byte*) current_piece_gfx#16 ? phi( play_movement/(byte*) current_piece_gfx#5 ) - (byte) current_orientation#15 ? phi( play_movement/(byte) current_orientation#5 ) - (byte) current_piece_char#13 ? phi( play_movement/(byte) current_piece_char#4 ) - (byte*) current_piece#12 ? phi( play_movement/(byte*) current_piece#4 ) - (byte) level_bcd#14 ? phi( play_movement/(byte) level_bcd#4 ) - (byte) current_movedown_slow#17 ? phi( play_movement/(byte) current_movedown_slow#6 ) - (byte) level#14 ? phi( play_movement/(byte) level#4 ) - (dword) score_bcd#11 ? phi( play_movement/(dword) score_bcd#4 ) - (word) lines_bcd#12 ? phi( play_movement/(word) lines_bcd#4 ) - (byte) current_ypos#14 ? phi( play_movement/(byte) current_ypos#5 ) - (byte) current_movedown_counter#9 ? phi( play_movement/(byte) current_movedown_counter#5 ) - (byte) play_move_down::return#4 ? phi( play_movement/(byte) play_move_down::return#0 ) - (byte~) play_movement::$0 ? (byte) play_move_down::return#4 - (byte) current_movedown_counter#1 ? (byte) current_movedown_counter#9 - (byte) current_ypos#1 ? (byte) current_ypos#14 - (word) lines_bcd#1 ? (word) lines_bcd#12 - (dword) score_bcd#1 ? (dword) score_bcd#11 - (byte) level#1 ? (byte) level#14 - (byte) current_movedown_slow#3 ? (byte) current_movedown_slow#17 - (byte) level_bcd#1 ? (byte) level_bcd#14 - (byte*) current_piece#1 ? (byte*) current_piece#12 - (byte) current_piece_char#1 ? (byte) current_piece_char#13 - (byte) current_orientation#1 ? (byte) current_orientation#15 - (byte*) current_piece_gfx#1 ? (byte*) current_piece_gfx#16 - (byte) current_xpos#1 ? (byte) current_xpos#17 - (byte) game_over#1 ? (byte) game_over#12 - (byte) next_piece_idx#1 ? (byte) next_piece_idx#13 - (byte) play_movement::render#1 ? (byte) play_movement::render#4 + (byte~) play_movement::$0 - (bool~) play_movement::$1 ? (byte) game_over#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_movement::$2 ? ! (bool~) play_movement::$1 + (byte) play_movement::key_event#4 ← phi( play_movement/(byte) play_movement::key_event#1 ) + (byte) play_movement::render#4 ← phi( play_movement/(byte) play_movement::render#0 ) + (byte) next_piece_idx#13 ← phi( play_movement/(byte) next_piece_idx#4 ) + (byte) game_over#12 ← phi( play_movement/(byte) game_over#4 ) + (byte) current_xpos#17 ← phi( play_movement/(byte) current_xpos#5 ) + (byte*) current_piece_gfx#16 ← phi( play_movement/(byte*) current_piece_gfx#5 ) + (byte) current_orientation#15 ← phi( play_movement/(byte) current_orientation#5 ) + (byte) current_piece_char#13 ← phi( play_movement/(byte) current_piece_char#4 ) + (byte*) current_piece#12 ← phi( play_movement/(byte*) current_piece#4 ) + (byte) level_bcd#14 ← phi( play_movement/(byte) level_bcd#4 ) + (byte) current_movedown_slow#17 ← phi( play_movement/(byte) current_movedown_slow#6 ) + (byte) level#14 ← phi( play_movement/(byte) level#4 ) + (dword) score_bcd#11 ← phi( play_movement/(dword) score_bcd#4 ) + (word) lines_bcd#12 ← phi( play_movement/(word) lines_bcd#4 ) + (byte) current_ypos#14 ← phi( play_movement/(byte) current_ypos#5 ) + (byte) current_movedown_counter#9 ← phi( play_movement/(byte) current_movedown_counter#5 ) + (byte) play_move_down::return#4 ← phi( play_movement/(byte) play_move_down::return#0 ) + (byte~) play_movement::$0 ← (byte) play_move_down::return#4 + (byte) current_movedown_counter#1 ← (byte) current_movedown_counter#9 + (byte) current_ypos#1 ← (byte) current_ypos#14 + (word) lines_bcd#1 ← (word) lines_bcd#12 + (dword) score_bcd#1 ← (dword) score_bcd#11 + (byte) level#1 ← (byte) level#14 + (byte) current_movedown_slow#3 ← (byte) current_movedown_slow#17 + (byte) level_bcd#1 ← (byte) level_bcd#14 + (byte*) current_piece#1 ← (byte*) current_piece#12 + (byte) current_piece_char#1 ← (byte) current_piece_char#13 + (byte) current_orientation#1 ← (byte) current_orientation#15 + (byte*) current_piece_gfx#1 ← (byte*) current_piece_gfx#16 + (byte) current_xpos#1 ← (byte) current_xpos#17 + (byte) game_over#1 ← (byte) game_over#12 + (byte) next_piece_idx#1 ← (byte) next_piece_idx#13 + (byte) play_movement::render#1 ← (byte) play_movement::render#4 + (byte~) play_movement::$0 + (bool~) play_movement::$1 ← (byte) game_over#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_movement::$2 ← ! (bool~) play_movement::$1 if((bool~) play_movement::$2) goto play_movement::@1 to:play_movement::@2 play_movement::@1: scope:[play_movement] from play_movement::@5 - (byte) next_piece_idx#49 ? phi( play_movement::@5/(byte) next_piece_idx#1 ) - (byte) game_over#46 ? phi( play_movement::@5/(byte) game_over#1 ) - (byte) current_piece_char#53 ? phi( play_movement::@5/(byte) current_piece_char#1 ) - (byte*) current_piece#55 ? phi( play_movement::@5/(byte*) current_piece#1 ) - (byte) level_bcd#58 ? phi( play_movement::@5/(byte) level_bcd#1 ) - (byte) current_movedown_slow#63 ? phi( play_movement::@5/(byte) current_movedown_slow#3 ) - (byte) level#61 ? phi( play_movement::@5/(byte) level#1 ) - (dword) score_bcd#48 ? phi( play_movement::@5/(dword) score_bcd#1 ) - (word) lines_bcd#48 ? phi( play_movement::@5/(word) lines_bcd#1 ) - (byte) current_movedown_counter#36 ? phi( play_movement::@5/(byte) current_movedown_counter#1 ) - (byte) current_ypos#54 ? phi( play_movement::@5/(byte) current_ypos#1 ) - (byte*) current_piece_gfx#48 ? phi( play_movement::@5/(byte*) current_piece_gfx#1 ) - (byte) current_orientation#50 ? phi( play_movement::@5/(byte) current_orientation#1 ) - (byte) play_movement::render#8 ? phi( play_movement::@5/(byte) play_movement::render#1 ) - (byte) current_xpos#38 ? phi( play_movement::@5/(byte) current_xpos#1 ) - (byte) play_movement::key_event#2 ? phi( play_movement::@5/(byte) play_movement::key_event#4 ) - (byte) play_move_leftright::key_event#0 ? (byte) play_movement::key_event#2 + (byte) next_piece_idx#49 ← phi( play_movement::@5/(byte) next_piece_idx#1 ) + (byte) game_over#46 ← phi( play_movement::@5/(byte) game_over#1 ) + (byte) current_piece_char#53 ← phi( play_movement::@5/(byte) current_piece_char#1 ) + (byte*) current_piece#55 ← phi( play_movement::@5/(byte*) current_piece#1 ) + (byte) level_bcd#58 ← phi( play_movement::@5/(byte) level_bcd#1 ) + (byte) current_movedown_slow#63 ← phi( play_movement::@5/(byte) current_movedown_slow#3 ) + (byte) level#61 ← phi( play_movement::@5/(byte) level#1 ) + (dword) score_bcd#48 ← phi( play_movement::@5/(dword) score_bcd#1 ) + (word) lines_bcd#48 ← phi( play_movement::@5/(word) lines_bcd#1 ) + (byte) current_movedown_counter#36 ← phi( play_movement::@5/(byte) current_movedown_counter#1 ) + (byte) current_ypos#54 ← phi( play_movement::@5/(byte) current_ypos#1 ) + (byte*) current_piece_gfx#48 ← phi( play_movement::@5/(byte*) current_piece_gfx#1 ) + (byte) current_orientation#50 ← phi( play_movement::@5/(byte) current_orientation#1 ) + (byte) play_movement::render#8 ← phi( play_movement::@5/(byte) play_movement::render#1 ) + (byte) current_xpos#38 ← phi( play_movement::@5/(byte) current_xpos#1 ) + (byte) play_movement::key_event#2 ← phi( play_movement::@5/(byte) play_movement::key_event#4 ) + (byte) play_move_leftright::key_event#0 ← (byte) play_movement::key_event#2 call play_move_leftright - (byte) play_move_leftright::return#0 ? (byte) play_move_leftright::return#2 + (byte) play_move_leftright::return#0 ← (byte) play_move_leftright::return#2 to:play_movement::@6 play_movement::@6: scope:[play_movement] from play_movement::@1 - (byte) next_piece_idx#37 ? phi( play_movement::@1/(byte) next_piece_idx#49 ) - (byte) game_over#35 ? phi( play_movement::@1/(byte) game_over#46 ) - (byte) current_piece_char#39 ? phi( play_movement::@1/(byte) current_piece_char#53 ) - (byte*) current_piece#40 ? phi( play_movement::@1/(byte*) current_piece#55 ) - (byte) level_bcd#43 ? phi( play_movement::@1/(byte) level_bcd#58 ) - (byte) current_movedown_slow#47 ? phi( play_movement::@1/(byte) current_movedown_slow#63 ) - (byte) level#45 ? phi( play_movement::@1/(byte) level#61 ) - (dword) score_bcd#36 ? phi( play_movement::@1/(dword) score_bcd#48 ) - (word) lines_bcd#36 ? phi( play_movement::@1/(word) lines_bcd#48 ) - (byte) current_ypos#50 ? phi( play_movement::@1/(byte) current_ypos#54 ) - (byte) current_movedown_counter#28 ? phi( play_movement::@1/(byte) current_movedown_counter#36 ) - (byte*) current_piece_gfx#32 ? phi( play_movement::@1/(byte*) current_piece_gfx#48 ) - (byte) current_orientation#33 ? phi( play_movement::@1/(byte) current_orientation#50 ) - (byte) play_movement::key_event#3 ? phi( play_movement::@1/(byte) play_movement::key_event#2 ) - (byte) play_movement::render#5 ? phi( play_movement::@1/(byte) play_movement::render#8 ) - (byte) current_xpos#18 ? phi( play_movement::@1/(byte) current_xpos#7 ) - (byte) play_move_leftright::return#5 ? phi( play_movement::@1/(byte) play_move_leftright::return#0 ) - (byte~) play_movement::$3 ? (byte) play_move_leftright::return#5 - (byte) current_xpos#2 ? (byte) current_xpos#18 - (byte) play_movement::render#2 ? (byte) play_movement::render#5 + (byte~) play_movement::$3 - (byte) play_move_rotate::key_event#0 ? (byte) play_movement::key_event#3 + (byte) next_piece_idx#37 ← phi( play_movement::@1/(byte) next_piece_idx#49 ) + (byte) game_over#35 ← phi( play_movement::@1/(byte) game_over#46 ) + (byte) current_piece_char#39 ← phi( play_movement::@1/(byte) current_piece_char#53 ) + (byte*) current_piece#40 ← phi( play_movement::@1/(byte*) current_piece#55 ) + (byte) level_bcd#43 ← phi( play_movement::@1/(byte) level_bcd#58 ) + (byte) current_movedown_slow#47 ← phi( play_movement::@1/(byte) current_movedown_slow#63 ) + (byte) level#45 ← phi( play_movement::@1/(byte) level#61 ) + (dword) score_bcd#36 ← phi( play_movement::@1/(dword) score_bcd#48 ) + (word) lines_bcd#36 ← phi( play_movement::@1/(word) lines_bcd#48 ) + (byte) current_ypos#50 ← phi( play_movement::@1/(byte) current_ypos#54 ) + (byte) current_movedown_counter#28 ← phi( play_movement::@1/(byte) current_movedown_counter#36 ) + (byte*) current_piece_gfx#32 ← phi( play_movement::@1/(byte*) current_piece_gfx#48 ) + (byte) current_orientation#33 ← phi( play_movement::@1/(byte) current_orientation#50 ) + (byte) play_movement::key_event#3 ← phi( play_movement::@1/(byte) play_movement::key_event#2 ) + (byte) play_movement::render#5 ← phi( play_movement::@1/(byte) play_movement::render#8 ) + (byte) current_xpos#18 ← phi( play_movement::@1/(byte) current_xpos#7 ) + (byte) play_move_leftright::return#5 ← phi( play_movement::@1/(byte) play_move_leftright::return#0 ) + (byte~) play_movement::$3 ← (byte) play_move_leftright::return#5 + (byte) current_xpos#2 ← (byte) current_xpos#18 + (byte) play_movement::render#2 ← (byte) play_movement::render#5 + (byte~) play_movement::$3 + (byte) play_move_rotate::key_event#0 ← (byte) play_movement::key_event#3 call play_move_rotate - (byte) play_move_rotate::return#0 ? (byte) play_move_rotate::return#2 + (byte) play_move_rotate::return#0 ← (byte) play_move_rotate::return#2 to:play_movement::@7 play_movement::@7: scope:[play_movement] from play_movement::@6 - (byte) next_piece_idx#28 ? phi( play_movement::@6/(byte) next_piece_idx#37 ) - (byte) game_over#25 ? phi( play_movement::@6/(byte) game_over#35 ) - (byte) current_xpos#40 ? phi( play_movement::@6/(byte) current_xpos#2 ) - (byte) current_piece_char#27 ? phi( play_movement::@6/(byte) current_piece_char#39 ) - (byte*) current_piece#26 ? phi( play_movement::@6/(byte*) current_piece#40 ) - (byte) level_bcd#29 ? phi( play_movement::@6/(byte) level_bcd#43 ) - (byte) current_movedown_slow#32 ? phi( play_movement::@6/(byte) current_movedown_slow#47 ) - (byte) level#31 ? phi( play_movement::@6/(byte) level#45 ) - (dword) score_bcd#24 ? phi( play_movement::@6/(dword) score_bcd#36 ) - (word) lines_bcd#24 ? phi( play_movement::@6/(word) lines_bcd#36 ) - (byte) current_ypos#34 ? phi( play_movement::@6/(byte) current_ypos#50 ) - (byte) current_movedown_counter#20 ? phi( play_movement::@6/(byte) current_movedown_counter#28 ) - (byte) play_movement::render#6 ? phi( play_movement::@6/(byte) play_movement::render#2 ) - (byte*) current_piece_gfx#17 ? phi( play_movement::@6/(byte*) current_piece_gfx#6 ) - (byte) current_orientation#16 ? phi( play_movement::@6/(byte) current_orientation#6 ) - (byte) play_move_rotate::return#5 ? phi( play_movement::@6/(byte) play_move_rotate::return#0 ) - (byte~) play_movement::$4 ? (byte) play_move_rotate::return#5 - (byte) current_orientation#2 ? (byte) current_orientation#16 - (byte*) current_piece_gfx#2 ? (byte*) current_piece_gfx#17 - (byte) play_movement::render#3 ? (byte) play_movement::render#6 + (byte~) play_movement::$4 - (byte) play_movement::return#0 ? (byte) play_movement::render#3 + (byte) next_piece_idx#28 ← phi( play_movement::@6/(byte) next_piece_idx#37 ) + (byte) game_over#25 ← phi( play_movement::@6/(byte) game_over#35 ) + (byte) current_xpos#40 ← phi( play_movement::@6/(byte) current_xpos#2 ) + (byte) current_piece_char#27 ← phi( play_movement::@6/(byte) current_piece_char#39 ) + (byte*) current_piece#26 ← phi( play_movement::@6/(byte*) current_piece#40 ) + (byte) level_bcd#29 ← phi( play_movement::@6/(byte) level_bcd#43 ) + (byte) current_movedown_slow#32 ← phi( play_movement::@6/(byte) current_movedown_slow#47 ) + (byte) level#31 ← phi( play_movement::@6/(byte) level#45 ) + (dword) score_bcd#24 ← phi( play_movement::@6/(dword) score_bcd#36 ) + (word) lines_bcd#24 ← phi( play_movement::@6/(word) lines_bcd#36 ) + (byte) current_ypos#34 ← phi( play_movement::@6/(byte) current_ypos#50 ) + (byte) current_movedown_counter#20 ← phi( play_movement::@6/(byte) current_movedown_counter#28 ) + (byte) play_movement::render#6 ← phi( play_movement::@6/(byte) play_movement::render#2 ) + (byte*) current_piece_gfx#17 ← phi( play_movement::@6/(byte*) current_piece_gfx#6 ) + (byte) current_orientation#16 ← phi( play_movement::@6/(byte) current_orientation#6 ) + (byte) play_move_rotate::return#5 ← phi( play_movement::@6/(byte) play_move_rotate::return#0 ) + (byte~) play_movement::$4 ← (byte) play_move_rotate::return#5 + (byte) current_orientation#2 ← (byte) current_orientation#16 + (byte*) current_piece_gfx#2 ← (byte*) current_piece_gfx#17 + (byte) play_movement::render#3 ← (byte) play_movement::render#6 + (byte~) play_movement::$4 + (byte) play_movement::return#0 ← (byte) play_movement::render#3 to:play_movement::@return play_movement::@2: scope:[play_movement] from play_movement::@5 - (byte) next_piece_idx#27 ? phi( play_movement::@5/(byte) next_piece_idx#1 ) - (byte) game_over#24 ? phi( play_movement::@5/(byte) game_over#1 ) - (byte) current_xpos#39 ? phi( play_movement::@5/(byte) current_xpos#1 ) - (byte*) current_piece_gfx#33 ? phi( play_movement::@5/(byte*) current_piece_gfx#1 ) - (byte) current_orientation#34 ? phi( play_movement::@5/(byte) current_orientation#1 ) - (byte) current_piece_char#26 ? phi( play_movement::@5/(byte) current_piece_char#1 ) - (byte*) current_piece#25 ? phi( play_movement::@5/(byte*) current_piece#1 ) - (byte) level_bcd#28 ? phi( play_movement::@5/(byte) level_bcd#1 ) - (byte) current_movedown_slow#31 ? phi( play_movement::@5/(byte) current_movedown_slow#3 ) - (byte) level#30 ? phi( play_movement::@5/(byte) level#1 ) - (dword) score_bcd#23 ? phi( play_movement::@5/(dword) score_bcd#1 ) - (word) lines_bcd#23 ? phi( play_movement::@5/(word) lines_bcd#1 ) - (byte) current_ypos#33 ? phi( play_movement::@5/(byte) current_ypos#1 ) - (byte) current_movedown_counter#19 ? phi( play_movement::@5/(byte) current_movedown_counter#1 ) - (byte) play_movement::render#7 ? phi( play_movement::@5/(byte) play_movement::render#1 ) - (byte) play_movement::return#1 ? (byte) play_movement::render#7 + (byte) next_piece_idx#27 ← phi( play_movement::@5/(byte) next_piece_idx#1 ) + (byte) game_over#24 ← phi( play_movement::@5/(byte) game_over#1 ) + (byte) current_xpos#39 ← phi( play_movement::@5/(byte) current_xpos#1 ) + (byte*) current_piece_gfx#33 ← phi( play_movement::@5/(byte*) current_piece_gfx#1 ) + (byte) current_orientation#34 ← phi( play_movement::@5/(byte) current_orientation#1 ) + (byte) current_piece_char#26 ← phi( play_movement::@5/(byte) current_piece_char#1 ) + (byte*) current_piece#25 ← phi( play_movement::@5/(byte*) current_piece#1 ) + (byte) level_bcd#28 ← phi( play_movement::@5/(byte) level_bcd#1 ) + (byte) current_movedown_slow#31 ← phi( play_movement::@5/(byte) current_movedown_slow#3 ) + (byte) level#30 ← phi( play_movement::@5/(byte) level#1 ) + (dword) score_bcd#23 ← phi( play_movement::@5/(dword) score_bcd#1 ) + (word) lines_bcd#23 ← phi( play_movement::@5/(word) lines_bcd#1 ) + (byte) current_ypos#33 ← phi( play_movement::@5/(byte) current_ypos#1 ) + (byte) current_movedown_counter#19 ← phi( play_movement::@5/(byte) current_movedown_counter#1 ) + (byte) play_movement::render#7 ← phi( play_movement::@5/(byte) play_movement::render#1 ) + (byte) play_movement::return#1 ← (byte) play_movement::render#7 to:play_movement::@return play_movement::@return: scope:[play_movement] from play_movement::@2 play_movement::@7 - (byte) next_piece_idx#14 ? phi( play_movement::@2/(byte) next_piece_idx#27 play_movement::@7/(byte) next_piece_idx#28 ) - (byte) game_over#13 ? phi( play_movement::@2/(byte) game_over#24 play_movement::@7/(byte) game_over#25 ) - (byte) current_xpos#19 ? phi( play_movement::@2/(byte) current_xpos#39 play_movement::@7/(byte) current_xpos#40 ) - (byte*) current_piece_gfx#18 ? phi( play_movement::@2/(byte*) current_piece_gfx#33 play_movement::@7/(byte*) current_piece_gfx#2 ) - (byte) current_orientation#17 ? phi( play_movement::@2/(byte) current_orientation#34 play_movement::@7/(byte) current_orientation#2 ) - (byte) current_piece_char#14 ? phi( play_movement::@2/(byte) current_piece_char#26 play_movement::@7/(byte) current_piece_char#27 ) - (byte*) current_piece#13 ? phi( play_movement::@2/(byte*) current_piece#25 play_movement::@7/(byte*) current_piece#26 ) - (byte) level_bcd#15 ? phi( play_movement::@2/(byte) level_bcd#28 play_movement::@7/(byte) level_bcd#29 ) - (byte) current_movedown_slow#18 ? phi( play_movement::@2/(byte) current_movedown_slow#31 play_movement::@7/(byte) current_movedown_slow#32 ) - (byte) level#15 ? phi( play_movement::@2/(byte) level#30 play_movement::@7/(byte) level#31 ) - (dword) score_bcd#12 ? phi( play_movement::@2/(dword) score_bcd#23 play_movement::@7/(dword) score_bcd#24 ) - (word) lines_bcd#13 ? phi( play_movement::@2/(word) lines_bcd#23 play_movement::@7/(word) lines_bcd#24 ) - (byte) current_ypos#15 ? phi( play_movement::@2/(byte) current_ypos#33 play_movement::@7/(byte) current_ypos#34 ) - (byte) current_movedown_counter#10 ? phi( play_movement::@2/(byte) current_movedown_counter#19 play_movement::@7/(byte) current_movedown_counter#20 ) - (byte) play_movement::return#4 ? phi( play_movement::@2/(byte) play_movement::return#1 play_movement::@7/(byte) play_movement::return#0 ) - (byte) play_movement::return#2 ? (byte) play_movement::return#4 - (byte) current_movedown_counter#2 ? (byte) current_movedown_counter#10 - (byte) current_ypos#2 ? (byte) current_ypos#15 - (word) lines_bcd#2 ? (word) lines_bcd#13 - (dword) score_bcd#2 ? (dword) score_bcd#12 - (byte) level#2 ? (byte) level#15 - (byte) current_movedown_slow#4 ? (byte) current_movedown_slow#18 - (byte) level_bcd#2 ? (byte) level_bcd#15 - (byte*) current_piece#2 ? (byte*) current_piece#13 - (byte) current_piece_char#2 ? (byte) current_piece_char#14 - (byte) current_orientation#3 ? (byte) current_orientation#17 - (byte*) current_piece_gfx#3 ? (byte*) current_piece_gfx#18 - (byte) current_xpos#3 ? (byte) current_xpos#19 - (byte) game_over#2 ? (byte) game_over#13 - (byte) next_piece_idx#2 ? (byte) next_piece_idx#14 + (byte) next_piece_idx#14 ← phi( play_movement::@2/(byte) next_piece_idx#27 play_movement::@7/(byte) next_piece_idx#28 ) + (byte) game_over#13 ← phi( play_movement::@2/(byte) game_over#24 play_movement::@7/(byte) game_over#25 ) + (byte) current_xpos#19 ← phi( play_movement::@2/(byte) current_xpos#39 play_movement::@7/(byte) current_xpos#40 ) + (byte*) current_piece_gfx#18 ← phi( play_movement::@2/(byte*) current_piece_gfx#33 play_movement::@7/(byte*) current_piece_gfx#2 ) + (byte) current_orientation#17 ← phi( play_movement::@2/(byte) current_orientation#34 play_movement::@7/(byte) current_orientation#2 ) + (byte) current_piece_char#14 ← phi( play_movement::@2/(byte) current_piece_char#26 play_movement::@7/(byte) current_piece_char#27 ) + (byte*) current_piece#13 ← phi( play_movement::@2/(byte*) current_piece#25 play_movement::@7/(byte*) current_piece#26 ) + (byte) level_bcd#15 ← phi( play_movement::@2/(byte) level_bcd#28 play_movement::@7/(byte) level_bcd#29 ) + (byte) current_movedown_slow#18 ← phi( play_movement::@2/(byte) current_movedown_slow#31 play_movement::@7/(byte) current_movedown_slow#32 ) + (byte) level#15 ← phi( play_movement::@2/(byte) level#30 play_movement::@7/(byte) level#31 ) + (dword) score_bcd#12 ← phi( play_movement::@2/(dword) score_bcd#23 play_movement::@7/(dword) score_bcd#24 ) + (word) lines_bcd#13 ← phi( play_movement::@2/(word) lines_bcd#23 play_movement::@7/(word) lines_bcd#24 ) + (byte) current_ypos#15 ← phi( play_movement::@2/(byte) current_ypos#33 play_movement::@7/(byte) current_ypos#34 ) + (byte) current_movedown_counter#10 ← phi( play_movement::@2/(byte) current_movedown_counter#19 play_movement::@7/(byte) current_movedown_counter#20 ) + (byte) play_movement::return#4 ← phi( play_movement::@2/(byte) play_movement::return#1 play_movement::@7/(byte) play_movement::return#0 ) + (byte) play_movement::return#2 ← (byte) play_movement::return#4 + (byte) current_movedown_counter#2 ← (byte) current_movedown_counter#10 + (byte) current_ypos#2 ← (byte) current_ypos#15 + (word) lines_bcd#2 ← (word) lines_bcd#13 + (dword) score_bcd#2 ← (dword) score_bcd#12 + (byte) level#2 ← (byte) level#15 + (byte) current_movedown_slow#4 ← (byte) current_movedown_slow#18 + (byte) level_bcd#2 ← (byte) level_bcd#15 + (byte*) current_piece#2 ← (byte*) current_piece#13 + (byte) current_piece_char#2 ← (byte) current_piece_char#14 + (byte) current_orientation#3 ← (byte) current_orientation#17 + (byte*) current_piece_gfx#3 ← (byte*) current_piece_gfx#18 + (byte) current_xpos#3 ← (byte) current_xpos#19 + (byte) game_over#2 ← (byte) game_over#13 + (byte) next_piece_idx#2 ← (byte) next_piece_idx#14 return to:@return play_move_down: scope:[play_move_down] from play_movement - (byte) next_piece_idx#75 ? phi( play_movement/(byte) next_piece_idx#26 ) - (byte) game_over#82 ? phi( play_movement/(byte) game_over#23 ) - (byte*) current_piece_gfx#107 ? phi( play_movement/(byte*) current_piece_gfx#31 ) - (byte) current_piece_char#94 ? phi( play_movement/(byte) current_piece_char#25 ) - (byte*) current_piece#87 ? phi( play_movement/(byte*) current_piece#24 ) - (byte) level_bcd#90 ? phi( play_movement/(byte) level_bcd#27 ) - (byte) level#97 ? phi( play_movement/(byte) level#29 ) - (dword) score_bcd#75 ? phi( play_movement/(dword) score_bcd#22 ) - (word) lines_bcd#78 ? phi( play_movement/(word) lines_bcd#22 ) - (byte) current_orientation#87 ? phi( play_movement/(byte) current_orientation#32 ) - (byte) current_xpos#112 ? phi( play_movement/(byte) current_xpos#37 ) - (byte) current_ypos#88 ? phi( play_movement/(byte) current_ypos#32 ) - (byte) current_movedown_slow#64 ? phi( play_movement/(byte) current_movedown_slow#30 ) - (byte) play_move_down::key_event#1 ? phi( play_movement/(byte) play_move_down::key_event#0 ) - (byte) current_movedown_counter#11 ? phi( play_movement/(byte) current_movedown_counter#18 ) - (byte) current_movedown_counter#3 ? ++ (byte) current_movedown_counter#11 - (byte) play_move_down::movedown#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_move_down::$0 ? (byte) play_move_down::key_event#1 == (byte) KEY_SPACE#0 - (bool~) play_move_down::$1 ? ! (bool~) play_move_down::$0 + (byte) next_piece_idx#75 ← phi( play_movement/(byte) next_piece_idx#26 ) + (byte) game_over#82 ← phi( play_movement/(byte) game_over#23 ) + (byte*) current_piece_gfx#107 ← phi( play_movement/(byte*) current_piece_gfx#31 ) + (byte) current_piece_char#94 ← phi( play_movement/(byte) current_piece_char#25 ) + (byte*) current_piece#87 ← phi( play_movement/(byte*) current_piece#24 ) + (byte) level_bcd#90 ← phi( play_movement/(byte) level_bcd#27 ) + (byte) level#97 ← phi( play_movement/(byte) level#29 ) + (dword) score_bcd#75 ← phi( play_movement/(dword) score_bcd#22 ) + (word) lines_bcd#78 ← phi( play_movement/(word) lines_bcd#22 ) + (byte) current_orientation#87 ← phi( play_movement/(byte) current_orientation#32 ) + (byte) current_xpos#112 ← phi( play_movement/(byte) current_xpos#37 ) + (byte) current_ypos#88 ← phi( play_movement/(byte) current_ypos#32 ) + (byte) current_movedown_slow#64 ← phi( play_movement/(byte) current_movedown_slow#30 ) + (byte) play_move_down::key_event#1 ← phi( play_movement/(byte) play_move_down::key_event#0 ) + (byte) current_movedown_counter#11 ← phi( play_movement/(byte) current_movedown_counter#18 ) + (byte) current_movedown_counter#3 ← ++ (byte) current_movedown_counter#11 + (byte) play_move_down::movedown#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_move_down::$0 ← (byte) play_move_down::key_event#1 == (byte) KEY_SPACE#0 + (bool~) play_move_down::$1 ← ! (bool~) play_move_down::$0 if((bool~) play_move_down::$1) goto play_move_down::@1 to:play_move_down::@5 play_move_down::@1: scope:[play_move_down] from play_move_down play_move_down::@5 - (byte) next_piece_idx#69 ? phi( play_move_down/(byte) next_piece_idx#75 play_move_down::@5/(byte) next_piece_idx#76 ) - (byte) game_over#73 ? phi( play_move_down/(byte) game_over#82 play_move_down::@5/(byte) game_over#83 ) - (byte*) current_piece_gfx#99 ? phi( play_move_down/(byte*) current_piece_gfx#107 play_move_down::@5/(byte*) current_piece_gfx#108 ) - (byte) current_piece_char#87 ? phi( play_move_down/(byte) current_piece_char#94 play_move_down::@5/(byte) current_piece_char#95 ) - (byte*) current_piece#81 ? phi( play_move_down/(byte*) current_piece#87 play_move_down::@5/(byte*) current_piece#88 ) - (byte) level_bcd#81 ? phi( play_move_down/(byte) level_bcd#90 play_move_down::@5/(byte) level_bcd#91 ) - (byte) level#88 ? phi( play_move_down/(byte) level#97 play_move_down::@5/(byte) level#98 ) - (dword) score_bcd#68 ? phi( play_move_down/(dword) score_bcd#75 play_move_down::@5/(dword) score_bcd#76 ) - (word) lines_bcd#71 ? phi( play_move_down/(word) lines_bcd#78 play_move_down::@5/(word) lines_bcd#79 ) - (byte) current_orientation#76 ? phi( play_move_down/(byte) current_orientation#87 play_move_down::@5/(byte) current_orientation#88 ) - (byte) current_xpos#101 ? phi( play_move_down/(byte) current_xpos#112 play_move_down::@5/(byte) current_xpos#113 ) - (byte) current_ypos#78 ? phi( play_move_down/(byte) current_ypos#88 play_move_down::@5/(byte) current_ypos#89 ) - (byte) play_move_down::movedown#12 ? phi( play_move_down/(byte) play_move_down::movedown#0 play_move_down::@5/(byte) play_move_down::movedown#1 ) - (byte) current_movedown_slow#48 ? phi( play_move_down/(byte) current_movedown_slow#64 play_move_down::@5/(byte) current_movedown_slow#65 ) - (byte) current_movedown_counter#29 ? phi( play_move_down/(byte) current_movedown_counter#3 play_move_down::@5/(byte) current_movedown_counter#37 ) - (byte) keyboard_event_pressed::keycode#4 ? (byte) KEY_SPACE#0 + (byte) next_piece_idx#69 ← phi( play_move_down/(byte) next_piece_idx#75 play_move_down::@5/(byte) next_piece_idx#76 ) + (byte) game_over#73 ← phi( play_move_down/(byte) game_over#82 play_move_down::@5/(byte) game_over#83 ) + (byte*) current_piece_gfx#99 ← phi( play_move_down/(byte*) current_piece_gfx#107 play_move_down::@5/(byte*) current_piece_gfx#108 ) + (byte) current_piece_char#87 ← phi( play_move_down/(byte) current_piece_char#94 play_move_down::@5/(byte) current_piece_char#95 ) + (byte*) current_piece#81 ← phi( play_move_down/(byte*) current_piece#87 play_move_down::@5/(byte*) current_piece#88 ) + (byte) level_bcd#81 ← phi( play_move_down/(byte) level_bcd#90 play_move_down::@5/(byte) level_bcd#91 ) + (byte) level#88 ← phi( play_move_down/(byte) level#97 play_move_down::@5/(byte) level#98 ) + (dword) score_bcd#68 ← phi( play_move_down/(dword) score_bcd#75 play_move_down::@5/(dword) score_bcd#76 ) + (word) lines_bcd#71 ← phi( play_move_down/(word) lines_bcd#78 play_move_down::@5/(word) lines_bcd#79 ) + (byte) current_orientation#76 ← phi( play_move_down/(byte) current_orientation#87 play_move_down::@5/(byte) current_orientation#88 ) + (byte) current_xpos#101 ← phi( play_move_down/(byte) current_xpos#112 play_move_down::@5/(byte) current_xpos#113 ) + (byte) current_ypos#78 ← phi( play_move_down/(byte) current_ypos#88 play_move_down::@5/(byte) current_ypos#89 ) + (byte) play_move_down::movedown#12 ← phi( play_move_down/(byte) play_move_down::movedown#0 play_move_down::@5/(byte) play_move_down::movedown#1 ) + (byte) current_movedown_slow#48 ← phi( play_move_down/(byte) current_movedown_slow#64 play_move_down::@5/(byte) current_movedown_slow#65 ) + (byte) current_movedown_counter#29 ← phi( play_move_down/(byte) current_movedown_counter#3 play_move_down::@5/(byte) current_movedown_counter#37 ) + (byte) keyboard_event_pressed::keycode#4 ← (byte) KEY_SPACE#0 call keyboard_event_pressed - (byte) keyboard_event_pressed::return#6 ? (byte) keyboard_event_pressed::return#5 + (byte) keyboard_event_pressed::return#6 ← (byte) keyboard_event_pressed::return#5 to:play_move_down::@17 play_move_down::@17: scope:[play_move_down] from play_move_down::@1 - (byte) next_piece_idx#59 ? phi( play_move_down::@1/(byte) next_piece_idx#69 ) - (byte) game_over#61 ? phi( play_move_down::@1/(byte) game_over#73 ) - (byte*) current_piece_gfx#86 ? phi( play_move_down::@1/(byte*) current_piece_gfx#99 ) - (byte) current_piece_char#72 ? phi( play_move_down::@1/(byte) current_piece_char#87 ) - (byte*) current_piece#70 ? phi( play_move_down::@1/(byte*) current_piece#81 ) - (byte) level_bcd#72 ? phi( play_move_down::@1/(byte) level_bcd#81 ) - (byte) level#76 ? phi( play_move_down::@1/(byte) level#88 ) - (dword) score_bcd#60 ? phi( play_move_down::@1/(dword) score_bcd#68 ) - (word) lines_bcd#62 ? phi( play_move_down::@1/(word) lines_bcd#71 ) - (byte) current_orientation#64 ? phi( play_move_down::@1/(byte) current_orientation#76 ) - (byte) current_xpos#84 ? phi( play_move_down::@1/(byte) current_xpos#101 ) - (byte) current_ypos#66 ? phi( play_move_down::@1/(byte) current_ypos#78 ) - (byte) play_move_down::movedown#11 ? phi( play_move_down::@1/(byte) play_move_down::movedown#12 ) - (byte) current_movedown_slow#34 ? phi( play_move_down::@1/(byte) current_movedown_slow#48 ) - (byte) current_movedown_counter#22 ? phi( play_move_down::@1/(byte) current_movedown_counter#29 ) - (byte) keyboard_event_pressed::return#12 ? phi( play_move_down::@1/(byte) keyboard_event_pressed::return#6 ) - (byte~) play_move_down::$2 ? (byte) keyboard_event_pressed::return#12 - (bool~) play_move_down::$3 ? (byte~) play_move_down::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_move_down::$4 ? ! (bool~) play_move_down::$3 + (byte) next_piece_idx#59 ← phi( play_move_down::@1/(byte) next_piece_idx#69 ) + (byte) game_over#61 ← phi( play_move_down::@1/(byte) game_over#73 ) + (byte*) current_piece_gfx#86 ← phi( play_move_down::@1/(byte*) current_piece_gfx#99 ) + (byte) current_piece_char#72 ← phi( play_move_down::@1/(byte) current_piece_char#87 ) + (byte*) current_piece#70 ← phi( play_move_down::@1/(byte*) current_piece#81 ) + (byte) level_bcd#72 ← phi( play_move_down::@1/(byte) level_bcd#81 ) + (byte) level#76 ← phi( play_move_down::@1/(byte) level#88 ) + (dword) score_bcd#60 ← phi( play_move_down::@1/(dword) score_bcd#68 ) + (word) lines_bcd#62 ← phi( play_move_down::@1/(word) lines_bcd#71 ) + (byte) current_orientation#64 ← phi( play_move_down::@1/(byte) current_orientation#76 ) + (byte) current_xpos#84 ← phi( play_move_down::@1/(byte) current_xpos#101 ) + (byte) current_ypos#66 ← phi( play_move_down::@1/(byte) current_ypos#78 ) + (byte) play_move_down::movedown#11 ← phi( play_move_down::@1/(byte) play_move_down::movedown#12 ) + (byte) current_movedown_slow#34 ← phi( play_move_down::@1/(byte) current_movedown_slow#48 ) + (byte) current_movedown_counter#22 ← phi( play_move_down::@1/(byte) current_movedown_counter#29 ) + (byte) keyboard_event_pressed::return#12 ← phi( play_move_down::@1/(byte) keyboard_event_pressed::return#6 ) + (byte~) play_move_down::$2 ← (byte) keyboard_event_pressed::return#12 + (bool~) play_move_down::$3 ← (byte~) play_move_down::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_move_down::$4 ← ! (bool~) play_move_down::$3 if((bool~) play_move_down::$4) goto play_move_down::@2 to:play_move_down::@6 play_move_down::@5: scope:[play_move_down] from play_move_down - (byte) next_piece_idx#76 ? phi( play_move_down/(byte) next_piece_idx#75 ) - (byte) game_over#83 ? phi( play_move_down/(byte) game_over#82 ) - (byte*) current_piece_gfx#108 ? phi( play_move_down/(byte*) current_piece_gfx#107 ) - (byte) current_piece_char#95 ? phi( play_move_down/(byte) current_piece_char#94 ) - (byte*) current_piece#88 ? phi( play_move_down/(byte*) current_piece#87 ) - (byte) level_bcd#91 ? phi( play_move_down/(byte) level_bcd#90 ) - (byte) level#98 ? phi( play_move_down/(byte) level#97 ) - (dword) score_bcd#76 ? phi( play_move_down/(dword) score_bcd#75 ) - (word) lines_bcd#79 ? phi( play_move_down/(word) lines_bcd#78 ) - (byte) current_orientation#88 ? phi( play_move_down/(byte) current_orientation#87 ) - (byte) current_xpos#113 ? phi( play_move_down/(byte) current_xpos#112 ) - (byte) current_ypos#89 ? phi( play_move_down/(byte) current_ypos#88 ) - (byte) current_movedown_slow#65 ? phi( play_move_down/(byte) current_movedown_slow#64 ) - (byte) current_movedown_counter#37 ? phi( play_move_down/(byte) current_movedown_counter#3 ) - (byte) play_move_down::movedown#4 ? phi( play_move_down/(byte) play_move_down::movedown#0 ) - (byte) play_move_down::movedown#1 ? ++ (byte) play_move_down::movedown#4 + (byte) next_piece_idx#76 ← phi( play_move_down/(byte) next_piece_idx#75 ) + (byte) game_over#83 ← phi( play_move_down/(byte) game_over#82 ) + (byte*) current_piece_gfx#108 ← phi( play_move_down/(byte*) current_piece_gfx#107 ) + (byte) current_piece_char#95 ← phi( play_move_down/(byte) current_piece_char#94 ) + (byte*) current_piece#88 ← phi( play_move_down/(byte*) current_piece#87 ) + (byte) level_bcd#91 ← phi( play_move_down/(byte) level_bcd#90 ) + (byte) level#98 ← phi( play_move_down/(byte) level#97 ) + (dword) score_bcd#76 ← phi( play_move_down/(dword) score_bcd#75 ) + (word) lines_bcd#79 ← phi( play_move_down/(word) lines_bcd#78 ) + (byte) current_orientation#88 ← phi( play_move_down/(byte) current_orientation#87 ) + (byte) current_xpos#113 ← phi( play_move_down/(byte) current_xpos#112 ) + (byte) current_ypos#89 ← phi( play_move_down/(byte) current_ypos#88 ) + (byte) current_movedown_slow#65 ← phi( play_move_down/(byte) current_movedown_slow#64 ) + (byte) current_movedown_counter#37 ← phi( play_move_down/(byte) current_movedown_counter#3 ) + (byte) play_move_down::movedown#4 ← phi( play_move_down/(byte) play_move_down::movedown#0 ) + (byte) play_move_down::movedown#1 ← ++ (byte) play_move_down::movedown#4 to:play_move_down::@1 play_move_down::@2: scope:[play_move_down] from play_move_down::@13 play_move_down::@17 play_move_down::@7 - (byte) next_piece_idx#50 ? phi( play_move_down::@13/(byte) next_piece_idx#58 play_move_down::@17/(byte) next_piece_idx#59 play_move_down::@7/(byte) next_piece_idx#60 ) - (byte) game_over#47 ? phi( play_move_down::@13/(byte) game_over#60 play_move_down::@17/(byte) game_over#61 play_move_down::@7/(byte) game_over#62 ) - (byte*) current_piece_gfx#66 ? phi( play_move_down::@13/(byte*) current_piece_gfx#85 play_move_down::@17/(byte*) current_piece_gfx#86 play_move_down::@7/(byte*) current_piece_gfx#87 ) - (byte) current_piece_char#54 ? phi( play_move_down::@13/(byte) current_piece_char#71 play_move_down::@17/(byte) current_piece_char#72 play_move_down::@7/(byte) current_piece_char#73 ) - (byte*) current_piece#56 ? phi( play_move_down::@13/(byte*) current_piece#69 play_move_down::@17/(byte*) current_piece#70 play_move_down::@7/(byte*) current_piece#71 ) - (byte) level_bcd#59 ? phi( play_move_down::@13/(byte) level_bcd#71 play_move_down::@17/(byte) level_bcd#72 play_move_down::@7/(byte) level_bcd#73 ) - (byte) level#62 ? phi( play_move_down::@13/(byte) level#75 play_move_down::@17/(byte) level#76 play_move_down::@7/(byte) level#77 ) - (dword) score_bcd#49 ? phi( play_move_down::@13/(dword) score_bcd#59 play_move_down::@17/(dword) score_bcd#60 play_move_down::@7/(dword) score_bcd#61 ) - (word) lines_bcd#49 ? phi( play_move_down::@13/(word) lines_bcd#61 play_move_down::@17/(word) lines_bcd#62 play_move_down::@7/(word) lines_bcd#63 ) - (byte) current_orientation#51 ? phi( play_move_down::@13/(byte) current_orientation#63 play_move_down::@17/(byte) current_orientation#64 play_move_down::@7/(byte) current_orientation#65 ) - (byte) current_xpos#61 ? phi( play_move_down::@13/(byte) current_xpos#83 play_move_down::@17/(byte) current_xpos#84 play_move_down::@7/(byte) current_xpos#85 ) - (byte) current_ypos#51 ? phi( play_move_down::@13/(byte) current_ypos#65 play_move_down::@17/(byte) current_ypos#66 play_move_down::@7/(byte) current_ypos#67 ) - (byte) play_move_down::movedown#9 ? phi( play_move_down::@13/(byte) play_move_down::movedown#10 play_move_down::@17/(byte) play_move_down::movedown#11 play_move_down::@7/(byte) play_move_down::movedown#2 ) - (byte) current_movedown_slow#19 ? phi( play_move_down::@13/(byte) current_movedown_slow#33 play_move_down::@17/(byte) current_movedown_slow#34 play_move_down::@7/(byte) current_movedown_slow#35 ) - (byte) current_movedown_counter#12 ? phi( play_move_down::@13/(byte) current_movedown_counter#21 play_move_down::@17/(byte) current_movedown_counter#22 play_move_down::@7/(byte) current_movedown_counter#23 ) - (bool~) play_move_down::$5 ? (byte) current_movedown_counter#12 >= (byte) current_movedown_slow#19 - (bool~) play_move_down::$6 ? ! (bool~) play_move_down::$5 + (byte) next_piece_idx#50 ← phi( play_move_down::@13/(byte) next_piece_idx#58 play_move_down::@17/(byte) next_piece_idx#59 play_move_down::@7/(byte) next_piece_idx#60 ) + (byte) game_over#47 ← phi( play_move_down::@13/(byte) game_over#60 play_move_down::@17/(byte) game_over#61 play_move_down::@7/(byte) game_over#62 ) + (byte*) current_piece_gfx#66 ← phi( play_move_down::@13/(byte*) current_piece_gfx#85 play_move_down::@17/(byte*) current_piece_gfx#86 play_move_down::@7/(byte*) current_piece_gfx#87 ) + (byte) current_piece_char#54 ← phi( play_move_down::@13/(byte) current_piece_char#71 play_move_down::@17/(byte) current_piece_char#72 play_move_down::@7/(byte) current_piece_char#73 ) + (byte*) current_piece#56 ← phi( play_move_down::@13/(byte*) current_piece#69 play_move_down::@17/(byte*) current_piece#70 play_move_down::@7/(byte*) current_piece#71 ) + (byte) level_bcd#59 ← phi( play_move_down::@13/(byte) level_bcd#71 play_move_down::@17/(byte) level_bcd#72 play_move_down::@7/(byte) level_bcd#73 ) + (byte) level#62 ← phi( play_move_down::@13/(byte) level#75 play_move_down::@17/(byte) level#76 play_move_down::@7/(byte) level#77 ) + (dword) score_bcd#49 ← phi( play_move_down::@13/(dword) score_bcd#59 play_move_down::@17/(dword) score_bcd#60 play_move_down::@7/(dword) score_bcd#61 ) + (word) lines_bcd#49 ← phi( play_move_down::@13/(word) lines_bcd#61 play_move_down::@17/(word) lines_bcd#62 play_move_down::@7/(word) lines_bcd#63 ) + (byte) current_orientation#51 ← phi( play_move_down::@13/(byte) current_orientation#63 play_move_down::@17/(byte) current_orientation#64 play_move_down::@7/(byte) current_orientation#65 ) + (byte) current_xpos#61 ← phi( play_move_down::@13/(byte) current_xpos#83 play_move_down::@17/(byte) current_xpos#84 play_move_down::@7/(byte) current_xpos#85 ) + (byte) current_ypos#51 ← phi( play_move_down::@13/(byte) current_ypos#65 play_move_down::@17/(byte) current_ypos#66 play_move_down::@7/(byte) current_ypos#67 ) + (byte) play_move_down::movedown#9 ← phi( play_move_down::@13/(byte) play_move_down::movedown#10 play_move_down::@17/(byte) play_move_down::movedown#11 play_move_down::@7/(byte) play_move_down::movedown#2 ) + (byte) current_movedown_slow#19 ← phi( play_move_down::@13/(byte) current_movedown_slow#33 play_move_down::@17/(byte) current_movedown_slow#34 play_move_down::@7/(byte) current_movedown_slow#35 ) + (byte) current_movedown_counter#12 ← phi( play_move_down::@13/(byte) current_movedown_counter#21 play_move_down::@17/(byte) current_movedown_counter#22 play_move_down::@7/(byte) current_movedown_counter#23 ) + (bool~) play_move_down::$5 ← (byte) current_movedown_counter#12 >= (byte) current_movedown_slow#19 + (bool~) play_move_down::$6 ← ! (bool~) play_move_down::$5 if((bool~) play_move_down::$6) goto play_move_down::@3 to:play_move_down::@8 play_move_down::@6: scope:[play_move_down] from play_move_down::@17 - (byte) next_piece_idx#70 ? phi( play_move_down::@17/(byte) next_piece_idx#59 ) - (byte) game_over#74 ? phi( play_move_down::@17/(byte) game_over#61 ) - (byte*) current_piece_gfx#100 ? phi( play_move_down::@17/(byte*) current_piece_gfx#86 ) - (byte) current_piece_char#88 ? phi( play_move_down::@17/(byte) current_piece_char#72 ) - (byte*) current_piece#82 ? phi( play_move_down::@17/(byte*) current_piece#70 ) - (byte) level_bcd#82 ? phi( play_move_down::@17/(byte) level_bcd#72 ) - (byte) level#89 ? phi( play_move_down::@17/(byte) level#76 ) - (dword) score_bcd#69 ? phi( play_move_down::@17/(dword) score_bcd#60 ) - (word) lines_bcd#72 ? phi( play_move_down::@17/(word) lines_bcd#62 ) - (byte) current_orientation#77 ? phi( play_move_down::@17/(byte) current_orientation#64 ) - (byte) current_xpos#102 ? phi( play_move_down::@17/(byte) current_xpos#84 ) - (byte) current_ypos#79 ? phi( play_move_down::@17/(byte) current_ypos#66 ) - (byte) current_movedown_slow#49 ? phi( play_move_down::@17/(byte) current_movedown_slow#34 ) - (byte) play_move_down::movedown#8 ? phi( play_move_down::@17/(byte) play_move_down::movedown#11 ) - (byte) current_movedown_counter#13 ? phi( play_move_down::@17/(byte) current_movedown_counter#22 ) - (bool~) play_move_down::$9 ? (byte) current_movedown_counter#13 >= (byte) current_movedown_fast#0 - (bool~) play_move_down::$10 ? ! (bool~) play_move_down::$9 + (byte) next_piece_idx#70 ← phi( play_move_down::@17/(byte) next_piece_idx#59 ) + (byte) game_over#74 ← phi( play_move_down::@17/(byte) game_over#61 ) + (byte*) current_piece_gfx#100 ← phi( play_move_down::@17/(byte*) current_piece_gfx#86 ) + (byte) current_piece_char#88 ← phi( play_move_down::@17/(byte) current_piece_char#72 ) + (byte*) current_piece#82 ← phi( play_move_down::@17/(byte*) current_piece#70 ) + (byte) level_bcd#82 ← phi( play_move_down::@17/(byte) level_bcd#72 ) + (byte) level#89 ← phi( play_move_down::@17/(byte) level#76 ) + (dword) score_bcd#69 ← phi( play_move_down::@17/(dword) score_bcd#60 ) + (word) lines_bcd#72 ← phi( play_move_down::@17/(word) lines_bcd#62 ) + (byte) current_orientation#77 ← phi( play_move_down::@17/(byte) current_orientation#64 ) + (byte) current_xpos#102 ← phi( play_move_down::@17/(byte) current_xpos#84 ) + (byte) current_ypos#79 ← phi( play_move_down::@17/(byte) current_ypos#66 ) + (byte) current_movedown_slow#49 ← phi( play_move_down::@17/(byte) current_movedown_slow#34 ) + (byte) play_move_down::movedown#8 ← phi( play_move_down::@17/(byte) play_move_down::movedown#11 ) + (byte) current_movedown_counter#13 ← phi( play_move_down::@17/(byte) current_movedown_counter#22 ) + (bool~) play_move_down::$9 ← (byte) current_movedown_counter#13 >= (byte) current_movedown_fast#0 + (bool~) play_move_down::$10 ← ! (bool~) play_move_down::$9 if((bool~) play_move_down::$10) goto play_move_down::@13 to:play_move_down::@7 play_move_down::@13: scope:[play_move_down] from play_move_down::@6 - (byte) next_piece_idx#58 ? phi( play_move_down::@6/(byte) next_piece_idx#70 ) - (byte) game_over#60 ? phi( play_move_down::@6/(byte) game_over#74 ) - (byte*) current_piece_gfx#85 ? phi( play_move_down::@6/(byte*) current_piece_gfx#100 ) - (byte) current_piece_char#71 ? phi( play_move_down::@6/(byte) current_piece_char#88 ) - (byte*) current_piece#69 ? phi( play_move_down::@6/(byte*) current_piece#82 ) - (byte) level_bcd#71 ? phi( play_move_down::@6/(byte) level_bcd#82 ) - (byte) level#75 ? phi( play_move_down::@6/(byte) level#89 ) - (dword) score_bcd#59 ? phi( play_move_down::@6/(dword) score_bcd#69 ) - (word) lines_bcd#61 ? phi( play_move_down::@6/(word) lines_bcd#72 ) - (byte) current_orientation#63 ? phi( play_move_down::@6/(byte) current_orientation#77 ) - (byte) current_xpos#83 ? phi( play_move_down::@6/(byte) current_xpos#102 ) - (byte) current_ypos#65 ? phi( play_move_down::@6/(byte) current_ypos#79 ) - (byte) play_move_down::movedown#10 ? phi( play_move_down::@6/(byte) play_move_down::movedown#8 ) - (byte) current_movedown_slow#33 ? phi( play_move_down::@6/(byte) current_movedown_slow#49 ) - (byte) current_movedown_counter#21 ? phi( play_move_down::@6/(byte) current_movedown_counter#13 ) + (byte) next_piece_idx#58 ← phi( play_move_down::@6/(byte) next_piece_idx#70 ) + (byte) game_over#60 ← phi( play_move_down::@6/(byte) game_over#74 ) + (byte*) current_piece_gfx#85 ← phi( play_move_down::@6/(byte*) current_piece_gfx#100 ) + (byte) current_piece_char#71 ← phi( play_move_down::@6/(byte) current_piece_char#88 ) + (byte*) current_piece#69 ← phi( play_move_down::@6/(byte*) current_piece#82 ) + (byte) level_bcd#71 ← phi( play_move_down::@6/(byte) level_bcd#82 ) + (byte) level#75 ← phi( play_move_down::@6/(byte) level#89 ) + (dword) score_bcd#59 ← phi( play_move_down::@6/(dword) score_bcd#69 ) + (word) lines_bcd#61 ← phi( play_move_down::@6/(word) lines_bcd#72 ) + (byte) current_orientation#63 ← phi( play_move_down::@6/(byte) current_orientation#77 ) + (byte) current_xpos#83 ← phi( play_move_down::@6/(byte) current_xpos#102 ) + (byte) current_ypos#65 ← phi( play_move_down::@6/(byte) current_ypos#79 ) + (byte) play_move_down::movedown#10 ← phi( play_move_down::@6/(byte) play_move_down::movedown#8 ) + (byte) current_movedown_slow#33 ← phi( play_move_down::@6/(byte) current_movedown_slow#49 ) + (byte) current_movedown_counter#21 ← phi( play_move_down::@6/(byte) current_movedown_counter#13 ) to:play_move_down::@2 play_move_down::@7: scope:[play_move_down] from play_move_down::@6 - (byte) next_piece_idx#60 ? phi( play_move_down::@6/(byte) next_piece_idx#70 ) - (byte) game_over#62 ? phi( play_move_down::@6/(byte) game_over#74 ) - (byte*) current_piece_gfx#87 ? phi( play_move_down::@6/(byte*) current_piece_gfx#100 ) - (byte) current_piece_char#73 ? phi( play_move_down::@6/(byte) current_piece_char#88 ) - (byte*) current_piece#71 ? phi( play_move_down::@6/(byte*) current_piece#82 ) - (byte) level_bcd#73 ? phi( play_move_down::@6/(byte) level_bcd#82 ) - (byte) level#77 ? phi( play_move_down::@6/(byte) level#89 ) - (dword) score_bcd#61 ? phi( play_move_down::@6/(dword) score_bcd#69 ) - (word) lines_bcd#63 ? phi( play_move_down::@6/(word) lines_bcd#72 ) - (byte) current_orientation#65 ? phi( play_move_down::@6/(byte) current_orientation#77 ) - (byte) current_xpos#85 ? phi( play_move_down::@6/(byte) current_xpos#102 ) - (byte) current_ypos#67 ? phi( play_move_down::@6/(byte) current_ypos#79 ) - (byte) current_movedown_slow#35 ? phi( play_move_down::@6/(byte) current_movedown_slow#49 ) - (byte) current_movedown_counter#23 ? phi( play_move_down::@6/(byte) current_movedown_counter#13 ) - (byte) play_move_down::movedown#5 ? phi( play_move_down::@6/(byte) play_move_down::movedown#8 ) - (byte) play_move_down::movedown#2 ? ++ (byte) play_move_down::movedown#5 + (byte) next_piece_idx#60 ← phi( play_move_down::@6/(byte) next_piece_idx#70 ) + (byte) game_over#62 ← phi( play_move_down::@6/(byte) game_over#74 ) + (byte*) current_piece_gfx#87 ← phi( play_move_down::@6/(byte*) current_piece_gfx#100 ) + (byte) current_piece_char#73 ← phi( play_move_down::@6/(byte) current_piece_char#88 ) + (byte*) current_piece#71 ← phi( play_move_down::@6/(byte*) current_piece#82 ) + (byte) level_bcd#73 ← phi( play_move_down::@6/(byte) level_bcd#82 ) + (byte) level#77 ← phi( play_move_down::@6/(byte) level#89 ) + (dword) score_bcd#61 ← phi( play_move_down::@6/(dword) score_bcd#69 ) + (word) lines_bcd#63 ← phi( play_move_down::@6/(word) lines_bcd#72 ) + (byte) current_orientation#65 ← phi( play_move_down::@6/(byte) current_orientation#77 ) + (byte) current_xpos#85 ← phi( play_move_down::@6/(byte) current_xpos#102 ) + (byte) current_ypos#67 ← phi( play_move_down::@6/(byte) current_ypos#79 ) + (byte) current_movedown_slow#35 ← phi( play_move_down::@6/(byte) current_movedown_slow#49 ) + (byte) current_movedown_counter#23 ← phi( play_move_down::@6/(byte) current_movedown_counter#13 ) + (byte) play_move_down::movedown#5 ← phi( play_move_down::@6/(byte) play_move_down::movedown#8 ) + (byte) play_move_down::movedown#2 ← ++ (byte) play_move_down::movedown#5 to:play_move_down::@2 play_move_down::@3: scope:[play_move_down] from play_move_down::@2 play_move_down::@8 - (byte) next_piece_idx#38 ? phi( play_move_down::@2/(byte) next_piece_idx#50 play_move_down::@8/(byte) next_piece_idx#51 ) - (byte) game_over#36 ? phi( play_move_down::@2/(byte) game_over#47 play_move_down::@8/(byte) game_over#48 ) - (byte*) current_piece_gfx#49 ? phi( play_move_down::@2/(byte*) current_piece_gfx#66 play_move_down::@8/(byte*) current_piece_gfx#67 ) - (byte) current_piece_char#40 ? phi( play_move_down::@2/(byte) current_piece_char#54 play_move_down::@8/(byte) current_piece_char#55 ) - (byte*) current_piece#41 ? phi( play_move_down::@2/(byte*) current_piece#56 play_move_down::@8/(byte*) current_piece#57 ) - (byte) level_bcd#44 ? phi( play_move_down::@2/(byte) level_bcd#59 play_move_down::@8/(byte) level_bcd#60 ) - (byte) current_movedown_slow#50 ? phi( play_move_down::@2/(byte) current_movedown_slow#19 play_move_down::@8/(byte) current_movedown_slow#66 ) - (byte) level#46 ? phi( play_move_down::@2/(byte) level#62 play_move_down::@8/(byte) level#63 ) - (dword) score_bcd#37 ? phi( play_move_down::@2/(dword) score_bcd#49 play_move_down::@8/(dword) score_bcd#50 ) - (word) lines_bcd#37 ? phi( play_move_down::@2/(word) lines_bcd#49 play_move_down::@8/(word) lines_bcd#50 ) - (byte) current_movedown_counter#30 ? phi( play_move_down::@2/(byte) current_movedown_counter#12 play_move_down::@8/(byte) current_movedown_counter#38 ) - (byte) current_orientation#35 ? phi( play_move_down::@2/(byte) current_orientation#51 play_move_down::@8/(byte) current_orientation#52 ) - (byte) current_xpos#41 ? phi( play_move_down::@2/(byte) current_xpos#61 play_move_down::@8/(byte) current_xpos#62 ) - (byte) current_ypos#35 ? phi( play_move_down::@2/(byte) current_ypos#51 play_move_down::@8/(byte) current_ypos#52 ) - (byte) play_move_down::movedown#6 ? phi( play_move_down::@2/(byte) play_move_down::movedown#9 play_move_down::@8/(byte) play_move_down::movedown#3 ) - (bool~) play_move_down::$7 ? (byte) play_move_down::movedown#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_move_down::$8 ? ! (bool~) play_move_down::$7 + (byte) next_piece_idx#38 ← phi( play_move_down::@2/(byte) next_piece_idx#50 play_move_down::@8/(byte) next_piece_idx#51 ) + (byte) game_over#36 ← phi( play_move_down::@2/(byte) game_over#47 play_move_down::@8/(byte) game_over#48 ) + (byte*) current_piece_gfx#49 ← phi( play_move_down::@2/(byte*) current_piece_gfx#66 play_move_down::@8/(byte*) current_piece_gfx#67 ) + (byte) current_piece_char#40 ← phi( play_move_down::@2/(byte) current_piece_char#54 play_move_down::@8/(byte) current_piece_char#55 ) + (byte*) current_piece#41 ← phi( play_move_down::@2/(byte*) current_piece#56 play_move_down::@8/(byte*) current_piece#57 ) + (byte) level_bcd#44 ← phi( play_move_down::@2/(byte) level_bcd#59 play_move_down::@8/(byte) level_bcd#60 ) + (byte) current_movedown_slow#50 ← phi( play_move_down::@2/(byte) current_movedown_slow#19 play_move_down::@8/(byte) current_movedown_slow#66 ) + (byte) level#46 ← phi( play_move_down::@2/(byte) level#62 play_move_down::@8/(byte) level#63 ) + (dword) score_bcd#37 ← phi( play_move_down::@2/(dword) score_bcd#49 play_move_down::@8/(dword) score_bcd#50 ) + (word) lines_bcd#37 ← phi( play_move_down::@2/(word) lines_bcd#49 play_move_down::@8/(word) lines_bcd#50 ) + (byte) current_movedown_counter#30 ← phi( play_move_down::@2/(byte) current_movedown_counter#12 play_move_down::@8/(byte) current_movedown_counter#38 ) + (byte) current_orientation#35 ← phi( play_move_down::@2/(byte) current_orientation#51 play_move_down::@8/(byte) current_orientation#52 ) + (byte) current_xpos#41 ← phi( play_move_down::@2/(byte) current_xpos#61 play_move_down::@8/(byte) current_xpos#62 ) + (byte) current_ypos#35 ← phi( play_move_down::@2/(byte) current_ypos#51 play_move_down::@8/(byte) current_ypos#52 ) + (byte) play_move_down::movedown#6 ← phi( play_move_down::@2/(byte) play_move_down::movedown#9 play_move_down::@8/(byte) play_move_down::movedown#3 ) + (bool~) play_move_down::$7 ← (byte) play_move_down::movedown#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_move_down::$8 ← ! (bool~) play_move_down::$7 if((bool~) play_move_down::$8) goto play_move_down::@4 to:play_move_down::@9 play_move_down::@8: scope:[play_move_down] from play_move_down::@2 - (byte) next_piece_idx#51 ? phi( play_move_down::@2/(byte) next_piece_idx#50 ) - (byte) game_over#48 ? phi( play_move_down::@2/(byte) game_over#47 ) - (byte*) current_piece_gfx#67 ? phi( play_move_down::@2/(byte*) current_piece_gfx#66 ) - (byte) current_piece_char#55 ? phi( play_move_down::@2/(byte) current_piece_char#54 ) - (byte*) current_piece#57 ? phi( play_move_down::@2/(byte*) current_piece#56 ) - (byte) level_bcd#60 ? phi( play_move_down::@2/(byte) level_bcd#59 ) - (byte) current_movedown_slow#66 ? phi( play_move_down::@2/(byte) current_movedown_slow#19 ) - (byte) level#63 ? phi( play_move_down::@2/(byte) level#62 ) - (dword) score_bcd#50 ? phi( play_move_down::@2/(dword) score_bcd#49 ) - (word) lines_bcd#50 ? phi( play_move_down::@2/(word) lines_bcd#49 ) - (byte) current_movedown_counter#38 ? phi( play_move_down::@2/(byte) current_movedown_counter#12 ) - (byte) current_orientation#52 ? phi( play_move_down::@2/(byte) current_orientation#51 ) - (byte) current_xpos#62 ? phi( play_move_down::@2/(byte) current_xpos#61 ) - (byte) current_ypos#52 ? phi( play_move_down::@2/(byte) current_ypos#51 ) - (byte) play_move_down::movedown#7 ? phi( play_move_down::@2/(byte) play_move_down::movedown#9 ) - (byte) play_move_down::movedown#3 ? ++ (byte) play_move_down::movedown#7 + (byte) next_piece_idx#51 ← phi( play_move_down::@2/(byte) next_piece_idx#50 ) + (byte) game_over#48 ← phi( play_move_down::@2/(byte) game_over#47 ) + (byte*) current_piece_gfx#67 ← phi( play_move_down::@2/(byte*) current_piece_gfx#66 ) + (byte) current_piece_char#55 ← phi( play_move_down::@2/(byte) current_piece_char#54 ) + (byte*) current_piece#57 ← phi( play_move_down::@2/(byte*) current_piece#56 ) + (byte) level_bcd#60 ← phi( play_move_down::@2/(byte) level_bcd#59 ) + (byte) current_movedown_slow#66 ← phi( play_move_down::@2/(byte) current_movedown_slow#19 ) + (byte) level#63 ← phi( play_move_down::@2/(byte) level#62 ) + (dword) score_bcd#50 ← phi( play_move_down::@2/(dword) score_bcd#49 ) + (word) lines_bcd#50 ← phi( play_move_down::@2/(word) lines_bcd#49 ) + (byte) current_movedown_counter#38 ← phi( play_move_down::@2/(byte) current_movedown_counter#12 ) + (byte) current_orientation#52 ← phi( play_move_down::@2/(byte) current_orientation#51 ) + (byte) current_xpos#62 ← phi( play_move_down::@2/(byte) current_xpos#61 ) + (byte) current_ypos#52 ← phi( play_move_down::@2/(byte) current_ypos#51 ) + (byte) play_move_down::movedown#7 ← phi( play_move_down::@2/(byte) play_move_down::movedown#9 ) + (byte) play_move_down::movedown#3 ← ++ (byte) play_move_down::movedown#7 to:play_move_down::@3 play_move_down::@4: scope:[play_move_down] from play_move_down::@3 - (byte) next_piece_idx#31 ? phi( play_move_down::@3/(byte) next_piece_idx#38 ) - (byte) game_over#28 ? phi( play_move_down::@3/(byte) game_over#36 ) - (byte) current_xpos#44 ? phi( play_move_down::@3/(byte) current_xpos#41 ) - (byte*) current_piece_gfx#36 ? phi( play_move_down::@3/(byte*) current_piece_gfx#49 ) - (byte) current_orientation#38 ? phi( play_move_down::@3/(byte) current_orientation#35 ) - (byte) current_piece_char#30 ? phi( play_move_down::@3/(byte) current_piece_char#40 ) - (byte*) current_piece#29 ? phi( play_move_down::@3/(byte*) current_piece#41 ) - (byte) level_bcd#32 ? phi( play_move_down::@3/(byte) level_bcd#44 ) - (byte) current_movedown_slow#38 ? phi( play_move_down::@3/(byte) current_movedown_slow#50 ) - (byte) level#34 ? phi( play_move_down::@3/(byte) level#46 ) - (dword) score_bcd#27 ? phi( play_move_down::@3/(dword) score_bcd#37 ) - (word) lines_bcd#27 ? phi( play_move_down::@3/(word) lines_bcd#37 ) - (byte) current_ypos#39 ? phi( play_move_down::@3/(byte) current_ypos#35 ) - (byte) current_movedown_counter#24 ? phi( play_move_down::@3/(byte) current_movedown_counter#30 ) - (byte) play_move_down::return#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) next_piece_idx#31 ← phi( play_move_down::@3/(byte) next_piece_idx#38 ) + (byte) game_over#28 ← phi( play_move_down::@3/(byte) game_over#36 ) + (byte) current_xpos#44 ← phi( play_move_down::@3/(byte) current_xpos#41 ) + (byte*) current_piece_gfx#36 ← phi( play_move_down::@3/(byte*) current_piece_gfx#49 ) + (byte) current_orientation#38 ← phi( play_move_down::@3/(byte) current_orientation#35 ) + (byte) current_piece_char#30 ← phi( play_move_down::@3/(byte) current_piece_char#40 ) + (byte*) current_piece#29 ← phi( play_move_down::@3/(byte*) current_piece#41 ) + (byte) level_bcd#32 ← phi( play_move_down::@3/(byte) level_bcd#44 ) + (byte) current_movedown_slow#38 ← phi( play_move_down::@3/(byte) current_movedown_slow#50 ) + (byte) level#34 ← phi( play_move_down::@3/(byte) level#46 ) + (dword) score_bcd#27 ← phi( play_move_down::@3/(dword) score_bcd#37 ) + (word) lines_bcd#27 ← phi( play_move_down::@3/(word) lines_bcd#37 ) + (byte) current_ypos#39 ← phi( play_move_down::@3/(byte) current_ypos#35 ) + (byte) current_movedown_counter#24 ← phi( play_move_down::@3/(byte) current_movedown_counter#30 ) + (byte) play_move_down::return#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_move_down::@return play_move_down::@9: scope:[play_move_down] from play_move_down::@3 - (byte) next_piece_idx#61 ? phi( play_move_down::@3/(byte) next_piece_idx#38 ) - (byte) game_over#63 ? phi( play_move_down::@3/(byte) game_over#36 ) - (byte*) current_piece_gfx#88 ? phi( play_move_down::@3/(byte*) current_piece_gfx#49 ) - (byte) current_piece_char#74 ? phi( play_move_down::@3/(byte) current_piece_char#40 ) - (byte) level_bcd#74 ? phi( play_move_down::@3/(byte) level_bcd#44 ) - (byte) current_movedown_slow#75 ? phi( play_move_down::@3/(byte) current_movedown_slow#50 ) - (byte) level#78 ? phi( play_move_down::@3/(byte) level#46 ) - (dword) score_bcd#62 ? phi( play_move_down::@3/(dword) score_bcd#37 ) - (word) lines_bcd#64 ? phi( play_move_down::@3/(word) lines_bcd#37 ) - (byte*) current_piece#31 ? phi( play_move_down::@3/(byte*) current_piece#41 ) - (byte) current_orientation#18 ? phi( play_move_down::@3/(byte) current_orientation#35 ) - (byte) current_xpos#20 ? phi( play_move_down::@3/(byte) current_xpos#41 ) - (byte) current_ypos#16 ? phi( play_move_down::@3/(byte) current_ypos#35 ) - (byte/signed word/word/dword/signed dword~) play_move_down::$11 ? (byte) current_ypos#16 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_collision::xpos#0 ? (byte) current_xpos#20 - (byte) play_collision::ypos#0 ? (byte/signed word/word/dword/signed dword~) play_move_down::$11 - (byte) play_collision::orientation#0 ? (byte) current_orientation#18 + (byte) next_piece_idx#61 ← phi( play_move_down::@3/(byte) next_piece_idx#38 ) + (byte) game_over#63 ← phi( play_move_down::@3/(byte) game_over#36 ) + (byte*) current_piece_gfx#88 ← phi( play_move_down::@3/(byte*) current_piece_gfx#49 ) + (byte) current_piece_char#74 ← phi( play_move_down::@3/(byte) current_piece_char#40 ) + (byte) level_bcd#74 ← phi( play_move_down::@3/(byte) level_bcd#44 ) + (byte) current_movedown_slow#75 ← phi( play_move_down::@3/(byte) current_movedown_slow#50 ) + (byte) level#78 ← phi( play_move_down::@3/(byte) level#46 ) + (dword) score_bcd#62 ← phi( play_move_down::@3/(dword) score_bcd#37 ) + (word) lines_bcd#64 ← phi( play_move_down::@3/(word) lines_bcd#37 ) + (byte*) current_piece#31 ← phi( play_move_down::@3/(byte*) current_piece#41 ) + (byte) current_orientation#18 ← phi( play_move_down::@3/(byte) current_orientation#35 ) + (byte) current_xpos#20 ← phi( play_move_down::@3/(byte) current_xpos#41 ) + (byte) current_ypos#16 ← phi( play_move_down::@3/(byte) current_ypos#35 ) + (byte/signed word/word/dword/signed dword~) play_move_down::$11 ← (byte) current_ypos#16 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_collision::xpos#0 ← (byte) current_xpos#20 + (byte) play_collision::ypos#0 ← (byte/signed word/word/dword/signed dword~) play_move_down::$11 + (byte) play_collision::orientation#0 ← (byte) current_orientation#18 call play_collision - (byte) play_collision::return#0 ? (byte) play_collision::return#5 + (byte) play_collision::return#0 ← (byte) play_collision::return#5 to:play_move_down::@18 play_move_down::@18: scope:[play_move_down] from play_move_down::@9 - (byte) next_piece_idx#52 ? phi( play_move_down::@9/(byte) next_piece_idx#61 ) - (byte) game_over#49 ? phi( play_move_down::@9/(byte) game_over#63 ) - (byte) current_xpos#86 ? phi( play_move_down::@9/(byte) current_xpos#20 ) - (byte*) current_piece_gfx#68 ? phi( play_move_down::@9/(byte*) current_piece_gfx#88 ) - (byte) current_orientation#66 ? phi( play_move_down::@9/(byte) current_orientation#18 ) - (byte) current_piece_char#56 ? phi( play_move_down::@9/(byte) current_piece_char#74 ) - (byte*) current_piece#58 ? phi( play_move_down::@9/(byte*) current_piece#31 ) - (byte) level_bcd#61 ? phi( play_move_down::@9/(byte) level_bcd#74 ) - (byte) current_movedown_slow#67 ? phi( play_move_down::@9/(byte) current_movedown_slow#75 ) - (byte) level#64 ? phi( play_move_down::@9/(byte) level#78 ) - (dword) score_bcd#51 ? phi( play_move_down::@9/(dword) score_bcd#62 ) - (word) lines_bcd#51 ? phi( play_move_down::@9/(word) lines_bcd#64 ) - (byte) current_ypos#36 ? phi( play_move_down::@9/(byte) current_ypos#16 ) - (byte) play_collision::return#11 ? phi( play_move_down::@9/(byte) play_collision::return#0 ) - (byte~) play_move_down::$12 ? (byte) play_collision::return#11 - (bool~) play_move_down::$13 ? (byte~) play_move_down::$12 == (byte) COLLISION_NONE#0 + (byte) next_piece_idx#52 ← phi( play_move_down::@9/(byte) next_piece_idx#61 ) + (byte) game_over#49 ← phi( play_move_down::@9/(byte) game_over#63 ) + (byte) current_xpos#86 ← phi( play_move_down::@9/(byte) current_xpos#20 ) + (byte*) current_piece_gfx#68 ← phi( play_move_down::@9/(byte*) current_piece_gfx#88 ) + (byte) current_orientation#66 ← phi( play_move_down::@9/(byte) current_orientation#18 ) + (byte) current_piece_char#56 ← phi( play_move_down::@9/(byte) current_piece_char#74 ) + (byte*) current_piece#58 ← phi( play_move_down::@9/(byte*) current_piece#31 ) + (byte) level_bcd#61 ← phi( play_move_down::@9/(byte) level_bcd#74 ) + (byte) current_movedown_slow#67 ← phi( play_move_down::@9/(byte) current_movedown_slow#75 ) + (byte) level#64 ← phi( play_move_down::@9/(byte) level#78 ) + (dword) score_bcd#51 ← phi( play_move_down::@9/(dword) score_bcd#62 ) + (word) lines_bcd#51 ← phi( play_move_down::@9/(word) lines_bcd#64 ) + (byte) current_ypos#36 ← phi( play_move_down::@9/(byte) current_ypos#16 ) + (byte) play_collision::return#11 ← phi( play_move_down::@9/(byte) play_collision::return#0 ) + (byte~) play_move_down::$12 ← (byte) play_collision::return#11 + (bool~) play_move_down::$13 ← (byte~) play_move_down::$12 == (byte) COLLISION_NONE#0 if((bool~) play_move_down::$13) goto play_move_down::@14 to:play_move_down::@10 play_move_down::@14: scope:[play_move_down] from play_move_down::@18 - (byte) next_piece_idx#40 ? phi( play_move_down::@18/(byte) next_piece_idx#52 ) - (byte) game_over#38 ? phi( play_move_down::@18/(byte) game_over#49 ) - (byte) current_xpos#64 ? phi( play_move_down::@18/(byte) current_xpos#86 ) - (byte*) current_piece_gfx#51 ? phi( play_move_down::@18/(byte*) current_piece_gfx#68 ) - (byte) current_orientation#54 ? phi( play_move_down::@18/(byte) current_orientation#66 ) - (byte) current_piece_char#42 ? phi( play_move_down::@18/(byte) current_piece_char#56 ) - (byte*) current_piece#43 ? phi( play_move_down::@18/(byte*) current_piece#58 ) - (byte) level_bcd#46 ? phi( play_move_down::@18/(byte) level_bcd#61 ) - (byte) current_movedown_slow#52 ? phi( play_move_down::@18/(byte) current_movedown_slow#67 ) - (byte) level#48 ? phi( play_move_down::@18/(byte) level#64 ) - (dword) score_bcd#39 ? phi( play_move_down::@18/(dword) score_bcd#51 ) - (word) lines_bcd#39 ? phi( play_move_down::@18/(word) lines_bcd#51 ) - (byte) current_ypos#17 ? phi( play_move_down::@18/(byte) current_ypos#36 ) - (byte) current_ypos#3 ? ++ (byte) current_ypos#17 + (byte) next_piece_idx#40 ← phi( play_move_down::@18/(byte) next_piece_idx#52 ) + (byte) game_over#38 ← phi( play_move_down::@18/(byte) game_over#49 ) + (byte) current_xpos#64 ← phi( play_move_down::@18/(byte) current_xpos#86 ) + (byte*) current_piece_gfx#51 ← phi( play_move_down::@18/(byte*) current_piece_gfx#68 ) + (byte) current_orientation#54 ← phi( play_move_down::@18/(byte) current_orientation#66 ) + (byte) current_piece_char#42 ← phi( play_move_down::@18/(byte) current_piece_char#56 ) + (byte*) current_piece#43 ← phi( play_move_down::@18/(byte*) current_piece#58 ) + (byte) level_bcd#46 ← phi( play_move_down::@18/(byte) level_bcd#61 ) + (byte) current_movedown_slow#52 ← phi( play_move_down::@18/(byte) current_movedown_slow#67 ) + (byte) level#48 ← phi( play_move_down::@18/(byte) level#64 ) + (dword) score_bcd#39 ← phi( play_move_down::@18/(dword) score_bcd#51 ) + (word) lines_bcd#39 ← phi( play_move_down::@18/(word) lines_bcd#51 ) + (byte) current_ypos#17 ← phi( play_move_down::@18/(byte) current_ypos#36 ) + (byte) current_ypos#3 ← ++ (byte) current_ypos#17 to:play_move_down::@15 play_move_down::@10: scope:[play_move_down] from play_move_down::@18 - (byte) next_piece_idx#62 ? phi( play_move_down::@18/(byte) next_piece_idx#52 ) - (byte) game_over#64 ? phi( play_move_down::@18/(byte) game_over#49 ) - (byte) current_orientation#78 ? phi( play_move_down::@18/(byte) current_orientation#66 ) - (byte) current_piece_char#75 ? phi( play_move_down::@18/(byte) current_piece_char#56 ) - (byte*) current_piece#72 ? phi( play_move_down::@18/(byte*) current_piece#58 ) - (byte*) current_piece_gfx#73 ? phi( play_move_down::@18/(byte*) current_piece_gfx#68 ) - (byte) level_bcd#62 ? phi( play_move_down::@18/(byte) level_bcd#61 ) - (byte) current_movedown_slow#68 ? phi( play_move_down::@18/(byte) current_movedown_slow#67 ) - (byte) level#65 ? phi( play_move_down::@18/(byte) level#64 ) - (dword) score_bcd#52 ? phi( play_move_down::@18/(dword) score_bcd#51 ) - (word) lines_bcd#52 ? phi( play_move_down::@18/(word) lines_bcd#51 ) - (byte) current_xpos#70 ? phi( play_move_down::@18/(byte) current_xpos#86 ) - (byte) current_ypos#44 ? phi( play_move_down::@18/(byte) current_ypos#36 ) + (byte) next_piece_idx#62 ← phi( play_move_down::@18/(byte) next_piece_idx#52 ) + (byte) game_over#64 ← phi( play_move_down::@18/(byte) game_over#49 ) + (byte) current_orientation#78 ← phi( play_move_down::@18/(byte) current_orientation#66 ) + (byte) current_piece_char#75 ← phi( play_move_down::@18/(byte) current_piece_char#56 ) + (byte*) current_piece#72 ← phi( play_move_down::@18/(byte*) current_piece#58 ) + (byte*) current_piece_gfx#73 ← phi( play_move_down::@18/(byte*) current_piece_gfx#68 ) + (byte) level_bcd#62 ← phi( play_move_down::@18/(byte) level_bcd#61 ) + (byte) current_movedown_slow#68 ← phi( play_move_down::@18/(byte) current_movedown_slow#67 ) + (byte) level#65 ← phi( play_move_down::@18/(byte) level#64 ) + (dword) score_bcd#52 ← phi( play_move_down::@18/(dword) score_bcd#51 ) + (word) lines_bcd#52 ← phi( play_move_down::@18/(word) lines_bcd#51 ) + (byte) current_xpos#70 ← phi( play_move_down::@18/(byte) current_xpos#86 ) + (byte) current_ypos#44 ← phi( play_move_down::@18/(byte) current_ypos#36 ) call play_lock_current to:play_move_down::@19 play_move_down::@19: scope:[play_move_down] from play_move_down::@10 - (byte) next_piece_idx#53 ? phi( play_move_down::@10/(byte) next_piece_idx#62 ) - (byte) game_over#50 ? phi( play_move_down::@10/(byte) game_over#64 ) - (byte) current_ypos#68 ? phi( play_move_down::@10/(byte) current_ypos#44 ) - (byte) current_xpos#87 ? phi( play_move_down::@10/(byte) current_xpos#70 ) - (byte*) current_piece_gfx#69 ? phi( play_move_down::@10/(byte*) current_piece_gfx#73 ) - (byte) current_orientation#67 ? phi( play_move_down::@10/(byte) current_orientation#78 ) - (byte) current_piece_char#57 ? phi( play_move_down::@10/(byte) current_piece_char#75 ) - (byte*) current_piece#59 ? phi( play_move_down::@10/(byte*) current_piece#72 ) - (byte) level_bcd#45 ? phi( play_move_down::@10/(byte) level_bcd#62 ) - (byte) current_movedown_slow#51 ? phi( play_move_down::@10/(byte) current_movedown_slow#68 ) - (byte) level#47 ? phi( play_move_down::@10/(byte) level#65 ) - (dword) score_bcd#38 ? phi( play_move_down::@10/(dword) score_bcd#52 ) - (word) lines_bcd#38 ? phi( play_move_down::@10/(word) lines_bcd#52 ) + (byte) next_piece_idx#53 ← phi( play_move_down::@10/(byte) next_piece_idx#62 ) + (byte) game_over#50 ← phi( play_move_down::@10/(byte) game_over#64 ) + (byte) current_ypos#68 ← phi( play_move_down::@10/(byte) current_ypos#44 ) + (byte) current_xpos#87 ← phi( play_move_down::@10/(byte) current_xpos#70 ) + (byte*) current_piece_gfx#69 ← phi( play_move_down::@10/(byte*) current_piece_gfx#73 ) + (byte) current_orientation#67 ← phi( play_move_down::@10/(byte) current_orientation#78 ) + (byte) current_piece_char#57 ← phi( play_move_down::@10/(byte) current_piece_char#75 ) + (byte*) current_piece#59 ← phi( play_move_down::@10/(byte*) current_piece#72 ) + (byte) level_bcd#45 ← phi( play_move_down::@10/(byte) level_bcd#62 ) + (byte) current_movedown_slow#51 ← phi( play_move_down::@10/(byte) current_movedown_slow#68 ) + (byte) level#47 ← phi( play_move_down::@10/(byte) level#65 ) + (dword) score_bcd#38 ← phi( play_move_down::@10/(dword) score_bcd#52 ) + (word) lines_bcd#38 ← phi( play_move_down::@10/(word) lines_bcd#52 ) call play_remove_lines - (byte) play_remove_lines::return#0 ? (byte) play_remove_lines::return#2 + (byte) play_remove_lines::return#0 ← (byte) play_remove_lines::return#2 to:play_move_down::@20 play_move_down::@20: scope:[play_move_down] from play_move_down::@19 - (byte) next_piece_idx#39 ? phi( play_move_down::@19/(byte) next_piece_idx#53 ) - (byte) game_over#37 ? phi( play_move_down::@19/(byte) game_over#50 ) - (byte) current_ypos#53 ? phi( play_move_down::@19/(byte) current_ypos#68 ) - (byte) current_xpos#63 ? phi( play_move_down::@19/(byte) current_xpos#87 ) - (byte*) current_piece_gfx#50 ? phi( play_move_down::@19/(byte*) current_piece_gfx#69 ) - (byte) current_orientation#53 ? phi( play_move_down::@19/(byte) current_orientation#67 ) - (byte) current_piece_char#41 ? phi( play_move_down::@19/(byte) current_piece_char#57 ) - (byte*) current_piece#42 ? phi( play_move_down::@19/(byte*) current_piece#59 ) - (byte) level_bcd#30 ? phi( play_move_down::@19/(byte) level_bcd#45 ) - (byte) current_movedown_slow#36 ? phi( play_move_down::@19/(byte) current_movedown_slow#51 ) - (byte) level#32 ? phi( play_move_down::@19/(byte) level#47 ) - (dword) score_bcd#25 ? phi( play_move_down::@19/(dword) score_bcd#38 ) - (word) lines_bcd#25 ? phi( play_move_down::@19/(word) lines_bcd#38 ) - (byte) play_remove_lines::return#3 ? phi( play_move_down::@19/(byte) play_remove_lines::return#0 ) - (byte~) play_move_down::$15 ? (byte) play_remove_lines::return#3 - (byte) play_move_down::removed#0 ? (byte~) play_move_down::$15 - (byte) play_update_score::removed#0 ? (byte) play_move_down::removed#0 + (byte) next_piece_idx#39 ← phi( play_move_down::@19/(byte) next_piece_idx#53 ) + (byte) game_over#37 ← phi( play_move_down::@19/(byte) game_over#50 ) + (byte) current_ypos#53 ← phi( play_move_down::@19/(byte) current_ypos#68 ) + (byte) current_xpos#63 ← phi( play_move_down::@19/(byte) current_xpos#87 ) + (byte*) current_piece_gfx#50 ← phi( play_move_down::@19/(byte*) current_piece_gfx#69 ) + (byte) current_orientation#53 ← phi( play_move_down::@19/(byte) current_orientation#67 ) + (byte) current_piece_char#41 ← phi( play_move_down::@19/(byte) current_piece_char#57 ) + (byte*) current_piece#42 ← phi( play_move_down::@19/(byte*) current_piece#59 ) + (byte) level_bcd#30 ← phi( play_move_down::@19/(byte) level_bcd#45 ) + (byte) current_movedown_slow#36 ← phi( play_move_down::@19/(byte) current_movedown_slow#51 ) + (byte) level#32 ← phi( play_move_down::@19/(byte) level#47 ) + (dword) score_bcd#25 ← phi( play_move_down::@19/(dword) score_bcd#38 ) + (word) lines_bcd#25 ← phi( play_move_down::@19/(word) lines_bcd#38 ) + (byte) play_remove_lines::return#3 ← phi( play_move_down::@19/(byte) play_remove_lines::return#0 ) + (byte~) play_move_down::$15 ← (byte) play_remove_lines::return#3 + (byte) play_move_down::removed#0 ← (byte~) play_move_down::$15 + (byte) play_update_score::removed#0 ← (byte) play_move_down::removed#0 call play_update_score to:play_move_down::@21 play_move_down::@21: scope:[play_move_down] from play_move_down::@20 - (byte) next_piece_idx#29 ? phi( play_move_down::@20/(byte) next_piece_idx#39 ) - (byte) game_over#26 ? phi( play_move_down::@20/(byte) game_over#37 ) - (byte) current_ypos#37 ? phi( play_move_down::@20/(byte) current_ypos#53 ) - (byte) current_xpos#42 ? phi( play_move_down::@20/(byte) current_xpos#63 ) - (byte*) current_piece_gfx#34 ? phi( play_move_down::@20/(byte*) current_piece_gfx#50 ) - (byte) current_orientation#36 ? phi( play_move_down::@20/(byte) current_orientation#53 ) - (byte) current_piece_char#28 ? phi( play_move_down::@20/(byte) current_piece_char#41 ) - (byte*) current_piece#27 ? phi( play_move_down::@20/(byte*) current_piece#42 ) - (byte) level_bcd#16 ? phi( play_move_down::@20/(byte) level_bcd#6 ) - (byte) current_movedown_slow#20 ? phi( play_move_down::@20/(byte) current_movedown_slow#8 ) - (byte) level#16 ? phi( play_move_down::@20/(byte) level#6 ) - (dword) score_bcd#13 ? phi( play_move_down::@20/(dword) score_bcd#6 ) - (word) lines_bcd#14 ? phi( play_move_down::@20/(word) lines_bcd#6 ) - (word) lines_bcd#3 ? (word) lines_bcd#14 - (dword) score_bcd#3 ? (dword) score_bcd#13 - (byte) level#3 ? (byte) level#16 - (byte) current_movedown_slow#5 ? (byte) current_movedown_slow#20 - (byte) level_bcd#3 ? (byte) level_bcd#16 + (byte) next_piece_idx#29 ← phi( play_move_down::@20/(byte) next_piece_idx#39 ) + (byte) game_over#26 ← phi( play_move_down::@20/(byte) game_over#37 ) + (byte) current_ypos#37 ← phi( play_move_down::@20/(byte) current_ypos#53 ) + (byte) current_xpos#42 ← phi( play_move_down::@20/(byte) current_xpos#63 ) + (byte*) current_piece_gfx#34 ← phi( play_move_down::@20/(byte*) current_piece_gfx#50 ) + (byte) current_orientation#36 ← phi( play_move_down::@20/(byte) current_orientation#53 ) + (byte) current_piece_char#28 ← phi( play_move_down::@20/(byte) current_piece_char#41 ) + (byte*) current_piece#27 ← phi( play_move_down::@20/(byte*) current_piece#42 ) + (byte) level_bcd#16 ← phi( play_move_down::@20/(byte) level_bcd#6 ) + (byte) current_movedown_slow#20 ← phi( play_move_down::@20/(byte) current_movedown_slow#8 ) + (byte) level#16 ← phi( play_move_down::@20/(byte) level#6 ) + (dword) score_bcd#13 ← phi( play_move_down::@20/(dword) score_bcd#6 ) + (word) lines_bcd#14 ← phi( play_move_down::@20/(word) lines_bcd#6 ) + (word) lines_bcd#3 ← (word) lines_bcd#14 + (dword) score_bcd#3 ← (dword) score_bcd#13 + (byte) level#3 ← (byte) level#16 + (byte) current_movedown_slow#5 ← (byte) current_movedown_slow#20 + (byte) level_bcd#3 ← (byte) level_bcd#16 call play_spawn_current to:play_move_down::@22 play_move_down::@22: scope:[play_move_down] from play_move_down::@21 - (byte) level_bcd#47 ? phi( play_move_down::@21/(byte) level_bcd#3 ) - (byte) current_movedown_slow#53 ? phi( play_move_down::@21/(byte) current_movedown_slow#5 ) - (byte) level#49 ? phi( play_move_down::@21/(byte) level#3 ) - (dword) score_bcd#40 ? phi( play_move_down::@21/(dword) score_bcd#3 ) - (word) lines_bcd#40 ? phi( play_move_down::@21/(word) lines_bcd#3 ) - (byte) next_piece_idx#15 ? phi( play_move_down::@21/(byte) next_piece_idx#6 ) - (byte) game_over#14 ? phi( play_move_down::@21/(byte) game_over#6 ) - (byte) current_ypos#18 ? phi( play_move_down::@21/(byte) current_ypos#7 ) - (byte) current_xpos#21 ? phi( play_move_down::@21/(byte) current_xpos#10 ) - (byte*) current_piece_gfx#19 ? phi( play_move_down::@21/(byte*) current_piece_gfx#9 ) - (byte) current_orientation#19 ? phi( play_move_down::@21/(byte) current_orientation#9 ) - (byte) current_piece_char#15 ? phi( play_move_down::@21/(byte) current_piece_char#6 ) - (byte*) current_piece#14 ? phi( play_move_down::@21/(byte*) current_piece#6 ) - (byte*) current_piece#3 ? (byte*) current_piece#14 - (byte) current_piece_char#3 ? (byte) current_piece_char#15 - (byte) current_orientation#4 ? (byte) current_orientation#19 - (byte*) current_piece_gfx#4 ? (byte*) current_piece_gfx#19 - (byte) current_xpos#4 ? (byte) current_xpos#21 - (byte) current_ypos#4 ? (byte) current_ypos#18 - (byte) game_over#3 ? (byte) game_over#14 - (byte) next_piece_idx#3 ? (byte) next_piece_idx#15 + (byte) level_bcd#47 ← phi( play_move_down::@21/(byte) level_bcd#3 ) + (byte) current_movedown_slow#53 ← phi( play_move_down::@21/(byte) current_movedown_slow#5 ) + (byte) level#49 ← phi( play_move_down::@21/(byte) level#3 ) + (dword) score_bcd#40 ← phi( play_move_down::@21/(dword) score_bcd#3 ) + (word) lines_bcd#40 ← phi( play_move_down::@21/(word) lines_bcd#3 ) + (byte) next_piece_idx#15 ← phi( play_move_down::@21/(byte) next_piece_idx#6 ) + (byte) game_over#14 ← phi( play_move_down::@21/(byte) game_over#6 ) + (byte) current_ypos#18 ← phi( play_move_down::@21/(byte) current_ypos#7 ) + (byte) current_xpos#21 ← phi( play_move_down::@21/(byte) current_xpos#10 ) + (byte*) current_piece_gfx#19 ← phi( play_move_down::@21/(byte*) current_piece_gfx#9 ) + (byte) current_orientation#19 ← phi( play_move_down::@21/(byte) current_orientation#9 ) + (byte) current_piece_char#15 ← phi( play_move_down::@21/(byte) current_piece_char#6 ) + (byte*) current_piece#14 ← phi( play_move_down::@21/(byte*) current_piece#6 ) + (byte*) current_piece#3 ← (byte*) current_piece#14 + (byte) current_piece_char#3 ← (byte) current_piece_char#15 + (byte) current_orientation#4 ← (byte) current_orientation#19 + (byte*) current_piece_gfx#4 ← (byte*) current_piece_gfx#19 + (byte) current_xpos#4 ← (byte) current_xpos#21 + (byte) current_ypos#4 ← (byte) current_ypos#18 + (byte) game_over#3 ← (byte) game_over#14 + (byte) next_piece_idx#3 ← (byte) next_piece_idx#15 to:play_move_down::@15 play_move_down::@15: scope:[play_move_down] from play_move_down::@14 play_move_down::@22 - (byte) next_piece_idx#30 ? phi( play_move_down::@14/(byte) next_piece_idx#40 play_move_down::@22/(byte) next_piece_idx#3 ) - (byte) game_over#27 ? phi( play_move_down::@14/(byte) game_over#38 play_move_down::@22/(byte) game_over#3 ) - (byte) current_xpos#43 ? phi( play_move_down::@14/(byte) current_xpos#64 play_move_down::@22/(byte) current_xpos#4 ) - (byte*) current_piece_gfx#35 ? phi( play_move_down::@14/(byte*) current_piece_gfx#51 play_move_down::@22/(byte*) current_piece_gfx#4 ) - (byte) current_orientation#37 ? phi( play_move_down::@14/(byte) current_orientation#54 play_move_down::@22/(byte) current_orientation#4 ) - (byte) current_piece_char#29 ? phi( play_move_down::@14/(byte) current_piece_char#42 play_move_down::@22/(byte) current_piece_char#3 ) - (byte*) current_piece#28 ? phi( play_move_down::@14/(byte*) current_piece#43 play_move_down::@22/(byte*) current_piece#3 ) - (byte) level_bcd#31 ? phi( play_move_down::@14/(byte) level_bcd#46 play_move_down::@22/(byte) level_bcd#47 ) - (byte) current_movedown_slow#37 ? phi( play_move_down::@14/(byte) current_movedown_slow#52 play_move_down::@22/(byte) current_movedown_slow#53 ) - (byte) level#33 ? phi( play_move_down::@14/(byte) level#48 play_move_down::@22/(byte) level#49 ) - (dword) score_bcd#26 ? phi( play_move_down::@14/(dword) score_bcd#39 play_move_down::@22/(dword) score_bcd#40 ) - (word) lines_bcd#26 ? phi( play_move_down::@14/(word) lines_bcd#39 play_move_down::@22/(word) lines_bcd#40 ) - (byte) current_ypos#38 ? phi( play_move_down::@14/(byte) current_ypos#3 play_move_down::@22/(byte) current_ypos#4 ) - (byte) current_movedown_counter#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) play_move_down::return#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) next_piece_idx#30 ← phi( play_move_down::@14/(byte) next_piece_idx#40 play_move_down::@22/(byte) next_piece_idx#3 ) + (byte) game_over#27 ← phi( play_move_down::@14/(byte) game_over#38 play_move_down::@22/(byte) game_over#3 ) + (byte) current_xpos#43 ← phi( play_move_down::@14/(byte) current_xpos#64 play_move_down::@22/(byte) current_xpos#4 ) + (byte*) current_piece_gfx#35 ← phi( play_move_down::@14/(byte*) current_piece_gfx#51 play_move_down::@22/(byte*) current_piece_gfx#4 ) + (byte) current_orientation#37 ← phi( play_move_down::@14/(byte) current_orientation#54 play_move_down::@22/(byte) current_orientation#4 ) + (byte) current_piece_char#29 ← phi( play_move_down::@14/(byte) current_piece_char#42 play_move_down::@22/(byte) current_piece_char#3 ) + (byte*) current_piece#28 ← phi( play_move_down::@14/(byte*) current_piece#43 play_move_down::@22/(byte*) current_piece#3 ) + (byte) level_bcd#31 ← phi( play_move_down::@14/(byte) level_bcd#46 play_move_down::@22/(byte) level_bcd#47 ) + (byte) current_movedown_slow#37 ← phi( play_move_down::@14/(byte) current_movedown_slow#52 play_move_down::@22/(byte) current_movedown_slow#53 ) + (byte) level#33 ← phi( play_move_down::@14/(byte) level#48 play_move_down::@22/(byte) level#49 ) + (dword) score_bcd#26 ← phi( play_move_down::@14/(dword) score_bcd#39 play_move_down::@22/(dword) score_bcd#40 ) + (word) lines_bcd#26 ← phi( play_move_down::@14/(word) lines_bcd#39 play_move_down::@22/(word) lines_bcd#40 ) + (byte) current_ypos#38 ← phi( play_move_down::@14/(byte) current_ypos#3 play_move_down::@22/(byte) current_ypos#4 ) + (byte) current_movedown_counter#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_move_down::return#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_move_down::@return play_move_down::@return: scope:[play_move_down] from play_move_down::@15 play_move_down::@4 - (byte) next_piece_idx#16 ? phi( play_move_down::@15/(byte) next_piece_idx#30 play_move_down::@4/(byte) next_piece_idx#31 ) - (byte) game_over#15 ? phi( play_move_down::@15/(byte) game_over#27 play_move_down::@4/(byte) game_over#28 ) - (byte) current_xpos#22 ? phi( play_move_down::@15/(byte) current_xpos#43 play_move_down::@4/(byte) current_xpos#44 ) - (byte*) current_piece_gfx#20 ? phi( play_move_down::@15/(byte*) current_piece_gfx#35 play_move_down::@4/(byte*) current_piece_gfx#36 ) - (byte) current_orientation#20 ? phi( play_move_down::@15/(byte) current_orientation#37 play_move_down::@4/(byte) current_orientation#38 ) - (byte) current_piece_char#16 ? phi( play_move_down::@15/(byte) current_piece_char#29 play_move_down::@4/(byte) current_piece_char#30 ) - (byte*) current_piece#15 ? phi( play_move_down::@15/(byte*) current_piece#28 play_move_down::@4/(byte*) current_piece#29 ) - (byte) level_bcd#17 ? phi( play_move_down::@15/(byte) level_bcd#31 play_move_down::@4/(byte) level_bcd#32 ) - (byte) current_movedown_slow#21 ? phi( play_move_down::@15/(byte) current_movedown_slow#37 play_move_down::@4/(byte) current_movedown_slow#38 ) - (byte) level#17 ? phi( play_move_down::@15/(byte) level#33 play_move_down::@4/(byte) level#34 ) - (dword) score_bcd#14 ? phi( play_move_down::@15/(dword) score_bcd#26 play_move_down::@4/(dword) score_bcd#27 ) - (word) lines_bcd#15 ? phi( play_move_down::@15/(word) lines_bcd#26 play_move_down::@4/(word) lines_bcd#27 ) - (byte) current_ypos#19 ? phi( play_move_down::@15/(byte) current_ypos#38 play_move_down::@4/(byte) current_ypos#39 ) - (byte) current_movedown_counter#14 ? phi( play_move_down::@15/(byte) current_movedown_counter#4 play_move_down::@4/(byte) current_movedown_counter#24 ) - (byte) play_move_down::return#5 ? phi( play_move_down::@15/(byte) play_move_down::return#2 play_move_down::@4/(byte) play_move_down::return#1 ) - (byte) play_move_down::return#3 ? (byte) play_move_down::return#5 - (byte) current_movedown_counter#5 ? (byte) current_movedown_counter#14 - (byte) current_ypos#5 ? (byte) current_ypos#19 - (word) lines_bcd#4 ? (word) lines_bcd#15 - (dword) score_bcd#4 ? (dword) score_bcd#14 - (byte) level#4 ? (byte) level#17 - (byte) current_movedown_slow#6 ? (byte) current_movedown_slow#21 - (byte) level_bcd#4 ? (byte) level_bcd#17 - (byte*) current_piece#4 ? (byte*) current_piece#15 - (byte) current_piece_char#4 ? (byte) current_piece_char#16 - (byte) current_orientation#5 ? (byte) current_orientation#20 - (byte*) current_piece_gfx#5 ? (byte*) current_piece_gfx#20 - (byte) current_xpos#5 ? (byte) current_xpos#22 - (byte) game_over#4 ? (byte) game_over#15 - (byte) next_piece_idx#4 ? (byte) next_piece_idx#16 + (byte) next_piece_idx#16 ← phi( play_move_down::@15/(byte) next_piece_idx#30 play_move_down::@4/(byte) next_piece_idx#31 ) + (byte) game_over#15 ← phi( play_move_down::@15/(byte) game_over#27 play_move_down::@4/(byte) game_over#28 ) + (byte) current_xpos#22 ← phi( play_move_down::@15/(byte) current_xpos#43 play_move_down::@4/(byte) current_xpos#44 ) + (byte*) current_piece_gfx#20 ← phi( play_move_down::@15/(byte*) current_piece_gfx#35 play_move_down::@4/(byte*) current_piece_gfx#36 ) + (byte) current_orientation#20 ← phi( play_move_down::@15/(byte) current_orientation#37 play_move_down::@4/(byte) current_orientation#38 ) + (byte) current_piece_char#16 ← phi( play_move_down::@15/(byte) current_piece_char#29 play_move_down::@4/(byte) current_piece_char#30 ) + (byte*) current_piece#15 ← phi( play_move_down::@15/(byte*) current_piece#28 play_move_down::@4/(byte*) current_piece#29 ) + (byte) level_bcd#17 ← phi( play_move_down::@15/(byte) level_bcd#31 play_move_down::@4/(byte) level_bcd#32 ) + (byte) current_movedown_slow#21 ← phi( play_move_down::@15/(byte) current_movedown_slow#37 play_move_down::@4/(byte) current_movedown_slow#38 ) + (byte) level#17 ← phi( play_move_down::@15/(byte) level#33 play_move_down::@4/(byte) level#34 ) + (dword) score_bcd#14 ← phi( play_move_down::@15/(dword) score_bcd#26 play_move_down::@4/(dword) score_bcd#27 ) + (word) lines_bcd#15 ← phi( play_move_down::@15/(word) lines_bcd#26 play_move_down::@4/(word) lines_bcd#27 ) + (byte) current_ypos#19 ← phi( play_move_down::@15/(byte) current_ypos#38 play_move_down::@4/(byte) current_ypos#39 ) + (byte) current_movedown_counter#14 ← phi( play_move_down::@15/(byte) current_movedown_counter#4 play_move_down::@4/(byte) current_movedown_counter#24 ) + (byte) play_move_down::return#5 ← phi( play_move_down::@15/(byte) play_move_down::return#2 play_move_down::@4/(byte) play_move_down::return#1 ) + (byte) play_move_down::return#3 ← (byte) play_move_down::return#5 + (byte) current_movedown_counter#5 ← (byte) current_movedown_counter#14 + (byte) current_ypos#5 ← (byte) current_ypos#19 + (word) lines_bcd#4 ← (word) lines_bcd#15 + (dword) score_bcd#4 ← (dword) score_bcd#14 + (byte) level#4 ← (byte) level#17 + (byte) current_movedown_slow#6 ← (byte) current_movedown_slow#21 + (byte) level_bcd#4 ← (byte) level_bcd#17 + (byte*) current_piece#4 ← (byte*) current_piece#15 + (byte) current_piece_char#4 ← (byte) current_piece_char#16 + (byte) current_orientation#5 ← (byte) current_orientation#20 + (byte*) current_piece_gfx#5 ← (byte*) current_piece_gfx#20 + (byte) current_xpos#5 ← (byte) current_xpos#22 + (byte) game_over#4 ← (byte) game_over#15 + (byte) next_piece_idx#4 ← (byte) next_piece_idx#16 return to:@return play_move_leftright: scope:[play_move_leftright] from play_movement::@1 - (byte*) current_piece#44 ? phi( play_movement::@1/(byte*) current_piece#55 ) - (byte) current_orientation#39 ? phi( play_movement::@1/(byte) current_orientation#50 ) - (byte) current_ypos#40 ? phi( play_movement::@1/(byte) current_ypos#54 ) - (byte) current_xpos#45 ? phi( play_movement::@1/(byte) current_xpos#38 ) - (byte) play_move_leftright::key_event#1 ? phi( play_movement::@1/(byte) play_move_leftright::key_event#0 ) - (bool~) play_move_leftright::$0 ? (byte) play_move_leftright::key_event#1 == (byte) KEY_COMMA#0 + (byte*) current_piece#44 ← phi( play_movement::@1/(byte*) current_piece#55 ) + (byte) current_orientation#39 ← phi( play_movement::@1/(byte) current_orientation#50 ) + (byte) current_ypos#40 ← phi( play_movement::@1/(byte) current_ypos#54 ) + (byte) current_xpos#45 ← phi( play_movement::@1/(byte) current_xpos#38 ) + (byte) play_move_leftright::key_event#1 ← phi( play_movement::@1/(byte) play_move_leftright::key_event#0 ) + (bool~) play_move_leftright::$0 ← (byte) play_move_leftright::key_event#1 == (byte) KEY_COMMA#0 if((bool~) play_move_leftright::$0) goto play_move_leftright::@1 to:play_move_leftright::@4 play_move_leftright::@1: scope:[play_move_leftright] from play_move_leftright - (byte*) current_piece#32 ? phi( play_move_leftright/(byte*) current_piece#44 ) - (byte) current_orientation#21 ? phi( play_move_leftright/(byte) current_orientation#39 ) - (byte) current_ypos#20 ? phi( play_move_leftright/(byte) current_ypos#40 ) - (byte) current_xpos#23 ? phi( play_move_leftright/(byte) current_xpos#45 ) - (byte/signed word/word/dword/signed dword~) play_move_leftright::$7 ? (byte) current_xpos#23 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_collision::xpos#1 ? (byte/signed word/word/dword/signed dword~) play_move_leftright::$7 - (byte) play_collision::ypos#1 ? (byte) current_ypos#20 - (byte) play_collision::orientation#1 ? (byte) current_orientation#21 + (byte*) current_piece#32 ← phi( play_move_leftright/(byte*) current_piece#44 ) + (byte) current_orientation#21 ← phi( play_move_leftright/(byte) current_orientation#39 ) + (byte) current_ypos#20 ← phi( play_move_leftright/(byte) current_ypos#40 ) + (byte) current_xpos#23 ← phi( play_move_leftright/(byte) current_xpos#45 ) + (byte/signed word/word/dword/signed dword~) play_move_leftright::$7 ← (byte) current_xpos#23 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_collision::xpos#1 ← (byte/signed word/word/dword/signed dword~) play_move_leftright::$7 + (byte) play_collision::ypos#1 ← (byte) current_ypos#20 + (byte) play_collision::orientation#1 ← (byte) current_orientation#21 call play_collision - (byte) play_collision::return#1 ? (byte) play_collision::return#5 + (byte) play_collision::return#1 ← (byte) play_collision::return#5 to:play_move_leftright::@14 play_move_leftright::@14: scope:[play_move_leftright] from play_move_leftright::@1 - (byte) current_xpos#49 ? phi( play_move_leftright::@1/(byte) current_xpos#23 ) - (byte) play_collision::return#12 ? phi( play_move_leftright::@1/(byte) play_collision::return#1 ) - (byte~) play_move_leftright::$8 ? (byte) play_collision::return#12 - (bool~) play_move_leftright::$9 ? (byte~) play_move_leftright::$8 == (byte) COLLISION_NONE#0 - (bool~) play_move_leftright::$10 ? ! (bool~) play_move_leftright::$9 + (byte) current_xpos#49 ← phi( play_move_leftright::@1/(byte) current_xpos#23 ) + (byte) play_collision::return#12 ← phi( play_move_leftright::@1/(byte) play_collision::return#1 ) + (byte~) play_move_leftright::$8 ← (byte) play_collision::return#12 + (bool~) play_move_leftright::$9 ← (byte~) play_move_leftright::$8 == (byte) COLLISION_NONE#0 + (bool~) play_move_leftright::$10 ← ! (bool~) play_move_leftright::$9 if((bool~) play_move_leftright::$10) goto play_move_leftright::@13 to:play_move_leftright::@9 play_move_leftright::@4: scope:[play_move_leftright] from play_move_leftright - (byte*) current_piece#45 ? phi( play_move_leftright/(byte*) current_piece#44 ) - (byte) current_orientation#40 ? phi( play_move_leftright/(byte) current_orientation#39 ) - (byte) current_ypos#41 ? phi( play_move_leftright/(byte) current_ypos#40 ) - (byte) current_xpos#46 ? phi( play_move_leftright/(byte) current_xpos#45 ) - (byte) play_move_leftright::key_event#2 ? phi( play_move_leftright/(byte) play_move_leftright::key_event#1 ) - (bool~) play_move_leftright::$1 ? (byte) play_move_leftright::key_event#2 == (byte) KEY_DOT#0 - (bool~) play_move_leftright::$2 ? ! (bool~) play_move_leftright::$1 + (byte*) current_piece#45 ← phi( play_move_leftright/(byte*) current_piece#44 ) + (byte) current_orientation#40 ← phi( play_move_leftright/(byte) current_orientation#39 ) + (byte) current_ypos#41 ← phi( play_move_leftright/(byte) current_ypos#40 ) + (byte) current_xpos#46 ← phi( play_move_leftright/(byte) current_xpos#45 ) + (byte) play_move_leftright::key_event#2 ← phi( play_move_leftright/(byte) play_move_leftright::key_event#1 ) + (bool~) play_move_leftright::$1 ← (byte) play_move_leftright::key_event#2 == (byte) KEY_DOT#0 + (bool~) play_move_leftright::$2 ← ! (bool~) play_move_leftright::$1 if((bool~) play_move_leftright::$2) goto play_move_leftright::@2 to:play_move_leftright::@5 play_move_leftright::@2: scope:[play_move_leftright] from play_move_leftright::@4 - (byte) current_xpos#67 ? phi( play_move_leftright::@4/(byte) current_xpos#46 ) + (byte) current_xpos#67 ← phi( play_move_leftright::@4/(byte) current_xpos#46 ) to:play_move_leftright::@3 play_move_leftright::@5: scope:[play_move_leftright] from play_move_leftright::@4 - (byte*) current_piece#33 ? phi( play_move_leftright::@4/(byte*) current_piece#45 ) - (byte) current_orientation#22 ? phi( play_move_leftright::@4/(byte) current_orientation#40 ) - (byte) current_ypos#21 ? phi( play_move_leftright::@4/(byte) current_ypos#41 ) - (byte) current_xpos#24 ? phi( play_move_leftright::@4/(byte) current_xpos#46 ) - (byte/signed word/word/dword/signed dword~) play_move_leftright::$3 ? (byte) current_xpos#24 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_collision::xpos#2 ? (byte/signed word/word/dword/signed dword~) play_move_leftright::$3 - (byte) play_collision::ypos#2 ? (byte) current_ypos#21 - (byte) play_collision::orientation#2 ? (byte) current_orientation#22 + (byte*) current_piece#33 ← phi( play_move_leftright::@4/(byte*) current_piece#45 ) + (byte) current_orientation#22 ← phi( play_move_leftright::@4/(byte) current_orientation#40 ) + (byte) current_ypos#21 ← phi( play_move_leftright::@4/(byte) current_ypos#41 ) + (byte) current_xpos#24 ← phi( play_move_leftright::@4/(byte) current_xpos#46 ) + (byte/signed word/word/dword/signed dword~) play_move_leftright::$3 ← (byte) current_xpos#24 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_collision::xpos#2 ← (byte/signed word/word/dword/signed dword~) play_move_leftright::$3 + (byte) play_collision::ypos#2 ← (byte) current_ypos#21 + (byte) play_collision::orientation#2 ← (byte) current_orientation#22 call play_collision - (byte) play_collision::return#2 ? (byte) play_collision::return#5 + (byte) play_collision::return#2 ← (byte) play_collision::return#5 to:play_move_leftright::@15 play_move_leftright::@15: scope:[play_move_leftright] from play_move_leftright::@5 - (byte) current_xpos#47 ? phi( play_move_leftright::@5/(byte) current_xpos#24 ) - (byte) play_collision::return#13 ? phi( play_move_leftright::@5/(byte) play_collision::return#2 ) - (byte~) play_move_leftright::$4 ? (byte) play_collision::return#13 - (bool~) play_move_leftright::$5 ? (byte~) play_move_leftright::$4 == (byte) COLLISION_NONE#0 - (bool~) play_move_leftright::$6 ? ! (bool~) play_move_leftright::$5 + (byte) current_xpos#47 ← phi( play_move_leftright::@5/(byte) current_xpos#24 ) + (byte) play_collision::return#13 ← phi( play_move_leftright::@5/(byte) play_collision::return#2 ) + (byte~) play_move_leftright::$4 ← (byte) play_collision::return#13 + (bool~) play_move_leftright::$5 ← (byte~) play_move_leftright::$4 == (byte) COLLISION_NONE#0 + (bool~) play_move_leftright::$6 ← ! (bool~) play_move_leftright::$5 if((bool~) play_move_leftright::$6) goto play_move_leftright::@12 to:play_move_leftright::@6 play_move_leftright::@12: scope:[play_move_leftright] from play_move_leftright::@15 - (byte) current_xpos#65 ? phi( play_move_leftright::@15/(byte) current_xpos#47 ) + (byte) current_xpos#65 ← phi( play_move_leftright::@15/(byte) current_xpos#47 ) to:play_move_leftright::@3 play_move_leftright::@6: scope:[play_move_leftright] from play_move_leftright::@15 - (byte) current_xpos#25 ? phi( play_move_leftright::@15/(byte) current_xpos#47 ) - (byte) current_xpos#6 ? ++ (byte) current_xpos#25 - (byte) play_move_leftright::return#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) current_xpos#25 ← phi( play_move_leftright::@15/(byte) current_xpos#47 ) + (byte) current_xpos#6 ← ++ (byte) current_xpos#25 + (byte) play_move_leftright::return#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_move_leftright::@return play_move_leftright::@return: scope:[play_move_leftright] from play_move_leftright::@3 play_move_leftright::@6 play_move_leftright::@9 - (byte) current_xpos#26 ? phi( play_move_leftright::@3/(byte) current_xpos#48 play_move_leftright::@6/(byte) current_xpos#6 play_move_leftright::@9/(byte) current_xpos#8 ) - (byte) play_move_leftright::return#6 ? phi( play_move_leftright::@3/(byte) play_move_leftright::return#3 play_move_leftright::@6/(byte) play_move_leftright::return#1 play_move_leftright::@9/(byte) play_move_leftright::return#4 ) - (byte) play_move_leftright::return#2 ? (byte) play_move_leftright::return#6 - (byte) current_xpos#7 ? (byte) current_xpos#26 + (byte) current_xpos#26 ← phi( play_move_leftright::@3/(byte) current_xpos#48 play_move_leftright::@6/(byte) current_xpos#6 play_move_leftright::@9/(byte) current_xpos#8 ) + (byte) play_move_leftright::return#6 ← phi( play_move_leftright::@3/(byte) play_move_leftright::return#3 play_move_leftright::@6/(byte) play_move_leftright::return#1 play_move_leftright::@9/(byte) play_move_leftright::return#4 ) + (byte) play_move_leftright::return#2 ← (byte) play_move_leftright::return#6 + (byte) current_xpos#7 ← (byte) current_xpos#26 return to:@return play_move_leftright::@3: scope:[play_move_leftright] from play_move_leftright::@12 play_move_leftright::@13 play_move_leftright::@2 - (byte) current_xpos#48 ? phi( play_move_leftright::@12/(byte) current_xpos#65 play_move_leftright::@13/(byte) current_xpos#66 play_move_leftright::@2/(byte) current_xpos#67 ) - (byte) play_move_leftright::return#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) current_xpos#48 ← phi( play_move_leftright::@12/(byte) current_xpos#65 play_move_leftright::@13/(byte) current_xpos#66 play_move_leftright::@2/(byte) current_xpos#67 ) + (byte) play_move_leftright::return#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_move_leftright::@return play_move_leftright::@13: scope:[play_move_leftright] from play_move_leftright::@14 - (byte) current_xpos#66 ? phi( play_move_leftright::@14/(byte) current_xpos#49 ) + (byte) current_xpos#66 ← phi( play_move_leftright::@14/(byte) current_xpos#49 ) to:play_move_leftright::@3 play_move_leftright::@9: scope:[play_move_leftright] from play_move_leftright::@14 - (byte) current_xpos#27 ? phi( play_move_leftright::@14/(byte) current_xpos#49 ) - (byte) current_xpos#8 ? -- (byte) current_xpos#27 - (byte) play_move_leftright::return#4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) current_xpos#27 ← phi( play_move_leftright::@14/(byte) current_xpos#49 ) + (byte) current_xpos#8 ← -- (byte) current_xpos#27 + (byte) play_move_leftright::return#4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_move_leftright::@return play_move_rotate: scope:[play_move_rotate] from play_movement::@6 - (byte*) current_piece_gfx#70 ? phi( play_movement::@6/(byte*) current_piece_gfx#32 ) - (byte*) current_piece#60 ? phi( play_movement::@6/(byte*) current_piece#40 ) - (byte) current_ypos#55 ? phi( play_movement::@6/(byte) current_ypos#50 ) - (byte) current_xpos#68 ? phi( play_movement::@6/(byte) current_xpos#2 ) - (byte) current_orientation#41 ? phi( play_movement::@6/(byte) current_orientation#33 ) - (byte) play_move_rotate::key_event#1 ? phi( play_movement::@6/(byte) play_move_rotate::key_event#0 ) - (byte) play_move_rotate::orientation#0 ? (byte/word/signed word/dword/signed dword) $80 - (bool~) play_move_rotate::$0 ? (byte) play_move_rotate::key_event#1 == (byte) KEY_Z#0 + (byte*) current_piece_gfx#70 ← phi( play_movement::@6/(byte*) current_piece_gfx#32 ) + (byte*) current_piece#60 ← phi( play_movement::@6/(byte*) current_piece#40 ) + (byte) current_ypos#55 ← phi( play_movement::@6/(byte) current_ypos#50 ) + (byte) current_xpos#68 ← phi( play_movement::@6/(byte) current_xpos#2 ) + (byte) current_orientation#41 ← phi( play_movement::@6/(byte) current_orientation#33 ) + (byte) play_move_rotate::key_event#1 ← phi( play_movement::@6/(byte) play_move_rotate::key_event#0 ) + (byte) play_move_rotate::orientation#0 ← (byte/word/signed word/dword/signed dword) $80 + (bool~) play_move_rotate::$0 ← (byte) play_move_rotate::key_event#1 == (byte) KEY_Z#0 if((bool~) play_move_rotate::$0) goto play_move_rotate::@1 to:play_move_rotate::@6 play_move_rotate::@1: scope:[play_move_rotate] from play_move_rotate - (byte*) current_piece_gfx#89 ? phi( play_move_rotate/(byte*) current_piece_gfx#70 ) - (byte*) current_piece#46 ? phi( play_move_rotate/(byte*) current_piece#60 ) - (byte) current_ypos#42 ? phi( play_move_rotate/(byte) current_ypos#55 ) - (byte) current_xpos#50 ? phi( play_move_rotate/(byte) current_xpos#68 ) - (byte) current_orientation#23 ? phi( play_move_rotate/(byte) current_orientation#41 ) - (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#23 - (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte/word/dword~) play_move_rotate::$8 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f - (byte) play_move_rotate::orientation#1 ? (byte/word/dword~) play_move_rotate::$8 + (byte*) current_piece_gfx#89 ← phi( play_move_rotate/(byte*) current_piece_gfx#70 ) + (byte*) current_piece#46 ← phi( play_move_rotate/(byte*) current_piece#60 ) + (byte) current_ypos#42 ← phi( play_move_rotate/(byte) current_ypos#55 ) + (byte) current_xpos#50 ← phi( play_move_rotate/(byte) current_xpos#68 ) + (byte) current_orientation#23 ← phi( play_move_rotate/(byte) current_orientation#41 ) + (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#23 - (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte/word/dword~) play_move_rotate::$8 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f + (byte) play_move_rotate::orientation#1 ← (byte/word/dword~) play_move_rotate::$8 to:play_move_rotate::@4 play_move_rotate::@6: scope:[play_move_rotate] from play_move_rotate - (byte*) current_piece#61 ? phi( play_move_rotate/(byte*) current_piece#60 ) - (byte*) current_piece_gfx#52 ? phi( play_move_rotate/(byte*) current_piece_gfx#70 ) - (byte) current_ypos#56 ? phi( play_move_rotate/(byte) current_ypos#55 ) - (byte) current_xpos#69 ? phi( play_move_rotate/(byte) current_xpos#68 ) - (byte) current_orientation#42 ? phi( play_move_rotate/(byte) current_orientation#41 ) - (byte) play_move_rotate::key_event#2 ? phi( play_move_rotate/(byte) play_move_rotate::key_event#1 ) - (bool~) play_move_rotate::$1 ? (byte) play_move_rotate::key_event#2 == (byte) KEY_X#0 + (byte*) current_piece#61 ← phi( play_move_rotate/(byte*) current_piece#60 ) + (byte*) current_piece_gfx#52 ← phi( play_move_rotate/(byte*) current_piece_gfx#70 ) + (byte) current_ypos#56 ← phi( play_move_rotate/(byte) current_ypos#55 ) + (byte) current_xpos#69 ← phi( play_move_rotate/(byte) current_xpos#68 ) + (byte) current_orientation#42 ← phi( play_move_rotate/(byte) current_orientation#41 ) + (byte) play_move_rotate::key_event#2 ← phi( play_move_rotate/(byte) play_move_rotate::key_event#1 ) + (bool~) play_move_rotate::$1 ← (byte) play_move_rotate::key_event#2 == (byte) KEY_X#0 if((bool~) play_move_rotate::$1) goto play_move_rotate::@2 to:play_move_rotate::@7 play_move_rotate::@2: scope:[play_move_rotate] from play_move_rotate::@6 - (byte*) current_piece_gfx#90 ? phi( play_move_rotate::@6/(byte*) current_piece_gfx#52 ) - (byte*) current_piece#47 ? phi( play_move_rotate::@6/(byte*) current_piece#61 ) - (byte) current_ypos#43 ? phi( play_move_rotate::@6/(byte) current_ypos#56 ) - (byte) current_xpos#51 ? phi( play_move_rotate::@6/(byte) current_xpos#69 ) - (byte) current_orientation#24 ? phi( play_move_rotate::@6/(byte) current_orientation#42 ) - (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#24 + (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte/word/dword~) play_move_rotate::$6 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f - (byte) play_move_rotate::orientation#2 ? (byte/word/dword~) play_move_rotate::$6 + (byte*) current_piece_gfx#90 ← phi( play_move_rotate::@6/(byte*) current_piece_gfx#52 ) + (byte*) current_piece#47 ← phi( play_move_rotate::@6/(byte*) current_piece#61 ) + (byte) current_ypos#43 ← phi( play_move_rotate::@6/(byte) current_ypos#56 ) + (byte) current_xpos#51 ← phi( play_move_rotate::@6/(byte) current_xpos#69 ) + (byte) current_orientation#24 ← phi( play_move_rotate::@6/(byte) current_orientation#42 ) + (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#24 + (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte/word/dword~) play_move_rotate::$6 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f + (byte) play_move_rotate::orientation#2 ← (byte/word/dword~) play_move_rotate::$6 to:play_move_rotate::@4 play_move_rotate::@7: scope:[play_move_rotate] from play_move_rotate::@6 - (byte*) current_piece_gfx#38 ? phi( play_move_rotate::@6/(byte*) current_piece_gfx#52 ) - (byte) current_orientation#44 ? phi( play_move_rotate::@6/(byte) current_orientation#42 ) - (byte) play_move_rotate::return#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) current_piece_gfx#38 ← phi( play_move_rotate::@6/(byte*) current_piece_gfx#52 ) + (byte) current_orientation#44 ← phi( play_move_rotate::@6/(byte) current_orientation#42 ) + (byte) play_move_rotate::return#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_move_rotate::@return play_move_rotate::@return: scope:[play_move_rotate] from play_move_rotate::@11 play_move_rotate::@5 play_move_rotate::@7 - (byte*) current_piece_gfx#21 ? phi( play_move_rotate::@11/(byte*) current_piece_gfx#7 play_move_rotate::@5/(byte*) current_piece_gfx#37 play_move_rotate::@7/(byte*) current_piece_gfx#38 ) - (byte) current_orientation#25 ? phi( play_move_rotate::@11/(byte) current_orientation#7 play_move_rotate::@5/(byte) current_orientation#43 play_move_rotate::@7/(byte) current_orientation#44 ) - (byte) play_move_rotate::return#6 ? phi( play_move_rotate::@11/(byte) play_move_rotate::return#4 play_move_rotate::@5/(byte) play_move_rotate::return#3 play_move_rotate::@7/(byte) play_move_rotate::return#1 ) - (byte) play_move_rotate::return#2 ? (byte) play_move_rotate::return#6 - (byte) current_orientation#6 ? (byte) current_orientation#25 - (byte*) current_piece_gfx#6 ? (byte*) current_piece_gfx#21 + (byte*) current_piece_gfx#21 ← phi( play_move_rotate::@11/(byte*) current_piece_gfx#7 play_move_rotate::@5/(byte*) current_piece_gfx#37 play_move_rotate::@7/(byte*) current_piece_gfx#38 ) + (byte) current_orientation#25 ← phi( play_move_rotate::@11/(byte) current_orientation#7 play_move_rotate::@5/(byte) current_orientation#43 play_move_rotate::@7/(byte) current_orientation#44 ) + (byte) play_move_rotate::return#6 ← phi( play_move_rotate::@11/(byte) play_move_rotate::return#4 play_move_rotate::@5/(byte) play_move_rotate::return#3 play_move_rotate::@7/(byte) play_move_rotate::return#1 ) + (byte) play_move_rotate::return#2 ← (byte) play_move_rotate::return#6 + (byte) current_orientation#6 ← (byte) current_orientation#25 + (byte*) current_piece_gfx#6 ← (byte*) current_piece_gfx#21 return to:@return play_move_rotate::@4: scope:[play_move_rotate] from play_move_rotate::@1 play_move_rotate::@2 - (byte*) current_piece_gfx#71 ? phi( play_move_rotate::@1/(byte*) current_piece_gfx#89 play_move_rotate::@2/(byte*) current_piece_gfx#90 ) - (byte) current_orientation#68 ? phi( play_move_rotate::@1/(byte) current_orientation#23 play_move_rotate::@2/(byte) current_orientation#24 ) - (byte*) current_piece#34 ? phi( play_move_rotate::@1/(byte*) current_piece#46 play_move_rotate::@2/(byte*) current_piece#47 ) - (byte) play_move_rotate::orientation#3 ? phi( play_move_rotate::@1/(byte) play_move_rotate::orientation#1 play_move_rotate::@2/(byte) play_move_rotate::orientation#2 ) - (byte) current_ypos#22 ? phi( play_move_rotate::@1/(byte) current_ypos#42 play_move_rotate::@2/(byte) current_ypos#43 ) - (byte) current_xpos#28 ? phi( play_move_rotate::@1/(byte) current_xpos#50 play_move_rotate::@2/(byte) current_xpos#51 ) - (byte) play_collision::xpos#3 ? (byte) current_xpos#28 - (byte) play_collision::ypos#3 ? (byte) current_ypos#22 - (byte) play_collision::orientation#3 ? (byte) play_move_rotate::orientation#3 + (byte*) current_piece_gfx#71 ← phi( play_move_rotate::@1/(byte*) current_piece_gfx#89 play_move_rotate::@2/(byte*) current_piece_gfx#90 ) + (byte) current_orientation#68 ← phi( play_move_rotate::@1/(byte) current_orientation#23 play_move_rotate::@2/(byte) current_orientation#24 ) + (byte*) current_piece#34 ← phi( play_move_rotate::@1/(byte*) current_piece#46 play_move_rotate::@2/(byte*) current_piece#47 ) + (byte) play_move_rotate::orientation#3 ← phi( play_move_rotate::@1/(byte) play_move_rotate::orientation#1 play_move_rotate::@2/(byte) play_move_rotate::orientation#2 ) + (byte) current_ypos#22 ← phi( play_move_rotate::@1/(byte) current_ypos#42 play_move_rotate::@2/(byte) current_ypos#43 ) + (byte) current_xpos#28 ← phi( play_move_rotate::@1/(byte) current_xpos#50 play_move_rotate::@2/(byte) current_xpos#51 ) + (byte) play_collision::xpos#3 ← (byte) current_xpos#28 + (byte) play_collision::ypos#3 ← (byte) current_ypos#22 + (byte) play_collision::orientation#3 ← (byte) play_move_rotate::orientation#3 call play_collision - (byte) play_collision::return#3 ? (byte) play_collision::return#5 + (byte) play_collision::return#3 ← (byte) play_collision::return#5 to:play_move_rotate::@14 play_move_rotate::@14: scope:[play_move_rotate] from play_move_rotate::@4 - (byte*) current_piece_gfx#53 ? phi( play_move_rotate::@4/(byte*) current_piece_gfx#71 ) - (byte) current_orientation#55 ? phi( play_move_rotate::@4/(byte) current_orientation#68 ) - (byte*) current_piece#30 ? phi( play_move_rotate::@4/(byte*) current_piece#34 ) - (byte) play_move_rotate::orientation#5 ? phi( play_move_rotate::@4/(byte) play_move_rotate::orientation#3 ) - (byte) play_collision::return#14 ? phi( play_move_rotate::@4/(byte) play_collision::return#3 ) - (byte~) play_move_rotate::$2 ? (byte) play_collision::return#14 - (bool~) play_move_rotate::$3 ? (byte~) play_move_rotate::$2 == (byte) COLLISION_NONE#0 - (bool~) play_move_rotate::$4 ? ! (bool~) play_move_rotate::$3 + (byte*) current_piece_gfx#53 ← phi( play_move_rotate::@4/(byte*) current_piece_gfx#71 ) + (byte) current_orientation#55 ← phi( play_move_rotate::@4/(byte) current_orientation#68 ) + (byte*) current_piece#30 ← phi( play_move_rotate::@4/(byte*) current_piece#34 ) + (byte) play_move_rotate::orientation#5 ← phi( play_move_rotate::@4/(byte) play_move_rotate::orientation#3 ) + (byte) play_collision::return#14 ← phi( play_move_rotate::@4/(byte) play_collision::return#3 ) + (byte~) play_move_rotate::$2 ← (byte) play_collision::return#14 + (bool~) play_move_rotate::$3 ← (byte~) play_move_rotate::$2 == (byte) COLLISION_NONE#0 + (bool~) play_move_rotate::$4 ← ! (bool~) play_move_rotate::$3 if((bool~) play_move_rotate::$4) goto play_move_rotate::@5 to:play_move_rotate::@11 play_move_rotate::@5: scope:[play_move_rotate] from play_move_rotate::@14 - (byte*) current_piece_gfx#37 ? phi( play_move_rotate::@14/(byte*) current_piece_gfx#53 ) - (byte) current_orientation#43 ? phi( play_move_rotate::@14/(byte) current_orientation#55 ) - (byte) play_move_rotate::return#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) current_piece_gfx#37 ← phi( play_move_rotate::@14/(byte*) current_piece_gfx#53 ) + (byte) current_orientation#43 ← phi( play_move_rotate::@14/(byte) current_orientation#55 ) + (byte) play_move_rotate::return#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_move_rotate::@return play_move_rotate::@11: scope:[play_move_rotate] from play_move_rotate::@14 - (byte*) current_piece#16 ? phi( play_move_rotate::@14/(byte*) current_piece#30 ) - (byte) play_move_rotate::orientation#4 ? phi( play_move_rotate::@14/(byte) play_move_rotate::orientation#5 ) - (byte) current_orientation#7 ? (byte) play_move_rotate::orientation#4 - (byte*~) play_move_rotate::$9 ? (byte*) current_piece#16 + (byte) current_orientation#7 - (byte*) current_piece_gfx#7 ? (byte*~) play_move_rotate::$9 - (byte) play_move_rotate::return#4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) current_piece#16 ← phi( play_move_rotate::@14/(byte*) current_piece#30 ) + (byte) play_move_rotate::orientation#4 ← phi( play_move_rotate::@14/(byte) play_move_rotate::orientation#5 ) + (byte) current_orientation#7 ← (byte) play_move_rotate::orientation#4 + (byte*~) play_move_rotate::$9 ← (byte*) current_piece#16 + (byte) current_orientation#7 + (byte*) current_piece_gfx#7 ← (byte*~) play_move_rotate::$9 + (byte) play_move_rotate::return#4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_move_rotate::@return @31: scope:[] from @26 - (byte) irq_cnt#19 ? phi( @26/(byte) irq_cnt#20 ) - (byte) irq_sprite_ptr#17 ? phi( @26/(byte) irq_sprite_ptr#18 ) - (byte) level_bcd#56 ? phi( @26/(byte) level_bcd#63 ) - (byte) level#57 ? phi( @26/(byte) level#66 ) - (dword) score_bcd#46 ? phi( @26/(dword) score_bcd#53 ) - (word) lines_bcd#46 ? phi( @26/(word) lines_bcd#53 ) - (byte) current_movedown_counter#35 ? phi( @26/(byte) current_movedown_counter#0 ) - (byte) keyboard_modifiers#33 ? phi( @26/(byte) keyboard_modifiers#34 ) - (byte) keyboard_events_size#36 ? phi( @26/(byte) keyboard_events_size#40 ) - (byte) render_screen_showing#20 ? phi( @26/(byte) render_screen_showing#21 ) - (byte) next_piece_idx#46 ? phi( @26/(byte) next_piece_idx#0 ) - (byte) game_over#45 ? phi( @26/(byte) game_over#51 ) - (byte) current_ypos#64 ? phi( @26/(byte) current_ypos#69 ) - (byte) current_xpos#78 ? phi( @26/(byte) current_xpos#88 ) - (byte*) current_piece_gfx#63 ? phi( @26/(byte*) current_piece_gfx#72 ) - (byte) current_orientation#62 ? phi( @26/(byte) current_orientation#0 ) - (byte) current_piece_char#51 ? phi( @26/(byte) current_piece_char#58 ) - (byte*) current_piece#54 ? phi( @26/(byte*) current_piece#0 ) - (byte) current_movedown_slow#62 ? phi( @26/(byte) current_movedown_slow#0 ) - (byte) render_screen_render#40 ? phi( @26/(byte) render_screen_render#43 ) - (byte) render_screen_show#32 ? phi( @26/(byte) render_screen_show#35 ) - (byte) irq_raster_next#17 ? phi( @26/(byte) irq_raster_next#20 ) - (byte) irq_sprite_ypos#14 ? phi( @26/(byte) irq_sprite_ypos#18 ) - (byte) COLLISION_NONE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) COLLISION_PLAYFIELD#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) COLLISION_BOTTOM#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) COLLISION_LEFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) COLLISION_RIGHT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) irq_cnt#19 ← phi( @26/(byte) irq_cnt#20 ) + (byte) irq_sprite_ptr#17 ← phi( @26/(byte) irq_sprite_ptr#18 ) + (byte) level_bcd#56 ← phi( @26/(byte) level_bcd#63 ) + (byte) level#57 ← phi( @26/(byte) level#66 ) + (dword) score_bcd#46 ← phi( @26/(dword) score_bcd#53 ) + (word) lines_bcd#46 ← phi( @26/(word) lines_bcd#53 ) + (byte) current_movedown_counter#35 ← phi( @26/(byte) current_movedown_counter#0 ) + (byte) keyboard_modifiers#33 ← phi( @26/(byte) keyboard_modifiers#34 ) + (byte) keyboard_events_size#36 ← phi( @26/(byte) keyboard_events_size#40 ) + (byte) render_screen_showing#20 ← phi( @26/(byte) render_screen_showing#21 ) + (byte) next_piece_idx#46 ← phi( @26/(byte) next_piece_idx#0 ) + (byte) game_over#45 ← phi( @26/(byte) game_over#51 ) + (byte) current_ypos#64 ← phi( @26/(byte) current_ypos#69 ) + (byte) current_xpos#78 ← phi( @26/(byte) current_xpos#88 ) + (byte*) current_piece_gfx#63 ← phi( @26/(byte*) current_piece_gfx#72 ) + (byte) current_orientation#62 ← phi( @26/(byte) current_orientation#0 ) + (byte) current_piece_char#51 ← phi( @26/(byte) current_piece_char#58 ) + (byte*) current_piece#54 ← phi( @26/(byte*) current_piece#0 ) + (byte) current_movedown_slow#62 ← phi( @26/(byte) current_movedown_slow#0 ) + (byte) render_screen_render#40 ← phi( @26/(byte) render_screen_render#43 ) + (byte) render_screen_show#32 ← phi( @26/(byte) render_screen_show#35 ) + (byte) irq_raster_next#17 ← phi( @26/(byte) irq_raster_next#20 ) + (byte) irq_sprite_ypos#14 ← phi( @26/(byte) irq_sprite_ypos#18 ) + (byte) COLLISION_NONE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) COLLISION_PLAYFIELD#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) COLLISION_BOTTOM#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) COLLISION_LEFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) COLLISION_RIGHT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 to:@38 play_collision: scope:[play_collision] from play_move_down::@9 play_move_leftright::@1 play_move_leftright::@5 play_move_rotate::@4 play_spawn_current - (byte) play_collision::xpos#6 ? phi( play_move_down::@9/(byte) play_collision::xpos#0 play_move_leftright::@1/(byte) play_collision::xpos#1 play_move_leftright::@5/(byte) play_collision::xpos#2 play_move_rotate::@4/(byte) play_collision::xpos#3 play_spawn_current/(byte) play_collision::xpos#4 ) - (byte) play_collision::ypos#5 ? phi( play_move_down::@9/(byte) play_collision::ypos#0 play_move_leftright::@1/(byte) play_collision::ypos#1 play_move_leftright::@5/(byte) play_collision::ypos#2 play_move_rotate::@4/(byte) play_collision::ypos#3 play_spawn_current/(byte) play_collision::ypos#4 ) - (byte) play_collision::orientation#5 ? phi( play_move_down::@9/(byte) play_collision::orientation#0 play_move_leftright::@1/(byte) play_collision::orientation#1 play_move_leftright::@5/(byte) play_collision::orientation#2 play_move_rotate::@4/(byte) play_collision::orientation#3 play_spawn_current/(byte) play_collision::orientation#4 ) - (byte*) current_piece#17 ? phi( play_move_down::@9/(byte*) current_piece#31 play_move_leftright::@1/(byte*) current_piece#32 play_move_leftright::@5/(byte*) current_piece#33 play_move_rotate::@4/(byte*) current_piece#34 play_spawn_current/(byte*) current_piece#5 ) - (byte*~) play_collision::$0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 - (byte*) play_collision::piece_gfx#0 ? (byte*~) play_collision::$0 - (byte) play_collision::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) play_collision::$1 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_collision::ypos2#0 ? (byte~) play_collision::$1 - (byte) play_collision::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_collision::xpos#6 ← phi( play_move_down::@9/(byte) play_collision::xpos#0 play_move_leftright::@1/(byte) play_collision::xpos#1 play_move_leftright::@5/(byte) play_collision::xpos#2 play_move_rotate::@4/(byte) play_collision::xpos#3 play_spawn_current/(byte) play_collision::xpos#4 ) + (byte) play_collision::ypos#5 ← phi( play_move_down::@9/(byte) play_collision::ypos#0 play_move_leftright::@1/(byte) play_collision::ypos#1 play_move_leftright::@5/(byte) play_collision::ypos#2 play_move_rotate::@4/(byte) play_collision::ypos#3 play_spawn_current/(byte) play_collision::ypos#4 ) + (byte) play_collision::orientation#5 ← phi( play_move_down::@9/(byte) play_collision::orientation#0 play_move_leftright::@1/(byte) play_collision::orientation#1 play_move_leftright::@5/(byte) play_collision::orientation#2 play_move_rotate::@4/(byte) play_collision::orientation#3 play_spawn_current/(byte) play_collision::orientation#4 ) + (byte*) current_piece#17 ← phi( play_move_down::@9/(byte*) current_piece#31 play_move_leftright::@1/(byte*) current_piece#32 play_move_leftright::@5/(byte*) current_piece#33 play_move_rotate::@4/(byte*) current_piece#34 play_spawn_current/(byte*) current_piece#5 ) + (byte*~) play_collision::$0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 + (byte*) play_collision::piece_gfx#0 ← (byte*~) play_collision::$0 + (byte) play_collision::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_collision::$1 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_collision::ypos2#0 ← (byte~) play_collision::$1 + (byte) play_collision::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_collision::@1 play_collision::@1: scope:[play_collision] from play_collision play_collision::@17 - (byte) play_collision::l#6 ? phi( play_collision/(byte) play_collision::l#0 play_collision::@17/(byte) play_collision::l#1 ) - (byte) play_collision::i#3 ? phi( play_collision/(byte) play_collision::i#0 play_collision::@17/(byte) play_collision::i#5 ) - (byte*) play_collision::piece_gfx#2 ? phi( play_collision/(byte*) play_collision::piece_gfx#0 play_collision::@17/(byte*) play_collision::piece_gfx#4 ) - (byte) play_collision::xpos#5 ? phi( play_collision/(byte) play_collision::xpos#6 play_collision::@17/(byte) play_collision::xpos#7 ) - (byte) play_collision::ypos2#2 ? phi( play_collision/(byte) play_collision::ypos2#0 play_collision::@17/(byte) play_collision::ypos2#1 ) - (byte*) play_collision::playfield_line#0 ? *((byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) - (byte) play_collision::col#0 ? (byte) play_collision::xpos#5 - (byte) play_collision::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_collision::l#6 ← phi( play_collision/(byte) play_collision::l#0 play_collision::@17/(byte) play_collision::l#1 ) + (byte) play_collision::i#3 ← phi( play_collision/(byte) play_collision::i#0 play_collision::@17/(byte) play_collision::i#5 ) + (byte*) play_collision::piece_gfx#2 ← phi( play_collision/(byte*) play_collision::piece_gfx#0 play_collision::@17/(byte*) play_collision::piece_gfx#4 ) + (byte) play_collision::xpos#5 ← phi( play_collision/(byte) play_collision::xpos#6 play_collision::@17/(byte) play_collision::xpos#7 ) + (byte) play_collision::ypos2#2 ← phi( play_collision/(byte) play_collision::ypos2#0 play_collision::@17/(byte) play_collision::ypos2#1 ) + (byte*) play_collision::playfield_line#0 ← *((byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) + (byte) play_collision::col#0 ← (byte) play_collision::xpos#5 + (byte) play_collision::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_collision::@2 play_collision::@2: scope:[play_collision] from play_collision::@1 play_collision::@3 - (byte*) play_collision::playfield_line#5 ? phi( play_collision::@1/(byte*) play_collision::playfield_line#0 play_collision::@3/(byte*) play_collision::playfield_line#6 ) - (byte) play_collision::xpos#9 ? phi( play_collision::@1/(byte) play_collision::xpos#5 play_collision::@3/(byte) play_collision::xpos#8 ) - (byte) play_collision::l#4 ? phi( play_collision::@1/(byte) play_collision::l#6 play_collision::@3/(byte) play_collision::l#3 ) - (byte) play_collision::ypos2#5 ? phi( play_collision::@1/(byte) play_collision::ypos2#2 play_collision::@3/(byte) play_collision::ypos2#6 ) - (byte) play_collision::c#3 ? phi( play_collision::@1/(byte) play_collision::c#0 play_collision::@3/(byte) play_collision::c#1 ) - (byte) play_collision::col#6 ? phi( play_collision::@1/(byte) play_collision::col#0 play_collision::@3/(byte) play_collision::col#1 ) - (byte) play_collision::i#2 ? phi( play_collision::@1/(byte) play_collision::i#3 play_collision::@3/(byte) play_collision::i#4 ) - (byte*) play_collision::piece_gfx#1 ? phi( play_collision::@1/(byte*) play_collision::piece_gfx#2 play_collision::@3/(byte*) play_collision::piece_gfx#3 ) - (bool~) play_collision::$2 ? *((byte*) play_collision::piece_gfx#1 + (byte) play_collision::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_collision::$3 ? ! (bool~) play_collision::$2 - (byte) play_collision::i#1 ? ++ (byte) play_collision::i#2 + (byte*) play_collision::playfield_line#5 ← phi( play_collision::@1/(byte*) play_collision::playfield_line#0 play_collision::@3/(byte*) play_collision::playfield_line#6 ) + (byte) play_collision::xpos#9 ← phi( play_collision::@1/(byte) play_collision::xpos#5 play_collision::@3/(byte) play_collision::xpos#8 ) + (byte) play_collision::l#4 ← phi( play_collision::@1/(byte) play_collision::l#6 play_collision::@3/(byte) play_collision::l#3 ) + (byte) play_collision::ypos2#5 ← phi( play_collision::@1/(byte) play_collision::ypos2#2 play_collision::@3/(byte) play_collision::ypos2#6 ) + (byte) play_collision::c#3 ← phi( play_collision::@1/(byte) play_collision::c#0 play_collision::@3/(byte) play_collision::c#1 ) + (byte) play_collision::col#6 ← phi( play_collision::@1/(byte) play_collision::col#0 play_collision::@3/(byte) play_collision::col#1 ) + (byte) play_collision::i#2 ← phi( play_collision::@1/(byte) play_collision::i#3 play_collision::@3/(byte) play_collision::i#4 ) + (byte*) play_collision::piece_gfx#1 ← phi( play_collision::@1/(byte*) play_collision::piece_gfx#2 play_collision::@3/(byte*) play_collision::piece_gfx#3 ) + (bool~) play_collision::$2 ← *((byte*) play_collision::piece_gfx#1 + (byte) play_collision::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_collision::$3 ← ! (bool~) play_collision::$2 + (byte) play_collision::i#1 ← ++ (byte) play_collision::i#2 if((bool~) play_collision::$3) goto play_collision::@3 to:play_collision::@14 play_collision::@3: scope:[play_collision] from play_collision::@2 play_collision::@7 - (byte*) play_collision::playfield_line#6 ? phi( play_collision::@2/(byte*) play_collision::playfield_line#5 play_collision::@7/(byte*) play_collision::playfield_line#7 ) - (byte) play_collision::xpos#8 ? phi( play_collision::@2/(byte) play_collision::xpos#9 play_collision::@7/(byte) play_collision::xpos#10 ) - (byte) play_collision::l#3 ? phi( play_collision::@2/(byte) play_collision::l#4 play_collision::@7/(byte) play_collision::l#5 ) - (byte) play_collision::ypos2#6 ? phi( play_collision::@2/(byte) play_collision::ypos2#5 play_collision::@7/(byte) play_collision::ypos2#7 ) - (byte) play_collision::i#4 ? phi( play_collision::@2/(byte) play_collision::i#1 play_collision::@7/(byte) play_collision::i#6 ) - (byte*) play_collision::piece_gfx#3 ? phi( play_collision::@2/(byte*) play_collision::piece_gfx#1 play_collision::@7/(byte*) play_collision::piece_gfx#5 ) - (byte) play_collision::c#2 ? phi( play_collision::@2/(byte) play_collision::c#3 play_collision::@7/(byte) play_collision::c#4 ) - (byte) play_collision::col#2 ? phi( play_collision::@2/(byte) play_collision::col#6 play_collision::@7/(byte) play_collision::col#7 ) - (byte) play_collision::col#1 ? ++ (byte) play_collision::col#2 - (byte) play_collision::c#1 ? (byte) play_collision::c#2 + rangenext(0,3) - (bool~) play_collision::$14 ? (byte) play_collision::c#1 != rangelast(0,3) + (byte*) play_collision::playfield_line#6 ← phi( play_collision::@2/(byte*) play_collision::playfield_line#5 play_collision::@7/(byte*) play_collision::playfield_line#7 ) + (byte) play_collision::xpos#8 ← phi( play_collision::@2/(byte) play_collision::xpos#9 play_collision::@7/(byte) play_collision::xpos#10 ) + (byte) play_collision::l#3 ← phi( play_collision::@2/(byte) play_collision::l#4 play_collision::@7/(byte) play_collision::l#5 ) + (byte) play_collision::ypos2#6 ← phi( play_collision::@2/(byte) play_collision::ypos2#5 play_collision::@7/(byte) play_collision::ypos2#7 ) + (byte) play_collision::i#4 ← phi( play_collision::@2/(byte) play_collision::i#1 play_collision::@7/(byte) play_collision::i#6 ) + (byte*) play_collision::piece_gfx#3 ← phi( play_collision::@2/(byte*) play_collision::piece_gfx#1 play_collision::@7/(byte*) play_collision::piece_gfx#5 ) + (byte) play_collision::c#2 ← phi( play_collision::@2/(byte) play_collision::c#3 play_collision::@7/(byte) play_collision::c#4 ) + (byte) play_collision::col#2 ← phi( play_collision::@2/(byte) play_collision::col#6 play_collision::@7/(byte) play_collision::col#7 ) + (byte) play_collision::col#1 ← ++ (byte) play_collision::col#2 + (byte) play_collision::c#1 ← (byte) play_collision::c#2 + rangenext(0,3) + (bool~) play_collision::$14 ← (byte) play_collision::c#1 != rangelast(0,3) if((bool~) play_collision::$14) goto play_collision::@2 to:play_collision::@17 play_collision::@14: scope:[play_collision] from play_collision::@2 - (byte) play_collision::xpos#14 ? phi( play_collision::@2/(byte) play_collision::xpos#9 ) - (byte) play_collision::l#10 ? phi( play_collision::@2/(byte) play_collision::l#4 ) - (byte) play_collision::i#10 ? phi( play_collision::@2/(byte) play_collision::i#1 ) - (byte*) play_collision::piece_gfx#9 ? phi( play_collision::@2/(byte*) play_collision::piece_gfx#1 ) - (byte) play_collision::c#8 ? phi( play_collision::@2/(byte) play_collision::c#3 ) - (byte*) play_collision::playfield_line#4 ? phi( play_collision::@2/(byte*) play_collision::playfield_line#5 ) - (byte) play_collision::col#8 ? phi( play_collision::@2/(byte) play_collision::col#6 ) - (byte) play_collision::ypos2#3 ? phi( play_collision::@2/(byte) play_collision::ypos2#5 ) - (byte/signed word/word/dword/signed dword~) play_collision::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 2 * (byte) PLAYFIELD_LINES#0 - (bool~) play_collision::$5 ? (byte) play_collision::ypos2#3 >= (byte/signed word/word/dword/signed dword~) play_collision::$4 - (bool~) play_collision::$6 ? ! (bool~) play_collision::$5 + (byte) play_collision::xpos#14 ← phi( play_collision::@2/(byte) play_collision::xpos#9 ) + (byte) play_collision::l#10 ← phi( play_collision::@2/(byte) play_collision::l#4 ) + (byte) play_collision::i#10 ← phi( play_collision::@2/(byte) play_collision::i#1 ) + (byte*) play_collision::piece_gfx#9 ← phi( play_collision::@2/(byte*) play_collision::piece_gfx#1 ) + (byte) play_collision::c#8 ← phi( play_collision::@2/(byte) play_collision::c#3 ) + (byte*) play_collision::playfield_line#4 ← phi( play_collision::@2/(byte*) play_collision::playfield_line#5 ) + (byte) play_collision::col#8 ← phi( play_collision::@2/(byte) play_collision::col#6 ) + (byte) play_collision::ypos2#3 ← phi( play_collision::@2/(byte) play_collision::ypos2#5 ) + (byte/signed word/word/dword/signed dword~) play_collision::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 2 * (byte) PLAYFIELD_LINES#0 + (bool~) play_collision::$5 ← (byte) play_collision::ypos2#3 >= (byte/signed word/word/dword/signed dword~) play_collision::$4 + (bool~) play_collision::$6 ← ! (bool~) play_collision::$5 if((bool~) play_collision::$6) goto play_collision::@4 to:play_collision::@15 play_collision::@4: scope:[play_collision] from play_collision::@14 - (byte) play_collision::xpos#13 ? phi( play_collision::@14/(byte) play_collision::xpos#14 ) - (byte) play_collision::l#9 ? phi( play_collision::@14/(byte) play_collision::l#10 ) - (byte) play_collision::ypos2#10 ? phi( play_collision::@14/(byte) play_collision::ypos2#3 ) - (byte) play_collision::i#9 ? phi( play_collision::@14/(byte) play_collision::i#10 ) - (byte*) play_collision::piece_gfx#8 ? phi( play_collision::@14/(byte*) play_collision::piece_gfx#9 ) - (byte) play_collision::c#7 ? phi( play_collision::@14/(byte) play_collision::c#8 ) - (byte*) play_collision::playfield_line#3 ? phi( play_collision::@14/(byte*) play_collision::playfield_line#4 ) - (byte) play_collision::col#3 ? phi( play_collision::@14/(byte) play_collision::col#8 ) - (byte~) play_collision::$7 ? (byte) play_collision::col#3 & (byte/word/signed word/dword/signed dword) $80 - (bool~) play_collision::$8 ? (byte~) play_collision::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_collision::$9 ? ! (bool~) play_collision::$8 + (byte) play_collision::xpos#13 ← phi( play_collision::@14/(byte) play_collision::xpos#14 ) + (byte) play_collision::l#9 ← phi( play_collision::@14/(byte) play_collision::l#10 ) + (byte) play_collision::ypos2#10 ← phi( play_collision::@14/(byte) play_collision::ypos2#3 ) + (byte) play_collision::i#9 ← phi( play_collision::@14/(byte) play_collision::i#10 ) + (byte*) play_collision::piece_gfx#8 ← phi( play_collision::@14/(byte*) play_collision::piece_gfx#9 ) + (byte) play_collision::c#7 ← phi( play_collision::@14/(byte) play_collision::c#8 ) + (byte*) play_collision::playfield_line#3 ← phi( play_collision::@14/(byte*) play_collision::playfield_line#4 ) + (byte) play_collision::col#3 ← phi( play_collision::@14/(byte) play_collision::col#8 ) + (byte~) play_collision::$7 ← (byte) play_collision::col#3 & (byte/word/signed word/dword/signed dword) $80 + (bool~) play_collision::$8 ← (byte~) play_collision::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_collision::$9 ← ! (bool~) play_collision::$8 if((bool~) play_collision::$9) goto play_collision::@5 to:play_collision::@8 play_collision::@15: scope:[play_collision] from play_collision::@14 - (byte) play_collision::return#4 ? (byte) COLLISION_BOTTOM#0 + (byte) play_collision::return#4 ← (byte) COLLISION_BOTTOM#0 to:play_collision::@return play_collision::@return: scope:[play_collision] from play_collision::@10 play_collision::@12 play_collision::@15 play_collision::@18 play_collision::@8 - (byte) play_collision::return#15 ? phi( play_collision::@10/(byte) play_collision::return#7 play_collision::@12/(byte) play_collision::return#8 play_collision::@15/(byte) play_collision::return#4 play_collision::@18/(byte) play_collision::return#9 play_collision::@8/(byte) play_collision::return#6 ) - (byte) play_collision::return#5 ? (byte) play_collision::return#15 + (byte) play_collision::return#15 ← phi( play_collision::@10/(byte) play_collision::return#7 play_collision::@12/(byte) play_collision::return#8 play_collision::@15/(byte) play_collision::return#4 play_collision::@18/(byte) play_collision::return#9 play_collision::@8/(byte) play_collision::return#6 ) + (byte) play_collision::return#5 ← (byte) play_collision::return#15 return to:@return play_collision::@5: scope:[play_collision] from play_collision::@4 - (byte) play_collision::xpos#12 ? phi( play_collision::@4/(byte) play_collision::xpos#13 ) - (byte) play_collision::l#8 ? phi( play_collision::@4/(byte) play_collision::l#9 ) - (byte) play_collision::ypos2#9 ? phi( play_collision::@4/(byte) play_collision::ypos2#10 ) - (byte) play_collision::i#8 ? phi( play_collision::@4/(byte) play_collision::i#9 ) - (byte*) play_collision::piece_gfx#7 ? phi( play_collision::@4/(byte*) play_collision::piece_gfx#8 ) - (byte) play_collision::c#6 ? phi( play_collision::@4/(byte) play_collision::c#7 ) - (byte*) play_collision::playfield_line#2 ? phi( play_collision::@4/(byte*) play_collision::playfield_line#3 ) - (byte) play_collision::col#4 ? phi( play_collision::@4/(byte) play_collision::col#3 ) - (bool~) play_collision::$10 ? (byte) play_collision::col#4 >= (byte) PLAYFIELD_COLS#0 - (bool~) play_collision::$11 ? ! (bool~) play_collision::$10 + (byte) play_collision::xpos#12 ← phi( play_collision::@4/(byte) play_collision::xpos#13 ) + (byte) play_collision::l#8 ← phi( play_collision::@4/(byte) play_collision::l#9 ) + (byte) play_collision::ypos2#9 ← phi( play_collision::@4/(byte) play_collision::ypos2#10 ) + (byte) play_collision::i#8 ← phi( play_collision::@4/(byte) play_collision::i#9 ) + (byte*) play_collision::piece_gfx#7 ← phi( play_collision::@4/(byte*) play_collision::piece_gfx#8 ) + (byte) play_collision::c#6 ← phi( play_collision::@4/(byte) play_collision::c#7 ) + (byte*) play_collision::playfield_line#2 ← phi( play_collision::@4/(byte*) play_collision::playfield_line#3 ) + (byte) play_collision::col#4 ← phi( play_collision::@4/(byte) play_collision::col#3 ) + (bool~) play_collision::$10 ← (byte) play_collision::col#4 >= (byte) PLAYFIELD_COLS#0 + (bool~) play_collision::$11 ← ! (bool~) play_collision::$10 if((bool~) play_collision::$11) goto play_collision::@6 to:play_collision::@10 play_collision::@8: scope:[play_collision] from play_collision::@4 - (byte) play_collision::return#6 ? (byte) COLLISION_LEFT#0 + (byte) play_collision::return#6 ← (byte) COLLISION_LEFT#0 to:play_collision::@return play_collision::@6: scope:[play_collision] from play_collision::@5 - (byte) play_collision::xpos#11 ? phi( play_collision::@5/(byte) play_collision::xpos#12 ) - (byte) play_collision::l#7 ? phi( play_collision::@5/(byte) play_collision::l#8 ) - (byte) play_collision::ypos2#8 ? phi( play_collision::@5/(byte) play_collision::ypos2#9 ) - (byte) play_collision::i#7 ? phi( play_collision::@5/(byte) play_collision::i#8 ) - (byte*) play_collision::piece_gfx#6 ? phi( play_collision::@5/(byte*) play_collision::piece_gfx#7 ) - (byte) play_collision::c#5 ? phi( play_collision::@5/(byte) play_collision::c#6 ) - (byte) play_collision::col#5 ? phi( play_collision::@5/(byte) play_collision::col#4 ) - (byte*) play_collision::playfield_line#1 ? phi( play_collision::@5/(byte*) play_collision::playfield_line#2 ) - (bool~) play_collision::$12 ? *((byte*) play_collision::playfield_line#1 + (byte) play_collision::col#5) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_collision::$13 ? ! (bool~) play_collision::$12 + (byte) play_collision::xpos#11 ← phi( play_collision::@5/(byte) play_collision::xpos#12 ) + (byte) play_collision::l#7 ← phi( play_collision::@5/(byte) play_collision::l#8 ) + (byte) play_collision::ypos2#8 ← phi( play_collision::@5/(byte) play_collision::ypos2#9 ) + (byte) play_collision::i#7 ← phi( play_collision::@5/(byte) play_collision::i#8 ) + (byte*) play_collision::piece_gfx#6 ← phi( play_collision::@5/(byte*) play_collision::piece_gfx#7 ) + (byte) play_collision::c#5 ← phi( play_collision::@5/(byte) play_collision::c#6 ) + (byte) play_collision::col#5 ← phi( play_collision::@5/(byte) play_collision::col#4 ) + (byte*) play_collision::playfield_line#1 ← phi( play_collision::@5/(byte*) play_collision::playfield_line#2 ) + (bool~) play_collision::$12 ← *((byte*) play_collision::playfield_line#1 + (byte) play_collision::col#5) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_collision::$13 ← ! (bool~) play_collision::$12 if((bool~) play_collision::$13) goto play_collision::@7 to:play_collision::@12 play_collision::@10: scope:[play_collision] from play_collision::@5 - (byte) play_collision::return#7 ? (byte) COLLISION_RIGHT#0 + (byte) play_collision::return#7 ← (byte) COLLISION_RIGHT#0 to:play_collision::@return play_collision::@7: scope:[play_collision] from play_collision::@6 - (byte*) play_collision::playfield_line#7 ? phi( play_collision::@6/(byte*) play_collision::playfield_line#1 ) - (byte) play_collision::xpos#10 ? phi( play_collision::@6/(byte) play_collision::xpos#11 ) - (byte) play_collision::l#5 ? phi( play_collision::@6/(byte) play_collision::l#7 ) - (byte) play_collision::ypos2#7 ? phi( play_collision::@6/(byte) play_collision::ypos2#8 ) - (byte) play_collision::i#6 ? phi( play_collision::@6/(byte) play_collision::i#7 ) - (byte*) play_collision::piece_gfx#5 ? phi( play_collision::@6/(byte*) play_collision::piece_gfx#6 ) - (byte) play_collision::c#4 ? phi( play_collision::@6/(byte) play_collision::c#5 ) - (byte) play_collision::col#7 ? phi( play_collision::@6/(byte) play_collision::col#5 ) + (byte*) play_collision::playfield_line#7 ← phi( play_collision::@6/(byte*) play_collision::playfield_line#1 ) + (byte) play_collision::xpos#10 ← phi( play_collision::@6/(byte) play_collision::xpos#11 ) + (byte) play_collision::l#5 ← phi( play_collision::@6/(byte) play_collision::l#7 ) + (byte) play_collision::ypos2#7 ← phi( play_collision::@6/(byte) play_collision::ypos2#8 ) + (byte) play_collision::i#6 ← phi( play_collision::@6/(byte) play_collision::i#7 ) + (byte*) play_collision::piece_gfx#5 ← phi( play_collision::@6/(byte*) play_collision::piece_gfx#6 ) + (byte) play_collision::c#4 ← phi( play_collision::@6/(byte) play_collision::c#5 ) + (byte) play_collision::col#7 ← phi( play_collision::@6/(byte) play_collision::col#5 ) to:play_collision::@3 play_collision::@12: scope:[play_collision] from play_collision::@6 - (byte) play_collision::return#8 ? (byte) COLLISION_PLAYFIELD#0 + (byte) play_collision::return#8 ← (byte) COLLISION_PLAYFIELD#0 to:play_collision::@return play_collision::@17: scope:[play_collision] from play_collision::@3 - (byte) play_collision::i#5 ? phi( play_collision::@3/(byte) play_collision::i#4 ) - (byte*) play_collision::piece_gfx#4 ? phi( play_collision::@3/(byte*) play_collision::piece_gfx#3 ) - (byte) play_collision::xpos#7 ? phi( play_collision::@3/(byte) play_collision::xpos#8 ) - (byte) play_collision::l#2 ? phi( play_collision::@3/(byte) play_collision::l#3 ) - (byte) play_collision::ypos2#4 ? phi( play_collision::@3/(byte) play_collision::ypos2#6 ) - (byte) play_collision::ypos2#1 ? (byte) play_collision::ypos2#4 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) play_collision::l#1 ? (byte) play_collision::l#2 + rangenext(0,3) - (bool~) play_collision::$15 ? (byte) play_collision::l#1 != rangelast(0,3) + (byte) play_collision::i#5 ← phi( play_collision::@3/(byte) play_collision::i#4 ) + (byte*) play_collision::piece_gfx#4 ← phi( play_collision::@3/(byte*) play_collision::piece_gfx#3 ) + (byte) play_collision::xpos#7 ← phi( play_collision::@3/(byte) play_collision::xpos#8 ) + (byte) play_collision::l#2 ← phi( play_collision::@3/(byte) play_collision::l#3 ) + (byte) play_collision::ypos2#4 ← phi( play_collision::@3/(byte) play_collision::ypos2#6 ) + (byte) play_collision::ypos2#1 ← (byte) play_collision::ypos2#4 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) play_collision::l#1 ← (byte) play_collision::l#2 + rangenext(0,3) + (bool~) play_collision::$15 ← (byte) play_collision::l#1 != rangelast(0,3) if((bool~) play_collision::$15) goto play_collision::@1 to:play_collision::@18 play_collision::@18: scope:[play_collision] from play_collision::@17 - (byte) play_collision::return#9 ? (byte) COLLISION_NONE#0 + (byte) play_collision::return#9 ← (byte) COLLISION_NONE#0 to:play_collision::@return play_lock_current: scope:[play_lock_current] from play_move_down::@10 - (byte) current_piece_char#59 ? phi( play_move_down::@10/(byte) current_piece_char#75 ) - (byte*) current_piece_gfx#54 ? phi( play_move_down::@10/(byte*) current_piece_gfx#73 ) - (byte) current_xpos#52 ? phi( play_move_down::@10/(byte) current_xpos#70 ) - (byte) current_ypos#23 ? phi( play_move_down::@10/(byte) current_ypos#44 ) - (byte) play_lock_current::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) play_lock_current::$0 ? (byte) current_ypos#23 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_lock_current::ypos2#0 ? (byte~) play_lock_current::$0 - (byte) play_lock_current::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) current_piece_char#59 ← phi( play_move_down::@10/(byte) current_piece_char#75 ) + (byte*) current_piece_gfx#54 ← phi( play_move_down::@10/(byte*) current_piece_gfx#73 ) + (byte) current_xpos#52 ← phi( play_move_down::@10/(byte) current_xpos#70 ) + (byte) current_ypos#23 ← phi( play_move_down::@10/(byte) current_ypos#44 ) + (byte) play_lock_current::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_lock_current::$0 ← (byte) current_ypos#23 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_lock_current::ypos2#0 ← (byte~) play_lock_current::$0 + (byte) play_lock_current::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_lock_current::@1 play_lock_current::@1: scope:[play_lock_current] from play_lock_current play_lock_current::@5 - (byte) play_lock_current::l#6 ? phi( play_lock_current/(byte) play_lock_current::l#0 play_lock_current::@5/(byte) play_lock_current::l#1 ) - (byte) current_piece_char#43 ? phi( play_lock_current/(byte) current_piece_char#59 play_lock_current::@5/(byte) current_piece_char#60 ) - (byte) play_lock_current::i#3 ? phi( play_lock_current/(byte) play_lock_current::i#0 play_lock_current::@5/(byte) play_lock_current::i#5 ) - (byte*) current_piece_gfx#39 ? phi( play_lock_current/(byte*) current_piece_gfx#54 play_lock_current::@5/(byte*) current_piece_gfx#55 ) - (byte) current_xpos#29 ? phi( play_lock_current/(byte) current_xpos#52 play_lock_current::@5/(byte) current_xpos#53 ) - (byte) play_lock_current::ypos2#2 ? phi( play_lock_current/(byte) play_lock_current::ypos2#0 play_lock_current::@5/(byte) play_lock_current::ypos2#1 ) - (byte*) play_lock_current::playfield_line#0 ? *((byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) - (byte) play_lock_current::col#0 ? (byte) current_xpos#29 - (byte) play_lock_current::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_lock_current::l#6 ← phi( play_lock_current/(byte) play_lock_current::l#0 play_lock_current::@5/(byte) play_lock_current::l#1 ) + (byte) current_piece_char#43 ← phi( play_lock_current/(byte) current_piece_char#59 play_lock_current::@5/(byte) current_piece_char#60 ) + (byte) play_lock_current::i#3 ← phi( play_lock_current/(byte) play_lock_current::i#0 play_lock_current::@5/(byte) play_lock_current::i#5 ) + (byte*) current_piece_gfx#39 ← phi( play_lock_current/(byte*) current_piece_gfx#54 play_lock_current::@5/(byte*) current_piece_gfx#55 ) + (byte) current_xpos#29 ← phi( play_lock_current/(byte) current_xpos#52 play_lock_current::@5/(byte) current_xpos#53 ) + (byte) play_lock_current::ypos2#2 ← phi( play_lock_current/(byte) play_lock_current::ypos2#0 play_lock_current::@5/(byte) play_lock_current::ypos2#1 ) + (byte*) play_lock_current::playfield_line#0 ← *((byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) + (byte) play_lock_current::col#0 ← (byte) current_xpos#29 + (byte) play_lock_current::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_lock_current::@2 play_lock_current::@2: scope:[play_lock_current] from play_lock_current::@1 play_lock_current::@3 - (byte) current_xpos#89 ? phi( play_lock_current::@1/(byte) current_xpos#29 play_lock_current::@3/(byte) current_xpos#71 ) - (byte) play_lock_current::l#4 ? phi( play_lock_current::@1/(byte) play_lock_current::l#6 play_lock_current::@3/(byte) play_lock_current::l#3 ) - (byte) play_lock_current::ypos2#5 ? phi( play_lock_current::@1/(byte) play_lock_current::ypos2#2 play_lock_current::@3/(byte) play_lock_current::ypos2#4 ) - (byte*) play_lock_current::playfield_line#2 ? phi( play_lock_current::@1/(byte*) play_lock_current::playfield_line#0 play_lock_current::@3/(byte*) play_lock_current::playfield_line#3 ) - (byte) current_piece_char#31 ? phi( play_lock_current::@1/(byte) current_piece_char#43 play_lock_current::@3/(byte) current_piece_char#44 ) - (byte) play_lock_current::c#3 ? phi( play_lock_current::@1/(byte) play_lock_current::c#0 play_lock_current::@3/(byte) play_lock_current::c#1 ) - (byte) play_lock_current::col#4 ? phi( play_lock_current::@1/(byte) play_lock_current::col#0 play_lock_current::@3/(byte) play_lock_current::col#1 ) - (byte) play_lock_current::i#2 ? phi( play_lock_current::@1/(byte) play_lock_current::i#3 play_lock_current::@3/(byte) play_lock_current::i#4 ) - (byte*) current_piece_gfx#22 ? phi( play_lock_current::@1/(byte*) current_piece_gfx#39 play_lock_current::@3/(byte*) current_piece_gfx#40 ) - (bool~) play_lock_current::$1 ? *((byte*) current_piece_gfx#22 + (byte) play_lock_current::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_lock_current::$2 ? ! (bool~) play_lock_current::$1 - (byte) play_lock_current::i#1 ? ++ (byte) play_lock_current::i#2 + (byte) current_xpos#89 ← phi( play_lock_current::@1/(byte) current_xpos#29 play_lock_current::@3/(byte) current_xpos#71 ) + (byte) play_lock_current::l#4 ← phi( play_lock_current::@1/(byte) play_lock_current::l#6 play_lock_current::@3/(byte) play_lock_current::l#3 ) + (byte) play_lock_current::ypos2#5 ← phi( play_lock_current::@1/(byte) play_lock_current::ypos2#2 play_lock_current::@3/(byte) play_lock_current::ypos2#4 ) + (byte*) play_lock_current::playfield_line#2 ← phi( play_lock_current::@1/(byte*) play_lock_current::playfield_line#0 play_lock_current::@3/(byte*) play_lock_current::playfield_line#3 ) + (byte) current_piece_char#31 ← phi( play_lock_current::@1/(byte) current_piece_char#43 play_lock_current::@3/(byte) current_piece_char#44 ) + (byte) play_lock_current::c#3 ← phi( play_lock_current::@1/(byte) play_lock_current::c#0 play_lock_current::@3/(byte) play_lock_current::c#1 ) + (byte) play_lock_current::col#4 ← phi( play_lock_current::@1/(byte) play_lock_current::col#0 play_lock_current::@3/(byte) play_lock_current::col#1 ) + (byte) play_lock_current::i#2 ← phi( play_lock_current::@1/(byte) play_lock_current::i#3 play_lock_current::@3/(byte) play_lock_current::i#4 ) + (byte*) current_piece_gfx#22 ← phi( play_lock_current::@1/(byte*) current_piece_gfx#39 play_lock_current::@3/(byte*) current_piece_gfx#40 ) + (bool~) play_lock_current::$1 ← *((byte*) current_piece_gfx#22 + (byte) play_lock_current::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_lock_current::$2 ← ! (bool~) play_lock_current::$1 + (byte) play_lock_current::i#1 ← ++ (byte) play_lock_current::i#2 if((bool~) play_lock_current::$2) goto play_lock_current::@3 to:play_lock_current::@4 play_lock_current::@3: scope:[play_lock_current] from play_lock_current::@2 play_lock_current::@4 - (byte) current_xpos#71 ? phi( play_lock_current::@2/(byte) current_xpos#89 play_lock_current::@4/(byte) current_xpos#90 ) - (byte*) play_lock_current::playfield_line#3 ? phi( play_lock_current::@2/(byte*) play_lock_current::playfield_line#2 play_lock_current::@4/(byte*) play_lock_current::playfield_line#1 ) - (byte) current_piece_char#44 ? phi( play_lock_current::@2/(byte) current_piece_char#31 play_lock_current::@4/(byte) current_piece_char#17 ) - (byte) play_lock_current::l#3 ? phi( play_lock_current::@2/(byte) play_lock_current::l#4 play_lock_current::@4/(byte) play_lock_current::l#5 ) - (byte) play_lock_current::ypos2#4 ? phi( play_lock_current::@2/(byte) play_lock_current::ypos2#5 play_lock_current::@4/(byte) play_lock_current::ypos2#6 ) - (byte) play_lock_current::i#4 ? phi( play_lock_current::@2/(byte) play_lock_current::i#1 play_lock_current::@4/(byte) play_lock_current::i#6 ) - (byte*) current_piece_gfx#40 ? phi( play_lock_current::@2/(byte*) current_piece_gfx#22 play_lock_current::@4/(byte*) current_piece_gfx#56 ) - (byte) play_lock_current::c#2 ? phi( play_lock_current::@2/(byte) play_lock_current::c#3 play_lock_current::@4/(byte) play_lock_current::c#4 ) - (byte) play_lock_current::col#2 ? phi( play_lock_current::@2/(byte) play_lock_current::col#4 play_lock_current::@4/(byte) play_lock_current::col#3 ) - (byte) play_lock_current::col#1 ? ++ (byte) play_lock_current::col#2 - (byte) play_lock_current::c#1 ? (byte) play_lock_current::c#2 + rangenext(0,3) - (bool~) play_lock_current::$3 ? (byte) play_lock_current::c#1 != rangelast(0,3) + (byte) current_xpos#71 ← phi( play_lock_current::@2/(byte) current_xpos#89 play_lock_current::@4/(byte) current_xpos#90 ) + (byte*) play_lock_current::playfield_line#3 ← phi( play_lock_current::@2/(byte*) play_lock_current::playfield_line#2 play_lock_current::@4/(byte*) play_lock_current::playfield_line#1 ) + (byte) current_piece_char#44 ← phi( play_lock_current::@2/(byte) current_piece_char#31 play_lock_current::@4/(byte) current_piece_char#17 ) + (byte) play_lock_current::l#3 ← phi( play_lock_current::@2/(byte) play_lock_current::l#4 play_lock_current::@4/(byte) play_lock_current::l#5 ) + (byte) play_lock_current::ypos2#4 ← phi( play_lock_current::@2/(byte) play_lock_current::ypos2#5 play_lock_current::@4/(byte) play_lock_current::ypos2#6 ) + (byte) play_lock_current::i#4 ← phi( play_lock_current::@2/(byte) play_lock_current::i#1 play_lock_current::@4/(byte) play_lock_current::i#6 ) + (byte*) current_piece_gfx#40 ← phi( play_lock_current::@2/(byte*) current_piece_gfx#22 play_lock_current::@4/(byte*) current_piece_gfx#56 ) + (byte) play_lock_current::c#2 ← phi( play_lock_current::@2/(byte) play_lock_current::c#3 play_lock_current::@4/(byte) play_lock_current::c#4 ) + (byte) play_lock_current::col#2 ← phi( play_lock_current::@2/(byte) play_lock_current::col#4 play_lock_current::@4/(byte) play_lock_current::col#3 ) + (byte) play_lock_current::col#1 ← ++ (byte) play_lock_current::col#2 + (byte) play_lock_current::c#1 ← (byte) play_lock_current::c#2 + rangenext(0,3) + (bool~) play_lock_current::$3 ← (byte) play_lock_current::c#1 != rangelast(0,3) if((bool~) play_lock_current::$3) goto play_lock_current::@2 to:play_lock_current::@5 play_lock_current::@4: scope:[play_lock_current] from play_lock_current::@2 - (byte) current_xpos#90 ? phi( play_lock_current::@2/(byte) current_xpos#89 ) - (byte) play_lock_current::l#5 ? phi( play_lock_current::@2/(byte) play_lock_current::l#4 ) - (byte) play_lock_current::ypos2#6 ? phi( play_lock_current::@2/(byte) play_lock_current::ypos2#5 ) - (byte) play_lock_current::i#6 ? phi( play_lock_current::@2/(byte) play_lock_current::i#1 ) - (byte*) current_piece_gfx#56 ? phi( play_lock_current::@2/(byte*) current_piece_gfx#22 ) - (byte) play_lock_current::c#4 ? phi( play_lock_current::@2/(byte) play_lock_current::c#3 ) - (byte) play_lock_current::col#3 ? phi( play_lock_current::@2/(byte) play_lock_current::col#4 ) - (byte*) play_lock_current::playfield_line#1 ? phi( play_lock_current::@2/(byte*) play_lock_current::playfield_line#2 ) - (byte) current_piece_char#17 ? phi( play_lock_current::@2/(byte) current_piece_char#31 ) - *((byte*) play_lock_current::playfield_line#1 + (byte) play_lock_current::col#3) ? (byte) current_piece_char#17 + (byte) current_xpos#90 ← phi( play_lock_current::@2/(byte) current_xpos#89 ) + (byte) play_lock_current::l#5 ← phi( play_lock_current::@2/(byte) play_lock_current::l#4 ) + (byte) play_lock_current::ypos2#6 ← phi( play_lock_current::@2/(byte) play_lock_current::ypos2#5 ) + (byte) play_lock_current::i#6 ← phi( play_lock_current::@2/(byte) play_lock_current::i#1 ) + (byte*) current_piece_gfx#56 ← phi( play_lock_current::@2/(byte*) current_piece_gfx#22 ) + (byte) play_lock_current::c#4 ← phi( play_lock_current::@2/(byte) play_lock_current::c#3 ) + (byte) play_lock_current::col#3 ← phi( play_lock_current::@2/(byte) play_lock_current::col#4 ) + (byte*) play_lock_current::playfield_line#1 ← phi( play_lock_current::@2/(byte*) play_lock_current::playfield_line#2 ) + (byte) current_piece_char#17 ← phi( play_lock_current::@2/(byte) current_piece_char#31 ) + *((byte*) play_lock_current::playfield_line#1 + (byte) play_lock_current::col#3) ← (byte) current_piece_char#17 to:play_lock_current::@3 play_lock_current::@5: scope:[play_lock_current] from play_lock_current::@3 - (byte) current_piece_char#60 ? phi( play_lock_current::@3/(byte) current_piece_char#44 ) - (byte) play_lock_current::i#5 ? phi( play_lock_current::@3/(byte) play_lock_current::i#4 ) - (byte*) current_piece_gfx#55 ? phi( play_lock_current::@3/(byte*) current_piece_gfx#40 ) - (byte) current_xpos#53 ? phi( play_lock_current::@3/(byte) current_xpos#71 ) - (byte) play_lock_current::l#2 ? phi( play_lock_current::@3/(byte) play_lock_current::l#3 ) - (byte) play_lock_current::ypos2#3 ? phi( play_lock_current::@3/(byte) play_lock_current::ypos2#4 ) - (byte) play_lock_current::ypos2#1 ? (byte) play_lock_current::ypos2#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) play_lock_current::l#1 ? (byte) play_lock_current::l#2 + rangenext(0,3) - (bool~) play_lock_current::$4 ? (byte) play_lock_current::l#1 != rangelast(0,3) + (byte) current_piece_char#60 ← phi( play_lock_current::@3/(byte) current_piece_char#44 ) + (byte) play_lock_current::i#5 ← phi( play_lock_current::@3/(byte) play_lock_current::i#4 ) + (byte*) current_piece_gfx#55 ← phi( play_lock_current::@3/(byte*) current_piece_gfx#40 ) + (byte) current_xpos#53 ← phi( play_lock_current::@3/(byte) current_xpos#71 ) + (byte) play_lock_current::l#2 ← phi( play_lock_current::@3/(byte) play_lock_current::l#3 ) + (byte) play_lock_current::ypos2#3 ← phi( play_lock_current::@3/(byte) play_lock_current::ypos2#4 ) + (byte) play_lock_current::ypos2#1 ← (byte) play_lock_current::ypos2#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) play_lock_current::l#1 ← (byte) play_lock_current::l#2 + rangenext(0,3) + (bool~) play_lock_current::$4 ← (byte) play_lock_current::l#1 != rangelast(0,3) if((bool~) play_lock_current::$4) goto play_lock_current::@1 to:play_lock_current::@return play_lock_current::@return: scope:[play_lock_current] from play_lock_current::@5 return to:@return play_spawn_current: scope:[play_spawn_current] from main::@29 main::@30 play_move_down::@21 - (byte) game_over#75 ? phi( main::@29/(byte) game_over#30 main::@30/(byte) game_over#7 play_move_down::@21/(byte) game_over#26 ) - (byte) next_piece_idx#17 ? phi( main::@29/(byte) next_piece_idx#32 main::@30/(byte) next_piece_idx#7 play_move_down::@21/(byte) next_piece_idx#29 ) - (byte) play_spawn_current::current_piece_idx#0 ? (byte) next_piece_idx#17 - (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) current_piece#5 ? ((byte*)) *((word[]) PIECES#0 + (byte~) play_spawn_current::$0) - (byte) current_piece_char#5 ? *((byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) - (byte) current_orientation#8 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) play_spawn_current::$1 ? (byte*) current_piece#5 + (byte) current_orientation#8 - (byte*) current_piece_gfx#8 ? (byte*~) play_spawn_current::$1 - (byte) current_xpos#9 ? *((byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) - (byte) current_ypos#6 ? *((byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) - (byte) play_collision::xpos#4 ? (byte) current_xpos#9 - (byte) play_collision::ypos#4 ? (byte) current_ypos#6 - (byte) play_collision::orientation#4 ? (byte) current_orientation#8 + (byte) game_over#75 ← phi( main::@29/(byte) game_over#30 main::@30/(byte) game_over#7 play_move_down::@21/(byte) game_over#26 ) + (byte) next_piece_idx#17 ← phi( main::@29/(byte) next_piece_idx#32 main::@30/(byte) next_piece_idx#7 play_move_down::@21/(byte) next_piece_idx#29 ) + (byte) play_spawn_current::current_piece_idx#0 ← (byte) next_piece_idx#17 + (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) current_piece#5 ← ((byte*)) *((word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte) current_piece_char#5 ← *((byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) + (byte) current_orientation#8 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) play_spawn_current::$1 ← (byte*) current_piece#5 + (byte) current_orientation#8 + (byte*) current_piece_gfx#8 ← (byte*~) play_spawn_current::$1 + (byte) current_xpos#9 ← *((byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) + (byte) current_ypos#6 ← *((byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) + (byte) play_collision::xpos#4 ← (byte) current_xpos#9 + (byte) play_collision::ypos#4 ← (byte) current_ypos#6 + (byte) play_collision::orientation#4 ← (byte) current_orientation#8 call play_collision - (byte) play_collision::return#10 ? (byte) play_collision::return#5 + (byte) play_collision::return#10 ← (byte) play_collision::return#5 to:play_spawn_current::@9 play_spawn_current::@9: scope:[play_spawn_current] from play_spawn_current - (byte) game_over#65 ? phi( play_spawn_current/(byte) game_over#75 ) - (byte) current_ypos#81 ? phi( play_spawn_current/(byte) current_ypos#6 ) - (byte) current_xpos#104 ? phi( play_spawn_current/(byte) current_xpos#9 ) - (byte*) current_piece_gfx#92 ? phi( play_spawn_current/(byte*) current_piece_gfx#8 ) - (byte) current_orientation#80 ? phi( play_spawn_current/(byte) current_orientation#8 ) - (byte) current_piece_char#77 ? phi( play_spawn_current/(byte) current_piece_char#5 ) - (byte*) current_piece#74 ? phi( play_spawn_current/(byte*) current_piece#5 ) - (byte) play_collision::return#16 ? phi( play_spawn_current/(byte) play_collision::return#10 ) - (byte~) play_spawn_current::$2 ? (byte) play_collision::return#16 - (bool~) play_spawn_current::$3 ? (byte~) play_spawn_current::$2 == (byte) COLLISION_PLAYFIELD#0 - (bool~) play_spawn_current::$4 ? ! (bool~) play_spawn_current::$3 + (byte) game_over#65 ← phi( play_spawn_current/(byte) game_over#75 ) + (byte) current_ypos#81 ← phi( play_spawn_current/(byte) current_ypos#6 ) + (byte) current_xpos#104 ← phi( play_spawn_current/(byte) current_xpos#9 ) + (byte*) current_piece_gfx#92 ← phi( play_spawn_current/(byte*) current_piece_gfx#8 ) + (byte) current_orientation#80 ← phi( play_spawn_current/(byte) current_orientation#8 ) + (byte) current_piece_char#77 ← phi( play_spawn_current/(byte) current_piece_char#5 ) + (byte*) current_piece#74 ← phi( play_spawn_current/(byte*) current_piece#5 ) + (byte) play_collision::return#16 ← phi( play_spawn_current/(byte) play_collision::return#10 ) + (byte~) play_spawn_current::$2 ← (byte) play_collision::return#16 + (bool~) play_spawn_current::$3 ← (byte~) play_spawn_current::$2 == (byte) COLLISION_PLAYFIELD#0 + (bool~) play_spawn_current::$4 ← ! (bool~) play_spawn_current::$3 if((bool~) play_spawn_current::$4) goto play_spawn_current::@1 to:play_spawn_current::@2 play_spawn_current::@1: scope:[play_spawn_current] from play_spawn_current::@2 play_spawn_current::@9 - (byte) game_over#52 ? phi( play_spawn_current::@2/(byte) game_over#5 play_spawn_current::@9/(byte) game_over#65 ) - (byte) current_ypos#70 ? phi( play_spawn_current::@2/(byte) current_ypos#80 play_spawn_current::@9/(byte) current_ypos#81 ) - (byte) current_xpos#91 ? phi( play_spawn_current::@2/(byte) current_xpos#103 play_spawn_current::@9/(byte) current_xpos#104 ) - (byte*) current_piece_gfx#74 ? phi( play_spawn_current::@2/(byte*) current_piece_gfx#91 play_spawn_current::@9/(byte*) current_piece_gfx#92 ) - (byte) current_orientation#69 ? phi( play_spawn_current::@2/(byte) current_orientation#79 play_spawn_current::@9/(byte) current_orientation#80 ) - (byte) current_piece_char#61 ? phi( play_spawn_current::@2/(byte) current_piece_char#76 play_spawn_current::@9/(byte) current_piece_char#77 ) - (byte*) current_piece#62 ? phi( play_spawn_current::@2/(byte*) current_piece#73 play_spawn_current::@9/(byte*) current_piece#74 ) - (byte) play_spawn_current::piece_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) game_over#52 ← phi( play_spawn_current::@2/(byte) game_over#5 play_spawn_current::@9/(byte) game_over#65 ) + (byte) current_ypos#70 ← phi( play_spawn_current::@2/(byte) current_ypos#80 play_spawn_current::@9/(byte) current_ypos#81 ) + (byte) current_xpos#91 ← phi( play_spawn_current::@2/(byte) current_xpos#103 play_spawn_current::@9/(byte) current_xpos#104 ) + (byte*) current_piece_gfx#74 ← phi( play_spawn_current::@2/(byte*) current_piece_gfx#91 play_spawn_current::@9/(byte*) current_piece_gfx#92 ) + (byte) current_orientation#69 ← phi( play_spawn_current::@2/(byte) current_orientation#79 play_spawn_current::@9/(byte) current_orientation#80 ) + (byte) current_piece_char#61 ← phi( play_spawn_current::@2/(byte) current_piece_char#76 play_spawn_current::@9/(byte) current_piece_char#77 ) + (byte*) current_piece#62 ← phi( play_spawn_current::@2/(byte*) current_piece#73 play_spawn_current::@9/(byte*) current_piece#74 ) + (byte) play_spawn_current::piece_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 to:play_spawn_current::@3 play_spawn_current::@2: scope:[play_spawn_current] from play_spawn_current::@9 - (byte) current_ypos#80 ? phi( play_spawn_current::@9/(byte) current_ypos#81 ) - (byte) current_xpos#103 ? phi( play_spawn_current::@9/(byte) current_xpos#104 ) - (byte*) current_piece_gfx#91 ? phi( play_spawn_current::@9/(byte*) current_piece_gfx#92 ) - (byte) current_orientation#79 ? phi( play_spawn_current::@9/(byte) current_orientation#80 ) - (byte) current_piece_char#76 ? phi( play_spawn_current::@9/(byte) current_piece_char#77 ) - (byte*) current_piece#73 ? phi( play_spawn_current::@9/(byte*) current_piece#74 ) - (byte) game_over#5 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) current_ypos#80 ← phi( play_spawn_current::@9/(byte) current_ypos#81 ) + (byte) current_xpos#103 ← phi( play_spawn_current::@9/(byte) current_xpos#104 ) + (byte*) current_piece_gfx#91 ← phi( play_spawn_current::@9/(byte*) current_piece_gfx#92 ) + (byte) current_orientation#79 ← phi( play_spawn_current::@9/(byte) current_orientation#80 ) + (byte) current_piece_char#76 ← phi( play_spawn_current::@9/(byte) current_piece_char#77 ) + (byte*) current_piece#73 ← phi( play_spawn_current::@9/(byte*) current_piece#74 ) + (byte) game_over#5 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_spawn_current::@1 play_spawn_current::@3: scope:[play_spawn_current] from play_spawn_current::@1 play_spawn_current::@10 - (byte) game_over#39 ? phi( play_spawn_current::@1/(byte) game_over#52 play_spawn_current::@10/(byte) game_over#53 ) - (byte) current_ypos#57 ? phi( play_spawn_current::@1/(byte) current_ypos#70 play_spawn_current::@10/(byte) current_ypos#71 ) - (byte) current_xpos#72 ? phi( play_spawn_current::@1/(byte) current_xpos#91 play_spawn_current::@10/(byte) current_xpos#92 ) - (byte*) current_piece_gfx#57 ? phi( play_spawn_current::@1/(byte*) current_piece_gfx#74 play_spawn_current::@10/(byte*) current_piece_gfx#75 ) - (byte) current_orientation#56 ? phi( play_spawn_current::@1/(byte) current_orientation#69 play_spawn_current::@10/(byte) current_orientation#70 ) - (byte) current_piece_char#45 ? phi( play_spawn_current::@1/(byte) current_piece_char#61 play_spawn_current::@10/(byte) current_piece_char#62 ) - (byte*) current_piece#48 ? phi( play_spawn_current::@1/(byte*) current_piece#62 play_spawn_current::@10/(byte*) current_piece#63 ) - (byte) play_spawn_current::piece_idx#2 ? phi( play_spawn_current::@1/(byte) play_spawn_current::piece_idx#0 play_spawn_current::@10/(byte) play_spawn_current::piece_idx#1 ) - (bool~) play_spawn_current::$5 ? (byte) play_spawn_current::piece_idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) game_over#39 ← phi( play_spawn_current::@1/(byte) game_over#52 play_spawn_current::@10/(byte) game_over#53 ) + (byte) current_ypos#57 ← phi( play_spawn_current::@1/(byte) current_ypos#70 play_spawn_current::@10/(byte) current_ypos#71 ) + (byte) current_xpos#72 ← phi( play_spawn_current::@1/(byte) current_xpos#91 play_spawn_current::@10/(byte) current_xpos#92 ) + (byte*) current_piece_gfx#57 ← phi( play_spawn_current::@1/(byte*) current_piece_gfx#74 play_spawn_current::@10/(byte*) current_piece_gfx#75 ) + (byte) current_orientation#56 ← phi( play_spawn_current::@1/(byte) current_orientation#69 play_spawn_current::@10/(byte) current_orientation#70 ) + (byte) current_piece_char#45 ← phi( play_spawn_current::@1/(byte) current_piece_char#61 play_spawn_current::@10/(byte) current_piece_char#62 ) + (byte*) current_piece#48 ← phi( play_spawn_current::@1/(byte*) current_piece#62 play_spawn_current::@10/(byte*) current_piece#63 ) + (byte) play_spawn_current::piece_idx#2 ← phi( play_spawn_current::@1/(byte) play_spawn_current::piece_idx#0 play_spawn_current::@10/(byte) play_spawn_current::piece_idx#1 ) + (bool~) play_spawn_current::$5 ← (byte) play_spawn_current::piece_idx#2 == (byte/signed byte/word/signed word/dword/signed dword) 7 if((bool~) play_spawn_current::$5) goto play_spawn_current::@4 to:play_spawn_current::@5 play_spawn_current::@4: scope:[play_spawn_current] from play_spawn_current::@3 - (byte) game_over#66 ? phi( play_spawn_current::@3/(byte) game_over#39 ) - (byte) current_ypos#82 ? phi( play_spawn_current::@3/(byte) current_ypos#57 ) - (byte) current_xpos#105 ? phi( play_spawn_current::@3/(byte) current_xpos#72 ) - (byte*) current_piece_gfx#93 ? phi( play_spawn_current::@3/(byte*) current_piece_gfx#57 ) - (byte) current_orientation#81 ? phi( play_spawn_current::@3/(byte) current_orientation#56 ) - (byte) current_piece_char#78 ? phi( play_spawn_current::@3/(byte) current_piece_char#45 ) - (byte*) current_piece#75 ? phi( play_spawn_current::@3/(byte*) current_piece#48 ) + (byte) game_over#66 ← phi( play_spawn_current::@3/(byte) game_over#39 ) + (byte) current_ypos#82 ← phi( play_spawn_current::@3/(byte) current_ypos#57 ) + (byte) current_xpos#105 ← phi( play_spawn_current::@3/(byte) current_xpos#72 ) + (byte*) current_piece_gfx#93 ← phi( play_spawn_current::@3/(byte*) current_piece_gfx#57 ) + (byte) current_orientation#81 ← phi( play_spawn_current::@3/(byte) current_orientation#56 ) + (byte) current_piece_char#78 ← phi( play_spawn_current::@3/(byte) current_piece_char#45 ) + (byte*) current_piece#75 ← phi( play_spawn_current::@3/(byte*) current_piece#48 ) call sid_rnd - (byte) sid_rnd::return#2 ? (byte) sid_rnd::return#1 + (byte) sid_rnd::return#2 ← (byte) sid_rnd::return#1 to:play_spawn_current::@10 play_spawn_current::@10: scope:[play_spawn_current] from play_spawn_current::@4 - (byte) game_over#53 ? phi( play_spawn_current::@4/(byte) game_over#66 ) - (byte) current_ypos#71 ? phi( play_spawn_current::@4/(byte) current_ypos#82 ) - (byte) current_xpos#92 ? phi( play_spawn_current::@4/(byte) current_xpos#105 ) - (byte*) current_piece_gfx#75 ? phi( play_spawn_current::@4/(byte*) current_piece_gfx#93 ) - (byte) current_orientation#70 ? phi( play_spawn_current::@4/(byte) current_orientation#81 ) - (byte) current_piece_char#62 ? phi( play_spawn_current::@4/(byte) current_piece_char#78 ) - (byte*) current_piece#63 ? phi( play_spawn_current::@4/(byte*) current_piece#75 ) - (byte) sid_rnd::return#4 ? phi( play_spawn_current::@4/(byte) sid_rnd::return#2 ) - (byte~) play_spawn_current::$6 ? (byte) sid_rnd::return#4 - (byte~) play_spawn_current::$7 ? (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) play_spawn_current::piece_idx#1 ? (byte~) play_spawn_current::$7 + (byte) game_over#53 ← phi( play_spawn_current::@4/(byte) game_over#66 ) + (byte) current_ypos#71 ← phi( play_spawn_current::@4/(byte) current_ypos#82 ) + (byte) current_xpos#92 ← phi( play_spawn_current::@4/(byte) current_xpos#105 ) + (byte*) current_piece_gfx#75 ← phi( play_spawn_current::@4/(byte*) current_piece_gfx#93 ) + (byte) current_orientation#70 ← phi( play_spawn_current::@4/(byte) current_orientation#81 ) + (byte) current_piece_char#62 ← phi( play_spawn_current::@4/(byte) current_piece_char#78 ) + (byte*) current_piece#63 ← phi( play_spawn_current::@4/(byte*) current_piece#75 ) + (byte) sid_rnd::return#4 ← phi( play_spawn_current::@4/(byte) sid_rnd::return#2 ) + (byte~) play_spawn_current::$6 ← (byte) sid_rnd::return#4 + (byte~) play_spawn_current::$7 ← (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) play_spawn_current::piece_idx#1 ← (byte~) play_spawn_current::$7 to:play_spawn_current::@3 play_spawn_current::@5: scope:[play_spawn_current] from play_spawn_current::@3 - (byte) game_over#29 ? phi( play_spawn_current::@3/(byte) game_over#39 ) - (byte) current_ypos#45 ? phi( play_spawn_current::@3/(byte) current_ypos#57 ) - (byte) current_xpos#54 ? phi( play_spawn_current::@3/(byte) current_xpos#72 ) - (byte*) current_piece_gfx#41 ? phi( play_spawn_current::@3/(byte*) current_piece_gfx#57 ) - (byte) current_orientation#45 ? phi( play_spawn_current::@3/(byte) current_orientation#56 ) - (byte) current_piece_char#32 ? phi( play_spawn_current::@3/(byte) current_piece_char#45 ) - (byte*) current_piece#35 ? phi( play_spawn_current::@3/(byte*) current_piece#48 ) - (byte) play_spawn_current::piece_idx#3 ? phi( play_spawn_current::@3/(byte) play_spawn_current::piece_idx#2 ) - (byte) next_piece_idx#5 ? (byte) play_spawn_current::piece_idx#3 + (byte) game_over#29 ← phi( play_spawn_current::@3/(byte) game_over#39 ) + (byte) current_ypos#45 ← phi( play_spawn_current::@3/(byte) current_ypos#57 ) + (byte) current_xpos#54 ← phi( play_spawn_current::@3/(byte) current_xpos#72 ) + (byte*) current_piece_gfx#41 ← phi( play_spawn_current::@3/(byte*) current_piece_gfx#57 ) + (byte) current_orientation#45 ← phi( play_spawn_current::@3/(byte) current_orientation#56 ) + (byte) current_piece_char#32 ← phi( play_spawn_current::@3/(byte) current_piece_char#45 ) + (byte*) current_piece#35 ← phi( play_spawn_current::@3/(byte*) current_piece#48 ) + (byte) play_spawn_current::piece_idx#3 ← phi( play_spawn_current::@3/(byte) play_spawn_current::piece_idx#2 ) + (byte) next_piece_idx#5 ← (byte) play_spawn_current::piece_idx#3 to:play_spawn_current::@return play_spawn_current::@return: scope:[play_spawn_current] from play_spawn_current::@5 - (byte) next_piece_idx#18 ? phi( play_spawn_current::@5/(byte) next_piece_idx#5 ) - (byte) game_over#16 ? phi( play_spawn_current::@5/(byte) game_over#29 ) - (byte) current_ypos#24 ? phi( play_spawn_current::@5/(byte) current_ypos#45 ) - (byte) current_xpos#30 ? phi( play_spawn_current::@5/(byte) current_xpos#54 ) - (byte*) current_piece_gfx#23 ? phi( play_spawn_current::@5/(byte*) current_piece_gfx#41 ) - (byte) current_orientation#26 ? phi( play_spawn_current::@5/(byte) current_orientation#45 ) - (byte) current_piece_char#18 ? phi( play_spawn_current::@5/(byte) current_piece_char#32 ) - (byte*) current_piece#18 ? phi( play_spawn_current::@5/(byte*) current_piece#35 ) - (byte*) current_piece#6 ? (byte*) current_piece#18 - (byte) current_piece_char#6 ? (byte) current_piece_char#18 - (byte) current_orientation#9 ? (byte) current_orientation#26 - (byte*) current_piece_gfx#9 ? (byte*) current_piece_gfx#23 - (byte) current_xpos#10 ? (byte) current_xpos#30 - (byte) current_ypos#7 ? (byte) current_ypos#24 - (byte) game_over#6 ? (byte) game_over#16 - (byte) next_piece_idx#6 ? (byte) next_piece_idx#18 + (byte) next_piece_idx#18 ← phi( play_spawn_current::@5/(byte) next_piece_idx#5 ) + (byte) game_over#16 ← phi( play_spawn_current::@5/(byte) game_over#29 ) + (byte) current_ypos#24 ← phi( play_spawn_current::@5/(byte) current_ypos#45 ) + (byte) current_xpos#30 ← phi( play_spawn_current::@5/(byte) current_xpos#54 ) + (byte*) current_piece_gfx#23 ← phi( play_spawn_current::@5/(byte*) current_piece_gfx#41 ) + (byte) current_orientation#26 ← phi( play_spawn_current::@5/(byte) current_orientation#45 ) + (byte) current_piece_char#18 ← phi( play_spawn_current::@5/(byte) current_piece_char#32 ) + (byte*) current_piece#18 ← phi( play_spawn_current::@5/(byte*) current_piece#35 ) + (byte*) current_piece#6 ← (byte*) current_piece#18 + (byte) current_piece_char#6 ← (byte) current_piece_char#18 + (byte) current_orientation#9 ← (byte) current_orientation#26 + (byte*) current_piece_gfx#9 ← (byte*) current_piece_gfx#23 + (byte) current_xpos#10 ← (byte) current_xpos#30 + (byte) current_ypos#7 ← (byte) current_ypos#24 + (byte) game_over#6 ← (byte) game_over#16 + (byte) next_piece_idx#6 ← (byte) next_piece_idx#18 return to:@return play_remove_lines: scope:[play_remove_lines] from play_move_down::@19 - (byte~) play_remove_lines::$0 ? (byte) PLAYFIELD_LINES#0 * (byte) PLAYFIELD_COLS#0 - (byte/signed word/word/dword/signed dword~) play_remove_lines::$1 ? (byte~) play_remove_lines::$0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_remove_lines::r#0 ? (byte/signed word/word/dword/signed dword~) play_remove_lines::$1 - (byte~) play_remove_lines::$2 ? (byte) PLAYFIELD_LINES#0 * (byte) PLAYFIELD_COLS#0 - (byte/signed word/word/dword/signed dword~) play_remove_lines::$3 ? (byte~) play_remove_lines::$2 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_remove_lines::w#0 ? (byte/signed word/word/dword/signed dword~) play_remove_lines::$3 - (byte) play_remove_lines::removed#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte/signed word/word/dword/signed dword~) play_remove_lines::$4 ? (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_remove_lines::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_remove_lines::$0 ← (byte) PLAYFIELD_LINES#0 * (byte) PLAYFIELD_COLS#0 + (byte/signed word/word/dword/signed dword~) play_remove_lines::$1 ← (byte~) play_remove_lines::$0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_remove_lines::r#0 ← (byte/signed word/word/dword/signed dword~) play_remove_lines::$1 + (byte~) play_remove_lines::$2 ← (byte) PLAYFIELD_LINES#0 * (byte) PLAYFIELD_COLS#0 + (byte/signed word/word/dword/signed dword~) play_remove_lines::$3 ← (byte~) play_remove_lines::$2 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_remove_lines::w#0 ← (byte/signed word/word/dword/signed dword~) play_remove_lines::$3 + (byte) play_remove_lines::removed#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte/signed word/word/dword/signed dword~) play_remove_lines::$4 ← (byte) PLAYFIELD_LINES#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_remove_lines::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_remove_lines::@1 play_remove_lines::@1: scope:[play_remove_lines] from play_remove_lines play_remove_lines::@7 - (byte) play_remove_lines::removed#11 ? phi( play_remove_lines/(byte) play_remove_lines::removed#0 play_remove_lines::@7/(byte) play_remove_lines::removed#8 ) - (byte) play_remove_lines::y#8 ? phi( play_remove_lines/(byte) play_remove_lines::y#0 play_remove_lines::@7/(byte) play_remove_lines::y#1 ) - (byte) play_remove_lines::w#12 ? phi( play_remove_lines/(byte) play_remove_lines::w#0 play_remove_lines::@7/(byte) play_remove_lines::w#11 ) - (byte) play_remove_lines::r#3 ? phi( play_remove_lines/(byte) play_remove_lines::r#0 play_remove_lines::@7/(byte) play_remove_lines::r#5 ) - (byte) play_remove_lines::full#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/signed word/word/dword/signed dword~) play_remove_lines::$5 ? (byte) PLAYFIELD_COLS#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) play_remove_lines::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_remove_lines::removed#11 ← phi( play_remove_lines/(byte) play_remove_lines::removed#0 play_remove_lines::@7/(byte) play_remove_lines::removed#8 ) + (byte) play_remove_lines::y#8 ← phi( play_remove_lines/(byte) play_remove_lines::y#0 play_remove_lines::@7/(byte) play_remove_lines::y#1 ) + (byte) play_remove_lines::w#12 ← phi( play_remove_lines/(byte) play_remove_lines::w#0 play_remove_lines::@7/(byte) play_remove_lines::w#11 ) + (byte) play_remove_lines::r#3 ← phi( play_remove_lines/(byte) play_remove_lines::r#0 play_remove_lines::@7/(byte) play_remove_lines::r#5 ) + (byte) play_remove_lines::full#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/signed word/word/dword/signed dword~) play_remove_lines::$5 ← (byte) PLAYFIELD_COLS#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) play_remove_lines::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_remove_lines::@2 play_remove_lines::@2: scope:[play_remove_lines] from play_remove_lines::@1 play_remove_lines::@3 - (byte) play_remove_lines::removed#9 ? phi( play_remove_lines::@1/(byte) play_remove_lines::removed#11 play_remove_lines::@3/(byte) play_remove_lines::removed#6 ) - (byte) play_remove_lines::y#6 ? phi( play_remove_lines::@1/(byte) play_remove_lines::y#8 play_remove_lines::@3/(byte) play_remove_lines::y#5 ) - (byte) play_remove_lines::full#4 ? phi( play_remove_lines::@1/(byte) play_remove_lines::full#0 play_remove_lines::@3/(byte) play_remove_lines::full#3 ) - (byte) play_remove_lines::x#3 ? phi( play_remove_lines::@1/(byte) play_remove_lines::x#0 play_remove_lines::@3/(byte) play_remove_lines::x#1 ) - (byte) play_remove_lines::w#8 ? phi( play_remove_lines::@1/(byte) play_remove_lines::w#12 play_remove_lines::@3/(byte) play_remove_lines::w#1 ) - (byte) play_remove_lines::r#2 ? phi( play_remove_lines::@1/(byte) play_remove_lines::r#3 play_remove_lines::@3/(byte) play_remove_lines::r#4 ) - (byte) play_remove_lines::c#0 ? *((byte[$3]) playfield#0 + (byte) play_remove_lines::r#2) - (byte) play_remove_lines::r#1 ? -- (byte) play_remove_lines::r#2 - (bool~) play_remove_lines::$6 ? (byte) play_remove_lines::c#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_remove_lines::$7 ? ! (bool~) play_remove_lines::$6 + (byte) play_remove_lines::removed#9 ← phi( play_remove_lines::@1/(byte) play_remove_lines::removed#11 play_remove_lines::@3/(byte) play_remove_lines::removed#6 ) + (byte) play_remove_lines::y#6 ← phi( play_remove_lines::@1/(byte) play_remove_lines::y#8 play_remove_lines::@3/(byte) play_remove_lines::y#5 ) + (byte) play_remove_lines::full#4 ← phi( play_remove_lines::@1/(byte) play_remove_lines::full#0 play_remove_lines::@3/(byte) play_remove_lines::full#3 ) + (byte) play_remove_lines::x#3 ← phi( play_remove_lines::@1/(byte) play_remove_lines::x#0 play_remove_lines::@3/(byte) play_remove_lines::x#1 ) + (byte) play_remove_lines::w#8 ← phi( play_remove_lines::@1/(byte) play_remove_lines::w#12 play_remove_lines::@3/(byte) play_remove_lines::w#1 ) + (byte) play_remove_lines::r#2 ← phi( play_remove_lines::@1/(byte) play_remove_lines::r#3 play_remove_lines::@3/(byte) play_remove_lines::r#4 ) + (byte) play_remove_lines::c#0 ← *((byte[$3]) playfield#0 + (byte) play_remove_lines::r#2) + (byte) play_remove_lines::r#1 ← -- (byte) play_remove_lines::r#2 + (bool~) play_remove_lines::$6 ← (byte) play_remove_lines::c#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_remove_lines::$7 ← ! (bool~) play_remove_lines::$6 if((bool~) play_remove_lines::$7) goto play_remove_lines::@3 to:play_remove_lines::@4 play_remove_lines::@3: scope:[play_remove_lines] from play_remove_lines::@2 play_remove_lines::@4 - (byte) play_remove_lines::removed#6 ? phi( play_remove_lines::@2/(byte) play_remove_lines::removed#9 play_remove_lines::@4/(byte) play_remove_lines::removed#10 ) - (byte) play_remove_lines::y#5 ? phi( play_remove_lines::@2/(byte) play_remove_lines::y#6 play_remove_lines::@4/(byte) play_remove_lines::y#7 ) - (byte) play_remove_lines::full#3 ? phi( play_remove_lines::@2/(byte) play_remove_lines::full#4 play_remove_lines::@4/(byte) play_remove_lines::full#1 ) - (byte) play_remove_lines::r#4 ? phi( play_remove_lines::@2/(byte) play_remove_lines::r#1 play_remove_lines::@4/(byte) play_remove_lines::r#6 ) - (byte) play_remove_lines::x#2 ? phi( play_remove_lines::@2/(byte) play_remove_lines::x#3 play_remove_lines::@4/(byte) play_remove_lines::x#4 ) - (byte) play_remove_lines::w#4 ? phi( play_remove_lines::@2/(byte) play_remove_lines::w#8 play_remove_lines::@4/(byte) play_remove_lines::w#9 ) - (byte) play_remove_lines::c#1 ? phi( play_remove_lines::@2/(byte) play_remove_lines::c#0 play_remove_lines::@4/(byte) play_remove_lines::c#2 ) - *((byte[$3]) playfield#0 + (byte) play_remove_lines::w#4) ? (byte) play_remove_lines::c#1 - (byte) play_remove_lines::w#1 ? -- (byte) play_remove_lines::w#4 - (byte) play_remove_lines::x#1 ? (byte) play_remove_lines::x#2 + rangenext(0,play_remove_lines::$5) - (bool~) play_remove_lines::$8 ? (byte) play_remove_lines::x#1 != rangelast(0,play_remove_lines::$5) + (byte) play_remove_lines::removed#6 ← phi( play_remove_lines::@2/(byte) play_remove_lines::removed#9 play_remove_lines::@4/(byte) play_remove_lines::removed#10 ) + (byte) play_remove_lines::y#5 ← phi( play_remove_lines::@2/(byte) play_remove_lines::y#6 play_remove_lines::@4/(byte) play_remove_lines::y#7 ) + (byte) play_remove_lines::full#3 ← phi( play_remove_lines::@2/(byte) play_remove_lines::full#4 play_remove_lines::@4/(byte) play_remove_lines::full#1 ) + (byte) play_remove_lines::r#4 ← phi( play_remove_lines::@2/(byte) play_remove_lines::r#1 play_remove_lines::@4/(byte) play_remove_lines::r#6 ) + (byte) play_remove_lines::x#2 ← phi( play_remove_lines::@2/(byte) play_remove_lines::x#3 play_remove_lines::@4/(byte) play_remove_lines::x#4 ) + (byte) play_remove_lines::w#4 ← phi( play_remove_lines::@2/(byte) play_remove_lines::w#8 play_remove_lines::@4/(byte) play_remove_lines::w#9 ) + (byte) play_remove_lines::c#1 ← phi( play_remove_lines::@2/(byte) play_remove_lines::c#0 play_remove_lines::@4/(byte) play_remove_lines::c#2 ) + *((byte[$3]) playfield#0 + (byte) play_remove_lines::w#4) ← (byte) play_remove_lines::c#1 + (byte) play_remove_lines::w#1 ← -- (byte) play_remove_lines::w#4 + (byte) play_remove_lines::x#1 ← (byte) play_remove_lines::x#2 + rangenext(0,play_remove_lines::$5) + (bool~) play_remove_lines::$8 ← (byte) play_remove_lines::x#1 != rangelast(0,play_remove_lines::$5) if((bool~) play_remove_lines::$8) goto play_remove_lines::@2 to:play_remove_lines::@5 play_remove_lines::@4: scope:[play_remove_lines] from play_remove_lines::@2 - (byte) play_remove_lines::removed#10 ? phi( play_remove_lines::@2/(byte) play_remove_lines::removed#9 ) - (byte) play_remove_lines::y#7 ? phi( play_remove_lines::@2/(byte) play_remove_lines::y#6 ) - (byte) play_remove_lines::r#6 ? phi( play_remove_lines::@2/(byte) play_remove_lines::r#1 ) - (byte) play_remove_lines::x#4 ? phi( play_remove_lines::@2/(byte) play_remove_lines::x#3 ) - (byte) play_remove_lines::w#9 ? phi( play_remove_lines::@2/(byte) play_remove_lines::w#8 ) - (byte) play_remove_lines::c#2 ? phi( play_remove_lines::@2/(byte) play_remove_lines::c#0 ) - (byte) play_remove_lines::full#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_remove_lines::removed#10 ← phi( play_remove_lines::@2/(byte) play_remove_lines::removed#9 ) + (byte) play_remove_lines::y#7 ← phi( play_remove_lines::@2/(byte) play_remove_lines::y#6 ) + (byte) play_remove_lines::r#6 ← phi( play_remove_lines::@2/(byte) play_remove_lines::r#1 ) + (byte) play_remove_lines::x#4 ← phi( play_remove_lines::@2/(byte) play_remove_lines::x#3 ) + (byte) play_remove_lines::w#9 ← phi( play_remove_lines::@2/(byte) play_remove_lines::w#8 ) + (byte) play_remove_lines::c#2 ← phi( play_remove_lines::@2/(byte) play_remove_lines::c#0 ) + (byte) play_remove_lines::full#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_remove_lines::@3 play_remove_lines::@5: scope:[play_remove_lines] from play_remove_lines::@3 - (byte) play_remove_lines::r#7 ? phi( play_remove_lines::@3/(byte) play_remove_lines::r#4 ) - (byte) play_remove_lines::removed#4 ? phi( play_remove_lines::@3/(byte) play_remove_lines::removed#6 ) - (byte) play_remove_lines::w#10 ? phi( play_remove_lines::@3/(byte) play_remove_lines::w#1 ) - (byte) play_remove_lines::y#3 ? phi( play_remove_lines::@3/(byte) play_remove_lines::y#5 ) - (byte) play_remove_lines::full#2 ? phi( play_remove_lines::@3/(byte) play_remove_lines::full#3 ) - (bool~) play_remove_lines::$9 ? (byte) play_remove_lines::full#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) play_remove_lines::$10 ? ! (bool~) play_remove_lines::$9 + (byte) play_remove_lines::r#7 ← phi( play_remove_lines::@3/(byte) play_remove_lines::r#4 ) + (byte) play_remove_lines::removed#4 ← phi( play_remove_lines::@3/(byte) play_remove_lines::removed#6 ) + (byte) play_remove_lines::w#10 ← phi( play_remove_lines::@3/(byte) play_remove_lines::w#1 ) + (byte) play_remove_lines::y#3 ← phi( play_remove_lines::@3/(byte) play_remove_lines::y#5 ) + (byte) play_remove_lines::full#2 ← phi( play_remove_lines::@3/(byte) play_remove_lines::full#3 ) + (bool~) play_remove_lines::$9 ← (byte) play_remove_lines::full#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) play_remove_lines::$10 ← ! (bool~) play_remove_lines::$9 if((bool~) play_remove_lines::$10) goto play_remove_lines::@7 to:play_remove_lines::@6 play_remove_lines::@7: scope:[play_remove_lines] from play_remove_lines::@5 play_remove_lines::@6 - (byte) play_remove_lines::removed#8 ? phi( play_remove_lines::@5/(byte) play_remove_lines::removed#4 play_remove_lines::@6/(byte) play_remove_lines::removed#1 ) - (byte) play_remove_lines::r#5 ? phi( play_remove_lines::@5/(byte) play_remove_lines::r#7 play_remove_lines::@6/(byte) play_remove_lines::r#8 ) - (byte) play_remove_lines::w#11 ? phi( play_remove_lines::@5/(byte) play_remove_lines::w#10 play_remove_lines::@6/(byte) play_remove_lines::w#2 ) - (byte) play_remove_lines::y#2 ? phi( play_remove_lines::@5/(byte) play_remove_lines::y#3 play_remove_lines::@6/(byte) play_remove_lines::y#4 ) - (byte) play_remove_lines::y#1 ? (byte) play_remove_lines::y#2 + rangenext(0,play_remove_lines::$4) - (bool~) play_remove_lines::$12 ? (byte) play_remove_lines::y#1 != rangelast(0,play_remove_lines::$4) + (byte) play_remove_lines::removed#8 ← phi( play_remove_lines::@5/(byte) play_remove_lines::removed#4 play_remove_lines::@6/(byte) play_remove_lines::removed#1 ) + (byte) play_remove_lines::r#5 ← phi( play_remove_lines::@5/(byte) play_remove_lines::r#7 play_remove_lines::@6/(byte) play_remove_lines::r#8 ) + (byte) play_remove_lines::w#11 ← phi( play_remove_lines::@5/(byte) play_remove_lines::w#10 play_remove_lines::@6/(byte) play_remove_lines::w#2 ) + (byte) play_remove_lines::y#2 ← phi( play_remove_lines::@5/(byte) play_remove_lines::y#3 play_remove_lines::@6/(byte) play_remove_lines::y#4 ) + (byte) play_remove_lines::y#1 ← (byte) play_remove_lines::y#2 + rangenext(0,play_remove_lines::$4) + (bool~) play_remove_lines::$12 ← (byte) play_remove_lines::y#1 != rangelast(0,play_remove_lines::$4) if((bool~) play_remove_lines::$12) goto play_remove_lines::@1 to:play_remove_lines::@9 play_remove_lines::@6: scope:[play_remove_lines] from play_remove_lines::@5 - (byte) play_remove_lines::r#8 ? phi( play_remove_lines::@5/(byte) play_remove_lines::r#7 ) - (byte) play_remove_lines::y#4 ? phi( play_remove_lines::@5/(byte) play_remove_lines::y#3 ) - (byte) play_remove_lines::removed#2 ? phi( play_remove_lines::@5/(byte) play_remove_lines::removed#4 ) - (byte) play_remove_lines::w#5 ? phi( play_remove_lines::@5/(byte) play_remove_lines::w#10 ) - (byte~) play_remove_lines::$11 ? (byte) play_remove_lines::w#5 + (byte) PLAYFIELD_COLS#0 - (byte) play_remove_lines::w#2 ? (byte~) play_remove_lines::$11 - (byte) play_remove_lines::removed#1 ? ++ (byte) play_remove_lines::removed#2 + (byte) play_remove_lines::r#8 ← phi( play_remove_lines::@5/(byte) play_remove_lines::r#7 ) + (byte) play_remove_lines::y#4 ← phi( play_remove_lines::@5/(byte) play_remove_lines::y#3 ) + (byte) play_remove_lines::removed#2 ← phi( play_remove_lines::@5/(byte) play_remove_lines::removed#4 ) + (byte) play_remove_lines::w#5 ← phi( play_remove_lines::@5/(byte) play_remove_lines::w#10 ) + (byte~) play_remove_lines::$11 ← (byte) play_remove_lines::w#5 + (byte) PLAYFIELD_COLS#0 + (byte) play_remove_lines::w#2 ← (byte~) play_remove_lines::$11 + (byte) play_remove_lines::removed#1 ← ++ (byte) play_remove_lines::removed#2 to:play_remove_lines::@7 play_remove_lines::@9: scope:[play_remove_lines] from play_remove_lines::@10 play_remove_lines::@7 - (byte) play_remove_lines::removed#5 ? phi( play_remove_lines::@10/(byte) play_remove_lines::removed#7 play_remove_lines::@7/(byte) play_remove_lines::removed#8 ) - (byte) play_remove_lines::w#6 ? phi( play_remove_lines::@10/(byte) play_remove_lines::w#3 play_remove_lines::@7/(byte) play_remove_lines::w#11 ) - (bool~) play_remove_lines::$13 ? (byte) play_remove_lines::w#6 != (byte/word/signed word/dword/signed dword) $ff + (byte) play_remove_lines::removed#5 ← phi( play_remove_lines::@10/(byte) play_remove_lines::removed#7 play_remove_lines::@7/(byte) play_remove_lines::removed#8 ) + (byte) play_remove_lines::w#6 ← phi( play_remove_lines::@10/(byte) play_remove_lines::w#3 play_remove_lines::@7/(byte) play_remove_lines::w#11 ) + (bool~) play_remove_lines::$13 ← (byte) play_remove_lines::w#6 != (byte/word/signed word/dword/signed dword) $ff if((bool~) play_remove_lines::$13) goto play_remove_lines::@10 to:play_remove_lines::@11 play_remove_lines::@10: scope:[play_remove_lines] from play_remove_lines::@9 - (byte) play_remove_lines::removed#7 ? phi( play_remove_lines::@9/(byte) play_remove_lines::removed#5 ) - (byte) play_remove_lines::w#7 ? phi( play_remove_lines::@9/(byte) play_remove_lines::w#6 ) - *((byte[$3]) playfield#0 + (byte) play_remove_lines::w#7) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) play_remove_lines::w#3 ? -- (byte) play_remove_lines::w#7 + (byte) play_remove_lines::removed#7 ← phi( play_remove_lines::@9/(byte) play_remove_lines::removed#5 ) + (byte) play_remove_lines::w#7 ← phi( play_remove_lines::@9/(byte) play_remove_lines::w#6 ) + *((byte[$3]) playfield#0 + (byte) play_remove_lines::w#7) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_remove_lines::w#3 ← -- (byte) play_remove_lines::w#7 to:play_remove_lines::@9 play_remove_lines::@11: scope:[play_remove_lines] from play_remove_lines::@9 - (byte) play_remove_lines::removed#3 ? phi( play_remove_lines::@9/(byte) play_remove_lines::removed#5 ) - (byte) play_remove_lines::return#1 ? (byte) play_remove_lines::removed#3 + (byte) play_remove_lines::removed#3 ← phi( play_remove_lines::@9/(byte) play_remove_lines::removed#5 ) + (byte) play_remove_lines::return#1 ← (byte) play_remove_lines::removed#3 to:play_remove_lines::@return play_remove_lines::@return: scope:[play_remove_lines] from play_remove_lines::@11 - (byte) play_remove_lines::return#4 ? phi( play_remove_lines::@11/(byte) play_remove_lines::return#1 ) - (byte) play_remove_lines::return#2 ? (byte) play_remove_lines::return#4 + (byte) play_remove_lines::return#4 ← phi( play_remove_lines::@11/(byte) play_remove_lines::return#1 ) + (byte) play_remove_lines::return#2 ← (byte) play_remove_lines::return#4 return to:@return play_update_score: scope:[play_update_score] from play_move_down::@20 - (byte) level_bcd#48 ? phi( play_move_down::@20/(byte) level_bcd#30 ) - (byte) current_movedown_slow#54 ? phi( play_move_down::@20/(byte) current_movedown_slow#36 ) - (byte) level#50 ? phi( play_move_down::@20/(byte) level#32 ) - (dword) score_bcd#28 ? phi( play_move_down::@20/(dword) score_bcd#25 ) - (word) lines_bcd#28 ? phi( play_move_down::@20/(word) lines_bcd#25 ) - (byte) play_update_score::removed#1 ? phi( play_move_down::@20/(byte) play_update_score::removed#0 ) - (bool~) play_update_score::$0 ? (byte) play_update_score::removed#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) play_update_score::$1 ? ! (bool~) play_update_score::$0 + (byte) level_bcd#48 ← phi( play_move_down::@20/(byte) level_bcd#30 ) + (byte) current_movedown_slow#54 ← phi( play_move_down::@20/(byte) current_movedown_slow#36 ) + (byte) level#50 ← phi( play_move_down::@20/(byte) level#32 ) + (dword) score_bcd#28 ← phi( play_move_down::@20/(dword) score_bcd#25 ) + (word) lines_bcd#28 ← phi( play_move_down::@20/(word) lines_bcd#25 ) + (byte) play_update_score::removed#1 ← phi( play_move_down::@20/(byte) play_update_score::removed#0 ) + (bool~) play_update_score::$0 ← (byte) play_update_score::removed#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) play_update_score::$1 ← ! (bool~) play_update_score::$0 if((bool~) play_update_score::$1) goto play_update_score::@1 to:play_update_score::@2 play_update_score::@1: scope:[play_update_score] from play_update_score - (byte) level_bcd#34 ? phi( play_update_score/(byte) level_bcd#48 ) - (byte) current_movedown_slow#40 ? phi( play_update_score/(byte) current_movedown_slow#54 ) - (byte) level#36 ? phi( play_update_score/(byte) level#50 ) - (dword) score_bcd#29 ? phi( play_update_score/(dword) score_bcd#28 ) - (word) lines_bcd#29 ? phi( play_update_score/(word) lines_bcd#28 ) + (byte) level_bcd#34 ← phi( play_update_score/(byte) level_bcd#48 ) + (byte) current_movedown_slow#40 ← phi( play_update_score/(byte) current_movedown_slow#54 ) + (byte) level#36 ← phi( play_update_score/(byte) level#50 ) + (dword) score_bcd#29 ← phi( play_update_score/(dword) score_bcd#28 ) + (word) lines_bcd#29 ← phi( play_update_score/(word) lines_bcd#28 ) to:play_update_score::@return play_update_score::@2: scope:[play_update_score] from play_update_score - (byte) level_bcd#49 ? phi( play_update_score/(byte) level_bcd#48 ) - (byte) current_movedown_slow#55 ? phi( play_update_score/(byte) current_movedown_slow#54 ) - (byte) level#51 ? phi( play_update_score/(byte) level#50 ) - (dword) score_bcd#15 ? phi( play_update_score/(dword) score_bcd#28 ) - (byte) play_update_score::removed#2 ? phi( play_update_score/(byte) play_update_score::removed#1 ) - (word) lines_bcd#16 ? phi( play_update_score/(word) lines_bcd#28 ) - (byte~) play_update_score::$2 ? < (word) lines_bcd#16 - (byte~) play_update_score::$3 ? (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 - (byte) play_update_score::lines_before#0 ? (byte~) play_update_score::$3 - (byte~) play_update_score::$4 ? (byte) play_update_score::removed#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (dword) play_update_score::add_bcd#0 ? *((dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) + (byte) level_bcd#49 ← phi( play_update_score/(byte) level_bcd#48 ) + (byte) current_movedown_slow#55 ← phi( play_update_score/(byte) current_movedown_slow#54 ) + (byte) level#51 ← phi( play_update_score/(byte) level#50 ) + (dword) score_bcd#15 ← phi( play_update_score/(dword) score_bcd#28 ) + (byte) play_update_score::removed#2 ← phi( play_update_score/(byte) play_update_score::removed#1 ) + (word) lines_bcd#16 ← phi( play_update_score/(word) lines_bcd#28 ) + (byte~) play_update_score::$2 ← < (word) lines_bcd#16 + (byte~) play_update_score::$3 ← (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 + (byte) play_update_score::lines_before#0 ← (byte~) play_update_score::$3 + (byte~) play_update_score::$4 ← (byte) play_update_score::removed#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (dword) play_update_score::add_bcd#0 ← *((dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) asm { sed } - (word) lines_bcd#5 ? (word) lines_bcd#16 + (byte) play_update_score::removed#2 - (dword) score_bcd#5 ? (dword) score_bcd#15 + (dword) play_update_score::add_bcd#0 + (word) lines_bcd#5 ← (word) lines_bcd#16 + (byte) play_update_score::removed#2 + (dword) score_bcd#5 ← (dword) score_bcd#15 + (dword) play_update_score::add_bcd#0 asm { cld } - (byte~) play_update_score::$5 ? < (word) lines_bcd#5 - (byte~) play_update_score::$6 ? (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 - (byte) play_update_score::lines_after#0 ? (byte~) play_update_score::$6 - (bool~) play_update_score::$7 ? (byte) play_update_score::lines_before#0 != (byte) play_update_score::lines_after#0 - (bool~) play_update_score::$8 ? ! (bool~) play_update_score::$7 + (byte~) play_update_score::$5 ← < (word) lines_bcd#5 + (byte~) play_update_score::$6 ← (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 + (byte) play_update_score::lines_after#0 ← (byte~) play_update_score::$6 + (bool~) play_update_score::$7 ← (byte) play_update_score::lines_before#0 != (byte) play_update_score::lines_after#0 + (bool~) play_update_score::$8 ← ! (bool~) play_update_score::$7 if((bool~) play_update_score::$8) goto play_update_score::@4 to:play_update_score::@3 play_update_score::@4: scope:[play_update_score] from play_update_score::@2 - (byte) level_bcd#35 ? phi( play_update_score::@2/(byte) level_bcd#49 ) - (byte) current_movedown_slow#41 ? phi( play_update_score::@2/(byte) current_movedown_slow#55 ) - (byte) level#37 ? phi( play_update_score::@2/(byte) level#51 ) - (dword) score_bcd#30 ? phi( play_update_score::@2/(dword) score_bcd#5 ) - (word) lines_bcd#30 ? phi( play_update_score::@2/(word) lines_bcd#5 ) + (byte) level_bcd#35 ← phi( play_update_score::@2/(byte) level_bcd#49 ) + (byte) current_movedown_slow#41 ← phi( play_update_score::@2/(byte) current_movedown_slow#55 ) + (byte) level#37 ← phi( play_update_score::@2/(byte) level#51 ) + (dword) score_bcd#30 ← phi( play_update_score::@2/(dword) score_bcd#5 ) + (word) lines_bcd#30 ← phi( play_update_score::@2/(word) lines_bcd#5 ) to:play_update_score::@return play_update_score::@3: scope:[play_update_score] from play_update_score::@2 - (dword) score_bcd#41 ? phi( play_update_score::@2/(dword) score_bcd#5 ) - (word) lines_bcd#41 ? phi( play_update_score::@2/(word) lines_bcd#5 ) - (byte) level_bcd#33 ? phi( play_update_score::@2/(byte) level_bcd#49 ) - (byte) current_movedown_slow#39 ? phi( play_update_score::@2/(byte) current_movedown_slow#55 ) - (byte) level#35 ? phi( play_update_score::@2/(byte) level#51 ) + (dword) score_bcd#41 ← phi( play_update_score::@2/(dword) score_bcd#5 ) + (word) lines_bcd#41 ← phi( play_update_score::@2/(word) lines_bcd#5 ) + (byte) level_bcd#33 ← phi( play_update_score::@2/(byte) level_bcd#49 ) + (byte) current_movedown_slow#39 ← phi( play_update_score::@2/(byte) current_movedown_slow#55 ) + (byte) level#35 ← phi( play_update_score::@2/(byte) level#51 ) call play_increase_level to:play_update_score::@5 play_update_score::@5: scope:[play_update_score] from play_update_score::@3 - (dword) score_bcd#31 ? phi( play_update_score::@3/(dword) score_bcd#41 ) - (word) lines_bcd#31 ? phi( play_update_score::@3/(word) lines_bcd#41 ) - (byte) level_bcd#18 ? phi( play_update_score::@3/(byte) level_bcd#9 ) - (byte) current_movedown_slow#22 ? phi( play_update_score::@3/(byte) current_movedown_slow#11 ) - (byte) level#18 ? phi( play_update_score::@3/(byte) level#8 ) - (byte) level#5 ? (byte) level#18 - (byte) current_movedown_slow#7 ? (byte) current_movedown_slow#22 - (byte) level_bcd#5 ? (byte) level_bcd#18 + (dword) score_bcd#31 ← phi( play_update_score::@3/(dword) score_bcd#41 ) + (word) lines_bcd#31 ← phi( play_update_score::@3/(word) lines_bcd#41 ) + (byte) level_bcd#18 ← phi( play_update_score::@3/(byte) level_bcd#9 ) + (byte) current_movedown_slow#22 ← phi( play_update_score::@3/(byte) current_movedown_slow#11 ) + (byte) level#18 ← phi( play_update_score::@3/(byte) level#8 ) + (byte) level#5 ← (byte) level#18 + (byte) current_movedown_slow#7 ← (byte) current_movedown_slow#22 + (byte) level_bcd#5 ← (byte) level_bcd#18 to:play_update_score::@return play_update_score::@return: scope:[play_update_score] from play_update_score::@1 play_update_score::@4 play_update_score::@5 - (byte) level_bcd#19 ? phi( play_update_score::@1/(byte) level_bcd#34 play_update_score::@4/(byte) level_bcd#35 play_update_score::@5/(byte) level_bcd#5 ) - (byte) current_movedown_slow#23 ? phi( play_update_score::@1/(byte) current_movedown_slow#40 play_update_score::@4/(byte) current_movedown_slow#41 play_update_score::@5/(byte) current_movedown_slow#7 ) - (byte) level#19 ? phi( play_update_score::@1/(byte) level#36 play_update_score::@4/(byte) level#37 play_update_score::@5/(byte) level#5 ) - (dword) score_bcd#16 ? phi( play_update_score::@1/(dword) score_bcd#29 play_update_score::@4/(dword) score_bcd#30 play_update_score::@5/(dword) score_bcd#31 ) - (word) lines_bcd#17 ? phi( play_update_score::@1/(word) lines_bcd#29 play_update_score::@4/(word) lines_bcd#30 play_update_score::@5/(word) lines_bcd#31 ) - (word) lines_bcd#6 ? (word) lines_bcd#17 - (dword) score_bcd#6 ? (dword) score_bcd#16 - (byte) level#6 ? (byte) level#19 - (byte) current_movedown_slow#8 ? (byte) current_movedown_slow#23 - (byte) level_bcd#6 ? (byte) level_bcd#19 + (byte) level_bcd#19 ← phi( play_update_score::@1/(byte) level_bcd#34 play_update_score::@4/(byte) level_bcd#35 play_update_score::@5/(byte) level_bcd#5 ) + (byte) current_movedown_slow#23 ← phi( play_update_score::@1/(byte) current_movedown_slow#40 play_update_score::@4/(byte) current_movedown_slow#41 play_update_score::@5/(byte) current_movedown_slow#7 ) + (byte) level#19 ← phi( play_update_score::@1/(byte) level#36 play_update_score::@4/(byte) level#37 play_update_score::@5/(byte) level#5 ) + (dword) score_bcd#16 ← phi( play_update_score::@1/(dword) score_bcd#29 play_update_score::@4/(dword) score_bcd#30 play_update_score::@5/(dword) score_bcd#31 ) + (word) lines_bcd#17 ← phi( play_update_score::@1/(word) lines_bcd#29 play_update_score::@4/(word) lines_bcd#30 play_update_score::@5/(word) lines_bcd#31 ) + (word) lines_bcd#6 ← (word) lines_bcd#17 + (dword) score_bcd#6 ← (dword) score_bcd#16 + (byte) level#6 ← (byte) level#19 + (byte) current_movedown_slow#8 ← (byte) current_movedown_slow#23 + (byte) level_bcd#6 ← (byte) level_bcd#19 return to:@return play_increase_level: scope:[play_increase_level] from play_update_score::@3 - (byte) level_bcd#50 ? phi( play_update_score::@3/(byte) level_bcd#33 ) - (byte) level#20 ? phi( play_update_score::@3/(byte) level#35 ) - (byte) level#7 ? ++ (byte) level#20 - (bool~) play_increase_level::$0 ? (byte) level#7 > (byte/signed byte/word/signed word/dword/signed dword) $1d + (byte) level_bcd#50 ← phi( play_update_score::@3/(byte) level_bcd#33 ) + (byte) level#20 ← phi( play_update_score::@3/(byte) level#35 ) + (byte) level#7 ← ++ (byte) level#20 + (bool~) play_increase_level::$0 ← (byte) level#7 > (byte/signed byte/word/signed word/dword/signed dword) $1d if((bool~) play_increase_level::$0) goto play_increase_level::@1 to:play_increase_level::@4 play_increase_level::@1: scope:[play_increase_level] from play_increase_level - (byte) level#90 ? phi( play_increase_level/(byte) level#7 ) - (byte) level_bcd#36 ? phi( play_increase_level/(byte) level_bcd#50 ) - (byte) current_movedown_slow#9 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) level#90 ← phi( play_increase_level/(byte) level#7 ) + (byte) level_bcd#36 ← phi( play_increase_level/(byte) level_bcd#50 ) + (byte) current_movedown_slow#9 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_increase_level::@2 play_increase_level::@4: scope:[play_increase_level] from play_increase_level - (byte) level_bcd#37 ? phi( play_increase_level/(byte) level_bcd#50 ) - (byte) level#21 ? phi( play_increase_level/(byte) level#7 ) - (byte) current_movedown_slow#10 ? *((byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) + (byte) level_bcd#37 ← phi( play_increase_level/(byte) level_bcd#50 ) + (byte) level#21 ← phi( play_increase_level/(byte) level#7 ) + (byte) current_movedown_slow#10 ← *((byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) to:play_increase_level::@2 play_increase_level::@2: scope:[play_increase_level] from play_increase_level::@1 play_increase_level::@4 - (byte) current_movedown_slow#76 ? phi( play_increase_level::@1/(byte) current_movedown_slow#9 play_increase_level::@4/(byte) current_movedown_slow#10 ) - (byte) level#79 ? phi( play_increase_level::@1/(byte) level#90 play_increase_level::@4/(byte) level#21 ) - (byte) level_bcd#20 ? phi( play_increase_level::@1/(byte) level_bcd#36 play_increase_level::@4/(byte) level_bcd#37 ) - (byte) level_bcd#7 ? ++ (byte) level_bcd#20 - (byte~) play_increase_level::$1 ? (byte) level_bcd#7 & (byte/signed byte/word/signed word/dword/signed dword) $f - (bool~) play_increase_level::$2 ? (byte~) play_increase_level::$1 == (byte/signed byte/word/signed word/dword/signed dword) $a - (bool~) play_increase_level::$3 ? ! (bool~) play_increase_level::$2 + (byte) current_movedown_slow#76 ← phi( play_increase_level::@1/(byte) current_movedown_slow#9 play_increase_level::@4/(byte) current_movedown_slow#10 ) + (byte) level#79 ← phi( play_increase_level::@1/(byte) level#90 play_increase_level::@4/(byte) level#21 ) + (byte) level_bcd#20 ← phi( play_increase_level::@1/(byte) level_bcd#36 play_increase_level::@4/(byte) level_bcd#37 ) + (byte) level_bcd#7 ← ++ (byte) level_bcd#20 + (byte~) play_increase_level::$1 ← (byte) level_bcd#7 & (byte/signed byte/word/signed word/dword/signed dword) $f + (bool~) play_increase_level::$2 ← (byte~) play_increase_level::$1 == (byte/signed byte/word/signed word/dword/signed dword) $a + (bool~) play_increase_level::$3 ← ! (bool~) play_increase_level::$2 if((bool~) play_increase_level::$3) goto play_increase_level::@3 to:play_increase_level::@6 play_increase_level::@3: scope:[play_increase_level] from play_increase_level::@2 play_increase_level::@6 - (byte) level_bcd#64 ? phi( play_increase_level::@2/(byte) level_bcd#7 play_increase_level::@6/(byte) level_bcd#8 ) - (byte) current_movedown_slow#69 ? phi( play_increase_level::@2/(byte) current_movedown_slow#76 play_increase_level::@6/(byte) current_movedown_slow#77 ) - (byte) level#67 ? phi( play_increase_level::@2/(byte) level#79 play_increase_level::@6/(byte) level#80 ) + (byte) level_bcd#64 ← phi( play_increase_level::@2/(byte) level_bcd#7 play_increase_level::@6/(byte) level_bcd#8 ) + (byte) current_movedown_slow#69 ← phi( play_increase_level::@2/(byte) current_movedown_slow#76 play_increase_level::@6/(byte) current_movedown_slow#77 ) + (byte) level#67 ← phi( play_increase_level::@2/(byte) level#79 play_increase_level::@6/(byte) level#80 ) asm { sed } - (byte) play_increase_level::b#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) play_increase_level::b#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:play_increase_level::@7 play_increase_level::@6: scope:[play_increase_level] from play_increase_level::@2 - (byte) current_movedown_slow#77 ? phi( play_increase_level::@2/(byte) current_movedown_slow#76 ) - (byte) level#80 ? phi( play_increase_level::@2/(byte) level#79 ) - (byte) level_bcd#21 ? phi( play_increase_level::@2/(byte) level_bcd#7 ) - (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) current_movedown_slow#77 ← phi( play_increase_level::@2/(byte) current_movedown_slow#76 ) + (byte) level#80 ← phi( play_increase_level::@2/(byte) level#79 ) + (byte) level_bcd#21 ← phi( play_increase_level::@2/(byte) level_bcd#7 ) + (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 to:play_increase_level::@3 play_increase_level::@7: scope:[play_increase_level] from play_increase_level::@3 play_increase_level::@7 - (byte) level_bcd#51 ? phi( play_increase_level::@3/(byte) level_bcd#64 play_increase_level::@7/(byte) level_bcd#51 ) - (byte) current_movedown_slow#56 ? phi( play_increase_level::@3/(byte) current_movedown_slow#69 play_increase_level::@7/(byte) current_movedown_slow#56 ) - (byte) level#52 ? phi( play_increase_level::@3/(byte) level#67 play_increase_level::@7/(byte) level#52 ) - (byte) play_increase_level::b#2 ? phi( play_increase_level::@3/(byte) play_increase_level::b#0 play_increase_level::@7/(byte) play_increase_level::b#1 ) - (byte~) play_increase_level::$4 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) play_increase_level::b4#0 ? (byte~) play_increase_level::$4 - *((dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) - (byte) play_increase_level::b#1 ? (byte) play_increase_level::b#2 + rangenext(0,4) - (bool~) play_increase_level::$5 ? (byte) play_increase_level::b#1 != rangelast(0,4) + (byte) level_bcd#51 ← phi( play_increase_level::@3/(byte) level_bcd#64 play_increase_level::@7/(byte) level_bcd#51 ) + (byte) current_movedown_slow#56 ← phi( play_increase_level::@3/(byte) current_movedown_slow#69 play_increase_level::@7/(byte) current_movedown_slow#56 ) + (byte) level#52 ← phi( play_increase_level::@3/(byte) level#67 play_increase_level::@7/(byte) level#52 ) + (byte) play_increase_level::b#2 ← phi( play_increase_level::@3/(byte) play_increase_level::b#0 play_increase_level::@7/(byte) play_increase_level::b#1 ) + (byte~) play_increase_level::$4 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) play_increase_level::b4#0 ← (byte~) play_increase_level::$4 + *((dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) + (byte) play_increase_level::b#1 ← (byte) play_increase_level::b#2 + rangenext(0,4) + (bool~) play_increase_level::$5 ← (byte) play_increase_level::b#1 != rangelast(0,4) if((bool~) play_increase_level::$5) goto play_increase_level::@7 to:play_increase_level::@8 play_increase_level::@8: scope:[play_increase_level] from play_increase_level::@7 - (byte) level_bcd#38 ? phi( play_increase_level::@7/(byte) level_bcd#51 ) - (byte) current_movedown_slow#42 ? phi( play_increase_level::@7/(byte) current_movedown_slow#56 ) - (byte) level#38 ? phi( play_increase_level::@7/(byte) level#52 ) + (byte) level_bcd#38 ← phi( play_increase_level::@7/(byte) level_bcd#51 ) + (byte) current_movedown_slow#42 ← phi( play_increase_level::@7/(byte) current_movedown_slow#56 ) + (byte) level#38 ← phi( play_increase_level::@7/(byte) level#52 ) asm { cld } to:play_increase_level::@return play_increase_level::@return: scope:[play_increase_level] from play_increase_level::@8 - (byte) level_bcd#22 ? phi( play_increase_level::@8/(byte) level_bcd#38 ) - (byte) current_movedown_slow#24 ? phi( play_increase_level::@8/(byte) current_movedown_slow#42 ) - (byte) level#22 ? phi( play_increase_level::@8/(byte) level#38 ) - (byte) level#8 ? (byte) level#22 - (byte) current_movedown_slow#11 ? (byte) current_movedown_slow#24 - (byte) level_bcd#9 ? (byte) level_bcd#22 + (byte) level_bcd#22 ← phi( play_increase_level::@8/(byte) level_bcd#38 ) + (byte) current_movedown_slow#24 ← phi( play_increase_level::@8/(byte) current_movedown_slow#42 ) + (byte) level#22 ← phi( play_increase_level::@8/(byte) level#38 ) + (byte) level#8 ← (byte) level#22 + (byte) current_movedown_slow#11 ← (byte) current_movedown_slow#24 + (byte) level_bcd#9 ← (byte) level_bcd#22 return to:@return main: scope:[main] from @38 - (byte) level_bcd#106 ? phi( @38/(byte) level_bcd#41 ) - (dword) score_bcd#89 ? phi( @38/(dword) score_bcd#34 ) - (word) lines_bcd#93 ? phi( @38/(word) lines_bcd#34 ) - (byte) current_movedown_counter#62 ? phi( @38/(byte) current_movedown_counter#27 ) - (byte) keyboard_modifiers#65 ? phi( @38/(byte) keyboard_modifiers#25 ) - (byte) keyboard_events_size#84 ? phi( @38/(byte) keyboard_events_size#28 ) - (byte) render_screen_showing#50 ? phi( @38/(byte) render_screen_showing#14 ) - (byte) level#104 ? phi( @38/(byte) level#41 ) - (byte) game_over#84 ? phi( @38/(byte) game_over#34 ) - (byte) current_ypos#95 ? phi( @38/(byte) current_ypos#49 ) - (byte) current_xpos#119 ? phi( @38/(byte) current_xpos#58 ) - (byte*) current_piece_gfx#109 ? phi( @38/(byte*) current_piece_gfx#45 ) - (byte) current_orientation#93 ? phi( @38/(byte) current_orientation#49 ) - (byte) current_piece_char#96 ? phi( @38/(byte) current_piece_char#36 ) - (byte*) current_piece#89 ? phi( @38/(byte*) current_piece#39 ) - (byte) next_piece_idx#77 ? phi( @38/(byte) next_piece_idx#35 ) - (byte) current_movedown_slow#83 ? phi( @38/(byte) current_movedown_slow#46 ) - (byte) render_screen_render#35 ? phi( @38/(byte) render_screen_render#29 ) - (byte) render_screen_show#27 ? phi( @38/(byte) render_screen_show#24 ) + (byte) level_bcd#106 ← phi( @38/(byte) level_bcd#41 ) + (dword) score_bcd#89 ← phi( @38/(dword) score_bcd#34 ) + (word) lines_bcd#93 ← phi( @38/(word) lines_bcd#34 ) + (byte) current_movedown_counter#62 ← phi( @38/(byte) current_movedown_counter#27 ) + (byte) keyboard_modifiers#65 ← phi( @38/(byte) keyboard_modifiers#25 ) + (byte) keyboard_events_size#84 ← phi( @38/(byte) keyboard_events_size#28 ) + (byte) render_screen_showing#50 ← phi( @38/(byte) render_screen_showing#14 ) + (byte) level#104 ← phi( @38/(byte) level#41 ) + (byte) game_over#84 ← phi( @38/(byte) game_over#34 ) + (byte) current_ypos#95 ← phi( @38/(byte) current_ypos#49 ) + (byte) current_xpos#119 ← phi( @38/(byte) current_xpos#58 ) + (byte*) current_piece_gfx#109 ← phi( @38/(byte*) current_piece_gfx#45 ) + (byte) current_orientation#93 ← phi( @38/(byte) current_orientation#49 ) + (byte) current_piece_char#96 ← phi( @38/(byte) current_piece_char#36 ) + (byte*) current_piece#89 ← phi( @38/(byte*) current_piece#39 ) + (byte) next_piece_idx#77 ← phi( @38/(byte) next_piece_idx#35 ) + (byte) current_movedown_slow#83 ← phi( @38/(byte) current_movedown_slow#46 ) + (byte) render_screen_render#35 ← phi( @38/(byte) render_screen_render#29 ) + (byte) render_screen_show#27 ← phi( @38/(byte) render_screen_show#24 ) call sid_rnd_init to:main::@25 main::@25: scope:[main] from main - (byte) level_bcd#105 ? phi( main/(byte) level_bcd#106 ) - (dword) score_bcd#88 ? phi( main/(dword) score_bcd#89 ) - (word) lines_bcd#92 ? phi( main/(word) lines_bcd#93 ) - (byte) current_movedown_counter#61 ? phi( main/(byte) current_movedown_counter#62 ) - (byte) keyboard_modifiers#64 ? phi( main/(byte) keyboard_modifiers#65 ) - (byte) keyboard_events_size#83 ? phi( main/(byte) keyboard_events_size#84 ) - (byte) render_screen_showing#49 ? phi( main/(byte) render_screen_showing#50 ) - (byte) level#99 ? phi( main/(byte) level#104 ) - (byte) game_over#76 ? phi( main/(byte) game_over#84 ) - (byte) current_ypos#90 ? phi( main/(byte) current_ypos#95 ) - (byte) current_xpos#114 ? phi( main/(byte) current_xpos#119 ) - (byte*) current_piece_gfx#101 ? phi( main/(byte*) current_piece_gfx#109 ) - (byte) current_orientation#89 ? phi( main/(byte) current_orientation#93 ) - (byte) current_piece_char#89 ? phi( main/(byte) current_piece_char#96 ) - (byte*) current_piece#83 ? phi( main/(byte*) current_piece#89 ) - (byte) next_piece_idx#71 ? phi( main/(byte) next_piece_idx#77 ) - (byte) current_movedown_slow#78 ? phi( main/(byte) current_movedown_slow#83 ) - (byte) render_screen_render#27 ? phi( main/(byte) render_screen_render#35 ) - (byte) render_screen_show#22 ? phi( main/(byte) render_screen_show#27 ) + (byte) level_bcd#105 ← phi( main/(byte) level_bcd#106 ) + (dword) score_bcd#88 ← phi( main/(dword) score_bcd#89 ) + (word) lines_bcd#92 ← phi( main/(word) lines_bcd#93 ) + (byte) current_movedown_counter#61 ← phi( main/(byte) current_movedown_counter#62 ) + (byte) keyboard_modifiers#64 ← phi( main/(byte) keyboard_modifiers#65 ) + (byte) keyboard_events_size#83 ← phi( main/(byte) keyboard_events_size#84 ) + (byte) render_screen_showing#49 ← phi( main/(byte) render_screen_showing#50 ) + (byte) level#99 ← phi( main/(byte) level#104 ) + (byte) game_over#76 ← phi( main/(byte) game_over#84 ) + (byte) current_ypos#90 ← phi( main/(byte) current_ypos#95 ) + (byte) current_xpos#114 ← phi( main/(byte) current_xpos#119 ) + (byte*) current_piece_gfx#101 ← phi( main/(byte*) current_piece_gfx#109 ) + (byte) current_orientation#89 ← phi( main/(byte) current_orientation#93 ) + (byte) current_piece_char#89 ← phi( main/(byte) current_piece_char#96 ) + (byte*) current_piece#83 ← phi( main/(byte*) current_piece#89 ) + (byte) next_piece_idx#71 ← phi( main/(byte) next_piece_idx#77 ) + (byte) current_movedown_slow#78 ← phi( main/(byte) current_movedown_slow#83 ) + (byte) render_screen_render#27 ← phi( main/(byte) render_screen_render#35 ) + (byte) render_screen_show#22 ← phi( main/(byte) render_screen_show#27 ) asm { sei } call render_init to:main::@26 main::@26: scope:[main] from main::@25 - (byte) level_bcd#104 ? phi( main::@25/(byte) level_bcd#105 ) - (dword) score_bcd#87 ? phi( main::@25/(dword) score_bcd#88 ) - (word) lines_bcd#91 ? phi( main::@25/(word) lines_bcd#92 ) - (byte) current_movedown_counter#60 ? phi( main::@25/(byte) current_movedown_counter#61 ) - (byte) keyboard_modifiers#63 ? phi( main::@25/(byte) keyboard_modifiers#64 ) - (byte) keyboard_events_size#82 ? phi( main::@25/(byte) keyboard_events_size#83 ) - (byte) render_screen_showing#48 ? phi( main::@25/(byte) render_screen_showing#49 ) - (byte) level#91 ? phi( main::@25/(byte) level#99 ) - (byte) game_over#67 ? phi( main::@25/(byte) game_over#76 ) - (byte) current_ypos#83 ? phi( main::@25/(byte) current_ypos#90 ) - (byte) current_xpos#106 ? phi( main::@25/(byte) current_xpos#114 ) - (byte*) current_piece_gfx#94 ? phi( main::@25/(byte*) current_piece_gfx#101 ) - (byte) current_orientation#82 ? phi( main::@25/(byte) current_orientation#89 ) - (byte) current_piece_char#79 ? phi( main::@25/(byte) current_piece_char#89 ) - (byte*) current_piece#76 ? phi( main::@25/(byte*) current_piece#83 ) - (byte) next_piece_idx#63 ? phi( main::@25/(byte) next_piece_idx#71 ) - (byte) current_movedown_slow#70 ? phi( main::@25/(byte) current_movedown_slow#78 ) - (byte) render_screen_render#16 ? phi( main::@25/(byte) render_screen_render#2 ) - (byte) render_screen_show#14 ? phi( main::@25/(byte) render_screen_show#2 ) - (byte) render_screen_show#5 ? (byte) render_screen_show#14 - (byte) render_screen_render#5 ? (byte) render_screen_render#16 + (byte) level_bcd#104 ← phi( main::@25/(byte) level_bcd#105 ) + (dword) score_bcd#87 ← phi( main::@25/(dword) score_bcd#88 ) + (word) lines_bcd#91 ← phi( main::@25/(word) lines_bcd#92 ) + (byte) current_movedown_counter#60 ← phi( main::@25/(byte) current_movedown_counter#61 ) + (byte) keyboard_modifiers#63 ← phi( main::@25/(byte) keyboard_modifiers#64 ) + (byte) keyboard_events_size#82 ← phi( main::@25/(byte) keyboard_events_size#83 ) + (byte) render_screen_showing#48 ← phi( main::@25/(byte) render_screen_showing#49 ) + (byte) level#91 ← phi( main::@25/(byte) level#99 ) + (byte) game_over#67 ← phi( main::@25/(byte) game_over#76 ) + (byte) current_ypos#83 ← phi( main::@25/(byte) current_ypos#90 ) + (byte) current_xpos#106 ← phi( main::@25/(byte) current_xpos#114 ) + (byte*) current_piece_gfx#94 ← phi( main::@25/(byte*) current_piece_gfx#101 ) + (byte) current_orientation#82 ← phi( main::@25/(byte) current_orientation#89 ) + (byte) current_piece_char#79 ← phi( main::@25/(byte) current_piece_char#89 ) + (byte*) current_piece#76 ← phi( main::@25/(byte*) current_piece#83 ) + (byte) next_piece_idx#63 ← phi( main::@25/(byte) next_piece_idx#71 ) + (byte) current_movedown_slow#70 ← phi( main::@25/(byte) current_movedown_slow#78 ) + (byte) render_screen_render#16 ← phi( main::@25/(byte) render_screen_render#2 ) + (byte) render_screen_show#14 ← phi( main::@25/(byte) render_screen_show#2 ) + (byte) render_screen_show#5 ← (byte) render_screen_show#14 + (byte) render_screen_render#5 ← (byte) render_screen_render#16 call sprites_init to:main::@27 main::@27: scope:[main] from main::@26 - (byte) level_bcd#103 ? phi( main::@26/(byte) level_bcd#104 ) - (dword) score_bcd#86 ? phi( main::@26/(dword) score_bcd#87 ) - (word) lines_bcd#90 ? phi( main::@26/(word) lines_bcd#91 ) - (byte) current_movedown_counter#59 ? phi( main::@26/(byte) current_movedown_counter#60 ) - (byte) keyboard_modifiers#61 ? phi( main::@26/(byte) keyboard_modifiers#63 ) - (byte) keyboard_events_size#80 ? phi( main::@26/(byte) keyboard_events_size#82 ) - (byte) render_screen_showing#47 ? phi( main::@26/(byte) render_screen_showing#48 ) - (byte) render_screen_show#62 ? phi( main::@26/(byte) render_screen_show#5 ) - (byte) render_screen_render#58 ? phi( main::@26/(byte) render_screen_render#5 ) - (byte) level#81 ? phi( main::@26/(byte) level#91 ) - (byte) game_over#54 ? phi( main::@26/(byte) game_over#67 ) - (byte) current_ypos#72 ? phi( main::@26/(byte) current_ypos#83 ) - (byte) current_xpos#93 ? phi( main::@26/(byte) current_xpos#106 ) - (byte*) current_piece_gfx#76 ? phi( main::@26/(byte*) current_piece_gfx#94 ) - (byte) current_orientation#71 ? phi( main::@26/(byte) current_orientation#82 ) - (byte) current_piece_char#63 ? phi( main::@26/(byte) current_piece_char#79 ) - (byte*) current_piece#64 ? phi( main::@26/(byte*) current_piece#76 ) - (byte) next_piece_idx#54 ? phi( main::@26/(byte) next_piece_idx#63 ) - (byte) current_movedown_slow#57 ? phi( main::@26/(byte) current_movedown_slow#70 ) + (byte) level_bcd#103 ← phi( main::@26/(byte) level_bcd#104 ) + (dword) score_bcd#86 ← phi( main::@26/(dword) score_bcd#87 ) + (word) lines_bcd#90 ← phi( main::@26/(word) lines_bcd#91 ) + (byte) current_movedown_counter#59 ← phi( main::@26/(byte) current_movedown_counter#60 ) + (byte) keyboard_modifiers#61 ← phi( main::@26/(byte) keyboard_modifiers#63 ) + (byte) keyboard_events_size#80 ← phi( main::@26/(byte) keyboard_events_size#82 ) + (byte) render_screen_showing#47 ← phi( main::@26/(byte) render_screen_showing#48 ) + (byte) render_screen_show#62 ← phi( main::@26/(byte) render_screen_show#5 ) + (byte) render_screen_render#58 ← phi( main::@26/(byte) render_screen_render#5 ) + (byte) level#81 ← phi( main::@26/(byte) level#91 ) + (byte) game_over#54 ← phi( main::@26/(byte) game_over#67 ) + (byte) current_ypos#72 ← phi( main::@26/(byte) current_ypos#83 ) + (byte) current_xpos#93 ← phi( main::@26/(byte) current_xpos#106 ) + (byte*) current_piece_gfx#76 ← phi( main::@26/(byte*) current_piece_gfx#94 ) + (byte) current_orientation#71 ← phi( main::@26/(byte) current_orientation#82 ) + (byte) current_piece_char#63 ← phi( main::@26/(byte) current_piece_char#79 ) + (byte*) current_piece#64 ← phi( main::@26/(byte*) current_piece#76 ) + (byte) next_piece_idx#54 ← phi( main::@26/(byte) next_piece_idx#63 ) + (byte) current_movedown_slow#57 ← phi( main::@26/(byte) current_movedown_slow#70 ) call sprites_irq_init to:main::@28 main::@28: scope:[main] from main::@27 - (byte) level_bcd#102 ? phi( main::@27/(byte) level_bcd#103 ) - (dword) score_bcd#85 ? phi( main::@27/(dword) score_bcd#86 ) - (word) lines_bcd#89 ? phi( main::@27/(word) lines_bcd#90 ) - (byte) current_movedown_counter#58 ? phi( main::@27/(byte) current_movedown_counter#59 ) - (byte) keyboard_modifiers#59 ? phi( main::@27/(byte) keyboard_modifiers#61 ) - (byte) keyboard_events_size#77 ? phi( main::@27/(byte) keyboard_events_size#80 ) - (byte) render_screen_showing#46 ? phi( main::@27/(byte) render_screen_showing#47 ) - (byte) render_screen_show#61 ? phi( main::@27/(byte) render_screen_show#62 ) - (byte) render_screen_render#53 ? phi( main::@27/(byte) render_screen_render#58 ) - (byte) level#60 ? phi( main::@27/(byte) level#81 ) - (byte) game_over#40 ? phi( main::@27/(byte) game_over#54 ) - (byte) current_ypos#58 ? phi( main::@27/(byte) current_ypos#72 ) - (byte) current_xpos#73 ? phi( main::@27/(byte) current_xpos#93 ) - (byte*) current_piece_gfx#58 ? phi( main::@27/(byte*) current_piece_gfx#76 ) - (byte) current_orientation#57 ? phi( main::@27/(byte) current_orientation#71 ) - (byte) current_piece_char#46 ? phi( main::@27/(byte) current_piece_char#63 ) - (byte*) current_piece#49 ? phi( main::@27/(byte*) current_piece#64 ) - (byte) next_piece_idx#41 ? phi( main::@27/(byte) next_piece_idx#54 ) - (byte) current_movedown_slow#43 ? phi( main::@27/(byte) current_movedown_slow#57 ) + (byte) level_bcd#102 ← phi( main::@27/(byte) level_bcd#103 ) + (dword) score_bcd#85 ← phi( main::@27/(dword) score_bcd#86 ) + (word) lines_bcd#89 ← phi( main::@27/(word) lines_bcd#90 ) + (byte) current_movedown_counter#58 ← phi( main::@27/(byte) current_movedown_counter#59 ) + (byte) keyboard_modifiers#59 ← phi( main::@27/(byte) keyboard_modifiers#61 ) + (byte) keyboard_events_size#77 ← phi( main::@27/(byte) keyboard_events_size#80 ) + (byte) render_screen_showing#46 ← phi( main::@27/(byte) render_screen_showing#47 ) + (byte) render_screen_show#61 ← phi( main::@27/(byte) render_screen_show#62 ) + (byte) render_screen_render#53 ← phi( main::@27/(byte) render_screen_render#58 ) + (byte) level#60 ← phi( main::@27/(byte) level#81 ) + (byte) game_over#40 ← phi( main::@27/(byte) game_over#54 ) + (byte) current_ypos#58 ← phi( main::@27/(byte) current_ypos#72 ) + (byte) current_xpos#73 ← phi( main::@27/(byte) current_xpos#93 ) + (byte*) current_piece_gfx#58 ← phi( main::@27/(byte*) current_piece_gfx#76 ) + (byte) current_orientation#57 ← phi( main::@27/(byte) current_orientation#71 ) + (byte) current_piece_char#46 ← phi( main::@27/(byte) current_piece_char#63 ) + (byte*) current_piece#49 ← phi( main::@27/(byte*) current_piece#64 ) + (byte) next_piece_idx#41 ← phi( main::@27/(byte) next_piece_idx#54 ) + (byte) current_movedown_slow#43 ← phi( main::@27/(byte) current_movedown_slow#57 ) call play_init to:main::@29 main::@29: scope:[main] from main::@28 - (byte) level_bcd#97 ? phi( main::@28/(byte) level_bcd#102 ) - (byte) level#105 ? phi( main::@28/(byte) level#60 ) - (dword) score_bcd#81 ? phi( main::@28/(dword) score_bcd#85 ) - (word) lines_bcd#84 ? phi( main::@28/(word) lines_bcd#89 ) - (byte) current_movedown_counter#54 ? phi( main::@28/(byte) current_movedown_counter#58 ) - (byte) keyboard_modifiers#56 ? phi( main::@28/(byte) keyboard_modifiers#59 ) - (byte) keyboard_events_size#72 ? phi( main::@28/(byte) keyboard_events_size#77 ) - (byte) render_screen_showing#43 ? phi( main::@28/(byte) render_screen_showing#46 ) - (byte) render_screen_show#58 ? phi( main::@28/(byte) render_screen_show#61 ) - (byte) render_screen_render#49 ? phi( main::@28/(byte) render_screen_render#53 ) - (byte) game_over#30 ? phi( main::@28/(byte) game_over#40 ) - (byte) current_ypos#46 ? phi( main::@28/(byte) current_ypos#58 ) - (byte) current_xpos#55 ? phi( main::@28/(byte) current_xpos#73 ) - (byte*) current_piece_gfx#42 ? phi( main::@28/(byte*) current_piece_gfx#58 ) - (byte) current_orientation#46 ? phi( main::@28/(byte) current_orientation#57 ) - (byte) current_piece_char#33 ? phi( main::@28/(byte) current_piece_char#46 ) - (byte*) current_piece#36 ? phi( main::@28/(byte*) current_piece#49 ) - (byte) next_piece_idx#32 ? phi( main::@28/(byte) next_piece_idx#41 ) - (byte) current_movedown_slow#25 ? phi( main::@28/(byte) current_movedown_slow#2 ) - (byte) current_movedown_slow#12 ? (byte) current_movedown_slow#25 + (byte) level_bcd#97 ← phi( main::@28/(byte) level_bcd#102 ) + (byte) level#105 ← phi( main::@28/(byte) level#60 ) + (dword) score_bcd#81 ← phi( main::@28/(dword) score_bcd#85 ) + (word) lines_bcd#84 ← phi( main::@28/(word) lines_bcd#89 ) + (byte) current_movedown_counter#54 ← phi( main::@28/(byte) current_movedown_counter#58 ) + (byte) keyboard_modifiers#56 ← phi( main::@28/(byte) keyboard_modifiers#59 ) + (byte) keyboard_events_size#72 ← phi( main::@28/(byte) keyboard_events_size#77 ) + (byte) render_screen_showing#43 ← phi( main::@28/(byte) render_screen_showing#46 ) + (byte) render_screen_show#58 ← phi( main::@28/(byte) render_screen_show#61 ) + (byte) render_screen_render#49 ← phi( main::@28/(byte) render_screen_render#53 ) + (byte) game_over#30 ← phi( main::@28/(byte) game_over#40 ) + (byte) current_ypos#46 ← phi( main::@28/(byte) current_ypos#58 ) + (byte) current_xpos#55 ← phi( main::@28/(byte) current_xpos#73 ) + (byte*) current_piece_gfx#42 ← phi( main::@28/(byte*) current_piece_gfx#58 ) + (byte) current_orientation#46 ← phi( main::@28/(byte) current_orientation#57 ) + (byte) current_piece_char#33 ← phi( main::@28/(byte) current_piece_char#46 ) + (byte*) current_piece#36 ← phi( main::@28/(byte*) current_piece#49 ) + (byte) next_piece_idx#32 ← phi( main::@28/(byte) next_piece_idx#41 ) + (byte) current_movedown_slow#25 ← phi( main::@28/(byte) current_movedown_slow#2 ) + (byte) current_movedown_slow#12 ← (byte) current_movedown_slow#25 call play_spawn_current to:main::@30 main::@30: scope:[main] from main::@29 - (byte) level_bcd#92 ? phi( main::@29/(byte) level_bcd#97 ) - (byte) level#100 ? phi( main::@29/(byte) level#105 ) - (dword) score_bcd#77 ? phi( main::@29/(dword) score_bcd#81 ) - (word) lines_bcd#80 ? phi( main::@29/(word) lines_bcd#84 ) - (byte) current_movedown_counter#51 ? phi( main::@29/(byte) current_movedown_counter#54 ) - (byte) keyboard_modifiers#53 ? phi( main::@29/(byte) keyboard_modifiers#56 ) - (byte) keyboard_events_size#68 ? phi( main::@29/(byte) keyboard_events_size#72 ) - (byte) render_screen_showing#39 ? phi( main::@29/(byte) render_screen_showing#43 ) - (byte) current_movedown_slow#88 ? phi( main::@29/(byte) current_movedown_slow#12 ) - (byte) render_screen_show#55 ? phi( main::@29/(byte) render_screen_show#58 ) - (byte) render_screen_render#44 ? phi( main::@29/(byte) render_screen_render#49 ) - (byte) next_piece_idx#19 ? phi( main::@29/(byte) next_piece_idx#6 ) - (byte) game_over#17 ? phi( main::@29/(byte) game_over#6 ) - (byte) current_ypos#25 ? phi( main::@29/(byte) current_ypos#7 ) - (byte) current_xpos#31 ? phi( main::@29/(byte) current_xpos#10 ) - (byte*) current_piece_gfx#24 ? phi( main::@29/(byte*) current_piece_gfx#9 ) - (byte) current_orientation#27 ? phi( main::@29/(byte) current_orientation#9 ) - (byte) current_piece_char#19 ? phi( main::@29/(byte) current_piece_char#6 ) - (byte*) current_piece#19 ? phi( main::@29/(byte*) current_piece#6 ) - (byte*) current_piece#7 ? (byte*) current_piece#19 - (byte) current_piece_char#7 ? (byte) current_piece_char#19 - (byte) current_orientation#10 ? (byte) current_orientation#27 - (byte*) current_piece_gfx#10 ? (byte*) current_piece_gfx#24 - (byte) current_xpos#11 ? (byte) current_xpos#31 - (byte) current_ypos#8 ? (byte) current_ypos#25 - (byte) game_over#7 ? (byte) game_over#17 - (byte) next_piece_idx#7 ? (byte) next_piece_idx#19 + (byte) level_bcd#92 ← phi( main::@29/(byte) level_bcd#97 ) + (byte) level#100 ← phi( main::@29/(byte) level#105 ) + (dword) score_bcd#77 ← phi( main::@29/(dword) score_bcd#81 ) + (word) lines_bcd#80 ← phi( main::@29/(word) lines_bcd#84 ) + (byte) current_movedown_counter#51 ← phi( main::@29/(byte) current_movedown_counter#54 ) + (byte) keyboard_modifiers#53 ← phi( main::@29/(byte) keyboard_modifiers#56 ) + (byte) keyboard_events_size#68 ← phi( main::@29/(byte) keyboard_events_size#72 ) + (byte) render_screen_showing#39 ← phi( main::@29/(byte) render_screen_showing#43 ) + (byte) current_movedown_slow#88 ← phi( main::@29/(byte) current_movedown_slow#12 ) + (byte) render_screen_show#55 ← phi( main::@29/(byte) render_screen_show#58 ) + (byte) render_screen_render#44 ← phi( main::@29/(byte) render_screen_render#49 ) + (byte) next_piece_idx#19 ← phi( main::@29/(byte) next_piece_idx#6 ) + (byte) game_over#17 ← phi( main::@29/(byte) game_over#6 ) + (byte) current_ypos#25 ← phi( main::@29/(byte) current_ypos#7 ) + (byte) current_xpos#31 ← phi( main::@29/(byte) current_xpos#10 ) + (byte*) current_piece_gfx#24 ← phi( main::@29/(byte*) current_piece_gfx#9 ) + (byte) current_orientation#27 ← phi( main::@29/(byte) current_orientation#9 ) + (byte) current_piece_char#19 ← phi( main::@29/(byte) current_piece_char#6 ) + (byte*) current_piece#19 ← phi( main::@29/(byte*) current_piece#6 ) + (byte*) current_piece#7 ← (byte*) current_piece#19 + (byte) current_piece_char#7 ← (byte) current_piece_char#19 + (byte) current_orientation#10 ← (byte) current_orientation#27 + (byte*) current_piece_gfx#10 ← (byte*) current_piece_gfx#24 + (byte) current_xpos#11 ← (byte) current_xpos#31 + (byte) current_ypos#8 ← (byte) current_ypos#25 + (byte) game_over#7 ← (byte) game_over#17 + (byte) next_piece_idx#7 ← (byte) next_piece_idx#19 call play_spawn_current to:main::@31 main::@31: scope:[main] from main::@30 - (byte) level_bcd#83 ? phi( main::@30/(byte) level_bcd#92 ) - (byte) level#92 ? phi( main::@30/(byte) level#100 ) - (dword) score_bcd#70 ? phi( main::@30/(dword) score_bcd#77 ) - (word) lines_bcd#73 ? phi( main::@30/(word) lines_bcd#80 ) - (byte) current_movedown_counter#47 ? phi( main::@30/(byte) current_movedown_counter#51 ) - (byte) keyboard_modifiers#47 ? phi( main::@30/(byte) keyboard_modifiers#53 ) - (byte) keyboard_events_size#59 ? phi( main::@30/(byte) keyboard_events_size#68 ) - (byte) render_screen_showing#33 ? phi( main::@30/(byte) render_screen_showing#39 ) - (byte) current_movedown_slow#84 ? phi( main::@30/(byte) current_movedown_slow#88 ) - (byte) render_screen_show#49 ? phi( main::@30/(byte) render_screen_show#55 ) - (byte) render_screen_render#31 ? phi( main::@30/(byte) render_screen_render#44 ) - (byte) next_piece_idx#20 ? phi( main::@30/(byte) next_piece_idx#6 ) - (byte) game_over#18 ? phi( main::@30/(byte) game_over#6 ) - (byte) current_ypos#26 ? phi( main::@30/(byte) current_ypos#7 ) - (byte) current_xpos#32 ? phi( main::@30/(byte) current_xpos#10 ) - (byte*) current_piece_gfx#25 ? phi( main::@30/(byte*) current_piece_gfx#9 ) - (byte) current_orientation#28 ? phi( main::@30/(byte) current_orientation#9 ) - (byte) current_piece_char#20 ? phi( main::@30/(byte) current_piece_char#6 ) - (byte*) current_piece#20 ? phi( main::@30/(byte*) current_piece#6 ) - (byte*) current_piece#8 ? (byte*) current_piece#20 - (byte) current_piece_char#8 ? (byte) current_piece_char#20 - (byte) current_orientation#11 ? (byte) current_orientation#28 - (byte*) current_piece_gfx#11 ? (byte*) current_piece_gfx#25 - (byte) current_xpos#12 ? (byte) current_xpos#32 - (byte) current_ypos#9 ? (byte) current_ypos#26 - (byte) game_over#8 ? (byte) game_over#18 - (byte) next_piece_idx#8 ? (byte) next_piece_idx#20 + (byte) level_bcd#83 ← phi( main::@30/(byte) level_bcd#92 ) + (byte) level#92 ← phi( main::@30/(byte) level#100 ) + (dword) score_bcd#70 ← phi( main::@30/(dword) score_bcd#77 ) + (word) lines_bcd#73 ← phi( main::@30/(word) lines_bcd#80 ) + (byte) current_movedown_counter#47 ← phi( main::@30/(byte) current_movedown_counter#51 ) + (byte) keyboard_modifiers#47 ← phi( main::@30/(byte) keyboard_modifiers#53 ) + (byte) keyboard_events_size#59 ← phi( main::@30/(byte) keyboard_events_size#68 ) + (byte) render_screen_showing#33 ← phi( main::@30/(byte) render_screen_showing#39 ) + (byte) current_movedown_slow#84 ← phi( main::@30/(byte) current_movedown_slow#88 ) + (byte) render_screen_show#49 ← phi( main::@30/(byte) render_screen_show#55 ) + (byte) render_screen_render#31 ← phi( main::@30/(byte) render_screen_render#44 ) + (byte) next_piece_idx#20 ← phi( main::@30/(byte) next_piece_idx#6 ) + (byte) game_over#18 ← phi( main::@30/(byte) game_over#6 ) + (byte) current_ypos#26 ← phi( main::@30/(byte) current_ypos#7 ) + (byte) current_xpos#32 ← phi( main::@30/(byte) current_xpos#10 ) + (byte*) current_piece_gfx#25 ← phi( main::@30/(byte*) current_piece_gfx#9 ) + (byte) current_orientation#28 ← phi( main::@30/(byte) current_orientation#9 ) + (byte) current_piece_char#20 ← phi( main::@30/(byte) current_piece_char#6 ) + (byte*) current_piece#20 ← phi( main::@30/(byte*) current_piece#6 ) + (byte*) current_piece#8 ← (byte*) current_piece#20 + (byte) current_piece_char#8 ← (byte) current_piece_char#20 + (byte) current_orientation#11 ← (byte) current_orientation#28 + (byte*) current_piece_gfx#11 ← (byte*) current_piece_gfx#25 + (byte) current_xpos#12 ← (byte) current_xpos#32 + (byte) current_ypos#9 ← (byte) current_ypos#26 + (byte) game_over#8 ← (byte) game_over#18 + (byte) next_piece_idx#8 ← (byte) next_piece_idx#20 call render_playfield to:main::@32 main::@32: scope:[main] from main::@31 - (byte) level_bcd#75 ? phi( main::@31/(byte) level_bcd#83 ) - (byte) level#82 ? phi( main::@31/(byte) level#92 ) - (dword) score_bcd#63 ? phi( main::@31/(dword) score_bcd#70 ) - (word) lines_bcd#65 ? phi( main::@31/(word) lines_bcd#73 ) - (byte) current_movedown_counter#43 ? phi( main::@31/(byte) current_movedown_counter#47 ) - (byte) keyboard_modifiers#40 ? phi( main::@31/(byte) keyboard_modifiers#47 ) - (byte) keyboard_events_size#49 ? phi( main::@31/(byte) keyboard_events_size#59 ) - (byte) render_screen_showing#28 ? phi( main::@31/(byte) render_screen_showing#33 ) - (byte) game_over#68 ? phi( main::@31/(byte) game_over#8 ) - (byte) current_orientation#83 ? phi( main::@31/(byte) current_orientation#11 ) - (byte) current_piece_char#80 ? phi( main::@31/(byte) current_piece_char#8 ) - (byte*) current_piece#77 ? phi( main::@31/(byte*) current_piece#8 ) - (byte) current_movedown_slow#79 ? phi( main::@31/(byte) current_movedown_slow#84 ) - (byte) render_screen_show#44 ? phi( main::@31/(byte) render_screen_show#49 ) - (byte) next_piece_idx#64 ? phi( main::@31/(byte) next_piece_idx#8 ) - (byte*) current_piece_gfx#81 ? phi( main::@31/(byte*) current_piece_gfx#11 ) - (byte) current_xpos#79 ? phi( main::@31/(byte) current_xpos#12 ) - (byte) render_screen_render#36 ? phi( main::@31/(byte) render_screen_render#31 ) - (byte) current_ypos#30 ? phi( main::@31/(byte) current_ypos#9 ) + (byte) level_bcd#75 ← phi( main::@31/(byte) level_bcd#83 ) + (byte) level#82 ← phi( main::@31/(byte) level#92 ) + (dword) score_bcd#63 ← phi( main::@31/(dword) score_bcd#70 ) + (word) lines_bcd#65 ← phi( main::@31/(word) lines_bcd#73 ) + (byte) current_movedown_counter#43 ← phi( main::@31/(byte) current_movedown_counter#47 ) + (byte) keyboard_modifiers#40 ← phi( main::@31/(byte) keyboard_modifiers#47 ) + (byte) keyboard_events_size#49 ← phi( main::@31/(byte) keyboard_events_size#59 ) + (byte) render_screen_showing#28 ← phi( main::@31/(byte) render_screen_showing#33 ) + (byte) game_over#68 ← phi( main::@31/(byte) game_over#8 ) + (byte) current_orientation#83 ← phi( main::@31/(byte) current_orientation#11 ) + (byte) current_piece_char#80 ← phi( main::@31/(byte) current_piece_char#8 ) + (byte*) current_piece#77 ← phi( main::@31/(byte*) current_piece#8 ) + (byte) current_movedown_slow#79 ← phi( main::@31/(byte) current_movedown_slow#84 ) + (byte) render_screen_show#44 ← phi( main::@31/(byte) render_screen_show#49 ) + (byte) next_piece_idx#64 ← phi( main::@31/(byte) next_piece_idx#8 ) + (byte*) current_piece_gfx#81 ← phi( main::@31/(byte*) current_piece_gfx#11 ) + (byte) current_xpos#79 ← phi( main::@31/(byte) current_xpos#12 ) + (byte) render_screen_render#36 ← phi( main::@31/(byte) render_screen_render#31 ) + (byte) current_ypos#30 ← phi( main::@31/(byte) current_ypos#9 ) call render_moving to:main::@33 main::@33: scope:[main] from main::@32 - (byte) level_bcd#65 ? phi( main::@32/(byte) level_bcd#75 ) - (byte) level#68 ? phi( main::@32/(byte) level#82 ) - (dword) score_bcd#54 ? phi( main::@32/(dword) score_bcd#63 ) - (word) lines_bcd#54 ? phi( main::@32/(word) lines_bcd#65 ) - (byte) current_movedown_counter#39 ? phi( main::@32/(byte) current_movedown_counter#43 ) - (byte) keyboard_modifiers#35 ? phi( main::@32/(byte) keyboard_modifiers#40 ) - (byte) keyboard_events_size#41 ? phi( main::@32/(byte) keyboard_events_size#49 ) - (byte) render_screen_showing#22 ? phi( main::@32/(byte) render_screen_showing#28 ) - (byte) game_over#55 ? phi( main::@32/(byte) game_over#68 ) - (byte) current_ypos#73 ? phi( main::@32/(byte) current_ypos#30 ) - (byte) current_xpos#94 ? phi( main::@32/(byte) current_xpos#79 ) - (byte*) current_piece_gfx#77 ? phi( main::@32/(byte*) current_piece_gfx#81 ) - (byte) current_orientation#72 ? phi( main::@32/(byte) current_orientation#83 ) - (byte) current_piece_char#64 ? phi( main::@32/(byte) current_piece_char#80 ) - (byte*) current_piece#65 ? phi( main::@32/(byte*) current_piece#77 ) - (byte) current_movedown_slow#71 ? phi( main::@32/(byte) current_movedown_slow#79 ) - (byte) render_screen_show#36 ? phi( main::@32/(byte) render_screen_show#44 ) - (byte) next_piece_idx#47 ? phi( main::@32/(byte) next_piece_idx#64 ) - (byte) render_screen_render#25 ? phi( main::@32/(byte) render_screen_render#36 ) + (byte) level_bcd#65 ← phi( main::@32/(byte) level_bcd#75 ) + (byte) level#68 ← phi( main::@32/(byte) level#82 ) + (dword) score_bcd#54 ← phi( main::@32/(dword) score_bcd#63 ) + (word) lines_bcd#54 ← phi( main::@32/(word) lines_bcd#65 ) + (byte) current_movedown_counter#39 ← phi( main::@32/(byte) current_movedown_counter#43 ) + (byte) keyboard_modifiers#35 ← phi( main::@32/(byte) keyboard_modifiers#40 ) + (byte) keyboard_events_size#41 ← phi( main::@32/(byte) keyboard_events_size#49 ) + (byte) render_screen_showing#22 ← phi( main::@32/(byte) render_screen_showing#28 ) + (byte) game_over#55 ← phi( main::@32/(byte) game_over#68 ) + (byte) current_ypos#73 ← phi( main::@32/(byte) current_ypos#30 ) + (byte) current_xpos#94 ← phi( main::@32/(byte) current_xpos#79 ) + (byte*) current_piece_gfx#77 ← phi( main::@32/(byte*) current_piece_gfx#81 ) + (byte) current_orientation#72 ← phi( main::@32/(byte) current_orientation#83 ) + (byte) current_piece_char#64 ← phi( main::@32/(byte) current_piece_char#80 ) + (byte*) current_piece#65 ← phi( main::@32/(byte*) current_piece#77 ) + (byte) current_movedown_slow#71 ← phi( main::@32/(byte) current_movedown_slow#79 ) + (byte) render_screen_show#36 ← phi( main::@32/(byte) render_screen_show#44 ) + (byte) next_piece_idx#47 ← phi( main::@32/(byte) next_piece_idx#64 ) + (byte) render_screen_render#25 ← phi( main::@32/(byte) render_screen_render#36 ) call render_next to:main::@34 main::@34: scope:[main] from main::@33 - (byte) level_bcd#53 ? phi( main::@33/(byte) level_bcd#65 ) - (byte) level#54 ? phi( main::@33/(byte) level#68 ) - (dword) score_bcd#43 ? phi( main::@33/(dword) score_bcd#54 ) - (word) lines_bcd#43 ? phi( main::@33/(word) lines_bcd#54 ) - (byte) current_movedown_counter#32 ? phi( main::@33/(byte) current_movedown_counter#39 ) - (byte) keyboard_modifiers#30 ? phi( main::@33/(byte) keyboard_modifiers#35 ) - (byte) keyboard_events_size#33 ? phi( main::@33/(byte) keyboard_events_size#41 ) - (byte) render_screen_showing#17 ? phi( main::@33/(byte) render_screen_showing#22 ) - (byte) next_piece_idx#43 ? phi( main::@33/(byte) next_piece_idx#47 ) - (byte) game_over#42 ? phi( main::@33/(byte) game_over#55 ) - (byte) current_ypos#60 ? phi( main::@33/(byte) current_ypos#73 ) - (byte) current_xpos#75 ? phi( main::@33/(byte) current_xpos#94 ) - (byte*) current_piece_gfx#60 ? phi( main::@33/(byte*) current_piece_gfx#77 ) - (byte) current_orientation#59 ? phi( main::@33/(byte) current_orientation#72 ) - (byte) current_piece_char#48 ? phi( main::@33/(byte) current_piece_char#64 ) - (byte*) current_piece#51 ? phi( main::@33/(byte*) current_piece#65 ) - (byte) current_movedown_slow#59 ? phi( main::@33/(byte) current_movedown_slow#71 ) - (byte) render_screen_render#38 ? phi( main::@33/(byte) render_screen_render#25 ) - (byte) render_screen_show#29 ? phi( main::@33/(byte) render_screen_show#36 ) + (byte) level_bcd#53 ← phi( main::@33/(byte) level_bcd#65 ) + (byte) level#54 ← phi( main::@33/(byte) level#68 ) + (dword) score_bcd#43 ← phi( main::@33/(dword) score_bcd#54 ) + (word) lines_bcd#43 ← phi( main::@33/(word) lines_bcd#54 ) + (byte) current_movedown_counter#32 ← phi( main::@33/(byte) current_movedown_counter#39 ) + (byte) keyboard_modifiers#30 ← phi( main::@33/(byte) keyboard_modifiers#35 ) + (byte) keyboard_events_size#33 ← phi( main::@33/(byte) keyboard_events_size#41 ) + (byte) render_screen_showing#17 ← phi( main::@33/(byte) render_screen_showing#22 ) + (byte) next_piece_idx#43 ← phi( main::@33/(byte) next_piece_idx#47 ) + (byte) game_over#42 ← phi( main::@33/(byte) game_over#55 ) + (byte) current_ypos#60 ← phi( main::@33/(byte) current_ypos#73 ) + (byte) current_xpos#75 ← phi( main::@33/(byte) current_xpos#94 ) + (byte*) current_piece_gfx#60 ← phi( main::@33/(byte*) current_piece_gfx#77 ) + (byte) current_orientation#59 ← phi( main::@33/(byte) current_orientation#72 ) + (byte) current_piece_char#48 ← phi( main::@33/(byte) current_piece_char#64 ) + (byte*) current_piece#51 ← phi( main::@33/(byte*) current_piece#65 ) + (byte) current_movedown_slow#59 ← phi( main::@33/(byte) current_movedown_slow#71 ) + (byte) render_screen_render#38 ← phi( main::@33/(byte) render_screen_render#25 ) + (byte) render_screen_show#29 ← phi( main::@33/(byte) render_screen_show#36 ) to:main::@1 main::@1: scope:[main] from main::@20 main::@34 main::@43 - (byte) level_bcd#40 ? phi( main::@20/(byte) level_bcd#52 main::@34/(byte) level_bcd#53 main::@43/(byte) level_bcd#54 ) - (byte) level#40 ? phi( main::@20/(byte) level#53 main::@34/(byte) level#54 main::@43/(byte) level#55 ) - (dword) score_bcd#33 ? phi( main::@20/(dword) score_bcd#42 main::@34/(dword) score_bcd#43 main::@43/(dword) score_bcd#44 ) - (word) lines_bcd#33 ? phi( main::@20/(word) lines_bcd#42 main::@34/(word) lines_bcd#43 main::@43/(word) lines_bcd#44 ) - (byte) current_movedown_counter#26 ? phi( main::@20/(byte) current_movedown_counter#31 main::@34/(byte) current_movedown_counter#32 main::@43/(byte) current_movedown_counter#33 ) - (byte) keyboard_modifiers#24 ? phi( main::@20/(byte) keyboard_modifiers#29 main::@34/(byte) keyboard_modifiers#30 main::@43/(byte) keyboard_modifiers#31 ) - (byte) keyboard_events_size#27 ? phi( main::@20/(byte) keyboard_events_size#32 main::@34/(byte) keyboard_events_size#33 main::@43/(byte) keyboard_events_size#34 ) - (byte) render_screen_showing#13 ? phi( main::@20/(byte) render_screen_showing#16 main::@34/(byte) render_screen_showing#17 main::@43/(byte) render_screen_showing#18 ) - (byte) next_piece_idx#34 ? phi( main::@20/(byte) next_piece_idx#42 main::@34/(byte) next_piece_idx#43 main::@43/(byte) next_piece_idx#44 ) - (byte) game_over#33 ? phi( main::@20/(byte) game_over#41 main::@34/(byte) game_over#42 main::@43/(byte) game_over#43 ) - (byte) current_ypos#48 ? phi( main::@20/(byte) current_ypos#59 main::@34/(byte) current_ypos#60 main::@43/(byte) current_ypos#61 ) - (byte) current_xpos#57 ? phi( main::@20/(byte) current_xpos#74 main::@34/(byte) current_xpos#75 main::@43/(byte) current_xpos#76 ) - (byte*) current_piece_gfx#44 ? phi( main::@20/(byte*) current_piece_gfx#59 main::@34/(byte*) current_piece_gfx#60 main::@43/(byte*) current_piece_gfx#61 ) - (byte) current_orientation#48 ? phi( main::@20/(byte) current_orientation#58 main::@34/(byte) current_orientation#59 main::@43/(byte) current_orientation#60 ) - (byte) current_piece_char#35 ? phi( main::@20/(byte) current_piece_char#47 main::@34/(byte) current_piece_char#48 main::@43/(byte) current_piece_char#49 ) - (byte*) current_piece#38 ? phi( main::@20/(byte*) current_piece#50 main::@34/(byte*) current_piece#51 main::@43/(byte*) current_piece#52 ) - (byte) current_movedown_slow#45 ? phi( main::@20/(byte) current_movedown_slow#58 main::@34/(byte) current_movedown_slow#59 main::@43/(byte) current_movedown_slow#60 ) - (byte) render_screen_render#28 ? phi( main::@20/(byte) render_screen_render#37 main::@34/(byte) render_screen_render#38 main::@43/(byte) render_screen_render#6 ) - (byte) render_screen_show#23 ? phi( main::@20/(byte) render_screen_show#28 main::@34/(byte) render_screen_show#29 main::@43/(byte) render_screen_show#6 ) + (byte) level_bcd#40 ← phi( main::@20/(byte) level_bcd#52 main::@34/(byte) level_bcd#53 main::@43/(byte) level_bcd#54 ) + (byte) level#40 ← phi( main::@20/(byte) level#53 main::@34/(byte) level#54 main::@43/(byte) level#55 ) + (dword) score_bcd#33 ← phi( main::@20/(dword) score_bcd#42 main::@34/(dword) score_bcd#43 main::@43/(dword) score_bcd#44 ) + (word) lines_bcd#33 ← phi( main::@20/(word) lines_bcd#42 main::@34/(word) lines_bcd#43 main::@43/(word) lines_bcd#44 ) + (byte) current_movedown_counter#26 ← phi( main::@20/(byte) current_movedown_counter#31 main::@34/(byte) current_movedown_counter#32 main::@43/(byte) current_movedown_counter#33 ) + (byte) keyboard_modifiers#24 ← phi( main::@20/(byte) keyboard_modifiers#29 main::@34/(byte) keyboard_modifiers#30 main::@43/(byte) keyboard_modifiers#31 ) + (byte) keyboard_events_size#27 ← phi( main::@20/(byte) keyboard_events_size#32 main::@34/(byte) keyboard_events_size#33 main::@43/(byte) keyboard_events_size#34 ) + (byte) render_screen_showing#13 ← phi( main::@20/(byte) render_screen_showing#16 main::@34/(byte) render_screen_showing#17 main::@43/(byte) render_screen_showing#18 ) + (byte) next_piece_idx#34 ← phi( main::@20/(byte) next_piece_idx#42 main::@34/(byte) next_piece_idx#43 main::@43/(byte) next_piece_idx#44 ) + (byte) game_over#33 ← phi( main::@20/(byte) game_over#41 main::@34/(byte) game_over#42 main::@43/(byte) game_over#43 ) + (byte) current_ypos#48 ← phi( main::@20/(byte) current_ypos#59 main::@34/(byte) current_ypos#60 main::@43/(byte) current_ypos#61 ) + (byte) current_xpos#57 ← phi( main::@20/(byte) current_xpos#74 main::@34/(byte) current_xpos#75 main::@43/(byte) current_xpos#76 ) + (byte*) current_piece_gfx#44 ← phi( main::@20/(byte*) current_piece_gfx#59 main::@34/(byte*) current_piece_gfx#60 main::@43/(byte*) current_piece_gfx#61 ) + (byte) current_orientation#48 ← phi( main::@20/(byte) current_orientation#58 main::@34/(byte) current_orientation#59 main::@43/(byte) current_orientation#60 ) + (byte) current_piece_char#35 ← phi( main::@20/(byte) current_piece_char#47 main::@34/(byte) current_piece_char#48 main::@43/(byte) current_piece_char#49 ) + (byte*) current_piece#38 ← phi( main::@20/(byte*) current_piece#50 main::@34/(byte*) current_piece#51 main::@43/(byte*) current_piece#52 ) + (byte) current_movedown_slow#45 ← phi( main::@20/(byte) current_movedown_slow#58 main::@34/(byte) current_movedown_slow#59 main::@43/(byte) current_movedown_slow#60 ) + (byte) render_screen_render#28 ← phi( main::@20/(byte) render_screen_render#37 main::@34/(byte) render_screen_render#38 main::@43/(byte) render_screen_render#6 ) + (byte) render_screen_show#23 ← phi( main::@20/(byte) render_screen_show#28 main::@34/(byte) render_screen_show#29 main::@43/(byte) render_screen_show#6 ) if(true) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte) render_screen_render#65 ? phi( main::@1/(byte) render_screen_render#28 ) - (byte) next_piece_idx#79 ? phi( main::@1/(byte) next_piece_idx#34 ) - (byte) current_xpos#122 ? phi( main::@1/(byte) current_xpos#57 ) - (byte*) current_piece_gfx#112 ? phi( main::@1/(byte*) current_piece_gfx#44 ) - (byte) current_orientation#96 ? phi( main::@1/(byte) current_orientation#48 ) - (byte) current_piece_char#100 ? phi( main::@1/(byte) current_piece_char#35 ) - (byte*) current_piece#92 ? phi( main::@1/(byte*) current_piece#38 ) - (byte) level_bcd#98 ? phi( main::@1/(byte) level_bcd#40 ) - (byte) current_movedown_slow#91 ? phi( main::@1/(byte) current_movedown_slow#45 ) - (byte) level#106 ? phi( main::@1/(byte) level#40 ) - (dword) score_bcd#82 ? phi( main::@1/(dword) score_bcd#33 ) - (word) lines_bcd#85 ? phi( main::@1/(word) lines_bcd#33 ) - (byte) current_ypos#98 ? phi( main::@1/(byte) current_ypos#48 ) - (byte) current_movedown_counter#55 ? phi( main::@1/(byte) current_movedown_counter#26 ) - (byte) game_over#77 ? phi( main::@1/(byte) game_over#33 ) - (byte) keyboard_modifiers#41 ? phi( main::@1/(byte) keyboard_modifiers#24 ) - (byte) keyboard_events_size#50 ? phi( main::@1/(byte) keyboard_events_size#27 ) - (byte) render_screen_showing#23 ? phi( main::@1/(byte) render_screen_showing#13 ) - (byte) render_screen_show#37 ? phi( main::@1/(byte) render_screen_show#23 ) + (byte) render_screen_render#65 ← phi( main::@1/(byte) render_screen_render#28 ) + (byte) next_piece_idx#79 ← phi( main::@1/(byte) next_piece_idx#34 ) + (byte) current_xpos#122 ← phi( main::@1/(byte) current_xpos#57 ) + (byte*) current_piece_gfx#112 ← phi( main::@1/(byte*) current_piece_gfx#44 ) + (byte) current_orientation#96 ← phi( main::@1/(byte) current_orientation#48 ) + (byte) current_piece_char#100 ← phi( main::@1/(byte) current_piece_char#35 ) + (byte*) current_piece#92 ← phi( main::@1/(byte*) current_piece#38 ) + (byte) level_bcd#98 ← phi( main::@1/(byte) level_bcd#40 ) + (byte) current_movedown_slow#91 ← phi( main::@1/(byte) current_movedown_slow#45 ) + (byte) level#106 ← phi( main::@1/(byte) level#40 ) + (dword) score_bcd#82 ← phi( main::@1/(dword) score_bcd#33 ) + (word) lines_bcd#85 ← phi( main::@1/(word) lines_bcd#33 ) + (byte) current_ypos#98 ← phi( main::@1/(byte) current_ypos#48 ) + (byte) current_movedown_counter#55 ← phi( main::@1/(byte) current_movedown_counter#26 ) + (byte) game_over#77 ← phi( main::@1/(byte) game_over#33 ) + (byte) keyboard_modifiers#41 ← phi( main::@1/(byte) keyboard_modifiers#24 ) + (byte) keyboard_events_size#50 ← phi( main::@1/(byte) keyboard_events_size#27 ) + (byte) render_screen_showing#23 ← phi( main::@1/(byte) render_screen_showing#13 ) + (byte) render_screen_show#37 ← phi( main::@1/(byte) render_screen_show#23 ) to:main::@4 main::@4: scope:[main] from main::@2 main::@5 - (byte) render_screen_render#64 ? phi( main::@2/(byte) render_screen_render#65 main::@5/(byte) render_screen_render#66 ) - (byte) next_piece_idx#78 ? phi( main::@2/(byte) next_piece_idx#79 main::@5/(byte) next_piece_idx#80 ) - (byte) current_xpos#120 ? phi( main::@2/(byte) current_xpos#122 main::@5/(byte) current_xpos#123 ) - (byte*) current_piece_gfx#110 ? phi( main::@2/(byte*) current_piece_gfx#112 main::@5/(byte*) current_piece_gfx#113 ) - (byte) current_orientation#94 ? phi( main::@2/(byte) current_orientation#96 main::@5/(byte) current_orientation#97 ) - (byte) current_piece_char#97 ? phi( main::@2/(byte) current_piece_char#100 main::@5/(byte) current_piece_char#101 ) - (byte*) current_piece#90 ? phi( main::@2/(byte*) current_piece#92 main::@5/(byte*) current_piece#93 ) - (byte) level_bcd#93 ? phi( main::@2/(byte) level_bcd#98 main::@5/(byte) level_bcd#99 ) - (byte) current_movedown_slow#89 ? phi( main::@2/(byte) current_movedown_slow#91 main::@5/(byte) current_movedown_slow#92 ) - (byte) level#101 ? phi( main::@2/(byte) level#106 main::@5/(byte) level#107 ) - (dword) score_bcd#78 ? phi( main::@2/(dword) score_bcd#82 main::@5/(dword) score_bcd#83 ) - (word) lines_bcd#81 ? phi( main::@2/(word) lines_bcd#85 main::@5/(word) lines_bcd#86 ) - (byte) current_ypos#96 ? phi( main::@2/(byte) current_ypos#98 main::@5/(byte) current_ypos#99 ) - (byte) current_movedown_counter#52 ? phi( main::@2/(byte) current_movedown_counter#55 main::@5/(byte) current_movedown_counter#56 ) - (byte) game_over#69 ? phi( main::@2/(byte) game_over#77 main::@5/(byte) game_over#78 ) - (byte) keyboard_modifiers#36 ? phi( main::@2/(byte) keyboard_modifiers#41 main::@5/(byte) keyboard_modifiers#42 ) - (byte) keyboard_events_size#42 ? phi( main::@2/(byte) keyboard_events_size#50 main::@5/(byte) keyboard_events_size#51 ) - (byte) render_screen_showing#19 ? phi( main::@2/(byte) render_screen_showing#23 main::@5/(byte) render_screen_showing#24 ) - (byte) render_screen_show#30 ? phi( main::@2/(byte) render_screen_show#37 main::@5/(byte) render_screen_show#38 ) - (bool~) main::$10 ? *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff + (byte) render_screen_render#64 ← phi( main::@2/(byte) render_screen_render#65 main::@5/(byte) render_screen_render#66 ) + (byte) next_piece_idx#78 ← phi( main::@2/(byte) next_piece_idx#79 main::@5/(byte) next_piece_idx#80 ) + (byte) current_xpos#120 ← phi( main::@2/(byte) current_xpos#122 main::@5/(byte) current_xpos#123 ) + (byte*) current_piece_gfx#110 ← phi( main::@2/(byte*) current_piece_gfx#112 main::@5/(byte*) current_piece_gfx#113 ) + (byte) current_orientation#94 ← phi( main::@2/(byte) current_orientation#96 main::@5/(byte) current_orientation#97 ) + (byte) current_piece_char#97 ← phi( main::@2/(byte) current_piece_char#100 main::@5/(byte) current_piece_char#101 ) + (byte*) current_piece#90 ← phi( main::@2/(byte*) current_piece#92 main::@5/(byte*) current_piece#93 ) + (byte) level_bcd#93 ← phi( main::@2/(byte) level_bcd#98 main::@5/(byte) level_bcd#99 ) + (byte) current_movedown_slow#89 ← phi( main::@2/(byte) current_movedown_slow#91 main::@5/(byte) current_movedown_slow#92 ) + (byte) level#101 ← phi( main::@2/(byte) level#106 main::@5/(byte) level#107 ) + (dword) score_bcd#78 ← phi( main::@2/(dword) score_bcd#82 main::@5/(dword) score_bcd#83 ) + (word) lines_bcd#81 ← phi( main::@2/(word) lines_bcd#85 main::@5/(word) lines_bcd#86 ) + (byte) current_ypos#96 ← phi( main::@2/(byte) current_ypos#98 main::@5/(byte) current_ypos#99 ) + (byte) current_movedown_counter#52 ← phi( main::@2/(byte) current_movedown_counter#55 main::@5/(byte) current_movedown_counter#56 ) + (byte) game_over#69 ← phi( main::@2/(byte) game_over#77 main::@5/(byte) game_over#78 ) + (byte) keyboard_modifiers#36 ← phi( main::@2/(byte) keyboard_modifiers#41 main::@5/(byte) keyboard_modifiers#42 ) + (byte) keyboard_events_size#42 ← phi( main::@2/(byte) keyboard_events_size#50 main::@5/(byte) keyboard_events_size#51 ) + (byte) render_screen_showing#19 ← phi( main::@2/(byte) render_screen_showing#23 main::@5/(byte) render_screen_showing#24 ) + (byte) render_screen_show#30 ← phi( main::@2/(byte) render_screen_show#37 main::@5/(byte) render_screen_show#38 ) + (bool~) main::$10 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff if((bool~) main::$10) goto main::@5 to:main::@6 main::@5: scope:[main] from main::@4 - (byte) render_screen_render#66 ? phi( main::@4/(byte) render_screen_render#64 ) - (byte) next_piece_idx#80 ? phi( main::@4/(byte) next_piece_idx#78 ) - (byte) current_xpos#123 ? phi( main::@4/(byte) current_xpos#120 ) - (byte*) current_piece_gfx#113 ? phi( main::@4/(byte*) current_piece_gfx#110 ) - (byte) current_orientation#97 ? phi( main::@4/(byte) current_orientation#94 ) - (byte) current_piece_char#101 ? phi( main::@4/(byte) current_piece_char#97 ) - (byte*) current_piece#93 ? phi( main::@4/(byte*) current_piece#90 ) - (byte) level_bcd#99 ? phi( main::@4/(byte) level_bcd#93 ) - (byte) current_movedown_slow#92 ? phi( main::@4/(byte) current_movedown_slow#89 ) - (byte) level#107 ? phi( main::@4/(byte) level#101 ) - (dword) score_bcd#83 ? phi( main::@4/(dword) score_bcd#78 ) - (word) lines_bcd#86 ? phi( main::@4/(word) lines_bcd#81 ) - (byte) current_ypos#99 ? phi( main::@4/(byte) current_ypos#96 ) - (byte) current_movedown_counter#56 ? phi( main::@4/(byte) current_movedown_counter#52 ) - (byte) game_over#78 ? phi( main::@4/(byte) game_over#69 ) - (byte) keyboard_modifiers#42 ? phi( main::@4/(byte) keyboard_modifiers#36 ) - (byte) keyboard_events_size#51 ? phi( main::@4/(byte) keyboard_events_size#42 ) - (byte) render_screen_showing#24 ? phi( main::@4/(byte) render_screen_showing#19 ) - (byte) render_screen_show#38 ? phi( main::@4/(byte) render_screen_show#30 ) + (byte) render_screen_render#66 ← phi( main::@4/(byte) render_screen_render#64 ) + (byte) next_piece_idx#80 ← phi( main::@4/(byte) next_piece_idx#78 ) + (byte) current_xpos#123 ← phi( main::@4/(byte) current_xpos#120 ) + (byte*) current_piece_gfx#113 ← phi( main::@4/(byte*) current_piece_gfx#110 ) + (byte) current_orientation#97 ← phi( main::@4/(byte) current_orientation#94 ) + (byte) current_piece_char#101 ← phi( main::@4/(byte) current_piece_char#97 ) + (byte*) current_piece#93 ← phi( main::@4/(byte*) current_piece#90 ) + (byte) level_bcd#99 ← phi( main::@4/(byte) level_bcd#93 ) + (byte) current_movedown_slow#92 ← phi( main::@4/(byte) current_movedown_slow#89 ) + (byte) level#107 ← phi( main::@4/(byte) level#101 ) + (dword) score_bcd#83 ← phi( main::@4/(dword) score_bcd#78 ) + (word) lines_bcd#86 ← phi( main::@4/(word) lines_bcd#81 ) + (byte) current_ypos#99 ← phi( main::@4/(byte) current_ypos#96 ) + (byte) current_movedown_counter#56 ← phi( main::@4/(byte) current_movedown_counter#52 ) + (byte) game_over#78 ← phi( main::@4/(byte) game_over#69 ) + (byte) keyboard_modifiers#42 ← phi( main::@4/(byte) keyboard_modifiers#36 ) + (byte) keyboard_events_size#51 ← phi( main::@4/(byte) keyboard_events_size#42 ) + (byte) render_screen_showing#24 ← phi( main::@4/(byte) render_screen_showing#19 ) + (byte) render_screen_show#38 ← phi( main::@4/(byte) render_screen_show#30 ) to:main::@4 main::@6: scope:[main] from main::@4 - (byte) render_screen_render#63 ? phi( main::@4/(byte) render_screen_render#64 ) - (byte) next_piece_idx#72 ? phi( main::@4/(byte) next_piece_idx#78 ) - (byte) current_xpos#115 ? phi( main::@4/(byte) current_xpos#120 ) - (byte*) current_piece_gfx#102 ? phi( main::@4/(byte*) current_piece_gfx#110 ) - (byte) current_orientation#90 ? phi( main::@4/(byte) current_orientation#94 ) - (byte) current_piece_char#90 ? phi( main::@4/(byte) current_piece_char#97 ) - (byte*) current_piece#84 ? phi( main::@4/(byte*) current_piece#90 ) - (byte) level_bcd#84 ? phi( main::@4/(byte) level_bcd#93 ) - (byte) current_movedown_slow#85 ? phi( main::@4/(byte) current_movedown_slow#89 ) - (byte) level#93 ? phi( main::@4/(byte) level#101 ) - (dword) score_bcd#71 ? phi( main::@4/(dword) score_bcd#78 ) - (word) lines_bcd#74 ? phi( main::@4/(word) lines_bcd#81 ) - (byte) current_ypos#91 ? phi( main::@4/(byte) current_ypos#96 ) - (byte) current_movedown_counter#48 ? phi( main::@4/(byte) current_movedown_counter#52 ) - (byte) game_over#56 ? phi( main::@4/(byte) game_over#69 ) - (byte) keyboard_modifiers#32 ? phi( main::@4/(byte) keyboard_modifiers#36 ) - (byte) keyboard_events_size#35 ? phi( main::@4/(byte) keyboard_events_size#42 ) - (byte) render_screen_showing#12 ? phi( main::@4/(byte) render_screen_showing#19 ) - (byte) render_screen_show#18 ? phi( main::@4/(byte) render_screen_show#30 ) + (byte) render_screen_render#63 ← phi( main::@4/(byte) render_screen_render#64 ) + (byte) next_piece_idx#72 ← phi( main::@4/(byte) next_piece_idx#78 ) + (byte) current_xpos#115 ← phi( main::@4/(byte) current_xpos#120 ) + (byte*) current_piece_gfx#102 ← phi( main::@4/(byte*) current_piece_gfx#110 ) + (byte) current_orientation#90 ← phi( main::@4/(byte) current_orientation#94 ) + (byte) current_piece_char#90 ← phi( main::@4/(byte) current_piece_char#97 ) + (byte*) current_piece#84 ← phi( main::@4/(byte*) current_piece#90 ) + (byte) level_bcd#84 ← phi( main::@4/(byte) level_bcd#93 ) + (byte) current_movedown_slow#85 ← phi( main::@4/(byte) current_movedown_slow#89 ) + (byte) level#93 ← phi( main::@4/(byte) level#101 ) + (dword) score_bcd#71 ← phi( main::@4/(dword) score_bcd#78 ) + (word) lines_bcd#74 ← phi( main::@4/(word) lines_bcd#81 ) + (byte) current_ypos#91 ← phi( main::@4/(byte) current_ypos#96 ) + (byte) current_movedown_counter#48 ← phi( main::@4/(byte) current_movedown_counter#52 ) + (byte) game_over#56 ← phi( main::@4/(byte) game_over#69 ) + (byte) keyboard_modifiers#32 ← phi( main::@4/(byte) keyboard_modifiers#36 ) + (byte) keyboard_events_size#35 ← phi( main::@4/(byte) keyboard_events_size#42 ) + (byte) render_screen_showing#12 ← phi( main::@4/(byte) render_screen_showing#19 ) + (byte) render_screen_show#18 ← phi( main::@4/(byte) render_screen_show#30 ) call render_show to:main::@35 main::@35: scope:[main] from main::@6 - (byte) render_screen_render#61 ? phi( main::@6/(byte) render_screen_render#63 ) - (byte) render_screen_show#59 ? phi( main::@6/(byte) render_screen_show#18 ) - (byte) next_piece_idx#65 ? phi( main::@6/(byte) next_piece_idx#72 ) - (byte) current_xpos#107 ? phi( main::@6/(byte) current_xpos#115 ) - (byte*) current_piece_gfx#95 ? phi( main::@6/(byte*) current_piece_gfx#102 ) - (byte) current_orientation#84 ? phi( main::@6/(byte) current_orientation#90 ) - (byte) current_piece_char#81 ? phi( main::@6/(byte) current_piece_char#90 ) - (byte*) current_piece#78 ? phi( main::@6/(byte*) current_piece#84 ) - (byte) level_bcd#76 ? phi( main::@6/(byte) level_bcd#84 ) - (byte) current_movedown_slow#80 ? phi( main::@6/(byte) current_movedown_slow#85 ) - (byte) level#83 ? phi( main::@6/(byte) level#93 ) - (dword) score_bcd#64 ? phi( main::@6/(dword) score_bcd#71 ) - (word) lines_bcd#66 ? phi( main::@6/(word) lines_bcd#74 ) - (byte) current_ypos#84 ? phi( main::@6/(byte) current_ypos#91 ) - (byte) current_movedown_counter#44 ? phi( main::@6/(byte) current_movedown_counter#48 ) - (byte) game_over#44 ? phi( main::@6/(byte) game_over#56 ) - (byte) keyboard_modifiers#23 ? phi( main::@6/(byte) keyboard_modifiers#32 ) - (byte) keyboard_events_size#26 ? phi( main::@6/(byte) keyboard_events_size#35 ) - (byte) render_screen_showing#8 ? phi( main::@6/(byte) render_screen_showing#2 ) - (byte) render_screen_showing#3 ? (byte) render_screen_showing#8 + (byte) render_screen_render#61 ← phi( main::@6/(byte) render_screen_render#63 ) + (byte) render_screen_show#59 ← phi( main::@6/(byte) render_screen_show#18 ) + (byte) next_piece_idx#65 ← phi( main::@6/(byte) next_piece_idx#72 ) + (byte) current_xpos#107 ← phi( main::@6/(byte) current_xpos#115 ) + (byte*) current_piece_gfx#95 ← phi( main::@6/(byte*) current_piece_gfx#102 ) + (byte) current_orientation#84 ← phi( main::@6/(byte) current_orientation#90 ) + (byte) current_piece_char#81 ← phi( main::@6/(byte) current_piece_char#90 ) + (byte*) current_piece#78 ← phi( main::@6/(byte*) current_piece#84 ) + (byte) level_bcd#76 ← phi( main::@6/(byte) level_bcd#84 ) + (byte) current_movedown_slow#80 ← phi( main::@6/(byte) current_movedown_slow#85 ) + (byte) level#83 ← phi( main::@6/(byte) level#93 ) + (dword) score_bcd#64 ← phi( main::@6/(dword) score_bcd#71 ) + (word) lines_bcd#66 ← phi( main::@6/(word) lines_bcd#74 ) + (byte) current_ypos#84 ← phi( main::@6/(byte) current_ypos#91 ) + (byte) current_movedown_counter#44 ← phi( main::@6/(byte) current_movedown_counter#48 ) + (byte) game_over#44 ← phi( main::@6/(byte) game_over#56 ) + (byte) keyboard_modifiers#23 ← phi( main::@6/(byte) keyboard_modifiers#32 ) + (byte) keyboard_events_size#26 ← phi( main::@6/(byte) keyboard_events_size#35 ) + (byte) render_screen_showing#8 ← phi( main::@6/(byte) render_screen_showing#2 ) + (byte) render_screen_showing#3 ← (byte) render_screen_showing#8 call keyboard_event_scan to:main::@36 main::@36: scope:[main] from main::@35 - (byte) render_screen_showing#40 ? phi( main::@35/(byte) render_screen_showing#3 ) - (byte) render_screen_render#59 ? phi( main::@35/(byte) render_screen_render#61 ) - (byte) render_screen_show#56 ? phi( main::@35/(byte) render_screen_show#59 ) - (byte) next_piece_idx#55 ? phi( main::@35/(byte) next_piece_idx#65 ) - (byte) current_xpos#95 ? phi( main::@35/(byte) current_xpos#107 ) - (byte*) current_piece_gfx#78 ? phi( main::@35/(byte*) current_piece_gfx#95 ) - (byte) current_orientation#73 ? phi( main::@35/(byte) current_orientation#84 ) - (byte) current_piece_char#65 ? phi( main::@35/(byte) current_piece_char#81 ) - (byte*) current_piece#66 ? phi( main::@35/(byte*) current_piece#78 ) - (byte) level_bcd#66 ? phi( main::@35/(byte) level_bcd#76 ) - (byte) current_movedown_slow#72 ? phi( main::@35/(byte) current_movedown_slow#80 ) - (byte) level#69 ? phi( main::@35/(byte) level#83 ) - (dword) score_bcd#55 ? phi( main::@35/(dword) score_bcd#64 ) - (word) lines_bcd#55 ? phi( main::@35/(word) lines_bcd#66 ) - (byte) current_ypos#74 ? phi( main::@35/(byte) current_ypos#84 ) - (byte) current_movedown_counter#40 ? phi( main::@35/(byte) current_movedown_counter#44 ) - (byte) game_over#31 ? phi( main::@35/(byte) game_over#44 ) - (byte) keyboard_modifiers#15 ? phi( main::@35/(byte) keyboard_modifiers#6 ) - (byte) keyboard_events_size#17 ? phi( main::@35/(byte) keyboard_events_size#3 ) - (byte) keyboard_events_size#6 ? (byte) keyboard_events_size#17 - (byte) keyboard_modifiers#7 ? (byte) keyboard_modifiers#15 + (byte) render_screen_showing#40 ← phi( main::@35/(byte) render_screen_showing#3 ) + (byte) render_screen_render#59 ← phi( main::@35/(byte) render_screen_render#61 ) + (byte) render_screen_show#56 ← phi( main::@35/(byte) render_screen_show#59 ) + (byte) next_piece_idx#55 ← phi( main::@35/(byte) next_piece_idx#65 ) + (byte) current_xpos#95 ← phi( main::@35/(byte) current_xpos#107 ) + (byte*) current_piece_gfx#78 ← phi( main::@35/(byte*) current_piece_gfx#95 ) + (byte) current_orientation#73 ← phi( main::@35/(byte) current_orientation#84 ) + (byte) current_piece_char#65 ← phi( main::@35/(byte) current_piece_char#81 ) + (byte*) current_piece#66 ← phi( main::@35/(byte*) current_piece#78 ) + (byte) level_bcd#66 ← phi( main::@35/(byte) level_bcd#76 ) + (byte) current_movedown_slow#72 ← phi( main::@35/(byte) current_movedown_slow#80 ) + (byte) level#69 ← phi( main::@35/(byte) level#83 ) + (dword) score_bcd#55 ← phi( main::@35/(dword) score_bcd#64 ) + (word) lines_bcd#55 ← phi( main::@35/(word) lines_bcd#66 ) + (byte) current_ypos#74 ← phi( main::@35/(byte) current_ypos#84 ) + (byte) current_movedown_counter#40 ← phi( main::@35/(byte) current_movedown_counter#44 ) + (byte) game_over#31 ← phi( main::@35/(byte) game_over#44 ) + (byte) keyboard_modifiers#15 ← phi( main::@35/(byte) keyboard_modifiers#6 ) + (byte) keyboard_events_size#17 ← phi( main::@35/(byte) keyboard_events_size#3 ) + (byte) keyboard_events_size#6 ← (byte) keyboard_events_size#17 + (byte) keyboard_modifiers#7 ← (byte) keyboard_modifiers#15 call keyboard_event_get - (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 to:main::@37 main::@37: scope:[main] from main::@36 - (byte) keyboard_modifiers#50 ? phi( main::@36/(byte) keyboard_modifiers#7 ) - (byte) render_screen_showing#36 ? phi( main::@36/(byte) render_screen_showing#40 ) - (byte) render_screen_render#56 ? phi( main::@36/(byte) render_screen_render#59 ) - (byte) render_screen_show#52 ? phi( main::@36/(byte) render_screen_show#56 ) - (byte) next_piece_idx#45 ? phi( main::@36/(byte) next_piece_idx#55 ) - (byte) current_xpos#77 ? phi( main::@36/(byte) current_xpos#95 ) - (byte*) current_piece_gfx#62 ? phi( main::@36/(byte*) current_piece_gfx#78 ) - (byte) current_orientation#61 ? phi( main::@36/(byte) current_orientation#73 ) - (byte) current_piece_char#50 ? phi( main::@36/(byte) current_piece_char#65 ) - (byte*) current_piece#53 ? phi( main::@36/(byte*) current_piece#66 ) - (byte) level_bcd#55 ? phi( main::@36/(byte) level_bcd#66 ) - (byte) current_movedown_slow#61 ? phi( main::@36/(byte) current_movedown_slow#72 ) - (byte) level#56 ? phi( main::@36/(byte) level#69 ) - (dword) score_bcd#45 ? phi( main::@36/(dword) score_bcd#55 ) - (word) lines_bcd#45 ? phi( main::@36/(word) lines_bcd#55 ) - (byte) current_ypos#62 ? phi( main::@36/(byte) current_ypos#74 ) - (byte) current_movedown_counter#34 ? phi( main::@36/(byte) current_movedown_counter#40 ) - (byte) game_over#19 ? phi( main::@36/(byte) game_over#31 ) - (byte) keyboard_events_size#18 ? phi( main::@36/(byte) keyboard_events_size#5 ) - (byte) keyboard_event_get::return#5 ? phi( main::@36/(byte) keyboard_event_get::return#3 ) - (byte~) main::$13 ? (byte) keyboard_event_get::return#5 - (byte) keyboard_events_size#7 ? (byte) keyboard_events_size#18 - (byte) main::key_event#0 ? (byte~) main::$13 - (byte) main::render#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) main::$14 ? (byte) game_over#19 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#50 ← phi( main::@36/(byte) keyboard_modifiers#7 ) + (byte) render_screen_showing#36 ← phi( main::@36/(byte) render_screen_showing#40 ) + (byte) render_screen_render#56 ← phi( main::@36/(byte) render_screen_render#59 ) + (byte) render_screen_show#52 ← phi( main::@36/(byte) render_screen_show#56 ) + (byte) next_piece_idx#45 ← phi( main::@36/(byte) next_piece_idx#55 ) + (byte) current_xpos#77 ← phi( main::@36/(byte) current_xpos#95 ) + (byte*) current_piece_gfx#62 ← phi( main::@36/(byte*) current_piece_gfx#78 ) + (byte) current_orientation#61 ← phi( main::@36/(byte) current_orientation#73 ) + (byte) current_piece_char#50 ← phi( main::@36/(byte) current_piece_char#65 ) + (byte*) current_piece#53 ← phi( main::@36/(byte*) current_piece#66 ) + (byte) level_bcd#55 ← phi( main::@36/(byte) level_bcd#66 ) + (byte) current_movedown_slow#61 ← phi( main::@36/(byte) current_movedown_slow#72 ) + (byte) level#56 ← phi( main::@36/(byte) level#69 ) + (dword) score_bcd#45 ← phi( main::@36/(dword) score_bcd#55 ) + (word) lines_bcd#45 ← phi( main::@36/(word) lines_bcd#55 ) + (byte) current_ypos#62 ← phi( main::@36/(byte) current_ypos#74 ) + (byte) current_movedown_counter#34 ← phi( main::@36/(byte) current_movedown_counter#40 ) + (byte) game_over#19 ← phi( main::@36/(byte) game_over#31 ) + (byte) keyboard_events_size#18 ← phi( main::@36/(byte) keyboard_events_size#5 ) + (byte) keyboard_event_get::return#5 ← phi( main::@36/(byte) keyboard_event_get::return#3 ) + (byte~) main::$13 ← (byte) keyboard_event_get::return#5 + (byte) keyboard_events_size#7 ← (byte) keyboard_events_size#18 + (byte) main::key_event#0 ← (byte~) main::$13 + (byte) main::render#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) main::$14 ← (byte) game_over#19 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) main::$14) goto main::@11 to:main::@12 main::@11: scope:[main] from main::@37 - (byte) keyboard_modifiers#48 ? phi( main::@37/(byte) keyboard_modifiers#50 ) - (byte) keyboard_events_size#60 ? phi( main::@37/(byte) keyboard_events_size#7 ) - (byte) render_screen_showing#34 ? phi( main::@37/(byte) render_screen_showing#36 ) - (byte) render_screen_render#54 ? phi( main::@37/(byte) render_screen_render#56 ) - (byte) render_screen_show#50 ? phi( main::@37/(byte) render_screen_show#52 ) - (byte) next_piece_idx#33 ? phi( main::@37/(byte) next_piece_idx#45 ) - (byte) game_over#32 ? phi( main::@37/(byte) game_over#19 ) - (byte) current_xpos#56 ? phi( main::@37/(byte) current_xpos#77 ) - (byte*) current_piece_gfx#43 ? phi( main::@37/(byte*) current_piece_gfx#62 ) - (byte) current_orientation#47 ? phi( main::@37/(byte) current_orientation#61 ) - (byte) current_piece_char#34 ? phi( main::@37/(byte) current_piece_char#50 ) - (byte*) current_piece#37 ? phi( main::@37/(byte*) current_piece#53 ) - (byte) level_bcd#39 ? phi( main::@37/(byte) level_bcd#55 ) - (byte) current_movedown_slow#44 ? phi( main::@37/(byte) current_movedown_slow#61 ) - (byte) level#39 ? phi( main::@37/(byte) level#56 ) - (dword) score_bcd#32 ? phi( main::@37/(dword) score_bcd#45 ) - (word) lines_bcd#32 ? phi( main::@37/(word) lines_bcd#45 ) - (byte) current_ypos#47 ? phi( main::@37/(byte) current_ypos#62 ) - (byte) current_movedown_counter#25 ? phi( main::@37/(byte) current_movedown_counter#34 ) - (byte) main::key_event#1 ? phi( main::@37/(byte) main::key_event#0 ) - (byte) play_movement::key_event#0 ? (byte) main::key_event#1 + (byte) keyboard_modifiers#48 ← phi( main::@37/(byte) keyboard_modifiers#50 ) + (byte) keyboard_events_size#60 ← phi( main::@37/(byte) keyboard_events_size#7 ) + (byte) render_screen_showing#34 ← phi( main::@37/(byte) render_screen_showing#36 ) + (byte) render_screen_render#54 ← phi( main::@37/(byte) render_screen_render#56 ) + (byte) render_screen_show#50 ← phi( main::@37/(byte) render_screen_show#52 ) + (byte) next_piece_idx#33 ← phi( main::@37/(byte) next_piece_idx#45 ) + (byte) game_over#32 ← phi( main::@37/(byte) game_over#19 ) + (byte) current_xpos#56 ← phi( main::@37/(byte) current_xpos#77 ) + (byte*) current_piece_gfx#43 ← phi( main::@37/(byte*) current_piece_gfx#62 ) + (byte) current_orientation#47 ← phi( main::@37/(byte) current_orientation#61 ) + (byte) current_piece_char#34 ← phi( main::@37/(byte) current_piece_char#50 ) + (byte*) current_piece#37 ← phi( main::@37/(byte*) current_piece#53 ) + (byte) level_bcd#39 ← phi( main::@37/(byte) level_bcd#55 ) + (byte) current_movedown_slow#44 ← phi( main::@37/(byte) current_movedown_slow#61 ) + (byte) level#39 ← phi( main::@37/(byte) level#56 ) + (dword) score_bcd#32 ← phi( main::@37/(dword) score_bcd#45 ) + (word) lines_bcd#32 ← phi( main::@37/(word) lines_bcd#45 ) + (byte) current_ypos#47 ← phi( main::@37/(byte) current_ypos#62 ) + (byte) current_movedown_counter#25 ← phi( main::@37/(byte) current_movedown_counter#34 ) + (byte) main::key_event#1 ← phi( main::@37/(byte) main::key_event#0 ) + (byte) play_movement::key_event#0 ← (byte) main::key_event#1 call play_movement - (byte) play_movement::return#3 ? (byte) play_movement::return#2 + (byte) play_movement::return#3 ← (byte) play_movement::return#2 to:main::@38 main::@38: scope:[main] from main::@11 - (byte) keyboard_modifiers#44 ? phi( main::@11/(byte) keyboard_modifiers#48 ) - (byte) keyboard_events_size#53 ? phi( main::@11/(byte) keyboard_events_size#60 ) - (byte) render_screen_showing#30 ? phi( main::@11/(byte) render_screen_showing#34 ) - (byte) render_screen_render#51 ? phi( main::@11/(byte) render_screen_render#54 ) - (byte) render_screen_show#46 ? phi( main::@11/(byte) render_screen_show#50 ) - (byte) next_piece_idx#21 ? phi( main::@11/(byte) next_piece_idx#2 ) - (byte) game_over#20 ? phi( main::@11/(byte) game_over#2 ) - (byte) current_xpos#33 ? phi( main::@11/(byte) current_xpos#3 ) - (byte*) current_piece_gfx#26 ? phi( main::@11/(byte*) current_piece_gfx#3 ) - (byte) current_orientation#29 ? phi( main::@11/(byte) current_orientation#3 ) - (byte) current_piece_char#21 ? phi( main::@11/(byte) current_piece_char#2 ) - (byte*) current_piece#21 ? phi( main::@11/(byte*) current_piece#2 ) - (byte) level_bcd#23 ? phi( main::@11/(byte) level_bcd#2 ) - (byte) current_movedown_slow#26 ? phi( main::@11/(byte) current_movedown_slow#4 ) - (byte) level#23 ? phi( main::@11/(byte) level#2 ) - (dword) score_bcd#17 ? phi( main::@11/(dword) score_bcd#2 ) - (word) lines_bcd#18 ? phi( main::@11/(word) lines_bcd#2 ) - (byte) current_ypos#27 ? phi( main::@11/(byte) current_ypos#2 ) - (byte) current_movedown_counter#15 ? phi( main::@11/(byte) current_movedown_counter#2 ) - (byte) play_movement::return#5 ? phi( main::@11/(byte) play_movement::return#3 ) - (byte~) main::$15 ? (byte) play_movement::return#5 - (byte) current_movedown_counter#6 ? (byte) current_movedown_counter#15 - (byte) current_ypos#10 ? (byte) current_ypos#27 - (word) lines_bcd#7 ? (word) lines_bcd#18 - (dword) score_bcd#7 ? (dword) score_bcd#17 - (byte) level#9 ? (byte) level#23 - (byte) current_movedown_slow#13 ? (byte) current_movedown_slow#26 - (byte) level_bcd#10 ? (byte) level_bcd#23 - (byte*) current_piece#9 ? (byte*) current_piece#21 - (byte) current_piece_char#9 ? (byte) current_piece_char#21 - (byte) current_orientation#12 ? (byte) current_orientation#29 - (byte*) current_piece_gfx#12 ? (byte*) current_piece_gfx#26 - (byte) current_xpos#13 ? (byte) current_xpos#33 - (byte) game_over#9 ? (byte) game_over#20 - (byte) next_piece_idx#9 ? (byte) next_piece_idx#21 - (byte) main::render#1 ? (byte~) main::$15 + (byte) keyboard_modifiers#44 ← phi( main::@11/(byte) keyboard_modifiers#48 ) + (byte) keyboard_events_size#53 ← phi( main::@11/(byte) keyboard_events_size#60 ) + (byte) render_screen_showing#30 ← phi( main::@11/(byte) render_screen_showing#34 ) + (byte) render_screen_render#51 ← phi( main::@11/(byte) render_screen_render#54 ) + (byte) render_screen_show#46 ← phi( main::@11/(byte) render_screen_show#50 ) + (byte) next_piece_idx#21 ← phi( main::@11/(byte) next_piece_idx#2 ) + (byte) game_over#20 ← phi( main::@11/(byte) game_over#2 ) + (byte) current_xpos#33 ← phi( main::@11/(byte) current_xpos#3 ) + (byte*) current_piece_gfx#26 ← phi( main::@11/(byte*) current_piece_gfx#3 ) + (byte) current_orientation#29 ← phi( main::@11/(byte) current_orientation#3 ) + (byte) current_piece_char#21 ← phi( main::@11/(byte) current_piece_char#2 ) + (byte*) current_piece#21 ← phi( main::@11/(byte*) current_piece#2 ) + (byte) level_bcd#23 ← phi( main::@11/(byte) level_bcd#2 ) + (byte) current_movedown_slow#26 ← phi( main::@11/(byte) current_movedown_slow#4 ) + (byte) level#23 ← phi( main::@11/(byte) level#2 ) + (dword) score_bcd#17 ← phi( main::@11/(dword) score_bcd#2 ) + (word) lines_bcd#18 ← phi( main::@11/(word) lines_bcd#2 ) + (byte) current_ypos#27 ← phi( main::@11/(byte) current_ypos#2 ) + (byte) current_movedown_counter#15 ← phi( main::@11/(byte) current_movedown_counter#2 ) + (byte) play_movement::return#5 ← phi( main::@11/(byte) play_movement::return#3 ) + (byte~) main::$15 ← (byte) play_movement::return#5 + (byte) current_movedown_counter#6 ← (byte) current_movedown_counter#15 + (byte) current_ypos#10 ← (byte) current_ypos#27 + (word) lines_bcd#7 ← (word) lines_bcd#18 + (dword) score_bcd#7 ← (dword) score_bcd#17 + (byte) level#9 ← (byte) level#23 + (byte) current_movedown_slow#13 ← (byte) current_movedown_slow#26 + (byte) level_bcd#10 ← (byte) level_bcd#23 + (byte*) current_piece#9 ← (byte*) current_piece#21 + (byte) current_piece_char#9 ← (byte) current_piece_char#21 + (byte) current_orientation#12 ← (byte) current_orientation#29 + (byte*) current_piece_gfx#12 ← (byte*) current_piece_gfx#26 + (byte) current_xpos#13 ← (byte) current_xpos#33 + (byte) game_over#9 ← (byte) game_over#20 + (byte) next_piece_idx#9 ← (byte) next_piece_idx#21 + (byte) main::render#1 ← (byte~) main::$15 to:main::@19 main::@12: scope:[main] from main::@13 main::@37 - (byte) level_bcd#77 ? phi( main::@13/(byte) level_bcd#85 main::@37/(byte) level_bcd#55 ) - (byte) level#84 ? phi( main::@13/(byte) level#94 main::@37/(byte) level#56 ) - (dword) score_bcd#65 ? phi( main::@13/(dword) score_bcd#72 main::@37/(dword) score_bcd#45 ) - (word) lines_bcd#67 ? phi( main::@13/(word) lines_bcd#75 main::@37/(word) lines_bcd#45 ) - (byte) current_movedown_counter#45 ? phi( main::@13/(byte) current_movedown_counter#49 main::@37/(byte) current_movedown_counter#34 ) - (byte) keyboard_modifiers#43 ? phi( main::@13/(byte) keyboard_modifiers#49 main::@37/(byte) keyboard_modifiers#50 ) - (byte) keyboard_events_size#52 ? phi( main::@13/(byte) keyboard_events_size#61 main::@37/(byte) keyboard_events_size#7 ) - (byte) render_screen_showing#29 ? phi( main::@13/(byte) render_screen_showing#35 main::@37/(byte) render_screen_showing#36 ) - (byte) next_piece_idx#66 ? phi( main::@13/(byte) next_piece_idx#73 main::@37/(byte) next_piece_idx#45 ) - (byte) game_over#70 ? phi( main::@13/(byte) game_over#79 main::@37/(byte) game_over#19 ) - (byte) current_ypos#85 ? phi( main::@13/(byte) current_ypos#92 main::@37/(byte) current_ypos#62 ) - (byte) current_xpos#108 ? phi( main::@13/(byte) current_xpos#116 main::@37/(byte) current_xpos#77 ) - (byte*) current_piece_gfx#96 ? phi( main::@13/(byte*) current_piece_gfx#103 main::@37/(byte*) current_piece_gfx#62 ) - (byte) current_orientation#85 ? phi( main::@13/(byte) current_orientation#91 main::@37/(byte) current_orientation#61 ) - (byte) current_piece_char#82 ? phi( main::@13/(byte) current_piece_char#91 main::@37/(byte) current_piece_char#50 ) - (byte*) current_piece#79 ? phi( main::@13/(byte*) current_piece#85 main::@37/(byte*) current_piece#53 ) - (byte) current_movedown_slow#81 ? phi( main::@13/(byte) current_movedown_slow#86 main::@37/(byte) current_movedown_slow#61 ) - (byte) render_screen_render#50 ? phi( main::@13/(byte) render_screen_render#55 main::@37/(byte) render_screen_render#56 ) - (byte) render_screen_show#45 ? phi( main::@13/(byte) render_screen_show#51 main::@37/(byte) render_screen_show#52 ) - (byte) main::render#3 ? phi( main::@13/(byte) main::render#4 main::@37/(byte) main::render#0 ) + (byte) level_bcd#77 ← phi( main::@13/(byte) level_bcd#85 main::@37/(byte) level_bcd#55 ) + (byte) level#84 ← phi( main::@13/(byte) level#94 main::@37/(byte) level#56 ) + (dword) score_bcd#65 ← phi( main::@13/(dword) score_bcd#72 main::@37/(dword) score_bcd#45 ) + (word) lines_bcd#67 ← phi( main::@13/(word) lines_bcd#75 main::@37/(word) lines_bcd#45 ) + (byte) current_movedown_counter#45 ← phi( main::@13/(byte) current_movedown_counter#49 main::@37/(byte) current_movedown_counter#34 ) + (byte) keyboard_modifiers#43 ← phi( main::@13/(byte) keyboard_modifiers#49 main::@37/(byte) keyboard_modifiers#50 ) + (byte) keyboard_events_size#52 ← phi( main::@13/(byte) keyboard_events_size#61 main::@37/(byte) keyboard_events_size#7 ) + (byte) render_screen_showing#29 ← phi( main::@13/(byte) render_screen_showing#35 main::@37/(byte) render_screen_showing#36 ) + (byte) next_piece_idx#66 ← phi( main::@13/(byte) next_piece_idx#73 main::@37/(byte) next_piece_idx#45 ) + (byte) game_over#70 ← phi( main::@13/(byte) game_over#79 main::@37/(byte) game_over#19 ) + (byte) current_ypos#85 ← phi( main::@13/(byte) current_ypos#92 main::@37/(byte) current_ypos#62 ) + (byte) current_xpos#108 ← phi( main::@13/(byte) current_xpos#116 main::@37/(byte) current_xpos#77 ) + (byte*) current_piece_gfx#96 ← phi( main::@13/(byte*) current_piece_gfx#103 main::@37/(byte*) current_piece_gfx#62 ) + (byte) current_orientation#85 ← phi( main::@13/(byte) current_orientation#91 main::@37/(byte) current_orientation#61 ) + (byte) current_piece_char#82 ← phi( main::@13/(byte) current_piece_char#91 main::@37/(byte) current_piece_char#50 ) + (byte*) current_piece#79 ← phi( main::@13/(byte*) current_piece#85 main::@37/(byte*) current_piece#53 ) + (byte) current_movedown_slow#81 ← phi( main::@13/(byte) current_movedown_slow#86 main::@37/(byte) current_movedown_slow#61 ) + (byte) render_screen_render#50 ← phi( main::@13/(byte) render_screen_render#55 main::@37/(byte) render_screen_render#56 ) + (byte) render_screen_show#45 ← phi( main::@13/(byte) render_screen_show#51 main::@37/(byte) render_screen_show#52 ) + (byte) main::render#3 ← phi( main::@13/(byte) main::render#4 main::@37/(byte) main::render#0 ) if(true) goto main::@13 to:main::@19 main::@13: scope:[main] from main::@12 - (byte) level_bcd#85 ? phi( main::@12/(byte) level_bcd#77 ) - (byte) level#94 ? phi( main::@12/(byte) level#84 ) - (dword) score_bcd#72 ? phi( main::@12/(dword) score_bcd#65 ) - (word) lines_bcd#75 ? phi( main::@12/(word) lines_bcd#67 ) - (byte) current_movedown_counter#49 ? phi( main::@12/(byte) current_movedown_counter#45 ) - (byte) keyboard_modifiers#49 ? phi( main::@12/(byte) keyboard_modifiers#43 ) - (byte) keyboard_events_size#61 ? phi( main::@12/(byte) keyboard_events_size#52 ) - (byte) render_screen_showing#35 ? phi( main::@12/(byte) render_screen_showing#29 ) - (byte) next_piece_idx#73 ? phi( main::@12/(byte) next_piece_idx#66 ) - (byte) game_over#79 ? phi( main::@12/(byte) game_over#70 ) - (byte) current_ypos#92 ? phi( main::@12/(byte) current_ypos#85 ) - (byte) current_xpos#116 ? phi( main::@12/(byte) current_xpos#108 ) - (byte*) current_piece_gfx#103 ? phi( main::@12/(byte*) current_piece_gfx#96 ) - (byte) current_orientation#91 ? phi( main::@12/(byte) current_orientation#85 ) - (byte) current_piece_char#91 ? phi( main::@12/(byte) current_piece_char#82 ) - (byte*) current_piece#85 ? phi( main::@12/(byte*) current_piece#79 ) - (byte) current_movedown_slow#86 ? phi( main::@12/(byte) current_movedown_slow#81 ) - (byte) render_screen_render#55 ? phi( main::@12/(byte) render_screen_render#50 ) - (byte) render_screen_show#51 ? phi( main::@12/(byte) render_screen_show#45 ) - (byte) main::render#4 ? phi( main::@12/(byte) main::render#3 ) - *((byte*) BORDERCOL#0) ? ++ *((byte*) BORDERCOL#0) + (byte) level_bcd#85 ← phi( main::@12/(byte) level_bcd#77 ) + (byte) level#94 ← phi( main::@12/(byte) level#84 ) + (dword) score_bcd#72 ← phi( main::@12/(dword) score_bcd#65 ) + (word) lines_bcd#75 ← phi( main::@12/(word) lines_bcd#67 ) + (byte) current_movedown_counter#49 ← phi( main::@12/(byte) current_movedown_counter#45 ) + (byte) keyboard_modifiers#49 ← phi( main::@12/(byte) keyboard_modifiers#43 ) + (byte) keyboard_events_size#61 ← phi( main::@12/(byte) keyboard_events_size#52 ) + (byte) render_screen_showing#35 ← phi( main::@12/(byte) render_screen_showing#29 ) + (byte) next_piece_idx#73 ← phi( main::@12/(byte) next_piece_idx#66 ) + (byte) game_over#79 ← phi( main::@12/(byte) game_over#70 ) + (byte) current_ypos#92 ← phi( main::@12/(byte) current_ypos#85 ) + (byte) current_xpos#116 ← phi( main::@12/(byte) current_xpos#108 ) + (byte*) current_piece_gfx#103 ← phi( main::@12/(byte*) current_piece_gfx#96 ) + (byte) current_orientation#91 ← phi( main::@12/(byte) current_orientation#85 ) + (byte) current_piece_char#91 ← phi( main::@12/(byte) current_piece_char#82 ) + (byte*) current_piece#85 ← phi( main::@12/(byte*) current_piece#79 ) + (byte) current_movedown_slow#86 ← phi( main::@12/(byte) current_movedown_slow#81 ) + (byte) render_screen_render#55 ← phi( main::@12/(byte) render_screen_render#50 ) + (byte) render_screen_show#51 ← phi( main::@12/(byte) render_screen_show#45 ) + (byte) main::render#4 ← phi( main::@12/(byte) main::render#3 ) + *((byte*) BORDERCOL#0) ← ++ *((byte*) BORDERCOL#0) to:main::@12 main::@19: scope:[main] from main::@12 main::@38 - (byte) level_bcd#67 ? phi( main::@12/(byte) level_bcd#77 main::@38/(byte) level_bcd#10 ) - (byte) level#70 ? phi( main::@12/(byte) level#84 main::@38/(byte) level#9 ) - (dword) score_bcd#56 ? phi( main::@12/(dword) score_bcd#65 main::@38/(dword) score_bcd#7 ) - (word) lines_bcd#56 ? phi( main::@12/(word) lines_bcd#67 main::@38/(word) lines_bcd#7 ) - (byte) current_movedown_counter#41 ? phi( main::@12/(byte) current_movedown_counter#45 main::@38/(byte) current_movedown_counter#6 ) - (byte) keyboard_modifiers#37 ? phi( main::@12/(byte) keyboard_modifiers#43 main::@38/(byte) keyboard_modifiers#44 ) - (byte) keyboard_events_size#43 ? phi( main::@12/(byte) keyboard_events_size#52 main::@38/(byte) keyboard_events_size#53 ) - (byte) render_screen_showing#25 ? phi( main::@12/(byte) render_screen_showing#29 main::@38/(byte) render_screen_showing#30 ) - (byte) next_piece_idx#56 ? phi( main::@12/(byte) next_piece_idx#66 main::@38/(byte) next_piece_idx#9 ) - (byte) game_over#57 ? phi( main::@12/(byte) game_over#70 main::@38/(byte) game_over#9 ) - (byte) current_ypos#75 ? phi( main::@12/(byte) current_ypos#85 main::@38/(byte) current_ypos#10 ) - (byte) current_xpos#96 ? phi( main::@12/(byte) current_xpos#108 main::@38/(byte) current_xpos#13 ) - (byte*) current_piece_gfx#79 ? phi( main::@12/(byte*) current_piece_gfx#96 main::@38/(byte*) current_piece_gfx#12 ) - (byte) current_orientation#74 ? phi( main::@12/(byte) current_orientation#85 main::@38/(byte) current_orientation#12 ) - (byte) current_piece_char#66 ? phi( main::@12/(byte) current_piece_char#82 main::@38/(byte) current_piece_char#9 ) - (byte*) current_piece#67 ? phi( main::@12/(byte*) current_piece#79 main::@38/(byte*) current_piece#9 ) - (byte) current_movedown_slow#73 ? phi( main::@12/(byte) current_movedown_slow#81 main::@38/(byte) current_movedown_slow#13 ) - (byte) render_screen_render#45 ? phi( main::@12/(byte) render_screen_render#50 main::@38/(byte) render_screen_render#51 ) - (byte) render_screen_show#39 ? phi( main::@12/(byte) render_screen_show#45 main::@38/(byte) render_screen_show#46 ) - (byte) main::render#2 ? phi( main::@12/(byte) main::render#3 main::@38/(byte) main::render#1 ) - (bool~) main::$16 ? (byte) main::render#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) main::$17 ? ! (bool~) main::$16 + (byte) level_bcd#67 ← phi( main::@12/(byte) level_bcd#77 main::@38/(byte) level_bcd#10 ) + (byte) level#70 ← phi( main::@12/(byte) level#84 main::@38/(byte) level#9 ) + (dword) score_bcd#56 ← phi( main::@12/(dword) score_bcd#65 main::@38/(dword) score_bcd#7 ) + (word) lines_bcd#56 ← phi( main::@12/(word) lines_bcd#67 main::@38/(word) lines_bcd#7 ) + (byte) current_movedown_counter#41 ← phi( main::@12/(byte) current_movedown_counter#45 main::@38/(byte) current_movedown_counter#6 ) + (byte) keyboard_modifiers#37 ← phi( main::@12/(byte) keyboard_modifiers#43 main::@38/(byte) keyboard_modifiers#44 ) + (byte) keyboard_events_size#43 ← phi( main::@12/(byte) keyboard_events_size#52 main::@38/(byte) keyboard_events_size#53 ) + (byte) render_screen_showing#25 ← phi( main::@12/(byte) render_screen_showing#29 main::@38/(byte) render_screen_showing#30 ) + (byte) next_piece_idx#56 ← phi( main::@12/(byte) next_piece_idx#66 main::@38/(byte) next_piece_idx#9 ) + (byte) game_over#57 ← phi( main::@12/(byte) game_over#70 main::@38/(byte) game_over#9 ) + (byte) current_ypos#75 ← phi( main::@12/(byte) current_ypos#85 main::@38/(byte) current_ypos#10 ) + (byte) current_xpos#96 ← phi( main::@12/(byte) current_xpos#108 main::@38/(byte) current_xpos#13 ) + (byte*) current_piece_gfx#79 ← phi( main::@12/(byte*) current_piece_gfx#96 main::@38/(byte*) current_piece_gfx#12 ) + (byte) current_orientation#74 ← phi( main::@12/(byte) current_orientation#85 main::@38/(byte) current_orientation#12 ) + (byte) current_piece_char#66 ← phi( main::@12/(byte) current_piece_char#82 main::@38/(byte) current_piece_char#9 ) + (byte*) current_piece#67 ← phi( main::@12/(byte*) current_piece#79 main::@38/(byte*) current_piece#9 ) + (byte) current_movedown_slow#73 ← phi( main::@12/(byte) current_movedown_slow#81 main::@38/(byte) current_movedown_slow#13 ) + (byte) render_screen_render#45 ← phi( main::@12/(byte) render_screen_render#50 main::@38/(byte) render_screen_render#51 ) + (byte) render_screen_show#39 ← phi( main::@12/(byte) render_screen_show#45 main::@38/(byte) render_screen_show#46 ) + (byte) main::render#2 ← phi( main::@12/(byte) main::render#3 main::@38/(byte) main::render#1 ) + (bool~) main::$16 ← (byte) main::render#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) main::$17 ← ! (bool~) main::$16 if((bool~) main::$17) goto main::@20 to:main::@23 main::@20: scope:[main] from main::@19 - (byte) level_bcd#52 ? phi( main::@19/(byte) level_bcd#67 ) - (byte) level#53 ? phi( main::@19/(byte) level#70 ) - (dword) score_bcd#42 ? phi( main::@19/(dword) score_bcd#56 ) - (word) lines_bcd#42 ? phi( main::@19/(word) lines_bcd#56 ) - (byte) current_movedown_counter#31 ? phi( main::@19/(byte) current_movedown_counter#41 ) - (byte) keyboard_modifiers#29 ? phi( main::@19/(byte) keyboard_modifiers#37 ) - (byte) keyboard_events_size#32 ? phi( main::@19/(byte) keyboard_events_size#43 ) - (byte) render_screen_showing#16 ? phi( main::@19/(byte) render_screen_showing#25 ) - (byte) next_piece_idx#42 ? phi( main::@19/(byte) next_piece_idx#56 ) - (byte) game_over#41 ? phi( main::@19/(byte) game_over#57 ) - (byte) current_ypos#59 ? phi( main::@19/(byte) current_ypos#75 ) - (byte) current_xpos#74 ? phi( main::@19/(byte) current_xpos#96 ) - (byte*) current_piece_gfx#59 ? phi( main::@19/(byte*) current_piece_gfx#79 ) - (byte) current_orientation#58 ? phi( main::@19/(byte) current_orientation#74 ) - (byte) current_piece_char#47 ? phi( main::@19/(byte) current_piece_char#66 ) - (byte*) current_piece#50 ? phi( main::@19/(byte*) current_piece#67 ) - (byte) current_movedown_slow#58 ? phi( main::@19/(byte) current_movedown_slow#73 ) - (byte) render_screen_render#37 ? phi( main::@19/(byte) render_screen_render#45 ) - (byte) render_screen_show#28 ? phi( main::@19/(byte) render_screen_show#39 ) + (byte) level_bcd#52 ← phi( main::@19/(byte) level_bcd#67 ) + (byte) level#53 ← phi( main::@19/(byte) level#70 ) + (dword) score_bcd#42 ← phi( main::@19/(dword) score_bcd#56 ) + (word) lines_bcd#42 ← phi( main::@19/(word) lines_bcd#56 ) + (byte) current_movedown_counter#31 ← phi( main::@19/(byte) current_movedown_counter#41 ) + (byte) keyboard_modifiers#29 ← phi( main::@19/(byte) keyboard_modifiers#37 ) + (byte) keyboard_events_size#32 ← phi( main::@19/(byte) keyboard_events_size#43 ) + (byte) render_screen_showing#16 ← phi( main::@19/(byte) render_screen_showing#25 ) + (byte) next_piece_idx#42 ← phi( main::@19/(byte) next_piece_idx#56 ) + (byte) game_over#41 ← phi( main::@19/(byte) game_over#57 ) + (byte) current_ypos#59 ← phi( main::@19/(byte) current_ypos#75 ) + (byte) current_xpos#74 ← phi( main::@19/(byte) current_xpos#96 ) + (byte*) current_piece_gfx#59 ← phi( main::@19/(byte*) current_piece_gfx#79 ) + (byte) current_orientation#58 ← phi( main::@19/(byte) current_orientation#74 ) + (byte) current_piece_char#47 ← phi( main::@19/(byte) current_piece_char#66 ) + (byte*) current_piece#50 ← phi( main::@19/(byte*) current_piece#67 ) + (byte) current_movedown_slow#58 ← phi( main::@19/(byte) current_movedown_slow#73 ) + (byte) render_screen_render#37 ← phi( main::@19/(byte) render_screen_render#45 ) + (byte) render_screen_show#28 ← phi( main::@19/(byte) render_screen_show#39 ) to:main::@1 main::@23: scope:[main] from main::@19 - (byte) level_bcd#100 ? phi( main::@19/(byte) level_bcd#67 ) - (byte) level#108 ? phi( main::@19/(byte) level#70 ) - (word) lines_bcd#87 ? phi( main::@19/(word) lines_bcd#56 ) - (byte) current_movedown_counter#57 ? phi( main::@19/(byte) current_movedown_counter#41 ) - (byte) keyboard_modifiers#57 ? phi( main::@19/(byte) keyboard_modifiers#37 ) - (byte) keyboard_events_size#73 ? phi( main::@19/(byte) keyboard_events_size#43 ) - (byte) render_screen_showing#44 ? phi( main::@19/(byte) render_screen_showing#25 ) - (byte) game_over#87 ? phi( main::@19/(byte) game_over#57 ) - (byte) current_orientation#98 ? phi( main::@19/(byte) current_orientation#74 ) - (byte*) current_piece#94 ? phi( main::@19/(byte*) current_piece#67 ) - (byte) current_movedown_slow#93 ? phi( main::@19/(byte) current_movedown_slow#73 ) - (dword) score_bcd#79 ? phi( main::@19/(dword) score_bcd#56 ) - (byte) current_piece_char#98 ? phi( main::@19/(byte) current_piece_char#66 ) - (byte) render_screen_show#53 ? phi( main::@19/(byte) render_screen_show#39 ) - (byte) next_piece_idx#74 ? phi( main::@19/(byte) next_piece_idx#56 ) - (byte*) current_piece_gfx#104 ? phi( main::@19/(byte*) current_piece_gfx#79 ) - (byte) current_xpos#109 ? phi( main::@19/(byte) current_xpos#96 ) - (byte) current_ypos#63 ? phi( main::@19/(byte) current_ypos#75 ) - (byte) render_screen_render#30 ? phi( main::@19/(byte) render_screen_render#45 ) + (byte) level_bcd#100 ← phi( main::@19/(byte) level_bcd#67 ) + (byte) level#108 ← phi( main::@19/(byte) level#70 ) + (word) lines_bcd#87 ← phi( main::@19/(word) lines_bcd#56 ) + (byte) current_movedown_counter#57 ← phi( main::@19/(byte) current_movedown_counter#41 ) + (byte) keyboard_modifiers#57 ← phi( main::@19/(byte) keyboard_modifiers#37 ) + (byte) keyboard_events_size#73 ← phi( main::@19/(byte) keyboard_events_size#43 ) + (byte) render_screen_showing#44 ← phi( main::@19/(byte) render_screen_showing#25 ) + (byte) game_over#87 ← phi( main::@19/(byte) game_over#57 ) + (byte) current_orientation#98 ← phi( main::@19/(byte) current_orientation#74 ) + (byte*) current_piece#94 ← phi( main::@19/(byte*) current_piece#67 ) + (byte) current_movedown_slow#93 ← phi( main::@19/(byte) current_movedown_slow#73 ) + (dword) score_bcd#79 ← phi( main::@19/(dword) score_bcd#56 ) + (byte) current_piece_char#98 ← phi( main::@19/(byte) current_piece_char#66 ) + (byte) render_screen_show#53 ← phi( main::@19/(byte) render_screen_show#39 ) + (byte) next_piece_idx#74 ← phi( main::@19/(byte) next_piece_idx#56 ) + (byte*) current_piece_gfx#104 ← phi( main::@19/(byte*) current_piece_gfx#79 ) + (byte) current_xpos#109 ← phi( main::@19/(byte) current_xpos#96 ) + (byte) current_ypos#63 ← phi( main::@19/(byte) current_ypos#75 ) + (byte) render_screen_render#30 ← phi( main::@19/(byte) render_screen_render#45 ) call render_playfield to:main::@39 main::@39: scope:[main] from main::@23 - (byte) level_bcd#94 ? phi( main::@23/(byte) level_bcd#100 ) - (byte) level#102 ? phi( main::@23/(byte) level#108 ) - (word) lines_bcd#82 ? phi( main::@23/(word) lines_bcd#87 ) - (byte) current_movedown_counter#53 ? phi( main::@23/(byte) current_movedown_counter#57 ) - (byte) keyboard_modifiers#54 ? phi( main::@23/(byte) keyboard_modifiers#57 ) - (byte) keyboard_events_size#69 ? phi( main::@23/(byte) keyboard_events_size#73 ) - (byte) render_screen_showing#41 ? phi( main::@23/(byte) render_screen_showing#44 ) - (byte) game_over#85 ? phi( main::@23/(byte) game_over#87 ) - (byte) current_orientation#95 ? phi( main::@23/(byte) current_orientation#98 ) - (byte*) current_piece#91 ? phi( main::@23/(byte*) current_piece#94 ) - (byte) current_movedown_slow#90 ? phi( main::@23/(byte) current_movedown_slow#93 ) - (dword) score_bcd#73 ? phi( main::@23/(dword) score_bcd#79 ) - (byte) current_piece_char#84 ? phi( main::@23/(byte) current_piece_char#98 ) - (byte) render_screen_show#47 ? phi( main::@23/(byte) render_screen_show#53 ) - (byte) next_piece_idx#67 ? phi( main::@23/(byte) next_piece_idx#74 ) - (byte*) current_piece_gfx#82 ? phi( main::@23/(byte*) current_piece_gfx#104 ) - (byte) current_xpos#80 ? phi( main::@23/(byte) current_xpos#109 ) - (byte) render_screen_render#39 ? phi( main::@23/(byte) render_screen_render#30 ) - (byte) current_ypos#31 ? phi( main::@23/(byte) current_ypos#63 ) + (byte) level_bcd#94 ← phi( main::@23/(byte) level_bcd#100 ) + (byte) level#102 ← phi( main::@23/(byte) level#108 ) + (word) lines_bcd#82 ← phi( main::@23/(word) lines_bcd#87 ) + (byte) current_movedown_counter#53 ← phi( main::@23/(byte) current_movedown_counter#57 ) + (byte) keyboard_modifiers#54 ← phi( main::@23/(byte) keyboard_modifiers#57 ) + (byte) keyboard_events_size#69 ← phi( main::@23/(byte) keyboard_events_size#73 ) + (byte) render_screen_showing#41 ← phi( main::@23/(byte) render_screen_showing#44 ) + (byte) game_over#85 ← phi( main::@23/(byte) game_over#87 ) + (byte) current_orientation#95 ← phi( main::@23/(byte) current_orientation#98 ) + (byte*) current_piece#91 ← phi( main::@23/(byte*) current_piece#94 ) + (byte) current_movedown_slow#90 ← phi( main::@23/(byte) current_movedown_slow#93 ) + (dword) score_bcd#73 ← phi( main::@23/(dword) score_bcd#79 ) + (byte) current_piece_char#84 ← phi( main::@23/(byte) current_piece_char#98 ) + (byte) render_screen_show#47 ← phi( main::@23/(byte) render_screen_show#53 ) + (byte) next_piece_idx#67 ← phi( main::@23/(byte) next_piece_idx#74 ) + (byte*) current_piece_gfx#82 ← phi( main::@23/(byte*) current_piece_gfx#104 ) + (byte) current_xpos#80 ← phi( main::@23/(byte) current_xpos#109 ) + (byte) render_screen_render#39 ← phi( main::@23/(byte) render_screen_render#30 ) + (byte) current_ypos#31 ← phi( main::@23/(byte) current_ypos#63 ) call render_moving to:main::@40 main::@40: scope:[main] from main::@39 - (byte) level_bcd#86 ? phi( main::@39/(byte) level_bcd#94 ) - (byte) level#95 ? phi( main::@39/(byte) level#102 ) - (word) lines_bcd#76 ? phi( main::@39/(word) lines_bcd#82 ) - (byte) current_movedown_counter#50 ? phi( main::@39/(byte) current_movedown_counter#53 ) - (byte) keyboard_modifiers#51 ? phi( main::@39/(byte) keyboard_modifiers#54 ) - (byte) keyboard_events_size#62 ? phi( main::@39/(byte) keyboard_events_size#69 ) - (byte) render_screen_showing#37 ? phi( main::@39/(byte) render_screen_showing#41 ) - (byte) game_over#80 ? phi( main::@39/(byte) game_over#85 ) - (byte) current_ypos#93 ? phi( main::@39/(byte) current_ypos#31 ) - (byte) current_xpos#117 ? phi( main::@39/(byte) current_xpos#80 ) - (byte*) current_piece_gfx#105 ? phi( main::@39/(byte*) current_piece_gfx#82 ) - (byte) current_orientation#92 ? phi( main::@39/(byte) current_orientation#95 ) - (byte) current_piece_char#92 ? phi( main::@39/(byte) current_piece_char#84 ) - (byte*) current_piece#86 ? phi( main::@39/(byte*) current_piece#91 ) - (byte) current_movedown_slow#87 ? phi( main::@39/(byte) current_movedown_slow#90 ) - (dword) score_bcd#66 ? phi( main::@39/(dword) score_bcd#73 ) - (byte) render_screen_show#40 ? phi( main::@39/(byte) render_screen_show#47 ) - (byte) next_piece_idx#48 ? phi( main::@39/(byte) next_piece_idx#67 ) - (byte) render_screen_render#26 ? phi( main::@39/(byte) render_screen_render#39 ) + (byte) level_bcd#86 ← phi( main::@39/(byte) level_bcd#94 ) + (byte) level#95 ← phi( main::@39/(byte) level#102 ) + (word) lines_bcd#76 ← phi( main::@39/(word) lines_bcd#82 ) + (byte) current_movedown_counter#50 ← phi( main::@39/(byte) current_movedown_counter#53 ) + (byte) keyboard_modifiers#51 ← phi( main::@39/(byte) keyboard_modifiers#54 ) + (byte) keyboard_events_size#62 ← phi( main::@39/(byte) keyboard_events_size#69 ) + (byte) render_screen_showing#37 ← phi( main::@39/(byte) render_screen_showing#41 ) + (byte) game_over#80 ← phi( main::@39/(byte) game_over#85 ) + (byte) current_ypos#93 ← phi( main::@39/(byte) current_ypos#31 ) + (byte) current_xpos#117 ← phi( main::@39/(byte) current_xpos#80 ) + (byte*) current_piece_gfx#105 ← phi( main::@39/(byte*) current_piece_gfx#82 ) + (byte) current_orientation#92 ← phi( main::@39/(byte) current_orientation#95 ) + (byte) current_piece_char#92 ← phi( main::@39/(byte) current_piece_char#84 ) + (byte*) current_piece#86 ← phi( main::@39/(byte*) current_piece#91 ) + (byte) current_movedown_slow#87 ← phi( main::@39/(byte) current_movedown_slow#90 ) + (dword) score_bcd#66 ← phi( main::@39/(dword) score_bcd#73 ) + (byte) render_screen_show#40 ← phi( main::@39/(byte) render_screen_show#47 ) + (byte) next_piece_idx#48 ← phi( main::@39/(byte) next_piece_idx#67 ) + (byte) render_screen_render#26 ← phi( main::@39/(byte) render_screen_render#39 ) call render_next to:main::@41 main::@41: scope:[main] from main::@40 - (byte) level_bcd#78 ? phi( main::@40/(byte) level_bcd#86 ) - (byte) level#85 ? phi( main::@40/(byte) level#95 ) - (word) lines_bcd#68 ? phi( main::@40/(word) lines_bcd#76 ) - (byte) current_movedown_counter#46 ? phi( main::@40/(byte) current_movedown_counter#50 ) - (byte) keyboard_modifiers#45 ? phi( main::@40/(byte) keyboard_modifiers#51 ) - (byte) keyboard_events_size#54 ? phi( main::@40/(byte) keyboard_events_size#62 ) - (byte) render_screen_showing#31 ? phi( main::@40/(byte) render_screen_showing#37 ) - (byte) next_piece_idx#68 ? phi( main::@40/(byte) next_piece_idx#48 ) - (byte) game_over#71 ? phi( main::@40/(byte) game_over#80 ) - (byte) current_ypos#86 ? phi( main::@40/(byte) current_ypos#93 ) - (byte) current_xpos#110 ? phi( main::@40/(byte) current_xpos#117 ) - (byte*) current_piece_gfx#97 ? phi( main::@40/(byte*) current_piece_gfx#105 ) - (byte) current_orientation#86 ? phi( main::@40/(byte) current_orientation#92 ) - (byte) current_piece_char#83 ? phi( main::@40/(byte) current_piece_char#92 ) - (byte*) current_piece#80 ? phi( main::@40/(byte*) current_piece#86 ) - (byte) current_movedown_slow#82 ? phi( main::@40/(byte) current_movedown_slow#87 ) - (dword) score_bcd#47 ? phi( main::@40/(dword) score_bcd#66 ) - (byte) render_screen_show#31 ? phi( main::@40/(byte) render_screen_show#40 ) - (byte) render_screen_render#21 ? phi( main::@40/(byte) render_screen_render#26 ) + (byte) level_bcd#78 ← phi( main::@40/(byte) level_bcd#86 ) + (byte) level#85 ← phi( main::@40/(byte) level#95 ) + (word) lines_bcd#68 ← phi( main::@40/(word) lines_bcd#76 ) + (byte) current_movedown_counter#46 ← phi( main::@40/(byte) current_movedown_counter#50 ) + (byte) keyboard_modifiers#45 ← phi( main::@40/(byte) keyboard_modifiers#51 ) + (byte) keyboard_events_size#54 ← phi( main::@40/(byte) keyboard_events_size#62 ) + (byte) render_screen_showing#31 ← phi( main::@40/(byte) render_screen_showing#37 ) + (byte) next_piece_idx#68 ← phi( main::@40/(byte) next_piece_idx#48 ) + (byte) game_over#71 ← phi( main::@40/(byte) game_over#80 ) + (byte) current_ypos#86 ← phi( main::@40/(byte) current_ypos#93 ) + (byte) current_xpos#110 ← phi( main::@40/(byte) current_xpos#117 ) + (byte*) current_piece_gfx#97 ← phi( main::@40/(byte*) current_piece_gfx#105 ) + (byte) current_orientation#86 ← phi( main::@40/(byte) current_orientation#92 ) + (byte) current_piece_char#83 ← phi( main::@40/(byte) current_piece_char#92 ) + (byte*) current_piece#80 ← phi( main::@40/(byte*) current_piece#86 ) + (byte) current_movedown_slow#82 ← phi( main::@40/(byte) current_movedown_slow#87 ) + (dword) score_bcd#47 ← phi( main::@40/(dword) score_bcd#66 ) + (byte) render_screen_show#31 ← phi( main::@40/(byte) render_screen_show#40 ) + (byte) render_screen_render#21 ← phi( main::@40/(byte) render_screen_render#26 ) call render_score to:main::@42 main::@42: scope:[main] from main::@41 - (byte) level_bcd#68 ? phi( main::@41/(byte) level_bcd#78 ) - (byte) level#71 ? phi( main::@41/(byte) level#85 ) - (dword) score_bcd#57 ? phi( main::@41/(dword) score_bcd#47 ) - (word) lines_bcd#57 ? phi( main::@41/(word) lines_bcd#68 ) - (byte) current_movedown_counter#42 ? phi( main::@41/(byte) current_movedown_counter#46 ) - (byte) keyboard_modifiers#38 ? phi( main::@41/(byte) keyboard_modifiers#45 ) - (byte) keyboard_events_size#44 ? phi( main::@41/(byte) keyboard_events_size#54 ) - (byte) render_screen_showing#26 ? phi( main::@41/(byte) render_screen_showing#31 ) - (byte) next_piece_idx#57 ? phi( main::@41/(byte) next_piece_idx#68 ) - (byte) game_over#58 ? phi( main::@41/(byte) game_over#71 ) - (byte) current_ypos#76 ? phi( main::@41/(byte) current_ypos#86 ) - (byte) current_xpos#97 ? phi( main::@41/(byte) current_xpos#110 ) - (byte*) current_piece_gfx#80 ? phi( main::@41/(byte*) current_piece_gfx#97 ) - (byte) current_orientation#75 ? phi( main::@41/(byte) current_orientation#86 ) - (byte) current_piece_char#67 ? phi( main::@41/(byte) current_piece_char#83 ) - (byte*) current_piece#68 ? phi( main::@41/(byte*) current_piece#80 ) - (byte) current_movedown_slow#74 ? phi( main::@41/(byte) current_movedown_slow#82 ) - (byte) render_screen_show#21 ? phi( main::@41/(byte) render_screen_show#31 ) - (byte) render_screen_render#20 ? phi( main::@41/(byte) render_screen_render#21 ) + (byte) level_bcd#68 ← phi( main::@41/(byte) level_bcd#78 ) + (byte) level#71 ← phi( main::@41/(byte) level#85 ) + (dword) score_bcd#57 ← phi( main::@41/(dword) score_bcd#47 ) + (word) lines_bcd#57 ← phi( main::@41/(word) lines_bcd#68 ) + (byte) current_movedown_counter#42 ← phi( main::@41/(byte) current_movedown_counter#46 ) + (byte) keyboard_modifiers#38 ← phi( main::@41/(byte) keyboard_modifiers#45 ) + (byte) keyboard_events_size#44 ← phi( main::@41/(byte) keyboard_events_size#54 ) + (byte) render_screen_showing#26 ← phi( main::@41/(byte) render_screen_showing#31 ) + (byte) next_piece_idx#57 ← phi( main::@41/(byte) next_piece_idx#68 ) + (byte) game_over#58 ← phi( main::@41/(byte) game_over#71 ) + (byte) current_ypos#76 ← phi( main::@41/(byte) current_ypos#86 ) + (byte) current_xpos#97 ← phi( main::@41/(byte) current_xpos#110 ) + (byte*) current_piece_gfx#80 ← phi( main::@41/(byte*) current_piece_gfx#97 ) + (byte) current_orientation#75 ← phi( main::@41/(byte) current_orientation#86 ) + (byte) current_piece_char#67 ← phi( main::@41/(byte) current_piece_char#83 ) + (byte*) current_piece#68 ← phi( main::@41/(byte*) current_piece#80 ) + (byte) current_movedown_slow#74 ← phi( main::@41/(byte) current_movedown_slow#82 ) + (byte) render_screen_show#21 ← phi( main::@41/(byte) render_screen_show#31 ) + (byte) render_screen_render#20 ← phi( main::@41/(byte) render_screen_render#21 ) call render_screen_swap to:main::@43 main::@43: scope:[main] from main::@42 - (byte) level_bcd#54 ? phi( main::@42/(byte) level_bcd#68 ) - (byte) level#55 ? phi( main::@42/(byte) level#71 ) - (dword) score_bcd#44 ? phi( main::@42/(dword) score_bcd#57 ) - (word) lines_bcd#44 ? phi( main::@42/(word) lines_bcd#57 ) - (byte) current_movedown_counter#33 ? phi( main::@42/(byte) current_movedown_counter#42 ) - (byte) keyboard_modifiers#31 ? phi( main::@42/(byte) keyboard_modifiers#38 ) - (byte) keyboard_events_size#34 ? phi( main::@42/(byte) keyboard_events_size#44 ) - (byte) render_screen_showing#18 ? phi( main::@42/(byte) render_screen_showing#26 ) - (byte) next_piece_idx#44 ? phi( main::@42/(byte) next_piece_idx#57 ) - (byte) game_over#43 ? phi( main::@42/(byte) game_over#58 ) - (byte) current_ypos#61 ? phi( main::@42/(byte) current_ypos#76 ) - (byte) current_xpos#76 ? phi( main::@42/(byte) current_xpos#97 ) - (byte*) current_piece_gfx#61 ? phi( main::@42/(byte*) current_piece_gfx#80 ) - (byte) current_orientation#60 ? phi( main::@42/(byte) current_orientation#75 ) - (byte) current_piece_char#49 ? phi( main::@42/(byte) current_piece_char#67 ) - (byte*) current_piece#52 ? phi( main::@42/(byte*) current_piece#68 ) - (byte) current_movedown_slow#60 ? phi( main::@42/(byte) current_movedown_slow#74 ) - (byte) render_screen_show#15 ? phi( main::@42/(byte) render_screen_show#4 ) - (byte) render_screen_render#17 ? phi( main::@42/(byte) render_screen_render#4 ) - (byte) render_screen_render#6 ? (byte) render_screen_render#17 - (byte) render_screen_show#6 ? (byte) render_screen_show#15 + (byte) level_bcd#54 ← phi( main::@42/(byte) level_bcd#68 ) + (byte) level#55 ← phi( main::@42/(byte) level#71 ) + (dword) score_bcd#44 ← phi( main::@42/(dword) score_bcd#57 ) + (word) lines_bcd#44 ← phi( main::@42/(word) lines_bcd#57 ) + (byte) current_movedown_counter#33 ← phi( main::@42/(byte) current_movedown_counter#42 ) + (byte) keyboard_modifiers#31 ← phi( main::@42/(byte) keyboard_modifiers#38 ) + (byte) keyboard_events_size#34 ← phi( main::@42/(byte) keyboard_events_size#44 ) + (byte) render_screen_showing#18 ← phi( main::@42/(byte) render_screen_showing#26 ) + (byte) next_piece_idx#44 ← phi( main::@42/(byte) next_piece_idx#57 ) + (byte) game_over#43 ← phi( main::@42/(byte) game_over#58 ) + (byte) current_ypos#61 ← phi( main::@42/(byte) current_ypos#76 ) + (byte) current_xpos#76 ← phi( main::@42/(byte) current_xpos#97 ) + (byte*) current_piece_gfx#61 ← phi( main::@42/(byte*) current_piece_gfx#80 ) + (byte) current_orientation#60 ← phi( main::@42/(byte) current_orientation#75 ) + (byte) current_piece_char#49 ← phi( main::@42/(byte) current_piece_char#67 ) + (byte*) current_piece#52 ← phi( main::@42/(byte*) current_piece#68 ) + (byte) current_movedown_slow#60 ← phi( main::@42/(byte) current_movedown_slow#74 ) + (byte) render_screen_show#15 ← phi( main::@42/(byte) render_screen_show#4 ) + (byte) render_screen_render#17 ← phi( main::@42/(byte) render_screen_render#4 ) + (byte) render_screen_render#6 ← (byte) render_screen_render#17 + (byte) render_screen_show#6 ← (byte) render_screen_show#15 to:main::@1 main::@return: scope:[main] from main::@1 - (byte) level_bcd#24 ? phi( main::@1/(byte) level_bcd#40 ) - (byte) level#24 ? phi( main::@1/(byte) level#40 ) - (dword) score_bcd#18 ? phi( main::@1/(dword) score_bcd#33 ) - (word) lines_bcd#19 ? phi( main::@1/(word) lines_bcd#33 ) - (byte) current_movedown_counter#16 ? phi( main::@1/(byte) current_movedown_counter#26 ) - (byte) keyboard_modifiers#16 ? phi( main::@1/(byte) keyboard_modifiers#24 ) - (byte) keyboard_events_size#19 ? phi( main::@1/(byte) keyboard_events_size#27 ) - (byte) render_screen_showing#9 ? phi( main::@1/(byte) render_screen_showing#13 ) - (byte) next_piece_idx#22 ? phi( main::@1/(byte) next_piece_idx#34 ) - (byte) game_over#21 ? phi( main::@1/(byte) game_over#33 ) - (byte) current_ypos#28 ? phi( main::@1/(byte) current_ypos#48 ) - (byte) current_xpos#34 ? phi( main::@1/(byte) current_xpos#57 ) - (byte*) current_piece_gfx#27 ? phi( main::@1/(byte*) current_piece_gfx#44 ) - (byte) current_orientation#30 ? phi( main::@1/(byte) current_orientation#48 ) - (byte) current_piece_char#22 ? phi( main::@1/(byte) current_piece_char#35 ) - (byte*) current_piece#22 ? phi( main::@1/(byte*) current_piece#38 ) - (byte) current_movedown_slow#27 ? phi( main::@1/(byte) current_movedown_slow#45 ) - (byte) render_screen_render#18 ? phi( main::@1/(byte) render_screen_render#28 ) - (byte) render_screen_show#16 ? phi( main::@1/(byte) render_screen_show#23 ) - (byte) render_screen_show#7 ? (byte) render_screen_show#16 - (byte) render_screen_render#7 ? (byte) render_screen_render#18 - (byte) current_movedown_slow#14 ? (byte) current_movedown_slow#27 - (byte*) current_piece#10 ? (byte*) current_piece#22 - (byte) current_piece_char#10 ? (byte) current_piece_char#22 - (byte) current_orientation#13 ? (byte) current_orientation#30 - (byte*) current_piece_gfx#13 ? (byte*) current_piece_gfx#27 - (byte) current_xpos#14 ? (byte) current_xpos#34 - (byte) current_ypos#11 ? (byte) current_ypos#28 - (byte) game_over#10 ? (byte) game_over#21 - (byte) next_piece_idx#10 ? (byte) next_piece_idx#22 - (byte) render_screen_showing#4 ? (byte) render_screen_showing#9 - (byte) keyboard_events_size#8 ? (byte) keyboard_events_size#19 - (byte) keyboard_modifiers#8 ? (byte) keyboard_modifiers#16 - (byte) current_movedown_counter#7 ? (byte) current_movedown_counter#16 - (word) lines_bcd#8 ? (word) lines_bcd#19 - (dword) score_bcd#8 ? (dword) score_bcd#18 - (byte) level#10 ? (byte) level#24 - (byte) level_bcd#11 ? (byte) level_bcd#24 + (byte) level_bcd#24 ← phi( main::@1/(byte) level_bcd#40 ) + (byte) level#24 ← phi( main::@1/(byte) level#40 ) + (dword) score_bcd#18 ← phi( main::@1/(dword) score_bcd#33 ) + (word) lines_bcd#19 ← phi( main::@1/(word) lines_bcd#33 ) + (byte) current_movedown_counter#16 ← phi( main::@1/(byte) current_movedown_counter#26 ) + (byte) keyboard_modifiers#16 ← phi( main::@1/(byte) keyboard_modifiers#24 ) + (byte) keyboard_events_size#19 ← phi( main::@1/(byte) keyboard_events_size#27 ) + (byte) render_screen_showing#9 ← phi( main::@1/(byte) render_screen_showing#13 ) + (byte) next_piece_idx#22 ← phi( main::@1/(byte) next_piece_idx#34 ) + (byte) game_over#21 ← phi( main::@1/(byte) game_over#33 ) + (byte) current_ypos#28 ← phi( main::@1/(byte) current_ypos#48 ) + (byte) current_xpos#34 ← phi( main::@1/(byte) current_xpos#57 ) + (byte*) current_piece_gfx#27 ← phi( main::@1/(byte*) current_piece_gfx#44 ) + (byte) current_orientation#30 ← phi( main::@1/(byte) current_orientation#48 ) + (byte) current_piece_char#22 ← phi( main::@1/(byte) current_piece_char#35 ) + (byte*) current_piece#22 ← phi( main::@1/(byte*) current_piece#38 ) + (byte) current_movedown_slow#27 ← phi( main::@1/(byte) current_movedown_slow#45 ) + (byte) render_screen_render#18 ← phi( main::@1/(byte) render_screen_render#28 ) + (byte) render_screen_show#16 ← phi( main::@1/(byte) render_screen_show#23 ) + (byte) render_screen_show#7 ← (byte) render_screen_show#16 + (byte) render_screen_render#7 ← (byte) render_screen_render#18 + (byte) current_movedown_slow#14 ← (byte) current_movedown_slow#27 + (byte*) current_piece#10 ← (byte*) current_piece#22 + (byte) current_piece_char#10 ← (byte) current_piece_char#22 + (byte) current_orientation#13 ← (byte) current_orientation#30 + (byte*) current_piece_gfx#13 ← (byte*) current_piece_gfx#27 + (byte) current_xpos#14 ← (byte) current_xpos#34 + (byte) current_ypos#11 ← (byte) current_ypos#28 + (byte) game_over#10 ← (byte) game_over#21 + (byte) next_piece_idx#10 ← (byte) next_piece_idx#22 + (byte) render_screen_showing#4 ← (byte) render_screen_showing#9 + (byte) keyboard_events_size#8 ← (byte) keyboard_events_size#19 + (byte) keyboard_modifiers#8 ← (byte) keyboard_modifiers#16 + (byte) current_movedown_counter#7 ← (byte) current_movedown_counter#16 + (word) lines_bcd#8 ← (word) lines_bcd#19 + (dword) score_bcd#8 ← (dword) score_bcd#18 + (byte) level#10 ← (byte) level#24 + (byte) level_bcd#11 ← (byte) level_bcd#24 return to:@return @38: scope:[] from @31 - (byte) irq_cnt#17 ? phi( @31/(byte) irq_cnt#19 ) - (byte) irq_sprite_ptr#14 ? phi( @31/(byte) irq_sprite_ptr#17 ) - (byte) level_bcd#41 ? phi( @31/(byte) level_bcd#56 ) - (byte) level#41 ? phi( @31/(byte) level#57 ) - (dword) score_bcd#34 ? phi( @31/(dword) score_bcd#46 ) - (word) lines_bcd#34 ? phi( @31/(word) lines_bcd#46 ) - (byte) current_movedown_counter#27 ? phi( @31/(byte) current_movedown_counter#35 ) - (byte) keyboard_modifiers#25 ? phi( @31/(byte) keyboard_modifiers#33 ) - (byte) keyboard_events_size#28 ? phi( @31/(byte) keyboard_events_size#36 ) - (byte) render_screen_showing#14 ? phi( @31/(byte) render_screen_showing#20 ) - (byte) next_piece_idx#35 ? phi( @31/(byte) next_piece_idx#46 ) - (byte) game_over#34 ? phi( @31/(byte) game_over#45 ) - (byte) current_ypos#49 ? phi( @31/(byte) current_ypos#64 ) - (byte) current_xpos#58 ? phi( @31/(byte) current_xpos#78 ) - (byte*) current_piece_gfx#45 ? phi( @31/(byte*) current_piece_gfx#63 ) - (byte) current_orientation#49 ? phi( @31/(byte) current_orientation#62 ) - (byte) current_piece_char#36 ? phi( @31/(byte) current_piece_char#51 ) - (byte*) current_piece#39 ? phi( @31/(byte*) current_piece#54 ) - (byte) current_movedown_slow#46 ? phi( @31/(byte) current_movedown_slow#62 ) - (byte) render_screen_render#29 ? phi( @31/(byte) render_screen_render#40 ) - (byte) render_screen_show#24 ? phi( @31/(byte) render_screen_show#32 ) - (byte) irq_raster_next#10 ? phi( @31/(byte) irq_raster_next#17 ) - (byte) irq_sprite_ypos#9 ? phi( @31/(byte) irq_sprite_ypos#14 ) + (byte) irq_cnt#17 ← phi( @31/(byte) irq_cnt#19 ) + (byte) irq_sprite_ptr#14 ← phi( @31/(byte) irq_sprite_ptr#17 ) + (byte) level_bcd#41 ← phi( @31/(byte) level_bcd#56 ) + (byte) level#41 ← phi( @31/(byte) level#57 ) + (dword) score_bcd#34 ← phi( @31/(dword) score_bcd#46 ) + (word) lines_bcd#34 ← phi( @31/(word) lines_bcd#46 ) + (byte) current_movedown_counter#27 ← phi( @31/(byte) current_movedown_counter#35 ) + (byte) keyboard_modifiers#25 ← phi( @31/(byte) keyboard_modifiers#33 ) + (byte) keyboard_events_size#28 ← phi( @31/(byte) keyboard_events_size#36 ) + (byte) render_screen_showing#14 ← phi( @31/(byte) render_screen_showing#20 ) + (byte) next_piece_idx#35 ← phi( @31/(byte) next_piece_idx#46 ) + (byte) game_over#34 ← phi( @31/(byte) game_over#45 ) + (byte) current_ypos#49 ← phi( @31/(byte) current_ypos#64 ) + (byte) current_xpos#58 ← phi( @31/(byte) current_xpos#78 ) + (byte*) current_piece_gfx#45 ← phi( @31/(byte*) current_piece_gfx#63 ) + (byte) current_orientation#49 ← phi( @31/(byte) current_orientation#62 ) + (byte) current_piece_char#36 ← phi( @31/(byte) current_piece_char#51 ) + (byte*) current_piece#39 ← phi( @31/(byte*) current_piece#54 ) + (byte) current_movedown_slow#46 ← phi( @31/(byte) current_movedown_slow#62 ) + (byte) render_screen_render#29 ← phi( @31/(byte) render_screen_render#40 ) + (byte) render_screen_show#24 ← phi( @31/(byte) render_screen_show#32 ) + (byte) irq_raster_next#10 ← phi( @31/(byte) irq_raster_next#17 ) + (byte) irq_sprite_ypos#9 ← phi( @31/(byte) irq_sprite_ypos#14 ) call main to:@40 @40: scope:[] from @38 - (byte) level_bcd#25 ? phi( @38/(byte) level_bcd#11 ) - (byte) level#25 ? phi( @38/(byte) level#10 ) - (dword) score_bcd#19 ? phi( @38/(dword) score_bcd#8 ) - (word) lines_bcd#20 ? phi( @38/(word) lines_bcd#8 ) - (byte) current_movedown_counter#17 ? phi( @38/(byte) current_movedown_counter#7 ) - (byte) keyboard_modifiers#17 ? phi( @38/(byte) keyboard_modifiers#8 ) - (byte) keyboard_events_size#20 ? phi( @38/(byte) keyboard_events_size#8 ) - (byte) render_screen_showing#10 ? phi( @38/(byte) render_screen_showing#4 ) - (byte) next_piece_idx#23 ? phi( @38/(byte) next_piece_idx#10 ) - (byte) game_over#22 ? phi( @38/(byte) game_over#10 ) - (byte) current_ypos#29 ? phi( @38/(byte) current_ypos#11 ) - (byte) current_xpos#35 ? phi( @38/(byte) current_xpos#14 ) - (byte*) current_piece_gfx#28 ? phi( @38/(byte*) current_piece_gfx#13 ) - (byte) current_orientation#31 ? phi( @38/(byte) current_orientation#13 ) - (byte) current_piece_char#23 ? phi( @38/(byte) current_piece_char#10 ) - (byte*) current_piece#23 ? phi( @38/(byte*) current_piece#10 ) - (byte) current_movedown_slow#28 ? phi( @38/(byte) current_movedown_slow#14 ) - (byte) render_screen_render#19 ? phi( @38/(byte) render_screen_render#7 ) - (byte) render_screen_show#17 ? phi( @38/(byte) render_screen_show#7 ) - (byte) render_screen_show#8 ? (byte) render_screen_show#17 - (byte) render_screen_render#8 ? (byte) render_screen_render#19 - (byte) current_movedown_slow#15 ? (byte) current_movedown_slow#28 - (byte*) current_piece#11 ? (byte*) current_piece#23 - (byte) current_piece_char#11 ? (byte) current_piece_char#23 - (byte) current_orientation#14 ? (byte) current_orientation#31 - (byte*) current_piece_gfx#14 ? (byte*) current_piece_gfx#28 - (byte) current_xpos#15 ? (byte) current_xpos#35 - (byte) current_ypos#12 ? (byte) current_ypos#29 - (byte) game_over#11 ? (byte) game_over#22 - (byte) next_piece_idx#11 ? (byte) next_piece_idx#23 - (byte) render_screen_showing#5 ? (byte) render_screen_showing#10 - (byte) keyboard_events_size#9 ? (byte) keyboard_events_size#20 - (byte) keyboard_modifiers#9 ? (byte) keyboard_modifiers#17 - (byte) current_movedown_counter#8 ? (byte) current_movedown_counter#17 - (word) lines_bcd#9 ? (word) lines_bcd#20 - (dword) score_bcd#9 ? (dword) score_bcd#19 - (byte) level#11 ? (byte) level#25 - (byte) level_bcd#12 ? (byte) level_bcd#25 + (byte) level_bcd#25 ← phi( @38/(byte) level_bcd#11 ) + (byte) level#25 ← phi( @38/(byte) level#10 ) + (dword) score_bcd#19 ← phi( @38/(dword) score_bcd#8 ) + (word) lines_bcd#20 ← phi( @38/(word) lines_bcd#8 ) + (byte) current_movedown_counter#17 ← phi( @38/(byte) current_movedown_counter#7 ) + (byte) keyboard_modifiers#17 ← phi( @38/(byte) keyboard_modifiers#8 ) + (byte) keyboard_events_size#20 ← phi( @38/(byte) keyboard_events_size#8 ) + (byte) render_screen_showing#10 ← phi( @38/(byte) render_screen_showing#4 ) + (byte) next_piece_idx#23 ← phi( @38/(byte) next_piece_idx#10 ) + (byte) game_over#22 ← phi( @38/(byte) game_over#10 ) + (byte) current_ypos#29 ← phi( @38/(byte) current_ypos#11 ) + (byte) current_xpos#35 ← phi( @38/(byte) current_xpos#14 ) + (byte*) current_piece_gfx#28 ← phi( @38/(byte*) current_piece_gfx#13 ) + (byte) current_orientation#31 ← phi( @38/(byte) current_orientation#13 ) + (byte) current_piece_char#23 ← phi( @38/(byte) current_piece_char#10 ) + (byte*) current_piece#23 ← phi( @38/(byte*) current_piece#10 ) + (byte) current_movedown_slow#28 ← phi( @38/(byte) current_movedown_slow#14 ) + (byte) render_screen_render#19 ← phi( @38/(byte) render_screen_render#7 ) + (byte) render_screen_show#17 ← phi( @38/(byte) render_screen_show#7 ) + (byte) render_screen_show#8 ← (byte) render_screen_show#17 + (byte) render_screen_render#8 ← (byte) render_screen_render#19 + (byte) current_movedown_slow#15 ← (byte) current_movedown_slow#28 + (byte*) current_piece#11 ← (byte*) current_piece#23 + (byte) current_piece_char#11 ← (byte) current_piece_char#23 + (byte) current_orientation#14 ← (byte) current_orientation#31 + (byte*) current_piece_gfx#14 ← (byte*) current_piece_gfx#28 + (byte) current_xpos#15 ← (byte) current_xpos#35 + (byte) current_ypos#12 ← (byte) current_ypos#29 + (byte) game_over#11 ← (byte) game_over#22 + (byte) next_piece_idx#11 ← (byte) next_piece_idx#23 + (byte) render_screen_showing#5 ← (byte) render_screen_showing#10 + (byte) keyboard_events_size#9 ← (byte) keyboard_events_size#20 + (byte) keyboard_modifiers#9 ← (byte) keyboard_modifiers#17 + (byte) current_movedown_counter#8 ← (byte) current_movedown_counter#17 + (word) lines_bcd#9 ← (word) lines_bcd#20 + (dword) score_bcd#9 ← (dword) score_bcd#19 + (byte) level#11 ← (byte) level#25 + (byte) level_bcd#12 ← (byte) level_bcd#25 to:@end @end: scope:[] from @40 @@ -7458,37 +7458,37 @@ interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() Culled Empty Block (label) render_score::@10 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [189] (bool~) keyboard_event_scan::$18 ? (byte~) keyboard_event_scan::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [188] (bool~) keyboard_event_scan::$17 ? (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [198] (bool~) keyboard_event_scan::$20 ? (byte) keyboard_events_size#10 == (byte/signed byte/word/signed word/dword/signed dword) 8 from [197] (bool~) keyboard_event_scan::$19 ? (byte) keyboard_events_size#10 != (byte/signed byte/word/signed word/dword/signed dword) 8 -Inversing boolean not [223] (bool~) keyboard_event_scan::$2 ? (byte~) keyboard_event_scan::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [222] (bool~) keyboard_event_scan::$1 ? (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [232] (bool~) keyboard_event_scan::$5 ? (byte~) keyboard_event_scan::$3 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [231] (bool~) keyboard_event_scan::$4 ? (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [244] (bool~) keyboard_event_scan::$8 ? (byte~) keyboard_event_scan::$6 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [243] (bool~) keyboard_event_scan::$7 ? (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [256] (bool~) keyboard_event_scan::$11 ? (byte~) keyboard_event_scan::$9 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [255] (bool~) keyboard_event_scan::$10 ? (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [524] (bool~) render_bcd::$2 ? (byte) render_bcd::only_low#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [523] (bool~) render_bcd::$1 ? (byte) render_bcd::only_low#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [627] (bool~) render_moving::$4 ? (byte) render_moving::current_cell#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [626] (bool~) render_moving::$3 ? (byte) render_moving::current_cell#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [899] (bool~) play_movement::$2 ? (byte) game_over#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [898] (bool~) play_movement::$1 ? (byte) game_over#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [941] (bool~) play_move_down::$1 ? (byte) play_move_down::key_event#1 != (byte) KEY_SPACE#0 from [940] (bool~) play_move_down::$0 ? (byte) play_move_down::key_event#1 == (byte) KEY_SPACE#0 -Inversing boolean not [950] (bool~) play_move_down::$4 ? (byte~) play_move_down::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [949] (bool~) play_move_down::$3 ? (byte~) play_move_down::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [956] (bool~) play_move_down::$6 ? (byte) current_movedown_counter#12 < (byte) current_movedown_slow#19 from [955] (bool~) play_move_down::$5 ? (byte) current_movedown_counter#12 >= (byte) current_movedown_slow#19 -Inversing boolean not [960] (bool~) play_move_down::$10 ? (byte) current_movedown_counter#13 < (byte) current_movedown_fast#0 from [959] (bool~) play_move_down::$9 ? (byte) current_movedown_counter#13 >= (byte) current_movedown_fast#0 -Inversing boolean not [967] (bool~) play_move_down::$8 ? (byte) play_move_down::movedown#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [966] (bool~) play_move_down::$7 ? (byte) play_move_down::movedown#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1045] (bool~) play_move_leftright::$10 ? (byte~) play_move_leftright::$8 != (byte) COLLISION_NONE#0 from [1044] (bool~) play_move_leftright::$9 ? (byte~) play_move_leftright::$8 == (byte) COLLISION_NONE#0 -Inversing boolean not [1049] (bool~) play_move_leftright::$2 ? (byte) play_move_leftright::key_event#2 != (byte) KEY_DOT#0 from [1048] (bool~) play_move_leftright::$1 ? (byte) play_move_leftright::key_event#2 == (byte) KEY_DOT#0 -Inversing boolean not [1062] (bool~) play_move_leftright::$6 ? (byte~) play_move_leftright::$4 != (byte) COLLISION_NONE#0 from [1061] (bool~) play_move_leftright::$5 ? (byte~) play_move_leftright::$4 == (byte) COLLISION_NONE#0 -Inversing boolean not [1109] (bool~) play_move_rotate::$4 ? (byte~) play_move_rotate::$2 != (byte) COLLISION_NONE#0 from [1108] (bool~) play_move_rotate::$3 ? (byte~) play_move_rotate::$2 == (byte) COLLISION_NONE#0 -Inversing boolean not [1137] (bool~) play_collision::$3 ? *((byte*) play_collision::piece_gfx#1 + (byte) play_collision::i#2) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1136] (bool~) play_collision::$2 ? *((byte*) play_collision::piece_gfx#1 + (byte) play_collision::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1148] (bool~) play_collision::$6 ? (byte) play_collision::ypos2#3 < (byte/signed word/word/dword/signed dword~) play_collision::$4 from [1147] (bool~) play_collision::$5 ? (byte) play_collision::ypos2#3 >= (byte/signed word/word/dword/signed dword~) play_collision::$4 -Inversing boolean not [1153] (bool~) play_collision::$9 ? (byte~) play_collision::$7 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1152] (bool~) play_collision::$8 ? (byte~) play_collision::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1161] (bool~) play_collision::$11 ? (byte) play_collision::col#4 < (byte) PLAYFIELD_COLS#0 from [1160] (bool~) play_collision::$10 ? (byte) play_collision::col#4 >= (byte) PLAYFIELD_COLS#0 -Inversing boolean not [1166] (bool~) play_collision::$13 ? *((byte*) play_collision::playfield_line#1 + (byte) play_collision::col#5) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1165] (bool~) play_collision::$12 ? *((byte*) play_collision::playfield_line#1 + (byte) play_collision::col#5) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1188] (bool~) play_lock_current::$2 ? *((byte*) current_piece_gfx#22 + (byte) play_lock_current::i#2) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1187] (bool~) play_lock_current::$1 ? *((byte*) current_piece_gfx#22 + (byte) play_lock_current::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1222] (bool~) play_spawn_current::$4 ? (byte~) play_spawn_current::$2 != (byte) COLLISION_PLAYFIELD#0 from [1221] (bool~) play_spawn_current::$3 ? (byte~) play_spawn_current::$2 == (byte) COLLISION_PLAYFIELD#0 -Inversing boolean not [1267] (bool~) play_remove_lines::$7 ? (byte) play_remove_lines::c#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [1266] (bool~) play_remove_lines::$6 ? (byte) play_remove_lines::c#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1279] (bool~) play_remove_lines::$10 ? (byte) play_remove_lines::full#2 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [1278] (bool~) play_remove_lines::$9 ? (byte) play_remove_lines::full#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 -Inversing boolean not [1302] (bool~) play_update_score::$1 ? (byte) play_update_score::removed#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1301] (bool~) play_update_score::$0 ? (byte) play_update_score::removed#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [1319] (bool~) play_update_score::$8 ? (byte) play_update_score::lines_before#0 == (byte) play_update_score::lines_after#0 from [1318] (bool~) play_update_score::$7 ? (byte) play_update_score::lines_before#0 != (byte) play_update_score::lines_after#0 -Inversing boolean not [1347] (bool~) play_increase_level::$3 ? (byte~) play_increase_level::$1 != (byte/signed byte/word/signed word/dword/signed dword) $a from [1346] (bool~) play_increase_level::$2 ? (byte~) play_increase_level::$1 == (byte/signed byte/word/signed word/dword/signed dword) $a -Inversing boolean not [1460] (bool~) main::$17 ? (byte) main::render#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1459] (bool~) main::$16 ? (byte) main::render#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [189] (bool~) keyboard_event_scan::$18 ← (byte~) keyboard_event_scan::$16 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [188] (bool~) keyboard_event_scan::$17 ← (byte~) keyboard_event_scan::$16 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [198] (bool~) keyboard_event_scan::$20 ← (byte) keyboard_events_size#10 == (byte/signed byte/word/signed word/dword/signed dword) 8 from [197] (bool~) keyboard_event_scan::$19 ← (byte) keyboard_events_size#10 != (byte/signed byte/word/signed word/dword/signed dword) 8 +Inversing boolean not [223] (bool~) keyboard_event_scan::$2 ← (byte~) keyboard_event_scan::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [222] (bool~) keyboard_event_scan::$1 ← (byte~) keyboard_event_scan::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [232] (bool~) keyboard_event_scan::$5 ← (byte~) keyboard_event_scan::$3 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [231] (bool~) keyboard_event_scan::$4 ← (byte~) keyboard_event_scan::$3 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [244] (bool~) keyboard_event_scan::$8 ← (byte~) keyboard_event_scan::$6 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [243] (bool~) keyboard_event_scan::$7 ← (byte~) keyboard_event_scan::$6 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [256] (bool~) keyboard_event_scan::$11 ← (byte~) keyboard_event_scan::$9 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [255] (bool~) keyboard_event_scan::$10 ← (byte~) keyboard_event_scan::$9 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [524] (bool~) render_bcd::$2 ← (byte) render_bcd::only_low#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [523] (bool~) render_bcd::$1 ← (byte) render_bcd::only_low#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [627] (bool~) render_moving::$4 ← (byte) render_moving::current_cell#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [626] (bool~) render_moving::$3 ← (byte) render_moving::current_cell#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [899] (bool~) play_movement::$2 ← (byte) game_over#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [898] (bool~) play_movement::$1 ← (byte) game_over#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [941] (bool~) play_move_down::$1 ← (byte) play_move_down::key_event#1 != (byte) KEY_SPACE#0 from [940] (bool~) play_move_down::$0 ← (byte) play_move_down::key_event#1 == (byte) KEY_SPACE#0 +Inversing boolean not [950] (bool~) play_move_down::$4 ← (byte~) play_move_down::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [949] (bool~) play_move_down::$3 ← (byte~) play_move_down::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [956] (bool~) play_move_down::$6 ← (byte) current_movedown_counter#12 < (byte) current_movedown_slow#19 from [955] (bool~) play_move_down::$5 ← (byte) current_movedown_counter#12 >= (byte) current_movedown_slow#19 +Inversing boolean not [960] (bool~) play_move_down::$10 ← (byte) current_movedown_counter#13 < (byte) current_movedown_fast#0 from [959] (bool~) play_move_down::$9 ← (byte) current_movedown_counter#13 >= (byte) current_movedown_fast#0 +Inversing boolean not [967] (bool~) play_move_down::$8 ← (byte) play_move_down::movedown#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [966] (bool~) play_move_down::$7 ← (byte) play_move_down::movedown#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1045] (bool~) play_move_leftright::$10 ← (byte~) play_move_leftright::$8 != (byte) COLLISION_NONE#0 from [1044] (bool~) play_move_leftright::$9 ← (byte~) play_move_leftright::$8 == (byte) COLLISION_NONE#0 +Inversing boolean not [1049] (bool~) play_move_leftright::$2 ← (byte) play_move_leftright::key_event#2 != (byte) KEY_DOT#0 from [1048] (bool~) play_move_leftright::$1 ← (byte) play_move_leftright::key_event#2 == (byte) KEY_DOT#0 +Inversing boolean not [1062] (bool~) play_move_leftright::$6 ← (byte~) play_move_leftright::$4 != (byte) COLLISION_NONE#0 from [1061] (bool~) play_move_leftright::$5 ← (byte~) play_move_leftright::$4 == (byte) COLLISION_NONE#0 +Inversing boolean not [1109] (bool~) play_move_rotate::$4 ← (byte~) play_move_rotate::$2 != (byte) COLLISION_NONE#0 from [1108] (bool~) play_move_rotate::$3 ← (byte~) play_move_rotate::$2 == (byte) COLLISION_NONE#0 +Inversing boolean not [1137] (bool~) play_collision::$3 ← *((byte*) play_collision::piece_gfx#1 + (byte) play_collision::i#2) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1136] (bool~) play_collision::$2 ← *((byte*) play_collision::piece_gfx#1 + (byte) play_collision::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1148] (bool~) play_collision::$6 ← (byte) play_collision::ypos2#3 < (byte/signed word/word/dword/signed dword~) play_collision::$4 from [1147] (bool~) play_collision::$5 ← (byte) play_collision::ypos2#3 >= (byte/signed word/word/dword/signed dword~) play_collision::$4 +Inversing boolean not [1153] (bool~) play_collision::$9 ← (byte~) play_collision::$7 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1152] (bool~) play_collision::$8 ← (byte~) play_collision::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1161] (bool~) play_collision::$11 ← (byte) play_collision::col#4 < (byte) PLAYFIELD_COLS#0 from [1160] (bool~) play_collision::$10 ← (byte) play_collision::col#4 >= (byte) PLAYFIELD_COLS#0 +Inversing boolean not [1166] (bool~) play_collision::$13 ← *((byte*) play_collision::playfield_line#1 + (byte) play_collision::col#5) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1165] (bool~) play_collision::$12 ← *((byte*) play_collision::playfield_line#1 + (byte) play_collision::col#5) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1188] (bool~) play_lock_current::$2 ← *((byte*) current_piece_gfx#22 + (byte) play_lock_current::i#2) == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1187] (bool~) play_lock_current::$1 ← *((byte*) current_piece_gfx#22 + (byte) play_lock_current::i#2) != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1222] (bool~) play_spawn_current::$4 ← (byte~) play_spawn_current::$2 != (byte) COLLISION_PLAYFIELD#0 from [1221] (bool~) play_spawn_current::$3 ← (byte~) play_spawn_current::$2 == (byte) COLLISION_PLAYFIELD#0 +Inversing boolean not [1267] (bool~) play_remove_lines::$7 ← (byte) play_remove_lines::c#0 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [1266] (bool~) play_remove_lines::$6 ← (byte) play_remove_lines::c#0 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1279] (bool~) play_remove_lines::$10 ← (byte) play_remove_lines::full#2 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [1278] (bool~) play_remove_lines::$9 ← (byte) play_remove_lines::full#2 == (byte/signed byte/word/signed word/dword/signed dword) 1 +Inversing boolean not [1302] (bool~) play_update_score::$1 ← (byte) play_update_score::removed#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1301] (bool~) play_update_score::$0 ← (byte) play_update_score::removed#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [1319] (bool~) play_update_score::$8 ← (byte) play_update_score::lines_before#0 == (byte) play_update_score::lines_after#0 from [1318] (bool~) play_update_score::$7 ← (byte) play_update_score::lines_before#0 != (byte) play_update_score::lines_after#0 +Inversing boolean not [1347] (bool~) play_increase_level::$3 ← (byte~) play_increase_level::$1 != (byte/signed byte/word/signed word/dword/signed dword) $a from [1346] (bool~) play_increase_level::$2 ← (byte~) play_increase_level::$1 == (byte/signed byte/word/signed word/dword/signed dword) $a +Inversing boolean not [1460] (bool~) main::$17 ← (byte) main::render#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [1459] (bool~) main::$16 ← (byte) main::render#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias candidate removed (volatile)(byte) render_screen_showing#1 = (byte) render_screen_show#11 (byte) render_screen_showing#6 (byte) render_screen_showing#2 Alias candidate removed (volatile)(byte) IRQ_RASTER_FIRST#0 = (byte/signed word/word/dword/signed dword~) $4 (byte) irq_raster_next#0 (byte) irq_raster_next#24 (byte) irq_raster_next#23 (byte) irq_raster_next#22 (byte) irq_raster_next#20 (byte) irq_raster_next#17 (byte) irq_raster_next#10 @@ -9115,50 +9115,50 @@ if() condition always true - replacing block destination [531] if(true) goto mai Successful SSA optimization Pass2ConstantIfs Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (byte*) render_next::next_piece_gfx#0 ? ((byte*)) *((const word[]) PIECES#0 + (byte~) render_next::$4) -Eliminating Noop Cast (byte*) current_piece#5 ? ((byte*)) *((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) +Eliminating Noop Cast (byte*) render_next::next_piece_gfx#0 ← ((byte*)) *((const word[]) PIECES#0 + (byte~) render_next::$4) +Eliminating Noop Cast (byte*) current_piece#5 ← ((byte*)) *((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) Successful SSA optimization Pass2NopCastElimination Removing unused block main::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value keyboard_event_scan::row#1 ? ++ keyboard_event_scan::row#2 to ++ +Resolved ranged next value keyboard_event_scan::row#1 ← ++ keyboard_event_scan::row#2 to ++ Resolved ranged comparison value if(keyboard_event_scan::row#1!=rangelast(0,7)) goto keyboard_event_scan::@8 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value keyboard_event_scan::col#1 ? ++ keyboard_event_scan::col#2 to ++ +Resolved ranged next value keyboard_event_scan::col#1 ← ++ keyboard_event_scan::col#2 to ++ Resolved ranged comparison value if(keyboard_event_scan::col#1!=rangelast(0,7)) goto keyboard_event_scan::@11 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value render_init::i#1 ? ++ render_init::i#2 to ++ +Resolved ranged next value render_init::i#1 ← ++ render_init::i#2 to ++ Resolved ranged comparison value if(render_init::i#1!=rangelast(0,render_init::$12)) goto render_init::@1 to (const byte/signed word/word/dword/signed dword) render_init::$12+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value render_screen_original::y#1 ? ++ render_screen_original::y#6 to ++ +Resolved ranged next value render_screen_original::y#1 ← ++ render_screen_original::y#6 to ++ Resolved ranged comparison value if(render_screen_original::y#1!=rangelast(0,$18)) goto render_screen_original::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value render_playfield::c#1 ? ++ render_playfield::c#2 to ++ +Resolved ranged next value render_playfield::c#1 ← ++ render_playfield::c#2 to ++ Resolved ranged comparison value if(render_playfield::c#1!=rangelast(0,render_playfield::$4)) goto render_playfield::@2 to (const byte/signed word/word/dword/signed dword) render_playfield::$4+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value render_playfield::l#1 ? ++ render_playfield::l#2 to ++ +Resolved ranged next value render_playfield::l#1 ← ++ render_playfield::l#2 to ++ Resolved ranged comparison value if(render_playfield::l#1!=rangelast(2,render_playfield::$1)) goto render_playfield::@1 to (const byte/signed word/word/dword/signed dword) render_playfield::$1+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value render_moving::l#1 ? ++ render_moving::l#4 to ++ +Resolved ranged next value render_moving::l#1 ← ++ render_moving::l#4 to ++ Resolved ranged comparison value if(render_moving::l#1!=rangelast(0,3)) goto render_moving::@1 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value render_moving::c#1 ? ++ render_moving::c#2 to ++ +Resolved ranged next value render_moving::c#1 ← ++ render_moving::c#2 to ++ Resolved ranged comparison value if(render_moving::c#1!=rangelast(0,3)) goto render_moving::@4 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value render_next::c#1 ? ++ render_next::c#2 to ++ +Resolved ranged next value render_next::c#1 ← ++ render_next::c#2 to ++ Resolved ranged comparison value if(render_next::c#1!=rangelast(0,3)) goto render_next::@6 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value render_next::l#1 ? ++ render_next::l#7 to ++ +Resolved ranged next value render_next::l#1 ← ++ render_next::l#7 to ++ Resolved ranged comparison value if(render_next::l#1!=rangelast(0,3)) goto render_next::@5 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value sprites_init::s#1 ? ++ sprites_init::s#2 to ++ +Resolved ranged next value sprites_init::s#1 ← ++ sprites_init::s#2 to ++ Resolved ranged comparison value if(sprites_init::s#1!=rangelast(0,3)) goto sprites_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value play_init::j#1 ? ++ play_init::j#2 to ++ +Resolved ranged next value play_init::j#1 ← ++ play_init::j#2 to ++ Resolved ranged comparison value if(play_init::j#1!=rangelast(0,play_init::$1)) goto play_init::@1 to (const byte/signed word/word/dword/signed dword) play_init::$1+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value play_init::b#1 ? ++ play_init::b#2 to ++ +Resolved ranged next value play_init::b#1 ← ++ play_init::b#2 to ++ Resolved ranged comparison value if(play_init::b#1!=rangelast(0,4)) goto play_init::@3 to (byte/signed byte/word/signed word/dword/signed dword) 5 -Resolved ranged next value play_collision::c#1 ? ++ play_collision::c#2 to ++ +Resolved ranged next value play_collision::c#1 ← ++ play_collision::c#2 to ++ Resolved ranged comparison value if(play_collision::c#1!=rangelast(0,3)) goto play_collision::@2 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value play_collision::l#1 ? ++ play_collision::l#6 to ++ +Resolved ranged next value play_collision::l#1 ← ++ play_collision::l#6 to ++ Resolved ranged comparison value if(play_collision::l#1!=rangelast(0,3)) goto play_collision::@1 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value play_lock_current::c#1 ? ++ play_lock_current::c#2 to ++ +Resolved ranged next value play_lock_current::c#1 ← ++ play_lock_current::c#2 to ++ Resolved ranged comparison value if(play_lock_current::c#1!=rangelast(0,3)) goto play_lock_current::@2 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value play_lock_current::l#1 ? ++ play_lock_current::l#6 to ++ +Resolved ranged next value play_lock_current::l#1 ← ++ play_lock_current::l#6 to ++ Resolved ranged comparison value if(play_lock_current::l#1!=rangelast(0,3)) goto play_lock_current::@1 to (byte/signed byte/word/signed word/dword/signed dword) 4 -Resolved ranged next value play_remove_lines::x#1 ? ++ play_remove_lines::x#2 to ++ +Resolved ranged next value play_remove_lines::x#1 ← ++ play_remove_lines::x#2 to ++ Resolved ranged comparison value if(play_remove_lines::x#1!=rangelast(0,play_remove_lines::$5)) goto play_remove_lines::@2 to (const byte/signed word/word/dword/signed dword) play_remove_lines::$5+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value play_remove_lines::y#1 ? ++ play_remove_lines::y#8 to ++ +Resolved ranged next value play_remove_lines::y#1 ← ++ play_remove_lines::y#8 to ++ Resolved ranged comparison value if(play_remove_lines::y#1!=rangelast(0,play_remove_lines::$4)) goto play_remove_lines::@1 to (const byte/signed word/word/dword/signed dword) play_remove_lines::$4+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value play_increase_level::b#1 ? ++ play_increase_level::b#2 to ++ +Resolved ranged next value play_increase_level::b#1 ← ++ play_increase_level::b#2 to ++ Resolved ranged comparison value if(play_increase_level::b#1!=rangelast(0,4)) goto play_increase_level::@7 to (byte/signed byte/word/signed word/dword/signed dword) 5 Culled Empty Block (label) @5 Culled Empty Block (label) @9 @@ -9654,318 +9654,318 @@ Calls in [keyboard_event_scan] to keyboard_matrix_read:626 keyboard_event_presse Calls in [render_init] to render_screen_original:765 render_screen_original:767 Created 175 initial phi equivalence classes -Coalesced [26] next_piece_idx#90 ? next_piece_idx#18 -Coalesced [27] game_over#96 ? game_over#52 -Not coalescing [31] current_ypos#104 ? current_ypos#6 -Not coalescing [32] current_xpos#128 ? current_xpos#103 -Not coalescing [33] current_piece_gfx#118 ? current_piece_gfx#74 -Not coalescing [34] current_piece_char#106 ? current_piece_char#5 -Not coalescing [36] next_piece_idx#84 ? next_piece_idx#18 -Coalesced [38] current_movedown_slow#95 ? current_movedown_slow#1 -Coalesced [40] current_piece_char#104 ? current_piece_char#5 -Coalesced [41] current_piece_gfx#116 ? current_piece_gfx#74 -Coalesced [42] current_xpos#126 ? current_xpos#103 -Coalesced [43] current_ypos#102 ? current_ypos#6 -Coalesced [44] game_over#90 ? game_over#52 -Coalesced [45] next_piece_idx#82 ? next_piece_idx#18 -Not coalescing [63] render_screen_render#70 ? render_screen_render#18 -Not coalescing [65] current_ypos#105 ? current_ypos#19 -Not coalescing [66] render_screen_render#69 ? render_screen_render#18 -Not coalescing [67] current_xpos#129 ? current_xpos#19 -Not coalescing [68] current_piece_gfx#119 ? current_piece_gfx#18 -Not coalescing [69] current_piece_char#107 ? current_piece_char#16 -Not coalescing [71] render_screen_render#68 ? render_screen_render#18 -Not coalescing [72] next_piece_idx#85 ? next_piece_idx#16 -Coalesced [78] render_screen_show#63 ? render_screen_show#13 -Coalesced [79] render_screen_render#67 ? render_screen_render#11 -Coalesced [80] current_movedown_slow#96 ? current_movedown_slow#21 -Coalesced [81] current_piece#97 ? current_piece#15 -Coalesced [82] current_piece_char#105 ? current_piece_char#16 -Coalesced [83] current_orientation#100 ? current_orientation#17 -Coalesced [84] current_piece_gfx#117 ? current_piece_gfx#18 -Coalesced [85] current_xpos#127 ? current_xpos#19 -Coalesced [86] current_ypos#103 ? current_ypos#19 -Coalesced [87] game_over#91 ? game_over#15 -Coalesced [88] next_piece_idx#83 ? next_piece_idx#16 -Coalesced [89] keyboard_events_size#86 ? keyboard_events_size#16 -Coalesced [90] current_movedown_counter#64 ? current_movedown_counter#14 -Coalesced [91] lines_bcd#95 ? lines_bcd#15 -Coalesced [92] score_bcd#91 ? score_bcd#14 -Coalesced [93] level#111 ? level#17 -Coalesced [94] level_bcd#108 ? level_bcd#17 -Coalesced (already) [95] current_movedown_slow#94 ? current_movedown_slow#21 -Coalesced (already) [96] current_piece#95 ? current_piece#15 -Coalesced (already) [97] current_piece_char#103 ? current_piece_char#16 -Coalesced (already) [98] current_orientation#99 ? current_orientation#17 -Coalesced (already) [99] current_piece_gfx#115 ? current_piece_gfx#18 -Coalesced (already) [100] current_xpos#125 ? current_xpos#19 -Coalesced (already) [101] current_ypos#101 ? current_ypos#19 -Coalesced (already) [102] game_over#89 ? game_over#15 -Coalesced (already) [103] next_piece_idx#81 ? next_piece_idx#16 -Coalesced (already) [104] keyboard_events_size#85 ? keyboard_events_size#16 -Coalesced (already) [105] current_movedown_counter#63 ? current_movedown_counter#14 -Coalesced (already) [106] lines_bcd#94 ? lines_bcd#15 -Coalesced (already) [107] score_bcd#90 ? score_bcd#14 -Coalesced (already) [108] level#110 ? level#17 -Coalesced (already) [109] level_bcd#107 ? level_bcd#17 -Coalesced [118] render_bcd::screen#7 ? render_bcd::screen#0 -Coalesced [119] render_bcd::bcd#9 ? render_bcd::bcd#0 -Coalesced [123] render_bcd::screen#8 ? render_bcd::screen#1 -Coalesced [124] render_bcd::bcd#10 ? render_bcd::bcd#1 -Coalesced [128] render_bcd::screen#9 ? render_bcd::screen#2 -Coalesced [129] render_bcd::bcd#11 ? render_bcd::bcd#2 -Coalesced [133] render_bcd::screen#10 ? render_bcd::screen#3 -Coalesced [134] render_bcd::bcd#12 ? render_bcd::bcd#3 -Coalesced [138] render_bcd::screen#11 ? render_bcd::screen#4 -Coalesced [139] render_bcd::bcd#13 ? render_bcd::bcd#4 -Coalesced [143] render_bcd::screen#12 ? render_bcd::screen#5 -Coalesced [144] render_bcd::bcd#14 ? render_bcd::bcd#5 -Coalesced [154] render_bcd::screen_pos#6 ? render_bcd::screen_pos#2 -Coalesced [161] render_bcd::screen_pos#5 ? render_bcd::screen_pos#0 -Coalesced [169] render_next::screen_next_area#13 ? render_next::screen_next_area#11 -Coalesced [171] render_next::next_piece_gfx#10 ? render_next::next_piece_gfx#3 -Coalesced [172] render_next::screen_next_area#14 ? render_next::screen_next_area#10 -Coalesced [185] render_next::next_piece_gfx#8 ? render_next::next_piece_gfx#1 -Coalesced [186] render_next::screen_next_area#12 ? render_next::screen_next_area#4 -Coalesced [187] render_next::l#8 ? render_next::l#1 -Coalesced (already) [188] render_next::next_piece_gfx#11 ? render_next::next_piece_gfx#1 -Coalesced [189] render_next::screen_next_area#15 ? render_next::screen_next_area#3 -Coalesced [190] render_next::c#6 ? render_next::c#1 -Coalesced [194] render_moving::ypos2#9 ? render_moving::ypos2#0 -Coalesced [198] render_moving::i#12 ? render_moving::i#1 -Coalesced [204] render_moving::ypos2#10 ? render_moving::ypos2#1 -Coalesced [205] render_moving::i#10 ? render_moving::i#8 -Coalesced [206] render_moving::l#9 ? render_moving::l#1 -Coalesced [210] render_moving::i#13 ? render_moving::i#3 -Coalesced [211] render_moving::xpos#5 ? render_moving::xpos#0 -Coalesced [220] render_moving::i#11 ? render_moving::i#2 -Coalesced (already) [221] render_moving::i#14 ? render_moving::i#2 -Coalesced [222] render_moving::xpos#6 ? render_moving::xpos#1 -Coalesced [223] render_moving::c#5 ? render_moving::c#1 -Coalesced [229] render_playfield::i#6 ? render_playfield::i#3 -Coalesced [230] render_playfield::screen_line#3 ? render_playfield::screen_line#0 -Coalesced [240] render_playfield::l#5 ? render_playfield::l#1 -Coalesced [241] render_playfield::i#5 ? render_playfield::i#1 -Coalesced (already) [242] render_playfield::i#7 ? render_playfield::i#1 -Coalesced [243] render_playfield::screen_line#4 ? render_playfield::screen_line#1 -Coalesced [244] render_playfield::c#3 ? render_playfield::c#1 -Coalesced [251] play_movement::return#6 ? play_movement::render#1 -Coalesced [252] current_orientation#101 ? current_orientation#20 -Coalesced [253] current_piece_gfx#120 ? current_piece_gfx#20 -Coalesced [254] current_xpos#130 ? current_xpos#22 -Coalesced [267] play_movement::return#7 ? play_movement::return#0 -Coalesced [268] current_orientation#102 ? current_orientation#25 -Coalesced [269] current_piece_gfx#121 ? current_piece_gfx#21 -Coalesced [270] current_xpos#131 ? current_xpos#26 -Coalesced (already) [273] current_orientation#105 ? current_orientation#20 -Coalesced (already) [274] current_piece_gfx#124 ? current_piece_gfx#20 -Coalesced [279] play_move_rotate::orientation#7 ? play_move_rotate::orientation#2 -Not coalescing [284] current_piece#101 ? current_piece#15 -Coalesced [285] play_collision::orientation#9 ? play_collision::orientation#3 -Coalesced [286] play_collision::ypos#9 ? play_collision::ypos#3 -Coalesced [287] play_collision::xpos#18 ? play_collision::xpos#3 -Coalesced [294] current_orientation#103 ? current_orientation#7 -Coalesced [295] current_piece_gfx#122 ? current_piece_gfx#7 -Coalesced (already) [296] current_orientation#104 ? current_orientation#20 -Coalesced (already) [297] current_piece_gfx#123 ? current_piece_gfx#20 -Coalesced [300] play_move_rotate::orientation#6 ? play_move_rotate::orientation#1 -Coalesced [304] play_collision::ypos2#11 ? play_collision::ypos2#0 -Coalesced [307] play_collision::i#12 ? play_collision::i#3 -Not coalescing [308] play_collision::col#9 ? play_collision::xpos#6 -Coalesced [325] play_collision::ypos2#12 ? play_collision::ypos2#1 -Not coalescing [326] play_collision::i#11 ? play_collision::i#1 -Coalesced [327] play_collision::l#11 ? play_collision::l#1 -Not coalescing [328] play_collision::i#13 ? play_collision::i#1 -Coalesced [329] play_collision::col#10 ? play_collision::col#1 -Coalesced [330] play_collision::c#9 ? play_collision::c#1 -Not coalescing [336] current_piece#100 ? current_piece#15 -Coalesced [337] play_collision::orientation#8 ? play_collision::orientation#2 -Coalesced [338] play_collision::ypos#8 ? play_collision::ypos#2 -Coalesced [339] play_collision::xpos#17 ? play_collision::xpos#2 -Coalesced [345] current_xpos#133 ? current_xpos#6 -Coalesced (already) [348] current_xpos#135 ? current_xpos#22 -Coalesced (already) [349] current_xpos#136 ? current_xpos#22 -Not coalescing [353] current_piece#99 ? current_piece#15 -Coalesced [354] play_collision::orientation#7 ? play_collision::orientation#1 -Coalesced [355] play_collision::ypos#7 ? play_collision::ypos#1 -Coalesced [356] play_collision::xpos#16 ? play_collision::xpos#1 -Coalesced [362] current_xpos#134 ? current_xpos#8 -Coalesced (already) [363] current_xpos#132 ? current_xpos#22 -Coalesced [374] play_move_down::movedown#15 ? play_move_down::movedown#2 -Coalesced [378] play_move_down::movedown#17 ? play_move_down::movedown#3 -Not coalescing [384] current_piece#98 ? current_piece#10 -Coalesced [385] play_collision::orientation#6 ? play_collision::orientation#0 -Coalesced [386] play_collision::ypos#6 ? play_collision::ypos#0 -Coalesced [387] play_collision::xpos#15 ? play_collision::xpos#0 -Coalesced (already) [400] next_piece_idx#91 ? next_piece_idx#10 -Coalesced (already) [401] game_over#97 ? game_over#10 -Coalesced [403] current_ypos#107 ? current_ypos#6 -Coalesced [404] lines_bcd#97 ? lines_bcd#17 -Coalesced [405] score_bcd#93 ? score_bcd#16 -Coalesced [406] level#113 ? level#19 -Coalesced [407] current_movedown_slow#98 ? current_movedown_slow#23 -Coalesced [408] level_bcd#110 ? level_bcd#19 -Coalesced [410] current_piece_char#109 ? current_piece_char#5 -Coalesced [411] current_piece_gfx#126 ? current_piece_gfx#74 -Coalesced [412] current_xpos#138 ? current_xpos#103 -Coalesced [413] game_over#93 ? game_over#52 -Coalesced [414] next_piece_idx#87 ? next_piece_idx#18 -Coalesced (already) [416] current_ypos#108 ? current_ypos#38 -Coalesced [417] lines_bcd#98 ? lines_bcd#26 -Coalesced [418] score_bcd#94 ? score_bcd#26 -Coalesced [419] level#114 ? level#33 -Coalesced [420] current_movedown_slow#99 ? current_movedown_slow#37 -Coalesced [421] level_bcd#111 ? level_bcd#31 -Coalesced [422] current_piece#105 ? current_piece#28 -Coalesced (already) [423] current_piece_char#110 ? current_piece_char#29 -Coalesced [424] current_orientation#107 ? current_orientation#37 -Coalesced (already) [425] current_piece_gfx#127 ? current_piece_gfx#35 -Coalesced (already) [426] current_xpos#139 ? current_xpos#43 -Coalesced (already) [427] game_over#94 ? game_over#27 -Coalesced (already) [428] next_piece_idx#88 ? next_piece_idx#30 -Coalesced [432] current_ypos#106 ? current_ypos#3 -Coalesced (already) [433] lines_bcd#96 ? lines_bcd#19 -Coalesced (already) [434] score_bcd#92 ? score_bcd#18 -Coalesced (already) [435] level#112 ? level#10 -Coalesced (already) [436] current_movedown_slow#97 ? current_movedown_slow#14 -Coalesced (already) [437] level_bcd#109 ? level_bcd#11 -Coalesced (already) [438] current_piece#103 ? current_piece#10 -Coalesced (already) [439] current_piece_char#108 ? current_piece_char#10 -Coalesced (already) [440] current_orientation#106 ? current_orientation#13 -Coalesced (already) [441] current_piece_gfx#125 ? current_piece_gfx#112 -Coalesced (already) [442] current_xpos#137 ? current_xpos#122 -Coalesced (already) [443] game_over#92 ? game_over#10 -Coalesced (already) [444] next_piece_idx#86 ? next_piece_idx#10 -Coalesced [445] current_movedown_counter#65 ? current_movedown_counter#12 -Coalesced (already) [446] current_ypos#109 ? current_ypos#11 -Coalesced (already) [447] lines_bcd#99 ? lines_bcd#19 -Coalesced (already) [448] score_bcd#95 ? score_bcd#18 -Coalesced (already) [449] level#115 ? level#10 -Coalesced (already) [450] current_movedown_slow#100 ? current_movedown_slow#14 -Coalesced (already) [451] level_bcd#112 ? level_bcd#11 -Coalesced (already) [452] current_piece#106 ? current_piece#10 -Coalesced (already) [453] current_piece_char#111 ? current_piece_char#10 -Coalesced (already) [454] current_orientation#108 ? current_orientation#13 -Coalesced (already) [455] current_piece_gfx#128 ? current_piece_gfx#112 -Coalesced (already) [456] current_xpos#140 ? current_xpos#122 -Coalesced (already) [457] game_over#95 ? game_over#10 -Coalesced (already) [458] next_piece_idx#89 ? next_piece_idx#10 -Coalesced [459] play_move_down::movedown#16 ? play_move_down::movedown#7 -Coalesced [460] play_move_down::movedown#13 ? play_move_down::movedown#10 -Coalesced (already) [461] play_move_down::movedown#14 ? play_move_down::movedown#10 -Coalesced [472] play_collision::ypos#10 ? play_collision::ypos#4 -Coalesced [473] play_collision::xpos#19 ? play_collision::xpos#4 -Coalesced [482] next_piece_idx#18 ? play_spawn_current::piece_idx#2 -Coalesced [489] play_spawn_current::piece_idx#4 ? play_spawn_current::piece_idx#1 -Coalesced (already) [490] game_over#98 ? game_over#65 -Coalesced [507] lines_bcd#102 ? lines_bcd#30 -Coalesced [508] score_bcd#98 ? score_bcd#30 -Coalesced [509] level#118 ? level#21 -Coalesced [510] current_movedown_slow#103 ? current_movedown_slow#69 -Coalesced [511] level_bcd#115 ? level_bcd#64 -Coalesced (already) [514] lines_bcd#101 ? lines_bcd#30 -Coalesced (already) [515] score_bcd#97 ? score_bcd#30 -Coalesced (already) [516] level#117 ? level#10 -Coalesced (already) [517] current_movedown_slow#102 ? current_movedown_slow#14 -Coalesced (already) [518] level_bcd#114 ? level_bcd#11 -Coalesced (already) [519] lines_bcd#100 ? lines_bcd#19 -Coalesced (already) [520] score_bcd#96 ? score_bcd#18 -Coalesced (already) [521] level#116 ? level#10 -Coalesced (already) [522] current_movedown_slow#101 ? current_movedown_slow#14 -Coalesced (already) [523] level_bcd#113 ? level_bcd#11 -Coalesced [527] current_movedown_slow#104 ? current_movedown_slow#10 -Coalesced [533] level_bcd#117 ? level_bcd#8 -Coalesced [543] play_increase_level::b#3 ? play_increase_level::b#1 -Coalesced [544] level_bcd#116 ? level_bcd#21 -Coalesced [547] play_remove_lines::r#10 ? play_remove_lines::r#3 -Coalesced [548] play_remove_lines::w#14 ? play_remove_lines::w#12 -Coalesced [562] play_remove_lines::w#17 ? play_remove_lines::w#2 -Coalesced [563] play_remove_lines::removed#14 ? play_remove_lines::removed#1 -Coalesced [567] play_remove_lines::w#19 ? play_remove_lines::w#11 -Coalesced [573] play_remove_lines::w#18 ? play_remove_lines::w#3 -Coalesced [574] play_remove_lines::r#9 ? play_remove_lines::r#1 -Coalesced [575] play_remove_lines::w#13 ? play_remove_lines::w#11 -Coalesced [576] play_remove_lines::y#9 ? play_remove_lines::y#1 -Coalesced [577] play_remove_lines::removed#12 ? play_remove_lines::removed#8 -Coalesced [578] play_remove_lines::w#16 ? play_remove_lines::w#1 -Coalesced (already) [579] play_remove_lines::removed#13 ? play_remove_lines::removed#11 -Coalesced (already) [580] play_remove_lines::r#11 ? play_remove_lines::r#1 -Coalesced (already) [581] play_remove_lines::w#15 ? play_remove_lines::w#1 -Coalesced [582] play_remove_lines::x#5 ? play_remove_lines::x#1 -Coalesced [583] play_remove_lines::full#5 ? play_remove_lines::full#2 -Coalesced (already) [584] play_remove_lines::full#6 ? play_remove_lines::full#4 -Coalesced [586] play_lock_current::ypos2#7 ? play_lock_current::ypos2#0 -Coalesced [590] play_lock_current::i#8 ? play_lock_current::i#3 -Coalesced [591] play_lock_current::col#5 ? play_lock_current::col#0 -Coalesced [603] play_lock_current::ypos2#8 ? play_lock_current::ypos2#1 -Not coalescing [604] play_lock_current::i#7 ? play_lock_current::i#1 -Coalesced [605] play_lock_current::l#7 ? play_lock_current::l#1 -Not coalescing [606] play_lock_current::i#9 ? play_lock_current::i#1 -Coalesced [607] play_lock_current::col#6 ? play_lock_current::col#1 -Coalesced [608] play_lock_current::c#5 ? play_lock_current::c#1 -Coalesced [618] keyboard_event_get::return#6 ? keyboard_event_get::return#1 -Coalesced [619] keyboard_events_size#88 ? keyboard_events_size#4 -Coalesced [622] keyboard_events_size#87 ? keyboard_events_size#13 -Coalesced [623] keyboard_events_size#89 ? keyboard_events_size#19 -Coalesced [631] keyboard_event_scan::keycode#18 ? keyboard_event_scan::keycode#1 -Coalesced (already) [632] keyboard_events_size#92 ? keyboard_events_size#30 -Coalesced [648] keyboard_modifiers#67 ? keyboard_modifiers#3 -Coalesced [655] keyboard_modifiers#69 ? keyboard_modifiers#4 -Coalesced [663] keyboard_modifiers#68 ? keyboard_modifiers#12 -Coalesced [664] keyboard_modifiers#66 ? keyboard_modifiers#11 -Coalesced [665] keyboard_event_scan::row#15 ? keyboard_event_scan::row#1 -Coalesced [666] keyboard_event_scan::keycode#16 ? keyboard_event_scan::keycode#14 -Coalesced (already) [667] keyboard_events_size#90 ? keyboard_events_size#13 -Coalesced [668] keyboard_event_scan::keycode#20 ? keyboard_event_scan::keycode#11 -Coalesced [669] keyboard_events_size#94 ? keyboard_events_size#30 -Coalesced [679] keyboard_events_size#98 ? keyboard_events_size#2 -Coalesced [685] keyboard_event_scan::keycode#17 ? keyboard_event_scan::keycode#15 -Coalesced [686] keyboard_events_size#91 ? keyboard_events_size#29 -Coalesced [687] keyboard_event_scan::col#9 ? keyboard_event_scan::col#1 -Coalesced (already) [688] keyboard_event_scan::keycode#19 ? keyboard_event_scan::keycode#15 -Coalesced (already) [689] keyboard_events_size#93 ? keyboard_events_size#29 -Coalesced [693] keyboard_events_size#97 ? keyboard_events_size#1 -Coalesced (already) [694] keyboard_events_size#96 ? keyboard_events_size#10 -Coalesced (already) [695] keyboard_events_size#95 ? keyboard_events_size#10 -Coalesced [725] play_init::b#3 ? play_init::b#1 -Coalesced [726] play_init::j#3 ? play_init::j#1 -Coalesced [727] play_init::pli#3 ? play_init::pli#1 -Coalesced [728] play_init::idx#3 ? play_init::idx#1 -Coalesced [753] sprites_init::s#3 ? sprites_init::s#1 -Coalesced [754] sprites_init::xpos#3 ? sprites_init::xpos#1 -Coalesced [778] render_init::i#3 ? render_init::i#1 -Coalesced [779] render_init::li_1#3 ? render_init::li_1#1 -Coalesced [780] render_init::li_2#3 ? render_init::li_2#1 -Coalesced [782] render_screen_original::screen#11 ? render_screen_original::screen#9 -Coalesced [784] render_screen_original::screen#13 ? render_screen_original::screen#8 -Coalesced [785] render_screen_original::cols#10 ? render_screen_original::cols#7 -Coalesced [793] render_screen_original::oscr#8 ? render_screen_original::oscr#4 -Coalesced [794] render_screen_original::screen#15 ? render_screen_original::screen#2 -Coalesced [795] render_screen_original::ocols#8 ? render_screen_original::ocols#4 -Coalesced [796] render_screen_original::cols#12 ? render_screen_original::cols#1 -Coalesced [797] render_screen_original::x#8 ? render_screen_original::x#1 -Coalesced [807] render_screen_original::screen#17 ? render_screen_original::screen#3 -Coalesced [808] render_screen_original::cols#14 ? render_screen_original::cols#2 -Coalesced [809] render_screen_original::x#10 ? render_screen_original::x#2 -Coalesced [820] render_screen_original::screen#12 ? render_screen_original::screen#10 -Coalesced [821] render_screen_original::cols#9 ? render_screen_original::cols#3 -Coalesced [822] render_screen_original::oscr#7 ? render_screen_original::oscr#1 -Coalesced [823] render_screen_original::ocols#7 ? render_screen_original::ocols#1 -Coalesced [824] render_screen_original::y#7 ? render_screen_original::y#1 -Coalesced [825] render_screen_original::screen#18 ? render_screen_original::screen#10 -Coalesced [826] render_screen_original::cols#15 ? render_screen_original::cols#3 -Coalesced [827] render_screen_original::x#11 ? render_screen_original::x#3 -Coalesced (already) [828] render_screen_original::oscr#9 ? render_screen_original::oscr#1 -Coalesced [829] render_screen_original::screen#16 ? render_screen_original::screen#3 -Coalesced (already) [830] render_screen_original::ocols#9 ? render_screen_original::ocols#1 -Coalesced [831] render_screen_original::cols#13 ? render_screen_original::cols#2 -Coalesced [832] render_screen_original::x#9 ? render_screen_original::x#2 -Coalesced (already) [833] render_screen_original::screen#14 ? render_screen_original::screen#2 -Coalesced (already) [834] render_screen_original::cols#11 ? render_screen_original::cols#1 -Coalesced [835] render_screen_original::x#7 ? render_screen_original::x#1 -Coalesced [862] irq_raster_next#27 ? irq_raster_next#3 -Coalesced [871] irq_raster_next#26 ? irq_raster_next#2 -Coalesced [876] irq_raster_next#25 ? irq_raster_next#1 +Coalesced [26] next_piece_idx#90 ← next_piece_idx#18 +Coalesced [27] game_over#96 ← game_over#52 +Not coalescing [31] current_ypos#104 ← current_ypos#6 +Not coalescing [32] current_xpos#128 ← current_xpos#103 +Not coalescing [33] current_piece_gfx#118 ← current_piece_gfx#74 +Not coalescing [34] current_piece_char#106 ← current_piece_char#5 +Not coalescing [36] next_piece_idx#84 ← next_piece_idx#18 +Coalesced [38] current_movedown_slow#95 ← current_movedown_slow#1 +Coalesced [40] current_piece_char#104 ← current_piece_char#5 +Coalesced [41] current_piece_gfx#116 ← current_piece_gfx#74 +Coalesced [42] current_xpos#126 ← current_xpos#103 +Coalesced [43] current_ypos#102 ← current_ypos#6 +Coalesced [44] game_over#90 ← game_over#52 +Coalesced [45] next_piece_idx#82 ← next_piece_idx#18 +Not coalescing [63] render_screen_render#70 ← render_screen_render#18 +Not coalescing [65] current_ypos#105 ← current_ypos#19 +Not coalescing [66] render_screen_render#69 ← render_screen_render#18 +Not coalescing [67] current_xpos#129 ← current_xpos#19 +Not coalescing [68] current_piece_gfx#119 ← current_piece_gfx#18 +Not coalescing [69] current_piece_char#107 ← current_piece_char#16 +Not coalescing [71] render_screen_render#68 ← render_screen_render#18 +Not coalescing [72] next_piece_idx#85 ← next_piece_idx#16 +Coalesced [78] render_screen_show#63 ← render_screen_show#13 +Coalesced [79] render_screen_render#67 ← render_screen_render#11 +Coalesced [80] current_movedown_slow#96 ← current_movedown_slow#21 +Coalesced [81] current_piece#97 ← current_piece#15 +Coalesced [82] current_piece_char#105 ← current_piece_char#16 +Coalesced [83] current_orientation#100 ← current_orientation#17 +Coalesced [84] current_piece_gfx#117 ← current_piece_gfx#18 +Coalesced [85] current_xpos#127 ← current_xpos#19 +Coalesced [86] current_ypos#103 ← current_ypos#19 +Coalesced [87] game_over#91 ← game_over#15 +Coalesced [88] next_piece_idx#83 ← next_piece_idx#16 +Coalesced [89] keyboard_events_size#86 ← keyboard_events_size#16 +Coalesced [90] current_movedown_counter#64 ← current_movedown_counter#14 +Coalesced [91] lines_bcd#95 ← lines_bcd#15 +Coalesced [92] score_bcd#91 ← score_bcd#14 +Coalesced [93] level#111 ← level#17 +Coalesced [94] level_bcd#108 ← level_bcd#17 +Coalesced (already) [95] current_movedown_slow#94 ← current_movedown_slow#21 +Coalesced (already) [96] current_piece#95 ← current_piece#15 +Coalesced (already) [97] current_piece_char#103 ← current_piece_char#16 +Coalesced (already) [98] current_orientation#99 ← current_orientation#17 +Coalesced (already) [99] current_piece_gfx#115 ← current_piece_gfx#18 +Coalesced (already) [100] current_xpos#125 ← current_xpos#19 +Coalesced (already) [101] current_ypos#101 ← current_ypos#19 +Coalesced (already) [102] game_over#89 ← game_over#15 +Coalesced (already) [103] next_piece_idx#81 ← next_piece_idx#16 +Coalesced (already) [104] keyboard_events_size#85 ← keyboard_events_size#16 +Coalesced (already) [105] current_movedown_counter#63 ← current_movedown_counter#14 +Coalesced (already) [106] lines_bcd#94 ← lines_bcd#15 +Coalesced (already) [107] score_bcd#90 ← score_bcd#14 +Coalesced (already) [108] level#110 ← level#17 +Coalesced (already) [109] level_bcd#107 ← level_bcd#17 +Coalesced [118] render_bcd::screen#7 ← render_bcd::screen#0 +Coalesced [119] render_bcd::bcd#9 ← render_bcd::bcd#0 +Coalesced [123] render_bcd::screen#8 ← render_bcd::screen#1 +Coalesced [124] render_bcd::bcd#10 ← render_bcd::bcd#1 +Coalesced [128] render_bcd::screen#9 ← render_bcd::screen#2 +Coalesced [129] render_bcd::bcd#11 ← render_bcd::bcd#2 +Coalesced [133] render_bcd::screen#10 ← render_bcd::screen#3 +Coalesced [134] render_bcd::bcd#12 ← render_bcd::bcd#3 +Coalesced [138] render_bcd::screen#11 ← render_bcd::screen#4 +Coalesced [139] render_bcd::bcd#13 ← render_bcd::bcd#4 +Coalesced [143] render_bcd::screen#12 ← render_bcd::screen#5 +Coalesced [144] render_bcd::bcd#14 ← render_bcd::bcd#5 +Coalesced [154] render_bcd::screen_pos#6 ← render_bcd::screen_pos#2 +Coalesced [161] render_bcd::screen_pos#5 ← render_bcd::screen_pos#0 +Coalesced [169] render_next::screen_next_area#13 ← render_next::screen_next_area#11 +Coalesced [171] render_next::next_piece_gfx#10 ← render_next::next_piece_gfx#3 +Coalesced [172] render_next::screen_next_area#14 ← render_next::screen_next_area#10 +Coalesced [185] render_next::next_piece_gfx#8 ← render_next::next_piece_gfx#1 +Coalesced [186] render_next::screen_next_area#12 ← render_next::screen_next_area#4 +Coalesced [187] render_next::l#8 ← render_next::l#1 +Coalesced (already) [188] render_next::next_piece_gfx#11 ← render_next::next_piece_gfx#1 +Coalesced [189] render_next::screen_next_area#15 ← render_next::screen_next_area#3 +Coalesced [190] render_next::c#6 ← render_next::c#1 +Coalesced [194] render_moving::ypos2#9 ← render_moving::ypos2#0 +Coalesced [198] render_moving::i#12 ← render_moving::i#1 +Coalesced [204] render_moving::ypos2#10 ← render_moving::ypos2#1 +Coalesced [205] render_moving::i#10 ← render_moving::i#8 +Coalesced [206] render_moving::l#9 ← render_moving::l#1 +Coalesced [210] render_moving::i#13 ← render_moving::i#3 +Coalesced [211] render_moving::xpos#5 ← render_moving::xpos#0 +Coalesced [220] render_moving::i#11 ← render_moving::i#2 +Coalesced (already) [221] render_moving::i#14 ← render_moving::i#2 +Coalesced [222] render_moving::xpos#6 ← render_moving::xpos#1 +Coalesced [223] render_moving::c#5 ← render_moving::c#1 +Coalesced [229] render_playfield::i#6 ← render_playfield::i#3 +Coalesced [230] render_playfield::screen_line#3 ← render_playfield::screen_line#0 +Coalesced [240] render_playfield::l#5 ← render_playfield::l#1 +Coalesced [241] render_playfield::i#5 ← render_playfield::i#1 +Coalesced (already) [242] render_playfield::i#7 ← render_playfield::i#1 +Coalesced [243] render_playfield::screen_line#4 ← render_playfield::screen_line#1 +Coalesced [244] render_playfield::c#3 ← render_playfield::c#1 +Coalesced [251] play_movement::return#6 ← play_movement::render#1 +Coalesced [252] current_orientation#101 ← current_orientation#20 +Coalesced [253] current_piece_gfx#120 ← current_piece_gfx#20 +Coalesced [254] current_xpos#130 ← current_xpos#22 +Coalesced [267] play_movement::return#7 ← play_movement::return#0 +Coalesced [268] current_orientation#102 ← current_orientation#25 +Coalesced [269] current_piece_gfx#121 ← current_piece_gfx#21 +Coalesced [270] current_xpos#131 ← current_xpos#26 +Coalesced (already) [273] current_orientation#105 ← current_orientation#20 +Coalesced (already) [274] current_piece_gfx#124 ← current_piece_gfx#20 +Coalesced [279] play_move_rotate::orientation#7 ← play_move_rotate::orientation#2 +Not coalescing [284] current_piece#101 ← current_piece#15 +Coalesced [285] play_collision::orientation#9 ← play_collision::orientation#3 +Coalesced [286] play_collision::ypos#9 ← play_collision::ypos#3 +Coalesced [287] play_collision::xpos#18 ← play_collision::xpos#3 +Coalesced [294] current_orientation#103 ← current_orientation#7 +Coalesced [295] current_piece_gfx#122 ← current_piece_gfx#7 +Coalesced (already) [296] current_orientation#104 ← current_orientation#20 +Coalesced (already) [297] current_piece_gfx#123 ← current_piece_gfx#20 +Coalesced [300] play_move_rotate::orientation#6 ← play_move_rotate::orientation#1 +Coalesced [304] play_collision::ypos2#11 ← play_collision::ypos2#0 +Coalesced [307] play_collision::i#12 ← play_collision::i#3 +Not coalescing [308] play_collision::col#9 ← play_collision::xpos#6 +Coalesced [325] play_collision::ypos2#12 ← play_collision::ypos2#1 +Not coalescing [326] play_collision::i#11 ← play_collision::i#1 +Coalesced [327] play_collision::l#11 ← play_collision::l#1 +Not coalescing [328] play_collision::i#13 ← play_collision::i#1 +Coalesced [329] play_collision::col#10 ← play_collision::col#1 +Coalesced [330] play_collision::c#9 ← play_collision::c#1 +Not coalescing [336] current_piece#100 ← current_piece#15 +Coalesced [337] play_collision::orientation#8 ← play_collision::orientation#2 +Coalesced [338] play_collision::ypos#8 ← play_collision::ypos#2 +Coalesced [339] play_collision::xpos#17 ← play_collision::xpos#2 +Coalesced [345] current_xpos#133 ← current_xpos#6 +Coalesced (already) [348] current_xpos#135 ← current_xpos#22 +Coalesced (already) [349] current_xpos#136 ← current_xpos#22 +Not coalescing [353] current_piece#99 ← current_piece#15 +Coalesced [354] play_collision::orientation#7 ← play_collision::orientation#1 +Coalesced [355] play_collision::ypos#7 ← play_collision::ypos#1 +Coalesced [356] play_collision::xpos#16 ← play_collision::xpos#1 +Coalesced [362] current_xpos#134 ← current_xpos#8 +Coalesced (already) [363] current_xpos#132 ← current_xpos#22 +Coalesced [374] play_move_down::movedown#15 ← play_move_down::movedown#2 +Coalesced [378] play_move_down::movedown#17 ← play_move_down::movedown#3 +Not coalescing [384] current_piece#98 ← current_piece#10 +Coalesced [385] play_collision::orientation#6 ← play_collision::orientation#0 +Coalesced [386] play_collision::ypos#6 ← play_collision::ypos#0 +Coalesced [387] play_collision::xpos#15 ← play_collision::xpos#0 +Coalesced (already) [400] next_piece_idx#91 ← next_piece_idx#10 +Coalesced (already) [401] game_over#97 ← game_over#10 +Coalesced [403] current_ypos#107 ← current_ypos#6 +Coalesced [404] lines_bcd#97 ← lines_bcd#17 +Coalesced [405] score_bcd#93 ← score_bcd#16 +Coalesced [406] level#113 ← level#19 +Coalesced [407] current_movedown_slow#98 ← current_movedown_slow#23 +Coalesced [408] level_bcd#110 ← level_bcd#19 +Coalesced [410] current_piece_char#109 ← current_piece_char#5 +Coalesced [411] current_piece_gfx#126 ← current_piece_gfx#74 +Coalesced [412] current_xpos#138 ← current_xpos#103 +Coalesced [413] game_over#93 ← game_over#52 +Coalesced [414] next_piece_idx#87 ← next_piece_idx#18 +Coalesced (already) [416] current_ypos#108 ← current_ypos#38 +Coalesced [417] lines_bcd#98 ← lines_bcd#26 +Coalesced [418] score_bcd#94 ← score_bcd#26 +Coalesced [419] level#114 ← level#33 +Coalesced [420] current_movedown_slow#99 ← current_movedown_slow#37 +Coalesced [421] level_bcd#111 ← level_bcd#31 +Coalesced [422] current_piece#105 ← current_piece#28 +Coalesced (already) [423] current_piece_char#110 ← current_piece_char#29 +Coalesced [424] current_orientation#107 ← current_orientation#37 +Coalesced (already) [425] current_piece_gfx#127 ← current_piece_gfx#35 +Coalesced (already) [426] current_xpos#139 ← current_xpos#43 +Coalesced (already) [427] game_over#94 ← game_over#27 +Coalesced (already) [428] next_piece_idx#88 ← next_piece_idx#30 +Coalesced [432] current_ypos#106 ← current_ypos#3 +Coalesced (already) [433] lines_bcd#96 ← lines_bcd#19 +Coalesced (already) [434] score_bcd#92 ← score_bcd#18 +Coalesced (already) [435] level#112 ← level#10 +Coalesced (already) [436] current_movedown_slow#97 ← current_movedown_slow#14 +Coalesced (already) [437] level_bcd#109 ← level_bcd#11 +Coalesced (already) [438] current_piece#103 ← current_piece#10 +Coalesced (already) [439] current_piece_char#108 ← current_piece_char#10 +Coalesced (already) [440] current_orientation#106 ← current_orientation#13 +Coalesced (already) [441] current_piece_gfx#125 ← current_piece_gfx#112 +Coalesced (already) [442] current_xpos#137 ← current_xpos#122 +Coalesced (already) [443] game_over#92 ← game_over#10 +Coalesced (already) [444] next_piece_idx#86 ← next_piece_idx#10 +Coalesced [445] current_movedown_counter#65 ← current_movedown_counter#12 +Coalesced (already) [446] current_ypos#109 ← current_ypos#11 +Coalesced (already) [447] lines_bcd#99 ← lines_bcd#19 +Coalesced (already) [448] score_bcd#95 ← score_bcd#18 +Coalesced (already) [449] level#115 ← level#10 +Coalesced (already) [450] current_movedown_slow#100 ← current_movedown_slow#14 +Coalesced (already) [451] level_bcd#112 ← level_bcd#11 +Coalesced (already) [452] current_piece#106 ← current_piece#10 +Coalesced (already) [453] current_piece_char#111 ← current_piece_char#10 +Coalesced (already) [454] current_orientation#108 ← current_orientation#13 +Coalesced (already) [455] current_piece_gfx#128 ← current_piece_gfx#112 +Coalesced (already) [456] current_xpos#140 ← current_xpos#122 +Coalesced (already) [457] game_over#95 ← game_over#10 +Coalesced (already) [458] next_piece_idx#89 ← next_piece_idx#10 +Coalesced [459] play_move_down::movedown#16 ← play_move_down::movedown#7 +Coalesced [460] play_move_down::movedown#13 ← play_move_down::movedown#10 +Coalesced (already) [461] play_move_down::movedown#14 ← play_move_down::movedown#10 +Coalesced [472] play_collision::ypos#10 ← play_collision::ypos#4 +Coalesced [473] play_collision::xpos#19 ← play_collision::xpos#4 +Coalesced [482] next_piece_idx#18 ← play_spawn_current::piece_idx#2 +Coalesced [489] play_spawn_current::piece_idx#4 ← play_spawn_current::piece_idx#1 +Coalesced (already) [490] game_over#98 ← game_over#65 +Coalesced [507] lines_bcd#102 ← lines_bcd#30 +Coalesced [508] score_bcd#98 ← score_bcd#30 +Coalesced [509] level#118 ← level#21 +Coalesced [510] current_movedown_slow#103 ← current_movedown_slow#69 +Coalesced [511] level_bcd#115 ← level_bcd#64 +Coalesced (already) [514] lines_bcd#101 ← lines_bcd#30 +Coalesced (already) [515] score_bcd#97 ← score_bcd#30 +Coalesced (already) [516] level#117 ← level#10 +Coalesced (already) [517] current_movedown_slow#102 ← current_movedown_slow#14 +Coalesced (already) [518] level_bcd#114 ← level_bcd#11 +Coalesced (already) [519] lines_bcd#100 ← lines_bcd#19 +Coalesced (already) [520] score_bcd#96 ← score_bcd#18 +Coalesced (already) [521] level#116 ← level#10 +Coalesced (already) [522] current_movedown_slow#101 ← current_movedown_slow#14 +Coalesced (already) [523] level_bcd#113 ← level_bcd#11 +Coalesced [527] current_movedown_slow#104 ← current_movedown_slow#10 +Coalesced [533] level_bcd#117 ← level_bcd#8 +Coalesced [543] play_increase_level::b#3 ← play_increase_level::b#1 +Coalesced [544] level_bcd#116 ← level_bcd#21 +Coalesced [547] play_remove_lines::r#10 ← play_remove_lines::r#3 +Coalesced [548] play_remove_lines::w#14 ← play_remove_lines::w#12 +Coalesced [562] play_remove_lines::w#17 ← play_remove_lines::w#2 +Coalesced [563] play_remove_lines::removed#14 ← play_remove_lines::removed#1 +Coalesced [567] play_remove_lines::w#19 ← play_remove_lines::w#11 +Coalesced [573] play_remove_lines::w#18 ← play_remove_lines::w#3 +Coalesced [574] play_remove_lines::r#9 ← play_remove_lines::r#1 +Coalesced [575] play_remove_lines::w#13 ← play_remove_lines::w#11 +Coalesced [576] play_remove_lines::y#9 ← play_remove_lines::y#1 +Coalesced [577] play_remove_lines::removed#12 ← play_remove_lines::removed#8 +Coalesced [578] play_remove_lines::w#16 ← play_remove_lines::w#1 +Coalesced (already) [579] play_remove_lines::removed#13 ← play_remove_lines::removed#11 +Coalesced (already) [580] play_remove_lines::r#11 ← play_remove_lines::r#1 +Coalesced (already) [581] play_remove_lines::w#15 ← play_remove_lines::w#1 +Coalesced [582] play_remove_lines::x#5 ← play_remove_lines::x#1 +Coalesced [583] play_remove_lines::full#5 ← play_remove_lines::full#2 +Coalesced (already) [584] play_remove_lines::full#6 ← play_remove_lines::full#4 +Coalesced [586] play_lock_current::ypos2#7 ← play_lock_current::ypos2#0 +Coalesced [590] play_lock_current::i#8 ← play_lock_current::i#3 +Coalesced [591] play_lock_current::col#5 ← play_lock_current::col#0 +Coalesced [603] play_lock_current::ypos2#8 ← play_lock_current::ypos2#1 +Not coalescing [604] play_lock_current::i#7 ← play_lock_current::i#1 +Coalesced [605] play_lock_current::l#7 ← play_lock_current::l#1 +Not coalescing [606] play_lock_current::i#9 ← play_lock_current::i#1 +Coalesced [607] play_lock_current::col#6 ← play_lock_current::col#1 +Coalesced [608] play_lock_current::c#5 ← play_lock_current::c#1 +Coalesced [618] keyboard_event_get::return#6 ← keyboard_event_get::return#1 +Coalesced [619] keyboard_events_size#88 ← keyboard_events_size#4 +Coalesced [622] keyboard_events_size#87 ← keyboard_events_size#13 +Coalesced [623] keyboard_events_size#89 ← keyboard_events_size#19 +Coalesced [631] keyboard_event_scan::keycode#18 ← keyboard_event_scan::keycode#1 +Coalesced (already) [632] keyboard_events_size#92 ← keyboard_events_size#30 +Coalesced [648] keyboard_modifiers#67 ← keyboard_modifiers#3 +Coalesced [655] keyboard_modifiers#69 ← keyboard_modifiers#4 +Coalesced [663] keyboard_modifiers#68 ← keyboard_modifiers#12 +Coalesced [664] keyboard_modifiers#66 ← keyboard_modifiers#11 +Coalesced [665] keyboard_event_scan::row#15 ← keyboard_event_scan::row#1 +Coalesced [666] keyboard_event_scan::keycode#16 ← keyboard_event_scan::keycode#14 +Coalesced (already) [667] keyboard_events_size#90 ← keyboard_events_size#13 +Coalesced [668] keyboard_event_scan::keycode#20 ← keyboard_event_scan::keycode#11 +Coalesced [669] keyboard_events_size#94 ← keyboard_events_size#30 +Coalesced [679] keyboard_events_size#98 ← keyboard_events_size#2 +Coalesced [685] keyboard_event_scan::keycode#17 ← keyboard_event_scan::keycode#15 +Coalesced [686] keyboard_events_size#91 ← keyboard_events_size#29 +Coalesced [687] keyboard_event_scan::col#9 ← keyboard_event_scan::col#1 +Coalesced (already) [688] keyboard_event_scan::keycode#19 ← keyboard_event_scan::keycode#15 +Coalesced (already) [689] keyboard_events_size#93 ← keyboard_events_size#29 +Coalesced [693] keyboard_events_size#97 ← keyboard_events_size#1 +Coalesced (already) [694] keyboard_events_size#96 ← keyboard_events_size#10 +Coalesced (already) [695] keyboard_events_size#95 ← keyboard_events_size#10 +Coalesced [725] play_init::b#3 ← play_init::b#1 +Coalesced [726] play_init::j#3 ← play_init::j#1 +Coalesced [727] play_init::pli#3 ← play_init::pli#1 +Coalesced [728] play_init::idx#3 ← play_init::idx#1 +Coalesced [753] sprites_init::s#3 ← sprites_init::s#1 +Coalesced [754] sprites_init::xpos#3 ← sprites_init::xpos#1 +Coalesced [778] render_init::i#3 ← render_init::i#1 +Coalesced [779] render_init::li_1#3 ← render_init::li_1#1 +Coalesced [780] render_init::li_2#3 ← render_init::li_2#1 +Coalesced [782] render_screen_original::screen#11 ← render_screen_original::screen#9 +Coalesced [784] render_screen_original::screen#13 ← render_screen_original::screen#8 +Coalesced [785] render_screen_original::cols#10 ← render_screen_original::cols#7 +Coalesced [793] render_screen_original::oscr#8 ← render_screen_original::oscr#4 +Coalesced [794] render_screen_original::screen#15 ← render_screen_original::screen#2 +Coalesced [795] render_screen_original::ocols#8 ← render_screen_original::ocols#4 +Coalesced [796] render_screen_original::cols#12 ← render_screen_original::cols#1 +Coalesced [797] render_screen_original::x#8 ← render_screen_original::x#1 +Coalesced [807] render_screen_original::screen#17 ← render_screen_original::screen#3 +Coalesced [808] render_screen_original::cols#14 ← render_screen_original::cols#2 +Coalesced [809] render_screen_original::x#10 ← render_screen_original::x#2 +Coalesced [820] render_screen_original::screen#12 ← render_screen_original::screen#10 +Coalesced [821] render_screen_original::cols#9 ← render_screen_original::cols#3 +Coalesced [822] render_screen_original::oscr#7 ← render_screen_original::oscr#1 +Coalesced [823] render_screen_original::ocols#7 ← render_screen_original::ocols#1 +Coalesced [824] render_screen_original::y#7 ← render_screen_original::y#1 +Coalesced [825] render_screen_original::screen#18 ← render_screen_original::screen#10 +Coalesced [826] render_screen_original::cols#15 ← render_screen_original::cols#3 +Coalesced [827] render_screen_original::x#11 ← render_screen_original::x#3 +Coalesced (already) [828] render_screen_original::oscr#9 ← render_screen_original::oscr#1 +Coalesced [829] render_screen_original::screen#16 ← render_screen_original::screen#3 +Coalesced (already) [830] render_screen_original::ocols#9 ← render_screen_original::ocols#1 +Coalesced [831] render_screen_original::cols#13 ← render_screen_original::cols#2 +Coalesced [832] render_screen_original::x#9 ← render_screen_original::x#2 +Coalesced (already) [833] render_screen_original::screen#14 ← render_screen_original::screen#2 +Coalesced (already) [834] render_screen_original::cols#11 ← render_screen_original::cols#1 +Coalesced [835] render_screen_original::x#7 ← render_screen_original::x#1 +Coalesced [862] irq_raster_next#27 ← irq_raster_next#3 +Coalesced [871] irq_raster_next#26 ← irq_raster_next#2 +Coalesced [876] irq_raster_next#25 ← irq_raster_next#1 Coalesced down to 97 phi equivalence classes Culled Empty Block (label) main::@44 Culled Empty Block (label) render_bcd::@3 @@ -10187,7 +10187,7 @@ FINAL CONTROL FLOW GRAPH [0] phi() to:@1 @1: scope:[] from @begin - [1] (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [1] (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 kickasm(location (const byte*) PLAYFIELD_CHARSET#0) {{ .fill 8,$00 // Place a filled char at the start of the charset .import binary "playfield-screen.imap" }} @@ -10221,15 +10221,15 @@ FINAL CONTROL FLOW GRAPH }} to:@3 @3: scope:[] from @2 - [6] (byte) irq_raster_next#0 ? (const byte) IRQ_RASTER_FIRST#0 - [7] (byte) irq_sprite_ypos#0 ? (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 + [6] (byte) irq_raster_next#0 ← (const byte) IRQ_RASTER_FIRST#0 + [7] (byte) irq_sprite_ypos#0 ← (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 to:toSpritePtr1 toSpritePtr1: scope:[] from @3 [8] phi() to:@5 @5: scope:[] from toSpritePtr1 - [9] (byte) irq_sprite_ptr#0 ? (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 - [10] (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [9] (byte) irq_sprite_ptr#0 ← (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 + [10] (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@4 @4: scope:[] from @5 [11] phi() @@ -10270,35 +10270,35 @@ main::@14: scope:[main] from main::@13 [29] call render_playfield to:main::@15 main::@15: scope:[main] from main::@14 - [30] (byte~) current_ypos#104 ? (byte) current_ypos#6 - [31] (byte~) current_xpos#128 ? (byte) current_xpos#103 - [32] (byte*~) current_piece_gfx#118 ? (byte*) current_piece_gfx#74 - [33] (byte~) current_piece_char#106 ? (byte) current_piece_char#5 + [30] (byte~) current_ypos#104 ← (byte) current_ypos#6 + [31] (byte~) current_xpos#128 ← (byte) current_xpos#103 + [32] (byte*~) current_piece_gfx#118 ← (byte*) current_piece_gfx#74 + [33] (byte~) current_piece_char#106 ← (byte) current_piece_char#5 [34] call render_moving to:main::@16 main::@16: scope:[main] from main::@15 - [35] (byte~) next_piece_idx#84 ? (byte) play_spawn_current::piece_idx#2 + [35] (byte~) next_piece_idx#84 ← (byte) play_spawn_current::piece_idx#2 [36] call render_next - [37] (byte*~) current_piece#96 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + [37] (byte*~) current_piece#96 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) to:main::@1 main::@1: scope:[main] from main::@16 main::@24 main::@6 - [38] (byte) level_bcd#11 ? phi( main::@6/(byte) level_bcd#17 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) level_bcd#17 ) - [38] (byte) level#10 ? phi( main::@6/(byte) level#17 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) level#17 ) - [38] (dword) score_bcd#18 ? phi( main::@6/(dword) score_bcd#14 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(dword) score_bcd#14 ) - [38] (word) lines_bcd#19 ? phi( main::@6/(word) lines_bcd#15 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(word) lines_bcd#15 ) - [38] (byte) current_movedown_counter#16 ? phi( main::@6/(byte) current_movedown_counter#14 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) current_movedown_counter#14 ) - [38] (byte) keyboard_events_size#19 ? phi( main::@6/(byte) keyboard_events_size#16 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) keyboard_events_size#16 ) - [38] (byte) next_piece_idx#10 ? phi( main::@6/(byte) next_piece_idx#16 main::@16/(byte) play_spawn_current::piece_idx#2 main::@24/(byte) next_piece_idx#16 ) - [38] (byte) game_over#10 ? phi( main::@6/(byte) game_over#15 main::@16/(byte) game_over#52 main::@24/(byte) game_over#15 ) - [38] (byte) current_ypos#11 ? phi( main::@6/(byte) current_ypos#19 main::@16/(byte) current_ypos#6 main::@24/(byte) current_ypos#19 ) - [38] (byte) current_xpos#122 ? phi( main::@6/(byte) current_xpos#19 main::@16/(byte) current_xpos#103 main::@24/(byte) current_xpos#19 ) - [38] (byte*) current_piece_gfx#112 ? phi( main::@6/(byte*) current_piece_gfx#18 main::@16/(byte*) current_piece_gfx#74 main::@24/(byte*) current_piece_gfx#18 ) - [38] (byte) current_orientation#13 ? phi( main::@6/(byte) current_orientation#17 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) current_orientation#17 ) - [38] (byte) current_piece_char#10 ? phi( main::@6/(byte) current_piece_char#16 main::@16/(byte) current_piece_char#5 main::@24/(byte) current_piece_char#16 ) - [38] (byte*) current_piece#10 ? phi( main::@6/(byte*) current_piece#15 main::@16/(byte*~) current_piece#96 main::@24/(byte*) current_piece#15 ) - [38] (byte) current_movedown_slow#14 ? phi( main::@6/(byte) current_movedown_slow#21 main::@16/(byte) current_movedown_slow#1 main::@24/(byte) current_movedown_slow#21 ) - [38] (byte) render_screen_render#18 ? phi( main::@16/(byte/signed byte/word/signed word/dword/signed dword) $40 main::@24/(byte) render_screen_render#11 ) - [38] (byte) render_screen_show#16 ? phi( main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) render_screen_show#13 ) + [38] (byte) level_bcd#11 ← phi( main::@6/(byte) level_bcd#17 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) level_bcd#17 ) + [38] (byte) level#10 ← phi( main::@6/(byte) level#17 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) level#17 ) + [38] (dword) score_bcd#18 ← phi( main::@6/(dword) score_bcd#14 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(dword) score_bcd#14 ) + [38] (word) lines_bcd#19 ← phi( main::@6/(word) lines_bcd#15 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(word) lines_bcd#15 ) + [38] (byte) current_movedown_counter#16 ← phi( main::@6/(byte) current_movedown_counter#14 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) current_movedown_counter#14 ) + [38] (byte) keyboard_events_size#19 ← phi( main::@6/(byte) keyboard_events_size#16 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) keyboard_events_size#16 ) + [38] (byte) next_piece_idx#10 ← phi( main::@6/(byte) next_piece_idx#16 main::@16/(byte) play_spawn_current::piece_idx#2 main::@24/(byte) next_piece_idx#16 ) + [38] (byte) game_over#10 ← phi( main::@6/(byte) game_over#15 main::@16/(byte) game_over#52 main::@24/(byte) game_over#15 ) + [38] (byte) current_ypos#11 ← phi( main::@6/(byte) current_ypos#19 main::@16/(byte) current_ypos#6 main::@24/(byte) current_ypos#19 ) + [38] (byte) current_xpos#122 ← phi( main::@6/(byte) current_xpos#19 main::@16/(byte) current_xpos#103 main::@24/(byte) current_xpos#19 ) + [38] (byte*) current_piece_gfx#112 ← phi( main::@6/(byte*) current_piece_gfx#18 main::@16/(byte*) current_piece_gfx#74 main::@24/(byte*) current_piece_gfx#18 ) + [38] (byte) current_orientation#13 ← phi( main::@6/(byte) current_orientation#17 main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) current_orientation#17 ) + [38] (byte) current_piece_char#10 ← phi( main::@6/(byte) current_piece_char#16 main::@16/(byte) current_piece_char#5 main::@24/(byte) current_piece_char#16 ) + [38] (byte*) current_piece#10 ← phi( main::@6/(byte*) current_piece#15 main::@16/(byte*~) current_piece#96 main::@24/(byte*) current_piece#15 ) + [38] (byte) current_movedown_slow#14 ← phi( main::@6/(byte) current_movedown_slow#21 main::@16/(byte) current_movedown_slow#1 main::@24/(byte) current_movedown_slow#21 ) + [38] (byte) render_screen_render#18 ← phi( main::@16/(byte/signed byte/word/signed word/dword/signed dword) $40 main::@24/(byte) render_screen_render#11 ) + [38] (byte) render_screen_show#16 ← phi( main::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@24/(byte) render_screen_show#13 ) to:main::@2 main::@2: scope:[main] from main::@1 main::@2 [39] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto main::@2 @@ -10314,41 +10314,41 @@ main::@17: scope:[main] from main::@3 main::@18: scope:[main] from main::@17 [44] phi() [45] call keyboard_event_get - [46] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + [46] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 to:main::@19 main::@19: scope:[main] from main::@18 - [47] (byte) main::key_event#0 ? (byte) keyboard_event_get::return#3 + [47] (byte) main::key_event#0 ← (byte) keyboard_event_get::return#3 [48] if((byte) game_over#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@4 to:main::@5 main::@5: scope:[main] from main::@19 main::@5 - [49] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) + [49] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) to:main::@5 main::@4: scope:[main] from main::@19 - [50] (byte) play_movement::key_event#0 ? (byte) main::key_event#0 + [50] (byte) play_movement::key_event#0 ← (byte) main::key_event#0 [51] call play_movement - [52] (byte) play_movement::return#3 ? (byte) play_movement::return#2 + [52] (byte) play_movement::return#3 ← (byte) play_movement::return#2 to:main::@20 main::@20: scope:[main] from main::@4 - [53] (byte) main::render#1 ? (byte) play_movement::return#3 + [53] (byte) main::render#1 ← (byte) play_movement::return#3 to:main::@6 main::@6: scope:[main] from main::@20 [54] if((byte) main::render#1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@1 to:main::@7 main::@7: scope:[main] from main::@6 - [55] (byte~) render_screen_render#70 ? (byte) render_screen_render#18 + [55] (byte~) render_screen_render#70 ← (byte) render_screen_render#18 [56] call render_playfield to:main::@21 main::@21: scope:[main] from main::@7 - [57] (byte~) current_ypos#105 ? (byte) current_ypos#19 - [58] (byte~) render_screen_render#69 ? (byte) render_screen_render#18 - [59] (byte~) current_xpos#129 ? (byte) current_xpos#19 - [60] (byte*~) current_piece_gfx#119 ? (byte*) current_piece_gfx#18 - [61] (byte~) current_piece_char#107 ? (byte) current_piece_char#16 + [57] (byte~) current_ypos#105 ← (byte) current_ypos#19 + [58] (byte~) render_screen_render#69 ← (byte) render_screen_render#18 + [59] (byte~) current_xpos#129 ← (byte) current_xpos#19 + [60] (byte*~) current_piece_gfx#119 ← (byte*) current_piece_gfx#18 + [61] (byte~) current_piece_char#107 ← (byte) current_piece_char#16 [62] call render_moving to:main::@22 main::@22: scope:[main] from main::@21 - [63] (byte~) render_screen_render#68 ? (byte) render_screen_render#18 - [64] (byte~) next_piece_idx#85 ? (byte) next_piece_idx#16 + [63] (byte~) render_screen_render#68 ← (byte) render_screen_render#18 + [64] (byte~) next_piece_idx#85 ← (byte) next_piece_idx#16 [65] call render_next to:main::@23 main::@23: scope:[main] from main::@22 @@ -10360,8 +10360,8 @@ main::@24: scope:[main] from main::@23 [69] call render_screen_swap to:main::@1 render_screen_swap: scope:[render_screen_swap] from main::@24 - [70] (byte) render_screen_render#11 ? (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 - [71] (byte) render_screen_show#13 ? (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 + [70] (byte) render_screen_render#11 ← (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 + [71] (byte) render_screen_show#13 ← (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 to:render_screen_swap::@return render_screen_swap::@return: scope:[render_screen_swap] from render_screen_swap [72] return @@ -10373,215 +10373,215 @@ render_score::@2: scope:[render_score] from render_score [74] phi() to:render_score::@1 render_score::@1: scope:[render_score] from render_score render_score::@2 - [75] (byte*) render_score::screen#3 ? phi( render_score/(const byte*) PLAYFIELD_SCREEN_1#0 render_score::@2/(const byte*) PLAYFIELD_SCREEN_2#0 ) - [76] (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 - [77] (byte) render_bcd::bcd#0 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + [75] (byte*) render_score::screen#3 ← phi( render_score/(const byte*) PLAYFIELD_SCREEN_1#0 render_score::@2/(const byte*) PLAYFIELD_SCREEN_2#0 ) + [76] (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 + [77] (byte) render_bcd::bcd#0 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) [78] call render_bcd to:render_score::@3 render_score::@3: scope:[render_score] from render_score::@1 - [79] (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#3 - [80] (byte) render_bcd::bcd#1 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) + [79] (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#3 + [80] (byte) render_bcd::bcd#1 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) [81] call render_bcd to:render_score::@4 render_score::@4: scope:[render_score] from render_score::@3 - [82] (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#3 - [83] (byte) render_bcd::bcd#2 ? *((const byte*) render_score::score_bytes#0) + [82] (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#3 + [83] (byte) render_bcd::bcd#2 ← *((const byte*) render_score::score_bytes#0) [84] call render_bcd to:render_score::@5 render_score::@5: scope:[render_score] from render_score::@4 - [85] (byte) render_bcd::bcd#3 ? > (word) lines_bcd#15 - [86] (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#3 + [85] (byte) render_bcd::bcd#3 ← > (word) lines_bcd#15 + [86] (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#3 [87] call render_bcd to:render_score::@6 render_score::@6: scope:[render_score] from render_score::@5 - [88] (byte) render_bcd::bcd#4 ? < (word) lines_bcd#15 - [89] (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#3 + [88] (byte) render_bcd::bcd#4 ← < (word) lines_bcd#15 + [89] (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#3 [90] call render_bcd to:render_score::@7 render_score::@7: scope:[render_score] from render_score::@6 - [91] (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#3 - [92] (byte) render_bcd::bcd#5 ? (byte) level_bcd#17 + [91] (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#3 + [92] (byte) render_bcd::bcd#5 ← (byte) level_bcd#17 [93] call render_bcd to:render_score::@return render_score::@return: scope:[render_score] from render_score::@7 [94] return to:@return render_bcd: scope:[render_bcd] from render_score::@1 render_score::@3 render_score::@4 render_score::@5 render_score::@6 render_score::@7 - [95] (byte) render_bcd::bcd#6 ? phi( render_score::@1/(byte) render_bcd::bcd#0 render_score::@3/(byte) render_bcd::bcd#1 render_score::@4/(byte) render_bcd::bcd#2 render_score::@5/(byte) render_bcd::bcd#3 render_score::@6/(byte) render_bcd::bcd#4 render_score::@7/(byte) render_bcd::bcd#5 ) - [95] (byte) render_bcd::only_low#6 ? phi( render_score::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 render_score::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [95] (word) render_bcd::offset#6 ? phi( render_score::@1/(const word) render_score::score_offset#0 render_score::@3/(const word) render_score::score_offset#0+(byte/signed byte/word/signed word/dword/signed dword) 2 render_score::@4/(const word) render_score::score_offset#0+(byte/signed byte/word/signed word/dword/signed dword) 4 render_score::@5/(const word) render_score::lines_offset#0 render_score::@6/(const word) render_score::lines_offset#0+(byte/signed byte/word/signed word/dword/signed dword) 1 render_score::@7/(const word) render_score::level_offset#0 ) - [95] (byte*) render_bcd::screen#6 ? phi( render_score::@1/(byte*) render_bcd::screen#0 render_score::@3/(byte*) render_bcd::screen#1 render_score::@4/(byte*) render_bcd::screen#2 render_score::@5/(byte*) render_bcd::screen#3 render_score::@6/(byte*) render_bcd::screen#4 render_score::@7/(byte*) render_bcd::screen#5 ) - [96] (byte*) render_bcd::screen_pos#0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 + [95] (byte) render_bcd::bcd#6 ← phi( render_score::@1/(byte) render_bcd::bcd#0 render_score::@3/(byte) render_bcd::bcd#1 render_score::@4/(byte) render_bcd::bcd#2 render_score::@5/(byte) render_bcd::bcd#3 render_score::@6/(byte) render_bcd::bcd#4 render_score::@7/(byte) render_bcd::bcd#5 ) + [95] (byte) render_bcd::only_low#6 ← phi( render_score::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 render_score::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 render_score::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [95] (word) render_bcd::offset#6 ← phi( render_score::@1/(const word) render_score::score_offset#0 render_score::@3/(const word) render_score::score_offset#0+(byte/signed byte/word/signed word/dword/signed dword) 2 render_score::@4/(const word) render_score::score_offset#0+(byte/signed byte/word/signed word/dword/signed dword) 4 render_score::@5/(const word) render_score::lines_offset#0 render_score::@6/(const word) render_score::lines_offset#0+(byte/signed byte/word/signed word/dword/signed dword) 1 render_score::@7/(const word) render_score::level_offset#0 ) + [95] (byte*) render_bcd::screen#6 ← phi( render_score::@1/(byte*) render_bcd::screen#0 render_score::@3/(byte*) render_bcd::screen#1 render_score::@4/(byte*) render_bcd::screen#2 render_score::@5/(byte*) render_bcd::screen#3 render_score::@6/(byte*) render_bcd::screen#4 render_score::@7/(byte*) render_bcd::screen#5 ) + [96] (byte*) render_bcd::screen_pos#0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 [97] if((byte) render_bcd::only_low#6!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_bcd::@1 to:render_bcd::@2 render_bcd::@2: scope:[render_bcd] from render_bcd - [98] (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [99] (byte~) render_bcd::$6 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 - [100] *((byte*) render_bcd::screen_pos#0) ? (byte~) render_bcd::$6 - [101] (byte*) render_bcd::screen_pos#2 ? ++ (byte*) render_bcd::screen_pos#0 + [98] (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [99] (byte~) render_bcd::$6 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 + [100] *((byte*) render_bcd::screen_pos#0) ← (byte~) render_bcd::$6 + [101] (byte*) render_bcd::screen_pos#2 ← ++ (byte*) render_bcd::screen_pos#0 to:render_bcd::@1 render_bcd::@1: scope:[render_bcd] from render_bcd render_bcd::@2 - [102] (byte*) render_bcd::screen_pos#3 ? phi( render_bcd/(byte*) render_bcd::screen_pos#0 render_bcd::@2/(byte*) render_bcd::screen_pos#2 ) - [103] (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f - [104] (byte~) render_bcd::$4 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 - [105] *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 - [106] (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 + [102] (byte*) render_bcd::screen_pos#3 ← phi( render_bcd/(byte*) render_bcd::screen_pos#0 render_bcd::@2/(byte*) render_bcd::screen_pos#2 ) + [103] (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f + [104] (byte~) render_bcd::$4 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 + [105] *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 + [106] (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 to:render_bcd::@return render_bcd::@return: scope:[render_bcd] from render_bcd::@1 [107] return to:@return render_next: scope:[render_next] from main::@16 main::@22 - [108] (byte) next_piece_idx#12 ? phi( main::@16/(byte~) next_piece_idx#84 main::@22/(byte~) next_piece_idx#85 ) - [108] (byte) render_screen_render#15 ? phi( main::@16/(byte/signed byte/word/signed word/dword/signed dword) $40 main::@22/(byte~) render_screen_render#68 ) + [108] (byte) next_piece_idx#12 ← phi( main::@16/(byte~) next_piece_idx#84 main::@22/(byte~) next_piece_idx#85 ) + [108] (byte) render_screen_render#15 ← phi( main::@16/(byte/signed byte/word/signed word/dword/signed dword) $40 main::@22/(byte~) render_screen_render#68 ) [109] if((byte) render_screen_render#15==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_next::@1 to:render_next::@2 render_next::@2: scope:[render_next] from render_next [110] phi() to:render_next::@1 render_next::@1: scope:[render_next] from render_next render_next::@2 - [111] (byte*) render_next::screen_next_area#11 ? phi( render_next/(const byte*) PLAYFIELD_SCREEN_1#0+(const word) render_next::next_area_offset#0 render_next::@2/(const byte*) PLAYFIELD_SCREEN_2#0+(const word) render_next::next_area_offset#0 ) - [112] (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [113] (byte) render_next::next_piece_char#0 ? *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) - [114] (byte*~) render_next::next_piece_gfx#9 ? (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) + [111] (byte*) render_next::screen_next_area#11 ← phi( render_next/(const byte*) PLAYFIELD_SCREEN_1#0+(const word) render_next::next_area_offset#0 render_next::@2/(const byte*) PLAYFIELD_SCREEN_2#0+(const word) render_next::next_area_offset#0 ) + [112] (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [113] (byte) render_next::next_piece_char#0 ← *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) + [114] (byte*~) render_next::next_piece_gfx#9 ← (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) to:render_next::@3 render_next::@3: scope:[render_next] from render_next::@1 render_next::@8 - [115] (byte) render_next::l#7 ? phi( render_next::@8/(byte) render_next::l#1 render_next::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [115] (byte*) render_next::screen_next_area#10 ? phi( render_next::@8/(byte*) render_next::screen_next_area#4 render_next::@1/(byte*) render_next::screen_next_area#11 ) - [115] (byte*) render_next::next_piece_gfx#3 ? phi( render_next::@8/(byte*) render_next::next_piece_gfx#1 render_next::@1/(byte*~) render_next::next_piece_gfx#9 ) + [115] (byte) render_next::l#7 ← phi( render_next::@8/(byte) render_next::l#1 render_next::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [115] (byte*) render_next::screen_next_area#10 ← phi( render_next::@8/(byte*) render_next::screen_next_area#4 render_next::@1/(byte*) render_next::screen_next_area#11 ) + [115] (byte*) render_next::next_piece_gfx#3 ← phi( render_next::@8/(byte*) render_next::next_piece_gfx#1 render_next::@1/(byte*~) render_next::next_piece_gfx#9 ) to:render_next::@4 render_next::@4: scope:[render_next] from render_next::@3 render_next::@6 - [116] (byte) render_next::c#2 ? phi( render_next::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 render_next::@6/(byte) render_next::c#1 ) - [116] (byte*) render_next::screen_next_area#5 ? phi( render_next::@3/(byte*) render_next::screen_next_area#10 render_next::@6/(byte*) render_next::screen_next_area#3 ) - [116] (byte*) render_next::next_piece_gfx#2 ? phi( render_next::@3/(byte*) render_next::next_piece_gfx#3 render_next::@6/(byte*) render_next::next_piece_gfx#1 ) - [117] (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) - [118] (byte*) render_next::next_piece_gfx#1 ? ++ (byte*) render_next::next_piece_gfx#2 + [116] (byte) render_next::c#2 ← phi( render_next::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 render_next::@6/(byte) render_next::c#1 ) + [116] (byte*) render_next::screen_next_area#5 ← phi( render_next::@3/(byte*) render_next::screen_next_area#10 render_next::@6/(byte*) render_next::screen_next_area#3 ) + [116] (byte*) render_next::next_piece_gfx#2 ← phi( render_next::@3/(byte*) render_next::next_piece_gfx#3 render_next::@6/(byte*) render_next::next_piece_gfx#1 ) + [117] (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) + [118] (byte*) render_next::next_piece_gfx#1 ← ++ (byte*) render_next::next_piece_gfx#2 [119] if((byte) render_next::cell#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_next::@5 to:render_next::@7 render_next::@7: scope:[render_next] from render_next::@4 - [120] *((byte*) render_next::screen_next_area#5) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [120] *((byte*) render_next::screen_next_area#5) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_next::@6 render_next::@6: scope:[render_next] from render_next::@5 render_next::@7 - [121] (byte*) render_next::screen_next_area#3 ? ++ (byte*) render_next::screen_next_area#5 - [122] (byte) render_next::c#1 ? ++ (byte) render_next::c#2 + [121] (byte*) render_next::screen_next_area#3 ← ++ (byte*) render_next::screen_next_area#5 + [122] (byte) render_next::c#1 ← ++ (byte) render_next::c#2 [123] if((byte) render_next::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@4 to:render_next::@8 render_next::@8: scope:[render_next] from render_next::@6 - [124] (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 - [125] (byte) render_next::l#1 ? ++ (byte) render_next::l#7 + [124] (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 + [125] (byte) render_next::l#1 ← ++ (byte) render_next::l#7 [126] if((byte) render_next::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@3 to:render_next::@return render_next::@return: scope:[render_next] from render_next::@8 [127] return to:@return render_next::@5: scope:[render_next] from render_next::@4 - [128] *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#0 + [128] *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#0 to:render_next::@6 render_moving: scope:[render_moving] from main::@15 main::@21 - [129] (byte) current_piece_char#68 ? phi( main::@15/(byte~) current_piece_char#106 main::@21/(byte~) current_piece_char#107 ) - [129] (byte*) current_piece_gfx#64 ? phi( main::@15/(byte*~) current_piece_gfx#118 main::@21/(byte*~) current_piece_gfx#119 ) - [129] (byte) current_xpos#59 ? phi( main::@15/(byte~) current_xpos#128 main::@21/(byte~) current_xpos#129 ) - [129] (byte) render_screen_render#33 ? phi( main::@15/(byte/signed byte/word/signed word/dword/signed dword) $40 main::@21/(byte~) render_screen_render#69 ) - [129] (byte) current_ypos#13 ? phi( main::@15/(byte~) current_ypos#104 main::@21/(byte~) current_ypos#105 ) - [130] (byte) render_moving::ypos2#0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [129] (byte) current_piece_char#68 ← phi( main::@15/(byte~) current_piece_char#106 main::@21/(byte~) current_piece_char#107 ) + [129] (byte*) current_piece_gfx#64 ← phi( main::@15/(byte*~) current_piece_gfx#118 main::@21/(byte*~) current_piece_gfx#119 ) + [129] (byte) current_xpos#59 ← phi( main::@15/(byte~) current_xpos#128 main::@21/(byte~) current_xpos#129 ) + [129] (byte) render_screen_render#33 ← phi( main::@15/(byte/signed byte/word/signed word/dword/signed dword) $40 main::@21/(byte~) render_screen_render#69 ) + [129] (byte) current_ypos#13 ← phi( main::@15/(byte~) current_ypos#104 main::@21/(byte~) current_ypos#105 ) + [130] (byte) render_moving::ypos2#0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:render_moving::@1 render_moving::@1: scope:[render_moving] from render_moving render_moving::@3 - [131] (byte) render_moving::l#4 ? phi( render_moving/(byte/signed byte/word/signed word/dword/signed dword) 0 render_moving::@3/(byte) render_moving::l#1 ) - [131] (byte) render_moving::i#3 ? phi( render_moving/(byte/signed byte/word/signed word/dword/signed dword) 0 render_moving::@3/(byte) render_moving::i#8 ) - [131] (byte) render_moving::ypos2#2 ? phi( render_moving/(byte) render_moving::ypos2#0 render_moving::@3/(byte) render_moving::ypos2#1 ) + [131] (byte) render_moving::l#4 ← phi( render_moving/(byte/signed byte/word/signed word/dword/signed dword) 0 render_moving::@3/(byte) render_moving::l#1 ) + [131] (byte) render_moving::i#3 ← phi( render_moving/(byte/signed byte/word/signed word/dword/signed dword) 0 render_moving::@3/(byte) render_moving::i#8 ) + [131] (byte) render_moving::ypos2#2 ← phi( render_moving/(byte) render_moving::ypos2#0 render_moving::@3/(byte) render_moving::ypos2#1 ) [132] if((byte) render_moving::ypos2#2>(byte/signed byte/word/signed word/dword/signed dword) 2) goto render_moving::@2 to:render_moving::@7 render_moving::@7: scope:[render_moving] from render_moving::@1 - [133] (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 + [133] (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 to:render_moving::@3 render_moving::@3: scope:[render_moving] from render_moving::@5 render_moving::@7 - [134] (byte) render_moving::i#8 ? phi( render_moving::@5/(byte) render_moving::i#2 render_moving::@7/(byte) render_moving::i#1 ) - [135] (byte) render_moving::ypos2#1 ? (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [136] (byte) render_moving::l#1 ? ++ (byte) render_moving::l#4 + [134] (byte) render_moving::i#8 ← phi( render_moving::@5/(byte) render_moving::i#2 render_moving::@7/(byte) render_moving::i#1 ) + [135] (byte) render_moving::ypos2#1 ← (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [136] (byte) render_moving::l#1 ← ++ (byte) render_moving::l#4 [137] if((byte) render_moving::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@1 to:render_moving::@return render_moving::@return: scope:[render_moving] from render_moving::@3 [138] return to:@return render_moving::@2: scope:[render_moving] from render_moving::@1 - [139] (byte~) render_moving::$2 ? (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 - [140] (byte*) render_moving::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) - [141] (byte) render_moving::xpos#0 ? (byte) current_xpos#59 + [139] (byte~) render_moving::$2 ← (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 + [140] (byte*) render_moving::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) + [141] (byte) render_moving::xpos#0 ← (byte) current_xpos#59 to:render_moving::@4 render_moving::@4: scope:[render_moving] from render_moving::@2 render_moving::@5 - [142] (byte) render_moving::c#2 ? phi( render_moving::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 render_moving::@5/(byte) render_moving::c#1 ) - [142] (byte) render_moving::xpos#2 ? phi( render_moving::@2/(byte) render_moving::xpos#0 render_moving::@5/(byte) render_moving::xpos#1 ) - [142] (byte) render_moving::i#4 ? phi( render_moving::@2/(byte) render_moving::i#3 render_moving::@5/(byte) render_moving::i#2 ) - [143] (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) - [144] (byte) render_moving::i#2 ? ++ (byte) render_moving::i#4 + [142] (byte) render_moving::c#2 ← phi( render_moving::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 render_moving::@5/(byte) render_moving::c#1 ) + [142] (byte) render_moving::xpos#2 ← phi( render_moving::@2/(byte) render_moving::xpos#0 render_moving::@5/(byte) render_moving::xpos#1 ) + [142] (byte) render_moving::i#4 ← phi( render_moving::@2/(byte) render_moving::i#3 render_moving::@5/(byte) render_moving::i#2 ) + [143] (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) + [144] (byte) render_moving::i#2 ← ++ (byte) render_moving::i#4 [145] if((byte) render_moving::current_cell#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_moving::@5 to:render_moving::@6 render_moving::@6: scope:[render_moving] from render_moving::@4 - [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ? (byte) current_piece_char#68 + [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ← (byte) current_piece_char#68 to:render_moving::@5 render_moving::@5: scope:[render_moving] from render_moving::@4 render_moving::@6 - [147] (byte) render_moving::xpos#1 ? ++ (byte) render_moving::xpos#2 - [148] (byte) render_moving::c#1 ? ++ (byte) render_moving::c#2 + [147] (byte) render_moving::xpos#1 ← ++ (byte) render_moving::xpos#2 + [148] (byte) render_moving::c#1 ← ++ (byte) render_moving::c#2 [149] if((byte) render_moving::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@4 to:render_moving::@3 render_playfield: scope:[render_playfield] from main::@14 main::@7 - [150] (byte) render_screen_render#22 ? phi( main::@7/(byte~) render_screen_render#70 main::@14/(byte/signed byte/word/signed word/dword/signed dword) $40 ) + [150] (byte) render_screen_render#22 ← phi( main::@7/(byte~) render_screen_render#70 main::@14/(byte/signed byte/word/signed word/dword/signed dword) $40 ) to:render_playfield::@1 render_playfield::@1: scope:[render_playfield] from render_playfield render_playfield::@3 - [151] (byte) render_playfield::i#3 ? phi( render_playfield/(const byte) PLAYFIELD_COLS#0*(byte/signed byte/word/signed word/dword/signed dword) 2 render_playfield::@3/(byte) render_playfield::i#1 ) - [151] (byte) render_playfield::l#2 ? phi( render_playfield/(byte/signed byte/word/signed word/dword/signed dword) 2 render_playfield::@3/(byte) render_playfield::l#1 ) - [152] (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [153] (byte~) render_playfield::$3 ? (byte) render_screen_render#22 + (byte~) render_playfield::$2 - [154] (byte*) render_playfield::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) + [151] (byte) render_playfield::i#3 ← phi( render_playfield/(const byte) PLAYFIELD_COLS#0*(byte/signed byte/word/signed word/dword/signed dword) 2 render_playfield::@3/(byte) render_playfield::i#1 ) + [151] (byte) render_playfield::l#2 ← phi( render_playfield/(byte/signed byte/word/signed word/dword/signed dword) 2 render_playfield::@3/(byte) render_playfield::l#1 ) + [152] (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [153] (byte~) render_playfield::$3 ← (byte) render_screen_render#22 + (byte~) render_playfield::$2 + [154] (byte*) render_playfield::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) to:render_playfield::@2 render_playfield::@2: scope:[render_playfield] from render_playfield::@1 render_playfield::@2 - [155] (byte) render_playfield::c#2 ? phi( render_playfield::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_playfield::@2/(byte) render_playfield::c#1 ) - [155] (byte*) render_playfield::screen_line#2 ? phi( render_playfield::@1/(byte*) render_playfield::screen_line#0 render_playfield::@2/(byte*) render_playfield::screen_line#1 ) - [155] (byte) render_playfield::i#2 ? phi( render_playfield::@1/(byte) render_playfield::i#3 render_playfield::@2/(byte) render_playfield::i#1 ) - [156] *((byte*) render_playfield::screen_line#2) ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) - [157] (byte*) render_playfield::screen_line#1 ? ++ (byte*) render_playfield::screen_line#2 - [158] (byte) render_playfield::i#1 ? ++ (byte) render_playfield::i#2 - [159] (byte) render_playfield::c#1 ? ++ (byte) render_playfield::c#2 + [155] (byte) render_playfield::c#2 ← phi( render_playfield::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_playfield::@2/(byte) render_playfield::c#1 ) + [155] (byte*) render_playfield::screen_line#2 ← phi( render_playfield::@1/(byte*) render_playfield::screen_line#0 render_playfield::@2/(byte*) render_playfield::screen_line#1 ) + [155] (byte) render_playfield::i#2 ← phi( render_playfield::@1/(byte) render_playfield::i#3 render_playfield::@2/(byte) render_playfield::i#1 ) + [156] *((byte*) render_playfield::screen_line#2) ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) + [157] (byte*) render_playfield::screen_line#1 ← ++ (byte*) render_playfield::screen_line#2 + [158] (byte) render_playfield::i#1 ← ++ (byte) render_playfield::i#2 + [159] (byte) render_playfield::c#1 ← ++ (byte) render_playfield::c#2 [160] if((byte) render_playfield::c#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@2 to:render_playfield::@3 render_playfield::@3: scope:[render_playfield] from render_playfield::@2 - [161] (byte) render_playfield::l#1 ? ++ (byte) render_playfield::l#2 + [161] (byte) render_playfield::l#1 ← ++ (byte) render_playfield::l#2 [162] if((byte) render_playfield::l#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@1 to:render_playfield::@return render_playfield::@return: scope:[render_playfield] from render_playfield::@3 [163] return to:@return play_movement: scope:[play_movement] from main::@4 - [164] (byte) play_move_down::key_event#0 ? (byte) play_movement::key_event#0 + [164] (byte) play_move_down::key_event#0 ← (byte) play_movement::key_event#0 [165] call play_move_down - [166] (byte) play_move_down::return#0 ? (byte) play_move_down::return#3 + [166] (byte) play_move_down::return#0 ← (byte) play_move_down::return#3 to:play_movement::@2 play_movement::@2: scope:[play_movement] from play_movement - [167] (byte~) play_movement::$0 ? (byte) play_move_down::return#0 - [168] (byte) play_movement::render#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 + [167] (byte~) play_movement::$0 ← (byte) play_move_down::return#0 + [168] (byte) play_movement::render#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 [169] if((byte) game_over#15==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_movement::@1 to:play_movement::@return play_movement::@return: scope:[play_movement] from play_movement::@2 play_movement::@4 - [170] (byte) current_xpos#19 ? phi( play_movement::@2/(byte) current_xpos#22 play_movement::@4/(byte) current_xpos#26 ) - [170] (byte*) current_piece_gfx#18 ? phi( play_movement::@2/(byte*) current_piece_gfx#20 play_movement::@4/(byte*) current_piece_gfx#21 ) - [170] (byte) current_orientation#17 ? phi( play_movement::@2/(byte) current_orientation#20 play_movement::@4/(byte) current_orientation#25 ) - [170] (byte) play_movement::return#2 ? phi( play_movement::@2/(byte) play_movement::render#1 play_movement::@4/(byte) play_movement::return#0 ) + [170] (byte) current_xpos#19 ← phi( play_movement::@2/(byte) current_xpos#22 play_movement::@4/(byte) current_xpos#26 ) + [170] (byte*) current_piece_gfx#18 ← phi( play_movement::@2/(byte*) current_piece_gfx#20 play_movement::@4/(byte*) current_piece_gfx#21 ) + [170] (byte) current_orientation#17 ← phi( play_movement::@2/(byte) current_orientation#20 play_movement::@4/(byte) current_orientation#25 ) + [170] (byte) play_movement::return#2 ← phi( play_movement::@2/(byte) play_movement::render#1 play_movement::@4/(byte) play_movement::return#0 ) [171] return to:@return play_movement::@1: scope:[play_movement] from play_movement::@2 - [172] (byte) play_move_leftright::key_event#0 ? (byte) play_movement::key_event#0 + [172] (byte) play_move_leftright::key_event#0 ← (byte) play_movement::key_event#0 [173] call play_move_leftright - [174] (byte) play_move_leftright::return#0 ? (byte) play_move_leftright::return#2 + [174] (byte) play_move_leftright::return#0 ← (byte) play_move_leftright::return#2 to:play_movement::@3 play_movement::@3: scope:[play_movement] from play_movement::@1 - [175] (byte~) play_movement::$3 ? (byte) play_move_leftright::return#0 - [176] (byte) play_movement::render#2 ? (byte) play_movement::render#1 + (byte~) play_movement::$3 - [177] (byte) play_move_rotate::key_event#0 ? (byte) play_movement::key_event#0 + [175] (byte~) play_movement::$3 ← (byte) play_move_leftright::return#0 + [176] (byte) play_movement::render#2 ← (byte) play_movement::render#1 + (byte~) play_movement::$3 + [177] (byte) play_move_rotate::key_event#0 ← (byte) play_movement::key_event#0 [178] call play_move_rotate - [179] (byte) play_move_rotate::return#0 ? (byte) play_move_rotate::return#2 + [179] (byte) play_move_rotate::return#0 ← (byte) play_move_rotate::return#2 to:play_movement::@4 play_movement::@4: scope:[play_movement] from play_movement::@3 - [180] (byte~) play_movement::$4 ? (byte) play_move_rotate::return#0 - [181] (byte) play_movement::return#0 ? (byte) play_movement::render#2 + (byte~) play_movement::$4 + [180] (byte~) play_movement::$4 ← (byte) play_move_rotate::return#0 + [181] (byte) play_movement::return#0 ← (byte) play_movement::render#2 + (byte~) play_movement::$4 to:play_movement::@return play_move_rotate: scope:[play_move_rotate] from play_movement::@3 [182] if((byte) play_move_rotate::key_event#0==(const byte) KEY_Z#0) goto play_move_rotate::@1 @@ -10590,67 +10590,67 @@ play_move_rotate::@4: scope:[play_move_rotate] from play_move_rotate [183] if((byte) play_move_rotate::key_event#0==(const byte) KEY_X#0) goto play_move_rotate::@2 to:play_move_rotate::@return play_move_rotate::@return: scope:[play_move_rotate] from play_move_rotate::@4 play_move_rotate::@5 play_move_rotate::@6 - [184] (byte*) current_piece_gfx#21 ? phi( play_move_rotate::@5/(byte*) current_piece_gfx#7 play_move_rotate::@6/(byte*) current_piece_gfx#20 play_move_rotate::@4/(byte*) current_piece_gfx#20 ) - [184] (byte) current_orientation#25 ? phi( play_move_rotate::@5/(byte) current_orientation#7 play_move_rotate::@6/(byte) current_orientation#20 play_move_rotate::@4/(byte) current_orientation#20 ) - [184] (byte) play_move_rotate::return#2 ? phi( play_move_rotate::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_rotate::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_rotate::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [184] (byte*) current_piece_gfx#21 ← phi( play_move_rotate::@5/(byte*) current_piece_gfx#7 play_move_rotate::@6/(byte*) current_piece_gfx#20 play_move_rotate::@4/(byte*) current_piece_gfx#20 ) + [184] (byte) current_orientation#25 ← phi( play_move_rotate::@5/(byte) current_orientation#7 play_move_rotate::@6/(byte) current_orientation#20 play_move_rotate::@4/(byte) current_orientation#20 ) + [184] (byte) play_move_rotate::return#2 ← phi( play_move_rotate::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_rotate::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_rotate::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [185] return to:@return play_move_rotate::@2: scope:[play_move_rotate] from play_move_rotate::@4 - [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 - [187] (byte) play_move_rotate::orientation#2 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f + [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 + [187] (byte) play_move_rotate::orientation#2 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f to:play_move_rotate::@3 play_move_rotate::@3: scope:[play_move_rotate] from play_move_rotate::@1 play_move_rotate::@2 - [188] (byte) play_move_rotate::orientation#3 ? phi( play_move_rotate::@1/(byte) play_move_rotate::orientation#1 play_move_rotate::@2/(byte) play_move_rotate::orientation#2 ) - [189] (byte) play_collision::xpos#3 ? (byte) current_xpos#26 - [190] (byte) play_collision::ypos#3 ? (byte) current_ypos#19 - [191] (byte) play_collision::orientation#3 ? (byte) play_move_rotate::orientation#3 - [192] (byte*~) current_piece#101 ? (byte*) current_piece#15 + [188] (byte) play_move_rotate::orientation#3 ← phi( play_move_rotate::@1/(byte) play_move_rotate::orientation#1 play_move_rotate::@2/(byte) play_move_rotate::orientation#2 ) + [189] (byte) play_collision::xpos#3 ← (byte) current_xpos#26 + [190] (byte) play_collision::ypos#3 ← (byte) current_ypos#19 + [191] (byte) play_collision::orientation#3 ← (byte) play_move_rotate::orientation#3 + [192] (byte*~) current_piece#101 ← (byte*) current_piece#15 [193] call play_collision - [194] (byte) play_collision::return#14 ? (byte) play_collision::return#15 + [194] (byte) play_collision::return#14 ← (byte) play_collision::return#15 to:play_move_rotate::@6 play_move_rotate::@6: scope:[play_move_rotate] from play_move_rotate::@3 - [195] (byte~) play_move_rotate::$2 ? (byte) play_collision::return#14 + [195] (byte~) play_move_rotate::$2 ← (byte) play_collision::return#14 [196] if((byte~) play_move_rotate::$2!=(const byte) COLLISION_NONE#0) goto play_move_rotate::@return to:play_move_rotate::@5 play_move_rotate::@5: scope:[play_move_rotate] from play_move_rotate::@6 - [197] (byte) current_orientation#7 ? (byte) play_move_rotate::orientation#3 - [198] (byte*) current_piece_gfx#7 ? (byte*) current_piece#15 + (byte) current_orientation#7 + [197] (byte) current_orientation#7 ← (byte) play_move_rotate::orientation#3 + [198] (byte*) current_piece_gfx#7 ← (byte*) current_piece#15 + (byte) current_orientation#7 to:play_move_rotate::@return play_move_rotate::@1: scope:[play_move_rotate] from play_move_rotate - [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 - [200] (byte) play_move_rotate::orientation#1 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f + [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 + [200] (byte) play_move_rotate::orientation#1 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f to:play_move_rotate::@3 play_collision: scope:[play_collision] from play_move_down::@8 play_move_leftright::@1 play_move_leftright::@3 play_move_rotate::@3 play_spawn_current - [201] (byte) play_collision::xpos#6 ? phi( play_move_down::@8/(byte) play_collision::xpos#0 play_move_leftright::@1/(byte) play_collision::xpos#1 play_move_leftright::@3/(byte) play_collision::xpos#2 play_move_rotate::@3/(byte) play_collision::xpos#3 play_spawn_current/(byte) play_collision::xpos#4 ) - [201] (byte) play_collision::ypos#5 ? phi( play_move_down::@8/(byte) play_collision::ypos#0 play_move_leftright::@1/(byte) play_collision::ypos#1 play_move_leftright::@3/(byte) play_collision::ypos#2 play_move_rotate::@3/(byte) play_collision::ypos#3 play_spawn_current/(byte) play_collision::ypos#4 ) - [201] (byte) play_collision::orientation#5 ? phi( play_move_down::@8/(byte) play_collision::orientation#0 play_move_leftright::@1/(byte) play_collision::orientation#1 play_move_leftright::@3/(byte) play_collision::orientation#2 play_move_rotate::@3/(byte) play_collision::orientation#3 play_spawn_current/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [201] (byte*) current_piece#17 ? phi( play_move_down::@8/(byte*~) current_piece#98 play_move_leftright::@1/(byte*~) current_piece#99 play_move_leftright::@3/(byte*~) current_piece#100 play_move_rotate::@3/(byte*~) current_piece#101 play_spawn_current/(byte*~) current_piece#102 ) - [202] (byte*) play_collision::piece_gfx#0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 - [203] (byte) play_collision::ypos2#0 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [201] (byte) play_collision::xpos#6 ← phi( play_move_down::@8/(byte) play_collision::xpos#0 play_move_leftright::@1/(byte) play_collision::xpos#1 play_move_leftright::@3/(byte) play_collision::xpos#2 play_move_rotate::@3/(byte) play_collision::xpos#3 play_spawn_current/(byte) play_collision::xpos#4 ) + [201] (byte) play_collision::ypos#5 ← phi( play_move_down::@8/(byte) play_collision::ypos#0 play_move_leftright::@1/(byte) play_collision::ypos#1 play_move_leftright::@3/(byte) play_collision::ypos#2 play_move_rotate::@3/(byte) play_collision::ypos#3 play_spawn_current/(byte) play_collision::ypos#4 ) + [201] (byte) play_collision::orientation#5 ← phi( play_move_down::@8/(byte) play_collision::orientation#0 play_move_leftright::@1/(byte) play_collision::orientation#1 play_move_leftright::@3/(byte) play_collision::orientation#2 play_move_rotate::@3/(byte) play_collision::orientation#3 play_spawn_current/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [201] (byte*) current_piece#17 ← phi( play_move_down::@8/(byte*~) current_piece#98 play_move_leftright::@1/(byte*~) current_piece#99 play_move_leftright::@3/(byte*~) current_piece#100 play_move_rotate::@3/(byte*~) current_piece#101 play_spawn_current/(byte*~) current_piece#102 ) + [202] (byte*) play_collision::piece_gfx#0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 + [203] (byte) play_collision::ypos2#0 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_collision::@1 play_collision::@1: scope:[play_collision] from play_collision play_collision::@9 - [204] (byte) play_collision::l#6 ? phi( play_collision/(byte/signed byte/word/signed word/dword/signed dword) 0 play_collision::@9/(byte) play_collision::l#1 ) - [204] (byte) play_collision::i#3 ? phi( play_collision/(byte/signed byte/word/signed word/dword/signed dword) 0 play_collision::@9/(byte~) play_collision::i#11 ) - [204] (byte) play_collision::ypos2#2 ? phi( play_collision/(byte) play_collision::ypos2#0 play_collision::@9/(byte) play_collision::ypos2#1 ) - [205] (byte*) play_collision::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) - [206] (byte~) play_collision::col#9 ? (byte) play_collision::xpos#6 + [204] (byte) play_collision::l#6 ← phi( play_collision/(byte/signed byte/word/signed word/dword/signed dword) 0 play_collision::@9/(byte) play_collision::l#1 ) + [204] (byte) play_collision::i#3 ← phi( play_collision/(byte/signed byte/word/signed word/dword/signed dword) 0 play_collision::@9/(byte~) play_collision::i#11 ) + [204] (byte) play_collision::ypos2#2 ← phi( play_collision/(byte) play_collision::ypos2#0 play_collision::@9/(byte) play_collision::ypos2#1 ) + [205] (byte*) play_collision::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) + [206] (byte~) play_collision::col#9 ← (byte) play_collision::xpos#6 to:play_collision::@2 play_collision::@2: scope:[play_collision] from play_collision::@1 play_collision::@10 - [207] (byte) play_collision::c#2 ? phi( play_collision::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 play_collision::@10/(byte) play_collision::c#1 ) - [207] (byte) play_collision::col#2 ? phi( play_collision::@1/(byte~) play_collision::col#9 play_collision::@10/(byte) play_collision::col#1 ) - [207] (byte) play_collision::i#2 ? phi( play_collision::@1/(byte) play_collision::i#3 play_collision::@10/(byte~) play_collision::i#13 ) - [208] (byte) play_collision::i#1 ? ++ (byte) play_collision::i#2 + [207] (byte) play_collision::c#2 ← phi( play_collision::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 play_collision::@10/(byte) play_collision::c#1 ) + [207] (byte) play_collision::col#2 ← phi( play_collision::@1/(byte~) play_collision::col#9 play_collision::@10/(byte) play_collision::col#1 ) + [207] (byte) play_collision::i#2 ← phi( play_collision::@1/(byte) play_collision::i#3 play_collision::@10/(byte~) play_collision::i#13 ) + [208] (byte) play_collision::i#1 ← ++ (byte) play_collision::i#2 [209] if(*((byte*) play_collision::piece_gfx#0 + (byte) play_collision::i#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@3 to:play_collision::@7 play_collision::@7: scope:[play_collision] from play_collision::@2 [210] if((byte) play_collision::ypos2#2<(byte/signed byte/word/signed word/dword/signed dword) 2*(const byte) PLAYFIELD_LINES#0) goto play_collision::@4 to:play_collision::@return play_collision::@return: scope:[play_collision] from play_collision::@4 play_collision::@5 play_collision::@6 play_collision::@7 play_collision::@8 - [211] (byte) play_collision::return#15 ? phi( play_collision::@5/(const byte) COLLISION_RIGHT#0 play_collision::@6/(const byte) COLLISION_PLAYFIELD#0 play_collision::@7/(const byte) COLLISION_BOTTOM#0 play_collision::@8/(const byte) COLLISION_NONE#0 play_collision::@4/(const byte) COLLISION_LEFT#0 ) + [211] (byte) play_collision::return#15 ← phi( play_collision::@5/(const byte) COLLISION_RIGHT#0 play_collision::@6/(const byte) COLLISION_PLAYFIELD#0 play_collision::@7/(const byte) COLLISION_BOTTOM#0 play_collision::@8/(const byte) COLLISION_NONE#0 play_collision::@4/(const byte) COLLISION_LEFT#0 ) [212] return to:@return play_collision::@4: scope:[play_collision] from play_collision::@7 - [213] (byte~) play_collision::$7 ? (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 + [213] (byte~) play_collision::$7 ← (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 [214] if((byte~) play_collision::$7==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@5 to:play_collision::@return play_collision::@5: scope:[play_collision] from play_collision::@4 @@ -10660,20 +10660,20 @@ play_collision::@6: scope:[play_collision] from play_collision::@5 [216] if(*((byte*) play_collision::playfield_line#0 + (byte) play_collision::col#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@3 to:play_collision::@return play_collision::@3: scope:[play_collision] from play_collision::@2 play_collision::@6 - [217] (byte) play_collision::col#1 ? ++ (byte) play_collision::col#2 - [218] (byte) play_collision::c#1 ? ++ (byte) play_collision::c#2 + [217] (byte) play_collision::col#1 ← ++ (byte) play_collision::col#2 + [218] (byte) play_collision::c#1 ← ++ (byte) play_collision::c#2 [219] if((byte) play_collision::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@10 to:play_collision::@8 play_collision::@8: scope:[play_collision] from play_collision::@3 - [220] (byte) play_collision::ypos2#1 ? (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [221] (byte) play_collision::l#1 ? ++ (byte) play_collision::l#6 + [220] (byte) play_collision::ypos2#1 ← (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [221] (byte) play_collision::l#1 ← ++ (byte) play_collision::l#6 [222] if((byte) play_collision::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@9 to:play_collision::@return play_collision::@9: scope:[play_collision] from play_collision::@8 - [223] (byte~) play_collision::i#11 ? (byte) play_collision::i#1 + [223] (byte~) play_collision::i#11 ← (byte) play_collision::i#1 to:play_collision::@1 play_collision::@10: scope:[play_collision] from play_collision::@3 - [224] (byte~) play_collision::i#13 ? (byte) play_collision::i#1 + [224] (byte~) play_collision::i#13 ← (byte) play_collision::i#1 to:play_collision::@2 play_move_leftright: scope:[play_move_leftright] from play_movement::@1 [225] if((byte) play_move_leftright::key_event#0==(const byte) KEY_COMMA#0) goto play_move_leftright::@1 @@ -10682,83 +10682,83 @@ play_move_leftright::@2: scope:[play_move_leftright] from play_move_leftright [226] if((byte) play_move_leftright::key_event#0!=(const byte) KEY_DOT#0) goto play_move_leftright::@return to:play_move_leftright::@3 play_move_leftright::@3: scope:[play_move_leftright] from play_move_leftright::@2 - [227] (byte) play_collision::xpos#2 ? (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [228] (byte) play_collision::ypos#2 ? (byte) current_ypos#19 - [229] (byte) play_collision::orientation#2 ? (byte) current_orientation#20 - [230] (byte*~) current_piece#100 ? (byte*) current_piece#15 + [227] (byte) play_collision::xpos#2 ← (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [228] (byte) play_collision::ypos#2 ← (byte) current_ypos#19 + [229] (byte) play_collision::orientation#2 ← (byte) current_orientation#20 + [230] (byte*~) current_piece#100 ← (byte*) current_piece#15 [231] call play_collision - [232] (byte) play_collision::return#13 ? (byte) play_collision::return#15 + [232] (byte) play_collision::return#13 ← (byte) play_collision::return#15 to:play_move_leftright::@7 play_move_leftright::@7: scope:[play_move_leftright] from play_move_leftright::@3 - [233] (byte~) play_move_leftright::$4 ? (byte) play_collision::return#13 + [233] (byte~) play_move_leftright::$4 ← (byte) play_collision::return#13 [234] if((byte~) play_move_leftright::$4!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return to:play_move_leftright::@4 play_move_leftright::@4: scope:[play_move_leftright] from play_move_leftright::@7 - [235] (byte) current_xpos#6 ? ++ (byte) current_xpos#22 + [235] (byte) current_xpos#6 ← ++ (byte) current_xpos#22 to:play_move_leftright::@return play_move_leftright::@return: scope:[play_move_leftright] from play_move_leftright::@2 play_move_leftright::@4 play_move_leftright::@5 play_move_leftright::@6 play_move_leftright::@7 - [236] (byte) current_xpos#26 ? phi( play_move_leftright::@6/(byte) current_xpos#22 play_move_leftright::@4/(byte) current_xpos#6 play_move_leftright::@5/(byte) current_xpos#8 play_move_leftright::@7/(byte) current_xpos#22 play_move_leftright::@2/(byte) current_xpos#22 ) - [236] (byte) play_move_leftright::return#2 ? phi( play_move_leftright::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_leftright::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_leftright::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_leftright::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_leftright::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [236] (byte) current_xpos#26 ← phi( play_move_leftright::@6/(byte) current_xpos#22 play_move_leftright::@4/(byte) current_xpos#6 play_move_leftright::@5/(byte) current_xpos#8 play_move_leftright::@7/(byte) current_xpos#22 play_move_leftright::@2/(byte) current_xpos#22 ) + [236] (byte) play_move_leftright::return#2 ← phi( play_move_leftright::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_leftright::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_leftright::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_leftright::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_leftright::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [237] return to:@return play_move_leftright::@1: scope:[play_move_leftright] from play_move_leftright - [238] (byte) play_collision::xpos#1 ? (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 - [239] (byte) play_collision::ypos#1 ? (byte) current_ypos#19 - [240] (byte) play_collision::orientation#1 ? (byte) current_orientation#20 - [241] (byte*~) current_piece#99 ? (byte*) current_piece#15 + [238] (byte) play_collision::xpos#1 ← (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 + [239] (byte) play_collision::ypos#1 ← (byte) current_ypos#19 + [240] (byte) play_collision::orientation#1 ← (byte) current_orientation#20 + [241] (byte*~) current_piece#99 ← (byte*) current_piece#15 [242] call play_collision - [243] (byte) play_collision::return#1 ? (byte) play_collision::return#15 + [243] (byte) play_collision::return#1 ← (byte) play_collision::return#15 to:play_move_leftright::@6 play_move_leftright::@6: scope:[play_move_leftright] from play_move_leftright::@1 - [244] (byte~) play_move_leftright::$8 ? (byte) play_collision::return#1 + [244] (byte~) play_move_leftright::$8 ← (byte) play_collision::return#1 [245] if((byte~) play_move_leftright::$8!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return to:play_move_leftright::@5 play_move_leftright::@5: scope:[play_move_leftright] from play_move_leftright::@6 - [246] (byte) current_xpos#8 ? -- (byte) current_xpos#22 + [246] (byte) current_xpos#8 ← -- (byte) current_xpos#22 to:play_move_leftright::@return play_move_down: scope:[play_move_down] from play_movement - [247] (byte) current_movedown_counter#12 ? ++ (byte) current_movedown_counter#16 + [247] (byte) current_movedown_counter#12 ← ++ (byte) current_movedown_counter#16 [248] if((byte) play_move_down::key_event#0!=(const byte) KEY_SPACE#0) goto play_move_down::@1 to:play_move_down::@4 play_move_down::@4: scope:[play_move_down] from play_move_down [249] phi() to:play_move_down::@1 play_move_down::@1: scope:[play_move_down] from play_move_down play_move_down::@4 - [250] (byte) play_move_down::movedown#10 ? phi( play_move_down/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_down::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [250] (byte) play_move_down::movedown#10 ← phi( play_move_down/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_down::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [251] call keyboard_event_pressed - [252] (byte) keyboard_event_pressed::return#12 ? (byte) keyboard_event_pressed::return#11 + [252] (byte) keyboard_event_pressed::return#12 ← (byte) keyboard_event_pressed::return#11 to:play_move_down::@12 play_move_down::@12: scope:[play_move_down] from play_move_down::@1 - [253] (byte~) play_move_down::$2 ? (byte) keyboard_event_pressed::return#12 + [253] (byte~) play_move_down::$2 ← (byte) keyboard_event_pressed::return#12 [254] if((byte~) play_move_down::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_move_down::@2 to:play_move_down::@5 play_move_down::@5: scope:[play_move_down] from play_move_down::@12 [255] if((byte) current_movedown_counter#12<(const byte) current_movedown_fast#0) goto play_move_down::@2 to:play_move_down::@6 play_move_down::@6: scope:[play_move_down] from play_move_down::@5 - [256] (byte) play_move_down::movedown#2 ? ++ (byte) play_move_down::movedown#10 + [256] (byte) play_move_down::movedown#2 ← ++ (byte) play_move_down::movedown#10 to:play_move_down::@2 play_move_down::@2: scope:[play_move_down] from play_move_down::@12 play_move_down::@5 play_move_down::@6 - [257] (byte) play_move_down::movedown#7 ? phi( play_move_down::@5/(byte) play_move_down::movedown#10 play_move_down::@12/(byte) play_move_down::movedown#10 play_move_down::@6/(byte) play_move_down::movedown#2 ) + [257] (byte) play_move_down::movedown#7 ← phi( play_move_down::@5/(byte) play_move_down::movedown#10 play_move_down::@12/(byte) play_move_down::movedown#10 play_move_down::@6/(byte) play_move_down::movedown#2 ) [258] if((byte) current_movedown_counter#12<(byte) current_movedown_slow#14) goto play_move_down::@3 to:play_move_down::@7 play_move_down::@7: scope:[play_move_down] from play_move_down::@2 - [259] (byte) play_move_down::movedown#3 ? ++ (byte) play_move_down::movedown#7 + [259] (byte) play_move_down::movedown#3 ← ++ (byte) play_move_down::movedown#7 to:play_move_down::@3 play_move_down::@3: scope:[play_move_down] from play_move_down::@2 play_move_down::@7 - [260] (byte) play_move_down::movedown#6 ? phi( play_move_down::@2/(byte) play_move_down::movedown#7 play_move_down::@7/(byte) play_move_down::movedown#3 ) + [260] (byte) play_move_down::movedown#6 ← phi( play_move_down::@2/(byte) play_move_down::movedown#7 play_move_down::@7/(byte) play_move_down::movedown#3 ) [261] if((byte) play_move_down::movedown#6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_move_down::@return to:play_move_down::@8 play_move_down::@8: scope:[play_move_down] from play_move_down::@3 - [262] (byte) play_collision::ypos#0 ? (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [263] (byte) play_collision::xpos#0 ? (byte) current_xpos#122 - [264] (byte) play_collision::orientation#0 ? (byte) current_orientation#13 - [265] (byte*~) current_piece#98 ? (byte*) current_piece#10 + [262] (byte) play_collision::ypos#0 ← (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [263] (byte) play_collision::xpos#0 ← (byte) current_xpos#122 + [264] (byte) play_collision::orientation#0 ← (byte) current_orientation#13 + [265] (byte*~) current_piece#98 ← (byte*) current_piece#10 [266] call play_collision - [267] (byte) play_collision::return#0 ? (byte) play_collision::return#15 + [267] (byte) play_collision::return#0 ← (byte) play_collision::return#15 to:play_move_down::@13 play_move_down::@13: scope:[play_move_down] from play_move_down::@8 - [268] (byte~) play_move_down::$12 ? (byte) play_collision::return#0 + [268] (byte~) play_move_down::$12 ← (byte) play_collision::return#0 [269] if((byte~) play_move_down::$12==(const byte) COLLISION_NONE#0) goto play_move_down::@10 to:play_move_down::@9 play_move_down::@9: scope:[play_move_down] from play_move_down::@13 @@ -10768,78 +10768,78 @@ play_move_down::@9: scope:[play_move_down] from play_move_down::@13 play_move_down::@14: scope:[play_move_down] from play_move_down::@9 [272] phi() [273] call play_remove_lines - [274] (byte) play_remove_lines::return#0 ? (byte) play_remove_lines::removed#8 + [274] (byte) play_remove_lines::return#0 ← (byte) play_remove_lines::removed#8 to:play_move_down::@15 play_move_down::@15: scope:[play_move_down] from play_move_down::@14 - [275] (byte) play_move_down::removed#0 ? (byte) play_remove_lines::return#0 - [276] (byte) play_update_score::removed#0 ? (byte) play_move_down::removed#0 + [275] (byte) play_move_down::removed#0 ← (byte) play_remove_lines::return#0 + [276] (byte) play_update_score::removed#0 ← (byte) play_move_down::removed#0 [277] call play_update_score to:play_move_down::@16 play_move_down::@16: scope:[play_move_down] from play_move_down::@15 [278] phi() [279] call play_spawn_current - [280] (byte*~) current_piece#104 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + [280] (byte*~) current_piece#104 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) to:play_move_down::@11 play_move_down::@11: scope:[play_move_down] from play_move_down::@10 play_move_down::@16 - [281] (byte) next_piece_idx#30 ? phi( play_move_down::@10/(byte) next_piece_idx#10 play_move_down::@16/(byte) play_spawn_current::piece_idx#2 ) - [281] (byte) game_over#27 ? phi( play_move_down::@10/(byte) game_over#10 play_move_down::@16/(byte) game_over#52 ) - [281] (byte) current_xpos#43 ? phi( play_move_down::@10/(byte) current_xpos#122 play_move_down::@16/(byte) current_xpos#103 ) - [281] (byte*) current_piece_gfx#35 ? phi( play_move_down::@10/(byte*) current_piece_gfx#112 play_move_down::@16/(byte*) current_piece_gfx#74 ) - [281] (byte) current_orientation#37 ? phi( play_move_down::@10/(byte) current_orientation#13 play_move_down::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [281] (byte) current_piece_char#29 ? phi( play_move_down::@10/(byte) current_piece_char#10 play_move_down::@16/(byte) current_piece_char#5 ) - [281] (byte*) current_piece#28 ? phi( play_move_down::@10/(byte*) current_piece#10 play_move_down::@16/(byte*~) current_piece#104 ) - [281] (byte) level_bcd#31 ? phi( play_move_down::@10/(byte) level_bcd#11 play_move_down::@16/(byte) level_bcd#19 ) - [281] (byte) current_movedown_slow#37 ? phi( play_move_down::@10/(byte) current_movedown_slow#14 play_move_down::@16/(byte) current_movedown_slow#23 ) - [281] (byte) level#33 ? phi( play_move_down::@10/(byte) level#10 play_move_down::@16/(byte) level#19 ) - [281] (dword) score_bcd#26 ? phi( play_move_down::@10/(dword) score_bcd#18 play_move_down::@16/(dword) score_bcd#16 ) - [281] (word) lines_bcd#26 ? phi( play_move_down::@10/(word) lines_bcd#19 play_move_down::@16/(word) lines_bcd#17 ) - [281] (byte) current_ypos#38 ? phi( play_move_down::@10/(byte) current_ypos#3 play_move_down::@16/(byte) current_ypos#6 ) + [281] (byte) next_piece_idx#30 ← phi( play_move_down::@10/(byte) next_piece_idx#10 play_move_down::@16/(byte) play_spawn_current::piece_idx#2 ) + [281] (byte) game_over#27 ← phi( play_move_down::@10/(byte) game_over#10 play_move_down::@16/(byte) game_over#52 ) + [281] (byte) current_xpos#43 ← phi( play_move_down::@10/(byte) current_xpos#122 play_move_down::@16/(byte) current_xpos#103 ) + [281] (byte*) current_piece_gfx#35 ← phi( play_move_down::@10/(byte*) current_piece_gfx#112 play_move_down::@16/(byte*) current_piece_gfx#74 ) + [281] (byte) current_orientation#37 ← phi( play_move_down::@10/(byte) current_orientation#13 play_move_down::@16/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [281] (byte) current_piece_char#29 ← phi( play_move_down::@10/(byte) current_piece_char#10 play_move_down::@16/(byte) current_piece_char#5 ) + [281] (byte*) current_piece#28 ← phi( play_move_down::@10/(byte*) current_piece#10 play_move_down::@16/(byte*~) current_piece#104 ) + [281] (byte) level_bcd#31 ← phi( play_move_down::@10/(byte) level_bcd#11 play_move_down::@16/(byte) level_bcd#19 ) + [281] (byte) current_movedown_slow#37 ← phi( play_move_down::@10/(byte) current_movedown_slow#14 play_move_down::@16/(byte) current_movedown_slow#23 ) + [281] (byte) level#33 ← phi( play_move_down::@10/(byte) level#10 play_move_down::@16/(byte) level#19 ) + [281] (dword) score_bcd#26 ← phi( play_move_down::@10/(dword) score_bcd#18 play_move_down::@16/(dword) score_bcd#16 ) + [281] (word) lines_bcd#26 ← phi( play_move_down::@10/(word) lines_bcd#19 play_move_down::@16/(word) lines_bcd#17 ) + [281] (byte) current_ypos#38 ← phi( play_move_down::@10/(byte) current_ypos#3 play_move_down::@16/(byte) current_ypos#6 ) to:play_move_down::@return play_move_down::@return: scope:[play_move_down] from play_move_down::@11 play_move_down::@3 - [282] (byte) next_piece_idx#16 ? phi( play_move_down::@11/(byte) next_piece_idx#30 play_move_down::@3/(byte) next_piece_idx#10 ) - [282] (byte) game_over#15 ? phi( play_move_down::@11/(byte) game_over#27 play_move_down::@3/(byte) game_over#10 ) - [282] (byte) current_xpos#22 ? phi( play_move_down::@11/(byte) current_xpos#43 play_move_down::@3/(byte) current_xpos#122 ) - [282] (byte*) current_piece_gfx#20 ? phi( play_move_down::@11/(byte*) current_piece_gfx#35 play_move_down::@3/(byte*) current_piece_gfx#112 ) - [282] (byte) current_orientation#20 ? phi( play_move_down::@11/(byte) current_orientation#37 play_move_down::@3/(byte) current_orientation#13 ) - [282] (byte) current_piece_char#16 ? phi( play_move_down::@11/(byte) current_piece_char#29 play_move_down::@3/(byte) current_piece_char#10 ) - [282] (byte*) current_piece#15 ? phi( play_move_down::@11/(byte*) current_piece#28 play_move_down::@3/(byte*) current_piece#10 ) - [282] (byte) level_bcd#17 ? phi( play_move_down::@11/(byte) level_bcd#31 play_move_down::@3/(byte) level_bcd#11 ) - [282] (byte) current_movedown_slow#21 ? phi( play_move_down::@11/(byte) current_movedown_slow#37 play_move_down::@3/(byte) current_movedown_slow#14 ) - [282] (byte) level#17 ? phi( play_move_down::@11/(byte) level#33 play_move_down::@3/(byte) level#10 ) - [282] (dword) score_bcd#14 ? phi( play_move_down::@11/(dword) score_bcd#26 play_move_down::@3/(dword) score_bcd#18 ) - [282] (word) lines_bcd#15 ? phi( play_move_down::@11/(word) lines_bcd#26 play_move_down::@3/(word) lines_bcd#19 ) - [282] (byte) current_ypos#19 ? phi( play_move_down::@11/(byte) current_ypos#38 play_move_down::@3/(byte) current_ypos#11 ) - [282] (byte) current_movedown_counter#14 ? phi( play_move_down::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_down::@3/(byte) current_movedown_counter#12 ) - [282] (byte) play_move_down::return#3 ? phi( play_move_down::@11/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_down::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [282] (byte) next_piece_idx#16 ← phi( play_move_down::@11/(byte) next_piece_idx#30 play_move_down::@3/(byte) next_piece_idx#10 ) + [282] (byte) game_over#15 ← phi( play_move_down::@11/(byte) game_over#27 play_move_down::@3/(byte) game_over#10 ) + [282] (byte) current_xpos#22 ← phi( play_move_down::@11/(byte) current_xpos#43 play_move_down::@3/(byte) current_xpos#122 ) + [282] (byte*) current_piece_gfx#20 ← phi( play_move_down::@11/(byte*) current_piece_gfx#35 play_move_down::@3/(byte*) current_piece_gfx#112 ) + [282] (byte) current_orientation#20 ← phi( play_move_down::@11/(byte) current_orientation#37 play_move_down::@3/(byte) current_orientation#13 ) + [282] (byte) current_piece_char#16 ← phi( play_move_down::@11/(byte) current_piece_char#29 play_move_down::@3/(byte) current_piece_char#10 ) + [282] (byte*) current_piece#15 ← phi( play_move_down::@11/(byte*) current_piece#28 play_move_down::@3/(byte*) current_piece#10 ) + [282] (byte) level_bcd#17 ← phi( play_move_down::@11/(byte) level_bcd#31 play_move_down::@3/(byte) level_bcd#11 ) + [282] (byte) current_movedown_slow#21 ← phi( play_move_down::@11/(byte) current_movedown_slow#37 play_move_down::@3/(byte) current_movedown_slow#14 ) + [282] (byte) level#17 ← phi( play_move_down::@11/(byte) level#33 play_move_down::@3/(byte) level#10 ) + [282] (dword) score_bcd#14 ← phi( play_move_down::@11/(dword) score_bcd#26 play_move_down::@3/(dword) score_bcd#18 ) + [282] (word) lines_bcd#15 ← phi( play_move_down::@11/(word) lines_bcd#26 play_move_down::@3/(word) lines_bcd#19 ) + [282] (byte) current_ypos#19 ← phi( play_move_down::@11/(byte) current_ypos#38 play_move_down::@3/(byte) current_ypos#11 ) + [282] (byte) current_movedown_counter#14 ← phi( play_move_down::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 play_move_down::@3/(byte) current_movedown_counter#12 ) + [282] (byte) play_move_down::return#3 ← phi( play_move_down::@11/(byte/signed byte/word/signed word/dword/signed dword) 1 play_move_down::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [283] return to:@return play_move_down::@10: scope:[play_move_down] from play_move_down::@13 - [284] (byte) current_ypos#3 ? ++ (byte) current_ypos#11 + [284] (byte) current_ypos#3 ← ++ (byte) current_ypos#11 to:play_move_down::@11 play_spawn_current: scope:[play_spawn_current] from main::@12 main::@13 play_move_down::@16 - [285] (byte) game_over#65 ? phi( main::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@13/(byte) game_over#52 play_move_down::@16/(byte) game_over#10 ) - [285] (byte) next_piece_idx#17 ? phi( main::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@13/(byte) play_spawn_current::piece_idx#2 play_move_down::@16/(byte) next_piece_idx#10 ) - [286] (byte) play_spawn_current::current_piece_idx#0 ? (byte) next_piece_idx#17 - [287] (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [288] (byte) current_piece_char#5 ? *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) - [289] (byte*) current_piece_gfx#74 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 - [290] (byte) current_xpos#103 ? *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) - [291] (byte) current_ypos#6 ? *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) - [292] (byte) play_collision::xpos#4 ? (byte) current_xpos#103 - [293] (byte) play_collision::ypos#4 ? (byte) current_ypos#6 - [294] (byte*~) current_piece#102 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + [285] (byte) game_over#65 ← phi( main::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@13/(byte) game_over#52 play_move_down::@16/(byte) game_over#10 ) + [285] (byte) next_piece_idx#17 ← phi( main::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@13/(byte) play_spawn_current::piece_idx#2 play_move_down::@16/(byte) next_piece_idx#10 ) + [286] (byte) play_spawn_current::current_piece_idx#0 ← (byte) next_piece_idx#17 + [287] (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [288] (byte) current_piece_char#5 ← *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) + [289] (byte*) current_piece_gfx#74 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 + [290] (byte) current_xpos#103 ← *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) + [291] (byte) current_ypos#6 ← *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) + [292] (byte) play_collision::xpos#4 ← (byte) current_xpos#103 + [293] (byte) play_collision::ypos#4 ← (byte) current_ypos#6 + [294] (byte*~) current_piece#102 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [295] call play_collision - [296] (byte) play_collision::return#10 ? (byte) play_collision::return#15 + [296] (byte) play_collision::return#10 ← (byte) play_collision::return#15 to:play_spawn_current::@4 play_spawn_current::@4: scope:[play_spawn_current] from play_spawn_current - [297] (byte~) play_spawn_current::$2 ? (byte) play_collision::return#10 + [297] (byte~) play_spawn_current::$2 ← (byte) play_collision::return#10 [298] if((byte~) play_spawn_current::$2!=(const byte) COLLISION_PLAYFIELD#0) goto play_spawn_current::@6 to:play_spawn_current::@1 play_spawn_current::@1: scope:[play_spawn_current] from play_spawn_current::@4 play_spawn_current::@6 - [299] (byte) game_over#52 ? phi( play_spawn_current::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 play_spawn_current::@6/(byte) game_over#65 ) + [299] (byte) game_over#52 ← phi( play_spawn_current::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 play_spawn_current::@6/(byte) game_over#65 ) to:play_spawn_current::@2 play_spawn_current::@2: scope:[play_spawn_current] from play_spawn_current::@1 play_spawn_current::@5 - [300] (byte) play_spawn_current::piece_idx#2 ? phi( play_spawn_current::@1/(byte/signed byte/word/signed word/dword/signed dword) 7 play_spawn_current::@5/(byte) play_spawn_current::piece_idx#1 ) + [300] (byte) play_spawn_current::piece_idx#2 ← phi( play_spawn_current::@1/(byte/signed byte/word/signed word/dword/signed dword) 7 play_spawn_current::@5/(byte) play_spawn_current::piece_idx#1 ) [301] if((byte) play_spawn_current::piece_idx#2==(byte/signed byte/word/signed word/dword/signed dword) 7) goto play_spawn_current::@3 to:play_spawn_current::@return play_spawn_current::@return: scope:[play_spawn_current] from play_spawn_current::@2 @@ -10848,17 +10848,17 @@ play_spawn_current::@return: scope:[play_spawn_current] from play_spawn_current play_spawn_current::@3: scope:[play_spawn_current] from play_spawn_current::@2 [303] phi() [304] call sid_rnd - [305] (byte) sid_rnd::return#2 ? (byte) sid_rnd::return#0 + [305] (byte) sid_rnd::return#2 ← (byte) sid_rnd::return#0 to:play_spawn_current::@5 play_spawn_current::@5: scope:[play_spawn_current] from play_spawn_current::@3 - [306] (byte~) play_spawn_current::$6 ? (byte) sid_rnd::return#2 - [307] (byte) play_spawn_current::piece_idx#1 ? (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [306] (byte~) play_spawn_current::$6 ← (byte) sid_rnd::return#2 + [307] (byte) play_spawn_current::piece_idx#1 ← (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 to:play_spawn_current::@2 play_spawn_current::@6: scope:[play_spawn_current] from play_spawn_current::@4 [308] phi() to:play_spawn_current::@1 sid_rnd: scope:[sid_rnd] from play_spawn_current::@3 - [309] (byte) sid_rnd::return#0 ? *((const byte*) SID_VOICE3_OSC#0) + [309] (byte) sid_rnd::return#0 ← *((const byte*) SID_VOICE3_OSC#0) to:sid_rnd::@return sid_rnd::@return: scope:[sid_rnd] from sid_rnd [310] return @@ -10867,16 +10867,16 @@ play_update_score: scope:[play_update_score] from play_move_down::@15 [311] if((byte) play_update_score::removed#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_update_score::@return to:play_update_score::@1 play_update_score::@1: scope:[play_update_score] from play_update_score - [312] (byte~) play_update_score::$2 ? < (word) lines_bcd#19 - [313] (byte) play_update_score::lines_before#0 ? (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 - [314] (byte~) play_update_score::$4 ? (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 - [315] (dword) play_update_score::add_bcd#0 ? *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) + [312] (byte~) play_update_score::$2 ← < (word) lines_bcd#19 + [313] (byte) play_update_score::lines_before#0 ← (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 + [314] (byte~) play_update_score::$4 ← (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 + [315] (dword) play_update_score::add_bcd#0 ← *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) asm { sed } - [317] (word) lines_bcd#30 ? (word) lines_bcd#19 + (byte) play_update_score::removed#0 - [318] (dword) score_bcd#30 ? (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 + [317] (word) lines_bcd#30 ← (word) lines_bcd#19 + (byte) play_update_score::removed#0 + [318] (dword) score_bcd#30 ← (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 asm { cld } - [320] (byte~) play_update_score::$5 ? < (word) lines_bcd#30 - [321] (byte) play_update_score::lines_after#0 ? (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 + [320] (byte~) play_update_score::$5 ← < (word) lines_bcd#30 + [321] (byte) play_update_score::lines_after#0 ← (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 [322] if((byte) play_update_score::lines_before#0==(byte) play_update_score::lines_after#0) goto play_update_score::@return to:play_update_score::@2 play_update_score::@2: scope:[play_update_score] from play_update_score::@1 @@ -10884,38 +10884,38 @@ play_update_score::@2: scope:[play_update_score] from play_update_score::@1 [324] call play_increase_level to:play_update_score::@return play_update_score::@return: scope:[play_update_score] from play_update_score play_update_score::@1 play_update_score::@2 - [325] (byte) level_bcd#19 ? phi( play_update_score/(byte) level_bcd#11 play_update_score::@1/(byte) level_bcd#11 play_update_score::@2/(byte) level_bcd#64 ) - [325] (byte) current_movedown_slow#23 ? phi( play_update_score/(byte) current_movedown_slow#14 play_update_score::@1/(byte) current_movedown_slow#14 play_update_score::@2/(byte) current_movedown_slow#69 ) - [325] (byte) level#19 ? phi( play_update_score/(byte) level#10 play_update_score::@1/(byte) level#10 play_update_score::@2/(byte) level#21 ) - [325] (dword) score_bcd#16 ? phi( play_update_score/(dword) score_bcd#18 play_update_score::@1/(dword) score_bcd#30 play_update_score::@2/(dword) score_bcd#30 ) - [325] (word) lines_bcd#17 ? phi( play_update_score/(word) lines_bcd#19 play_update_score::@1/(word) lines_bcd#30 play_update_score::@2/(word) lines_bcd#30 ) + [325] (byte) level_bcd#19 ← phi( play_update_score/(byte) level_bcd#11 play_update_score::@1/(byte) level_bcd#11 play_update_score::@2/(byte) level_bcd#64 ) + [325] (byte) current_movedown_slow#23 ← phi( play_update_score/(byte) current_movedown_slow#14 play_update_score::@1/(byte) current_movedown_slow#14 play_update_score::@2/(byte) current_movedown_slow#69 ) + [325] (byte) level#19 ← phi( play_update_score/(byte) level#10 play_update_score::@1/(byte) level#10 play_update_score::@2/(byte) level#21 ) + [325] (dword) score_bcd#16 ← phi( play_update_score/(dword) score_bcd#18 play_update_score::@1/(dword) score_bcd#30 play_update_score::@2/(dword) score_bcd#30 ) + [325] (word) lines_bcd#17 ← phi( play_update_score/(word) lines_bcd#19 play_update_score::@1/(word) lines_bcd#30 play_update_score::@2/(word) lines_bcd#30 ) [326] return to:@return play_increase_level: scope:[play_increase_level] from play_update_score::@2 - [327] (byte) level#21 ? ++ (byte) level#10 + [327] (byte) level#21 ← ++ (byte) level#10 [328] if((byte) level#21>(byte/signed byte/word/signed word/dword/signed dword) $1d) goto play_increase_level::@1 to:play_increase_level::@3 play_increase_level::@3: scope:[play_increase_level] from play_increase_level - [329] (byte) current_movedown_slow#10 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) + [329] (byte) current_movedown_slow#10 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) to:play_increase_level::@1 play_increase_level::@1: scope:[play_increase_level] from play_increase_level play_increase_level::@3 - [330] (byte) current_movedown_slow#69 ? phi( play_increase_level/(byte/signed byte/word/signed word/dword/signed dword) 1 play_increase_level::@3/(byte) current_movedown_slow#10 ) - [331] (byte) level_bcd#21 ? ++ (byte) level_bcd#11 - [332] (byte~) play_increase_level::$1 ? (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f + [330] (byte) current_movedown_slow#69 ← phi( play_increase_level/(byte/signed byte/word/signed word/dword/signed dword) 1 play_increase_level::@3/(byte) current_movedown_slow#10 ) + [331] (byte) level_bcd#21 ← ++ (byte) level_bcd#11 + [332] (byte~) play_increase_level::$1 ← (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f [333] if((byte~) play_increase_level::$1!=(byte/signed byte/word/signed word/dword/signed dword) $a) goto play_increase_level::@2 to:play_increase_level::@4 play_increase_level::@4: scope:[play_increase_level] from play_increase_level::@1 - [334] (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 + [334] (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 to:play_increase_level::@2 play_increase_level::@2: scope:[play_increase_level] from play_increase_level::@1 play_increase_level::@4 - [335] (byte) level_bcd#64 ? phi( play_increase_level::@1/(byte) level_bcd#21 play_increase_level::@4/(byte) level_bcd#8 ) + [335] (byte) level_bcd#64 ← phi( play_increase_level::@1/(byte) level_bcd#21 play_increase_level::@4/(byte) level_bcd#8 ) asm { sed } to:play_increase_level::@5 play_increase_level::@5: scope:[play_increase_level] from play_increase_level::@2 play_increase_level::@5 - [337] (byte) play_increase_level::b#2 ? phi( play_increase_level::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 play_increase_level::@5/(byte) play_increase_level::b#1 ) - [338] (byte) play_increase_level::b4#0 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 - [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) - [340] (byte) play_increase_level::b#1 ? ++ (byte) play_increase_level::b#2 + [337] (byte) play_increase_level::b#2 ← phi( play_increase_level::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 play_increase_level::@5/(byte) play_increase_level::b#1 ) + [338] (byte) play_increase_level::b4#0 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 + [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) + [340] (byte) play_increase_level::b#1 ← ++ (byte) play_increase_level::b#2 [341] if((byte) play_increase_level::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_increase_level::@5 to:play_increase_level::@6 play_increase_level::@6: scope:[play_increase_level] from play_increase_level::@5 @@ -10928,99 +10928,99 @@ play_remove_lines: scope:[play_remove_lines] from play_move_down::@14 [344] phi() to:play_remove_lines::@1 play_remove_lines::@1: scope:[play_remove_lines] from play_remove_lines play_remove_lines::@6 - [345] (byte) play_remove_lines::removed#11 ? phi( play_remove_lines/(byte/signed byte/word/signed word/dword/signed dword) 0 play_remove_lines::@6/(byte) play_remove_lines::removed#8 ) - [345] (byte) play_remove_lines::y#8 ? phi( play_remove_lines/(byte/signed byte/word/signed word/dword/signed dword) 0 play_remove_lines::@6/(byte) play_remove_lines::y#1 ) - [345] (byte) play_remove_lines::w#12 ? phi( play_remove_lines/(const byte) PLAYFIELD_LINES#0*(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1 play_remove_lines::@6/(byte) play_remove_lines::w#11 ) - [345] (byte) play_remove_lines::r#3 ? phi( play_remove_lines/(const byte) PLAYFIELD_LINES#0*(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1 play_remove_lines::@6/(byte) play_remove_lines::r#1 ) + [345] (byte) play_remove_lines::removed#11 ← phi( play_remove_lines/(byte/signed byte/word/signed word/dword/signed dword) 0 play_remove_lines::@6/(byte) play_remove_lines::removed#8 ) + [345] (byte) play_remove_lines::y#8 ← phi( play_remove_lines/(byte/signed byte/word/signed word/dword/signed dword) 0 play_remove_lines::@6/(byte) play_remove_lines::y#1 ) + [345] (byte) play_remove_lines::w#12 ← phi( play_remove_lines/(const byte) PLAYFIELD_LINES#0*(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1 play_remove_lines::@6/(byte) play_remove_lines::w#11 ) + [345] (byte) play_remove_lines::r#3 ← phi( play_remove_lines/(const byte) PLAYFIELD_LINES#0*(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1 play_remove_lines::@6/(byte) play_remove_lines::r#1 ) to:play_remove_lines::@2 play_remove_lines::@2: scope:[play_remove_lines] from play_remove_lines::@1 play_remove_lines::@3 - [346] (byte) play_remove_lines::full#4 ? phi( play_remove_lines::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 play_remove_lines::@3/(byte) play_remove_lines::full#2 ) - [346] (byte) play_remove_lines::x#2 ? phi( play_remove_lines::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 play_remove_lines::@3/(byte) play_remove_lines::x#1 ) - [346] (byte) play_remove_lines::w#4 ? phi( play_remove_lines::@1/(byte) play_remove_lines::w#12 play_remove_lines::@3/(byte) play_remove_lines::w#1 ) - [346] (byte) play_remove_lines::r#2 ? phi( play_remove_lines::@1/(byte) play_remove_lines::r#3 play_remove_lines::@3/(byte) play_remove_lines::r#1 ) - [347] (byte) play_remove_lines::c#0 ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) - [348] (byte) play_remove_lines::r#1 ? -- (byte) play_remove_lines::r#2 + [346] (byte) play_remove_lines::full#4 ← phi( play_remove_lines::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 play_remove_lines::@3/(byte) play_remove_lines::full#2 ) + [346] (byte) play_remove_lines::x#2 ← phi( play_remove_lines::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 play_remove_lines::@3/(byte) play_remove_lines::x#1 ) + [346] (byte) play_remove_lines::w#4 ← phi( play_remove_lines::@1/(byte) play_remove_lines::w#12 play_remove_lines::@3/(byte) play_remove_lines::w#1 ) + [346] (byte) play_remove_lines::r#2 ← phi( play_remove_lines::@1/(byte) play_remove_lines::r#3 play_remove_lines::@3/(byte) play_remove_lines::r#1 ) + [347] (byte) play_remove_lines::c#0 ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) + [348] (byte) play_remove_lines::r#1 ← -- (byte) play_remove_lines::r#2 [349] if((byte) play_remove_lines::c#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_remove_lines::@9 to:play_remove_lines::@3 play_remove_lines::@3: scope:[play_remove_lines] from play_remove_lines::@2 play_remove_lines::@9 - [350] (byte) play_remove_lines::full#2 ? phi( play_remove_lines::@9/(byte) play_remove_lines::full#4 play_remove_lines::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ? (byte) play_remove_lines::c#0 - [352] (byte) play_remove_lines::w#1 ? -- (byte) play_remove_lines::w#4 - [353] (byte) play_remove_lines::x#1 ? ++ (byte) play_remove_lines::x#2 + [350] (byte) play_remove_lines::full#2 ← phi( play_remove_lines::@9/(byte) play_remove_lines::full#4 play_remove_lines::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ← (byte) play_remove_lines::c#0 + [352] (byte) play_remove_lines::w#1 ← -- (byte) play_remove_lines::w#4 + [353] (byte) play_remove_lines::x#1 ← ++ (byte) play_remove_lines::x#2 [354] if((byte) play_remove_lines::x#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@2 to:play_remove_lines::@4 play_remove_lines::@4: scope:[play_remove_lines] from play_remove_lines::@3 [355] if((byte) play_remove_lines::full#2!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@6 to:play_remove_lines::@5 play_remove_lines::@5: scope:[play_remove_lines] from play_remove_lines::@4 - [356] (byte) play_remove_lines::w#2 ? (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 - [357] (byte) play_remove_lines::removed#1 ? ++ (byte) play_remove_lines::removed#11 + [356] (byte) play_remove_lines::w#2 ← (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 + [357] (byte) play_remove_lines::removed#1 ← ++ (byte) play_remove_lines::removed#11 to:play_remove_lines::@6 play_remove_lines::@6: scope:[play_remove_lines] from play_remove_lines::@4 play_remove_lines::@5 - [358] (byte) play_remove_lines::removed#8 ? phi( play_remove_lines::@4/(byte) play_remove_lines::removed#11 play_remove_lines::@5/(byte) play_remove_lines::removed#1 ) - [358] (byte) play_remove_lines::w#11 ? phi( play_remove_lines::@4/(byte) play_remove_lines::w#1 play_remove_lines::@5/(byte) play_remove_lines::w#2 ) - [359] (byte) play_remove_lines::y#1 ? ++ (byte) play_remove_lines::y#8 + [358] (byte) play_remove_lines::removed#8 ← phi( play_remove_lines::@4/(byte) play_remove_lines::removed#11 play_remove_lines::@5/(byte) play_remove_lines::removed#1 ) + [358] (byte) play_remove_lines::w#11 ← phi( play_remove_lines::@4/(byte) play_remove_lines::w#1 play_remove_lines::@5/(byte) play_remove_lines::w#2 ) + [359] (byte) play_remove_lines::y#1 ← ++ (byte) play_remove_lines::y#8 [360] if((byte) play_remove_lines::y#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@1 to:play_remove_lines::@7 play_remove_lines::@7: scope:[play_remove_lines] from play_remove_lines::@6 play_remove_lines::@8 - [361] (byte) play_remove_lines::w#6 ? phi( play_remove_lines::@8/(byte) play_remove_lines::w#3 play_remove_lines::@6/(byte) play_remove_lines::w#11 ) + [361] (byte) play_remove_lines::w#6 ← phi( play_remove_lines::@8/(byte) play_remove_lines::w#3 play_remove_lines::@6/(byte) play_remove_lines::w#11 ) [362] if((byte) play_remove_lines::w#6!=(byte/word/signed word/dword/signed dword) $ff) goto play_remove_lines::@8 to:play_remove_lines::@return play_remove_lines::@return: scope:[play_remove_lines] from play_remove_lines::@7 [363] return to:@return play_remove_lines::@8: scope:[play_remove_lines] from play_remove_lines::@7 - [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [365] (byte) play_remove_lines::w#3 ? -- (byte) play_remove_lines::w#6 + [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [365] (byte) play_remove_lines::w#3 ← -- (byte) play_remove_lines::w#6 to:play_remove_lines::@7 play_remove_lines::@9: scope:[play_remove_lines] from play_remove_lines::@2 [366] phi() to:play_remove_lines::@3 play_lock_current: scope:[play_lock_current] from play_move_down::@9 - [367] (byte) play_lock_current::ypos2#0 ? (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [367] (byte) play_lock_current::ypos2#0 ← (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:play_lock_current::@1 play_lock_current::@1: scope:[play_lock_current] from play_lock_current play_lock_current::@6 - [368] (byte) play_lock_current::l#6 ? phi( play_lock_current/(byte/signed byte/word/signed word/dword/signed dword) 0 play_lock_current::@6/(byte) play_lock_current::l#1 ) - [368] (byte) play_lock_current::i#3 ? phi( play_lock_current/(byte/signed byte/word/signed word/dword/signed dword) 0 play_lock_current::@6/(byte~) play_lock_current::i#7 ) - [368] (byte) play_lock_current::ypos2#2 ? phi( play_lock_current/(byte) play_lock_current::ypos2#0 play_lock_current::@6/(byte) play_lock_current::ypos2#1 ) - [369] (byte*) play_lock_current::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) - [370] (byte) play_lock_current::col#0 ? (byte) current_xpos#122 + [368] (byte) play_lock_current::l#6 ← phi( play_lock_current/(byte/signed byte/word/signed word/dword/signed dword) 0 play_lock_current::@6/(byte) play_lock_current::l#1 ) + [368] (byte) play_lock_current::i#3 ← phi( play_lock_current/(byte/signed byte/word/signed word/dword/signed dword) 0 play_lock_current::@6/(byte~) play_lock_current::i#7 ) + [368] (byte) play_lock_current::ypos2#2 ← phi( play_lock_current/(byte) play_lock_current::ypos2#0 play_lock_current::@6/(byte) play_lock_current::ypos2#1 ) + [369] (byte*) play_lock_current::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) + [370] (byte) play_lock_current::col#0 ← (byte) current_xpos#122 to:play_lock_current::@2 play_lock_current::@2: scope:[play_lock_current] from play_lock_current::@1 play_lock_current::@7 - [371] (byte) play_lock_current::c#2 ? phi( play_lock_current::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 play_lock_current::@7/(byte) play_lock_current::c#1 ) - [371] (byte) play_lock_current::col#2 ? phi( play_lock_current::@1/(byte) play_lock_current::col#0 play_lock_current::@7/(byte) play_lock_current::col#1 ) - [371] (byte) play_lock_current::i#2 ? phi( play_lock_current::@1/(byte) play_lock_current::i#3 play_lock_current::@7/(byte~) play_lock_current::i#9 ) - [372] (byte) play_lock_current::i#1 ? ++ (byte) play_lock_current::i#2 + [371] (byte) play_lock_current::c#2 ← phi( play_lock_current::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 play_lock_current::@7/(byte) play_lock_current::c#1 ) + [371] (byte) play_lock_current::col#2 ← phi( play_lock_current::@1/(byte) play_lock_current::col#0 play_lock_current::@7/(byte) play_lock_current::col#1 ) + [371] (byte) play_lock_current::i#2 ← phi( play_lock_current::@1/(byte) play_lock_current::i#3 play_lock_current::@7/(byte~) play_lock_current::i#9 ) + [372] (byte) play_lock_current::i#1 ← ++ (byte) play_lock_current::i#2 [373] if(*((byte*) current_piece_gfx#112 + (byte) play_lock_current::i#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_lock_current::@3 to:play_lock_current::@4 play_lock_current::@4: scope:[play_lock_current] from play_lock_current::@2 - [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ? (byte) current_piece_char#10 + [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ← (byte) current_piece_char#10 to:play_lock_current::@3 play_lock_current::@3: scope:[play_lock_current] from play_lock_current::@2 play_lock_current::@4 - [375] (byte) play_lock_current::col#1 ? ++ (byte) play_lock_current::col#2 - [376] (byte) play_lock_current::c#1 ? ++ (byte) play_lock_current::c#2 + [375] (byte) play_lock_current::col#1 ← ++ (byte) play_lock_current::col#2 + [376] (byte) play_lock_current::c#1 ← ++ (byte) play_lock_current::c#2 [377] if((byte) play_lock_current::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@7 to:play_lock_current::@5 play_lock_current::@5: scope:[play_lock_current] from play_lock_current::@3 - [378] (byte) play_lock_current::ypos2#1 ? (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [379] (byte) play_lock_current::l#1 ? ++ (byte) play_lock_current::l#6 + [378] (byte) play_lock_current::ypos2#1 ← (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [379] (byte) play_lock_current::l#1 ← ++ (byte) play_lock_current::l#6 [380] if((byte) play_lock_current::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@6 to:play_lock_current::@return play_lock_current::@return: scope:[play_lock_current] from play_lock_current::@5 [381] return to:@return play_lock_current::@6: scope:[play_lock_current] from play_lock_current::@5 - [382] (byte~) play_lock_current::i#7 ? (byte) play_lock_current::i#1 + [382] (byte~) play_lock_current::i#7 ← (byte) play_lock_current::i#1 to:play_lock_current::@1 play_lock_current::@7: scope:[play_lock_current] from play_lock_current::@3 - [383] (byte~) play_lock_current::i#9 ? (byte) play_lock_current::i#1 + [383] (byte~) play_lock_current::i#9 ← (byte) play_lock_current::i#1 to:play_lock_current::@2 keyboard_event_pressed: scope:[keyboard_event_pressed] from keyboard_event_scan::@1 keyboard_event_scan::@17 keyboard_event_scan::@2 keyboard_event_scan::@3 play_move_down::@1 - [384] (byte) keyboard_event_pressed::keycode#5 ? phi( keyboard_event_scan::@1/(const byte) KEY_RSHIFT#0 keyboard_event_scan::@2/(const byte) KEY_CTRL#0 keyboard_event_scan::@17/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@3/(const byte) KEY_COMMODORE#0 play_move_down::@1/(const byte) KEY_SPACE#0 ) - [385] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - [386] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) - [387] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [388] (byte) keyboard_event_pressed::return#11 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) + [384] (byte) keyboard_event_pressed::keycode#5 ← phi( keyboard_event_scan::@1/(const byte) KEY_RSHIFT#0 keyboard_event_scan::@2/(const byte) KEY_CTRL#0 keyboard_event_scan::@17/(const byte) KEY_LSHIFT#0 keyboard_event_scan::@3/(const byte) KEY_COMMODORE#0 play_move_down::@1/(const byte) KEY_SPACE#0 ) + [385] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + [386] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) + [387] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [388] (byte) keyboard_event_pressed::return#11 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) to:keyboard_event_pressed::@return keyboard_event_pressed::@return: scope:[keyboard_event_pressed] from keyboard_event_pressed [389] return @@ -11029,125 +11029,125 @@ keyboard_event_get: scope:[keyboard_event_get] from main::@18 [390] if((byte) keyboard_events_size#13==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@return to:keyboard_event_get::@1 keyboard_event_get::@1: scope:[keyboard_event_get] from keyboard_event_get - [391] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#13 - [392] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) + [391] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#13 + [392] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) to:keyboard_event_get::@return keyboard_event_get::@return: scope:[keyboard_event_get] from keyboard_event_get keyboard_event_get::@1 - [393] (byte) keyboard_events_size#16 ? phi( keyboard_event_get/(byte) keyboard_events_size#13 keyboard_event_get::@1/(byte) keyboard_events_size#4 ) - [393] (byte) keyboard_event_get::return#2 ? phi( keyboard_event_get/(byte/word/signed word/dword/signed dword) $ff keyboard_event_get::@1/(byte) keyboard_event_get::return#1 ) + [393] (byte) keyboard_events_size#16 ← phi( keyboard_event_get/(byte) keyboard_events_size#13 keyboard_event_get::@1/(byte) keyboard_events_size#4 ) + [393] (byte) keyboard_event_get::return#2 ← phi( keyboard_event_get/(byte/word/signed word/dword/signed dword) $ff keyboard_event_get::@1/(byte) keyboard_event_get::return#1 ) [394] return to:@return keyboard_event_scan: scope:[keyboard_event_scan] from main::@17 [395] phi() to:keyboard_event_scan::@7 keyboard_event_scan::@7: scope:[keyboard_event_scan] from keyboard_event_scan keyboard_event_scan::@8 - [396] (byte) keyboard_events_size#30 ? phi( keyboard_event_scan/(byte) keyboard_events_size#19 keyboard_event_scan::@8/(byte) keyboard_events_size#13 ) - [396] (byte) keyboard_event_scan::keycode#11 ? phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) - [396] (byte) keyboard_event_scan::row#2 ? phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) - [397] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 + [396] (byte) keyboard_events_size#30 ← phi( keyboard_event_scan/(byte) keyboard_events_size#19 keyboard_event_scan::@8/(byte) keyboard_events_size#13 ) + [396] (byte) keyboard_event_scan::keycode#11 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::keycode#14 ) + [396] (byte) keyboard_event_scan::row#2 ← phi( keyboard_event_scan/(byte/signed byte/word/signed word/dword/signed dword) 0 keyboard_event_scan::@8/(byte) keyboard_event_scan::row#1 ) + [397] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 [398] call keyboard_matrix_read - [399] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + [399] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 to:keyboard_event_scan::@19 keyboard_event_scan::@19: scope:[keyboard_event_scan] from keyboard_event_scan::@7 - [400] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 + [400] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 [401] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 to:keyboard_event_scan::@16 keyboard_event_scan::@16: scope:[keyboard_event_scan] from keyboard_event_scan::@19 - [402] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 + [402] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 to:keyboard_event_scan::@8 keyboard_event_scan::@8: scope:[keyboard_event_scan] from keyboard_event_scan::@15 keyboard_event_scan::@16 - [403] (byte) keyboard_events_size#13 ? phi( keyboard_event_scan::@15/(byte) keyboard_events_size#29 keyboard_event_scan::@16/(byte) keyboard_events_size#30 ) - [403] (byte) keyboard_event_scan::keycode#14 ? phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#1 ) - [404] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 + [403] (byte) keyboard_events_size#13 ← phi( keyboard_event_scan::@15/(byte) keyboard_events_size#29 keyboard_event_scan::@16/(byte) keyboard_events_size#30 ) + [403] (byte) keyboard_event_scan::keycode#14 ← phi( keyboard_event_scan::@15/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@16/(byte) keyboard_event_scan::keycode#1 ) + [404] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 [405] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 to:keyboard_event_scan::@17 keyboard_event_scan::@17: scope:[keyboard_event_scan] from keyboard_event_scan::@8 [406] phi() [407] call keyboard_event_pressed - [408] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#11 + [408] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#11 to:keyboard_event_scan::@20 keyboard_event_scan::@20: scope:[keyboard_event_scan] from keyboard_event_scan::@17 - [409] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 + [409] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 [410] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 to:keyboard_event_scan::@18 keyboard_event_scan::@18: scope:[keyboard_event_scan] from keyboard_event_scan::@20 [411] phi() to:keyboard_event_scan::@1 keyboard_event_scan::@1: scope:[keyboard_event_scan] from keyboard_event_scan::@18 keyboard_event_scan::@20 - [412] (byte) keyboard_modifiers#11 ? phi( keyboard_event_scan::@18/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [412] (byte) keyboard_modifiers#11 ← phi( keyboard_event_scan::@18/(byte/signed byte/word/signed word/dword/signed dword) 0|(const byte) KEY_MODIFIER_LSHIFT#0 keyboard_event_scan::@20/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [413] call keyboard_event_pressed - [414] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#11 + [414] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#11 to:keyboard_event_scan::@21 keyboard_event_scan::@21: scope:[keyboard_event_scan] from keyboard_event_scan::@1 - [415] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 + [415] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 [416] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 to:keyboard_event_scan::@4 keyboard_event_scan::@4: scope:[keyboard_event_scan] from keyboard_event_scan::@21 - [417] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 + [417] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 to:keyboard_event_scan::@2 keyboard_event_scan::@2: scope:[keyboard_event_scan] from keyboard_event_scan::@21 keyboard_event_scan::@4 - [418] (byte) keyboard_modifiers#12 ? phi( keyboard_event_scan::@21/(byte) keyboard_modifiers#11 keyboard_event_scan::@4/(byte) keyboard_modifiers#3 ) + [418] (byte) keyboard_modifiers#12 ← phi( keyboard_event_scan::@21/(byte) keyboard_modifiers#11 keyboard_event_scan::@4/(byte) keyboard_modifiers#3 ) [419] call keyboard_event_pressed - [420] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#11 + [420] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#11 to:keyboard_event_scan::@22 keyboard_event_scan::@22: scope:[keyboard_event_scan] from keyboard_event_scan::@2 - [421] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 + [421] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 [422] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 to:keyboard_event_scan::@5 keyboard_event_scan::@5: scope:[keyboard_event_scan] from keyboard_event_scan::@22 - [423] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 + [423] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 to:keyboard_event_scan::@3 keyboard_event_scan::@3: scope:[keyboard_event_scan] from keyboard_event_scan::@22 keyboard_event_scan::@5 - [424] (byte) keyboard_modifiers#13 ? phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#12 keyboard_event_scan::@5/(byte) keyboard_modifiers#4 ) + [424] (byte) keyboard_modifiers#13 ← phi( keyboard_event_scan::@22/(byte) keyboard_modifiers#12 keyboard_event_scan::@5/(byte) keyboard_modifiers#4 ) [425] call keyboard_event_pressed - [426] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::return#11 + [426] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::return#11 to:keyboard_event_scan::@23 keyboard_event_scan::@23: scope:[keyboard_event_scan] from keyboard_event_scan::@3 - [427] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#10 + [427] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#10 [428] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return to:keyboard_event_scan::@6 keyboard_event_scan::@6: scope:[keyboard_event_scan] from keyboard_event_scan::@23 - [429] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 + [429] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 to:keyboard_event_scan::@return keyboard_event_scan::@return: scope:[keyboard_event_scan] from keyboard_event_scan::@23 keyboard_event_scan::@6 [430] return to:@return keyboard_event_scan::@9: scope:[keyboard_event_scan] from keyboard_event_scan::@10 keyboard_event_scan::@19 - [431] (byte) keyboard_events_size#10 ? phi( keyboard_event_scan::@10/(byte) keyboard_events_size#29 keyboard_event_scan::@19/(byte) keyboard_events_size#30 ) - [431] (byte) keyboard_event_scan::keycode#10 ? phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@19/(byte) keyboard_event_scan::keycode#11 ) - [431] (byte) keyboard_event_scan::col#2 ? phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [432] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) - [433] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) + [431] (byte) keyboard_events_size#10 ← phi( keyboard_event_scan::@10/(byte) keyboard_events_size#29 keyboard_event_scan::@19/(byte) keyboard_events_size#30 ) + [431] (byte) keyboard_event_scan::keycode#10 ← phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::keycode#15 keyboard_event_scan::@19/(byte) keyboard_event_scan::keycode#11 ) + [431] (byte) keyboard_event_scan::col#2 ← phi( keyboard_event_scan::@10/(byte) keyboard_event_scan::col#1 keyboard_event_scan::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [432] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) + [433] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [434] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 to:keyboard_event_scan::@12 keyboard_event_scan::@12: scope:[keyboard_event_scan] from keyboard_event_scan::@9 [435] if((byte) keyboard_events_size#10==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@10 to:keyboard_event_scan::@13 keyboard_event_scan::@13: scope:[keyboard_event_scan] from keyboard_event_scan::@12 - [436] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) + [436] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [437] if((byte) keyboard_event_scan::event_type#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 to:keyboard_event_scan::@14 keyboard_event_scan::@14: scope:[keyboard_event_scan] from keyboard_event_scan::@13 - [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte) keyboard_event_scan::keycode#10 - [439] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#10 + [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte) keyboard_event_scan::keycode#10 + [439] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#10 to:keyboard_event_scan::@10 keyboard_event_scan::@10: scope:[keyboard_event_scan] from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 - [440] (byte) keyboard_events_size#29 ? phi( keyboard_event_scan::@9/(byte) keyboard_events_size#10 keyboard_event_scan::@12/(byte) keyboard_events_size#10 keyboard_event_scan::@11/(byte) keyboard_events_size#1 keyboard_event_scan::@14/(byte) keyboard_events_size#2 ) - [441] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 - [442] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 + [440] (byte) keyboard_events_size#29 ← phi( keyboard_event_scan::@9/(byte) keyboard_events_size#10 keyboard_event_scan::@12/(byte) keyboard_events_size#10 keyboard_event_scan::@11/(byte) keyboard_events_size#1 keyboard_event_scan::@14/(byte) keyboard_events_size#2 ) + [441] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 + [442] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 [443] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 to:keyboard_event_scan::@15 keyboard_event_scan::@15: scope:[keyboard_event_scan] from keyboard_event_scan::@10 - [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 + [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 to:keyboard_event_scan::@8 keyboard_event_scan::@11: scope:[keyboard_event_scan] from keyboard_event_scan::@13 - [445] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 - [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte/word/dword~) keyboard_event_scan::$23 - [447] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#10 + [445] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 + [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte/word/dword~) keyboard_event_scan::$23 + [447] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#10 to:keyboard_event_scan::@10 keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_event_scan::@7 - [448] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) - [449] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) + [448] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) + [449] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read [450] return @@ -11159,11 +11159,11 @@ render_show::toD0182: scope:[render_show] from render_show [452] phi() to:render_show::@1 render_show::@1: scope:[render_show] from render_show::toD0181 render_show::toD0182 - [453] (byte) render_show::d018val#3 ? phi( render_show::toD0181/(const byte) render_show::toD0181_return#0 render_show::toD0182/(const byte) render_show::toD0182_return#0 ) - [454] *((const byte*) D018#0) ? (byte) render_show::d018val#3 - [455] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) - [456] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) - [457] (byte) render_screen_showing#1 ? (byte) render_screen_show#16 + [453] (byte) render_show::d018val#3 ← phi( render_show::toD0181/(const byte) render_show::toD0181_return#0 render_show::toD0182/(const byte) render_show::toD0182_return#0 ) + [454] *((const byte*) D018#0) ← (byte) render_show::d018val#3 + [455] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) + [456] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) + [457] (byte) render_screen_showing#1 ← (byte) render_screen_show#16 to:render_show::@return render_show::@return: scope:[render_show] from render_show::@1 [458] return @@ -11175,26 +11175,26 @@ play_init: scope:[play_init] from main::@11 [460] phi() to:play_init::@1 play_init::@1: scope:[play_init] from play_init play_init::@1 - [461] (byte) play_init::idx#2 ? phi( play_init/(byte/signed byte/word/signed word/dword/signed dword) 0 play_init::@1/(byte) play_init::idx#1 ) - [461] (byte*) play_init::pli#2 ? phi( play_init/(const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 play_init::@1/(byte*) play_init::pli#1 ) - [461] (byte) play_init::j#2 ? phi( play_init/(byte/signed byte/word/signed word/dword/signed dword) 0 play_init::@1/(byte) play_init::j#1 ) - [462] (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 - [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 - [465] (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 - [466] (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 - [467] (byte) play_init::j#1 ? ++ (byte) play_init::j#2 + [461] (byte) play_init::idx#2 ← phi( play_init/(byte/signed byte/word/signed word/dword/signed dword) 0 play_init::@1/(byte) play_init::idx#1 ) + [461] (byte*) play_init::pli#2 ← phi( play_init/(const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 play_init::@1/(byte*) play_init::pli#1 ) + [461] (byte) play_init::j#2 ← phi( play_init/(byte/signed byte/word/signed word/dword/signed dword) 0 play_init::@1/(byte) play_init::j#1 ) + [462] (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 + [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 + [465] (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 + [466] (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 + [467] (byte) play_init::j#1 ← ++ (byte) play_init::j#2 [468] if((byte) play_init::j#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_init::@1 to:play_init::@2 play_init::@2: scope:[play_init] from play_init::@1 - [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ? (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 - [470] (byte) current_movedown_slow#1 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) + [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ← (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 + [470] (byte) current_movedown_slow#1 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) to:play_init::@3 play_init::@3: scope:[play_init] from play_init::@2 play_init::@3 - [471] (byte) play_init::b#2 ? phi( play_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 play_init::@3/(byte) play_init::b#1 ) - [472] (byte) play_init::b4#0 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 - [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) - [474] (byte) play_init::b#1 ? ++ (byte) play_init::b#2 + [471] (byte) play_init::b#2 ← phi( play_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 play_init::@3/(byte) play_init::b#1 ) + [472] (byte) play_init::b4#0 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 + [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) + [474] (byte) play_init::b#1 ← ++ (byte) play_init::b#2 [475] if((byte) play_init::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_init::@3 to:play_init::@return play_init::@return: scope:[play_init] from play_init::@3 @@ -11202,34 +11202,34 @@ play_init::@return: scope:[play_init] from play_init::@3 to:@return sprites_irq_init: scope:[sprites_irq_init] from main::@10 asm { sei } - [478] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 + [478] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 asm { ldaCIA1_INTERRUPT } - [480] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 - [481] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 - [482] *((const byte*) CIA1_INTERRUPT#0) ? (const byte) CIA_INTERRUPT_CLEAR#0 - [483] *((const byte*) VIC_CONTROL#0) ? *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f - [484] *((const byte*) RASTER#0) ? (const byte) IRQ_RASTER_FIRST#0 - [485] *((const byte*) IRQ_ENABLE#0) ? (const byte) IRQ_RASTER#0 - [486] *((const void()**) HARDWARE_IRQ#0) ? &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() + [480] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 + [481] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 + [482] *((const byte*) CIA1_INTERRUPT#0) ← (const byte) CIA_INTERRUPT_CLEAR#0 + [483] *((const byte*) VIC_CONTROL#0) ← *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f + [484] *((const byte*) RASTER#0) ← (const byte) IRQ_RASTER_FIRST#0 + [485] *((const byte*) IRQ_ENABLE#0) ← (const byte) IRQ_RASTER#0 + [486] *((const void()**) HARDWARE_IRQ#0) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() asm { cli } to:sprites_irq_init::@return sprites_irq_init::@return: scope:[sprites_irq_init] from sprites_irq_init [488] return to:@return sprites_init: scope:[sprites_init] from main::@9 - [489] *((const byte*) SPRITES_ENABLE#0) ? (byte/signed byte/word/signed word/dword/signed dword) $f - [490] *((const byte*) SPRITES_MC#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [491] *((const byte*) SPRITES_EXPAND_Y#0) ? *((const byte*) SPRITES_MC#0) - [492] *((const byte*) SPRITES_EXPAND_X#0) ? *((const byte*) SPRITES_EXPAND_Y#0) + [489] *((const byte*) SPRITES_ENABLE#0) ← (byte/signed byte/word/signed word/dword/signed dword) $f + [490] *((const byte*) SPRITES_MC#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [491] *((const byte*) SPRITES_EXPAND_Y#0) ← *((const byte*) SPRITES_MC#0) + [492] *((const byte*) SPRITES_EXPAND_X#0) ← *((const byte*) SPRITES_EXPAND_Y#0) to:sprites_init::@1 sprites_init::@1: scope:[sprites_init] from sprites_init sprites_init::@1 - [493] (byte) sprites_init::xpos#2 ? phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) $18+(byte/signed byte/word/signed word/dword/signed dword) $f*(byte/signed byte/word/signed word/dword/signed dword) 8 sprites_init::@1/(byte) sprites_init::xpos#1 ) - [493] (byte) sprites_init::s#2 ? phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) 0 sprites_init::@1/(byte) sprites_init::s#1 ) - [494] (byte) sprites_init::s2#0 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 - [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (const byte) BLACK#0 - [497] (byte) sprites_init::xpos#1 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 - [498] (byte) sprites_init::s#1 ? ++ (byte) sprites_init::s#2 + [493] (byte) sprites_init::xpos#2 ← phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) $18+(byte/signed byte/word/signed word/dword/signed dword) $f*(byte/signed byte/word/signed word/dword/signed dword) 8 sprites_init::@1/(byte) sprites_init::xpos#1 ) + [493] (byte) sprites_init::s#2 ← phi( sprites_init/(byte/signed byte/word/signed word/dword/signed dword) 0 sprites_init::@1/(byte) sprites_init::s#1 ) + [494] (byte) sprites_init::s2#0 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 + [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (const byte) BLACK#0 + [497] (byte) sprites_init::xpos#1 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 + [498] (byte) sprites_init::s#1 ← ++ (byte) sprites_init::s#2 [499] if((byte) sprites_init::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto sprites_init::@1 to:sprites_init::@return sprites_init::@return: scope:[sprites_init] from sprites_init::@1 @@ -11239,21 +11239,21 @@ render_init: scope:[render_init] from main::@8 [501] phi() to:render_init::vicSelectGfxBank1 render_init::vicSelectGfxBank1: scope:[render_init] from render_init - [502] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 + [502] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 to:render_init::vicSelectGfxBank1_toDd001 render_init::vicSelectGfxBank1_toDd001: scope:[render_init] from render_init::vicSelectGfxBank1 [503] phi() to:render_init::vicSelectGfxBank1_@1 render_init::vicSelectGfxBank1_@1: scope:[render_init] from render_init::vicSelectGfxBank1_toDd001 - [504] *((const byte*) CIA2_PORT_A#0) ? (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 + [504] *((const byte*) CIA2_PORT_A#0) ← (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 to:render_init::@2 render_init::@2: scope:[render_init] from render_init::vicSelectGfxBank1_@1 - [505] *((const byte*) D011#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [506] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 - [507] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 - [508] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0) - [509] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0) - [510] *((const byte*) BGCOL4#0) ? (const byte) GREY#0 + [505] *((const byte*) D011#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [506] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 + [507] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 + [508] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0) + [509] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0) + [510] *((const byte*) BGCOL4#0) ← (const byte) GREY#0 [511] call render_screen_original to:render_init::@3 render_init::@3: scope:[render_init] from render_init::@2 @@ -11261,150 +11261,150 @@ render_init::@3: scope:[render_init] from render_init::@2 [513] call render_screen_original to:render_init::@1 render_init::@1: scope:[render_init] from render_init::@1 render_init::@3 - [514] (byte*) render_init::li_2#2 ? phi( render_init::@1/(byte*) render_init::li_2#1 render_init::@3/(const byte*) PLAYFIELD_SCREEN_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2*(byte/signed byte/word/signed word/dword/signed dword) $28+(byte/signed byte/word/signed word/dword/signed dword) $10 ) - [514] (byte*) render_init::li_1#2 ? phi( render_init::@1/(byte*) render_init::li_1#1 render_init::@3/(const byte*) PLAYFIELD_SCREEN_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2*(byte/signed byte/word/signed word/dword/signed dword) $28+(byte/signed byte/word/signed word/dword/signed dword) $10 ) - [514] (byte) render_init::i#2 ? phi( render_init::@1/(byte) render_init::i#1 render_init::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [515] (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 - [517] (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 - [519] (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 - [520] (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 - [521] (byte) render_init::i#1 ? ++ (byte) render_init::i#2 + [514] (byte*) render_init::li_2#2 ← phi( render_init::@1/(byte*) render_init::li_2#1 render_init::@3/(const byte*) PLAYFIELD_SCREEN_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2*(byte/signed byte/word/signed word/dword/signed dword) $28+(byte/signed byte/word/signed word/dword/signed dword) $10 ) + [514] (byte*) render_init::li_1#2 ← phi( render_init::@1/(byte*) render_init::li_1#1 render_init::@3/(const byte*) PLAYFIELD_SCREEN_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2*(byte/signed byte/word/signed word/dword/signed dword) $28+(byte/signed byte/word/signed word/dword/signed dword) $10 ) + [514] (byte) render_init::i#2 ← phi( render_init::@1/(byte) render_init::i#1 render_init::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [515] (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 + [517] (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 + [519] (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [520] (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [521] (byte) render_init::i#1 ← ++ (byte) render_init::i#2 [522] if((byte) render_init::i#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_init::@1 to:render_init::@return render_init::@return: scope:[render_init] from render_init::@1 [523] return to:@return render_screen_original: scope:[render_screen_original] from render_init::@2 render_init::@3 - [524] (byte*) render_screen_original::screen#9 ? phi( render_init::@2/(const byte*) PLAYFIELD_SCREEN_1#0 render_init::@3/(const byte*) PLAYFIELD_SCREEN_2#0 ) + [524] (byte*) render_screen_original::screen#9 ← phi( render_init::@2/(const byte*) PLAYFIELD_SCREEN_1#0 render_init::@3/(const byte*) PLAYFIELD_SCREEN_2#0 ) to:render_screen_original::@1 render_screen_original::@1: scope:[render_screen_original] from render_screen_original render_screen_original::@5 - [525] (byte) render_screen_original::y#6 ? phi( render_screen_original/(byte/signed byte/word/signed word/dword/signed dword) 0 render_screen_original::@5/(byte) render_screen_original::y#1 ) - [525] (byte*) render_screen_original::ocols#4 ? phi( render_screen_original/(const byte*) PLAYFIELD_COLORS_ORIGINAL#0+(byte/signed byte/word/signed word/dword/signed dword) $20*(byte/signed byte/word/signed word/dword/signed dword) 2 render_screen_original::@5/(byte*) render_screen_original::ocols#1 ) - [525] (byte*) render_screen_original::oscr#4 ? phi( render_screen_original/(const byte*) PLAYFIELD_SCREEN_ORIGINAL#0+(byte/signed byte/word/signed word/dword/signed dword) $20*(byte/signed byte/word/signed word/dword/signed dword) 2 render_screen_original::@5/(byte*) render_screen_original::oscr#1 ) - [525] (byte*) render_screen_original::cols#7 ? phi( render_screen_original/(const byte*) COLS#0 render_screen_original::@5/(byte*) render_screen_original::cols#3 ) - [525] (byte*) render_screen_original::screen#8 ? phi( render_screen_original/(byte*) render_screen_original::screen#9 render_screen_original::@5/(byte*) render_screen_original::screen#10 ) + [525] (byte) render_screen_original::y#6 ← phi( render_screen_original/(byte/signed byte/word/signed word/dword/signed dword) 0 render_screen_original::@5/(byte) render_screen_original::y#1 ) + [525] (byte*) render_screen_original::ocols#4 ← phi( render_screen_original/(const byte*) PLAYFIELD_COLORS_ORIGINAL#0+(byte/signed byte/word/signed word/dword/signed dword) $20*(byte/signed byte/word/signed word/dword/signed dword) 2 render_screen_original::@5/(byte*) render_screen_original::ocols#1 ) + [525] (byte*) render_screen_original::oscr#4 ← phi( render_screen_original/(const byte*) PLAYFIELD_SCREEN_ORIGINAL#0+(byte/signed byte/word/signed word/dword/signed dword) $20*(byte/signed byte/word/signed word/dword/signed dword) 2 render_screen_original::@5/(byte*) render_screen_original::oscr#1 ) + [525] (byte*) render_screen_original::cols#7 ← phi( render_screen_original/(const byte*) COLS#0 render_screen_original::@5/(byte*) render_screen_original::cols#3 ) + [525] (byte*) render_screen_original::screen#8 ← phi( render_screen_original/(byte*) render_screen_original::screen#9 render_screen_original::@5/(byte*) render_screen_original::screen#10 ) to:render_screen_original::@2 render_screen_original::@2: scope:[render_screen_original] from render_screen_original::@1 render_screen_original::@2 - [526] (byte) render_screen_original::x#4 ? phi( render_screen_original::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_screen_original::@2/(byte) render_screen_original::x#1 ) - [526] (byte*) render_screen_original::cols#4 ? phi( render_screen_original::@1/(byte*) render_screen_original::cols#7 render_screen_original::@2/(byte*) render_screen_original::cols#1 ) - [526] (byte*) render_screen_original::screen#5 ? phi( render_screen_original::@1/(byte*) render_screen_original::screen#8 render_screen_original::@2/(byte*) render_screen_original::screen#2 ) - [527] *((byte*) render_screen_original::screen#5) ? (const byte) render_screen_original::SPACE#0 - [528] (byte*) render_screen_original::screen#2 ? ++ (byte*) render_screen_original::screen#5 - [529] *((byte*) render_screen_original::cols#4) ? (const byte) BLACK#0 - [530] (byte*) render_screen_original::cols#1 ? ++ (byte*) render_screen_original::cols#4 - [531] (byte) render_screen_original::x#1 ? ++ (byte) render_screen_original::x#4 + [526] (byte) render_screen_original::x#4 ← phi( render_screen_original::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_screen_original::@2/(byte) render_screen_original::x#1 ) + [526] (byte*) render_screen_original::cols#4 ← phi( render_screen_original::@1/(byte*) render_screen_original::cols#7 render_screen_original::@2/(byte*) render_screen_original::cols#1 ) + [526] (byte*) render_screen_original::screen#5 ← phi( render_screen_original::@1/(byte*) render_screen_original::screen#8 render_screen_original::@2/(byte*) render_screen_original::screen#2 ) + [527] *((byte*) render_screen_original::screen#5) ← (const byte) render_screen_original::SPACE#0 + [528] (byte*) render_screen_original::screen#2 ← ++ (byte*) render_screen_original::screen#5 + [529] *((byte*) render_screen_original::cols#4) ← (const byte) BLACK#0 + [530] (byte*) render_screen_original::cols#1 ← ++ (byte*) render_screen_original::cols#4 + [531] (byte) render_screen_original::x#1 ← ++ (byte) render_screen_original::x#4 [532] if((byte) render_screen_original::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_screen_original::@2 to:render_screen_original::@3 render_screen_original::@3: scope:[render_screen_original] from render_screen_original::@2 render_screen_original::@3 - [533] (byte) render_screen_original::x#5 ? phi( render_screen_original::@2/(byte) render_screen_original::x#1 render_screen_original::@3/(byte) render_screen_original::x#2 ) - [533] (byte*) render_screen_original::cols#5 ? phi( render_screen_original::@2/(byte*) render_screen_original::cols#1 render_screen_original::@3/(byte*) render_screen_original::cols#2 ) - [533] (byte*) render_screen_original::ocols#2 ? phi( render_screen_original::@2/(byte*) render_screen_original::ocols#4 render_screen_original::@3/(byte*) render_screen_original::ocols#1 ) - [533] (byte*) render_screen_original::screen#6 ? phi( render_screen_original::@2/(byte*) render_screen_original::screen#2 render_screen_original::@3/(byte*) render_screen_original::screen#3 ) - [533] (byte*) render_screen_original::oscr#2 ? phi( render_screen_original::@2/(byte*) render_screen_original::oscr#4 render_screen_original::@3/(byte*) render_screen_original::oscr#1 ) - [534] *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) - [535] (byte*) render_screen_original::screen#3 ? ++ (byte*) render_screen_original::screen#6 - [536] (byte*) render_screen_original::oscr#1 ? ++ (byte*) render_screen_original::oscr#2 - [537] *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) - [538] (byte*) render_screen_original::cols#2 ? ++ (byte*) render_screen_original::cols#5 - [539] (byte*) render_screen_original::ocols#1 ? ++ (byte*) render_screen_original::ocols#2 - [540] (byte) render_screen_original::x#2 ? ++ (byte) render_screen_original::x#5 + [533] (byte) render_screen_original::x#5 ← phi( render_screen_original::@2/(byte) render_screen_original::x#1 render_screen_original::@3/(byte) render_screen_original::x#2 ) + [533] (byte*) render_screen_original::cols#5 ← phi( render_screen_original::@2/(byte*) render_screen_original::cols#1 render_screen_original::@3/(byte*) render_screen_original::cols#2 ) + [533] (byte*) render_screen_original::ocols#2 ← phi( render_screen_original::@2/(byte*) render_screen_original::ocols#4 render_screen_original::@3/(byte*) render_screen_original::ocols#1 ) + [533] (byte*) render_screen_original::screen#6 ← phi( render_screen_original::@2/(byte*) render_screen_original::screen#2 render_screen_original::@3/(byte*) render_screen_original::screen#3 ) + [533] (byte*) render_screen_original::oscr#2 ← phi( render_screen_original::@2/(byte*) render_screen_original::oscr#4 render_screen_original::@3/(byte*) render_screen_original::oscr#1 ) + [534] *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) + [535] (byte*) render_screen_original::screen#3 ← ++ (byte*) render_screen_original::screen#6 + [536] (byte*) render_screen_original::oscr#1 ← ++ (byte*) render_screen_original::oscr#2 + [537] *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) + [538] (byte*) render_screen_original::cols#2 ← ++ (byte*) render_screen_original::cols#5 + [539] (byte*) render_screen_original::ocols#1 ← ++ (byte*) render_screen_original::ocols#2 + [540] (byte) render_screen_original::x#2 ← ++ (byte) render_screen_original::x#5 [541] if((byte) render_screen_original::x#2!=(byte/signed byte/word/signed word/dword/signed dword) $24) goto render_screen_original::@3 to:render_screen_original::@4 render_screen_original::@4: scope:[render_screen_original] from render_screen_original::@3 render_screen_original::@4 - [542] (byte) render_screen_original::x#6 ? phi( render_screen_original::@3/(byte) render_screen_original::x#2 render_screen_original::@4/(byte) render_screen_original::x#3 ) - [542] (byte*) render_screen_original::cols#6 ? phi( render_screen_original::@3/(byte*) render_screen_original::cols#2 render_screen_original::@4/(byte*) render_screen_original::cols#3 ) - [542] (byte*) render_screen_original::screen#7 ? phi( render_screen_original::@3/(byte*) render_screen_original::screen#3 render_screen_original::@4/(byte*) render_screen_original::screen#10 ) - [543] *((byte*) render_screen_original::screen#7) ? (const byte) render_screen_original::SPACE#0 - [544] (byte*) render_screen_original::screen#10 ? ++ (byte*) render_screen_original::screen#7 - [545] *((byte*) render_screen_original::cols#6) ? (const byte) BLACK#0 - [546] (byte*) render_screen_original::cols#3 ? ++ (byte*) render_screen_original::cols#6 - [547] (byte) render_screen_original::x#3 ? ++ (byte) render_screen_original::x#6 + [542] (byte) render_screen_original::x#6 ← phi( render_screen_original::@3/(byte) render_screen_original::x#2 render_screen_original::@4/(byte) render_screen_original::x#3 ) + [542] (byte*) render_screen_original::cols#6 ← phi( render_screen_original::@3/(byte*) render_screen_original::cols#2 render_screen_original::@4/(byte*) render_screen_original::cols#3 ) + [542] (byte*) render_screen_original::screen#7 ← phi( render_screen_original::@3/(byte*) render_screen_original::screen#3 render_screen_original::@4/(byte*) render_screen_original::screen#10 ) + [543] *((byte*) render_screen_original::screen#7) ← (const byte) render_screen_original::SPACE#0 + [544] (byte*) render_screen_original::screen#10 ← ++ (byte*) render_screen_original::screen#7 + [545] *((byte*) render_screen_original::cols#6) ← (const byte) BLACK#0 + [546] (byte*) render_screen_original::cols#3 ← ++ (byte*) render_screen_original::cols#6 + [547] (byte) render_screen_original::x#3 ← ++ (byte) render_screen_original::x#6 [548] if((byte) render_screen_original::x#3!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render_screen_original::@4 to:render_screen_original::@5 render_screen_original::@5: scope:[render_screen_original] from render_screen_original::@4 - [549] (byte) render_screen_original::y#1 ? ++ (byte) render_screen_original::y#6 + [549] (byte) render_screen_original::y#1 ← ++ (byte) render_screen_original::y#6 [550] if((byte) render_screen_original::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render_screen_original::@1 to:render_screen_original::@return render_screen_original::@return: scope:[render_screen_original] from render_screen_original::@5 [551] return to:@return sid_rnd_init: scope:[sid_rnd_init] from main - [552] *((const word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff - [553] *((const byte*) SID_VOICE3_CONTROL#0) ? (const byte) SID_CONTROL_NOISE#0 + [552] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff + [553] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0 to:sid_rnd_init::@return sid_rnd_init::@return: scope:[sid_rnd_init] from sid_rnd_init [554] return to:@return sprites_irq: scope:[sprites_irq] from asm { cld } - [556] (byte) sprites_irq::ypos#0 ? (byte) irq_sprite_ypos#0 - [557] *((const byte*) SPRITES_YPOS#0) ? (byte) sprites_irq::ypos#0 - [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ypos#0 - [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ? (byte) sprites_irq::ypos#0 - [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ? (byte) sprites_irq::ypos#0 - [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ? (byte/signed word/word/dword/signed dword~) sprites_irq::$0 + [556] (byte) sprites_irq::ypos#0 ← (byte) irq_sprite_ypos#0 + [557] *((const byte*) SPRITES_YPOS#0) ← (byte) sprites_irq::ypos#0 + [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ypos#0 + [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (byte) sprites_irq::ypos#0 + [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (byte) sprites_irq::ypos#0 + [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ← (byte/signed word/word/dword/signed dword~) sprites_irq::$0 to:sprites_irq::@8 sprites_irq::@8: scope:[sprites_irq] from sprites_irq sprites_irq::@8 [563] if(*((const byte*) RASTER#0)<(byte) sprites_irq::raster_sprite_gfx_modify#0) goto sprites_irq::@8 to:sprites_irq::@9 sprites_irq::@9: scope:[sprites_irq] from sprites_irq::@8 - [564] (byte) sprites_irq::ptr#0 ? (byte) irq_sprite_ptr#0 + [564] (byte) sprites_irq::ptr#0 ← (byte) irq_sprite_ptr#0 [565] if((byte) render_screen_showing#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sprites_irq::@1 to:sprites_irq::@10 sprites_irq::@10: scope:[sprites_irq] from sprites_irq::@9 - [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ? (byte) sprites_irq::ptr#0 - [567] (byte) sprites_irq::ptr#3 ? ++ (byte) sprites_irq::ptr#0 - [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#3 - [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#3 - [570] (byte) sprites_irq::ptr#4 ? ++ (byte) sprites_irq::ptr#3 - [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#4 + [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ← (byte) sprites_irq::ptr#0 + [567] (byte) sprites_irq::ptr#3 ← ++ (byte) sprites_irq::ptr#0 + [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#3 + [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#3 + [570] (byte) sprites_irq::ptr#4 ← ++ (byte) sprites_irq::ptr#3 + [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#4 to:sprites_irq::@2 sprites_irq::@2: scope:[sprites_irq] from sprites_irq::@1 sprites_irq::@10 - [572] (byte) irq_cnt#1 ? ++ (byte) irq_cnt#0 + [572] (byte) irq_cnt#1 ← ++ (byte) irq_cnt#0 [573] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) 9) goto sprites_irq::@3 to:sprites_irq::@6 sprites_irq::@6: scope:[sprites_irq] from sprites_irq::@2 [574] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) $a) goto sprites_irq::@4 to:sprites_irq::@7 sprites_irq::@7: scope:[sprites_irq] from sprites_irq::@6 - [575] (byte) irq_raster_next#3 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 - [576] (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 - [577] (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 + [575] (byte) irq_raster_next#3 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 + [576] (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 + [577] (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 to:sprites_irq::@5 sprites_irq::@5: scope:[sprites_irq] from sprites_irq::@11 sprites_irq::@4 sprites_irq::@7 - [578] (byte) irq_raster_next#4 ? phi( sprites_irq::@11/(byte) irq_raster_next#1 sprites_irq::@4/(byte) irq_raster_next#2 sprites_irq::@7/(byte) irq_raster_next#3 ) - [579] *((const byte*) RASTER#0) ? (byte) irq_raster_next#4 - [580] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 + [578] (byte) irq_raster_next#4 ← phi( sprites_irq::@11/(byte) irq_raster_next#1 sprites_irq::@4/(byte) irq_raster_next#2 sprites_irq::@7/(byte) irq_raster_next#3 ) + [579] *((const byte*) RASTER#0) ← (byte) irq_raster_next#4 + [580] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 to:sprites_irq::@return sprites_irq::@return: scope:[sprites_irq] from sprites_irq::@5 [581] return to:@return sprites_irq::@4: scope:[sprites_irq] from sprites_irq::@6 - [582] (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [583] (byte) irq_raster_next#2 ? (const byte) IRQ_RASTER_FIRST#0 - [584] (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 - [585] (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 + [582] (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [583] (byte) irq_raster_next#2 ← (const byte) IRQ_RASTER_FIRST#0 + [584] (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 + [585] (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 to:sprites_irq::@5 sprites_irq::@3: scope:[sprites_irq] from sprites_irq::@2 - [586] (byte) irq_raster_next#1 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 - [587] (byte) irq_sprite_ypos#1 ? (const byte) SPRITES_FIRST_YPOS#0 + [586] (byte) irq_raster_next#1 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 + [587] (byte) irq_sprite_ypos#1 ← (const byte) SPRITES_FIRST_YPOS#0 to:sprites_irq::toSpritePtr2 sprites_irq::toSpritePtr2: scope:[sprites_irq] from sprites_irq::@3 [588] phi() to:sprites_irq::@11 sprites_irq::@11: scope:[sprites_irq] from sprites_irq::toSpritePtr2 - [589] (byte) irq_sprite_ptr#1 ? (const byte) sprites_irq::toSpritePtr2_return#0 + [589] (byte) irq_sprite_ptr#1 ← (const byte) sprites_irq::toSpritePtr2_return#0 to:sprites_irq::@5 sprites_irq::@1: scope:[sprites_irq] from sprites_irq::@9 - [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ? (byte) sprites_irq::ptr#0 - [591] (byte) sprites_irq::ptr#1 ? ++ (byte) sprites_irq::ptr#0 - [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#1 - [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#1 - [594] (byte) sprites_irq::ptr#2 ? ++ (byte) sprites_irq::ptr#1 - [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#2 + [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ← (byte) sprites_irq::ptr#0 + [591] (byte) sprites_irq::ptr#1 ← ++ (byte) sprites_irq::ptr#0 + [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#1 + [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#1 + [594] (byte) sprites_irq::ptr#2 ← ++ (byte) sprites_irq::ptr#1 + [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#2 to:sprites_irq::@2 @@ -13090,7 +13090,7 @@ bbegin: jmp b1 //SEG4 @1 b1: -//SEG5 [1] (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 +//SEG5 [1] (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 // The screen currently being showed to the user. $00 for screen 1 / $40 for screen 2. lda #0 sta render_screen_showing @@ -13105,11 +13105,11 @@ b2: jmp b3 //SEG11 @3 b3: -//SEG12 [6] (byte) irq_raster_next#0 ? (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 +//SEG12 [6] (byte) irq_raster_next#0 ← (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 // The raster line of the next IRQ lda #IRQ_RASTER_FIRST sta irq_raster_next -//SEG13 [7] (byte) irq_sprite_ypos#0 ? (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuc1 +//SEG13 [7] (byte) irq_sprite_ypos#0 ← (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuc1 // Y-pos of the sprites on the next IRQ lda #SPRITES_FIRST_YPOS+$15 sta irq_sprite_ypos @@ -13121,11 +13121,11 @@ toSpritePtr1: jmp b5 //SEG16 @5 b5: -//SEG17 [9] (byte) irq_sprite_ptr#0 ? (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuc1 +//SEG17 [9] (byte) irq_sprite_ptr#0 ← (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuc1 // Index of the sprites to show on the next IRQ lda #toSpritePtr1_return+3 sta irq_sprite_ptr -//SEG18 [10] (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 +//SEG18 [10] (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 // Counting the 10 IRQs lda #0 sta irq_cnt @@ -13222,18 +13222,18 @@ main: { jmp b15 //SEG58 main::@15 b15: - //SEG59 [30] (byte~) current_ypos#104 ? (byte) current_ypos#6 -- vbuz1=vbuz2 + //SEG59 [30] (byte~) current_ypos#104 ← (byte) current_ypos#6 -- vbuz1=vbuz2 lda current_ypos sta current_ypos_104 - //SEG60 [31] (byte~) current_xpos#128 ? (byte) current_xpos#103 -- vbuz1=vbuz2 + //SEG60 [31] (byte~) current_xpos#128 ← (byte) current_xpos#103 -- vbuz1=vbuz2 lda current_xpos sta current_xpos_128 - //SEG61 [32] (byte*~) current_piece_gfx#118 ? (byte*) current_piece_gfx#74 -- pbuz1=pbuz2 + //SEG61 [32] (byte*~) current_piece_gfx#118 ← (byte*) current_piece_gfx#74 -- pbuz1=pbuz2 lda current_piece_gfx sta current_piece_gfx_118 lda current_piece_gfx+1 sta current_piece_gfx_118+1 - //SEG62 [33] (byte~) current_piece_char#106 ? (byte) current_piece_char#5 -- vbuz1=vbuz2 + //SEG62 [33] (byte~) current_piece_char#106 ← (byte) current_piece_char#5 -- vbuz1=vbuz2 lda current_piece_char sta current_piece_char_106 //SEG63 [34] call render_moving @@ -13250,7 +13250,7 @@ main: { jmp b16 //SEG70 main::@16 b16: - //SEG71 [35] (byte~) next_piece_idx#84 ? (byte) play_spawn_current::piece_idx#2 -- vbuz1=vbuz2 + //SEG71 [35] (byte~) next_piece_idx#84 ← (byte) play_spawn_current::piece_idx#2 -- vbuz1=vbuz2 lda play_spawn_current.piece_idx sta next_piece_idx_84 //SEG72 [36] call render_next @@ -13261,7 +13261,7 @@ main: { lda #$40 sta render_screen_render_15 jsr render_next - //SEG76 [37] (byte*~) current_piece#96 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG76 [37] (byte*~) current_piece#96 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy play_spawn_current._0 lda PIECES,y sta current_piece @@ -13362,13 +13362,13 @@ main: { b18: //SEG123 [45] call keyboard_event_get jsr keyboard_event_get - //SEG124 [46] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 -- vbuz1=vbuz2 + //SEG124 [46] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 -- vbuz1=vbuz2 lda keyboard_event_get.return sta keyboard_event_get.return_3 jmp b19 //SEG125 main::@19 b19: - //SEG126 [47] (byte) main::key_event#0 ? (byte) keyboard_event_get::return#3 -- vbuz1=vbuz2 + //SEG126 [47] (byte) main::key_event#0 ← (byte) keyboard_event_get::return#3 -- vbuz1=vbuz2 lda keyboard_event_get.return_3 sta key_event //SEG127 [48] if((byte) game_over#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@4 -- vbuz1_eq_0_then_la1 @@ -13378,23 +13378,23 @@ main: { jmp b5 //SEG128 main::@5 b5: - //SEG129 [49] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG129 [49] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL jmp b5 //SEG130 main::@4 b4: - //SEG131 [50] (byte) play_movement::key_event#0 ? (byte) main::key_event#0 -- vbuz1=vbuz2 + //SEG131 [50] (byte) play_movement::key_event#0 ← (byte) main::key_event#0 -- vbuz1=vbuz2 lda key_event sta play_movement.key_event //SEG132 [51] call play_movement jsr play_movement - //SEG133 [52] (byte) play_movement::return#3 ? (byte) play_movement::return#2 -- vbuz1=vbuz2 + //SEG133 [52] (byte) play_movement::return#3 ← (byte) play_movement::return#2 -- vbuz1=vbuz2 lda play_movement.return sta play_movement.return_3 jmp b20 //SEG134 main::@20 b20: - //SEG135 [53] (byte) main::render#1 ? (byte) play_movement::return#3 -- vbuz1=vbuz2 + //SEG135 [53] (byte) main::render#1 ← (byte) play_movement::return#3 -- vbuz1=vbuz2 lda play_movement.return_3 sta render jmp b6 @@ -13407,7 +13407,7 @@ main: { jmp b7 //SEG138 main::@7 b7: - //SEG139 [55] (byte~) render_screen_render#70 ? (byte) render_screen_render#18 -- vbuz1=vbuz2 + //SEG139 [55] (byte~) render_screen_render#70 ← (byte) render_screen_render#18 -- vbuz1=vbuz2 lda render_screen_render sta render_screen_render_70 //SEG140 [56] call render_playfield @@ -13418,21 +13418,21 @@ main: { jmp b21 //SEG143 main::@21 b21: - //SEG144 [57] (byte~) current_ypos#105 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG144 [57] (byte~) current_ypos#105 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta current_ypos_105 - //SEG145 [58] (byte~) render_screen_render#69 ? (byte) render_screen_render#18 -- vbuz1=vbuz2 + //SEG145 [58] (byte~) render_screen_render#69 ← (byte) render_screen_render#18 -- vbuz1=vbuz2 lda render_screen_render sta render_screen_render_69 - //SEG146 [59] (byte~) current_xpos#129 ? (byte) current_xpos#19 -- vbuz1=vbuz2 + //SEG146 [59] (byte~) current_xpos#129 ← (byte) current_xpos#19 -- vbuz1=vbuz2 lda current_xpos sta current_xpos_129 - //SEG147 [60] (byte*~) current_piece_gfx#119 ? (byte*) current_piece_gfx#18 -- pbuz1=pbuz2 + //SEG147 [60] (byte*~) current_piece_gfx#119 ← (byte*) current_piece_gfx#18 -- pbuz1=pbuz2 lda current_piece_gfx sta current_piece_gfx_119 lda current_piece_gfx+1 sta current_piece_gfx_119+1 - //SEG148 [61] (byte~) current_piece_char#107 ? (byte) current_piece_char#16 -- vbuz1=vbuz2 + //SEG148 [61] (byte~) current_piece_char#107 ← (byte) current_piece_char#16 -- vbuz1=vbuz2 lda current_piece_char sta current_piece_char_107 //SEG149 [62] call render_moving @@ -13447,10 +13447,10 @@ main: { jmp b22 //SEG156 main::@22 b22: - //SEG157 [63] (byte~) render_screen_render#68 ? (byte) render_screen_render#18 -- vbuz1=vbuz2 + //SEG157 [63] (byte~) render_screen_render#68 ← (byte) render_screen_render#18 -- vbuz1=vbuz2 lda render_screen_render sta render_screen_render_68 - //SEG158 [64] (byte~) next_piece_idx#85 ? (byte) next_piece_idx#16 -- vbuz1=vbuz2 + //SEG158 [64] (byte~) next_piece_idx#85 ← (byte) next_piece_idx#16 -- vbuz1=vbuz2 lda next_piece_idx sta next_piece_idx_85 //SEG159 [65] call render_next @@ -13497,11 +13497,11 @@ main: { //SEG187 render_screen_swap // Swap rendering to the other screen (used for double buffering) render_screen_swap: { - //SEG188 [70] (byte) render_screen_render#11 ? (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG188 [70] (byte) render_screen_render#11 ← (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 lda render_screen_render eor #$40 sta render_screen_render - //SEG189 [71] (byte) render_screen_show#13 ? (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG189 [71] (byte) render_screen_show#13 ← (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 lda render_screen_show eor #$40 sta render_screen_show @@ -13546,12 +13546,12 @@ render_score: { jmp b1 //SEG200 render_score::@1 b1: - //SEG201 [76] (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 -- pbuz1=pbuz2 + //SEG201 [76] (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 -- pbuz1=pbuz2 lda screen sta render_bcd.screen lda screen+1 sta render_bcd.screen+1 - //SEG202 [77] (byte) render_bcd::bcd#0 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbuz1=_deref_pbuc1 + //SEG202 [77] (byte) render_bcd::bcd#0 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbuz1=_deref_pbuc1 lda score_bytes+2 sta render_bcd.bcd //SEG203 [78] call render_bcd @@ -13571,12 +13571,12 @@ render_score: { jmp b3 //SEG209 render_score::@3 b3: - //SEG210 [79] (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#3 -- pbuz1=pbuz2 + //SEG210 [79] (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#3 -- pbuz1=pbuz2 lda screen sta render_bcd.screen lda screen+1 sta render_bcd.screen+1 - //SEG211 [80] (byte) render_bcd::bcd#1 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbuz1=_deref_pbuc1 + //SEG211 [80] (byte) render_bcd::bcd#1 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbuz1=_deref_pbuc1 lda score_bytes+1 sta render_bcd.bcd //SEG212 [81] call render_bcd @@ -13596,12 +13596,12 @@ render_score: { jmp b4 //SEG218 render_score::@4 b4: - //SEG219 [82] (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#3 -- pbuz1=pbuz2 + //SEG219 [82] (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#3 -- pbuz1=pbuz2 lda screen sta render_bcd.screen lda screen+1 sta render_bcd.screen+1 - //SEG220 [83] (byte) render_bcd::bcd#2 ? *((const byte*) render_score::score_bytes#0) -- vbuz1=_deref_pbuc1 + //SEG220 [83] (byte) render_bcd::bcd#2 ← *((const byte*) render_score::score_bytes#0) -- vbuz1=_deref_pbuc1 lda score_bytes sta render_bcd.bcd //SEG221 [84] call render_bcd @@ -13621,10 +13621,10 @@ render_score: { jmp b5 //SEG227 render_score::@5 b5: - //SEG228 [85] (byte) render_bcd::bcd#3 ? > (word) lines_bcd#15 -- vbuz1=_hi_vwuz2 + //SEG228 [85] (byte) render_bcd::bcd#3 ← > (word) lines_bcd#15 -- vbuz1=_hi_vwuz2 lda lines_bcd+1 sta render_bcd.bcd - //SEG229 [86] (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#3 -- pbuz1=pbuz2 + //SEG229 [86] (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#3 -- pbuz1=pbuz2 lda screen sta render_bcd.screen lda screen+1 @@ -13646,10 +13646,10 @@ render_score: { jmp b6 //SEG236 render_score::@6 b6: - //SEG237 [88] (byte) render_bcd::bcd#4 ? < (word) lines_bcd#15 -- vbuz1=_lo_vwuz2 + //SEG237 [88] (byte) render_bcd::bcd#4 ← < (word) lines_bcd#15 -- vbuz1=_lo_vwuz2 lda lines_bcd sta render_bcd.bcd - //SEG238 [89] (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#3 -- pbuz1=pbuz2 + //SEG238 [89] (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#3 -- pbuz1=pbuz2 lda screen sta render_bcd.screen lda screen+1 @@ -13671,12 +13671,12 @@ render_score: { jmp b7 //SEG245 render_score::@7 b7: - //SEG246 [91] (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#3 -- pbuz1=pbuz2 + //SEG246 [91] (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#3 -- pbuz1=pbuz2 lda screen sta render_bcd.screen lda screen+1 sta render_bcd.screen+1 - //SEG247 [92] (byte) render_bcd::bcd#5 ? (byte) level_bcd#17 -- vbuz1=vbuz2 + //SEG247 [92] (byte) render_bcd::bcd#5 ← (byte) level_bcd#17 -- vbuz1=vbuz2 lda level_bcd sta render_bcd.bcd //SEG248 [93] call render_bcd @@ -13718,7 +13718,7 @@ render_bcd: { .label screen_pos_1 = $85 .label offset = 9 .label only_low = $b - //SEG257 [96] (byte*) render_bcd::screen_pos#0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 -- pbuz1=pbuz2_plus_vwuz3 + //SEG257 [96] (byte*) render_bcd::screen_pos#0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 -- pbuz1=pbuz2_plus_vwuz3 lda screen clc adc offset @@ -13733,22 +13733,22 @@ render_bcd: { jmp b2 //SEG259 render_bcd::@2 b2: - //SEG260 [98] (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG260 [98] (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda bcd lsr lsr lsr lsr sta _5 - //SEG261 [99] (byte~) render_bcd::$6 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 -- vbuz1=vbuc1_plus_vbuz2 + //SEG261 [99] (byte~) render_bcd::$6 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 -- vbuz1=vbuc1_plus_vbuz2 lax _5 axs #-[ZERO_CHAR] stx _6 - //SEG262 [100] *((byte*) render_bcd::screen_pos#0) ? (byte~) render_bcd::$6 -- _deref_pbuz1=vbuz2 + //SEG262 [100] *((byte*) render_bcd::screen_pos#0) ← (byte~) render_bcd::$6 -- _deref_pbuz1=vbuz2 lda _6 ldy #0 sta (screen_pos),y - //SEG263 [101] (byte*) render_bcd::screen_pos#2 ? ++ (byte*) render_bcd::screen_pos#0 -- pbuz1=_inc_pbuz1 + //SEG263 [101] (byte*) render_bcd::screen_pos#2 ← ++ (byte*) render_bcd::screen_pos#0 -- pbuz1=_inc_pbuz1 inc screen_pos bne !+ inc screen_pos+1 @@ -13760,19 +13760,19 @@ render_bcd: { jmp b1 //SEG266 render_bcd::@1 b1: - //SEG267 [103] (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG267 [103] (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and bcd sta _3 - //SEG268 [104] (byte~) render_bcd::$4 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 -- vbuz1=vbuc1_plus_vbuz2 + //SEG268 [104] (byte~) render_bcd::$4 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 -- vbuz1=vbuc1_plus_vbuz2 lax _3 axs #-[ZERO_CHAR] stx _4 - //SEG269 [105] *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 -- _deref_pbuz1=vbuz2 + //SEG269 [105] *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 -- _deref_pbuz1=vbuz2 lda _4 ldy #0 sta (screen_pos),y - //SEG270 [106] (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 -- pbuz1=_inc_pbuz2 + //SEG270 [106] (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 -- pbuz1=_inc_pbuz2 lda screen_pos clc adc #1 @@ -13824,15 +13824,15 @@ render_next: { jmp b1 //SEG281 render_next::@1 b1: - //SEG282 [112] (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG282 [112] (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda next_piece_idx_12 asl sta _4 - //SEG283 [113] (byte) render_next::next_piece_char#0 ? *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG283 [113] (byte) render_next::next_piece_char#0 ← *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) -- vbuz1=pbuc1_derefidx_vbuz2 ldy next_piece_idx_12 lda PIECES_NEXT_CHARS,y sta next_piece_char - //SEG284 [114] (byte*~) render_next::next_piece_gfx#9 ? (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG284 [114] (byte*~) render_next::next_piece_gfx#9 ← (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) -- pbuz1=pptc1_derefidx_vbuz2 ldy _4 lda PIECES,y sta next_piece_gfx @@ -13870,11 +13870,11 @@ render_next: { jmp b4 //SEG302 render_next::@4 b4: - //SEG303 [117] (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) -- vbuz1=_deref_pbuz2 + //SEG303 [117] (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) -- vbuz1=_deref_pbuz2 ldy #0 lda (next_piece_gfx),y sta cell - //SEG304 [118] (byte*) render_next::next_piece_gfx#1 ? ++ (byte*) render_next::next_piece_gfx#2 -- pbuz1=_inc_pbuz1 + //SEG304 [118] (byte*) render_next::next_piece_gfx#1 ← ++ (byte*) render_next::next_piece_gfx#2 -- pbuz1=_inc_pbuz1 inc next_piece_gfx bne !+ inc next_piece_gfx+1 @@ -13886,19 +13886,19 @@ render_next: { jmp b7 //SEG306 render_next::@7 b7: - //SEG307 [120] *((byte*) render_next::screen_next_area#5) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG307 [120] *((byte*) render_next::screen_next_area#5) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (screen_next_area),y jmp b6 //SEG308 render_next::@6 b6: - //SEG309 [121] (byte*) render_next::screen_next_area#3 ? ++ (byte*) render_next::screen_next_area#5 -- pbuz1=_inc_pbuz1 + //SEG309 [121] (byte*) render_next::screen_next_area#3 ← ++ (byte*) render_next::screen_next_area#5 -- pbuz1=_inc_pbuz1 inc screen_next_area bne !+ inc screen_next_area+1 !: - //SEG310 [122] (byte) render_next::c#1 ? ++ (byte) render_next::c#2 -- vbuz1=_inc_vbuz1 + //SEG310 [122] (byte) render_next::c#1 ← ++ (byte) render_next::c#2 -- vbuz1=_inc_vbuz1 inc c //SEG311 [123] if((byte) render_next::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@4 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -13907,7 +13907,7 @@ render_next: { jmp b8 //SEG312 render_next::@8 b8: - //SEG313 [124] (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 -- pbuz1=pbuz1_plus_vbuc1 + //SEG313 [124] (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 -- pbuz1=pbuz1_plus_vbuc1 lda #$24 clc adc screen_next_area @@ -13915,7 +13915,7 @@ render_next: { bcc !+ inc screen_next_area+1 !: - //SEG314 [125] (byte) render_next::l#1 ? ++ (byte) render_next::l#7 -- vbuz1=_inc_vbuz1 + //SEG314 [125] (byte) render_next::l#1 ← ++ (byte) render_next::l#7 -- vbuz1=_inc_vbuz1 inc l //SEG315 [126] if((byte) render_next::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@3 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -13928,7 +13928,7 @@ render_next: { rts //SEG318 render_next::@5 b5: - //SEG319 [128] *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#0 -- _deref_pbuz1=vbuz2 + //SEG319 [128] *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#0 -- _deref_pbuz1=vbuz2 lda next_piece_char ldy #0 sta (screen_next_area),y @@ -13946,7 +13946,7 @@ render_moving: { .label l = $1e .label current_cell = $8d .label c = $21 - //SEG321 [130] (byte) render_moving::ypos2#0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG321 [130] (byte) render_moving::ypos2#0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda current_ypos_13 asl sta ypos2 @@ -13975,7 +13975,7 @@ render_moving: { jmp b7 //SEG332 render_moving::@7 b7: - //SEG333 [133] (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 + //SEG333 [133] (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 lax i axs #-[4] stx i @@ -13986,12 +13986,12 @@ render_moving: { jmp b3 //SEG336 render_moving::@3 b3: - //SEG337 [135] (byte) render_moving::ypos2#1 ? (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG337 [135] (byte) render_moving::ypos2#1 ← (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG338 [136] (byte) render_moving::l#1 ? ++ (byte) render_moving::l#4 -- vbuz1=_inc_vbuz1 + //SEG338 [136] (byte) render_moving::l#1 ← ++ (byte) render_moving::l#4 -- vbuz1=_inc_vbuz1 inc l //SEG339 [137] if((byte) render_moving::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@1 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -14004,18 +14004,18 @@ render_moving: { rts //SEG342 render_moving::@2 b2: - //SEG343 [139] (byte~) render_moving::$2 ? (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 -- vbuz1=vbuz2_plus_vbuz3 + //SEG343 [139] (byte~) render_moving::$2 ← (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 -- vbuz1=vbuz2_plus_vbuz3 lda render_screen_render_33 clc adc ypos2 sta _2 - //SEG344 [140] (byte*) render_moving::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG344 [140] (byte*) render_moving::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) -- pbuz1=pptc1_derefidx_vbuz2 ldy _2 lda screen_lines_1,y sta screen_line lda screen_lines_1+1,y sta screen_line+1 - //SEG345 [141] (byte) render_moving::xpos#0 ? (byte) current_xpos#59 -- vbuz1=vbuz2 + //SEG345 [141] (byte) render_moving::xpos#0 ← (byte) current_xpos#59 -- vbuz1=vbuz2 lda current_xpos_59 sta xpos //SEG346 [142] phi from render_moving::@2 to render_moving::@4 [phi:render_moving::@2->render_moving::@4] @@ -14034,11 +14034,11 @@ render_moving: { jmp b4 //SEG354 render_moving::@4 b4: - //SEG355 [143] (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) -- vbuz1=pbuz2_derefidx_vbuz3 + //SEG355 [143] (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) -- vbuz1=pbuz2_derefidx_vbuz3 ldy i lda (current_piece_gfx_64),y sta current_cell - //SEG356 [144] (byte) render_moving::i#2 ? ++ (byte) render_moving::i#4 -- vbuz1=_inc_vbuz1 + //SEG356 [144] (byte) render_moving::i#2 ← ++ (byte) render_moving::i#4 -- vbuz1=_inc_vbuz1 inc i //SEG357 [145] if((byte) render_moving::current_cell#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_moving::@5 -- vbuz1_eq_0_then_la1 lda current_cell @@ -14047,16 +14047,16 @@ render_moving: { jmp b6 //SEG358 render_moving::@6 b6: - //SEG359 [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ? (byte) current_piece_char#68 -- pbuz1_derefidx_vbuz2=vbuz3 + //SEG359 [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ← (byte) current_piece_char#68 -- pbuz1_derefidx_vbuz2=vbuz3 lda current_piece_char_68 ldy xpos sta (screen_line),y jmp b5 //SEG360 render_moving::@5 b5: - //SEG361 [147] (byte) render_moving::xpos#1 ? ++ (byte) render_moving::xpos#2 -- vbuz1=_inc_vbuz1 + //SEG361 [147] (byte) render_moving::xpos#1 ← ++ (byte) render_moving::xpos#2 -- vbuz1=_inc_vbuz1 inc xpos - //SEG362 [148] (byte) render_moving::c#1 ? ++ (byte) render_moving::c#2 -- vbuz1=_inc_vbuz1 + //SEG362 [148] (byte) render_moving::c#1 ← ++ (byte) render_moving::c#2 -- vbuz1=_inc_vbuz1 inc c //SEG363 [149] if((byte) render_moving::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@4 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -14089,16 +14089,16 @@ render_playfield: { jmp b1 //SEG371 render_playfield::@1 b1: - //SEG372 [152] (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG372 [152] (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda l asl sta _2 - //SEG373 [153] (byte~) render_playfield::$3 ? (byte) render_screen_render#22 + (byte~) render_playfield::$2 -- vbuz1=vbuz2_plus_vbuz3 + //SEG373 [153] (byte~) render_playfield::$3 ← (byte) render_screen_render#22 + (byte~) render_playfield::$2 -- vbuz1=vbuz2_plus_vbuz3 lda render_screen_render_22 clc adc _2 sta _3 - //SEG374 [154] (byte*) render_playfield::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG374 [154] (byte*) render_playfield::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuz2 ldy _3 lda screen_lines_1,y sta screen_line @@ -14120,19 +14120,19 @@ render_playfield: { jmp b2 //SEG383 render_playfield::@2 b2: - //SEG384 [156] *((byte*) render_playfield::screen_line#2) ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG384 [156] *((byte*) render_playfield::screen_line#2) ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy i lda playfield,y ldy #0 sta (screen_line),y - //SEG385 [157] (byte*) render_playfield::screen_line#1 ? ++ (byte*) render_playfield::screen_line#2 -- pbuz1=_inc_pbuz1 + //SEG385 [157] (byte*) render_playfield::screen_line#1 ← ++ (byte*) render_playfield::screen_line#2 -- pbuz1=_inc_pbuz1 inc screen_line bne !+ inc screen_line+1 !: - //SEG386 [158] (byte) render_playfield::i#1 ? ++ (byte) render_playfield::i#2 -- vbuz1=_inc_vbuz1 + //SEG386 [158] (byte) render_playfield::i#1 ← ++ (byte) render_playfield::i#2 -- vbuz1=_inc_vbuz1 inc i - //SEG387 [159] (byte) render_playfield::c#1 ? ++ (byte) render_playfield::c#2 -- vbuz1=_inc_vbuz1 + //SEG387 [159] (byte) render_playfield::c#1 ← ++ (byte) render_playfield::c#2 -- vbuz1=_inc_vbuz1 inc c //SEG388 [160] if((byte) render_playfield::c#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@2 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_COLS-1+1 @@ -14141,7 +14141,7 @@ render_playfield: { jmp b3 //SEG389 render_playfield::@3 b3: - //SEG390 [161] (byte) render_playfield::l#1 ? ++ (byte) render_playfield::l#2 -- vbuz1=_inc_vbuz1 + //SEG390 [161] (byte) render_playfield::l#1 ← ++ (byte) render_playfield::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG391 [162] if((byte) render_playfield::l#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -14167,21 +14167,21 @@ play_movement: { .label return = $28 .label key_event = $7e .label return_3 = $7f - //SEG395 [164] (byte) play_move_down::key_event#0 ? (byte) play_movement::key_event#0 -- vbuz1=vbuz2 + //SEG395 [164] (byte) play_move_down::key_event#0 ← (byte) play_movement::key_event#0 -- vbuz1=vbuz2 lda key_event sta play_move_down.key_event //SEG396 [165] call play_move_down jsr play_move_down - //SEG397 [166] (byte) play_move_down::return#0 ? (byte) play_move_down::return#3 -- vbuz1=vbuz2 + //SEG397 [166] (byte) play_move_down::return#0 ← (byte) play_move_down::return#3 -- vbuz1=vbuz2 lda play_move_down.return_3 sta play_move_down.return jmp b2 //SEG398 play_movement::@2 b2: - //SEG399 [167] (byte~) play_movement::$0 ? (byte) play_move_down::return#0 -- vbuz1=vbuz2 + //SEG399 [167] (byte~) play_movement::$0 ← (byte) play_move_down::return#0 -- vbuz1=vbuz2 lda play_move_down.return sta _0 - //SEG400 [168] (byte) play_movement::render#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 -- vbuz1=vbuc1_plus_vbuz2 + //SEG400 [168] (byte) play_movement::render#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 -- vbuz1=vbuc1_plus_vbuz2 lax _0 axs #-[0] stx render @@ -14203,40 +14203,40 @@ play_movement: { rts //SEG409 play_movement::@1 b1: - //SEG410 [172] (byte) play_move_leftright::key_event#0 ? (byte) play_movement::key_event#0 -- vbuz1=vbuz2 + //SEG410 [172] (byte) play_move_leftright::key_event#0 ← (byte) play_movement::key_event#0 -- vbuz1=vbuz2 lda key_event sta play_move_leftright.key_event //SEG411 [173] call play_move_leftright jsr play_move_leftright - //SEG412 [174] (byte) play_move_leftright::return#0 ? (byte) play_move_leftright::return#2 -- vbuz1=vbuz2 + //SEG412 [174] (byte) play_move_leftright::return#0 ← (byte) play_move_leftright::return#2 -- vbuz1=vbuz2 lda play_move_leftright.return_2 sta play_move_leftright.return jmp b3 //SEG413 play_movement::@3 b3: - //SEG414 [175] (byte~) play_movement::$3 ? (byte) play_move_leftright::return#0 -- vbuz1=vbuz2 + //SEG414 [175] (byte~) play_movement::$3 ← (byte) play_move_leftright::return#0 -- vbuz1=vbuz2 lda play_move_leftright.return sta _3 - //SEG415 [176] (byte) play_movement::render#2 ? (byte) play_movement::render#1 + (byte~) play_movement::$3 -- vbuz1=vbuz2_plus_vbuz3 + //SEG415 [176] (byte) play_movement::render#2 ← (byte) play_movement::render#1 + (byte~) play_movement::$3 -- vbuz1=vbuz2_plus_vbuz3 lda render clc adc _3 sta render_2 - //SEG416 [177] (byte) play_move_rotate::key_event#0 ? (byte) play_movement::key_event#0 -- vbuz1=vbuz2 + //SEG416 [177] (byte) play_move_rotate::key_event#0 ← (byte) play_movement::key_event#0 -- vbuz1=vbuz2 lda key_event sta play_move_rotate.key_event //SEG417 [178] call play_move_rotate jsr play_move_rotate - //SEG418 [179] (byte) play_move_rotate::return#0 ? (byte) play_move_rotate::return#2 -- vbuz1=vbuz2 + //SEG418 [179] (byte) play_move_rotate::return#0 ← (byte) play_move_rotate::return#2 -- vbuz1=vbuz2 lda play_move_rotate.return_2 sta play_move_rotate.return jmp b4 //SEG419 play_movement::@4 b4: - //SEG420 [180] (byte~) play_movement::$4 ? (byte) play_move_rotate::return#0 -- vbuz1=vbuz2 + //SEG420 [180] (byte~) play_movement::$4 ← (byte) play_move_rotate::return#0 -- vbuz1=vbuz2 lda play_move_rotate.return sta _4 - //SEG421 [181] (byte) play_movement::return#0 ? (byte) play_movement::render#2 + (byte~) play_movement::$4 -- vbuz1=vbuz2_plus_vbuz3 + //SEG421 [181] (byte) play_movement::return#0 ← (byte) play_movement::render#2 + (byte~) play_movement::$4 -- vbuz1=vbuz2_plus_vbuz3 lda render_2 clc adc _4 @@ -14281,11 +14281,11 @@ play_move_rotate: { rts //SEG432 play_move_rotate::@2 b2: - //SEG433 [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuz1=vbuz2_plus_vbuc1 + //SEG433 [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuz1=vbuz2_plus_vbuc1 lax current_orientation axs #-[$10] stx _5 - //SEG434 [187] (byte) play_move_rotate::orientation#2 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuz2_band_vbuc1 + //SEG434 [187] (byte) play_move_rotate::orientation#2 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuz2_band_vbuc1 lda #$3f and _5 sta orientation @@ -14296,16 +14296,16 @@ play_move_rotate: { jmp b3 //SEG437 play_move_rotate::@3 b3: - //SEG438 [189] (byte) play_collision::xpos#3 ? (byte) current_xpos#26 -- vbuz1=vbuz2 + //SEG438 [189] (byte) play_collision::xpos#3 ← (byte) current_xpos#26 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG439 [190] (byte) play_collision::ypos#3 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG439 [190] (byte) play_collision::ypos#3 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG440 [191] (byte) play_collision::orientation#3 ? (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 + //SEG440 [191] (byte) play_collision::orientation#3 ← (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 lda orientation sta play_collision.orientation - //SEG441 [192] (byte*~) current_piece#101 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG441 [192] (byte*~) current_piece#101 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_101 lda current_piece+1 @@ -14318,13 +14318,13 @@ play_move_rotate: { //SEG446 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#3 [phi:play_move_rotate::@3->play_collision#2] -- register_copy //SEG447 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#101 [phi:play_move_rotate::@3->play_collision#3] -- register_copy jsr play_collision - //SEG448 [194] (byte) play_collision::return#14 ? (byte) play_collision::return#15 -- vbuz1=vbuz2 + //SEG448 [194] (byte) play_collision::return#14 ← (byte) play_collision::return#15 -- vbuz1=vbuz2 lda play_collision.return_15 sta play_collision.return_14 jmp b6 //SEG449 play_move_rotate::@6 b6: - //SEG450 [195] (byte~) play_move_rotate::$2 ? (byte) play_collision::return#14 -- vbuz1=vbuz2 + //SEG450 [195] (byte~) play_move_rotate::$2 ← (byte) play_collision::return#14 -- vbuz1=vbuz2 lda play_collision.return_14 sta _2 //SEG451 [196] if((byte~) play_move_rotate::$2!=(const byte) COLLISION_NONE#0) goto play_move_rotate::@return -- vbuz1_neq_vbuc1_then_la1 @@ -14334,10 +14334,10 @@ play_move_rotate: { jmp b5 //SEG452 play_move_rotate::@5 b5: - //SEG453 [197] (byte) current_orientation#7 ? (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 + //SEG453 [197] (byte) current_orientation#7 ← (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 lda orientation sta current_orientation - //SEG454 [198] (byte*) current_piece_gfx#7 ? (byte*) current_piece#15 + (byte) current_orientation#7 -- pbuz1=pbuz2_plus_vbuz3 + //SEG454 [198] (byte*) current_piece_gfx#7 ← (byte*) current_piece#15 + (byte) current_orientation#7 -- pbuz1=pbuz2_plus_vbuz3 lda current_orientation clc adc current_piece @@ -14355,11 +14355,11 @@ play_move_rotate: { jmp breturn //SEG459 play_move_rotate::@1 b1: - //SEG460 [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuz1=vbuz2_minus_vbuc1 + //SEG460 [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuz1=vbuz2_minus_vbuc1 lax current_orientation axs #$10 stx _7 - //SEG461 [200] (byte) play_move_rotate::orientation#1 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuz2_band_vbuc1 + //SEG461 [200] (byte) play_move_rotate::orientation#1 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuz2_band_vbuc1 lda #$3f and _7 sta orientation @@ -14391,7 +14391,7 @@ play_collision: { .label i_3 = $32 .label i_11 = $32 .label i_13 = $32 - //SEG463 [202] (byte*) play_collision::piece_gfx#0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 -- pbuz1=pbuz2_plus_vbuz3 + //SEG463 [202] (byte*) play_collision::piece_gfx#0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 -- pbuz1=pbuz2_plus_vbuz3 lda orientation clc adc current_piece_17 @@ -14399,7 +14399,7 @@ play_collision: { lda #0 adc current_piece_17+1 sta piece_gfx+1 - //SEG464 [203] (byte) play_collision::ypos2#0 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG464 [203] (byte) play_collision::ypos2#0 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda ypos asl sta ypos2 @@ -14415,13 +14415,13 @@ play_collision: { jmp b1 //SEG469 play_collision::@1 b1: - //SEG470 [205] (byte*) play_collision::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG470 [205] (byte*) play_collision::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 ldy ypos2 lda playfield_lines,y sta playfield_line lda playfield_lines+1,y sta playfield_line+1 - //SEG471 [206] (byte~) play_collision::col#9 ? (byte) play_collision::xpos#6 -- vbuz1=vbuz2 + //SEG471 [206] (byte~) play_collision::col#9 ← (byte) play_collision::xpos#6 -- vbuz1=vbuz2 lda xpos sta col //SEG472 [207] phi from play_collision::@1 to play_collision::@2 [phi:play_collision::@1->play_collision::@2] @@ -14434,7 +14434,7 @@ play_collision: { jmp b2 //SEG476 play_collision::@2 b2: - //SEG477 [208] (byte) play_collision::i#1 ? ++ (byte) play_collision::i#2 -- vbuz1=_inc_vbuz2 + //SEG477 [208] (byte) play_collision::i#1 ← ++ (byte) play_collision::i#2 -- vbuz1=_inc_vbuz2 ldy i_2 iny sty i @@ -14462,7 +14462,7 @@ play_collision: { rts //SEG485 play_collision::@4 b4: - //SEG486 [213] (byte~) play_collision::$7 ? (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG486 [213] (byte~) play_collision::$7 ← (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and col sta _7 @@ -14503,9 +14503,9 @@ play_collision: { jmp breturn //SEG498 play_collision::@3 b3: - //SEG499 [217] (byte) play_collision::col#1 ? ++ (byte) play_collision::col#2 -- vbuz1=_inc_vbuz1 + //SEG499 [217] (byte) play_collision::col#1 ← ++ (byte) play_collision::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG500 [218] (byte) play_collision::c#1 ? ++ (byte) play_collision::c#2 -- vbuz1=_inc_vbuz1 + //SEG500 [218] (byte) play_collision::c#1 ← ++ (byte) play_collision::c#2 -- vbuz1=_inc_vbuz1 inc c //SEG501 [219] if((byte) play_collision::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@10 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -14514,12 +14514,12 @@ play_collision: { jmp b8 //SEG502 play_collision::@8 b8: - //SEG503 [220] (byte) play_collision::ypos2#1 ? (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG503 [220] (byte) play_collision::ypos2#1 ← (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG504 [221] (byte) play_collision::l#1 ? ++ (byte) play_collision::l#6 -- vbuz1=_inc_vbuz1 + //SEG504 [221] (byte) play_collision::l#1 ← ++ (byte) play_collision::l#6 -- vbuz1=_inc_vbuz1 inc l //SEG505 [222] if((byte) play_collision::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@9 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -14533,7 +14533,7 @@ play_collision: { jmp breturn //SEG508 play_collision::@9 b9: - //SEG509 [223] (byte~) play_collision::i#11 ? (byte) play_collision::i#1 -- vbuz1=vbuz2 + //SEG509 [223] (byte~) play_collision::i#11 ← (byte) play_collision::i#1 -- vbuz1=vbuz2 lda i sta i_11 //SEG510 [204] phi from play_collision::@9 to play_collision::@1 [phi:play_collision::@9->play_collision::@1] @@ -14544,7 +14544,7 @@ play_collision: { jmp b1 //SEG514 play_collision::@10 b10: - //SEG515 [224] (byte~) play_collision::i#13 ? (byte) play_collision::i#1 -- vbuz1=vbuz2 + //SEG515 [224] (byte~) play_collision::i#13 ← (byte) play_collision::i#1 -- vbuz1=vbuz2 lda i sta i_13 //SEG516 [207] phi from play_collision::@10 to play_collision::@2 [phi:play_collision::@10->play_collision::@2] @@ -14579,17 +14579,17 @@ play_move_leftright: { jmp b3 //SEG524 play_move_leftright::@3 b3: - //SEG525 [227] (byte) play_collision::xpos#2 ? (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG525 [227] (byte) play_collision::xpos#2 ← (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy current_xpos iny sty play_collision.xpos - //SEG526 [228] (byte) play_collision::ypos#2 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG526 [228] (byte) play_collision::ypos#2 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG527 [229] (byte) play_collision::orientation#2 ? (byte) current_orientation#20 -- vbuz1=vbuz2 + //SEG527 [229] (byte) play_collision::orientation#2 ← (byte) current_orientation#20 -- vbuz1=vbuz2 lda current_orientation sta play_collision.orientation - //SEG528 [230] (byte*~) current_piece#100 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG528 [230] (byte*~) current_piece#100 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_100 lda current_piece+1 @@ -14602,13 +14602,13 @@ play_move_leftright: { //SEG533 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#2 [phi:play_move_leftright::@3->play_collision#2] -- register_copy //SEG534 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#100 [phi:play_move_leftright::@3->play_collision#3] -- register_copy jsr play_collision - //SEG535 [232] (byte) play_collision::return#13 ? (byte) play_collision::return#15 -- vbuz1=vbuz2 + //SEG535 [232] (byte) play_collision::return#13 ← (byte) play_collision::return#15 -- vbuz1=vbuz2 lda play_collision.return_15 sta play_collision.return_13 jmp b7 //SEG536 play_move_leftright::@7 b7: - //SEG537 [233] (byte~) play_move_leftright::$4 ? (byte) play_collision::return#13 -- vbuz1=vbuz2 + //SEG537 [233] (byte~) play_move_leftright::$4 ← (byte) play_collision::return#13 -- vbuz1=vbuz2 lda play_collision.return_13 sta _4 //SEG538 [234] if((byte~) play_move_leftright::$4!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return -- vbuz1_neq_vbuc1_then_la1 @@ -14618,7 +14618,7 @@ play_move_leftright: { jmp b4 //SEG539 play_move_leftright::@4 b4: - //SEG540 [235] (byte) current_xpos#6 ? ++ (byte) current_xpos#22 -- vbuz1=_inc_vbuz1 + //SEG540 [235] (byte) current_xpos#6 ← ++ (byte) current_xpos#22 -- vbuz1=_inc_vbuz1 inc current_xpos //SEG541 [236] phi from play_move_leftright::@4 play_move_leftright::@5 to play_move_leftright::@return [phi:play_move_leftright::@4/play_move_leftright::@5->play_move_leftright::@return] breturn_from_b4: @@ -14643,17 +14643,17 @@ play_move_leftright: { rts //SEG549 play_move_leftright::@1 b1: - //SEG550 [238] (byte) play_collision::xpos#1 ? (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_minus_1 + //SEG550 [238] (byte) play_collision::xpos#1 ← (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_minus_1 ldx current_xpos dex stx play_collision.xpos - //SEG551 [239] (byte) play_collision::ypos#1 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG551 [239] (byte) play_collision::ypos#1 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG552 [240] (byte) play_collision::orientation#1 ? (byte) current_orientation#20 -- vbuz1=vbuz2 + //SEG552 [240] (byte) play_collision::orientation#1 ← (byte) current_orientation#20 -- vbuz1=vbuz2 lda current_orientation sta play_collision.orientation - //SEG553 [241] (byte*~) current_piece#99 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG553 [241] (byte*~) current_piece#99 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_99 lda current_piece+1 @@ -14666,13 +14666,13 @@ play_move_leftright: { //SEG558 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#1 [phi:play_move_leftright::@1->play_collision#2] -- register_copy //SEG559 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#99 [phi:play_move_leftright::@1->play_collision#3] -- register_copy jsr play_collision - //SEG560 [243] (byte) play_collision::return#1 ? (byte) play_collision::return#15 -- vbuz1=vbuz2 + //SEG560 [243] (byte) play_collision::return#1 ← (byte) play_collision::return#15 -- vbuz1=vbuz2 lda play_collision.return_15 sta play_collision.return_1 jmp b6 //SEG561 play_move_leftright::@6 b6: - //SEG562 [244] (byte~) play_move_leftright::$8 ? (byte) play_collision::return#1 -- vbuz1=vbuz2 + //SEG562 [244] (byte~) play_move_leftright::$8 ← (byte) play_collision::return#1 -- vbuz1=vbuz2 lda play_collision.return_1 sta _8 //SEG563 [245] if((byte~) play_move_leftright::$8!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return -- vbuz1_neq_vbuc1_then_la1 @@ -14682,7 +14682,7 @@ play_move_leftright: { jmp b5 //SEG564 play_move_leftright::@5 b5: - //SEG565 [246] (byte) current_xpos#8 ? -- (byte) current_xpos#22 -- vbuz1=_dec_vbuz1 + //SEG565 [246] (byte) current_xpos#8 ← -- (byte) current_xpos#22 -- vbuz1=_dec_vbuz1 dec current_xpos jmp breturn_from_b5 } @@ -14698,7 +14698,7 @@ play_move_down: { .label movedown = $37 .label removed = $ad .label return_3 = $49 - //SEG567 [247] (byte) current_movedown_counter#12 ? ++ (byte) current_movedown_counter#16 -- vbuz1=_inc_vbuz1 + //SEG567 [247] (byte) current_movedown_counter#12 ← ++ (byte) current_movedown_counter#16 -- vbuz1=_inc_vbuz1 inc current_movedown_counter //SEG568 [248] if((byte) play_move_down::key_event#0!=(const byte) KEY_SPACE#0) goto play_move_down::@1 -- vbuz1_neq_vbuc1_then_la1 lda #KEY_SPACE @@ -14730,13 +14730,13 @@ play_move_down: { lda #KEY_SPACE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG579 [252] (byte) keyboard_event_pressed::return#12 ? (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 + //SEG579 [252] (byte) keyboard_event_pressed::return#12 ← (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_11 sta keyboard_event_pressed.return_12 jmp b12 //SEG580 play_move_down::@12 b12: - //SEG581 [253] (byte~) play_move_down::$2 ? (byte) keyboard_event_pressed::return#12 -- vbuz1=vbuz2 + //SEG581 [253] (byte~) play_move_down::$2 ← (byte) keyboard_event_pressed::return#12 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_12 sta _2 //SEG582 [254] if((byte~) play_move_down::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_move_down::@2 -- vbuz1_eq_0_then_la1 @@ -14753,7 +14753,7 @@ play_move_down: { jmp b6 //SEG585 play_move_down::@6 b6: - //SEG586 [256] (byte) play_move_down::movedown#2 ? ++ (byte) play_move_down::movedown#10 -- vbuz1=_inc_vbuz1 + //SEG586 [256] (byte) play_move_down::movedown#2 ← ++ (byte) play_move_down::movedown#10 -- vbuz1=_inc_vbuz1 inc movedown //SEG587 [257] phi from play_move_down::@12 play_move_down::@5 play_move_down::@6 to play_move_down::@2 [phi:play_move_down::@12/play_move_down::@5/play_move_down::@6->play_move_down::@2] b2_from_b12: @@ -14770,7 +14770,7 @@ play_move_down: { jmp b7 //SEG591 play_move_down::@7 b7: - //SEG592 [259] (byte) play_move_down::movedown#3 ? ++ (byte) play_move_down::movedown#7 -- vbuz1=_inc_vbuz1 + //SEG592 [259] (byte) play_move_down::movedown#3 ← ++ (byte) play_move_down::movedown#7 -- vbuz1=_inc_vbuz1 inc movedown //SEG593 [260] phi from play_move_down::@2 play_move_down::@7 to play_move_down::@3 [phi:play_move_down::@2/play_move_down::@7->play_move_down::@3] b3_from_b2: @@ -14786,17 +14786,17 @@ play_move_down: { jmp b8 //SEG597 play_move_down::@8 b8: - //SEG598 [262] (byte) play_collision::ypos#0 ? (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG598 [262] (byte) play_collision::ypos#0 ← (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy current_ypos iny sty play_collision.ypos - //SEG599 [263] (byte) play_collision::xpos#0 ? (byte) current_xpos#122 -- vbuz1=vbuz2 + //SEG599 [263] (byte) play_collision::xpos#0 ← (byte) current_xpos#122 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG600 [264] (byte) play_collision::orientation#0 ? (byte) current_orientation#13 -- vbuz1=vbuz2 + //SEG600 [264] (byte) play_collision::orientation#0 ← (byte) current_orientation#13 -- vbuz1=vbuz2 lda current_orientation sta play_collision.orientation - //SEG601 [265] (byte*~) current_piece#98 ? (byte*) current_piece#10 -- pbuz1=pbuz2 + //SEG601 [265] (byte*~) current_piece#98 ← (byte*) current_piece#10 -- pbuz1=pbuz2 lda current_piece sta current_piece_98 lda current_piece+1 @@ -14809,13 +14809,13 @@ play_move_down: { //SEG606 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#0 [phi:play_move_down::@8->play_collision#2] -- register_copy //SEG607 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#98 [phi:play_move_down::@8->play_collision#3] -- register_copy jsr play_collision - //SEG608 [267] (byte) play_collision::return#0 ? (byte) play_collision::return#15 -- vbuz1=vbuz2 + //SEG608 [267] (byte) play_collision::return#0 ← (byte) play_collision::return#15 -- vbuz1=vbuz2 lda play_collision.return_15 sta play_collision.return jmp b13 //SEG609 play_move_down::@13 b13: - //SEG610 [268] (byte~) play_move_down::$12 ? (byte) play_collision::return#0 -- vbuz1=vbuz2 + //SEG610 [268] (byte~) play_move_down::$12 ← (byte) play_collision::return#0 -- vbuz1=vbuz2 lda play_collision.return sta _12 //SEG611 [269] if((byte~) play_move_down::$12==(const byte) COLLISION_NONE#0) goto play_move_down::@10 -- vbuz1_eq_vbuc1_then_la1 @@ -14838,16 +14838,16 @@ play_move_down: { //SEG618 [344] phi from play_move_down::@14 to play_remove_lines [phi:play_move_down::@14->play_remove_lines] play_remove_lines_from_b14: jsr play_remove_lines - //SEG619 [274] (byte) play_remove_lines::return#0 ? (byte) play_remove_lines::removed#8 -- vbuz1=vbuz2 + //SEG619 [274] (byte) play_remove_lines::return#0 ← (byte) play_remove_lines::removed#8 -- vbuz1=vbuz2 lda play_remove_lines.removed sta play_remove_lines.return jmp b15 //SEG620 play_move_down::@15 b15: - //SEG621 [275] (byte) play_move_down::removed#0 ? (byte) play_remove_lines::return#0 -- vbuz1=vbuz2 + //SEG621 [275] (byte) play_move_down::removed#0 ← (byte) play_remove_lines::return#0 -- vbuz1=vbuz2 lda play_remove_lines.return sta removed - //SEG622 [276] (byte) play_update_score::removed#0 ? (byte) play_move_down::removed#0 -- vbuz1=vbuz2 + //SEG622 [276] (byte) play_update_score::removed#0 ← (byte) play_move_down::removed#0 -- vbuz1=vbuz2 lda removed sta play_update_score.removed //SEG623 [277] call play_update_score @@ -14863,7 +14863,7 @@ play_move_down: { //SEG628 [285] phi (byte) game_over#65 = (byte) game_over#10 [phi:play_move_down::@16->play_spawn_current#0] -- register_copy //SEG629 [285] phi (byte) next_piece_idx#17 = (byte) next_piece_idx#10 [phi:play_move_down::@16->play_spawn_current#1] -- register_copy jsr play_spawn_current - //SEG630 [280] (byte*~) current_piece#104 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG630 [280] (byte*~) current_piece#104 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy play_spawn_current._0 lda PIECES,y sta current_piece @@ -14937,7 +14937,7 @@ play_move_down: { rts //SEG680 play_move_down::@10 b10: - //SEG681 [284] (byte) current_ypos#3 ? ++ (byte) current_ypos#11 -- vbuz1=_inc_vbuz1 + //SEG681 [284] (byte) current_ypos#3 ← ++ (byte) current_ypos#11 -- vbuz1=_inc_vbuz1 inc current_ypos //SEG682 [281] phi from play_move_down::@10 to play_move_down::@11 [phi:play_move_down::@10->play_move_down::@11] b11_from_b10: @@ -14965,39 +14965,39 @@ play_spawn_current: { .label _6 = $b4 .label current_piece_idx = $af .label piece_idx = $4a - //SEG697 [286] (byte) play_spawn_current::current_piece_idx#0 ? (byte) next_piece_idx#17 -- vbuz1=vbuz2 + //SEG697 [286] (byte) play_spawn_current::current_piece_idx#0 ← (byte) next_piece_idx#17 -- vbuz1=vbuz2 // Move next piece into current lda next_piece_idx sta current_piece_idx - //SEG698 [287] (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG698 [287] (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda current_piece_idx asl sta _0 - //SEG699 [288] (byte) current_piece_char#5 ? *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG699 [288] (byte) current_piece_char#5 ← *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy current_piece_idx lda PIECES_CHARS,y sta current_piece_char - //SEG700 [289] (byte*) current_piece_gfx#74 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuz1=pptc1_derefidx_vbuz2_plus_0 + //SEG700 [289] (byte*) current_piece_gfx#74 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuz1=pptc1_derefidx_vbuz2_plus_0 ldy _0 lda PIECES,y sta current_piece_gfx lda PIECES+1,y sta current_piece_gfx+1 - //SEG701 [290] (byte) current_xpos#103 ? *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG701 [290] (byte) current_xpos#103 ← *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy current_piece_idx lda PIECES_START_X,y sta current_xpos - //SEG702 [291] (byte) current_ypos#6 ? *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG702 [291] (byte) current_ypos#6 ← *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy current_piece_idx lda PIECES_START_Y,y sta current_ypos - //SEG703 [292] (byte) play_collision::xpos#4 ? (byte) current_xpos#103 -- vbuz1=vbuz2 + //SEG703 [292] (byte) play_collision::xpos#4 ← (byte) current_xpos#103 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG704 [293] (byte) play_collision::ypos#4 ? (byte) current_ypos#6 -- vbuz1=vbuz2 + //SEG704 [293] (byte) play_collision::ypos#4 ← (byte) current_ypos#6 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG705 [294] (byte*~) current_piece#102 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG705 [294] (byte*~) current_piece#102 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy _0 lda PIECES,y sta current_piece_102 @@ -15013,13 +15013,13 @@ play_spawn_current: { sta play_collision.orientation //SEG711 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#102 [phi:play_spawn_current->play_collision#3] -- register_copy jsr play_collision - //SEG712 [296] (byte) play_collision::return#10 ? (byte) play_collision::return#15 -- vbuz1=vbuz2 + //SEG712 [296] (byte) play_collision::return#10 ← (byte) play_collision::return#15 -- vbuz1=vbuz2 lda play_collision.return_15 sta play_collision.return_10 jmp b4 //SEG713 play_spawn_current::@4 b4: - //SEG714 [297] (byte~) play_spawn_current::$2 ? (byte) play_collision::return#10 -- vbuz1=vbuz2 + //SEG714 [297] (byte~) play_spawn_current::$2 ← (byte) play_collision::return#10 -- vbuz1=vbuz2 lda play_collision.return_10 sta _2 //SEG715 [298] if((byte~) play_spawn_current::$2!=(const byte) COLLISION_PLAYFIELD#0) goto play_spawn_current::@6 -- vbuz1_neq_vbuc1_then_la1 @@ -15058,16 +15058,16 @@ play_spawn_current: { b3: //SEG727 [304] call sid_rnd jsr sid_rnd - //SEG728 [305] (byte) sid_rnd::return#2 ? (byte) sid_rnd::return#0 -- vbuz1=vbuz2 + //SEG728 [305] (byte) sid_rnd::return#2 ← (byte) sid_rnd::return#0 -- vbuz1=vbuz2 lda sid_rnd.return sta sid_rnd.return_2 jmp b5 //SEG729 play_spawn_current::@5 b5: - //SEG730 [306] (byte~) play_spawn_current::$6 ? (byte) sid_rnd::return#2 -- vbuz1=vbuz2 + //SEG730 [306] (byte~) play_spawn_current::$6 ← (byte) sid_rnd::return#2 -- vbuz1=vbuz2 lda sid_rnd.return_2 sta _6 - //SEG731 [307] (byte) play_spawn_current::piece_idx#1 ? (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG731 [307] (byte) play_spawn_current::piece_idx#1 ← (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and _6 sta piece_idx @@ -15091,7 +15091,7 @@ play_spawn_current: { sid_rnd: { .label return = $b5 .label return_2 = $b3 - //SEG739 [309] (byte) sid_rnd::return#0 ? *((const byte*) SID_VOICE3_OSC#0) -- vbuz1=_deref_pbuc1 + //SEG739 [309] (byte) sid_rnd::return#0 ← *((const byte*) SID_VOICE3_OSC#0) -- vbuz1=_deref_pbuc1 lda SID_VOICE3_OSC sta return jmp breturn @@ -15118,19 +15118,19 @@ play_update_score: { jmp b1 //SEG744 play_update_score::@1 b1: - //SEG745 [312] (byte~) play_update_score::$2 ? < (word) lines_bcd#19 -- vbuz1=_lo_vwuz2 + //SEG745 [312] (byte~) play_update_score::$2 ← < (word) lines_bcd#19 -- vbuz1=_lo_vwuz2 lda lines_bcd sta _2 - //SEG746 [313] (byte) play_update_score::lines_before#0 ? (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuz2_band_vbuc1 + //SEG746 [313] (byte) play_update_score::lines_before#0 ← (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuz2_band_vbuc1 lda #$f0 and _2 sta lines_before - //SEG747 [314] (byte~) play_update_score::$4 ? (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_rol_2 + //SEG747 [314] (byte~) play_update_score::$4 ← (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_rol_2 lda removed asl asl sta _4 - //SEG748 [315] (dword) play_update_score::add_bcd#0 ? *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) -- vduz1=pduc1_derefidx_vbuz2 + //SEG748 [315] (dword) play_update_score::add_bcd#0 ← *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) -- vduz1=pduc1_derefidx_vbuz2 ldy _4 lda score_add_bcd,y sta add_bcd @@ -15142,7 +15142,7 @@ play_update_score: { sta add_bcd+3 //SEG749 asm { sed } sed - //SEG750 [317] (word) lines_bcd#30 ? (word) lines_bcd#19 + (byte) play_update_score::removed#0 -- vwuz1=vwuz1_plus_vbuz2 + //SEG750 [317] (word) lines_bcd#30 ← (word) lines_bcd#19 + (byte) play_update_score::removed#0 -- vwuz1=vwuz1_plus_vbuz2 lda removed clc adc lines_bcd @@ -15150,7 +15150,7 @@ play_update_score: { bcc !+ inc lines_bcd+1 !: - //SEG751 [318] (dword) score_bcd#30 ? (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 -- vduz1=vduz1_plus_vduz2 + //SEG751 [318] (dword) score_bcd#30 ← (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 -- vduz1=vduz1_plus_vduz2 lda score_bcd clc adc add_bcd @@ -15166,10 +15166,10 @@ play_update_score: { sta score_bcd+3 //SEG752 asm { cld } cld - //SEG753 [320] (byte~) play_update_score::$5 ? < (word) lines_bcd#30 -- vbuz1=_lo_vwuz2 + //SEG753 [320] (byte~) play_update_score::$5 ← < (word) lines_bcd#30 -- vbuz1=_lo_vwuz2 lda lines_bcd sta _5 - //SEG754 [321] (byte) play_update_score::lines_after#0 ? (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuz2_band_vbuc1 + //SEG754 [321] (byte) play_update_score::lines_after#0 ← (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuz2_band_vbuc1 lda #$f0 and _5 sta lines_after @@ -15205,7 +15205,7 @@ play_increase_level: { .label _1 = $bf .label b4 = $c0 .label b = $4c - //SEG768 [327] (byte) level#21 ? ++ (byte) level#10 -- vbuz1=_inc_vbuz1 + //SEG768 [327] (byte) level#21 ← ++ (byte) level#10 -- vbuz1=_inc_vbuz1 inc level //SEG769 [328] if((byte) level#21>(byte/signed byte/word/signed word/dword/signed dword) $1d) goto play_increase_level::@1 -- vbuz1_gt_vbuc1_then_la1 // Update speed of moving tetrominos down @@ -15215,7 +15215,7 @@ play_increase_level: { jmp b3 //SEG770 play_increase_level::@3 b3: - //SEG771 [329] (byte) current_movedown_slow#10 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG771 [329] (byte) current_movedown_slow#10 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) -- vbuz1=pbuc1_derefidx_vbuz2 ldy level lda MOVEDOWN_SLOW_SPEEDS,y sta current_movedown_slow @@ -15231,9 +15231,9 @@ play_increase_level: { jmp b1 //SEG776 play_increase_level::@1 b1: - //SEG777 [331] (byte) level_bcd#21 ? ++ (byte) level_bcd#11 -- vbuz1=_inc_vbuz1 + //SEG777 [331] (byte) level_bcd#21 ← ++ (byte) level_bcd#11 -- vbuz1=_inc_vbuz1 inc level_bcd - //SEG778 [332] (byte~) play_increase_level::$1 ? (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG778 [332] (byte~) play_increase_level::$1 ← (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and level_bcd sta _1 @@ -15244,7 +15244,7 @@ play_increase_level: { jmp b4 //SEG780 play_increase_level::@4 b4: - //SEG781 [334] (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 -- vbuz1=vbuz1_plus_vbuc1 + //SEG781 [334] (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 -- vbuz1=vbuz1_plus_vbuc1 // If level low nybble hits $a change to $10 lax level_bcd axs #-[6] @@ -15271,12 +15271,12 @@ play_increase_level: { jmp b5 //SEG790 play_increase_level::@5 b5: - //SEG791 [338] (byte) play_increase_level::b4#0 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_rol_2 + //SEG791 [338] (byte) play_increase_level::b4#0 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_rol_2 lda b asl asl sta b4 - //SEG792 [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) -- pduc1_derefidx_vbuz1=pduc1_derefidx_vbuz1_plus_pduc2_derefidx_vbuz1 + //SEG792 [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) -- pduc1_derefidx_vbuz1=pduc1_derefidx_vbuz1_plus_pduc2_derefidx_vbuz1 ldy b4 clc lda score_add_bcd,y @@ -15291,7 +15291,7 @@ play_increase_level: { lda score_add_bcd+3,y adc SCORE_BASE_BCD+3,y sta score_add_bcd+3,y - //SEG793 [340] (byte) play_increase_level::b#1 ? ++ (byte) play_increase_level::b#2 -- vbuz1=_inc_vbuz1 + //SEG793 [340] (byte) play_increase_level::b#1 ← ++ (byte) play_increase_level::b#2 -- vbuz1=_inc_vbuz1 inc b //SEG794 [341] if((byte) play_increase_level::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_increase_level::@5 -- vbuz1_neq_vbuc1_then_la1 lda #5 @@ -15367,11 +15367,11 @@ play_remove_lines: { jmp b2 //SEG821 play_remove_lines::@2 b2: - //SEG822 [347] (byte) play_remove_lines::c#0 ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG822 [347] (byte) play_remove_lines::c#0 ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy r lda playfield,y sta c - //SEG823 [348] (byte) play_remove_lines::r#1 ? -- (byte) play_remove_lines::r#2 -- vbuz1=_dec_vbuz1 + //SEG823 [348] (byte) play_remove_lines::r#1 ← -- (byte) play_remove_lines::r#2 -- vbuz1=_dec_vbuz1 dec r //SEG824 [349] if((byte) play_remove_lines::c#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_remove_lines::@9 -- vbuz1_neq_0_then_la1 lda c @@ -15385,13 +15385,13 @@ play_remove_lines: { jmp b3 //SEG827 play_remove_lines::@3 b3: - //SEG828 [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ? (byte) play_remove_lines::c#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG828 [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ← (byte) play_remove_lines::c#0 -- pbuc1_derefidx_vbuz1=vbuz2 lda c ldy w sta playfield,y - //SEG829 [352] (byte) play_remove_lines::w#1 ? -- (byte) play_remove_lines::w#4 -- vbuz1=_dec_vbuz1 + //SEG829 [352] (byte) play_remove_lines::w#1 ← -- (byte) play_remove_lines::w#4 -- vbuz1=_dec_vbuz1 dec w - //SEG830 [353] (byte) play_remove_lines::x#1 ? ++ (byte) play_remove_lines::x#2 -- vbuz1=_inc_vbuz1 + //SEG830 [353] (byte) play_remove_lines::x#1 ← ++ (byte) play_remove_lines::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG831 [354] if((byte) play_remove_lines::x#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@2 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_COLS-1+1 @@ -15407,11 +15407,11 @@ play_remove_lines: { jmp b5 //SEG834 play_remove_lines::@5 b5: - //SEG835 [356] (byte) play_remove_lines::w#2 ? (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 + //SEG835 [356] (byte) play_remove_lines::w#2 ← (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 lax w axs #-[PLAYFIELD_COLS] stx w - //SEG836 [357] (byte) play_remove_lines::removed#1 ? ++ (byte) play_remove_lines::removed#11 -- vbuz1=_inc_vbuz1 + //SEG836 [357] (byte) play_remove_lines::removed#1 ← ++ (byte) play_remove_lines::removed#11 -- vbuz1=_inc_vbuz1 inc removed //SEG837 [358] phi from play_remove_lines::@4 play_remove_lines::@5 to play_remove_lines::@6 [phi:play_remove_lines::@4/play_remove_lines::@5->play_remove_lines::@6] b6_from_b4: @@ -15421,7 +15421,7 @@ play_remove_lines: { jmp b6 //SEG840 play_remove_lines::@6 b6: - //SEG841 [359] (byte) play_remove_lines::y#1 ? ++ (byte) play_remove_lines::y#8 -- vbuz1=_inc_vbuz1 + //SEG841 [359] (byte) play_remove_lines::y#1 ← ++ (byte) play_remove_lines::y#8 -- vbuz1=_inc_vbuz1 inc y //SEG842 [360] if((byte) play_remove_lines::y#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -15446,11 +15446,11 @@ play_remove_lines: { rts //SEG849 play_remove_lines::@8 b8: - //SEG850 [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG850 [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy w sta playfield,y - //SEG851 [365] (byte) play_remove_lines::w#3 ? -- (byte) play_remove_lines::w#6 -- vbuz1=_dec_vbuz1 + //SEG851 [365] (byte) play_remove_lines::w#3 ← -- (byte) play_remove_lines::w#6 -- vbuz1=_dec_vbuz1 dec w jmp b7_from_b8 //SEG852 [366] phi from play_remove_lines::@2 to play_remove_lines::@9 [phi:play_remove_lines::@2->play_remove_lines::@9] @@ -15476,7 +15476,7 @@ play_lock_current: { .label i_3 = $55 .label i_7 = $55 .label i_9 = $55 - //SEG857 [367] (byte) play_lock_current::ypos2#0 ? (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG857 [367] (byte) play_lock_current::ypos2#0 ← (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda current_ypos asl sta ypos2 @@ -15492,13 +15492,13 @@ play_lock_current: { jmp b1 //SEG862 play_lock_current::@1 b1: - //SEG863 [369] (byte*) play_lock_current::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG863 [369] (byte*) play_lock_current::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 ldy ypos2 lda playfield_lines,y sta playfield_line lda playfield_lines+1,y sta playfield_line+1 - //SEG864 [370] (byte) play_lock_current::col#0 ? (byte) current_xpos#122 -- vbuz1=vbuz2 + //SEG864 [370] (byte) play_lock_current::col#0 ← (byte) current_xpos#122 -- vbuz1=vbuz2 lda current_xpos sta col //SEG865 [371] phi from play_lock_current::@1 to play_lock_current::@2 [phi:play_lock_current::@1->play_lock_current::@2] @@ -15511,7 +15511,7 @@ play_lock_current: { jmp b2 //SEG869 play_lock_current::@2 b2: - //SEG870 [372] (byte) play_lock_current::i#1 ? ++ (byte) play_lock_current::i#2 -- vbuz1=_inc_vbuz2 + //SEG870 [372] (byte) play_lock_current::i#1 ← ++ (byte) play_lock_current::i#2 -- vbuz1=_inc_vbuz2 ldy i_2 iny sty i @@ -15523,16 +15523,16 @@ play_lock_current: { jmp b4 //SEG872 play_lock_current::@4 b4: - //SEG873 [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ? (byte) current_piece_char#10 -- pbuz1_derefidx_vbuz2=vbuz3 + //SEG873 [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ← (byte) current_piece_char#10 -- pbuz1_derefidx_vbuz2=vbuz3 lda current_piece_char ldy col sta (playfield_line),y jmp b3 //SEG874 play_lock_current::@3 b3: - //SEG875 [375] (byte) play_lock_current::col#1 ? ++ (byte) play_lock_current::col#2 -- vbuz1=_inc_vbuz1 + //SEG875 [375] (byte) play_lock_current::col#1 ← ++ (byte) play_lock_current::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG876 [376] (byte) play_lock_current::c#1 ? ++ (byte) play_lock_current::c#2 -- vbuz1=_inc_vbuz1 + //SEG876 [376] (byte) play_lock_current::c#1 ← ++ (byte) play_lock_current::c#2 -- vbuz1=_inc_vbuz1 inc c //SEG877 [377] if((byte) play_lock_current::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@7 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -15541,12 +15541,12 @@ play_lock_current: { jmp b5 //SEG878 play_lock_current::@5 b5: - //SEG879 [378] (byte) play_lock_current::ypos2#1 ? (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG879 [378] (byte) play_lock_current::ypos2#1 ← (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG880 [379] (byte) play_lock_current::l#1 ? ++ (byte) play_lock_current::l#6 -- vbuz1=_inc_vbuz1 + //SEG880 [379] (byte) play_lock_current::l#1 ← ++ (byte) play_lock_current::l#6 -- vbuz1=_inc_vbuz1 inc l //SEG881 [380] if((byte) play_lock_current::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@6 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -15559,7 +15559,7 @@ play_lock_current: { rts //SEG884 play_lock_current::@6 b6: - //SEG885 [382] (byte~) play_lock_current::i#7 ? (byte) play_lock_current::i#1 -- vbuz1=vbuz2 + //SEG885 [382] (byte~) play_lock_current::i#7 ← (byte) play_lock_current::i#1 -- vbuz1=vbuz2 lda i sta i_7 //SEG886 [368] phi from play_lock_current::@6 to play_lock_current::@1 [phi:play_lock_current::@6->play_lock_current::@1] @@ -15570,7 +15570,7 @@ play_lock_current: { jmp b1 //SEG890 play_lock_current::@7 b7: - //SEG891 [383] (byte~) play_lock_current::i#9 ? (byte) play_lock_current::i#1 -- vbuz1=vbuz2 + //SEG891 [383] (byte~) play_lock_current::i#9 ← (byte) play_lock_current::i#1 -- vbuz1=vbuz2 lda i sta i_9 //SEG892 [371] phi from play_lock_current::@7 to play_lock_current::@2 [phi:play_lock_current::@7->play_lock_current::@2] @@ -15595,21 +15595,21 @@ keyboard_event_pressed: { .label keycode = $58 .label return_11 = $c8 .label return_12 = $a8 - //SEG897 [385] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 + //SEG897 [385] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 lda keycode lsr lsr lsr sta _0 - //SEG898 [386] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG898 [386] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda keyboard_scan_values,y sta row_bits - //SEG899 [387] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG899 [387] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and keycode sta _1 - //SEG900 [388] (byte) keyboard_event_pressed::return#11 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG900 [388] (byte) keyboard_event_pressed::return#11 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda row_bits ldy _1 and keyboard_matrix_col_bitmask,y @@ -15634,9 +15634,9 @@ keyboard_event_get: { jmp b1 //SEG905 keyboard_event_get::@1 b1: - //SEG906 [391] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#13 -- vbuz1=_dec_vbuz1 + //SEG906 [391] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#13 -- vbuz1=_dec_vbuz1 dec keyboard_events_size - //SEG907 [392] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG907 [392] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuz1=pbuc1_derefidx_vbuz2 ldy keyboard_events_size lda keyboard_events,y sta return @@ -15693,18 +15693,18 @@ keyboard_event_scan: { jmp b7 //SEG925 keyboard_event_scan::@7 b7: - //SEG926 [397] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 -- vbuz1=vbuz2 + //SEG926 [397] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 -- vbuz1=vbuz2 lda row sta keyboard_matrix_read.rowid //SEG927 [398] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG928 [399] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 + //SEG928 [399] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 lda keyboard_matrix_read.return sta keyboard_matrix_read.return_2 jmp b19 //SEG929 keyboard_event_scan::@19 b19: - //SEG930 [400] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 + //SEG930 [400] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 lda keyboard_matrix_read.return_2 sta row_scan //SEG931 [401] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 -- vbuz1_neq_pbuc1_derefidx_vbuz2_then_la1 @@ -15715,7 +15715,7 @@ keyboard_event_scan: { jmp b16 //SEG932 keyboard_event_scan::@16 b16: - //SEG933 [402] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 + //SEG933 [402] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 lax keycode axs #-[8] stx keycode @@ -15727,7 +15727,7 @@ keyboard_event_scan: { jmp b8 //SEG937 keyboard_event_scan::@8 b8: - //SEG938 [404] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 + //SEG938 [404] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 inc row //SEG939 [405] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -15745,13 +15745,13 @@ keyboard_event_scan: { lda #KEY_LSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG945 [408] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 + //SEG945 [408] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_11 sta keyboard_event_pressed.return jmp b20 //SEG946 keyboard_event_scan::@20 b20: - //SEG947 [409] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 -- vbuz1=vbuz2 + //SEG947 [409] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_event_pressed.return sta _0 //SEG948 [410] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 -- vbuz1_eq_0_then_la1 @@ -15784,13 +15784,13 @@ keyboard_event_scan: { lda #KEY_RSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG959 [414] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 + //SEG959 [414] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_11 sta keyboard_event_pressed.return_1 jmp b21 //SEG960 keyboard_event_scan::@21 b21: - //SEG961 [415] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 -- vbuz1=vbuz2 + //SEG961 [415] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_1 sta _3 //SEG962 [416] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 -- vbuz1_eq_0_then_la1 @@ -15800,7 +15800,7 @@ keyboard_event_scan: { jmp b4 //SEG963 keyboard_event_scan::@4 b4: - //SEG964 [417] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG964 [417] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuz1=vbuz1_bor_vbuc1 lda #KEY_MODIFIER_RSHIFT ora keyboard_modifiers sta keyboard_modifiers @@ -15818,13 +15818,13 @@ keyboard_event_scan: { lda #KEY_CTRL sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG971 [420] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 + //SEG971 [420] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_11 sta keyboard_event_pressed.return_2 jmp b22 //SEG972 keyboard_event_scan::@22 b22: - //SEG973 [421] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 -- vbuz1=vbuz2 + //SEG973 [421] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_2 sta _6 //SEG974 [422] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 -- vbuz1_eq_0_then_la1 @@ -15834,7 +15834,7 @@ keyboard_event_scan: { jmp b5 //SEG975 keyboard_event_scan::@5 b5: - //SEG976 [423] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuz1=vbuz1_bor_vbuc1 + //SEG976 [423] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuz1=vbuz1_bor_vbuc1 lda #KEY_MODIFIER_CTRL ora keyboard_modifiers sta keyboard_modifiers @@ -15852,13 +15852,13 @@ keyboard_event_scan: { lda #KEY_COMMODORE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG983 [426] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 + //SEG983 [426] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::return#11 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_11 sta keyboard_event_pressed.return_10 jmp b23 //SEG984 keyboard_event_scan::@23 b23: - //SEG985 [427] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 + //SEG985 [427] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#10 -- vbuz1=vbuz2 lda keyboard_event_pressed.return_10 sta _9 //SEG986 [428] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return -- vbuz1_eq_0_then_la1 @@ -15868,7 +15868,7 @@ keyboard_event_scan: { jmp b6 //SEG987 keyboard_event_scan::@6 b6: - //SEG988 [429] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuz1=vbuz2_bor_vbuc1 + //SEG988 [429] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuz1=vbuz2_bor_vbuc1 lda #KEY_MODIFIER_COMMODORE ora keyboard_modifiers sta keyboard_modifiers_5 @@ -15894,12 +15894,12 @@ keyboard_event_scan: { jmp b9 //SEG999 keyboard_event_scan::@9 b9: - //SEG1000 [432] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuz1=vbuz2_bxor_pbuc1_derefidx_vbuz3 + //SEG1000 [432] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuz1=vbuz2_bxor_pbuc1_derefidx_vbuz3 lda row_scan ldy row eor keyboard_scan_values,y sta _15 - //SEG1001 [433] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG1001 [433] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda _15 ldy col and keyboard_matrix_col_bitmask,y @@ -15918,7 +15918,7 @@ keyboard_event_scan: { jmp b13 //SEG1005 keyboard_event_scan::@13 b13: - //SEG1006 [436] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG1006 [436] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda row_scan ldy col and keyboard_matrix_col_bitmask,y @@ -15930,12 +15930,12 @@ keyboard_event_scan: { jmp b14 //SEG1008 keyboard_event_scan::@14 b14: - //SEG1009 [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1009 [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 // Key pressed lda keycode ldy keyboard_events_size sta keyboard_events,y - //SEG1010 [439] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 + //SEG1010 [439] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 inc keyboard_events_size //SEG1011 [440] phi from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10] b10_from_b11: @@ -15946,9 +15946,9 @@ keyboard_event_scan: { jmp b10 //SEG1013 keyboard_event_scan::@10 b10: - //SEG1014 [441] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 + //SEG1014 [441] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 inc keycode - //SEG1015 [442] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 -- vbuz1=_inc_vbuz1 + //SEG1015 [442] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 -- vbuz1=_inc_vbuz1 inc col //SEG1016 [443] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -15957,7 +15957,7 @@ keyboard_event_scan: { jmp b15 //SEG1017 keyboard_event_scan::@15 b15: - //SEG1018 [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1018 [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 // Store the current keyboard status for the row to debounce lda row_scan ldy row @@ -15965,16 +15965,16 @@ keyboard_event_scan: { jmp b8_from_b15 //SEG1019 keyboard_event_scan::@11 b11: - //SEG1020 [445] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz2_bor_vbuc1 + //SEG1020 [445] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz2_bor_vbuc1 lda #$40 ora keycode sta _23 - //SEG1021 [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1021 [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuz2 // Key released lda _23 ldy keyboard_events_size sta keyboard_events,y - //SEG1022 [447] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 + //SEG1022 [447] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 inc keyboard_events_size jmp b10_from_b11 } @@ -15989,11 +15989,11 @@ keyboard_matrix_read: { .label return = $d9 .label rowid = $c9 .label return_2 = $ca - //SEG1024 [448] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG1024 [448] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy rowid lda keyboard_matrix_row_bitmask,y sta CIA1_PORT_A - //SEG1025 [449] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 + //SEG1025 [449] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff sta return @@ -16026,18 +16026,18 @@ render_show: { jmp b1 //SEG1034 render_show::@1 b1: - //SEG1035 [454] *((const byte*) D018#0) ? (byte) render_show::d018val#3 -- _deref_pbuc1=vbuz1 + //SEG1035 [454] *((const byte*) D018#0) ← (byte) render_show::d018val#3 -- _deref_pbuc1=vbuz1 lda d018val sta D018 - //SEG1036 [455] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG1036 [455] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy level lda PIECES_COLORS_1,y sta BGCOL2 - //SEG1037 [456] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG1037 [456] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy level lda PIECES_COLORS_2,y sta BGCOL3 - //SEG1038 [457] (byte) render_screen_showing#1 ? (byte) render_screen_show#16 -- vbuz1=vbuz2 + //SEG1038 [457] (byte) render_screen_showing#1 ← (byte) render_screen_show#16 -- vbuz1=vbuz2 lda render_screen_show sta render_screen_showing_1 jmp breturn @@ -16088,21 +16088,21 @@ play_init: { jmp b1 //SEG1054 play_init::@1 b1: - //SEG1055 [462] (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG1055 [462] (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda j asl sta _2 - //SEG1056 [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 -- pptc1_derefidx_vbuz1=pbuz2 + //SEG1056 [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- pptc1_derefidx_vbuz1=pbuz2 ldy _2 lda pli sta playfield_lines,y lda pli+1 sta playfield_lines+1,y - //SEG1057 [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1057 [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 -- pbuc1_derefidx_vbuz1=vbuz2 lda idx ldy j sta playfield_lines_idx,y - //SEG1058 [465] (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1058 [465] (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 -- pbuz1=pbuz1_plus_vbuc1 lda #PLAYFIELD_COLS clc adc pli @@ -16110,11 +16110,11 @@ play_init: { bcc !+ inc pli+1 !: - //SEG1059 [466] (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1059 [466] (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 lax idx axs #-[PLAYFIELD_COLS] stx idx - //SEG1060 [467] (byte) play_init::j#1 ? ++ (byte) play_init::j#2 -- vbuz1=_inc_vbuz1 + //SEG1060 [467] (byte) play_init::j#1 ← ++ (byte) play_init::j#2 -- vbuz1=_inc_vbuz1 inc j //SEG1061 [468] if((byte) play_init::j#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_init::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -16123,10 +16123,10 @@ play_init: { jmp b2 //SEG1062 play_init::@2 b2: - //SEG1063 [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ? (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 -- _deref_pbuc1=vbuc2 + //SEG1063 [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ← (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 -- _deref_pbuc1=vbuc2 lda #PLAYFIELD_COLS*PLAYFIELD_LINES sta playfield_lines_idx+PLAYFIELD_LINES - //SEG1064 [470] (byte) current_movedown_slow#1 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) -- vbuz1=_deref_pbuc1 + //SEG1064 [470] (byte) current_movedown_slow#1 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) -- vbuz1=_deref_pbuc1 // Set initial speed of moving down a tetromino lda MOVEDOWN_SLOW_SPEEDS sta current_movedown_slow @@ -16143,12 +16143,12 @@ play_init: { jmp b3 //SEG1069 play_init::@3 b3: - //SEG1070 [472] (byte) play_init::b4#0 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_rol_2 + //SEG1070 [472] (byte) play_init::b4#0 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_rol_2 lda b asl asl sta b4 - //SEG1071 [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) -- pduc1_derefidx_vbuz1=pduc2_derefidx_vbuz1 + //SEG1071 [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) -- pduc1_derefidx_vbuz1=pduc2_derefidx_vbuz1 ldy b4 lda SCORE_BASE_BCD,y sta score_add_bcd,y @@ -16158,7 +16158,7 @@ play_init: { sta score_add_bcd+2,y lda SCORE_BASE_BCD+3,y sta score_add_bcd+3,y - //SEG1072 [474] (byte) play_init::b#1 ? ++ (byte) play_init::b#2 -- vbuz1=_inc_vbuz1 + //SEG1072 [474] (byte) play_init::b#1 ← ++ (byte) play_init::b#2 -- vbuz1=_inc_vbuz1 inc b //SEG1073 [475] if((byte) play_init::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_init::@3 -- vbuz1_neq_vbuc1_then_la1 lda #5 @@ -16175,36 +16175,36 @@ play_init: { sprites_irq_init: { //SEG1077 asm { sei } sei - //SEG1078 [478] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1078 [478] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Acknowledge any IRQ and setup the next one lda #IRQ_RASTER sta IRQ_STATUS //SEG1079 asm { ldaCIA1_INTERRUPT } lda CIA1_INTERRUPT - //SEG1080 [480] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG1080 [480] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG1081 [481] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG1081 [481] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG1082 [482] *((const byte*) CIA1_INTERRUPT#0) ? (const byte) CIA_INTERRUPT_CLEAR#0 -- _deref_pbuc1=vbuc2 + //SEG1082 [482] *((const byte*) CIA1_INTERRUPT#0) ← (const byte) CIA_INTERRUPT_CLEAR#0 -- _deref_pbuc1=vbuc2 // Disable CIA 1 Timer IRQ lda #CIA_INTERRUPT_CLEAR sta CIA1_INTERRUPT - //SEG1083 [483] *((const byte*) VIC_CONTROL#0) ? *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- _deref_pbuc1=_deref_pbuc1_band_vbuc2 + //SEG1083 [483] *((const byte*) VIC_CONTROL#0) ← *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- _deref_pbuc1=_deref_pbuc1_band_vbuc2 // Set raster line lda #$7f and VIC_CONTROL sta VIC_CONTROL - //SEG1084 [484] *((const byte*) RASTER#0) ? (const byte) IRQ_RASTER_FIRST#0 -- _deref_pbuc1=vbuc2 + //SEG1084 [484] *((const byte*) RASTER#0) ← (const byte) IRQ_RASTER_FIRST#0 -- _deref_pbuc1=vbuc2 lda #IRQ_RASTER_FIRST sta RASTER - //SEG1085 [485] *((const byte*) IRQ_ENABLE#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1085 [485] *((const byte*) IRQ_ENABLE#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Enable Raster Interrupt lda #IRQ_RASTER sta IRQ_ENABLE - //SEG1086 [486] *((const void()**) HARDWARE_IRQ#0) ? &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2 + //SEG1086 [486] *((const void()**) HARDWARE_IRQ#0) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2 // Set the IRQ routine lda #sprites_init::@1] @@ -16252,23 +16252,23 @@ sprites_init: { jmp b1 //SEG1101 sprites_init::@1 b1: - //SEG1102 [494] (byte) sprites_init::s2#0 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG1102 [494] (byte) sprites_init::s2#0 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda s asl sta s2 - //SEG1103 [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1103 [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 -- pbuc1_derefidx_vbuz1=vbuz2 lda xpos ldy s2 sta SPRITES_XPOS,y - //SEG1104 [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (const byte) BLACK#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG1104 [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (const byte) BLACK#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #BLACK ldy s sta SPRITES_COLS,y - //SEG1105 [497] (byte) sprites_init::xpos#1 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1105 [497] (byte) sprites_init::xpos#1 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 -- vbuz1=vbuz1_plus_vbuc1 lax xpos axs #-[$18] stx xpos - //SEG1106 [498] (byte) sprites_init::s#1 ? ++ (byte) sprites_init::s#2 -- vbuz1=_inc_vbuz1 + //SEG1106 [498] (byte) sprites_init::s#1 ← ++ (byte) sprites_init::s#2 -- vbuz1=_inc_vbuz1 inc s //SEG1107 [499] if((byte) sprites_init::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto sprites_init::@1 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -16292,7 +16292,7 @@ render_init: { jmp vicSelectGfxBank1 //SEG1111 render_init::vicSelectGfxBank1 vicSelectGfxBank1: - //SEG1112 [502] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1112 [502] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG1113 [503] phi from render_init::vicSelectGfxBank1 to render_init::vicSelectGfxBank1_toDd001 [phi:render_init::vicSelectGfxBank1->render_init::vicSelectGfxBank1_toDd001] @@ -16303,29 +16303,29 @@ render_init: { jmp vicSelectGfxBank1_b1 //SEG1115 render_init::vicSelectGfxBank1_@1 vicSelectGfxBank1_b1: - //SEG1116 [504] *((const byte*) CIA2_PORT_A#0) ? (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG1116 [504] *((const byte*) CIA2_PORT_A#0) ← (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A jmp b2 //SEG1117 render_init::@2 b2: - //SEG1118 [505] *((const byte*) D011#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1118 [505] *((const byte*) D011#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Enable Extended Background Color Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta D011 - //SEG1119 [506] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1119 [506] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL - //SEG1120 [507] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1120 [507] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL1 - //SEG1121 [508] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG1121 [508] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0) -- _deref_pbuc1=_deref_pbuc2 lda PIECES_COLORS_1 sta BGCOL2 - //SEG1122 [509] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG1122 [509] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0) -- _deref_pbuc1=_deref_pbuc2 lda PIECES_COLORS_2 sta BGCOL3 - //SEG1123 [510] *((const byte*) BGCOL4#0) ? (const byte) GREY#0 -- _deref_pbuc1=vbuc2 + //SEG1123 [510] *((const byte*) BGCOL4#0) ← (const byte) GREY#0 -- _deref_pbuc1=vbuc2 lda #GREY sta BGCOL4 //SEG1124 [511] call render_screen_original @@ -16375,27 +16375,27 @@ render_init: { jmp b1 //SEG1140 render_init::@1 b1: - //SEG1141 [515] (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG1141 [515] (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda i asl sta _13 - //SEG1142 [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuz1=pbuz2 + //SEG1142 [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuz1=pbuz2 ldy _13 lda li_1 sta screen_lines_1,y lda li_1+1 sta screen_lines_1+1,y - //SEG1143 [517] (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG1143 [517] (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda i asl sta _14 - //SEG1144 [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuz1=pbuz2 + //SEG1144 [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuz1=pbuz2 ldy _14 lda li_2 sta screen_lines_2,y lda li_2+1 sta screen_lines_2+1,y - //SEG1145 [519] (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1145 [519] (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc li_1 @@ -16403,7 +16403,7 @@ render_init: { bcc !+ inc li_1+1 !: - //SEG1146 [520] (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1146 [520] (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc li_2 @@ -16411,7 +16411,7 @@ render_init: { bcc !+ inc li_2+1 !: - //SEG1147 [521] (byte) render_init::i#1 ? ++ (byte) render_init::i#2 -- vbuz1=_inc_vbuz1 + //SEG1147 [521] (byte) render_init::i#1 ← ++ (byte) render_init::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG1148 [522] if((byte) render_init::i#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_init::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -16483,25 +16483,25 @@ render_screen_original: { jmp b2 //SEG1173 render_screen_original::@2 b2: - //SEG1174 [527] *((byte*) render_screen_original::screen#5) ? (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 + //SEG1174 [527] *((byte*) render_screen_original::screen#5) ← (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 lda #SPACE ldy #0 sta (screen),y - //SEG1175 [528] (byte*) render_screen_original::screen#2 ? ++ (byte*) render_screen_original::screen#5 -- pbuz1=_inc_pbuz1 + //SEG1175 [528] (byte*) render_screen_original::screen#2 ← ++ (byte*) render_screen_original::screen#5 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1176 [529] *((byte*) render_screen_original::cols#4) ? (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 + //SEG1176 [529] *((byte*) render_screen_original::cols#4) ← (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 lda #BLACK ldy #0 sta (cols),y - //SEG1177 [530] (byte*) render_screen_original::cols#1 ? ++ (byte*) render_screen_original::cols#4 -- pbuz1=_inc_pbuz1 + //SEG1177 [530] (byte*) render_screen_original::cols#1 ← ++ (byte*) render_screen_original::cols#4 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1178 [531] (byte) render_screen_original::x#1 ? ++ (byte) render_screen_original::x#4 -- vbuz1=_inc_vbuz1 + //SEG1178 [531] (byte) render_screen_original::x#1 ← ++ (byte) render_screen_original::x#4 -- vbuz1=_inc_vbuz1 inc x //SEG1179 [532] if((byte) render_screen_original::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_screen_original::@2 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -16518,37 +16518,37 @@ render_screen_original: { jmp b3 //SEG1186 render_screen_original::@3 b3: - //SEG1187 [534] *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1187 [534] *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (oscr),y ldy #0 sta (screen),y - //SEG1188 [535] (byte*) render_screen_original::screen#3 ? ++ (byte*) render_screen_original::screen#6 -- pbuz1=_inc_pbuz1 + //SEG1188 [535] (byte*) render_screen_original::screen#3 ← ++ (byte*) render_screen_original::screen#6 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1189 [536] (byte*) render_screen_original::oscr#1 ? ++ (byte*) render_screen_original::oscr#2 -- pbuz1=_inc_pbuz1 + //SEG1189 [536] (byte*) render_screen_original::oscr#1 ← ++ (byte*) render_screen_original::oscr#2 -- pbuz1=_inc_pbuz1 inc oscr bne !+ inc oscr+1 !: - //SEG1190 [537] *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1190 [537] *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (ocols),y ldy #0 sta (cols),y - //SEG1191 [538] (byte*) render_screen_original::cols#2 ? ++ (byte*) render_screen_original::cols#5 -- pbuz1=_inc_pbuz1 + //SEG1191 [538] (byte*) render_screen_original::cols#2 ← ++ (byte*) render_screen_original::cols#5 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1192 [539] (byte*) render_screen_original::ocols#1 ? ++ (byte*) render_screen_original::ocols#2 -- pbuz1=_inc_pbuz1 + //SEG1192 [539] (byte*) render_screen_original::ocols#1 ← ++ (byte*) render_screen_original::ocols#2 -- pbuz1=_inc_pbuz1 inc ocols bne !+ inc ocols+1 !: - //SEG1193 [540] (byte) render_screen_original::x#2 ? ++ (byte) render_screen_original::x#5 -- vbuz1=_inc_vbuz1 + //SEG1193 [540] (byte) render_screen_original::x#2 ← ++ (byte) render_screen_original::x#5 -- vbuz1=_inc_vbuz1 inc x //SEG1194 [541] if((byte) render_screen_original::x#2!=(byte/signed byte/word/signed word/dword/signed dword) $24) goto render_screen_original::@3 -- vbuz1_neq_vbuc1_then_la1 lda #$24 @@ -16563,25 +16563,25 @@ render_screen_original: { jmp b4 //SEG1199 render_screen_original::@4 b4: - //SEG1200 [543] *((byte*) render_screen_original::screen#7) ? (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 + //SEG1200 [543] *((byte*) render_screen_original::screen#7) ← (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 lda #SPACE ldy #0 sta (screen),y - //SEG1201 [544] (byte*) render_screen_original::screen#10 ? ++ (byte*) render_screen_original::screen#7 -- pbuz1=_inc_pbuz1 + //SEG1201 [544] (byte*) render_screen_original::screen#10 ← ++ (byte*) render_screen_original::screen#7 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1202 [545] *((byte*) render_screen_original::cols#6) ? (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 + //SEG1202 [545] *((byte*) render_screen_original::cols#6) ← (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 lda #BLACK ldy #0 sta (cols),y - //SEG1203 [546] (byte*) render_screen_original::cols#3 ? ++ (byte*) render_screen_original::cols#6 -- pbuz1=_inc_pbuz1 + //SEG1203 [546] (byte*) render_screen_original::cols#3 ← ++ (byte*) render_screen_original::cols#6 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1204 [547] (byte) render_screen_original::x#3 ? ++ (byte) render_screen_original::x#6 -- vbuz1=_inc_vbuz1 + //SEG1204 [547] (byte) render_screen_original::x#3 ← ++ (byte) render_screen_original::x#6 -- vbuz1=_inc_vbuz1 inc x //SEG1205 [548] if((byte) render_screen_original::x#3!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render_screen_original::@4 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -16590,7 +16590,7 @@ render_screen_original: { jmp b5 //SEG1206 render_screen_original::@5 b5: - //SEG1207 [549] (byte) render_screen_original::y#1 ? ++ (byte) render_screen_original::y#6 -- vbuz1=_inc_vbuz1 + //SEG1207 [549] (byte) render_screen_original::y#1 ← ++ (byte) render_screen_original::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG1208 [550] if((byte) render_screen_original::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render_screen_original::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -16605,12 +16605,12 @@ render_screen_original: { //SEG1211 sid_rnd_init // Initialize SID voice 3 for random number generation sid_rnd_init: { - //SEG1212 [552] *((const word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff -- _deref_pwuc1=vwuc2 + //SEG1212 [552] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff -- _deref_pwuc1=vwuc2 lda #<$ffff sta SID_VOICE3_FREQ lda #>$ffff sta SID_VOICE3_FREQ+1 - //SEG1213 [553] *((const byte*) SID_VOICE3_CONTROL#0) ? (const byte) SID_CONTROL_NOISE#0 -- _deref_pbuc1=vbuc2 + //SEG1213 [553] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0 -- _deref_pbuc1=vbuc2 lda #SID_CONTROL_NOISE sta SID_VOICE3_CONTROL jmp breturn @@ -16641,27 +16641,27 @@ sprites_irq: { //(*BGCOL)++; // Clear decimal flag (because it is used by the score algorithm) cld - //SEG1219 [556] (byte) sprites_irq::ypos#0 ? (byte) irq_sprite_ypos#0 -- vbuz1=vbuz2 + //SEG1219 [556] (byte) sprites_irq::ypos#0 ← (byte) irq_sprite_ypos#0 -- vbuz1=vbuz2 // Place the sprites lda irq_sprite_ypos sta ypos - //SEG1220 [557] *((const byte*) SPRITES_YPOS#0) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 + //SEG1220 [557] *((const byte*) SPRITES_YPOS#0) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 lda ypos sta SPRITES_YPOS - //SEG1221 [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 + //SEG1221 [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 lda ypos sta SPRITES_YPOS+2 - //SEG1222 [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 + //SEG1222 [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 lda ypos sta SPRITES_YPOS+4 - //SEG1223 [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 + //SEG1223 [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuz1 lda ypos sta SPRITES_YPOS+6 - //SEG1224 [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG1224 [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy irq_raster_next iny sty _0 - //SEG1225 [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ? (byte/signed word/word/dword/signed dword~) sprites_irq::$0 -- vbuz1=vbuz2 + //SEG1225 [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ← (byte/signed word/word/dword/signed dword~) sprites_irq::$0 -- vbuz1=vbuz2 // Wait for the y-position before changing sprite pointers lda _0 sta raster_sprite_gfx_modify @@ -16675,7 +16675,7 @@ sprites_irq: { jmp b9 //SEG1228 sprites_irq::@9 b9: - //SEG1229 [564] (byte) sprites_irq::ptr#0 ? (byte) irq_sprite_ptr#0 -- vbuz1=vbuz2 + //SEG1229 [564] (byte) sprites_irq::ptr#0 ← (byte) irq_sprite_ptr#0 -- vbuz1=vbuz2 lda irq_sprite_ptr sta ptr //SEG1230 [565] if((byte) render_screen_showing#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sprites_irq::@1 -- vbuz1_eq_0_then_la1 @@ -16685,30 +16685,30 @@ sprites_irq: { jmp b10 //SEG1231 sprites_irq::@10 b10: - //SEG1232 [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ? (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuz1 + //SEG1232 [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ← (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuz1 lda ptr sta PLAYFIELD_SPRITE_PTRS_2 - //SEG1233 [567] (byte) sprites_irq::ptr#3 ? ++ (byte) sprites_irq::ptr#0 -- vbuz1=_inc_vbuz2 + //SEG1233 [567] (byte) sprites_irq::ptr#3 ← ++ (byte) sprites_irq::ptr#0 -- vbuz1=_inc_vbuz2 ldy ptr iny sty ptr_3 - //SEG1234 [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuz1 + //SEG1234 [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuz1 lda ptr_3 sta PLAYFIELD_SPRITE_PTRS_2+1 - //SEG1235 [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuz1 + //SEG1235 [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuz1 lda ptr_3 sta PLAYFIELD_SPRITE_PTRS_2+2 - //SEG1236 [570] (byte) sprites_irq::ptr#4 ? ++ (byte) sprites_irq::ptr#3 -- vbuz1=_inc_vbuz2 + //SEG1236 [570] (byte) sprites_irq::ptr#4 ← ++ (byte) sprites_irq::ptr#3 -- vbuz1=_inc_vbuz2 ldy ptr_3 iny sty ptr_4 - //SEG1237 [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#4 -- _deref_pbuc1=vbuz1 + //SEG1237 [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#4 -- _deref_pbuc1=vbuz1 lda ptr_4 sta PLAYFIELD_SPRITE_PTRS_2+3 jmp b2 //SEG1238 sprites_irq::@2 b2: - //SEG1239 [572] (byte) irq_cnt#1 ? ++ (byte) irq_cnt#0 -- vbuz1=_inc_vbuz2 + //SEG1239 [572] (byte) irq_cnt#1 ← ++ (byte) irq_cnt#0 -- vbuz1=_inc_vbuz2 ldy irq_cnt iny sty irq_cnt_1 @@ -16726,15 +16726,15 @@ sprites_irq: { jmp b7 //SEG1243 sprites_irq::@7 b7: - //SEG1244 [575] (byte) irq_raster_next#3 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 -- vbuz1=vbuz2_plus_vbuc1 + //SEG1244 [575] (byte) irq_raster_next#3 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 -- vbuz1=vbuz2_plus_vbuc1 lax irq_raster_next axs #-[$14] stx irq_raster_next_3 - //SEG1245 [576] (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 + //SEG1245 [576] (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 lax irq_sprite_ypos axs #-[$15] stx irq_sprite_ypos_3 - //SEG1246 [577] (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 + //SEG1246 [577] (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 lax irq_sprite_ptr axs #-[3] stx irq_sprite_ptr_3 @@ -16746,11 +16746,11 @@ sprites_irq: { jmp b5 //SEG1249 sprites_irq::@5 b5: - //SEG1250 [579] *((const byte*) RASTER#0) ? (byte) irq_raster_next#4 -- _deref_pbuc1=vbuz1 + //SEG1250 [579] *((const byte*) RASTER#0) ← (byte) irq_raster_next#4 -- _deref_pbuc1=vbuz1 // Setup next interrupt lda irq_raster_next_4 sta RASTER - //SEG1251 [580] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1251 [580] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Acknowledge the IRQ and setup the next one lda #IRQ_RASTER sta IRQ_STATUS @@ -16767,28 +16767,28 @@ sprites_irq: { rti //SEG1254 sprites_irq::@4 b4: - //SEG1255 [582] (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 + //SEG1255 [582] (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 lda #0 sta irq_cnt_2 - //SEG1256 [583] (byte) irq_raster_next#2 ? (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 + //SEG1256 [583] (byte) irq_raster_next#2 ← (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 lda #IRQ_RASTER_FIRST sta irq_raster_next_2 - //SEG1257 [584] (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 + //SEG1257 [584] (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 lax irq_sprite_ypos axs #-[$15] stx irq_sprite_ypos_2 - //SEG1258 [585] (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 + //SEG1258 [585] (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 lax irq_sprite_ptr axs #-[3] stx irq_sprite_ptr_2 jmp b5_from_b4 //SEG1259 sprites_irq::@3 b3: - //SEG1260 [586] (byte) irq_raster_next#1 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 + //SEG1260 [586] (byte) irq_raster_next#1 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 lax irq_raster_next axs #-[$15] stx irq_raster_next_1 - //SEG1261 [587] (byte) irq_sprite_ypos#1 ? (const byte) SPRITES_FIRST_YPOS#0 -- vbuz1=vbuc1 + //SEG1261 [587] (byte) irq_sprite_ypos#1 ← (const byte) SPRITES_FIRST_YPOS#0 -- vbuz1=vbuc1 lda #SPRITES_FIRST_YPOS sta irq_sprite_ypos_1 //SEG1262 [588] phi from sprites_irq::@3 to sprites_irq::toSpritePtr2 [phi:sprites_irq::@3->sprites_irq::toSpritePtr2] @@ -16799,30 +16799,30 @@ sprites_irq: { jmp b11 //SEG1264 sprites_irq::@11 b11: - //SEG1265 [589] (byte) irq_sprite_ptr#1 ? (const byte) sprites_irq::toSpritePtr2_return#0 -- vbuz1=vbuc1 + //SEG1265 [589] (byte) irq_sprite_ptr#1 ← (const byte) sprites_irq::toSpritePtr2_return#0 -- vbuz1=vbuc1 lda #toSpritePtr2_return sta irq_sprite_ptr_1 jmp b5_from_b11 //SEG1266 sprites_irq::@1 b1: - //SEG1267 [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ? (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuz1 + //SEG1267 [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ← (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuz1 lda ptr sta PLAYFIELD_SPRITE_PTRS_1 - //SEG1268 [591] (byte) sprites_irq::ptr#1 ? ++ (byte) sprites_irq::ptr#0 -- vbuz1=_inc_vbuz2 + //SEG1268 [591] (byte) sprites_irq::ptr#1 ← ++ (byte) sprites_irq::ptr#0 -- vbuz1=_inc_vbuz2 ldy ptr iny sty ptr_1 - //SEG1269 [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuz1 + //SEG1269 [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuz1 lda ptr_1 sta PLAYFIELD_SPRITE_PTRS_1+1 - //SEG1270 [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuz1 + //SEG1270 [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuz1 lda ptr_1 sta PLAYFIELD_SPRITE_PTRS_1+2 - //SEG1271 [594] (byte) sprites_irq::ptr#2 ? ++ (byte) sprites_irq::ptr#1 -- vbuz1=_inc_vbuz2 + //SEG1271 [594] (byte) sprites_irq::ptr#2 ← ++ (byte) sprites_irq::ptr#1 -- vbuz1=_inc_vbuz2 ldy ptr_1 iny sty ptr_2 - //SEG1272 [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#2 -- _deref_pbuc1=vbuz1 + //SEG1272 [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#2 -- _deref_pbuc1=vbuz1 lda ptr_2 sta PLAYFIELD_SPRITE_PTRS_1+3 jmp b2 @@ -16926,12 +16926,12 @@ sprites_irq: { REGISTER UPLIFT POTENTIAL REGISTERS -Statement [1] (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a -Statement [6] (byte) irq_raster_next#0 ? (const byte) IRQ_RASTER_FIRST#0 [ ] ( ) always clobbers reg byte a -Statement [7] (byte) irq_sprite_ypos#0 ? (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 [ ] ( ) always clobbers reg byte a -Statement [9] (byte) irq_sprite_ptr#0 ? (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( ) always clobbers reg byte a -Statement [10] (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a -Statement [32] (byte*~) current_piece_gfx#118 ? (byte*) current_piece_gfx#74 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a +Statement [1] (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a +Statement [6] (byte) irq_raster_next#0 ← (const byte) IRQ_RASTER_FIRST#0 [ ] ( ) always clobbers reg byte a +Statement [7] (byte) irq_sprite_ypos#0 ← (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 [ ] ( ) always clobbers reg byte a +Statement [9] (byte) irq_sprite_ptr#0 ← (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( ) always clobbers reg byte a +Statement [10] (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a +Statement [32] (byte*~) current_piece_gfx#118 ← (byte*) current_piece_gfx#74 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:23 [ current_ypos#13 current_ypos#104 current_ypos#105 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:56 [ current_ypos#38 current_ypos#3 current_ypos#11 current_ypos#19 current_ypos#6 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ current_xpos#59 current_xpos#128 current_xpos#129 ] @@ -16941,7 +16941,7 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:74 [ n Removing always clobbered register reg byte a as potential for zp ZP_BYTE:176 [ play_spawn_current::$0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:64 [ current_movedown_slow#37 current_movedown_slow#14 current_movedown_slow#21 current_movedown_slow#1 current_movedown_slow#23 current_movedown_slow#69 current_movedown_slow#10 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:75 [ game_over#65 game_over#27 game_over#10 game_over#15 game_over#52 ] -Statement [37] (byte*~) current_piece#96 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a +Statement [37] (byte*~) current_piece#96 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a Statement [39] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto main::@2 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ render_screen_show#16 render_screen_show#13 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ render_screen_render#18 render_screen_render#11 ] @@ -16950,23 +16950,23 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:94 [ k Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ current_movedown_counter#16 current_movedown_counter#14 current_movedown_counter#12 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:63 [ level#33 level#10 level#17 level#19 level#21 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:65 [ level_bcd#31 level_bcd#11 level_bcd#17 level_bcd#19 level_bcd#64 level_bcd#21 level_bcd#8 ] -Statement [60] (byte*~) current_piece_gfx#119 ? (byte*) current_piece_gfx#18 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ) always clobbers reg byte a +Statement [60] (byte*~) current_piece_gfx#119 ← (byte*) current_piece_gfx#18 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ render_screen_render#33 render_screen_render#69 ] -Statement [70] (byte) render_screen_render#11 ? (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#16 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#16 render_screen_render#11 ] ) always clobbers reg byte a -Statement [71] (byte) render_screen_show#13 ? (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#13 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#13 render_screen_render#11 ] ) always clobbers reg byte a -Statement [76] (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ) always clobbers reg byte a -Statement [79] (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ) always clobbers reg byte a -Statement [82] (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ) always clobbers reg byte a -Statement [85] (byte) render_bcd::bcd#3 ? > (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ) always clobbers reg byte a -Statement [86] (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ) always clobbers reg byte a +Statement [70] (byte) render_screen_render#11 ← (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#16 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#16 render_screen_render#11 ] ) always clobbers reg byte a +Statement [71] (byte) render_screen_show#13 ← (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#13 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#13 render_screen_render#11 ] ) always clobbers reg byte a +Statement [76] (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ) always clobbers reg byte a +Statement [79] (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ) always clobbers reg byte a +Statement [82] (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ) always clobbers reg byte a +Statement [85] (byte) render_bcd::bcd#3 ← > (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ) always clobbers reg byte a +Statement [86] (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:12 [ render_bcd::bcd#6 render_bcd::bcd#0 render_bcd::bcd#1 render_bcd::bcd#2 render_bcd::bcd#3 render_bcd::bcd#4 render_bcd::bcd#5 ] -Statement [88] (byte) render_bcd::bcd#4 ? < (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ) always clobbers reg byte a -Statement [89] (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ) always clobbers reg byte a -Statement [91] (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ) always clobbers reg byte a -Statement [96] (byte*) render_bcd::screen_pos#0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 [ render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte a +Statement [88] (byte) render_bcd::bcd#4 ← < (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ) always clobbers reg byte a +Statement [89] (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ) always clobbers reg byte a +Statement [91] (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ) always clobbers reg byte a +Statement [96] (byte*) render_bcd::screen_pos#0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 [ render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:11 [ render_bcd::only_low#6 ] -Statement [98] (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ) always clobbers reg byte a -Statement [100] *((byte*) render_bcd::screen_pos#0) ? (byte~) render_bcd::$6 [ render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte y +Statement [98] (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ) always clobbers reg byte a +Statement [100] *((byte*) render_bcd::screen_pos#0) ← (byte~) render_bcd::$6 [ render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ render_screen_show#16 render_screen_show#13 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:64 [ current_movedown_slow#37 current_movedown_slow#14 current_movedown_slow#21 current_movedown_slow#1 current_movedown_slow#23 current_movedown_slow#69 current_movedown_slow#10 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:68 [ current_piece_char#29 current_piece_char#10 current_piece_char#16 current_piece_char#5 ] @@ -16981,63 +16981,63 @@ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:63 [ l Removing always clobbered register reg byte y as potential for zp ZP_BYTE:3 [ render_screen_render#18 render_screen_render#11 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:65 [ level_bcd#31 level_bcd#11 level_bcd#17 level_bcd#19 level_bcd#64 level_bcd#21 level_bcd#8 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:12 [ render_bcd::bcd#6 render_bcd::bcd#0 render_bcd::bcd#1 render_bcd::bcd#2 render_bcd::bcd#3 render_bcd::bcd#4 render_bcd::bcd#5 ] -Statement [103] (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f [ render_bcd::screen_pos#3 render_bcd::$3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 render_bcd::$3 ] ) always clobbers reg byte a -Statement [105] *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 [ render_bcd::screen_pos#3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 ] ) always clobbers reg byte y -Statement [106] (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 [ ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a -Statement [112] (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ) always clobbers reg byte a +Statement [103] (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f [ render_bcd::screen_pos#3 render_bcd::$3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 render_bcd::$3 ] ) always clobbers reg byte a +Statement [105] *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 [ render_bcd::screen_pos#3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 ] ) always clobbers reg byte y +Statement [106] (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 [ ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a +Statement [112] (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ next_piece_idx#12 next_piece_idx#84 next_piece_idx#85 ] -Statement [114] (byte*~) render_next::next_piece_gfx#9 ? (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) [ render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ) always clobbers reg byte a +Statement [114] (byte*~) render_next::next_piece_gfx#9 ← (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) [ render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:136 [ render_next::next_piece_char#0 ] -Statement [117] (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ) always clobbers reg byte a reg byte y +Statement [117] (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:176 [ play_spawn_current::$0 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:136 [ render_next::next_piece_char#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ render_next::l#7 render_next::l#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:17 [ render_next::l#7 render_next::l#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:22 [ render_next::c#2 render_next::c#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:22 [ render_next::c#2 render_next::c#1 ] -Statement [120] *((byte*) render_next::screen_next_area#5) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y -Statement [124] (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ) always clobbers reg byte a -Statement [128] *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y -Statement [130] (byte) render_moving::ypos2#0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ) always clobbers reg byte a +Statement [120] *((byte*) render_next::screen_next_area#5) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y +Statement [124] (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ) always clobbers reg byte a +Statement [128] *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y +Statement [130] (byte) render_moving::ypos2#0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ current_piece_char#68 current_piece_char#106 current_piece_char#107 ] -Statement [133] (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ) always clobbers reg byte a +Statement [133] (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:29 [ render_moving::ypos2#2 render_moving::ypos2#0 render_moving::ypos2#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ render_moving::l#4 render_moving::l#1 ] -Statement [139] (byte~) render_moving::$2 ? (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ) always clobbers reg byte a +Statement [139] (byte~) render_moving::$2 ← (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:31 [ render_moving::i#4 render_moving::i#3 render_moving::i#8 render_moving::i#2 render_moving::i#1 ] -Statement [140] (byte*) render_moving::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ) always clobbers reg byte a -Statement [143] (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ) always clobbers reg byte a +Statement [140] (byte*) render_moving::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ) always clobbers reg byte a +Statement [143] (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:32 [ render_moving::xpos#2 render_moving::xpos#0 render_moving::xpos#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ render_moving::c#2 render_moving::c#1 ] -Statement [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ? (byte) current_piece_char#68 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ) always clobbers reg byte a -Statement [152] (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ) always clobbers reg byte a +Statement [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ← (byte) current_piece_char#68 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ) always clobbers reg byte a +Statement [152] (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:34 [ render_screen_render#22 render_screen_render#70 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:35 [ render_playfield::l#2 render_playfield::l#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ render_playfield::i#2 render_playfield::i#3 render_playfield::i#1 ] -Statement [153] (byte~) render_playfield::$3 ? (byte) render_screen_render#22 + (byte~) render_playfield::$2 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ) always clobbers reg byte a -Statement [154] (byte*) render_playfield::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ) always clobbers reg byte a -Statement [156] *((byte*) render_playfield::screen_line#2) ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ) always clobbers reg byte a reg byte y +Statement [153] (byte~) render_playfield::$3 ← (byte) render_screen_render#22 + (byte~) render_playfield::$2 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ) always clobbers reg byte a +Statement [154] (byte*) render_playfield::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ) always clobbers reg byte a +Statement [156] *((byte*) render_playfield::screen_line#2) ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:34 [ render_screen_render#22 render_screen_render#70 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:35 [ render_playfield::l#2 render_playfield::l#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:36 [ render_playfield::i#2 render_playfield::i#3 render_playfield::i#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:39 [ render_playfield::c#2 render_playfield::c#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:39 [ render_playfield::c#2 render_playfield::c#1 ] -Statement [176] (byte) play_movement::render#2 ? (byte) play_movement::render#1 + (byte~) play_movement::$3 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ) always clobbers reg byte a +Statement [176] (byte) play_movement::render#2 ← (byte) play_movement::render#1 + (byte~) play_movement::$3 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:126 [ play_movement::key_event#0 ] -Statement [181] (byte) play_movement::return#0 ? (byte) play_movement::render#2 + (byte~) play_movement::$4 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ) always clobbers reg byte a -Statement [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ) always clobbers reg byte a +Statement [181] (byte) play_movement::return#0 ← (byte) play_movement::render#2 + (byte~) play_movement::$4 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ) always clobbers reg byte a +Statement [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:150 [ play_movement::render#2 ] -Statement [192] (byte*~) current_piece#101 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ) always clobbers reg byte a +Statement [192] (byte*~) current_piece#101 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:42 [ play_move_rotate::orientation#3 play_move_rotate::orientation#1 play_move_rotate::orientation#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:47 [ play_collision::xpos#6 play_collision::xpos#0 play_collision::xpos#1 play_collision::xpos#2 play_collision::xpos#3 play_collision::xpos#4 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:46 [ play_collision::ypos#5 play_collision::ypos#0 play_collision::ypos#1 play_collision::ypos#2 play_collision::ypos#3 play_collision::ypos#4 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:45 [ play_collision::orientation#5 play_collision::orientation#0 play_collision::orientation#1 play_collision::orientation#2 play_collision::orientation#3 ] -Statement [198] (byte*) current_piece_gfx#7 ? (byte*) current_piece#15 + (byte) current_orientation#7 [ current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ) always clobbers reg byte a -Statement [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ) always clobbers reg byte a -Statement [202] (byte*) play_collision::piece_gfx#0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 [ play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ) always clobbers reg byte a +Statement [198] (byte*) current_piece_gfx#7 ← (byte*) current_piece#15 + (byte) current_orientation#7 [ current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ) always clobbers reg byte a +Statement [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ) always clobbers reg byte a +Statement [202] (byte*) play_collision::piece_gfx#0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 [ play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:40 [ play_movement::return#2 play_movement::render#1 play_movement::return#0 ] -Statement [203] (byte) play_collision::ypos2#0 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ) always clobbers reg byte a -Statement [205] (byte*) play_collision::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ) always clobbers reg byte a +Statement [203] (byte) play_collision::ypos2#0 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ) always clobbers reg byte a +Statement [205] (byte*) play_collision::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:48 [ play_collision::ypos2#2 play_collision::ypos2#0 play_collision::ypos2#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:50 [ play_collision::i#2 play_collision::i#3 play_collision::i#11 play_collision::i#13 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:49 [ play_collision::l#6 play_collision::l#1 ] @@ -17045,27 +17045,27 @@ Statement [209] if(*((byte*) play_collision::piece_gfx#0 + (byte) play_collision Removing always clobbered register reg byte a as potential for zp ZP_BYTE:51 [ play_collision::col#2 play_collision::col#9 play_collision::col#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ play_collision::c#2 play_collision::c#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:162 [ play_collision::i#1 ] -Statement [213] (byte~) play_collision::$7 ? (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ) always clobbers reg byte a +Statement [213] (byte~) play_collision::$7 ← (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ) always clobbers reg byte a Statement [216] if(*((byte*) play_collision::playfield_line#0 + (byte) play_collision::col#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@3 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ) always clobbers reg byte a -Statement [230] (byte*~) current_piece#100 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ) always clobbers reg byte a -Statement [241] (byte*~) current_piece#99 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ) always clobbers reg byte a -Statement [265] (byte*~) current_piece#98 ? (byte*) current_piece#10 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ) always clobbers reg byte a -Statement [280] (byte*~) current_piece#104 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ) always clobbers reg byte a -Statement [287] (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [230] (byte*~) current_piece#100 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ) always clobbers reg byte a +Statement [241] (byte*~) current_piece#99 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ) always clobbers reg byte a +Statement [265] (byte*~) current_piece#98 ← (byte*) current_piece#10 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ) always clobbers reg byte a +Statement [280] (byte*~) current_piece#104 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ) always clobbers reg byte a +Statement [287] (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:175 [ play_spawn_current::current_piece_idx#0 ] -Statement [289] (byte*) current_piece_gfx#74 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 [ current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a -Statement [294] (byte*~) current_piece#102 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ) always clobbers reg byte a -Statement [312] (byte~) play_update_score::$2 ? < (word) lines_bcd#19 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ) always clobbers reg byte a +Statement [289] (byte*) current_piece_gfx#74 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 [ current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [294] (byte*~) current_piece#102 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ) always clobbers reg byte a +Statement [312] (byte~) play_update_score::$2 ← < (word) lines_bcd#19 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:174 [ play_update_score::removed#0 ] -Statement [314] (byte~) play_update_score::$4 ? (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ) always clobbers reg byte a +Statement [314] (byte~) play_update_score::$4 ← (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:183 [ play_update_score::lines_before#0 ] -Statement [315] (dword) play_update_score::add_bcd#0 ? *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ) always clobbers reg byte a -Statement [317] (word) lines_bcd#30 ? (word) lines_bcd#19 + (byte) play_update_score::removed#0 [ current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ) always clobbers reg byte a -Statement [318] (dword) score_bcd#30 ? (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ) always clobbers reg byte a -Statement [320] (byte~) play_update_score::$5 ? < (word) lines_bcd#30 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ) always clobbers reg byte a +Statement [315] (dword) play_update_score::add_bcd#0 ← *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ) always clobbers reg byte a +Statement [317] (word) lines_bcd#30 ← (word) lines_bcd#19 + (byte) play_update_score::removed#0 [ current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ) always clobbers reg byte a +Statement [318] (dword) score_bcd#30 ← (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ) always clobbers reg byte a +Statement [320] (byte~) play_update_score::$5 ← < (word) lines_bcd#30 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ) always clobbers reg byte a Statement [328] if((byte) level#21>(byte/signed byte/word/signed word/dword/signed dword) $1d) goto play_increase_level::@1 [ level_bcd#11 level#21 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level_bcd#11 level#21 ] ) always clobbers reg byte a -Statement [332] (byte~) play_increase_level::$1 ? (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f [ level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ) always clobbers reg byte a -Statement [334] (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 [ level#21 current_movedown_slow#69 level_bcd#8 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#8 ] ) always clobbers reg byte a reg byte x +Statement [332] (byte~) play_increase_level::$1 ← (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f [ level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ) always clobbers reg byte a +Statement [334] (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 [ level#21 current_movedown_slow#69 level_bcd#8 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#8 ] ) always clobbers reg byte a reg byte x Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ render_screen_show#16 render_screen_show#13 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:3 [ render_screen_render#18 render_screen_render#11 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:94 [ keyboard_events_size#10 keyboard_events_size#30 keyboard_events_size#19 keyboard_events_size#16 keyboard_events_size#13 keyboard_events_size#4 keyboard_events_size#29 keyboard_events_size#1 keyboard_events_size#2 ] @@ -17074,17 +17074,17 @@ Removing always clobbered register reg byte x as potential for zp ZP_BYTE:75 [ g Removing always clobbered register reg byte x as potential for zp ZP_BYTE:74 [ next_piece_idx#17 next_piece_idx#30 next_piece_idx#10 next_piece_idx#16 play_spawn_current::piece_idx#2 play_spawn_current::piece_idx#1 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:63 [ level#33 level#10 level#17 level#19 level#21 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:64 [ current_movedown_slow#37 current_movedown_slow#14 current_movedown_slow#21 current_movedown_slow#1 current_movedown_slow#23 current_movedown_slow#69 current_movedown_slow#10 ] -Statement [338] (byte) play_increase_level::b4#0 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ) always clobbers reg byte a +Statement [338] (byte) play_increase_level::b4#0 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:76 [ play_increase_level::b#2 play_increase_level::b#1 ] -Statement [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ) always clobbers reg byte a -Statement [356] (byte) play_remove_lines::w#2 ? (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 [ play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ) always clobbers reg byte a +Statement [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ) always clobbers reg byte a +Statement [356] (byte) play_remove_lines::w#2 ← (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 [ play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:77 [ play_remove_lines::y#8 play_remove_lines::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:78 [ play_remove_lines::removed#11 play_remove_lines::removed#8 play_remove_lines::removed#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:79 [ play_remove_lines::r#2 play_remove_lines::r#3 play_remove_lines::r#1 ] -Statement [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ play_remove_lines::removed#8 play_remove_lines::w#6 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::removed#8 play_remove_lines::w#6 ] ) always clobbers reg byte a +Statement [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ play_remove_lines::removed#8 play_remove_lines::w#6 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::removed#8 play_remove_lines::w#6 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:82 [ play_remove_lines::w#6 play_remove_lines::w#3 play_remove_lines::w#4 play_remove_lines::w#12 play_remove_lines::w#11 play_remove_lines::w#1 play_remove_lines::w#2 ] -Statement [367] (byte) play_lock_current::ypos2#0 ? (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ) always clobbers reg byte a -Statement [369] (byte*) play_lock_current::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ) always clobbers reg byte a +Statement [367] (byte) play_lock_current::ypos2#0 ← (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ) always clobbers reg byte a +Statement [369] (byte*) play_lock_current::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:83 [ play_lock_current::ypos2#2 play_lock_current::ypos2#0 play_lock_current::ypos2#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:85 [ play_lock_current::i#2 play_lock_current::i#3 play_lock_current::i#7 play_lock_current::i#9 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:84 [ play_lock_current::l#6 play_lock_current::l#1 ] @@ -17092,211 +17092,211 @@ Statement [373] if(*((byte*) current_piece_gfx#112 + (byte) play_lock_current::i Removing always clobbered register reg byte a as potential for zp ZP_BYTE:86 [ play_lock_current::col#2 play_lock_current::col#0 play_lock_current::col#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:87 [ play_lock_current::c#2 play_lock_current::c#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:196 [ play_lock_current::i#1 ] -Statement [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ? (byte) current_piece_char#10 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a -Statement [385] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ) always clobbers reg byte a +Statement [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ← (byte) current_piece_char#10 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a +Statement [385] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:55 [ play_move_down::movedown#6 play_move_down::movedown#7 play_move_down::movedown#10 play_move_down::movedown#2 play_move_down::movedown#3 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:88 [ keyboard_event_pressed::keycode#5 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:91 [ keyboard_modifiers#13 keyboard_modifiers#12 keyboard_modifiers#11 keyboard_modifiers#3 keyboard_modifiers#4 ] -Statement [387] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Statement [387] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:198 [ keyboard_event_pressed::row_bits#0 ] -Statement [388] (byte) keyboard_event_pressed::return#11 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#11 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::return#11 ] ) always clobbers reg byte a +Statement [388] (byte) keyboard_event_pressed::return#11 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#11 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::return#11 ] ) always clobbers reg byte a Statement [390] if((byte) keyboard_events_size#13==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@return [ keyboard_events_size#13 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a -Statement [392] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_events_size#4 keyboard_event_get::return#1 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#4 keyboard_event_get::return#1 ] ) always clobbers reg byte y -Statement [402] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a +Statement [392] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_events_size#4 keyboard_event_get::return#1 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#4 keyboard_event_get::return#1 ] ) always clobbers reg byte y +Statement [402] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:90 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] -Statement [417] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#13 keyboard_modifiers#3 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#3 ] ) always clobbers reg byte a -Statement [423] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#13 keyboard_modifiers#4 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#4 ] ) always clobbers reg byte a -Statement [429] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#13 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a -Statement [432] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ) always clobbers reg byte a +Statement [417] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#13 keyboard_modifiers#3 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [423] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#13 keyboard_modifiers#4 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [429] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#13 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a +Statement [432] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:203 [ keyboard_event_scan::row_scan#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:92 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:93 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] Statement [435] if((byte) keyboard_events_size#10==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a -Statement [436] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a -Statement [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a reg byte y +Statement [436] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:90 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:203 [ keyboard_event_scan::row_scan#0 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:92 [ keyboard_event_scan::col#2 keyboard_event_scan::col#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:93 [ keyboard_event_scan::keycode#10 keyboard_event_scan::keycode#11 keyboard_event_scan::keycode#14 keyboard_event_scan::keycode#15 keyboard_event_scan::keycode#1 ] -Statement [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ) always clobbers reg byte a -Statement [445] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ) always clobbers reg byte a -Statement [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte/word/dword~) keyboard_event_scan::$23 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte y -Statement [448] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 ] ) always clobbers reg byte a -Statement [449] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ) always clobbers reg byte a +Statement [445] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ) always clobbers reg byte a +Statement [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte/word/dword~) keyboard_event_scan::$23 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte y +Statement [448] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 ] ) always clobbers reg byte a +Statement [449] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a Statement [451] if((byte) render_screen_show#16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_show::toD0181 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a -Statement [455] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y -Statement [456] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y -Statement [457] (byte) render_screen_showing#1 ? (byte) render_screen_show#16 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a -Statement [462] (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ) always clobbers reg byte a +Statement [455] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y +Statement [456] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y +Statement [457] (byte) render_screen_showing#1 ← (byte) render_screen_show#16 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a +Statement [462] (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:96 [ play_init::j#2 play_init::j#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:99 [ play_init::idx#2 play_init::idx#1 ] -Statement [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a -Statement [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a -Statement [465] (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ) always clobbers reg byte a -Statement [466] (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ) always clobbers reg byte a -Statement [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ? (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 [ ] ( main:12::play_init:23 [ ] ) always clobbers reg byte a -Statement [470] (byte) current_movedown_slow#1 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) [ current_movedown_slow#1 ] ( main:12::play_init:23 [ current_movedown_slow#1 ] ) always clobbers reg byte a -Statement [472] (byte) play_init::b4#0 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ) always clobbers reg byte a +Statement [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a +Statement [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a +Statement [465] (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ) always clobbers reg byte a +Statement [466] (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ) always clobbers reg byte a +Statement [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ← (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 [ ] ( main:12::play_init:23 [ ] ) always clobbers reg byte a +Statement [470] (byte) current_movedown_slow#1 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) [ current_movedown_slow#1 ] ( main:12::play_init:23 [ current_movedown_slow#1 ] ) always clobbers reg byte a +Statement [472] (byte) play_init::b4#0 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:100 [ play_init::b#2 play_init::b#1 ] -Statement [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) [ current_movedown_slow#1 play_init::b#2 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 ] ) always clobbers reg byte a -Statement [478] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) [ current_movedown_slow#1 play_init::b#2 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 ] ) always clobbers reg byte a +Statement [478] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a Statement asm { ldaCIA1_INTERRUPT } always clobbers reg byte a -Statement [480] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [481] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [482] *((const byte*) CIA1_INTERRUPT#0) ? (const byte) CIA_INTERRUPT_CLEAR#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [483] *((const byte*) VIC_CONTROL#0) ? *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [484] *((const byte*) RASTER#0) ? (const byte) IRQ_RASTER_FIRST#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [485] *((const byte*) IRQ_ENABLE#0) ? (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [486] *((const void()**) HARDWARE_IRQ#0) ? &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [489] *((const byte*) SPRITES_ENABLE#0) ? (byte/signed byte/word/signed word/dword/signed dword) $f [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [490] *((const byte*) SPRITES_MC#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [491] *((const byte*) SPRITES_EXPAND_Y#0) ? *((const byte*) SPRITES_MC#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [492] *((const byte*) SPRITES_EXPAND_X#0) ? *((const byte*) SPRITES_EXPAND_Y#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [494] (byte) sprites_init::s2#0 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ) always clobbers reg byte a +Statement [480] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [481] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [482] *((const byte*) CIA1_INTERRUPT#0) ← (const byte) CIA_INTERRUPT_CLEAR#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [483] *((const byte*) VIC_CONTROL#0) ← *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [484] *((const byte*) RASTER#0) ← (const byte) IRQ_RASTER_FIRST#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [485] *((const byte*) IRQ_ENABLE#0) ← (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [486] *((const void()**) HARDWARE_IRQ#0) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [489] *((const byte*) SPRITES_ENABLE#0) ← (byte/signed byte/word/signed word/dword/signed dword) $f [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [490] *((const byte*) SPRITES_MC#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [491] *((const byte*) SPRITES_EXPAND_Y#0) ← *((const byte*) SPRITES_MC#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [492] *((const byte*) SPRITES_EXPAND_X#0) ← *((const byte*) SPRITES_EXPAND_Y#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [494] (byte) sprites_init::s2#0 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:101 [ sprites_init::s#2 sprites_init::s#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:102 [ sprites_init::xpos#2 sprites_init::xpos#1 ] -Statement [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a -Statement [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (const byte) BLACK#0 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a -Statement [497] (byte) sprites_init::xpos#1 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 [ sprites_init::s#2 sprites_init::xpos#1 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#1 ] ) always clobbers reg byte a -Statement [502] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [504] *((const byte*) CIA2_PORT_A#0) ? (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [505] *((const byte*) D011#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [506] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [507] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [508] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [509] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [510] *((const byte*) BGCOL4#0) ? (const byte) GREY#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [515] (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ) always clobbers reg byte a +Statement [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a +Statement [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (const byte) BLACK#0 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a +Statement [497] (byte) sprites_init::xpos#1 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 [ sprites_init::s#2 sprites_init::xpos#1 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#1 ] ) always clobbers reg byte a +Statement [502] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [504] *((const byte*) CIA2_PORT_A#0) ← (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [505] *((const byte*) D011#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [506] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [507] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [508] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [509] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [510] *((const byte*) BGCOL4#0) ← (const byte) GREY#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [515] (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:103 [ render_init::i#2 render_init::i#1 ] -Statement [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a -Statement [517] (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ) always clobbers reg byte a -Statement [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a -Statement [519] (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ) always clobbers reg byte a -Statement [520] (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ) always clobbers reg byte a -Statement [527] *((byte*) render_screen_original::screen#5) ? (const byte) render_screen_original::SPACE#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ) always clobbers reg byte a reg byte y +Statement [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a +Statement [517] (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ) always clobbers reg byte a +Statement [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a +Statement [519] (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ) always clobbers reg byte a +Statement [520] (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ) always clobbers reg byte a +Statement [527] *((byte*) render_screen_original::screen#5) ← (const byte) render_screen_original::SPACE#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:108 [ render_screen_original::y#6 render_screen_original::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:108 [ render_screen_original::y#6 render_screen_original::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:117 [ render_screen_original::x#6 render_screen_original::x#5 render_screen_original::x#4 render_screen_original::x#1 render_screen_original::x#2 render_screen_original::x#3 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:117 [ render_screen_original::x#6 render_screen_original::x#5 render_screen_original::x#4 render_screen_original::x#1 render_screen_original::x#2 render_screen_original::x#3 ] -Statement [529] *((byte*) render_screen_original::cols#4) ? (const byte) BLACK#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ) always clobbers reg byte a reg byte y -Statement [534] *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ) always clobbers reg byte a reg byte y -Statement [537] *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ) always clobbers reg byte a reg byte y -Statement [543] *((byte*) render_screen_original::screen#7) ? (const byte) render_screen_original::SPACE#0 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y -Statement [545] *((byte*) render_screen_original::cols#6) ? (const byte) BLACK#0 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y -Statement [552] *((const word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a -Statement [553] *((const byte*) SID_VOICE3_CONTROL#0) ? (const byte) SID_CONTROL_NOISE#0 [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a +Statement [529] *((byte*) render_screen_original::cols#4) ← (const byte) BLACK#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ) always clobbers reg byte a reg byte y +Statement [534] *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ) always clobbers reg byte a reg byte y +Statement [537] *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ) always clobbers reg byte a reg byte y +Statement [543] *((byte*) render_screen_original::screen#7) ← (const byte) render_screen_original::SPACE#0 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y +Statement [545] *((byte*) render_screen_original::cols#6) ← (const byte) BLACK#0 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y +Statement [552] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a +Statement [553] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0 [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a Statement [563] if(*((const byte*) RASTER#0)<(byte) sprites_irq::raster_sprite_gfx_modify#0) goto sprites_irq::@8 [ render_screen_showing#0 irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::raster_sprite_gfx_modify#0 ] ( [ render_screen_showing#0 irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::raster_sprite_gfx_modify#0 ] ) always clobbers reg byte a Statement [565] if((byte) render_screen_showing#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sprites_irq::@1 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::ptr#0 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::ptr#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:227 [ sprites_irq::ptr#0 ] -Statement [572] (byte) irq_cnt#1 ? ++ (byte) irq_cnt#0 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte y +Statement [572] (byte) irq_cnt#1 ← ++ (byte) irq_cnt#0 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte y Statement [573] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) 9) goto sprites_irq::@3 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte a Statement [574] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) $a) goto sprites_irq::@4 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a -Statement [575] (byte) irq_raster_next#3 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [576] (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [577] (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#3 ] ( [ irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [579] *((const byte*) RASTER#0) ? (byte) irq_raster_next#4 [ ] ( [ ] ) always clobbers reg byte a -Statement [580] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 [ ] ( [ ] ) always clobbers reg byte a +Statement [575] (byte) irq_raster_next#3 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [576] (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [577] (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#3 ] ( [ irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [579] *((const byte*) RASTER#0) ← (byte) irq_raster_next#4 [ ] ( [ ] ) always clobbers reg byte a +Statement [580] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 [ ] ( [ ] ) always clobbers reg byte a Statement [581] return [ ] ( [ ] ) always clobbers reg byte a reg byte x reg byte y -Statement [582] (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a -Statement [583] (byte) irq_raster_next#2 ? (const byte) IRQ_RASTER_FIRST#0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a -Statement [584] (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a reg byte x -Statement [585] (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#2 ] ( [ irq_raster_next#2 ] ) always clobbers reg byte a reg byte x -Statement [586] (byte) irq_raster_next#1 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a reg byte x -Statement [587] (byte) irq_sprite_ypos#1 ? (const byte) SPRITES_FIRST_YPOS#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a -Statement [589] (byte) irq_sprite_ptr#1 ? (const byte) sprites_irq::toSpritePtr2_return#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a -Statement [1] (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a -Statement [6] (byte) irq_raster_next#0 ? (const byte) IRQ_RASTER_FIRST#0 [ ] ( ) always clobbers reg byte a -Statement [7] (byte) irq_sprite_ypos#0 ? (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 [ ] ( ) always clobbers reg byte a -Statement [9] (byte) irq_sprite_ptr#0 ? (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( ) always clobbers reg byte a -Statement [10] (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a -Statement [32] (byte*~) current_piece_gfx#118 ? (byte*) current_piece_gfx#74 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a -Statement [37] (byte*~) current_piece#96 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a +Statement [582] (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a +Statement [583] (byte) irq_raster_next#2 ← (const byte) IRQ_RASTER_FIRST#0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a +Statement [584] (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a reg byte x +Statement [585] (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#2 ] ( [ irq_raster_next#2 ] ) always clobbers reg byte a reg byte x +Statement [586] (byte) irq_raster_next#1 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a reg byte x +Statement [587] (byte) irq_sprite_ypos#1 ← (const byte) SPRITES_FIRST_YPOS#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a +Statement [589] (byte) irq_sprite_ptr#1 ← (const byte) sprites_irq::toSpritePtr2_return#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a +Statement [1] (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a +Statement [6] (byte) irq_raster_next#0 ← (const byte) IRQ_RASTER_FIRST#0 [ ] ( ) always clobbers reg byte a +Statement [7] (byte) irq_sprite_ypos#0 ← (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 [ ] ( ) always clobbers reg byte a +Statement [9] (byte) irq_sprite_ptr#0 ← (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( ) always clobbers reg byte a +Statement [10] (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a +Statement [32] (byte*~) current_piece_gfx#118 ← (byte*) current_piece_gfx#74 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a +Statement [37] (byte*~) current_piece#96 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a Statement [39] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto main::@2 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 ] ) always clobbers reg byte a Statement [48] if((byte) game_over#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@4 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#16 main::key_event#0 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#16 main::key_event#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:125 [ main::key_event#0 ] -Statement [60] (byte*~) current_piece_gfx#119 ? (byte*) current_piece_gfx#18 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ) always clobbers reg byte a -Statement [70] (byte) render_screen_render#11 ? (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#16 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#16 render_screen_render#11 ] ) always clobbers reg byte a -Statement [71] (byte) render_screen_show#13 ? (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#13 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#13 render_screen_render#11 ] ) always clobbers reg byte a +Statement [60] (byte*~) current_piece_gfx#119 ← (byte*) current_piece_gfx#18 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ) always clobbers reg byte a +Statement [70] (byte) render_screen_render#11 ← (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#16 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#16 render_screen_render#11 ] ) always clobbers reg byte a +Statement [71] (byte) render_screen_show#13 ← (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#13 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#13 render_screen_render#11 ] ) always clobbers reg byte a Statement [73] if((byte) render_screen_render#18==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_score::@1 [ render_screen_render#18 lines_bcd#15 level_bcd#17 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a -Statement [76] (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ) always clobbers reg byte a -Statement [79] (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ) always clobbers reg byte a -Statement [82] (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ) always clobbers reg byte a -Statement [85] (byte) render_bcd::bcd#3 ? > (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ) always clobbers reg byte a -Statement [86] (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ) always clobbers reg byte a -Statement [88] (byte) render_bcd::bcd#4 ? < (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ) always clobbers reg byte a -Statement [89] (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ) always clobbers reg byte a -Statement [91] (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ) always clobbers reg byte a -Statement [96] (byte*) render_bcd::screen_pos#0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 [ render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte a -Statement [98] (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ) always clobbers reg byte a -Statement [100] *((byte*) render_bcd::screen_pos#0) ? (byte~) render_bcd::$6 [ render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte y -Statement [103] (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f [ render_bcd::screen_pos#3 render_bcd::$3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 render_bcd::$3 ] ) always clobbers reg byte a -Statement [105] *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 [ render_bcd::screen_pos#3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 ] ) always clobbers reg byte y -Statement [106] (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 [ ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a -Statement [112] (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ) always clobbers reg byte a -Statement [114] (byte*~) render_next::next_piece_gfx#9 ? (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) [ render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ) always clobbers reg byte a -Statement [117] (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ) always clobbers reg byte a reg byte y -Statement [120] *((byte*) render_next::screen_next_area#5) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y -Statement [124] (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ) always clobbers reg byte a -Statement [128] *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y -Statement [130] (byte) render_moving::ypos2#0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ) always clobbers reg byte a +Statement [76] (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ) always clobbers reg byte a +Statement [79] (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ) always clobbers reg byte a +Statement [82] (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ) always clobbers reg byte a +Statement [85] (byte) render_bcd::bcd#3 ← > (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ) always clobbers reg byte a +Statement [86] (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ) always clobbers reg byte a +Statement [88] (byte) render_bcd::bcd#4 ← < (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ) always clobbers reg byte a +Statement [89] (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ) always clobbers reg byte a +Statement [91] (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ) always clobbers reg byte a +Statement [96] (byte*) render_bcd::screen_pos#0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 [ render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte a +Statement [98] (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ) always clobbers reg byte a +Statement [100] *((byte*) render_bcd::screen_pos#0) ← (byte~) render_bcd::$6 [ render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte y +Statement [103] (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f [ render_bcd::screen_pos#3 render_bcd::$3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 render_bcd::$3 ] ) always clobbers reg byte a +Statement [105] *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 [ render_bcd::screen_pos#3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 ] ) always clobbers reg byte y +Statement [106] (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 [ ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a +Statement [112] (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ) always clobbers reg byte a +Statement [114] (byte*~) render_next::next_piece_gfx#9 ← (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) [ render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ) always clobbers reg byte a +Statement [117] (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ) always clobbers reg byte a reg byte y +Statement [120] *((byte*) render_next::screen_next_area#5) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y +Statement [124] (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ) always clobbers reg byte a +Statement [128] *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y +Statement [130] (byte) render_moving::ypos2#0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ) always clobbers reg byte a Statement [132] if((byte) render_moving::ypos2#2>(byte/signed byte/word/signed word/dword/signed dword) 2) goto render_moving::@2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 ] ) always clobbers reg byte a -Statement [133] (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ) always clobbers reg byte a -Statement [139] (byte~) render_moving::$2 ? (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ) always clobbers reg byte a -Statement [140] (byte*) render_moving::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ) always clobbers reg byte a -Statement [143] (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ) always clobbers reg byte a -Statement [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ? (byte) current_piece_char#68 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ) always clobbers reg byte a -Statement [152] (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ) always clobbers reg byte a -Statement [153] (byte~) render_playfield::$3 ? (byte) render_screen_render#22 + (byte~) render_playfield::$2 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ) always clobbers reg byte a -Statement [154] (byte*) render_playfield::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ) always clobbers reg byte a -Statement [156] *((byte*) render_playfield::screen_line#2) ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ) always clobbers reg byte a reg byte y +Statement [133] (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ) always clobbers reg byte a +Statement [139] (byte~) render_moving::$2 ← (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ) always clobbers reg byte a +Statement [140] (byte*) render_moving::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ) always clobbers reg byte a +Statement [143] (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ) always clobbers reg byte a +Statement [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ← (byte) current_piece_char#68 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ) always clobbers reg byte a +Statement [152] (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ) always clobbers reg byte a +Statement [153] (byte~) render_playfield::$3 ← (byte) render_screen_render#22 + (byte~) render_playfield::$2 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ) always clobbers reg byte a +Statement [154] (byte*) render_playfield::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ) always clobbers reg byte a +Statement [156] *((byte*) render_playfield::screen_line#2) ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ) always clobbers reg byte a reg byte y Statement [169] if((byte) game_over#15==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_movement::@1 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_orientation#20 current_piece_gfx#20 current_xpos#22 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_orientation#20 current_piece_gfx#20 current_xpos#22 ] ) always clobbers reg byte a -Statement [176] (byte) play_movement::render#2 ? (byte) play_movement::render#1 + (byte~) play_movement::$3 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ) always clobbers reg byte a -Statement [181] (byte) play_movement::return#0 ? (byte) play_movement::render#2 + (byte~) play_movement::$4 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ) always clobbers reg byte a -Statement [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ) always clobbers reg byte a -Statement [192] (byte*~) current_piece#101 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ) always clobbers reg byte a -Statement [198] (byte*) current_piece_gfx#7 ? (byte*) current_piece#15 + (byte) current_orientation#7 [ current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ) always clobbers reg byte a -Statement [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ) always clobbers reg byte a -Statement [202] (byte*) play_collision::piece_gfx#0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 [ play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ) always clobbers reg byte a -Statement [203] (byte) play_collision::ypos2#0 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ) always clobbers reg byte a -Statement [205] (byte*) play_collision::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ) always clobbers reg byte a +Statement [176] (byte) play_movement::render#2 ← (byte) play_movement::render#1 + (byte~) play_movement::$3 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ) always clobbers reg byte a +Statement [181] (byte) play_movement::return#0 ← (byte) play_movement::render#2 + (byte~) play_movement::$4 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ) always clobbers reg byte a +Statement [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ) always clobbers reg byte a +Statement [192] (byte*~) current_piece#101 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ) always clobbers reg byte a +Statement [198] (byte*) current_piece_gfx#7 ← (byte*) current_piece#15 + (byte) current_orientation#7 [ current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ) always clobbers reg byte a +Statement [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ) always clobbers reg byte a +Statement [202] (byte*) play_collision::piece_gfx#0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 [ play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ) always clobbers reg byte a +Statement [203] (byte) play_collision::ypos2#0 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ) always clobbers reg byte a +Statement [205] (byte*) play_collision::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ) always clobbers reg byte a Statement [209] if(*((byte*) play_collision::piece_gfx#0 + (byte) play_collision::i#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@3 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ) always clobbers reg byte a -Statement [213] (byte~) play_collision::$7 ? (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ) always clobbers reg byte a +Statement [213] (byte~) play_collision::$7 ← (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ) always clobbers reg byte a Statement [216] if(*((byte*) play_collision::playfield_line#0 + (byte) play_collision::col#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@3 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ) always clobbers reg byte a -Statement [230] (byte*~) current_piece#100 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ) always clobbers reg byte a -Statement [241] (byte*~) current_piece#99 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ) always clobbers reg byte a -Statement [265] (byte*~) current_piece#98 ? (byte*) current_piece#10 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ) always clobbers reg byte a -Statement [280] (byte*~) current_piece#104 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ) always clobbers reg byte a -Statement [287] (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a -Statement [289] (byte*) current_piece_gfx#74 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 [ current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a -Statement [294] (byte*~) current_piece#102 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ) always clobbers reg byte a +Statement [230] (byte*~) current_piece#100 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ) always clobbers reg byte a +Statement [241] (byte*~) current_piece#99 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ) always clobbers reg byte a +Statement [265] (byte*~) current_piece#98 ← (byte*) current_piece#10 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ) always clobbers reg byte a +Statement [280] (byte*~) current_piece#104 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ) always clobbers reg byte a +Statement [287] (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [289] (byte*) current_piece_gfx#74 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 [ current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [294] (byte*~) current_piece#102 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ) always clobbers reg byte a Statement [301] if((byte) play_spawn_current::piece_idx#2==(byte/signed byte/word/signed word/dword/signed dword) 7) goto play_spawn_current::@3 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] ) always clobbers reg byte a -Statement [307] (byte) play_spawn_current::piece_idx#1 ? (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ) always clobbers reg byte a -Statement [312] (byte~) play_update_score::$2 ? < (word) lines_bcd#19 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ) always clobbers reg byte a -Statement [314] (byte~) play_update_score::$4 ? (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ) always clobbers reg byte a -Statement [315] (dword) play_update_score::add_bcd#0 ? *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ) always clobbers reg byte a -Statement [317] (word) lines_bcd#30 ? (word) lines_bcd#19 + (byte) play_update_score::removed#0 [ current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ) always clobbers reg byte a -Statement [318] (dword) score_bcd#30 ? (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ) always clobbers reg byte a -Statement [320] (byte~) play_update_score::$5 ? < (word) lines_bcd#30 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ) always clobbers reg byte a +Statement [307] (byte) play_spawn_current::piece_idx#1 ← (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ) always clobbers reg byte a +Statement [312] (byte~) play_update_score::$2 ← < (word) lines_bcd#19 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ) always clobbers reg byte a +Statement [314] (byte~) play_update_score::$4 ← (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ) always clobbers reg byte a +Statement [315] (dword) play_update_score::add_bcd#0 ← *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ) always clobbers reg byte a +Statement [317] (word) lines_bcd#30 ← (word) lines_bcd#19 + (byte) play_update_score::removed#0 [ current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ) always clobbers reg byte a +Statement [318] (dword) score_bcd#30 ← (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ) always clobbers reg byte a +Statement [320] (byte~) play_update_score::$5 ← < (word) lines_bcd#30 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ) always clobbers reg byte a Statement [328] if((byte) level#21>(byte/signed byte/word/signed word/dword/signed dword) $1d) goto play_increase_level::@1 [ level_bcd#11 level#21 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level_bcd#11 level#21 ] ) always clobbers reg byte a -Statement [329] (byte) current_movedown_slow#10 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) [ level_bcd#11 level#21 current_movedown_slow#10 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level_bcd#11 level#21 current_movedown_slow#10 ] ) always clobbers reg byte a reg byte y +Statement [329] (byte) current_movedown_slow#10 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) [ level_bcd#11 level#21 current_movedown_slow#10 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level_bcd#11 level#21 current_movedown_slow#10 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:126 [ play_movement::key_event#0 ] -Statement [332] (byte~) play_increase_level::$1 ? (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f [ level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ) always clobbers reg byte a -Statement [334] (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 [ level#21 current_movedown_slow#69 level_bcd#8 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#8 ] ) always clobbers reg byte a reg byte x -Statement [338] (byte) play_increase_level::b4#0 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ) always clobbers reg byte a -Statement [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ) always clobbers reg byte a -Statement [356] (byte) play_remove_lines::w#2 ? (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 [ play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ) always clobbers reg byte a -Statement [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ play_remove_lines::removed#8 play_remove_lines::w#6 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::removed#8 play_remove_lines::w#6 ] ) always clobbers reg byte a -Statement [367] (byte) play_lock_current::ypos2#0 ? (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ) always clobbers reg byte a -Statement [369] (byte*) play_lock_current::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ) always clobbers reg byte a +Statement [332] (byte~) play_increase_level::$1 ← (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f [ level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ) always clobbers reg byte a +Statement [334] (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 [ level#21 current_movedown_slow#69 level_bcd#8 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#8 ] ) always clobbers reg byte a reg byte x +Statement [338] (byte) play_increase_level::b4#0 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ) always clobbers reg byte a +Statement [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ) always clobbers reg byte a +Statement [356] (byte) play_remove_lines::w#2 ← (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 [ play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ) always clobbers reg byte a +Statement [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ play_remove_lines::removed#8 play_remove_lines::w#6 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::removed#8 play_remove_lines::w#6 ] ) always clobbers reg byte a +Statement [367] (byte) play_lock_current::ypos2#0 ← (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ) always clobbers reg byte a +Statement [369] (byte*) play_lock_current::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ) always clobbers reg byte a Statement [373] if(*((byte*) current_piece_gfx#112 + (byte) play_lock_current::i#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_lock_current::@3 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a -Statement [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ? (byte) current_piece_char#10 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a -Statement [385] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ) always clobbers reg byte a -Statement [387] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a -Statement [388] (byte) keyboard_event_pressed::return#11 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#11 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::return#11 ] ) always clobbers reg byte a +Statement [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ← (byte) current_piece_char#10 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a +Statement [385] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ) always clobbers reg byte a +Statement [387] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Statement [388] (byte) keyboard_event_pressed::return#11 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#11 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::return#11 ] ) always clobbers reg byte a Statement [390] if((byte) keyboard_events_size#13==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@return [ keyboard_events_size#13 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a -Statement [392] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_events_size#4 keyboard_event_get::return#1 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#4 keyboard_event_get::return#1 ] ) always clobbers reg byte y +Statement [392] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_events_size#4 keyboard_event_get::return#1 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#4 keyboard_event_get::return#1 ] ) always clobbers reg byte y Statement [401] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_event_scan::row_scan#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a -Statement [402] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a reg byte x +Statement [402] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a reg byte x Removing always clobbered register reg byte x as potential for zp ZP_BYTE:68 [ current_piece_char#29 current_piece_char#10 current_piece_char#16 current_piece_char#5 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:69 [ current_orientation#37 current_orientation#13 current_orientation#17 current_orientation#20 current_orientation#25 current_orientation#7 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:72 [ current_xpos#43 current_xpos#122 current_xpos#19 current_xpos#103 current_xpos#22 current_xpos#26 current_xpos#6 current_xpos#8 ] @@ -17305,269 +17305,269 @@ Removing always clobbered register reg byte x as potential for zp ZP_BYTE:4 [ cu Removing always clobbered register reg byte x as potential for zp ZP_BYTE:65 [ level_bcd#31 level_bcd#11 level_bcd#17 level_bcd#19 level_bcd#64 level_bcd#21 level_bcd#8 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:90 [ keyboard_event_scan::row#2 keyboard_event_scan::row#1 ] Statement [405] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 [ keyboard_events_size#13 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) always clobbers reg byte a -Statement [417] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#13 keyboard_modifiers#3 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#3 ] ) always clobbers reg byte a -Statement [423] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#13 keyboard_modifiers#4 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#4 ] ) always clobbers reg byte a -Statement [429] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#13 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a -Statement [432] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ) always clobbers reg byte a -Statement [433] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ) always clobbers reg byte a +Statement [417] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#13 keyboard_modifiers#3 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [423] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#13 keyboard_modifiers#4 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [429] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#13 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a +Statement [432] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ) always clobbers reg byte a +Statement [433] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ) always clobbers reg byte a Statement [435] if((byte) keyboard_events_size#10==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a -Statement [436] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a -Statement [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a reg byte y -Statement [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ) always clobbers reg byte a reg byte y -Statement [445] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ) always clobbers reg byte a -Statement [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte/word/dword~) keyboard_event_scan::$23 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte y -Statement [448] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 ] ) always clobbers reg byte a -Statement [449] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [436] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a reg byte y +Statement [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ) always clobbers reg byte a reg byte y +Statement [445] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ) always clobbers reg byte a +Statement [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte/word/dword~) keyboard_event_scan::$23 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte y +Statement [448] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 ] ) always clobbers reg byte a +Statement [449] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a Statement [451] if((byte) render_screen_show#16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_show::toD0181 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a -Statement [455] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y -Statement [456] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y -Statement [457] (byte) render_screen_showing#1 ? (byte) render_screen_show#16 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a -Statement [462] (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ) always clobbers reg byte a -Statement [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a -Statement [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a -Statement [465] (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ) always clobbers reg byte a -Statement [466] (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ) always clobbers reg byte a -Statement [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ? (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 [ ] ( main:12::play_init:23 [ ] ) always clobbers reg byte a -Statement [470] (byte) current_movedown_slow#1 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) [ current_movedown_slow#1 ] ( main:12::play_init:23 [ current_movedown_slow#1 ] ) always clobbers reg byte a -Statement [472] (byte) play_init::b4#0 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ) always clobbers reg byte a -Statement [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) [ current_movedown_slow#1 play_init::b#2 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 ] ) always clobbers reg byte a -Statement [478] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [455] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y +Statement [456] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y +Statement [457] (byte) render_screen_showing#1 ← (byte) render_screen_show#16 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a +Statement [462] (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ) always clobbers reg byte a +Statement [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a +Statement [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a +Statement [465] (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ) always clobbers reg byte a +Statement [466] (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ) always clobbers reg byte a +Statement [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ← (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 [ ] ( main:12::play_init:23 [ ] ) always clobbers reg byte a +Statement [470] (byte) current_movedown_slow#1 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) [ current_movedown_slow#1 ] ( main:12::play_init:23 [ current_movedown_slow#1 ] ) always clobbers reg byte a +Statement [472] (byte) play_init::b4#0 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ) always clobbers reg byte a +Statement [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) [ current_movedown_slow#1 play_init::b#2 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 ] ) always clobbers reg byte a +Statement [478] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a Statement asm { ldaCIA1_INTERRUPT } always clobbers reg byte a -Statement [480] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [481] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [482] *((const byte*) CIA1_INTERRUPT#0) ? (const byte) CIA_INTERRUPT_CLEAR#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [483] *((const byte*) VIC_CONTROL#0) ? *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [484] *((const byte*) RASTER#0) ? (const byte) IRQ_RASTER_FIRST#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [485] *((const byte*) IRQ_ENABLE#0) ? (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [486] *((const void()**) HARDWARE_IRQ#0) ? &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [489] *((const byte*) SPRITES_ENABLE#0) ? (byte/signed byte/word/signed word/dword/signed dword) $f [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [490] *((const byte*) SPRITES_MC#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [491] *((const byte*) SPRITES_EXPAND_Y#0) ? *((const byte*) SPRITES_MC#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [492] *((const byte*) SPRITES_EXPAND_X#0) ? *((const byte*) SPRITES_EXPAND_Y#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [494] (byte) sprites_init::s2#0 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ) always clobbers reg byte a -Statement [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a -Statement [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (const byte) BLACK#0 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a -Statement [497] (byte) sprites_init::xpos#1 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 [ sprites_init::s#2 sprites_init::xpos#1 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#1 ] ) always clobbers reg byte a -Statement [502] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [504] *((const byte*) CIA2_PORT_A#0) ? (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [505] *((const byte*) D011#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [506] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [507] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [508] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [509] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [510] *((const byte*) BGCOL4#0) ? (const byte) GREY#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [515] (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ) always clobbers reg byte a -Statement [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a -Statement [517] (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ) always clobbers reg byte a -Statement [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a -Statement [519] (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ) always clobbers reg byte a -Statement [520] (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ) always clobbers reg byte a -Statement [527] *((byte*) render_screen_original::screen#5) ? (const byte) render_screen_original::SPACE#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ) always clobbers reg byte a reg byte y -Statement [529] *((byte*) render_screen_original::cols#4) ? (const byte) BLACK#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ) always clobbers reg byte a reg byte y -Statement [534] *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ) always clobbers reg byte a reg byte y -Statement [537] *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ) always clobbers reg byte a reg byte y -Statement [543] *((byte*) render_screen_original::screen#7) ? (const byte) render_screen_original::SPACE#0 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y -Statement [545] *((byte*) render_screen_original::cols#6) ? (const byte) BLACK#0 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y -Statement [552] *((const word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a -Statement [553] *((const byte*) SID_VOICE3_CONTROL#0) ? (const byte) SID_CONTROL_NOISE#0 [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a +Statement [480] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [481] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [482] *((const byte*) CIA1_INTERRUPT#0) ← (const byte) CIA_INTERRUPT_CLEAR#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [483] *((const byte*) VIC_CONTROL#0) ← *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [484] *((const byte*) RASTER#0) ← (const byte) IRQ_RASTER_FIRST#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [485] *((const byte*) IRQ_ENABLE#0) ← (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [486] *((const void()**) HARDWARE_IRQ#0) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [489] *((const byte*) SPRITES_ENABLE#0) ← (byte/signed byte/word/signed word/dword/signed dword) $f [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [490] *((const byte*) SPRITES_MC#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [491] *((const byte*) SPRITES_EXPAND_Y#0) ← *((const byte*) SPRITES_MC#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [492] *((const byte*) SPRITES_EXPAND_X#0) ← *((const byte*) SPRITES_EXPAND_Y#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [494] (byte) sprites_init::s2#0 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ) always clobbers reg byte a +Statement [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a +Statement [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (const byte) BLACK#0 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a +Statement [497] (byte) sprites_init::xpos#1 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 [ sprites_init::s#2 sprites_init::xpos#1 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#1 ] ) always clobbers reg byte a +Statement [502] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [504] *((const byte*) CIA2_PORT_A#0) ← (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [505] *((const byte*) D011#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [506] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [507] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [508] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [509] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [510] *((const byte*) BGCOL4#0) ← (const byte) GREY#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [515] (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ) always clobbers reg byte a +Statement [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a +Statement [517] (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ) always clobbers reg byte a +Statement [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a +Statement [519] (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ) always clobbers reg byte a +Statement [520] (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ) always clobbers reg byte a +Statement [527] *((byte*) render_screen_original::screen#5) ← (const byte) render_screen_original::SPACE#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ) always clobbers reg byte a reg byte y +Statement [529] *((byte*) render_screen_original::cols#4) ← (const byte) BLACK#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ) always clobbers reg byte a reg byte y +Statement [534] *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ) always clobbers reg byte a reg byte y +Statement [537] *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ) always clobbers reg byte a reg byte y +Statement [543] *((byte*) render_screen_original::screen#7) ← (const byte) render_screen_original::SPACE#0 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y +Statement [545] *((byte*) render_screen_original::cols#6) ← (const byte) BLACK#0 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y +Statement [552] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a +Statement [553] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0 [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a Statement [563] if(*((const byte*) RASTER#0)<(byte) sprites_irq::raster_sprite_gfx_modify#0) goto sprites_irq::@8 [ render_screen_showing#0 irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::raster_sprite_gfx_modify#0 ] ( [ render_screen_showing#0 irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::raster_sprite_gfx_modify#0 ] ) always clobbers reg byte a Statement [565] if((byte) render_screen_showing#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sprites_irq::@1 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::ptr#0 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::ptr#0 ] ) always clobbers reg byte a -Statement [572] (byte) irq_cnt#1 ? ++ (byte) irq_cnt#0 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte y +Statement [572] (byte) irq_cnt#1 ← ++ (byte) irq_cnt#0 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte y Statement [573] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) 9) goto sprites_irq::@3 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte a Statement [574] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) $a) goto sprites_irq::@4 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a -Statement [575] (byte) irq_raster_next#3 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [576] (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [577] (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#3 ] ( [ irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [579] *((const byte*) RASTER#0) ? (byte) irq_raster_next#4 [ ] ( [ ] ) always clobbers reg byte a -Statement [580] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 [ ] ( [ ] ) always clobbers reg byte a +Statement [575] (byte) irq_raster_next#3 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [576] (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [577] (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#3 ] ( [ irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [579] *((const byte*) RASTER#0) ← (byte) irq_raster_next#4 [ ] ( [ ] ) always clobbers reg byte a +Statement [580] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 [ ] ( [ ] ) always clobbers reg byte a Statement [581] return [ ] ( [ ] ) always clobbers reg byte a reg byte x reg byte y -Statement [582] (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a -Statement [583] (byte) irq_raster_next#2 ? (const byte) IRQ_RASTER_FIRST#0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a -Statement [584] (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a reg byte x -Statement [585] (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#2 ] ( [ irq_raster_next#2 ] ) always clobbers reg byte a reg byte x -Statement [586] (byte) irq_raster_next#1 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a reg byte x -Statement [587] (byte) irq_sprite_ypos#1 ? (const byte) SPRITES_FIRST_YPOS#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a -Statement [589] (byte) irq_sprite_ptr#1 ? (const byte) sprites_irq::toSpritePtr2_return#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a -Statement [1] (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a -Statement [6] (byte) irq_raster_next#0 ? (const byte) IRQ_RASTER_FIRST#0 [ ] ( ) always clobbers reg byte a -Statement [7] (byte) irq_sprite_ypos#0 ? (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 [ ] ( ) always clobbers reg byte a -Statement [9] (byte) irq_sprite_ptr#0 ? (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( ) always clobbers reg byte a -Statement [10] (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a -Statement [32] (byte*~) current_piece_gfx#118 ? (byte*) current_piece_gfx#74 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a -Statement [37] (byte*~) current_piece#96 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a +Statement [582] (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a +Statement [583] (byte) irq_raster_next#2 ← (const byte) IRQ_RASTER_FIRST#0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a +Statement [584] (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a reg byte x +Statement [585] (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#2 ] ( [ irq_raster_next#2 ] ) always clobbers reg byte a reg byte x +Statement [586] (byte) irq_raster_next#1 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a reg byte x +Statement [587] (byte) irq_sprite_ypos#1 ← (const byte) SPRITES_FIRST_YPOS#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a +Statement [589] (byte) irq_sprite_ptr#1 ← (const byte) sprites_irq::toSpritePtr2_return#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a +Statement [1] (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a +Statement [6] (byte) irq_raster_next#0 ← (const byte) IRQ_RASTER_FIRST#0 [ ] ( ) always clobbers reg byte a +Statement [7] (byte) irq_sprite_ypos#0 ← (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 [ ] ( ) always clobbers reg byte a +Statement [9] (byte) irq_sprite_ptr#0 ← (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( ) always clobbers reg byte a +Statement [10] (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( ) always clobbers reg byte a +Statement [32] (byte*~) current_piece_gfx#118 ← (byte*) current_piece_gfx#74 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#104 current_ypos#6 current_xpos#128 current_xpos#103 current_piece_gfx#118 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a +Statement [37] (byte*~) current_piece#96 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ( main:12 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 current_piece#96 current_movedown_slow#1 game_over#52 ] ) always clobbers reg byte a Statement [39] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto main::@2 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 ] ) always clobbers reg byte a Statement [48] if((byte) game_over#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@4 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#16 main::key_event#0 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#16 main::key_event#0 ] ) always clobbers reg byte a -Statement [60] (byte*~) current_piece_gfx#119 ? (byte*) current_piece_gfx#18 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ) always clobbers reg byte a -Statement [70] (byte) render_screen_render#11 ? (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#16 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#16 render_screen_render#11 ] ) always clobbers reg byte a -Statement [71] (byte) render_screen_show#13 ? (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#13 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#13 render_screen_render#11 ] ) always clobbers reg byte a +Statement [60] (byte*~) current_piece_gfx#119 ← (byte*) current_piece_gfx#18 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ( main:12 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 current_ypos#105 render_screen_render#69 current_xpos#129 current_piece_gfx#119 ] ) always clobbers reg byte a +Statement [70] (byte) render_screen_render#11 ← (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#16 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#16 render_screen_render#11 ] ) always clobbers reg byte a +Statement [71] (byte) render_screen_show#13 ← (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 [ render_screen_show#13 render_screen_render#11 ] ( main:12::render_screen_swap:69 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_show#13 render_screen_render#11 ] ) always clobbers reg byte a Statement [73] if((byte) render_screen_render#18==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_score::@1 [ render_screen_render#18 lines_bcd#15 level_bcd#17 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a -Statement [76] (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ) always clobbers reg byte a -Statement [79] (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ) always clobbers reg byte a -Statement [82] (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ) always clobbers reg byte a -Statement [85] (byte) render_bcd::bcd#3 ? > (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ) always clobbers reg byte a -Statement [86] (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ) always clobbers reg byte a -Statement [88] (byte) render_bcd::bcd#4 ? < (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ) always clobbers reg byte a -Statement [89] (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ) always clobbers reg byte a -Statement [91] (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ) always clobbers reg byte a -Statement [96] (byte*) render_bcd::screen_pos#0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 [ render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte a -Statement [98] (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ) always clobbers reg byte a -Statement [100] *((byte*) render_bcd::screen_pos#0) ? (byte~) render_bcd::$6 [ render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte y -Statement [103] (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f [ render_bcd::screen_pos#3 render_bcd::$3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 render_bcd::$3 ] ) always clobbers reg byte a -Statement [105] *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 [ render_bcd::screen_pos#3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 ] ) always clobbers reg byte y -Statement [106] (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 [ ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a -Statement [112] (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ) always clobbers reg byte a -Statement [114] (byte*~) render_next::next_piece_gfx#9 ? (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) [ render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ) always clobbers reg byte a -Statement [117] (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ) always clobbers reg byte a reg byte y -Statement [120] *((byte*) render_next::screen_next_area#5) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y -Statement [124] (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ) always clobbers reg byte a -Statement [128] *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y -Statement [130] (byte) render_moving::ypos2#0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ) always clobbers reg byte a +Statement [76] (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#0 ] ) always clobbers reg byte a +Statement [79] (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#1 ] ) always clobbers reg byte a +Statement [82] (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen#2 ] ) always clobbers reg byte a +Statement [85] (byte) render_bcd::bcd#3 ← > (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 ] ) always clobbers reg byte a +Statement [86] (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#3 render_bcd::screen#3 ] ) always clobbers reg byte a +Statement [88] (byte) render_bcd::bcd#4 ← < (word) lines_bcd#15 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 ] ) always clobbers reg byte a +Statement [89] (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#4 render_bcd::screen#4 ] ) always clobbers reg byte a +Statement [91] (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#3 [ render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ( main:12::render_score:67 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen#5 ] ) always clobbers reg byte a +Statement [96] (byte*) render_bcd::screen_pos#0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 [ render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::only_low#6 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte a +Statement [98] (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 render_bcd::$5 ] ) always clobbers reg byte a +Statement [100] *((byte*) render_bcd::screen_pos#0) ← (byte~) render_bcd::$6 [ render_bcd::bcd#6 render_bcd::screen_pos#0 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::bcd#6 render_bcd::screen_pos#0 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::bcd#6 render_bcd::screen_pos#0 ] ) always clobbers reg byte y +Statement [103] (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f [ render_bcd::screen_pos#3 render_bcd::$3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 render_bcd::$3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 render_bcd::$3 ] ) always clobbers reg byte a +Statement [105] *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 [ render_bcd::screen_pos#3 ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 render_bcd::screen_pos#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_bcd::screen_pos#3 ] ) always clobbers reg byte y +Statement [106] (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 [ ] ( main:12::render_score:67::render_bcd:78 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:81 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:84 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:87 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:90 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 render_score::screen#3 ] main:12::render_score:67::render_bcd:93 [ render_screen_show#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 score_bcd#14 level#17 render_screen_render#18 lines_bcd#15 level_bcd#17 ] ) always clobbers reg byte a +Statement [112] (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 next_piece_idx#12 render_next::screen_next_area#11 render_next::$4 ] ) always clobbers reg byte a +Statement [114] (byte*~) render_next::next_piece_gfx#9 ← (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) [ render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::screen_next_area#11 render_next::next_piece_char#0 render_next::next_piece_gfx#9 ] ) always clobbers reg byte a +Statement [117] (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#2 render_next::screen_next_area#5 render_next::c#2 render_next::cell#0 ] ) always clobbers reg byte a reg byte y +Statement [120] *((byte*) render_next::screen_next_area#5) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y +Statement [124] (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#4 ] ) always clobbers reg byte a +Statement [128] *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#0 [ render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ( main:12::render_next:36 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] main:12::render_next:65 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_next::next_piece_char#0 render_next::l#7 render_next::next_piece_gfx#1 render_next::screen_next_area#5 render_next::c#2 ] ) always clobbers reg byte a reg byte y +Statement [130] (byte) render_moving::ypos2#0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#0 ] ) always clobbers reg byte a Statement [132] if((byte) render_moving::ypos2#2>(byte/signed byte/word/signed word/dword/signed dword) 2) goto render_moving::@2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 ] ) always clobbers reg byte a -Statement [133] (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ) always clobbers reg byte a -Statement [139] (byte~) render_moving::$2 ? (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ) always clobbers reg byte a -Statement [140] (byte*) render_moving::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ) always clobbers reg byte a -Statement [143] (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ) always clobbers reg byte a -Statement [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ? (byte) current_piece_char#68 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ) always clobbers reg byte a -Statement [152] (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ) always clobbers reg byte a -Statement [153] (byte~) render_playfield::$3 ? (byte) render_screen_render#22 + (byte~) render_playfield::$2 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ) always clobbers reg byte a -Statement [154] (byte*) render_playfield::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ) always clobbers reg byte a -Statement [156] *((byte*) render_playfield::screen_line#2) ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ) always clobbers reg byte a reg byte y +Statement [133] (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#1 ] ) always clobbers reg byte a +Statement [139] (byte~) render_moving::$2 ← (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::$2 ] ) always clobbers reg byte a +Statement [140] (byte*) render_moving::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::i#3 render_moving::l#4 render_moving::screen_line#0 ] ) always clobbers reg byte a +Statement [143] (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::screen_line#0 render_moving::i#4 render_moving::xpos#2 render_moving::c#2 render_moving::current_cell#0 ] ) always clobbers reg byte a +Statement [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ← (byte) current_piece_char#68 [ render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ( main:12::render_moving:34 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] main:12::render_moving:62 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#33 current_xpos#59 current_piece_gfx#64 current_piece_char#68 render_moving::ypos2#2 render_moving::l#4 render_moving::i#2 render_moving::screen_line#0 render_moving::xpos#2 render_moving::c#2 ] ) always clobbers reg byte a +Statement [152] (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$2 ] ) always clobbers reg byte a +Statement [153] (byte~) render_playfield::$3 ← (byte) render_screen_render#22 + (byte~) render_playfield::$2 [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::$3 ] ) always clobbers reg byte a +Statement [154] (byte*) render_playfield::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#3 render_playfield::screen_line#0 ] ) always clobbers reg byte a +Statement [156] *((byte*) render_playfield::screen_line#2) ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) [ render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ( main:12::render_playfield:29 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 current_movedown_slow#1 game_over#52 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] main:12::render_playfield:56 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_orientation#17 current_piece_gfx#18 current_xpos#19 current_ypos#19 game_over#15 next_piece_idx#16 keyboard_events_size#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 render_screen_render#22 render_playfield::l#2 render_playfield::i#2 render_playfield::screen_line#2 render_playfield::c#2 ] ) always clobbers reg byte a reg byte y Statement [169] if((byte) game_over#15==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_movement::@1 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_orientation#20 current_piece_gfx#20 current_xpos#22 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_orientation#20 current_piece_gfx#20 current_xpos#22 ] ) always clobbers reg byte a -Statement [176] (byte) play_movement::render#2 ? (byte) play_movement::render#1 + (byte~) play_movement::$3 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ) always clobbers reg byte a -Statement [181] (byte) play_movement::return#0 ? (byte) play_movement::render#2 + (byte~) play_movement::$4 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ) always clobbers reg byte a -Statement [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ) always clobbers reg byte a -Statement [192] (byte*~) current_piece#101 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ) always clobbers reg byte a -Statement [198] (byte*) current_piece_gfx#7 ? (byte*) current_piece#15 + (byte) current_orientation#7 [ current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ) always clobbers reg byte a -Statement [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ) always clobbers reg byte a -Statement [202] (byte*) play_collision::piece_gfx#0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 [ play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ) always clobbers reg byte a -Statement [203] (byte) play_collision::ypos2#0 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ) always clobbers reg byte a -Statement [205] (byte*) play_collision::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ) always clobbers reg byte a +Statement [176] (byte) play_movement::render#2 ← (byte) play_movement::render#1 + (byte~) play_movement::$3 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_movement::render#2 ] ) always clobbers reg byte a +Statement [181] (byte) play_movement::return#0 ← (byte) play_movement::render#2 + (byte~) play_movement::$4 [ current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ( main:12::play_movement:51 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece#15 current_piece_char#16 current_ypos#19 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::return#0 current_orientation#25 current_piece_gfx#21 current_xpos#26 ] ) always clobbers reg byte a +Statement [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$5 ] ) always clobbers reg byte a +Statement [192] (byte*~) current_piece#101 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#3 play_collision::ypos#3 play_collision::orientation#3 current_piece#101 ] ) always clobbers reg byte a +Statement [198] (byte*) current_piece_gfx#7 ← (byte*) current_piece#15 + (byte) current_orientation#7 [ current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_xpos#26 current_orientation#7 current_piece_gfx#7 ] ) always clobbers reg byte a +Statement [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 [ current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ( main:12::play_movement:51::play_move_rotate:178 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::$7 ] ) always clobbers reg byte a +Statement [202] (byte*) play_collision::piece_gfx#0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 [ play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::ypos#5 play_collision::xpos#6 play_collision::piece_gfx#0 ] ) always clobbers reg byte a +Statement [203] (byte) play_collision::ypos2#0 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#0 ] ) always clobbers reg byte a +Statement [205] (byte*) play_collision::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::i#3 play_collision::l#6 play_collision::playfield_line#0 ] ) always clobbers reg byte a Statement [209] if(*((byte*) play_collision::piece_gfx#0 + (byte) play_collision::i#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@3 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ) always clobbers reg byte a -Statement [213] (byte~) play_collision::$7 ? (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ) always clobbers reg byte a +Statement [213] (byte~) play_collision::$7 ← (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 play_collision::$7 ] ) always clobbers reg byte a Statement [216] if(*((byte*) play_collision::playfield_line#0 + (byte) play_collision::col#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@3 [ play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ( main:12::play_movement:51::play_move_rotate:178::play_collision:193 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::render#2 current_piece#15 current_ypos#19 current_orientation#20 current_piece_gfx#20 current_xpos#26 play_move_rotate::orientation#3 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:231 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_leftright:173::play_collision:242 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_collision:266 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:25::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_spawn_current:27::play_collision:295 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279::play_collision:295 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_collision::xpos#6 play_collision::piece_gfx#0 play_collision::ypos2#2 play_collision::l#6 play_collision::playfield_line#0 play_collision::col#2 play_collision::c#2 play_collision::i#1 ] ) always clobbers reg byte a -Statement [230] (byte*~) current_piece#100 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ) always clobbers reg byte a -Statement [241] (byte*~) current_piece#99 ? (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ) always clobbers reg byte a +Statement [230] (byte*~) current_piece#100 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#100 play_collision::orientation#2 play_collision::ypos#2 play_collision::xpos#2 ] ) always clobbers reg byte a +Statement [241] (byte*~) current_piece#99 ← (byte*) current_piece#15 [ current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ( main:12::play_movement:51::play_move_leftright:173 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 current_movedown_slow#21 current_piece_char#16 game_over#15 next_piece_idx#16 current_movedown_counter#14 lines_bcd#15 score_bcd#14 level#17 level_bcd#17 play_movement::key_event#0 play_movement::render#1 current_piece_gfx#20 current_piece#15 current_ypos#19 current_orientation#20 current_xpos#22 current_piece#99 play_collision::orientation#1 play_collision::ypos#1 play_collision::xpos#1 ] ) always clobbers reg byte a Statement [255] if((byte) current_movedown_counter#12<(const byte) current_movedown_fast#0) goto play_move_down::@2 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 ] ) always clobbers reg byte a Statement [258] if((byte) current_movedown_counter#12<(byte) current_movedown_slow#14) goto play_move_down::@3 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#7 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#7 ] ) always clobbers reg byte a -Statement [265] (byte*~) current_piece#98 ? (byte*) current_piece#10 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ) always clobbers reg byte a -Statement [280] (byte*~) current_piece#104 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ) always clobbers reg byte a -Statement [287] (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a -Statement [288] (byte) current_piece_char#5 ? *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) [ current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a -Statement [289] (byte*) current_piece_gfx#74 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 [ current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a -Statement [290] (byte) current_xpos#103 ? *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) [ current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a -Statement [291] (byte) current_ypos#6 ? *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] ) always clobbers reg byte a -Statement [294] (byte*~) current_piece#102 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ) always clobbers reg byte a +Statement [265] (byte*~) current_piece#98 ← (byte*) current_piece#10 [ current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece#98 play_collision::orientation#0 play_collision::ypos#0 play_collision::xpos#0 ] ) always clobbers reg byte a +Statement [280] (byte*~) current_piece#104 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ( main:12::play_movement:51::play_move_down:165 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 game_over#52 current_piece#104 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 ] ) always clobbers reg byte a +Statement [287] (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [288] (byte) current_piece_char#5 ← *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) [ current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [289] (byte*) current_piece_gfx#74 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 [ current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [290] (byte) current_xpos#103 ← *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) [ current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 play_spawn_current::current_piece_idx#0 ] ) always clobbers reg byte a +Statement [291] (byte) current_ypos#6 ← *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#65 ] ) always clobbers reg byte a +Statement [294] (byte*~) current_piece#102 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 current_piece#102 play_collision::ypos#4 play_collision::xpos#4 game_over#65 ] ) always clobbers reg byte a Statement [301] if((byte) play_spawn_current::piece_idx#2==(byte/signed byte/word/signed word/dword/signed dword) 7) goto play_spawn_current::@3 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::piece_idx#2 play_spawn_current::$0 game_over#52 ] ) always clobbers reg byte a -Statement [307] (byte) play_spawn_current::piece_idx#1 ? (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ) always clobbers reg byte a -Statement [312] (byte~) play_update_score::$2 ? < (word) lines_bcd#19 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ) always clobbers reg byte a -Statement [314] (byte~) play_update_score::$4 ? (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ) always clobbers reg byte a -Statement [315] (dword) play_update_score::add_bcd#0 ? *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ) always clobbers reg byte a -Statement [317] (word) lines_bcd#30 ? (word) lines_bcd#19 + (byte) play_update_score::removed#0 [ current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ) always clobbers reg byte a -Statement [318] (dword) score_bcd#30 ? (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ) always clobbers reg byte a -Statement [320] (byte~) play_update_score::$5 ? < (word) lines_bcd#30 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ) always clobbers reg byte a +Statement [307] (byte) play_spawn_current::piece_idx#1 ← (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ( main:12::play_spawn_current:25 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_spawn_current:27 [ current_movedown_slow#1 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] main:12::play_movement:51::play_move_down:165::play_spawn_current:279 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 lines_bcd#17 score_bcd#16 level#19 current_movedown_slow#23 level_bcd#19 current_ypos#6 current_xpos#103 current_piece_gfx#74 current_piece_char#5 play_spawn_current::$0 game_over#52 play_spawn_current::piece_idx#1 ] ) always clobbers reg byte a +Statement [312] (byte~) play_update_score::$2 ← < (word) lines_bcd#19 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::$2 ] ) always clobbers reg byte a +Statement [314] (byte~) play_update_score::$4 ← (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::$4 ] ) always clobbers reg byte a +Statement [315] (dword) play_update_score::add_bcd#0 ← *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) [ current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_update_score::removed#0 play_update_score::lines_before#0 play_update_score::add_bcd#0 ] ) always clobbers reg byte a +Statement [317] (word) lines_bcd#30 ← (word) lines_bcd#19 + (byte) play_update_score::removed#0 [ current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 score_bcd#18 level#10 level_bcd#11 play_update_score::lines_before#0 play_update_score::add_bcd#0 lines_bcd#30 ] ) always clobbers reg byte a +Statement [318] (dword) score_bcd#30 ← (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 ] ) always clobbers reg byte a +Statement [320] (byte~) play_update_score::$5 ← < (word) lines_bcd#30 [ current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 current_movedown_slow#14 level#10 level_bcd#11 play_update_score::lines_before#0 lines_bcd#30 score_bcd#30 play_update_score::$5 ] ) always clobbers reg byte a Statement [328] if((byte) level#21>(byte/signed byte/word/signed word/dword/signed dword) $1d) goto play_increase_level::@1 [ level_bcd#11 level#21 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level_bcd#11 level#21 ] ) always clobbers reg byte a -Statement [329] (byte) current_movedown_slow#10 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) [ level_bcd#11 level#21 current_movedown_slow#10 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level_bcd#11 level#21 current_movedown_slow#10 ] ) always clobbers reg byte a reg byte y -Statement [332] (byte~) play_increase_level::$1 ? (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f [ level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ) always clobbers reg byte a -Statement [334] (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 [ level#21 current_movedown_slow#69 level_bcd#8 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#8 ] ) always clobbers reg byte a reg byte x -Statement [338] (byte) play_increase_level::b4#0 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ) always clobbers reg byte a -Statement [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ) always clobbers reg byte a -Statement [356] (byte) play_remove_lines::w#2 ? (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 [ play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ) always clobbers reg byte a -Statement [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ play_remove_lines::removed#8 play_remove_lines::w#6 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::removed#8 play_remove_lines::w#6 ] ) always clobbers reg byte a -Statement [367] (byte) play_lock_current::ypos2#0 ? (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ) always clobbers reg byte a -Statement [369] (byte*) play_lock_current::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ) always clobbers reg byte a +Statement [329] (byte) current_movedown_slow#10 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) [ level_bcd#11 level#21 current_movedown_slow#10 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level_bcd#11 level#21 current_movedown_slow#10 ] ) always clobbers reg byte a reg byte y +Statement [332] (byte~) play_increase_level::$1 ← (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f [ level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#21 play_increase_level::$1 ] ) always clobbers reg byte a +Statement [334] (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 [ level#21 current_movedown_slow#69 level_bcd#8 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#8 ] ) always clobbers reg byte a reg byte x +Statement [338] (byte) play_increase_level::b4#0 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 play_increase_level::b4#0 ] ) always clobbers reg byte a +Statement [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) [ level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ( main:12::play_movement:51::play_move_down:165::play_update_score:277::play_increase_level:324 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 game_over#10 next_piece_idx#10 lines_bcd#30 score_bcd#30 level#21 current_movedown_slow#69 level_bcd#64 play_increase_level::b#2 ] ) always clobbers reg byte a +Statement [356] (byte) play_remove_lines::w#2 ← (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 [ play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::y#8 play_remove_lines::removed#11 play_remove_lines::r#1 play_remove_lines::w#2 ] ) always clobbers reg byte a +Statement [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ play_remove_lines::removed#8 play_remove_lines::w#6 ] ( main:12::play_movement:51::play_move_down:165::play_remove_lines:273 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 play_remove_lines::removed#8 play_remove_lines::w#6 ] ) always clobbers reg byte a +Statement [367] (byte) play_lock_current::ypos2#0 ← (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#0 ] ) always clobbers reg byte a +Statement [369] (byte*) play_lock_current::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::i#3 play_lock_current::l#6 play_lock_current::playfield_line#0 ] ) always clobbers reg byte a Statement [373] if(*((byte*) current_piece_gfx#112 + (byte) play_lock_current::i#2)==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_lock_current::@3 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a -Statement [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ? (byte) current_piece_char#10 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a -Statement [385] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ) always clobbers reg byte a -Statement [387] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a -Statement [388] (byte) keyboard_event_pressed::return#11 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#11 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::return#11 ] ) always clobbers reg byte a +Statement [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ← (byte) current_piece_char#10 [ current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ( main:12::play_movement:51::play_move_down:165::play_lock_current:271 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_piece_char#10 current_piece_gfx#112 current_xpos#122 play_lock_current::ypos2#2 play_lock_current::l#6 play_lock_current::playfield_line#0 play_lock_current::col#2 play_lock_current::c#2 play_lock_current::i#1 ] ) always clobbers reg byte a +Statement [385] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::keycode#5 keyboard_event_pressed::$0 ] ) always clobbers reg byte a +Statement [387] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::row_bits#0 keyboard_event_pressed::$1 ] ) always clobbers reg byte a +Statement [388] (byte) keyboard_event_pressed::return#11 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) [ keyboard_event_pressed::return#11 ] ( main:12::play_movement:51::play_move_down:165::keyboard_event_pressed:251 [ render_screen_show#16 render_screen_render#18 keyboard_events_size#16 play_movement::key_event#0 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 current_movedown_counter#12 play_move_down::movedown#10 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:407 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:413 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#11 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:419 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#12 keyboard_event_pressed::return#11 ] main:12::keyboard_event_scan:43::keyboard_event_pressed:425 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#13 keyboard_event_pressed::return#11 ] ) always clobbers reg byte a Statement [390] if((byte) keyboard_events_size#13==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_get::@return [ keyboard_events_size#13 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a -Statement [392] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_events_size#4 keyboard_event_get::return#1 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#4 keyboard_event_get::return#1 ] ) always clobbers reg byte y +Statement [392] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) [ keyboard_events_size#4 keyboard_event_get::return#1 ] ( main:12::keyboard_event_get:45 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#4 keyboard_event_get::return#1 ] ) always clobbers reg byte y Statement [401] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_event_scan::row_scan#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_event_scan::row_scan#0 ] ) always clobbers reg byte a reg byte y -Statement [402] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a reg byte x +Statement [402] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_events_size#30 keyboard_event_scan::keycode#1 ] ) always clobbers reg byte a reg byte x Statement [405] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 [ keyboard_events_size#13 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_event_scan::row#1 keyboard_event_scan::keycode#14 ] ) always clobbers reg byte a -Statement [417] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#13 keyboard_modifiers#3 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#3 ] ) always clobbers reg byte a -Statement [423] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#13 keyboard_modifiers#4 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#4 ] ) always clobbers reg byte a -Statement [429] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#13 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a -Statement [432] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ) always clobbers reg byte a -Statement [433] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ) always clobbers reg byte a +Statement [417] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 [ keyboard_events_size#13 keyboard_modifiers#3 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#3 ] ) always clobbers reg byte a +Statement [423] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 [ keyboard_events_size#13 keyboard_modifiers#4 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 keyboard_modifiers#4 ] ) always clobbers reg byte a +Statement [429] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 [ keyboard_events_size#13 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_events_size#13 ] ) always clobbers reg byte a +Statement [432] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$15 ] ) always clobbers reg byte a +Statement [433] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$16 ] ) always clobbers reg byte a Statement [435] if((byte) keyboard_events_size#10==(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a -Statement [436] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a -Statement [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a reg byte y -Statement [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ) always clobbers reg byte a reg byte y -Statement [445] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ) always clobbers reg byte a -Statement [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte/word/dword~) keyboard_event_scan::$23 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte y -Statement [448] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 ] ) always clobbers reg byte a -Statement [449] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [436] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::event_type#0 ] ) always clobbers reg byte a +Statement [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte) keyboard_event_scan::keycode#10 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte a reg byte y +Statement [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 [ keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#15 keyboard_events_size#29 ] ) always clobbers reg byte a reg byte y +Statement [445] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 keyboard_event_scan::$23 ] ) always clobbers reg byte a +Statement [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte/word/dword~) keyboard_event_scan::$23 [ keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ( main:12::keyboard_event_scan:43 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::row_scan#0 keyboard_event_scan::col#2 keyboard_event_scan::keycode#10 keyboard_events_size#10 ] ) always clobbers reg byte y +Statement [448] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 ] ) always clobbers reg byte a +Statement [449] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:12::keyboard_event_scan:43::keyboard_matrix_read:398 [ render_screen_show#16 render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level#10 level_bcd#11 keyboard_event_scan::row#2 keyboard_event_scan::keycode#11 keyboard_events_size#30 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a Statement [451] if((byte) render_screen_show#16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_show::toD0181 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a -Statement [455] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y -Statement [456] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y -Statement [457] (byte) render_screen_showing#1 ? (byte) render_screen_show#16 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a -Statement [462] (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ) always clobbers reg byte a -Statement [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a -Statement [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a -Statement [465] (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ) always clobbers reg byte a -Statement [466] (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ) always clobbers reg byte a -Statement [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ? (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 [ ] ( main:12::play_init:23 [ ] ) always clobbers reg byte a -Statement [470] (byte) current_movedown_slow#1 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) [ current_movedown_slow#1 ] ( main:12::play_init:23 [ current_movedown_slow#1 ] ) always clobbers reg byte a -Statement [472] (byte) play_init::b4#0 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ) always clobbers reg byte a -Statement [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) [ current_movedown_slow#1 play_init::b#2 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 ] ) always clobbers reg byte a -Statement [478] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [455] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y +Statement [456] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a reg byte y +Statement [457] (byte) render_screen_showing#1 ← (byte) render_screen_show#16 [ render_screen_show#16 level#10 ] ( main:12::render_show:41 [ render_screen_render#18 current_movedown_slow#14 current_piece#10 current_piece_char#10 current_orientation#13 current_piece_gfx#112 current_xpos#122 current_ypos#11 game_over#10 next_piece_idx#10 keyboard_events_size#19 current_movedown_counter#16 lines_bcd#19 score_bcd#18 level_bcd#11 render_screen_show#16 level#10 ] ) always clobbers reg byte a +Statement [462] (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 play_init::$2 ] ) always clobbers reg byte a +Statement [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a +Statement [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#2 play_init::idx#2 ] ) always clobbers reg byte a +Statement [465] (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::idx#2 play_init::pli#1 ] ) always clobbers reg byte a +Statement [466] (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ( main:12::play_init:23 [ play_init::j#2 play_init::pli#1 play_init::idx#1 ] ) always clobbers reg byte a +Statement [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ← (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 [ ] ( main:12::play_init:23 [ ] ) always clobbers reg byte a +Statement [470] (byte) current_movedown_slow#1 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) [ current_movedown_slow#1 ] ( main:12::play_init:23 [ current_movedown_slow#1 ] ) always clobbers reg byte a +Statement [472] (byte) play_init::b4#0 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 play_init::b4#0 ] ) always clobbers reg byte a +Statement [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) [ current_movedown_slow#1 play_init::b#2 ] ( main:12::play_init:23 [ current_movedown_slow#1 play_init::b#2 ] ) always clobbers reg byte a +Statement [478] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a Statement asm { ldaCIA1_INTERRUPT } always clobbers reg byte a -Statement [480] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [481] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [482] *((const byte*) CIA1_INTERRUPT#0) ? (const byte) CIA_INTERRUPT_CLEAR#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [483] *((const byte*) VIC_CONTROL#0) ? *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [484] *((const byte*) RASTER#0) ? (const byte) IRQ_RASTER_FIRST#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [485] *((const byte*) IRQ_ENABLE#0) ? (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [486] *((const void()**) HARDWARE_IRQ#0) ? &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a -Statement [489] *((const byte*) SPRITES_ENABLE#0) ? (byte/signed byte/word/signed word/dword/signed dword) $f [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [490] *((const byte*) SPRITES_MC#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [491] *((const byte*) SPRITES_EXPAND_Y#0) ? *((const byte*) SPRITES_MC#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [492] *((const byte*) SPRITES_EXPAND_X#0) ? *((const byte*) SPRITES_EXPAND_Y#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a -Statement [494] (byte) sprites_init::s2#0 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ) always clobbers reg byte a -Statement [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a -Statement [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (const byte) BLACK#0 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a -Statement [497] (byte) sprites_init::xpos#1 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 [ sprites_init::s#2 sprites_init::xpos#1 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#1 ] ) always clobbers reg byte a -Statement [502] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [504] *((const byte*) CIA2_PORT_A#0) ? (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [505] *((const byte*) D011#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [506] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [507] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [508] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [509] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [510] *((const byte*) BGCOL4#0) ? (const byte) GREY#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a -Statement [515] (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ) always clobbers reg byte a -Statement [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a -Statement [517] (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ) always clobbers reg byte a -Statement [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a -Statement [519] (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ) always clobbers reg byte a -Statement [520] (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ) always clobbers reg byte a -Statement [527] *((byte*) render_screen_original::screen#5) ? (const byte) render_screen_original::SPACE#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ) always clobbers reg byte a reg byte y -Statement [529] *((byte*) render_screen_original::cols#4) ? (const byte) BLACK#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ) always clobbers reg byte a reg byte y -Statement [534] *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ) always clobbers reg byte a reg byte y -Statement [537] *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ) always clobbers reg byte a reg byte y -Statement [543] *((byte*) render_screen_original::screen#7) ? (const byte) render_screen_original::SPACE#0 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y -Statement [545] *((byte*) render_screen_original::cols#6) ? (const byte) BLACK#0 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y -Statement [552] *((const word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a -Statement [553] *((const byte*) SID_VOICE3_CONTROL#0) ? (const byte) SID_CONTROL_NOISE#0 [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a +Statement [480] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [481] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [482] *((const byte*) CIA1_INTERRUPT#0) ← (const byte) CIA_INTERRUPT_CLEAR#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [483] *((const byte*) VIC_CONTROL#0) ← *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [484] *((const byte*) RASTER#0) ← (const byte) IRQ_RASTER_FIRST#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [485] *((const byte*) IRQ_ENABLE#0) ← (const byte) IRQ_RASTER#0 [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [486] *((const void()**) HARDWARE_IRQ#0) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() [ ] ( main:12::sprites_irq_init:21 [ ] ) always clobbers reg byte a +Statement [489] *((const byte*) SPRITES_ENABLE#0) ← (byte/signed byte/word/signed word/dword/signed dword) $f [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [490] *((const byte*) SPRITES_MC#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [491] *((const byte*) SPRITES_EXPAND_Y#0) ← *((const byte*) SPRITES_MC#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [492] *((const byte*) SPRITES_EXPAND_X#0) ← *((const byte*) SPRITES_EXPAND_Y#0) [ ] ( main:12::sprites_init:19 [ ] ) always clobbers reg byte a +Statement [494] (byte) sprites_init::s2#0 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 sprites_init::s2#0 ] ) always clobbers reg byte a +Statement [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a +Statement [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (const byte) BLACK#0 [ sprites_init::s#2 sprites_init::xpos#2 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#2 ] ) always clobbers reg byte a +Statement [497] (byte) sprites_init::xpos#1 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 [ sprites_init::s#2 sprites_init::xpos#1 ] ( main:12::sprites_init:19 [ sprites_init::s#2 sprites_init::xpos#1 ] ) always clobbers reg byte a +Statement [502] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [504] *((const byte*) CIA2_PORT_A#0) ← (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [505] *((const byte*) D011#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [506] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [507] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [508] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [509] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0) [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [510] *((const byte*) BGCOL4#0) ← (const byte) GREY#0 [ ] ( main:12::render_init:17 [ ] ) always clobbers reg byte a +Statement [515] (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$13 ] ) always clobbers reg byte a +Statement [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a +Statement [517] (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 render_init::$14 ] ) always clobbers reg byte a +Statement [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#2 render_init::li_2#2 ] ) always clobbers reg byte a +Statement [519] (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_2#2 render_init::li_1#1 ] ) always clobbers reg byte a +Statement [520] (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ( main:12::render_init:17 [ render_init::i#2 render_init::li_1#1 render_init::li_2#1 ] ) always clobbers reg byte a +Statement [527] *((byte*) render_screen_original::screen#5) ← (const byte) render_screen_original::SPACE#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::screen#5 render_screen_original::cols#4 render_screen_original::x#4 ] ) always clobbers reg byte a reg byte y +Statement [529] *((byte*) render_screen_original::cols#4) ← (const byte) BLACK#0 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::oscr#4 render_screen_original::ocols#4 render_screen_original::y#6 render_screen_original::cols#4 render_screen_original::x#4 render_screen_original::screen#2 ] ) always clobbers reg byte a reg byte y +Statement [534] *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#2 render_screen_original::screen#6 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 ] ) always clobbers reg byte a reg byte y +Statement [537] *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#2 render_screen_original::cols#5 render_screen_original::x#5 render_screen_original::screen#3 ] ) always clobbers reg byte a reg byte y +Statement [543] *((byte*) render_screen_original::screen#7) ← (const byte) render_screen_original::SPACE#0 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::screen#7 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y +Statement [545] *((byte*) render_screen_original::cols#6) ← (const byte) BLACK#0 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ( main:12::render_init:17::render_screen_original:511 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] main:12::render_init:17::render_screen_original:513 [ render_screen_original::y#6 render_screen_original::screen#10 render_screen_original::oscr#1 render_screen_original::ocols#1 render_screen_original::cols#6 render_screen_original::x#6 ] ) always clobbers reg byte a reg byte y +Statement [552] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a +Statement [553] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0 [ ] ( main:12::sid_rnd_init:15 [ ] ) always clobbers reg byte a Statement [563] if(*((const byte*) RASTER#0)<(byte) sprites_irq::raster_sprite_gfx_modify#0) goto sprites_irq::@8 [ render_screen_showing#0 irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::raster_sprite_gfx_modify#0 ] ( [ render_screen_showing#0 irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::raster_sprite_gfx_modify#0 ] ) always clobbers reg byte a Statement [565] if((byte) render_screen_showing#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sprites_irq::@1 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::ptr#0 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#0 sprites_irq::ptr#0 ] ) always clobbers reg byte a -Statement [572] (byte) irq_cnt#1 ? ++ (byte) irq_cnt#0 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte y +Statement [572] (byte) irq_cnt#1 ← ++ (byte) irq_cnt#0 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte y Statement [573] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) 9) goto sprites_irq::@3 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 irq_cnt#1 ] ) always clobbers reg byte a Statement [574] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) $a) goto sprites_irq::@4 [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_raster_next#0 irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a -Statement [575] (byte) irq_raster_next#3 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [576] (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [577] (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#3 ] ( [ irq_raster_next#3 ] ) always clobbers reg byte a reg byte x -Statement [579] *((const byte*) RASTER#0) ? (byte) irq_raster_next#4 [ ] ( [ ] ) always clobbers reg byte a -Statement [580] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 [ ] ( [ ] ) always clobbers reg byte a +Statement [575] (byte) irq_raster_next#3 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [576] (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#3 ] ( [ irq_sprite_ptr#0 irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [577] (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#3 ] ( [ irq_raster_next#3 ] ) always clobbers reg byte a reg byte x +Statement [579] *((const byte*) RASTER#0) ← (byte) irq_raster_next#4 [ ] ( [ ] ) always clobbers reg byte a +Statement [580] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 [ ] ( [ ] ) always clobbers reg byte a Statement [581] return [ ] ( [ ] ) always clobbers reg byte a reg byte x reg byte y -Statement [582] (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a -Statement [583] (byte) irq_raster_next#2 ? (const byte) IRQ_RASTER_FIRST#0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a -Statement [584] (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a reg byte x -Statement [585] (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#2 ] ( [ irq_raster_next#2 ] ) always clobbers reg byte a reg byte x -Statement [586] (byte) irq_raster_next#1 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a reg byte x -Statement [587] (byte) irq_sprite_ypos#1 ? (const byte) SPRITES_FIRST_YPOS#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a -Statement [589] (byte) irq_sprite_ptr#1 ? (const byte) sprites_irq::toSpritePtr2_return#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a +Statement [582] (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 ] ) always clobbers reg byte a +Statement [583] (byte) irq_raster_next#2 ← (const byte) IRQ_RASTER_FIRST#0 [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ypos#0 irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a +Statement [584] (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_sprite_ptr#0 irq_raster_next#2 ] ( [ irq_sprite_ptr#0 irq_raster_next#2 ] ) always clobbers reg byte a reg byte x +Statement [585] (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 [ irq_raster_next#2 ] ( [ irq_raster_next#2 ] ) always clobbers reg byte a reg byte x +Statement [586] (byte) irq_raster_next#1 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a reg byte x +Statement [587] (byte) irq_sprite_ypos#1 ← (const byte) SPRITES_FIRST_YPOS#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a +Statement [589] (byte) irq_sprite_ptr#1 ← (const byte) sprites_irq::toSpritePtr2_return#0 [ irq_raster_next#1 ] ( [ irq_raster_next#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ render_screen_show#16 render_screen_show#13 ] : zp ZP_BYTE:2 , Potential registers zp ZP_BYTE:3 [ render_screen_render#18 render_screen_render#11 ] : zp ZP_BYTE:3 , Potential registers zp ZP_BYTE:4 [ current_movedown_counter#16 current_movedown_counter#14 current_movedown_counter#12 ] : zp ZP_BYTE:4 , @@ -18347,7 +18347,7 @@ bbegin: jmp b1 //SEG4 @1 b1: -//SEG5 [1] (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 +//SEG5 [1] (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 // The screen currently being showed to the user. $00 for screen 1 / $40 for screen 2. lda #0 sta render_screen_showing @@ -18362,11 +18362,11 @@ b2: jmp b3 //SEG11 @3 b3: -//SEG12 [6] (byte) irq_raster_next#0 ? (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 +//SEG12 [6] (byte) irq_raster_next#0 ← (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 // The raster line of the next IRQ lda #IRQ_RASTER_FIRST sta irq_raster_next -//SEG13 [7] (byte) irq_sprite_ypos#0 ? (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuc1 +//SEG13 [7] (byte) irq_sprite_ypos#0 ← (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuc1 // Y-pos of the sprites on the next IRQ lda #SPRITES_FIRST_YPOS+$15 sta irq_sprite_ypos @@ -18378,11 +18378,11 @@ toSpritePtr1: jmp b5 //SEG16 @5 b5: -//SEG17 [9] (byte) irq_sprite_ptr#0 ? (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuc1 +//SEG17 [9] (byte) irq_sprite_ptr#0 ← (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuc1 // Index of the sprites to show on the next IRQ lda #toSpritePtr1_return+3 sta irq_sprite_ptr -//SEG18 [10] (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 +//SEG18 [10] (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 // Counting the 10 IRQs lda #0 sta irq_cnt @@ -18476,17 +18476,17 @@ main: { jmp b15 //SEG58 main::@15 b15: - //SEG59 [30] (byte~) current_ypos#104 ? (byte) current_ypos#6 -- vbuxx=vbuz1 + //SEG59 [30] (byte~) current_ypos#104 ← (byte) current_ypos#6 -- vbuxx=vbuz1 ldx current_ypos - //SEG60 [31] (byte~) current_xpos#128 ? (byte) current_xpos#103 -- vbuz1=vbuz2 + //SEG60 [31] (byte~) current_xpos#128 ← (byte) current_xpos#103 -- vbuz1=vbuz2 lda current_xpos sta current_xpos_128 - //SEG61 [32] (byte*~) current_piece_gfx#118 ? (byte*) current_piece_gfx#74 -- pbuz1=pbuz2 + //SEG61 [32] (byte*~) current_piece_gfx#118 ← (byte*) current_piece_gfx#74 -- pbuz1=pbuz2 lda current_piece_gfx sta current_piece_gfx_118 lda current_piece_gfx+1 sta current_piece_gfx_118+1 - //SEG62 [33] (byte~) current_piece_char#106 ? (byte) current_piece_char#5 -- vbuz1=vbuz2 + //SEG62 [33] (byte~) current_piece_char#106 ← (byte) current_piece_char#5 -- vbuz1=vbuz2 lda current_piece_char sta current_piece_char_106 //SEG63 [34] call render_moving @@ -18503,7 +18503,7 @@ main: { jmp b16 //SEG70 main::@16 b16: - //SEG71 [35] (byte~) next_piece_idx#84 ? (byte) play_spawn_current::piece_idx#2 -- vbuxx=vbuz1 + //SEG71 [35] (byte~) next_piece_idx#84 ← (byte) play_spawn_current::piece_idx#2 -- vbuxx=vbuz1 ldx play_spawn_current.piece_idx //SEG72 [36] call render_next //SEG73 [108] phi from main::@16 to render_next [phi:main::@16->render_next] @@ -18512,7 +18512,7 @@ main: { //SEG75 [108] phi (byte) render_screen_render#15 = (byte/signed byte/word/signed word/dword/signed dword) $40 [phi:main::@16->render_next#1] -- vbuaa=vbuc1 lda #$40 jsr render_next - //SEG76 [37] (byte*~) current_piece#96 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG76 [37] (byte*~) current_piece#96 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy play_spawn_current._0 lda PIECES,y sta current_piece @@ -18613,11 +18613,11 @@ main: { b18: //SEG123 [45] call keyboard_event_get jsr keyboard_event_get - //SEG124 [46] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + //SEG124 [46] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 jmp b19 //SEG125 main::@19 b19: - //SEG126 [47] (byte) main::key_event#0 ? (byte) keyboard_event_get::return#3 + //SEG126 [47] (byte) main::key_event#0 ← (byte) keyboard_event_get::return#3 //SEG127 [48] if((byte) game_over#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@4 -- vbuz1_eq_0_then_la1 lda game_over cmp #0 @@ -18625,21 +18625,21 @@ main: { jmp b5 //SEG128 main::@5 b5: - //SEG129 [49] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG129 [49] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL jmp b5 //SEG130 main::@4 b4: - //SEG131 [50] (byte) play_movement::key_event#0 ? (byte) main::key_event#0 -- vbuz1=vbuxx + //SEG131 [50] (byte) play_movement::key_event#0 ← (byte) main::key_event#0 -- vbuz1=vbuxx stx play_movement.key_event //SEG132 [51] call play_movement jsr play_movement - //SEG133 [52] (byte) play_movement::return#3 ? (byte) play_movement::return#2 -- vbuaa=vbuz1 + //SEG133 [52] (byte) play_movement::return#3 ← (byte) play_movement::return#2 -- vbuaa=vbuz1 lda play_movement.return jmp b20 //SEG134 main::@20 b20: - //SEG135 [53] (byte) main::render#1 ? (byte) play_movement::return#3 + //SEG135 [53] (byte) main::render#1 ← (byte) play_movement::return#3 jmp b6 //SEG136 main::@6 b6: @@ -18649,7 +18649,7 @@ main: { jmp b7 //SEG138 main::@7 b7: - //SEG139 [55] (byte~) render_screen_render#70 ? (byte) render_screen_render#18 -- vbuxx=vbuz1 + //SEG139 [55] (byte~) render_screen_render#70 ← (byte) render_screen_render#18 -- vbuxx=vbuz1 ldx render_screen_render //SEG140 [56] call render_playfield //SEG141 [150] phi from main::@7 to render_playfield [phi:main::@7->render_playfield] @@ -18659,20 +18659,20 @@ main: { jmp b21 //SEG143 main::@21 b21: - //SEG144 [57] (byte~) current_ypos#105 ? (byte) current_ypos#19 -- vbuxx=vbuz1 + //SEG144 [57] (byte~) current_ypos#105 ← (byte) current_ypos#19 -- vbuxx=vbuz1 ldx current_ypos - //SEG145 [58] (byte~) render_screen_render#69 ? (byte) render_screen_render#18 -- vbuz1=vbuz2 + //SEG145 [58] (byte~) render_screen_render#69 ← (byte) render_screen_render#18 -- vbuz1=vbuz2 lda render_screen_render sta render_screen_render_69 - //SEG146 [59] (byte~) current_xpos#129 ? (byte) current_xpos#19 -- vbuz1=vbuz2 + //SEG146 [59] (byte~) current_xpos#129 ← (byte) current_xpos#19 -- vbuz1=vbuz2 lda current_xpos sta current_xpos_129 - //SEG147 [60] (byte*~) current_piece_gfx#119 ? (byte*) current_piece_gfx#18 -- pbuz1=pbuz2 + //SEG147 [60] (byte*~) current_piece_gfx#119 ← (byte*) current_piece_gfx#18 -- pbuz1=pbuz2 lda current_piece_gfx sta current_piece_gfx_119 lda current_piece_gfx+1 sta current_piece_gfx_119+1 - //SEG148 [61] (byte~) current_piece_char#107 ? (byte) current_piece_char#16 -- vbuz1=vbuz2 + //SEG148 [61] (byte~) current_piece_char#107 ← (byte) current_piece_char#16 -- vbuz1=vbuz2 lda current_piece_char sta current_piece_char_107 //SEG149 [62] call render_moving @@ -18687,9 +18687,9 @@ main: { jmp b22 //SEG156 main::@22 b22: - //SEG157 [63] (byte~) render_screen_render#68 ? (byte) render_screen_render#18 -- vbuaa=vbuz1 + //SEG157 [63] (byte~) render_screen_render#68 ← (byte) render_screen_render#18 -- vbuaa=vbuz1 lda render_screen_render - //SEG158 [64] (byte~) next_piece_idx#85 ? (byte) next_piece_idx#16 -- vbuxx=vbuz1 + //SEG158 [64] (byte~) next_piece_idx#85 ← (byte) next_piece_idx#16 -- vbuxx=vbuz1 ldx next_piece_idx //SEG159 [65] call render_next //SEG160 [108] phi from main::@22 to render_next [phi:main::@22->render_next] @@ -18735,11 +18735,11 @@ main: { //SEG187 render_screen_swap // Swap rendering to the other screen (used for double buffering) render_screen_swap: { - //SEG188 [70] (byte) render_screen_render#11 ? (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG188 [70] (byte) render_screen_render#11 ← (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 lda render_screen_render eor #$40 sta render_screen_render - //SEG189 [71] (byte) render_screen_show#13 ? (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG189 [71] (byte) render_screen_show#13 ← (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 lda render_screen_show eor #$40 sta render_screen_show @@ -18784,8 +18784,8 @@ render_score: { jmp b1 //SEG200 render_score::@1 b1: - //SEG201 [76] (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 - //SEG202 [77] (byte) render_bcd::bcd#0 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbuxx=_deref_pbuc1 + //SEG201 [76] (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 + //SEG202 [77] (byte) render_bcd::bcd#0 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbuxx=_deref_pbuc1 ldx score_bytes+2 //SEG203 [78] call render_bcd //SEG204 [95] phi from render_score::@1 to render_bcd [phi:render_score::@1->render_bcd] @@ -18803,8 +18803,8 @@ render_score: { jmp b3 //SEG209 render_score::@3 b3: - //SEG210 [79] (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#3 - //SEG211 [80] (byte) render_bcd::bcd#1 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbuxx=_deref_pbuc1 + //SEG210 [79] (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#3 + //SEG211 [80] (byte) render_bcd::bcd#1 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbuxx=_deref_pbuc1 ldx score_bytes+1 //SEG212 [81] call render_bcd //SEG213 [95] phi from render_score::@3 to render_bcd [phi:render_score::@3->render_bcd] @@ -18822,8 +18822,8 @@ render_score: { jmp b4 //SEG218 render_score::@4 b4: - //SEG219 [82] (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#3 - //SEG220 [83] (byte) render_bcd::bcd#2 ? *((const byte*) render_score::score_bytes#0) -- vbuxx=_deref_pbuc1 + //SEG219 [82] (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#3 + //SEG220 [83] (byte) render_bcd::bcd#2 ← *((const byte*) render_score::score_bytes#0) -- vbuxx=_deref_pbuc1 ldx score_bytes //SEG221 [84] call render_bcd //SEG222 [95] phi from render_score::@4 to render_bcd [phi:render_score::@4->render_bcd] @@ -18841,10 +18841,10 @@ render_score: { jmp b5 //SEG227 render_score::@5 b5: - //SEG228 [85] (byte) render_bcd::bcd#3 ? > (word) lines_bcd#15 -- vbuxx=_hi_vwuz1 + //SEG228 [85] (byte) render_bcd::bcd#3 ← > (word) lines_bcd#15 -- vbuxx=_hi_vwuz1 lda lines_bcd+1 tax - //SEG229 [86] (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#3 + //SEG229 [86] (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#3 //SEG230 [87] call render_bcd //SEG231 [95] phi from render_score::@5 to render_bcd [phi:render_score::@5->render_bcd] render_bcd_from_b5: @@ -18861,10 +18861,10 @@ render_score: { jmp b6 //SEG236 render_score::@6 b6: - //SEG237 [88] (byte) render_bcd::bcd#4 ? < (word) lines_bcd#15 -- vbuxx=_lo_vwuz1 + //SEG237 [88] (byte) render_bcd::bcd#4 ← < (word) lines_bcd#15 -- vbuxx=_lo_vwuz1 lda lines_bcd tax - //SEG238 [89] (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#3 + //SEG238 [89] (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#3 //SEG239 [90] call render_bcd //SEG240 [95] phi from render_score::@6 to render_bcd [phi:render_score::@6->render_bcd] render_bcd_from_b6: @@ -18881,8 +18881,8 @@ render_score: { jmp b7 //SEG245 render_score::@7 b7: - //SEG246 [91] (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#3 - //SEG247 [92] (byte) render_bcd::bcd#5 ? (byte) level_bcd#17 -- vbuxx=vbuz1 + //SEG246 [91] (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#3 + //SEG247 [92] (byte) render_bcd::bcd#5 ← (byte) level_bcd#17 -- vbuxx=vbuz1 ldx level_bcd //SEG248 [93] call render_bcd //SEG249 [95] phi from render_score::@7 to render_bcd [phi:render_score::@7->render_bcd] @@ -18915,7 +18915,7 @@ render_bcd: { .label screen = 5 .label screen_pos = 7 .label offset = 7 - //SEG257 [96] (byte*) render_bcd::screen_pos#0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 -- pbuz1=pbuz2_plus_vwuz1 + //SEG257 [96] (byte*) render_bcd::screen_pos#0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 -- pbuz1=pbuz2_plus_vwuz1 lda screen_pos clc adc screen @@ -18929,19 +18929,19 @@ render_bcd: { jmp b2 //SEG259 render_bcd::@2 b2: - //SEG260 [98] (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG260 [98] (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG261 [99] (byte~) render_bcd::$6 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 -- vbuaa=vbuc1_plus_vbuaa + //SEG261 [99] (byte~) render_bcd::$6 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 -- vbuaa=vbuc1_plus_vbuaa clc adc #ZERO_CHAR - //SEG262 [100] *((byte*) render_bcd::screen_pos#0) ? (byte~) render_bcd::$6 -- _deref_pbuz1=vbuaa + //SEG262 [100] *((byte*) render_bcd::screen_pos#0) ← (byte~) render_bcd::$6 -- _deref_pbuz1=vbuaa ldy #0 sta (screen_pos),y - //SEG263 [101] (byte*) render_bcd::screen_pos#2 ? ++ (byte*) render_bcd::screen_pos#0 -- pbuz1=_inc_pbuz1 + //SEG263 [101] (byte*) render_bcd::screen_pos#2 ← ++ (byte*) render_bcd::screen_pos#0 -- pbuz1=_inc_pbuz1 inc screen_pos bne !+ inc screen_pos+1 @@ -18953,16 +18953,16 @@ render_bcd: { jmp b1 //SEG266 render_bcd::@1 b1: - //SEG267 [103] (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG267 [103] (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG268 [104] (byte~) render_bcd::$4 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 -- vbuaa=vbuc1_plus_vbuaa + //SEG268 [104] (byte~) render_bcd::$4 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 -- vbuaa=vbuc1_plus_vbuaa clc adc #ZERO_CHAR - //SEG269 [105] *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 -- _deref_pbuz1=vbuaa + //SEG269 [105] *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 -- _deref_pbuz1=vbuaa ldy #0 sta (screen_pos),y - //SEG270 [106] (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 -- pbuz1=_inc_pbuz1 + //SEG270 [106] (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 -- pbuz1=_inc_pbuz1 inc screen_pos bne !+ inc screen_pos+1 @@ -19007,14 +19007,14 @@ render_next: { jmp b1 //SEG281 render_next::@1 b1: - //SEG282 [112] (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuxx_rol_1 + //SEG282 [112] (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuxx_rol_1 txa asl tay - //SEG283 [113] (byte) render_next::next_piece_char#0 ? *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG283 [113] (byte) render_next::next_piece_char#0 ← *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_NEXT_CHARS,x sta next_piece_char - //SEG284 [114] (byte*~) render_next::next_piece_gfx#9 ? (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) -- pbuz1=pptc1_derefidx_vbuyy + //SEG284 [114] (byte*~) render_next::next_piece_gfx#9 ← (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) -- pbuz1=pptc1_derefidx_vbuyy lda PIECES,y sta next_piece_gfx lda PIECES+1,y @@ -19050,10 +19050,10 @@ render_next: { jmp b4 //SEG302 render_next::@4 b4: - //SEG303 [117] (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) -- vbuaa=_deref_pbuz1 + //SEG303 [117] (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) -- vbuaa=_deref_pbuz1 ldy #0 lda (next_piece_gfx),y - //SEG304 [118] (byte*) render_next::next_piece_gfx#1 ? ++ (byte*) render_next::next_piece_gfx#2 -- pbuz1=_inc_pbuz1 + //SEG304 [118] (byte*) render_next::next_piece_gfx#1 ← ++ (byte*) render_next::next_piece_gfx#2 -- pbuz1=_inc_pbuz1 inc next_piece_gfx bne !+ inc next_piece_gfx+1 @@ -19064,19 +19064,19 @@ render_next: { jmp b7 //SEG306 render_next::@7 b7: - //SEG307 [120] *((byte*) render_next::screen_next_area#5) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG307 [120] *((byte*) render_next::screen_next_area#5) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (screen_next_area),y jmp b6 //SEG308 render_next::@6 b6: - //SEG309 [121] (byte*) render_next::screen_next_area#3 ? ++ (byte*) render_next::screen_next_area#5 -- pbuz1=_inc_pbuz1 + //SEG309 [121] (byte*) render_next::screen_next_area#3 ← ++ (byte*) render_next::screen_next_area#5 -- pbuz1=_inc_pbuz1 inc screen_next_area bne !+ inc screen_next_area+1 !: - //SEG310 [122] (byte) render_next::c#1 ? ++ (byte) render_next::c#2 -- vbuxx=_inc_vbuxx + //SEG310 [122] (byte) render_next::c#1 ← ++ (byte) render_next::c#2 -- vbuxx=_inc_vbuxx inx //SEG311 [123] if((byte) render_next::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #4 @@ -19084,7 +19084,7 @@ render_next: { jmp b8 //SEG312 render_next::@8 b8: - //SEG313 [124] (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 -- pbuz1=pbuz1_plus_vbuc1 + //SEG313 [124] (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 -- pbuz1=pbuz1_plus_vbuc1 lda #$24 clc adc screen_next_area @@ -19092,7 +19092,7 @@ render_next: { bcc !+ inc screen_next_area+1 !: - //SEG314 [125] (byte) render_next::l#1 ? ++ (byte) render_next::l#7 -- vbuz1=_inc_vbuz1 + //SEG314 [125] (byte) render_next::l#1 ← ++ (byte) render_next::l#7 -- vbuz1=_inc_vbuz1 inc l //SEG315 [126] if((byte) render_next::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@3 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -19105,7 +19105,7 @@ render_next: { rts //SEG318 render_next::@5 b5: - //SEG319 [128] *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#0 -- _deref_pbuz1=vbuz2 + //SEG319 [128] *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#0 -- _deref_pbuz1=vbuz2 lda next_piece_char ldy #0 sta (screen_next_area),y @@ -19120,7 +19120,7 @@ render_moving: { .label xpos = $f .label i = $e .label l = $d - //SEG321 [130] (byte) render_moving::ypos2#0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 + //SEG321 [130] (byte) render_moving::ypos2#0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 txa asl sta ypos2 @@ -19149,7 +19149,7 @@ render_moving: { jmp b7 //SEG332 render_moving::@7 b7: - //SEG333 [133] (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 + //SEG333 [133] (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 lax i axs #-[4] stx i @@ -19160,12 +19160,12 @@ render_moving: { jmp b3 //SEG336 render_moving::@3 b3: - //SEG337 [135] (byte) render_moving::ypos2#1 ? (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG337 [135] (byte) render_moving::ypos2#1 ← (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG338 [136] (byte) render_moving::l#1 ? ++ (byte) render_moving::l#4 -- vbuz1=_inc_vbuz1 + //SEG338 [136] (byte) render_moving::l#1 ← ++ (byte) render_moving::l#4 -- vbuz1=_inc_vbuz1 inc l //SEG339 [137] if((byte) render_moving::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@1 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -19178,17 +19178,17 @@ render_moving: { rts //SEG342 render_moving::@2 b2: - //SEG343 [139] (byte~) render_moving::$2 ? (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 -- vbuaa=vbuz1_plus_vbuz2 + //SEG343 [139] (byte~) render_moving::$2 ← (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 -- vbuaa=vbuz1_plus_vbuz2 lda render_screen_render_33 clc adc ypos2 - //SEG344 [140] (byte*) render_moving::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) -- pbuz1=pptc1_derefidx_vbuaa + //SEG344 [140] (byte*) render_moving::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) -- pbuz1=pptc1_derefidx_vbuaa tay lda screen_lines_1,y sta screen_line lda screen_lines_1+1,y sta screen_line+1 - //SEG345 [141] (byte) render_moving::xpos#0 ? (byte) current_xpos#59 -- vbuz1=vbuz2 + //SEG345 [141] (byte) render_moving::xpos#0 ← (byte) current_xpos#59 -- vbuz1=vbuz2 lda current_xpos_59 sta xpos //SEG346 [142] phi from render_moving::@2 to render_moving::@4 [phi:render_moving::@2->render_moving::@4] @@ -19206,10 +19206,10 @@ render_moving: { jmp b4 //SEG354 render_moving::@4 b4: - //SEG355 [143] (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) -- vbuaa=pbuz1_derefidx_vbuz2 + //SEG355 [143] (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) -- vbuaa=pbuz1_derefidx_vbuz2 ldy i lda (current_piece_gfx_64),y - //SEG356 [144] (byte) render_moving::i#2 ? ++ (byte) render_moving::i#4 -- vbuz1=_inc_vbuz1 + //SEG356 [144] (byte) render_moving::i#2 ← ++ (byte) render_moving::i#4 -- vbuz1=_inc_vbuz1 inc i //SEG357 [145] if((byte) render_moving::current_cell#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_moving::@5 -- vbuaa_eq_0_then_la1 cmp #0 @@ -19217,16 +19217,16 @@ render_moving: { jmp b6 //SEG358 render_moving::@6 b6: - //SEG359 [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ? (byte) current_piece_char#68 -- pbuz1_derefidx_vbuz2=vbuz3 + //SEG359 [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ← (byte) current_piece_char#68 -- pbuz1_derefidx_vbuz2=vbuz3 lda current_piece_char_68 ldy xpos sta (screen_line),y jmp b5 //SEG360 render_moving::@5 b5: - //SEG361 [147] (byte) render_moving::xpos#1 ? ++ (byte) render_moving::xpos#2 -- vbuz1=_inc_vbuz1 + //SEG361 [147] (byte) render_moving::xpos#1 ← ++ (byte) render_moving::xpos#2 -- vbuz1=_inc_vbuz1 inc xpos - //SEG362 [148] (byte) render_moving::c#1 ? ++ (byte) render_moving::c#2 -- vbuxx=_inc_vbuxx + //SEG362 [148] (byte) render_moving::c#1 ← ++ (byte) render_moving::c#2 -- vbuxx=_inc_vbuxx inx //SEG363 [149] if((byte) render_moving::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #4 @@ -19256,14 +19256,14 @@ render_playfield: { jmp b1 //SEG371 render_playfield::@1 b1: - //SEG372 [152] (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 + //SEG372 [152] (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 lda l asl - //SEG373 [153] (byte~) render_playfield::$3 ? (byte) render_screen_render#22 + (byte~) render_playfield::$2 -- vbuaa=vbuxx_plus_vbuaa + //SEG373 [153] (byte~) render_playfield::$3 ← (byte) render_screen_render#22 + (byte~) render_playfield::$2 -- vbuaa=vbuxx_plus_vbuaa stx $ff clc adc $ff - //SEG374 [154] (byte*) render_playfield::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuaa + //SEG374 [154] (byte*) render_playfield::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuaa tay lda screen_lines_1,y sta screen_line @@ -19285,19 +19285,19 @@ render_playfield: { jmp b2 //SEG383 render_playfield::@2 b2: - //SEG384 [156] *((byte*) render_playfield::screen_line#2) ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG384 [156] *((byte*) render_playfield::screen_line#2) ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy i lda playfield,y ldy #0 sta (screen_line),y - //SEG385 [157] (byte*) render_playfield::screen_line#1 ? ++ (byte*) render_playfield::screen_line#2 -- pbuz1=_inc_pbuz1 + //SEG385 [157] (byte*) render_playfield::screen_line#1 ← ++ (byte*) render_playfield::screen_line#2 -- pbuz1=_inc_pbuz1 inc screen_line bne !+ inc screen_line+1 !: - //SEG386 [158] (byte) render_playfield::i#1 ? ++ (byte) render_playfield::i#2 -- vbuz1=_inc_vbuz1 + //SEG386 [158] (byte) render_playfield::i#1 ← ++ (byte) render_playfield::i#2 -- vbuz1=_inc_vbuz1 inc i - //SEG387 [159] (byte) render_playfield::c#1 ? ++ (byte) render_playfield::c#2 -- vbuz1=_inc_vbuz1 + //SEG387 [159] (byte) render_playfield::c#1 ← ++ (byte) render_playfield::c#2 -- vbuz1=_inc_vbuz1 inc c //SEG388 [160] if((byte) render_playfield::c#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@2 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_COLS-1+1 @@ -19306,7 +19306,7 @@ render_playfield: { jmp b3 //SEG389 render_playfield::@3 b3: - //SEG390 [161] (byte) render_playfield::l#1 ? ++ (byte) render_playfield::l#2 -- vbuz1=_inc_vbuz1 + //SEG390 [161] (byte) render_playfield::l#1 ← ++ (byte) render_playfield::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG391 [162] if((byte) render_playfield::l#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -19327,17 +19327,17 @@ play_movement: { .label render = 9 .label return = 9 .label key_event = $29 - //SEG395 [164] (byte) play_move_down::key_event#0 ? (byte) play_movement::key_event#0 -- vbuaa=vbuz1 + //SEG395 [164] (byte) play_move_down::key_event#0 ← (byte) play_movement::key_event#0 -- vbuaa=vbuz1 lda key_event //SEG396 [165] call play_move_down jsr play_move_down - //SEG397 [166] (byte) play_move_down::return#0 ? (byte) play_move_down::return#3 -- vbuaa=vbuxx + //SEG397 [166] (byte) play_move_down::return#0 ← (byte) play_move_down::return#3 -- vbuaa=vbuxx txa jmp b2 //SEG398 play_movement::@2 b2: - //SEG399 [167] (byte~) play_movement::$0 ? (byte) play_move_down::return#0 - //SEG400 [168] (byte) play_movement::render#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 -- vbuz1=vbuc1_plus_vbuaa + //SEG399 [167] (byte~) play_movement::$0 ← (byte) play_move_down::return#0 + //SEG400 [168] (byte) play_movement::render#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 -- vbuz1=vbuc1_plus_vbuaa clc adc #0 sta render @@ -19359,29 +19359,29 @@ play_movement: { rts //SEG409 play_movement::@1 b1: - //SEG410 [172] (byte) play_move_leftright::key_event#0 ? (byte) play_movement::key_event#0 -- vbuaa=vbuz1 + //SEG410 [172] (byte) play_move_leftright::key_event#0 ← (byte) play_movement::key_event#0 -- vbuaa=vbuz1 lda key_event //SEG411 [173] call play_move_leftright jsr play_move_leftright - //SEG412 [174] (byte) play_move_leftright::return#0 ? (byte) play_move_leftright::return#2 + //SEG412 [174] (byte) play_move_leftright::return#0 ← (byte) play_move_leftright::return#2 jmp b3 //SEG413 play_movement::@3 b3: - //SEG414 [175] (byte~) play_movement::$3 ? (byte) play_move_leftright::return#0 - //SEG415 [176] (byte) play_movement::render#2 ? (byte) play_movement::render#1 + (byte~) play_movement::$3 -- vbuz1=vbuz1_plus_vbuaa + //SEG414 [175] (byte~) play_movement::$3 ← (byte) play_move_leftright::return#0 + //SEG415 [176] (byte) play_movement::render#2 ← (byte) play_movement::render#1 + (byte~) play_movement::$3 -- vbuz1=vbuz1_plus_vbuaa clc adc render sta render - //SEG416 [177] (byte) play_move_rotate::key_event#0 ? (byte) play_movement::key_event#0 -- vbuaa=vbuz1 + //SEG416 [177] (byte) play_move_rotate::key_event#0 ← (byte) play_movement::key_event#0 -- vbuaa=vbuz1 lda key_event //SEG417 [178] call play_move_rotate jsr play_move_rotate - //SEG418 [179] (byte) play_move_rotate::return#0 ? (byte) play_move_rotate::return#2 + //SEG418 [179] (byte) play_move_rotate::return#0 ← (byte) play_move_rotate::return#2 jmp b4 //SEG419 play_movement::@4 b4: - //SEG420 [180] (byte~) play_movement::$4 ? (byte) play_move_rotate::return#0 - //SEG421 [181] (byte) play_movement::return#0 ? (byte) play_movement::render#2 + (byte~) play_movement::$4 -- vbuz1=vbuz1_plus_vbuaa + //SEG420 [180] (byte~) play_movement::$4 ← (byte) play_move_rotate::return#0 + //SEG421 [181] (byte) play_movement::return#0 ← (byte) play_movement::render#2 + (byte~) play_movement::$4 -- vbuz1=vbuz1_plus_vbuaa clc adc return sta return @@ -19416,10 +19416,10 @@ play_move_rotate: { rts //SEG432 play_move_rotate::@2 b2: - //SEG433 [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_plus_vbuc1 + //SEG433 [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_plus_vbuc1 lax current_orientation axs #-[$10] - //SEG434 [187] (byte) play_move_rotate::orientation#2 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 + //SEG434 [187] (byte) play_move_rotate::orientation#2 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 lda #$3f sax orientation //SEG435 [188] phi from play_move_rotate::@1 play_move_rotate::@2 to play_move_rotate::@3 [phi:play_move_rotate::@1/play_move_rotate::@2->play_move_rotate::@3] @@ -19429,15 +19429,15 @@ play_move_rotate: { jmp b3 //SEG437 play_move_rotate::@3 b3: - //SEG438 [189] (byte) play_collision::xpos#3 ? (byte) current_xpos#26 -- vbuz1=vbuz2 + //SEG438 [189] (byte) play_collision::xpos#3 ← (byte) current_xpos#26 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG439 [190] (byte) play_collision::ypos#3 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG439 [190] (byte) play_collision::ypos#3 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG440 [191] (byte) play_collision::orientation#3 ? (byte) play_move_rotate::orientation#3 -- vbuxx=vbuz1 + //SEG440 [191] (byte) play_collision::orientation#3 ← (byte) play_move_rotate::orientation#3 -- vbuxx=vbuz1 ldx orientation - //SEG441 [192] (byte*~) current_piece#101 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG441 [192] (byte*~) current_piece#101 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_101 lda current_piece+1 @@ -19450,21 +19450,21 @@ play_move_rotate: { //SEG446 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#3 [phi:play_move_rotate::@3->play_collision#2] -- register_copy //SEG447 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#101 [phi:play_move_rotate::@3->play_collision#3] -- register_copy jsr play_collision - //SEG448 [194] (byte) play_collision::return#14 ? (byte) play_collision::return#15 + //SEG448 [194] (byte) play_collision::return#14 ← (byte) play_collision::return#15 jmp b6 //SEG449 play_move_rotate::@6 b6: - //SEG450 [195] (byte~) play_move_rotate::$2 ? (byte) play_collision::return#14 + //SEG450 [195] (byte~) play_move_rotate::$2 ← (byte) play_collision::return#14 //SEG451 [196] if((byte~) play_move_rotate::$2!=(const byte) COLLISION_NONE#0) goto play_move_rotate::@return -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_NONE bne breturn_from_b6 jmp b5 //SEG452 play_move_rotate::@5 b5: - //SEG453 [197] (byte) current_orientation#7 ? (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 + //SEG453 [197] (byte) current_orientation#7 ← (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 lda orientation sta current_orientation - //SEG454 [198] (byte*) current_piece_gfx#7 ? (byte*) current_piece#15 + (byte) current_orientation#7 -- pbuz1=pbuz2_plus_vbuz3 + //SEG454 [198] (byte*) current_piece_gfx#7 ← (byte*) current_piece#15 + (byte) current_orientation#7 -- pbuz1=pbuz2_plus_vbuz3 lda current_orientation clc adc current_piece @@ -19481,10 +19481,10 @@ play_move_rotate: { jmp breturn //SEG459 play_move_rotate::@1 b1: - //SEG460 [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_minus_vbuc1 + //SEG460 [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_minus_vbuc1 lax current_orientation axs #$10 - //SEG461 [200] (byte) play_move_rotate::orientation#1 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 + //SEG461 [200] (byte) play_move_rotate::orientation#1 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 lda #$3f sax orientation jmp b3_from_b1 @@ -19506,7 +19506,7 @@ play_collision: { .label i_3 = $e .label i_11 = $e .label i_13 = $e - //SEG463 [202] (byte*) play_collision::piece_gfx#0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 -- pbuz1=pbuz1_plus_vbuxx + //SEG463 [202] (byte*) play_collision::piece_gfx#0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 -- pbuz1=pbuz1_plus_vbuxx txa clc adc piece_gfx @@ -19514,7 +19514,7 @@ play_collision: { bcc !+ inc piece_gfx+1 !: - //SEG464 [203] (byte) play_collision::ypos2#0 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG464 [203] (byte) play_collision::ypos2#0 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl ypos2 //SEG465 [204] phi from play_collision to play_collision::@1 [phi:play_collision->play_collision::@1] b1_from_play_collision: @@ -19528,13 +19528,13 @@ play_collision: { jmp b1 //SEG469 play_collision::@1 b1: - //SEG470 [205] (byte*) play_collision::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG470 [205] (byte*) play_collision::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 ldy ypos2 lda playfield_lines,y sta playfield_line lda playfield_lines+1,y sta playfield_line+1 - //SEG471 [206] (byte~) play_collision::col#9 ? (byte) play_collision::xpos#6 -- vbuz1=vbuz2 + //SEG471 [206] (byte~) play_collision::col#9 ← (byte) play_collision::xpos#6 -- vbuz1=vbuz2 lda xpos sta col //SEG472 [207] phi from play_collision::@1 to play_collision::@2 [phi:play_collision::@1->play_collision::@2] @@ -19546,7 +19546,7 @@ play_collision: { jmp b2 //SEG476 play_collision::@2 b2: - //SEG477 [208] (byte) play_collision::i#1 ? ++ (byte) play_collision::i#2 -- vbuz1=_inc_vbuz2 + //SEG477 [208] (byte) play_collision::i#1 ← ++ (byte) play_collision::i#2 -- vbuz1=_inc_vbuz2 ldy i_2 iny sty i @@ -19573,7 +19573,7 @@ play_collision: { rts //SEG485 play_collision::@4 b4: - //SEG486 [213] (byte~) play_collision::$7 ? (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG486 [213] (byte~) play_collision::$7 ← (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and col //SEG487 [214] if((byte~) play_collision::$7==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@5 -- vbuaa_eq_0_then_la1 @@ -19609,9 +19609,9 @@ play_collision: { jmp breturn //SEG498 play_collision::@3 b3: - //SEG499 [217] (byte) play_collision::col#1 ? ++ (byte) play_collision::col#2 -- vbuz1=_inc_vbuz1 + //SEG499 [217] (byte) play_collision::col#1 ← ++ (byte) play_collision::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG500 [218] (byte) play_collision::c#1 ? ++ (byte) play_collision::c#2 -- vbuxx=_inc_vbuxx + //SEG500 [218] (byte) play_collision::c#1 ← ++ (byte) play_collision::c#2 -- vbuxx=_inc_vbuxx inx //SEG501 [219] if((byte) play_collision::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@10 -- vbuxx_neq_vbuc1_then_la1 cpx #4 @@ -19619,12 +19619,12 @@ play_collision: { jmp b8 //SEG502 play_collision::@8 b8: - //SEG503 [220] (byte) play_collision::ypos2#1 ? (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG503 [220] (byte) play_collision::ypos2#1 ← (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG504 [221] (byte) play_collision::l#1 ? ++ (byte) play_collision::l#6 -- vbuz1=_inc_vbuz1 + //SEG504 [221] (byte) play_collision::l#1 ← ++ (byte) play_collision::l#6 -- vbuz1=_inc_vbuz1 inc l //SEG505 [222] if((byte) play_collision::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@9 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -19637,7 +19637,7 @@ play_collision: { jmp breturn //SEG508 play_collision::@9 b9: - //SEG509 [223] (byte~) play_collision::i#11 ? (byte) play_collision::i#1 -- vbuz1=vbuz2 + //SEG509 [223] (byte~) play_collision::i#11 ← (byte) play_collision::i#1 -- vbuz1=vbuz2 lda i sta i_11 //SEG510 [204] phi from play_collision::@9 to play_collision::@1 [phi:play_collision::@9->play_collision::@1] @@ -19648,7 +19648,7 @@ play_collision: { jmp b1 //SEG514 play_collision::@10 b10: - //SEG515 [224] (byte~) play_collision::i#13 ? (byte) play_collision::i#1 -- vbuz1=vbuz2 + //SEG515 [224] (byte~) play_collision::i#13 ← (byte) play_collision::i#1 -- vbuz1=vbuz2 lda i sta i_13 //SEG516 [207] phi from play_collision::@10 to play_collision::@2 [phi:play_collision::@10->play_collision::@2] @@ -19676,16 +19676,16 @@ play_move_leftright: { jmp b3 //SEG524 play_move_leftright::@3 b3: - //SEG525 [227] (byte) play_collision::xpos#2 ? (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG525 [227] (byte) play_collision::xpos#2 ← (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy current_xpos iny sty play_collision.xpos - //SEG526 [228] (byte) play_collision::ypos#2 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG526 [228] (byte) play_collision::ypos#2 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG527 [229] (byte) play_collision::orientation#2 ? (byte) current_orientation#20 -- vbuxx=vbuz1 + //SEG527 [229] (byte) play_collision::orientation#2 ← (byte) current_orientation#20 -- vbuxx=vbuz1 ldx current_orientation - //SEG528 [230] (byte*~) current_piece#100 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG528 [230] (byte*~) current_piece#100 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_100 lda current_piece+1 @@ -19698,18 +19698,18 @@ play_move_leftright: { //SEG533 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#2 [phi:play_move_leftright::@3->play_collision#2] -- register_copy //SEG534 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#100 [phi:play_move_leftright::@3->play_collision#3] -- register_copy jsr play_collision - //SEG535 [232] (byte) play_collision::return#13 ? (byte) play_collision::return#15 + //SEG535 [232] (byte) play_collision::return#13 ← (byte) play_collision::return#15 jmp b7 //SEG536 play_move_leftright::@7 b7: - //SEG537 [233] (byte~) play_move_leftright::$4 ? (byte) play_collision::return#13 + //SEG537 [233] (byte~) play_move_leftright::$4 ← (byte) play_collision::return#13 //SEG538 [234] if((byte~) play_move_leftright::$4!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_NONE bne breturn_from_b7 jmp b4 //SEG539 play_move_leftright::@4 b4: - //SEG540 [235] (byte) current_xpos#6 ? ++ (byte) current_xpos#22 -- vbuz1=_inc_vbuz1 + //SEG540 [235] (byte) current_xpos#6 ← ++ (byte) current_xpos#22 -- vbuz1=_inc_vbuz1 inc current_xpos //SEG541 [236] phi from play_move_leftright::@4 play_move_leftright::@5 to play_move_leftright::@return [phi:play_move_leftright::@4/play_move_leftright::@5->play_move_leftright::@return] breturn_from_b4: @@ -19732,16 +19732,16 @@ play_move_leftright: { rts //SEG549 play_move_leftright::@1 b1: - //SEG550 [238] (byte) play_collision::xpos#1 ? (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_minus_1 + //SEG550 [238] (byte) play_collision::xpos#1 ← (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_minus_1 ldx current_xpos dex stx play_collision.xpos - //SEG551 [239] (byte) play_collision::ypos#1 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG551 [239] (byte) play_collision::ypos#1 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG552 [240] (byte) play_collision::orientation#1 ? (byte) current_orientation#20 -- vbuxx=vbuz1 + //SEG552 [240] (byte) play_collision::orientation#1 ← (byte) current_orientation#20 -- vbuxx=vbuz1 ldx current_orientation - //SEG553 [241] (byte*~) current_piece#99 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG553 [241] (byte*~) current_piece#99 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_99 lda current_piece+1 @@ -19754,18 +19754,18 @@ play_move_leftright: { //SEG558 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#1 [phi:play_move_leftright::@1->play_collision#2] -- register_copy //SEG559 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#99 [phi:play_move_leftright::@1->play_collision#3] -- register_copy jsr play_collision - //SEG560 [243] (byte) play_collision::return#1 ? (byte) play_collision::return#15 + //SEG560 [243] (byte) play_collision::return#1 ← (byte) play_collision::return#15 jmp b6 //SEG561 play_move_leftright::@6 b6: - //SEG562 [244] (byte~) play_move_leftright::$8 ? (byte) play_collision::return#1 + //SEG562 [244] (byte~) play_move_leftright::$8 ← (byte) play_collision::return#1 //SEG563 [245] if((byte~) play_move_leftright::$8!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_NONE bne breturn_from_b6 jmp b5 //SEG564 play_move_leftright::@5 b5: - //SEG565 [246] (byte) current_xpos#8 ? -- (byte) current_xpos#22 -- vbuz1=_dec_vbuz1 + //SEG565 [246] (byte) current_xpos#8 ← -- (byte) current_xpos#22 -- vbuz1=_dec_vbuz1 dec current_xpos jmp breturn_from_b5 } @@ -19774,7 +19774,7 @@ play_move_leftright: { // Return non-zero if a render is needed // play_move_down(byte register(A) key_event) play_move_down: { - //SEG567 [247] (byte) current_movedown_counter#12 ? ++ (byte) current_movedown_counter#16 -- vbuz1=_inc_vbuz1 + //SEG567 [247] (byte) current_movedown_counter#12 ← ++ (byte) current_movedown_counter#16 -- vbuz1=_inc_vbuz1 inc current_movedown_counter //SEG568 [248] if((byte) play_move_down::key_event#0!=(const byte) KEY_SPACE#0) goto play_move_down::@1 -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_SPACE @@ -19803,11 +19803,11 @@ play_move_down: { lda #KEY_SPACE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG579 [252] (byte) keyboard_event_pressed::return#12 ? (byte) keyboard_event_pressed::return#11 + //SEG579 [252] (byte) keyboard_event_pressed::return#12 ← (byte) keyboard_event_pressed::return#11 jmp b12 //SEG580 play_move_down::@12 b12: - //SEG581 [253] (byte~) play_move_down::$2 ? (byte) keyboard_event_pressed::return#12 + //SEG581 [253] (byte~) play_move_down::$2 ← (byte) keyboard_event_pressed::return#12 //SEG582 [254] if((byte~) play_move_down::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_move_down::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2_from_b12 @@ -19821,7 +19821,7 @@ play_move_down: { jmp b6 //SEG585 play_move_down::@6 b6: - //SEG586 [256] (byte) play_move_down::movedown#2 ? ++ (byte) play_move_down::movedown#10 -- vbuxx=_inc_vbuxx + //SEG586 [256] (byte) play_move_down::movedown#2 ← ++ (byte) play_move_down::movedown#10 -- vbuxx=_inc_vbuxx inx //SEG587 [257] phi from play_move_down::@12 play_move_down::@5 play_move_down::@6 to play_move_down::@2 [phi:play_move_down::@12/play_move_down::@5/play_move_down::@6->play_move_down::@2] b2_from_b12: @@ -19838,7 +19838,7 @@ play_move_down: { jmp b7 //SEG591 play_move_down::@7 b7: - //SEG592 [259] (byte) play_move_down::movedown#3 ? ++ (byte) play_move_down::movedown#7 -- vbuxx=_inc_vbuxx + //SEG592 [259] (byte) play_move_down::movedown#3 ← ++ (byte) play_move_down::movedown#7 -- vbuxx=_inc_vbuxx inx //SEG593 [260] phi from play_move_down::@2 play_move_down::@7 to play_move_down::@3 [phi:play_move_down::@2/play_move_down::@7->play_move_down::@3] b3_from_b2: @@ -19853,16 +19853,16 @@ play_move_down: { jmp b8 //SEG597 play_move_down::@8 b8: - //SEG598 [262] (byte) play_collision::ypos#0 ? (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG598 [262] (byte) play_collision::ypos#0 ← (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy current_ypos iny sty play_collision.ypos - //SEG599 [263] (byte) play_collision::xpos#0 ? (byte) current_xpos#122 -- vbuz1=vbuz2 + //SEG599 [263] (byte) play_collision::xpos#0 ← (byte) current_xpos#122 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG600 [264] (byte) play_collision::orientation#0 ? (byte) current_orientation#13 -- vbuxx=vbuz1 + //SEG600 [264] (byte) play_collision::orientation#0 ← (byte) current_orientation#13 -- vbuxx=vbuz1 ldx current_orientation - //SEG601 [265] (byte*~) current_piece#98 ? (byte*) current_piece#10 -- pbuz1=pbuz2 + //SEG601 [265] (byte*~) current_piece#98 ← (byte*) current_piece#10 -- pbuz1=pbuz2 lda current_piece sta current_piece_98 lda current_piece+1 @@ -19875,11 +19875,11 @@ play_move_down: { //SEG606 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#0 [phi:play_move_down::@8->play_collision#2] -- register_copy //SEG607 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#98 [phi:play_move_down::@8->play_collision#3] -- register_copy jsr play_collision - //SEG608 [267] (byte) play_collision::return#0 ? (byte) play_collision::return#15 + //SEG608 [267] (byte) play_collision::return#0 ← (byte) play_collision::return#15 jmp b13 //SEG609 play_move_down::@13 b13: - //SEG610 [268] (byte~) play_move_down::$12 ? (byte) play_collision::return#0 + //SEG610 [268] (byte~) play_move_down::$12 ← (byte) play_collision::return#0 //SEG611 [269] if((byte~) play_move_down::$12==(const byte) COLLISION_NONE#0) goto play_move_down::@10 -- vbuaa_eq_vbuc1_then_la1 cmp #COLLISION_NONE beq b10 @@ -19899,13 +19899,13 @@ play_move_down: { //SEG618 [344] phi from play_move_down::@14 to play_remove_lines [phi:play_move_down::@14->play_remove_lines] play_remove_lines_from_b14: jsr play_remove_lines - //SEG619 [274] (byte) play_remove_lines::return#0 ? (byte) play_remove_lines::removed#8 -- vbuaa=vbuz1 + //SEG619 [274] (byte) play_remove_lines::return#0 ← (byte) play_remove_lines::removed#8 -- vbuaa=vbuz1 lda play_remove_lines.removed jmp b15 //SEG620 play_move_down::@15 b15: - //SEG621 [275] (byte) play_move_down::removed#0 ? (byte) play_remove_lines::return#0 - //SEG622 [276] (byte) play_update_score::removed#0 ? (byte) play_move_down::removed#0 -- vbuxx=vbuaa + //SEG621 [275] (byte) play_move_down::removed#0 ← (byte) play_remove_lines::return#0 + //SEG622 [276] (byte) play_update_score::removed#0 ← (byte) play_move_down::removed#0 -- vbuxx=vbuaa tax //SEG623 [277] call play_update_score jsr play_update_score @@ -19920,7 +19920,7 @@ play_move_down: { //SEG628 [285] phi (byte) game_over#65 = (byte) game_over#10 [phi:play_move_down::@16->play_spawn_current#0] -- register_copy //SEG629 [285] phi (byte) next_piece_idx#17 = (byte) next_piece_idx#10 [phi:play_move_down::@16->play_spawn_current#1] -- register_copy jsr play_spawn_current - //SEG630 [280] (byte*~) current_piece#104 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG630 [280] (byte*~) current_piece#104 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy play_spawn_current._0 lda PIECES,y sta current_piece @@ -19992,7 +19992,7 @@ play_move_down: { rts //SEG680 play_move_down::@10 b10: - //SEG681 [284] (byte) current_ypos#3 ? ++ (byte) current_ypos#11 -- vbuz1=_inc_vbuz1 + //SEG681 [284] (byte) current_ypos#3 ← ++ (byte) current_ypos#11 -- vbuz1=_inc_vbuz1 inc current_ypos //SEG682 [281] phi from play_move_down::@10 to play_move_down::@11 [phi:play_move_down::@10->play_move_down::@11] b11_from_b10: @@ -20017,35 +20017,35 @@ play_move_down: { play_spawn_current: { .label _0 = 4 .label piece_idx = $21 - //SEG697 [286] (byte) play_spawn_current::current_piece_idx#0 ? (byte) next_piece_idx#17 -- vbuxx=vbuz1 + //SEG697 [286] (byte) play_spawn_current::current_piece_idx#0 ← (byte) next_piece_idx#17 -- vbuxx=vbuz1 // Move next piece into current ldx next_piece_idx - //SEG698 [287] (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 + //SEG698 [287] (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 txa asl sta _0 - //SEG699 [288] (byte) current_piece_char#5 ? *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG699 [288] (byte) current_piece_char#5 ← *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_CHARS,x sta current_piece_char - //SEG700 [289] (byte*) current_piece_gfx#74 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuz1=pptc1_derefidx_vbuz2_plus_0 + //SEG700 [289] (byte*) current_piece_gfx#74 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuz1=pptc1_derefidx_vbuz2_plus_0 ldy _0 lda PIECES,y sta current_piece_gfx lda PIECES+1,y sta current_piece_gfx+1 - //SEG701 [290] (byte) current_xpos#103 ? *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG701 [290] (byte) current_xpos#103 ← *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_START_X,x sta current_xpos - //SEG702 [291] (byte) current_ypos#6 ? *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG702 [291] (byte) current_ypos#6 ← *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_START_Y,x sta current_ypos - //SEG703 [292] (byte) play_collision::xpos#4 ? (byte) current_xpos#103 -- vbuz1=vbuz2 + //SEG703 [292] (byte) play_collision::xpos#4 ← (byte) current_xpos#103 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG704 [293] (byte) play_collision::ypos#4 ? (byte) current_ypos#6 -- vbuz1=vbuz2 + //SEG704 [293] (byte) play_collision::ypos#4 ← (byte) current_ypos#6 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG705 [294] (byte*~) current_piece#102 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG705 [294] (byte*~) current_piece#102 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy _0 lda PIECES,y sta current_piece_102 @@ -20060,11 +20060,11 @@ play_spawn_current: { ldx #0 //SEG711 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#102 [phi:play_spawn_current->play_collision#3] -- register_copy jsr play_collision - //SEG712 [296] (byte) play_collision::return#10 ? (byte) play_collision::return#15 + //SEG712 [296] (byte) play_collision::return#10 ← (byte) play_collision::return#15 jmp b4 //SEG713 play_spawn_current::@4 b4: - //SEG714 [297] (byte~) play_spawn_current::$2 ? (byte) play_collision::return#10 + //SEG714 [297] (byte~) play_spawn_current::$2 ← (byte) play_collision::return#10 //SEG715 [298] if((byte~) play_spawn_current::$2!=(const byte) COLLISION_PLAYFIELD#0) goto play_spawn_current::@6 -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_PLAYFIELD bne b6_from_b4 @@ -20100,12 +20100,12 @@ play_spawn_current: { b3: //SEG727 [304] call sid_rnd jsr sid_rnd - //SEG728 [305] (byte) sid_rnd::return#2 ? (byte) sid_rnd::return#0 + //SEG728 [305] (byte) sid_rnd::return#2 ← (byte) sid_rnd::return#0 jmp b5 //SEG729 play_spawn_current::@5 b5: - //SEG730 [306] (byte~) play_spawn_current::$6 ? (byte) sid_rnd::return#2 - //SEG731 [307] (byte) play_spawn_current::piece_idx#1 ? (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuaa_band_vbuc1 + //SEG730 [306] (byte~) play_spawn_current::$6 ← (byte) sid_rnd::return#2 + //SEG731 [307] (byte) play_spawn_current::piece_idx#1 ← (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuaa_band_vbuc1 and #7 sta piece_idx //SEG732 [300] phi from play_spawn_current::@5 to play_spawn_current::@2 [phi:play_spawn_current::@5->play_spawn_current::@2] @@ -20126,7 +20126,7 @@ play_spawn_current: { // Get a random number from the SID voice 3, // Must be initialized with sid_rnd_init() sid_rnd: { - //SEG739 [309] (byte) sid_rnd::return#0 ? *((const byte*) SID_VOICE3_OSC#0) -- vbuaa=_deref_pbuc1 + //SEG739 [309] (byte) sid_rnd::return#0 ← *((const byte*) SID_VOICE3_OSC#0) -- vbuaa=_deref_pbuc1 lda SID_VOICE3_OSC jmp breturn //SEG740 sid_rnd::@return @@ -20146,16 +20146,16 @@ play_update_score: { jmp b1 //SEG744 play_update_score::@1 b1: - //SEG745 [312] (byte~) play_update_score::$2 ? < (word) lines_bcd#19 -- vbuaa=_lo_vwuz1 + //SEG745 [312] (byte~) play_update_score::$2 ← < (word) lines_bcd#19 -- vbuaa=_lo_vwuz1 lda lines_bcd - //SEG746 [313] (byte) play_update_score::lines_before#0 ? (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuaa_band_vbuc1 + //SEG746 [313] (byte) play_update_score::lines_before#0 ← (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuaa_band_vbuc1 and #$f0 sta lines_before - //SEG747 [314] (byte~) play_update_score::$4 ? (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 + //SEG747 [314] (byte~) play_update_score::$4 ← (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 txa asl asl - //SEG748 [315] (dword) play_update_score::add_bcd#0 ? *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) -- vduz1=pduc1_derefidx_vbuaa + //SEG748 [315] (dword) play_update_score::add_bcd#0 ← *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) -- vduz1=pduc1_derefidx_vbuaa tay lda score_add_bcd,y sta add_bcd @@ -20167,7 +20167,7 @@ play_update_score: { sta add_bcd+3 //SEG749 asm { sed } sed - //SEG750 [317] (word) lines_bcd#30 ? (word) lines_bcd#19 + (byte) play_update_score::removed#0 -- vwuz1=vwuz1_plus_vbuxx + //SEG750 [317] (word) lines_bcd#30 ← (word) lines_bcd#19 + (byte) play_update_score::removed#0 -- vwuz1=vwuz1_plus_vbuxx txa clc adc lines_bcd @@ -20175,7 +20175,7 @@ play_update_score: { bcc !+ inc lines_bcd+1 !: - //SEG751 [318] (dword) score_bcd#30 ? (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 -- vduz1=vduz1_plus_vduz2 + //SEG751 [318] (dword) score_bcd#30 ← (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 -- vduz1=vduz1_plus_vduz2 lda score_bcd clc adc add_bcd @@ -20191,9 +20191,9 @@ play_update_score: { sta score_bcd+3 //SEG752 asm { cld } cld - //SEG753 [320] (byte~) play_update_score::$5 ? < (word) lines_bcd#30 -- vbuaa=_lo_vwuz1 + //SEG753 [320] (byte~) play_update_score::$5 ← < (word) lines_bcd#30 -- vbuaa=_lo_vwuz1 lda lines_bcd - //SEG754 [321] (byte) play_update_score::lines_after#0 ? (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 -- vbuaa=vbuaa_band_vbuc1 + //SEG754 [321] (byte) play_update_score::lines_after#0 ← (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 -- vbuaa=vbuaa_band_vbuc1 and #$f0 //SEG755 [322] if((byte) play_update_score::lines_before#0==(byte) play_update_score::lines_after#0) goto play_update_score::@return -- vbuz1_eq_vbuaa_then_la1 cmp lines_before @@ -20223,7 +20223,7 @@ play_update_score: { //SEG767 play_increase_level // Increase the level play_increase_level: { - //SEG768 [327] (byte) level#21 ? ++ (byte) level#10 -- vbuz1=_inc_vbuz1 + //SEG768 [327] (byte) level#21 ← ++ (byte) level#10 -- vbuz1=_inc_vbuz1 inc level //SEG769 [328] if((byte) level#21>(byte/signed byte/word/signed word/dword/signed dword) $1d) goto play_increase_level::@1 -- vbuz1_gt_vbuc1_then_la1 // Update speed of moving tetrominos down @@ -20233,7 +20233,7 @@ play_increase_level: { jmp b3 //SEG770 play_increase_level::@3 b3: - //SEG771 [329] (byte) current_movedown_slow#10 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG771 [329] (byte) current_movedown_slow#10 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) -- vbuz1=pbuc1_derefidx_vbuz2 ldy level lda MOVEDOWN_SLOW_SPEEDS,y sta current_movedown_slow @@ -20249,9 +20249,9 @@ play_increase_level: { jmp b1 //SEG776 play_increase_level::@1 b1: - //SEG777 [331] (byte) level_bcd#21 ? ++ (byte) level_bcd#11 -- vbuz1=_inc_vbuz1 + //SEG777 [331] (byte) level_bcd#21 ← ++ (byte) level_bcd#11 -- vbuz1=_inc_vbuz1 inc level_bcd - //SEG778 [332] (byte~) play_increase_level::$1 ? (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG778 [332] (byte~) play_increase_level::$1 ← (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and level_bcd //SEG779 [333] if((byte~) play_increase_level::$1!=(byte/signed byte/word/signed word/dword/signed dword) $a) goto play_increase_level::@2 -- vbuaa_neq_vbuc1_then_la1 @@ -20260,7 +20260,7 @@ play_increase_level: { jmp b4 //SEG780 play_increase_level::@4 b4: - //SEG781 [334] (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 -- vbuz1=vbuz1_plus_vbuc1 + //SEG781 [334] (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 -- vbuz1=vbuz1_plus_vbuc1 // If level low nybble hits $a change to $10 lax level_bcd axs #-[6] @@ -20286,11 +20286,11 @@ play_increase_level: { jmp b5 //SEG790 play_increase_level::@5 b5: - //SEG791 [338] (byte) play_increase_level::b4#0 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 + //SEG791 [338] (byte) play_increase_level::b4#0 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 txa asl asl - //SEG792 [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) -- pduc1_derefidx_vbuaa=pduc1_derefidx_vbuaa_plus_pduc2_derefidx_vbuaa + //SEG792 [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) -- pduc1_derefidx_vbuaa=pduc1_derefidx_vbuaa_plus_pduc2_derefidx_vbuaa tay clc lda score_add_bcd,y @@ -20305,7 +20305,7 @@ play_increase_level: { lda score_add_bcd+3,y adc SCORE_BASE_BCD+3,y sta score_add_bcd+3,y - //SEG793 [340] (byte) play_increase_level::b#1 ? ++ (byte) play_increase_level::b#2 -- vbuxx=_inc_vbuxx + //SEG793 [340] (byte) play_increase_level::b#1 ← ++ (byte) play_increase_level::b#2 -- vbuxx=_inc_vbuxx inx //SEG794 [341] if((byte) play_increase_level::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_increase_level::@5 -- vbuxx_neq_vbuc1_then_la1 cpx #5 @@ -20375,10 +20375,10 @@ play_remove_lines: { jmp b2 //SEG821 play_remove_lines::@2 b2: - //SEG822 [347] (byte) play_remove_lines::c#0 ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) -- vbuz1=pbuc1_derefidx_vbuyy + //SEG822 [347] (byte) play_remove_lines::c#0 ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) -- vbuz1=pbuc1_derefidx_vbuyy lda playfield,y sta c - //SEG823 [348] (byte) play_remove_lines::r#1 ? -- (byte) play_remove_lines::r#2 -- vbuyy=_dec_vbuyy + //SEG823 [348] (byte) play_remove_lines::r#1 ← -- (byte) play_remove_lines::r#2 -- vbuyy=_dec_vbuyy dey //SEG824 [349] if((byte) play_remove_lines::c#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_remove_lines::@9 -- vbuz1_neq_0_then_la1 lda c @@ -20392,12 +20392,12 @@ play_remove_lines: { jmp b3 //SEG827 play_remove_lines::@3 b3: - //SEG828 [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ? (byte) play_remove_lines::c#0 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG828 [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ← (byte) play_remove_lines::c#0 -- pbuc1_derefidx_vbuxx=vbuz1 lda c sta playfield,x - //SEG829 [352] (byte) play_remove_lines::w#1 ? -- (byte) play_remove_lines::w#4 -- vbuxx=_dec_vbuxx + //SEG829 [352] (byte) play_remove_lines::w#1 ← -- (byte) play_remove_lines::w#4 -- vbuxx=_dec_vbuxx dex - //SEG830 [353] (byte) play_remove_lines::x#1 ? ++ (byte) play_remove_lines::x#2 -- vbuz1=_inc_vbuz1 + //SEG830 [353] (byte) play_remove_lines::x#1 ← ++ (byte) play_remove_lines::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG831 [354] if((byte) play_remove_lines::x#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@2 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_COLS-1+1 @@ -20413,10 +20413,10 @@ play_remove_lines: { jmp b5 //SEG834 play_remove_lines::@5 b5: - //SEG835 [356] (byte) play_remove_lines::w#2 ? (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 -- vbuxx=vbuxx_plus_vbuc1 + //SEG835 [356] (byte) play_remove_lines::w#2 ← (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 -- vbuxx=vbuxx_plus_vbuc1 txa axs #-[PLAYFIELD_COLS] - //SEG836 [357] (byte) play_remove_lines::removed#1 ? ++ (byte) play_remove_lines::removed#11 -- vbuz1=_inc_vbuz1 + //SEG836 [357] (byte) play_remove_lines::removed#1 ← ++ (byte) play_remove_lines::removed#11 -- vbuz1=_inc_vbuz1 inc removed //SEG837 [358] phi from play_remove_lines::@4 play_remove_lines::@5 to play_remove_lines::@6 [phi:play_remove_lines::@4/play_remove_lines::@5->play_remove_lines::@6] b6_from_b4: @@ -20426,7 +20426,7 @@ play_remove_lines: { jmp b6 //SEG840 play_remove_lines::@6 b6: - //SEG841 [359] (byte) play_remove_lines::y#1 ? ++ (byte) play_remove_lines::y#8 -- vbuz1=_inc_vbuz1 + //SEG841 [359] (byte) play_remove_lines::y#1 ← ++ (byte) play_remove_lines::y#8 -- vbuz1=_inc_vbuz1 inc y //SEG842 [360] if((byte) play_remove_lines::y#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -20450,10 +20450,10 @@ play_remove_lines: { rts //SEG849 play_remove_lines::@8 b8: - //SEG850 [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG850 [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #0 sta playfield,x - //SEG851 [365] (byte) play_remove_lines::w#3 ? -- (byte) play_remove_lines::w#6 -- vbuxx=_dec_vbuxx + //SEG851 [365] (byte) play_remove_lines::w#3 ← -- (byte) play_remove_lines::w#6 -- vbuxx=_dec_vbuxx dex jmp b7_from_b8 //SEG852 [366] phi from play_remove_lines::@2 to play_remove_lines::@9 [phi:play_remove_lines::@2->play_remove_lines::@9] @@ -20478,7 +20478,7 @@ play_lock_current: { .label i_3 = 9 .label i_7 = 9 .label i_9 = 9 - //SEG857 [367] (byte) play_lock_current::ypos2#0 ? (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG857 [367] (byte) play_lock_current::ypos2#0 ← (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl ypos2 //SEG858 [368] phi from play_lock_current to play_lock_current::@1 [phi:play_lock_current->play_lock_current::@1] b1_from_play_lock_current: @@ -20492,13 +20492,13 @@ play_lock_current: { jmp b1 //SEG862 play_lock_current::@1 b1: - //SEG863 [369] (byte*) play_lock_current::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG863 [369] (byte*) play_lock_current::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 ldy ypos2 lda playfield_lines,y sta playfield_line lda playfield_lines+1,y sta playfield_line+1 - //SEG864 [370] (byte) play_lock_current::col#0 ? (byte) current_xpos#122 -- vbuz1=vbuz2 + //SEG864 [370] (byte) play_lock_current::col#0 ← (byte) current_xpos#122 -- vbuz1=vbuz2 lda current_xpos sta col //SEG865 [371] phi from play_lock_current::@1 to play_lock_current::@2 [phi:play_lock_current::@1->play_lock_current::@2] @@ -20510,7 +20510,7 @@ play_lock_current: { jmp b2 //SEG869 play_lock_current::@2 b2: - //SEG870 [372] (byte) play_lock_current::i#1 ? ++ (byte) play_lock_current::i#2 -- vbuz1=_inc_vbuz2 + //SEG870 [372] (byte) play_lock_current::i#1 ← ++ (byte) play_lock_current::i#2 -- vbuz1=_inc_vbuz2 ldy i_2 iny sty i @@ -20522,16 +20522,16 @@ play_lock_current: { jmp b4 //SEG872 play_lock_current::@4 b4: - //SEG873 [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ? (byte) current_piece_char#10 -- pbuz1_derefidx_vbuz2=vbuz3 + //SEG873 [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ← (byte) current_piece_char#10 -- pbuz1_derefidx_vbuz2=vbuz3 lda current_piece_char ldy col sta (playfield_line),y jmp b3 //SEG874 play_lock_current::@3 b3: - //SEG875 [375] (byte) play_lock_current::col#1 ? ++ (byte) play_lock_current::col#2 -- vbuz1=_inc_vbuz1 + //SEG875 [375] (byte) play_lock_current::col#1 ← ++ (byte) play_lock_current::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG876 [376] (byte) play_lock_current::c#1 ? ++ (byte) play_lock_current::c#2 -- vbuxx=_inc_vbuxx + //SEG876 [376] (byte) play_lock_current::c#1 ← ++ (byte) play_lock_current::c#2 -- vbuxx=_inc_vbuxx inx //SEG877 [377] if((byte) play_lock_current::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #4 @@ -20539,12 +20539,12 @@ play_lock_current: { jmp b5 //SEG878 play_lock_current::@5 b5: - //SEG879 [378] (byte) play_lock_current::ypos2#1 ? (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG879 [378] (byte) play_lock_current::ypos2#1 ← (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG880 [379] (byte) play_lock_current::l#1 ? ++ (byte) play_lock_current::l#6 -- vbuz1=_inc_vbuz1 + //SEG880 [379] (byte) play_lock_current::l#1 ← ++ (byte) play_lock_current::l#6 -- vbuz1=_inc_vbuz1 inc l //SEG881 [380] if((byte) play_lock_current::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@6 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -20557,7 +20557,7 @@ play_lock_current: { rts //SEG884 play_lock_current::@6 b6: - //SEG885 [382] (byte~) play_lock_current::i#7 ? (byte) play_lock_current::i#1 -- vbuz1=vbuz2 + //SEG885 [382] (byte~) play_lock_current::i#7 ← (byte) play_lock_current::i#1 -- vbuz1=vbuz2 lda i sta i_7 //SEG886 [368] phi from play_lock_current::@6 to play_lock_current::@1 [phi:play_lock_current::@6->play_lock_current::@1] @@ -20568,7 +20568,7 @@ play_lock_current: { jmp b1 //SEG890 play_lock_current::@7 b7: - //SEG891 [383] (byte~) play_lock_current::i#9 ? (byte) play_lock_current::i#1 -- vbuz1=vbuz2 + //SEG891 [383] (byte~) play_lock_current::i#9 ← (byte) play_lock_current::i#1 -- vbuz1=vbuz2 lda i sta i_9 //SEG892 [371] phi from play_lock_current::@7 to play_lock_current::@2 [phi:play_lock_current::@7->play_lock_current::@2] @@ -20585,19 +20585,19 @@ play_lock_current: { keyboard_event_pressed: { .label row_bits = $a .label keycode = 9 - //SEG897 [385] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 + //SEG897 [385] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 lda keycode lsr lsr lsr - //SEG898 [386] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa + //SEG898 [386] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa tay lda keyboard_scan_values,y sta row_bits - //SEG899 [387] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 + //SEG899 [387] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 lda #7 and keycode - //SEG900 [388] (byte) keyboard_event_pressed::return#11 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa + //SEG900 [388] (byte) keyboard_event_pressed::return#11 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa tay lda keyboard_matrix_col_bitmask,y and row_bits @@ -20619,9 +20619,9 @@ keyboard_event_get: { jmp b1 //SEG905 keyboard_event_get::@1 b1: - //SEG906 [391] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#13 -- vbuz1=_dec_vbuz1 + //SEG906 [391] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#13 -- vbuz1=_dec_vbuz1 dec keyboard_events_size - //SEG907 [392] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuxx=pbuc1_derefidx_vbuz1 + //SEG907 [392] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuxx=pbuc1_derefidx_vbuz1 ldy keyboard_events_size ldx keyboard_events,y //SEG908 [393] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] @@ -20667,15 +20667,15 @@ keyboard_event_scan: { jmp b7 //SEG925 keyboard_event_scan::@7 b7: - //SEG926 [397] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 + //SEG926 [397] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 ldx row //SEG927 [398] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG928 [399] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG928 [399] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 jmp b19 //SEG929 keyboard_event_scan::@19 b19: - //SEG930 [400] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa + //SEG930 [400] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa sta row_scan //SEG931 [401] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 -- vbuz1_neq_pbuc1_derefidx_vbuz2_then_la1 lda row_scan @@ -20685,7 +20685,7 @@ keyboard_event_scan: { jmp b16 //SEG932 keyboard_event_scan::@16 b16: - //SEG933 [402] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 + //SEG933 [402] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 lax keycode axs #-[8] stx keycode @@ -20697,7 +20697,7 @@ keyboard_event_scan: { jmp b8 //SEG937 keyboard_event_scan::@8 b8: - //SEG938 [404] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 + //SEG938 [404] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 inc row //SEG939 [405] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -20715,11 +20715,11 @@ keyboard_event_scan: { lda #KEY_LSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG945 [408] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#11 + //SEG945 [408] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#11 jmp b20 //SEG946 keyboard_event_scan::@20 b20: - //SEG947 [409] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 + //SEG947 [409] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 //SEG948 [410] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 -- vbuaa_eq_0_then_la1 cmp #0 beq b1_from_b20 @@ -20747,18 +20747,18 @@ keyboard_event_scan: { lda #KEY_RSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG959 [414] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#11 + //SEG959 [414] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#11 jmp b21 //SEG960 keyboard_event_scan::@21 b21: - //SEG961 [415] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 + //SEG961 [415] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 //SEG962 [416] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2_from_b21 jmp b4 //SEG963 keyboard_event_scan::@4 b4: - //SEG964 [417] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG964 [417] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_RSHIFT tax @@ -20776,18 +20776,18 @@ keyboard_event_scan: { lda #KEY_CTRL sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG971 [420] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#11 + //SEG971 [420] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#11 jmp b22 //SEG972 keyboard_event_scan::@22 b22: - //SEG973 [421] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 + //SEG973 [421] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 //SEG974 [422] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3_from_b22 jmp b5 //SEG975 keyboard_event_scan::@5 b5: - //SEG976 [423] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG976 [423] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_CTRL tax @@ -20805,18 +20805,18 @@ keyboard_event_scan: { lda #KEY_COMMODORE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG983 [426] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::return#11 + //SEG983 [426] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::return#11 jmp b23 //SEG984 keyboard_event_scan::@23 b23: - //SEG985 [427] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#10 + //SEG985 [427] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#10 //SEG986 [428] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return -- vbuaa_eq_0_then_la1 cmp #0 beq breturn jmp b6 //SEG987 keyboard_event_scan::@6 b6: - //SEG988 [429] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuaa=vbuxx_bor_vbuc1 + //SEG988 [429] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuaa=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_COMMODORE jmp breturn @@ -20840,11 +20840,11 @@ keyboard_event_scan: { jmp b9 //SEG999 keyboard_event_scan::@9 b9: - //SEG1000 [432] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 + //SEG1000 [432] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 lda row_scan ldy row eor keyboard_scan_values,y - //SEG1001 [433] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx + //SEG1001 [433] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx and keyboard_matrix_col_bitmask,x //SEG1002 [434] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 -- vbuaa_eq_0_then_la1 cmp #0 @@ -20859,7 +20859,7 @@ keyboard_event_scan: { jmp b13 //SEG1005 keyboard_event_scan::@13 b13: - //SEG1006 [436] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx + //SEG1006 [436] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx lda keyboard_matrix_col_bitmask,x and row_scan //SEG1007 [437] if((byte) keyboard_event_scan::event_type#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 -- vbuaa_eq_0_then_la1 @@ -20868,12 +20868,12 @@ keyboard_event_scan: { jmp b14 //SEG1008 keyboard_event_scan::@14 b14: - //SEG1009 [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1009 [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 // Key pressed lda keycode ldy keyboard_events_size sta keyboard_events,y - //SEG1010 [439] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 + //SEG1010 [439] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 inc keyboard_events_size //SEG1011 [440] phi from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10] b10_from_b11: @@ -20884,9 +20884,9 @@ keyboard_event_scan: { jmp b10 //SEG1013 keyboard_event_scan::@10 b10: - //SEG1014 [441] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 + //SEG1014 [441] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 inc keycode - //SEG1015 [442] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx + //SEG1015 [442] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx inx //SEG1016 [443] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -20894,7 +20894,7 @@ keyboard_event_scan: { jmp b15 //SEG1017 keyboard_event_scan::@15 b15: - //SEG1018 [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1018 [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 // Store the current keyboard status for the row to debounce lda row_scan ldy row @@ -20902,14 +20902,14 @@ keyboard_event_scan: { jmp b8_from_b15 //SEG1019 keyboard_event_scan::@11 b11: - //SEG1020 [445] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 + //SEG1020 [445] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 lda #$40 ora keycode - //SEG1021 [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG1021 [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa // Key released ldy keyboard_events_size sta keyboard_events,y - //SEG1022 [447] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 + //SEG1022 [447] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 inc keyboard_events_size jmp b10_from_b11 } @@ -20921,10 +20921,10 @@ keyboard_event_scan: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(X) rowid) keyboard_matrix_read: { - //SEG1024 [448] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + //SEG1024 [448] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx lda keyboard_matrix_row_bitmask,x sta CIA1_PORT_A - //SEG1025 [449] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG1025 [449] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff jmp breturn @@ -20954,17 +20954,17 @@ render_show: { jmp b1 //SEG1034 render_show::@1 b1: - //SEG1035 [454] *((const byte*) D018#0) ? (byte) render_show::d018val#3 -- _deref_pbuc1=vbuaa + //SEG1035 [454] *((const byte*) D018#0) ← (byte) render_show::d018val#3 -- _deref_pbuc1=vbuaa sta D018 - //SEG1036 [455] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG1036 [455] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy level lda PIECES_COLORS_1,y sta BGCOL2 - //SEG1037 [456] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG1037 [456] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy level lda PIECES_COLORS_2,y sta BGCOL3 - //SEG1038 [457] (byte) render_screen_showing#1 ? (byte) render_screen_show#16 -- vbuz1=vbuz2 + //SEG1038 [457] (byte) render_screen_showing#1 ← (byte) render_screen_show#16 -- vbuz1=vbuz2 lda render_screen_show sta render_screen_showing jmp breturn @@ -21009,19 +21009,19 @@ play_init: { jmp b1 //SEG1054 play_init::@1 b1: - //SEG1055 [462] (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 + //SEG1055 [462] (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 tya asl tax - //SEG1056 [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 -- pptc1_derefidx_vbuxx=pbuz1 + //SEG1056 [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- pptc1_derefidx_vbuxx=pbuz1 lda pli sta playfield_lines,x lda pli+1 sta playfield_lines+1,x - //SEG1057 [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 -- pbuc1_derefidx_vbuyy=vbuz1 + //SEG1057 [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 -- pbuc1_derefidx_vbuyy=vbuz1 lda idx sta playfield_lines_idx,y - //SEG1058 [465] (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1058 [465] (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 -- pbuz1=pbuz1_plus_vbuc1 lda #PLAYFIELD_COLS clc adc pli @@ -21029,11 +21029,11 @@ play_init: { bcc !+ inc pli+1 !: - //SEG1059 [466] (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1059 [466] (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 lax idx axs #-[PLAYFIELD_COLS] stx idx - //SEG1060 [467] (byte) play_init::j#1 ? ++ (byte) play_init::j#2 -- vbuyy=_inc_vbuyy + //SEG1060 [467] (byte) play_init::j#1 ← ++ (byte) play_init::j#2 -- vbuyy=_inc_vbuyy iny //SEG1061 [468] if((byte) play_init::j#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_init::@1 -- vbuyy_neq_vbuc1_then_la1 cpy #PLAYFIELD_LINES-1+1 @@ -21041,10 +21041,10 @@ play_init: { jmp b2 //SEG1062 play_init::@2 b2: - //SEG1063 [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ? (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 -- _deref_pbuc1=vbuc2 + //SEG1063 [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ← (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 -- _deref_pbuc1=vbuc2 lda #PLAYFIELD_COLS*PLAYFIELD_LINES sta playfield_lines_idx+PLAYFIELD_LINES - //SEG1064 [470] (byte) current_movedown_slow#1 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) -- vbuz1=_deref_pbuc1 + //SEG1064 [470] (byte) current_movedown_slow#1 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) -- vbuz1=_deref_pbuc1 // Set initial speed of moving down a tetromino lda MOVEDOWN_SLOW_SPEEDS sta current_movedown_slow @@ -21060,11 +21060,11 @@ play_init: { jmp b3 //SEG1069 play_init::@3 b3: - //SEG1070 [472] (byte) play_init::b4#0 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 + //SEG1070 [472] (byte) play_init::b4#0 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 txa asl asl - //SEG1071 [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) -- pduc1_derefidx_vbuaa=pduc2_derefidx_vbuaa + //SEG1071 [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) -- pduc1_derefidx_vbuaa=pduc2_derefidx_vbuaa tay lda SCORE_BASE_BCD,y sta score_add_bcd,y @@ -21074,7 +21074,7 @@ play_init: { sta score_add_bcd+2,y lda SCORE_BASE_BCD+3,y sta score_add_bcd+3,y - //SEG1072 [474] (byte) play_init::b#1 ? ++ (byte) play_init::b#2 -- vbuxx=_inc_vbuxx + //SEG1072 [474] (byte) play_init::b#1 ← ++ (byte) play_init::b#2 -- vbuxx=_inc_vbuxx inx //SEG1073 [475] if((byte) play_init::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_init::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #5 @@ -21090,36 +21090,36 @@ play_init: { sprites_irq_init: { //SEG1077 asm { sei } sei - //SEG1078 [478] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1078 [478] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Acknowledge any IRQ and setup the next one lda #IRQ_RASTER sta IRQ_STATUS //SEG1079 asm { ldaCIA1_INTERRUPT } lda CIA1_INTERRUPT - //SEG1080 [480] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG1080 [480] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG1081 [481] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG1081 [481] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG1082 [482] *((const byte*) CIA1_INTERRUPT#0) ? (const byte) CIA_INTERRUPT_CLEAR#0 -- _deref_pbuc1=vbuc2 + //SEG1082 [482] *((const byte*) CIA1_INTERRUPT#0) ← (const byte) CIA_INTERRUPT_CLEAR#0 -- _deref_pbuc1=vbuc2 // Disable CIA 1 Timer IRQ lda #CIA_INTERRUPT_CLEAR sta CIA1_INTERRUPT - //SEG1083 [483] *((const byte*) VIC_CONTROL#0) ? *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- _deref_pbuc1=_deref_pbuc1_band_vbuc2 + //SEG1083 [483] *((const byte*) VIC_CONTROL#0) ← *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- _deref_pbuc1=_deref_pbuc1_band_vbuc2 // Set raster line lda #$7f and VIC_CONTROL sta VIC_CONTROL - //SEG1084 [484] *((const byte*) RASTER#0) ? (const byte) IRQ_RASTER_FIRST#0 -- _deref_pbuc1=vbuc2 + //SEG1084 [484] *((const byte*) RASTER#0) ← (const byte) IRQ_RASTER_FIRST#0 -- _deref_pbuc1=vbuc2 lda #IRQ_RASTER_FIRST sta RASTER - //SEG1085 [485] *((const byte*) IRQ_ENABLE#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1085 [485] *((const byte*) IRQ_ENABLE#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Enable Raster Interrupt lda #IRQ_RASTER sta IRQ_ENABLE - //SEG1086 [486] *((const void()**) HARDWARE_IRQ#0) ? &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2 + //SEG1086 [486] *((const void()**) HARDWARE_IRQ#0) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2 // Set the IRQ routine lda #sprites_init::@1] @@ -21164,21 +21164,21 @@ sprites_init: { jmp b1 //SEG1101 sprites_init::@1 b1: - //SEG1102 [494] (byte) sprites_init::s2#0 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 + //SEG1102 [494] (byte) sprites_init::s2#0 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 tya asl tax - //SEG1103 [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG1103 [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 -- pbuc1_derefidx_vbuxx=vbuz1 lda xpos sta SPRITES_XPOS,x - //SEG1104 [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (const byte) BLACK#0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG1104 [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (const byte) BLACK#0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #BLACK sta SPRITES_COLS,y - //SEG1105 [497] (byte) sprites_init::xpos#1 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1105 [497] (byte) sprites_init::xpos#1 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 -- vbuz1=vbuz1_plus_vbuc1 lax xpos axs #-[$18] stx xpos - //SEG1106 [498] (byte) sprites_init::s#1 ? ++ (byte) sprites_init::s#2 -- vbuyy=_inc_vbuyy + //SEG1106 [498] (byte) sprites_init::s#1 ← ++ (byte) sprites_init::s#2 -- vbuyy=_inc_vbuyy iny //SEG1107 [499] if((byte) sprites_init::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto sprites_init::@1 -- vbuyy_neq_vbuc1_then_la1 cpy #4 @@ -21198,7 +21198,7 @@ render_init: { jmp vicSelectGfxBank1 //SEG1111 render_init::vicSelectGfxBank1 vicSelectGfxBank1: - //SEG1112 [502] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1112 [502] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG1113 [503] phi from render_init::vicSelectGfxBank1 to render_init::vicSelectGfxBank1_toDd001 [phi:render_init::vicSelectGfxBank1->render_init::vicSelectGfxBank1_toDd001] @@ -21209,29 +21209,29 @@ render_init: { jmp vicSelectGfxBank1_b1 //SEG1115 render_init::vicSelectGfxBank1_@1 vicSelectGfxBank1_b1: - //SEG1116 [504] *((const byte*) CIA2_PORT_A#0) ? (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG1116 [504] *((const byte*) CIA2_PORT_A#0) ← (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A jmp b2 //SEG1117 render_init::@2 b2: - //SEG1118 [505] *((const byte*) D011#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1118 [505] *((const byte*) D011#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Enable Extended Background Color Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta D011 - //SEG1119 [506] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1119 [506] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL - //SEG1120 [507] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1120 [507] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL1 - //SEG1121 [508] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG1121 [508] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0) -- _deref_pbuc1=_deref_pbuc2 lda PIECES_COLORS_1 sta BGCOL2 - //SEG1122 [509] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG1122 [509] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0) -- _deref_pbuc1=_deref_pbuc2 lda PIECES_COLORS_2 sta BGCOL3 - //SEG1123 [510] *((const byte*) BGCOL4#0) ? (const byte) GREY#0 -- _deref_pbuc1=vbuc2 + //SEG1123 [510] *((const byte*) BGCOL4#0) ← (const byte) GREY#0 -- _deref_pbuc1=vbuc2 lda #GREY sta BGCOL4 //SEG1124 [511] call render_screen_original @@ -21280,25 +21280,25 @@ render_init: { jmp b1 //SEG1140 render_init::@1 b1: - //SEG1141 [515] (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 + //SEG1141 [515] (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 txa asl - //SEG1142 [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuaa=pbuz1 + //SEG1142 [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuaa=pbuz1 tay lda li_1 sta screen_lines_1,y lda li_1+1 sta screen_lines_1+1,y - //SEG1143 [517] (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 + //SEG1143 [517] (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 txa asl - //SEG1144 [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuaa=pbuz1 + //SEG1144 [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuaa=pbuz1 tay lda li_2 sta screen_lines_2,y lda li_2+1 sta screen_lines_2+1,y - //SEG1145 [519] (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1145 [519] (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc li_1 @@ -21306,7 +21306,7 @@ render_init: { bcc !+ inc li_1+1 !: - //SEG1146 [520] (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1146 [520] (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc li_2 @@ -21314,7 +21314,7 @@ render_init: { bcc !+ inc li_2+1 !: - //SEG1147 [521] (byte) render_init::i#1 ? ++ (byte) render_init::i#2 -- vbuxx=_inc_vbuxx + //SEG1147 [521] (byte) render_init::i#1 ← ++ (byte) render_init::i#2 -- vbuxx=_inc_vbuxx inx //SEG1148 [522] if((byte) render_init::i#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_init::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #PLAYFIELD_LINES-1+1 @@ -21383,25 +21383,25 @@ render_screen_original: { jmp b2 //SEG1173 render_screen_original::@2 b2: - //SEG1174 [527] *((byte*) render_screen_original::screen#5) ? (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 + //SEG1174 [527] *((byte*) render_screen_original::screen#5) ← (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 lda #SPACE ldy #0 sta (screen),y - //SEG1175 [528] (byte*) render_screen_original::screen#2 ? ++ (byte*) render_screen_original::screen#5 -- pbuz1=_inc_pbuz1 + //SEG1175 [528] (byte*) render_screen_original::screen#2 ← ++ (byte*) render_screen_original::screen#5 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1176 [529] *((byte*) render_screen_original::cols#4) ? (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 + //SEG1176 [529] *((byte*) render_screen_original::cols#4) ← (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 lda #BLACK ldy #0 sta (cols),y - //SEG1177 [530] (byte*) render_screen_original::cols#1 ? ++ (byte*) render_screen_original::cols#4 -- pbuz1=_inc_pbuz1 + //SEG1177 [530] (byte*) render_screen_original::cols#1 ← ++ (byte*) render_screen_original::cols#4 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1178 [531] (byte) render_screen_original::x#1 ? ++ (byte) render_screen_original::x#4 -- vbuxx=_inc_vbuxx + //SEG1178 [531] (byte) render_screen_original::x#1 ← ++ (byte) render_screen_original::x#4 -- vbuxx=_inc_vbuxx inx //SEG1179 [532] if((byte) render_screen_original::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_screen_original::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #4 @@ -21417,37 +21417,37 @@ render_screen_original: { jmp b3 //SEG1186 render_screen_original::@3 b3: - //SEG1187 [534] *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1187 [534] *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (oscr),y ldy #0 sta (screen),y - //SEG1188 [535] (byte*) render_screen_original::screen#3 ? ++ (byte*) render_screen_original::screen#6 -- pbuz1=_inc_pbuz1 + //SEG1188 [535] (byte*) render_screen_original::screen#3 ← ++ (byte*) render_screen_original::screen#6 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1189 [536] (byte*) render_screen_original::oscr#1 ? ++ (byte*) render_screen_original::oscr#2 -- pbuz1=_inc_pbuz1 + //SEG1189 [536] (byte*) render_screen_original::oscr#1 ← ++ (byte*) render_screen_original::oscr#2 -- pbuz1=_inc_pbuz1 inc oscr bne !+ inc oscr+1 !: - //SEG1190 [537] *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1190 [537] *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (ocols),y ldy #0 sta (cols),y - //SEG1191 [538] (byte*) render_screen_original::cols#2 ? ++ (byte*) render_screen_original::cols#5 -- pbuz1=_inc_pbuz1 + //SEG1191 [538] (byte*) render_screen_original::cols#2 ← ++ (byte*) render_screen_original::cols#5 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1192 [539] (byte*) render_screen_original::ocols#1 ? ++ (byte*) render_screen_original::ocols#2 -- pbuz1=_inc_pbuz1 + //SEG1192 [539] (byte*) render_screen_original::ocols#1 ← ++ (byte*) render_screen_original::ocols#2 -- pbuz1=_inc_pbuz1 inc ocols bne !+ inc ocols+1 !: - //SEG1193 [540] (byte) render_screen_original::x#2 ? ++ (byte) render_screen_original::x#5 -- vbuxx=_inc_vbuxx + //SEG1193 [540] (byte) render_screen_original::x#2 ← ++ (byte) render_screen_original::x#5 -- vbuxx=_inc_vbuxx inx //SEG1194 [541] if((byte) render_screen_original::x#2!=(byte/signed byte/word/signed word/dword/signed dword) $24) goto render_screen_original::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #$24 @@ -21461,25 +21461,25 @@ render_screen_original: { jmp b4 //SEG1199 render_screen_original::@4 b4: - //SEG1200 [543] *((byte*) render_screen_original::screen#7) ? (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 + //SEG1200 [543] *((byte*) render_screen_original::screen#7) ← (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 lda #SPACE ldy #0 sta (screen),y - //SEG1201 [544] (byte*) render_screen_original::screen#10 ? ++ (byte*) render_screen_original::screen#7 -- pbuz1=_inc_pbuz1 + //SEG1201 [544] (byte*) render_screen_original::screen#10 ← ++ (byte*) render_screen_original::screen#7 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1202 [545] *((byte*) render_screen_original::cols#6) ? (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 + //SEG1202 [545] *((byte*) render_screen_original::cols#6) ← (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 lda #BLACK ldy #0 sta (cols),y - //SEG1203 [546] (byte*) render_screen_original::cols#3 ? ++ (byte*) render_screen_original::cols#6 -- pbuz1=_inc_pbuz1 + //SEG1203 [546] (byte*) render_screen_original::cols#3 ← ++ (byte*) render_screen_original::cols#6 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1204 [547] (byte) render_screen_original::x#3 ? ++ (byte) render_screen_original::x#6 -- vbuxx=_inc_vbuxx + //SEG1204 [547] (byte) render_screen_original::x#3 ← ++ (byte) render_screen_original::x#6 -- vbuxx=_inc_vbuxx inx //SEG1205 [548] if((byte) render_screen_original::x#3!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render_screen_original::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -21487,7 +21487,7 @@ render_screen_original: { jmp b5 //SEG1206 render_screen_original::@5 b5: - //SEG1207 [549] (byte) render_screen_original::y#1 ? ++ (byte) render_screen_original::y#6 -- vbuz1=_inc_vbuz1 + //SEG1207 [549] (byte) render_screen_original::y#1 ← ++ (byte) render_screen_original::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG1208 [550] if((byte) render_screen_original::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render_screen_original::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -21502,12 +21502,12 @@ render_screen_original: { //SEG1211 sid_rnd_init // Initialize SID voice 3 for random number generation sid_rnd_init: { - //SEG1212 [552] *((const word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff -- _deref_pwuc1=vwuc2 + //SEG1212 [552] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff -- _deref_pwuc1=vwuc2 lda #<$ffff sta SID_VOICE3_FREQ lda #>$ffff sta SID_VOICE3_FREQ+1 - //SEG1213 [553] *((const byte*) SID_VOICE3_CONTROL#0) ? (const byte) SID_CONTROL_NOISE#0 -- _deref_pbuc1=vbuc2 + //SEG1213 [553] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0 -- _deref_pbuc1=vbuc2 lda #SID_CONTROL_NOISE sta SID_VOICE3_CONTROL jmp breturn @@ -21530,21 +21530,21 @@ sprites_irq: { //(*BGCOL)++; // Clear decimal flag (because it is used by the score algorithm) cld - //SEG1219 [556] (byte) sprites_irq::ypos#0 ? (byte) irq_sprite_ypos#0 -- vbuaa=vbuz1 + //SEG1219 [556] (byte) sprites_irq::ypos#0 ← (byte) irq_sprite_ypos#0 -- vbuaa=vbuz1 // Place the sprites lda irq_sprite_ypos - //SEG1220 [557] *((const byte*) SPRITES_YPOS#0) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1220 [557] *((const byte*) SPRITES_YPOS#0) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS - //SEG1221 [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1221 [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS+2 - //SEG1222 [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1222 [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS+4 - //SEG1223 [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1223 [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS+6 - //SEG1224 [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1224 [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx irq_raster_next inx - //SEG1225 [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ? (byte/signed word/word/dword/signed dword~) sprites_irq::$0 -- vbuz1=vbuxx + //SEG1225 [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ← (byte/signed word/word/dword/signed dword~) sprites_irq::$0 -- vbuz1=vbuxx // Wait for the y-position before changing sprite pointers stx raster_sprite_gfx_modify jmp b8 @@ -21557,7 +21557,7 @@ sprites_irq: { jmp b9 //SEG1228 sprites_irq::@9 b9: - //SEG1229 [564] (byte) sprites_irq::ptr#0 ? (byte) irq_sprite_ptr#0 -- vbuxx=vbuz1 + //SEG1229 [564] (byte) sprites_irq::ptr#0 ← (byte) irq_sprite_ptr#0 -- vbuxx=vbuz1 ldx irq_sprite_ptr //SEG1230 [565] if((byte) render_screen_showing#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sprites_irq::@1 -- vbuz1_eq_0_then_la1 lda render_screen_showing @@ -21566,24 +21566,24 @@ sprites_irq: { jmp b10 //SEG1231 sprites_irq::@10 b10: - //SEG1232 [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ? (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx + //SEG1232 [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ← (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_2 - //SEG1233 [567] (byte) sprites_irq::ptr#3 ? ++ (byte) sprites_irq::ptr#0 -- vbuaa=_inc_vbuxx + //SEG1233 [567] (byte) sprites_irq::ptr#3 ← ++ (byte) sprites_irq::ptr#0 -- vbuaa=_inc_vbuxx inx txa - //SEG1234 [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa + //SEG1234 [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_2+1 - //SEG1235 [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa + //SEG1235 [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_2+2 - //SEG1236 [570] (byte) sprites_irq::ptr#4 ? ++ (byte) sprites_irq::ptr#3 -- vbuaa=_inc_vbuaa + //SEG1236 [570] (byte) sprites_irq::ptr#4 ← ++ (byte) sprites_irq::ptr#3 -- vbuaa=_inc_vbuaa clc adc #1 - //SEG1237 [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#4 -- _deref_pbuc1=vbuaa + //SEG1237 [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#4 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_2+3 jmp b2 //SEG1238 sprites_irq::@2 b2: - //SEG1239 [572] (byte) irq_cnt#1 ? ++ (byte) irq_cnt#0 -- vbuz1=_inc_vbuz1 + //SEG1239 [572] (byte) irq_cnt#1 ← ++ (byte) irq_cnt#0 -- vbuz1=_inc_vbuz1 inc irq_cnt //SEG1240 [573] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) 9) goto sprites_irq::@3 -- vbuz1_eq_vbuc1_then_la1 lda #9 @@ -21599,15 +21599,15 @@ sprites_irq: { jmp b7 //SEG1243 sprites_irq::@7 b7: - //SEG1244 [575] (byte) irq_raster_next#3 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1244 [575] (byte) irq_raster_next#3 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 -- vbuz1=vbuz1_plus_vbuc1 lax irq_raster_next axs #-[$14] stx irq_raster_next - //SEG1245 [576] (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1245 [576] (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ypos axs #-[$15] stx irq_sprite_ypos - //SEG1246 [577] (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1246 [577] (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ptr axs #-[3] stx irq_sprite_ptr @@ -21619,11 +21619,11 @@ sprites_irq: { jmp b5 //SEG1249 sprites_irq::@5 b5: - //SEG1250 [579] *((const byte*) RASTER#0) ? (byte) irq_raster_next#4 -- _deref_pbuc1=vbuz1 + //SEG1250 [579] *((const byte*) RASTER#0) ← (byte) irq_raster_next#4 -- _deref_pbuc1=vbuz1 // Setup next interrupt lda irq_raster_next sta RASTER - //SEG1251 [580] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1251 [580] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Acknowledge the IRQ and setup the next one lda #IRQ_RASTER sta IRQ_STATUS @@ -21638,28 +21638,28 @@ sprites_irq: { rti //SEG1254 sprites_irq::@4 b4: - //SEG1255 [582] (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 + //SEG1255 [582] (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 lda #0 sta irq_cnt - //SEG1256 [583] (byte) irq_raster_next#2 ? (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 + //SEG1256 [583] (byte) irq_raster_next#2 ← (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 lda #IRQ_RASTER_FIRST sta irq_raster_next - //SEG1257 [584] (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1257 [584] (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ypos axs #-[$15] stx irq_sprite_ypos - //SEG1258 [585] (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1258 [585] (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ptr axs #-[3] stx irq_sprite_ptr jmp b5_from_b4 //SEG1259 sprites_irq::@3 b3: - //SEG1260 [586] (byte) irq_raster_next#1 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1260 [586] (byte) irq_raster_next#1 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 lax irq_raster_next axs #-[$15] stx irq_raster_next - //SEG1261 [587] (byte) irq_sprite_ypos#1 ? (const byte) SPRITES_FIRST_YPOS#0 -- vbuz1=vbuc1 + //SEG1261 [587] (byte) irq_sprite_ypos#1 ← (const byte) SPRITES_FIRST_YPOS#0 -- vbuz1=vbuc1 lda #SPRITES_FIRST_YPOS sta irq_sprite_ypos //SEG1262 [588] phi from sprites_irq::@3 to sprites_irq::toSpritePtr2 [phi:sprites_irq::@3->sprites_irq::toSpritePtr2] @@ -21670,24 +21670,24 @@ sprites_irq: { jmp b11 //SEG1264 sprites_irq::@11 b11: - //SEG1265 [589] (byte) irq_sprite_ptr#1 ? (const byte) sprites_irq::toSpritePtr2_return#0 -- vbuz1=vbuc1 + //SEG1265 [589] (byte) irq_sprite_ptr#1 ← (const byte) sprites_irq::toSpritePtr2_return#0 -- vbuz1=vbuc1 lda #toSpritePtr2_return sta irq_sprite_ptr jmp b5_from_b11 //SEG1266 sprites_irq::@1 b1: - //SEG1267 [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ? (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx + //SEG1267 [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ← (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_1 - //SEG1268 [591] (byte) sprites_irq::ptr#1 ? ++ (byte) sprites_irq::ptr#0 -- vbuxx=_inc_vbuxx + //SEG1268 [591] (byte) sprites_irq::ptr#1 ← ++ (byte) sprites_irq::ptr#0 -- vbuxx=_inc_vbuxx inx - //SEG1269 [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx + //SEG1269 [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_1+1 - //SEG1270 [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx + //SEG1270 [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_1+2 - //SEG1271 [594] (byte) sprites_irq::ptr#2 ? ++ (byte) sprites_irq::ptr#1 -- vbuaa=_inc_vbuxx + //SEG1271 [594] (byte) sprites_irq::ptr#2 ← ++ (byte) sprites_irq::ptr#1 -- vbuaa=_inc_vbuxx inx txa - //SEG1272 [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#2 -- _deref_pbuc1=vbuaa + //SEG1272 [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#2 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_1+3 jmp b2 } @@ -23930,7 +23930,7 @@ Score: 3350899 //SEG3 @begin bbegin: //SEG4 @1 -//SEG5 [1] (byte) render_screen_showing#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 +//SEG5 [1] (byte) render_screen_showing#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 // The screen currently being showed to the user. $00 for screen 1 / $40 for screen 2. lda #0 sta render_screen_showing @@ -23941,22 +23941,22 @@ bbegin: //SEG9 @2 //SEG10 kickasm(location (const byte*) PLAYFIELD_SPRITES#0) {{ .var sprites = LoadPicture("playfield-sprites.png", List().add($010101, $000000)) // Put the sprites into memory .for(var sy=0;sy<10;sy++) { .var sprite_gfx_y = sy*20 .for(var sx=0;sx<3;sx++) { .for (var y=0;y<21; y++) { .var gfx_y = sprite_gfx_y + mod(2100+y-sprite_gfx_y,21) .for (var c=0; c<3; c++) { .byte sprites.getSinglecolorByte(sx*3+c,gfx_y) } } .byte 0 } } }} //SEG11 @3 -//SEG12 [6] (byte) irq_raster_next#0 ? (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 +//SEG12 [6] (byte) irq_raster_next#0 ← (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 // The raster line of the next IRQ lda #IRQ_RASTER_FIRST sta irq_raster_next -//SEG13 [7] (byte) irq_sprite_ypos#0 ? (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuc1 +//SEG13 [7] (byte) irq_sprite_ypos#0 ← (const byte) SPRITES_FIRST_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuc1 // Y-pos of the sprites on the next IRQ lda #SPRITES_FIRST_YPOS+$15 sta irq_sprite_ypos //SEG14 [8] phi from @3 to toSpritePtr1 [phi:@3->toSpritePtr1] //SEG15 toSpritePtr1 //SEG16 @5 -//SEG17 [9] (byte) irq_sprite_ptr#0 ? (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuc1 +//SEG17 [9] (byte) irq_sprite_ptr#0 ← (const byte) toSpritePtr1_return#0+(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuc1 // Index of the sprites to show on the next IRQ lda #toSpritePtr1_return+3 sta irq_sprite_ptr -//SEG18 [10] (byte) irq_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 +//SEG18 [10] (byte) irq_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 // Counting the 10 IRQs lda #0 sta irq_cnt @@ -24015,17 +24015,17 @@ main: { ldx #$40 jsr render_playfield //SEG58 main::@15 - //SEG59 [30] (byte~) current_ypos#104 ? (byte) current_ypos#6 -- vbuxx=vbuz1 + //SEG59 [30] (byte~) current_ypos#104 ← (byte) current_ypos#6 -- vbuxx=vbuz1 ldx current_ypos - //SEG60 [31] (byte~) current_xpos#128 ? (byte) current_xpos#103 -- vbuz1=vbuz2 + //SEG60 [31] (byte~) current_xpos#128 ← (byte) current_xpos#103 -- vbuz1=vbuz2 lda current_xpos sta current_xpos_128 - //SEG61 [32] (byte*~) current_piece_gfx#118 ? (byte*) current_piece_gfx#74 -- pbuz1=pbuz2 + //SEG61 [32] (byte*~) current_piece_gfx#118 ← (byte*) current_piece_gfx#74 -- pbuz1=pbuz2 lda current_piece_gfx sta current_piece_gfx_118 lda current_piece_gfx+1 sta current_piece_gfx_118+1 - //SEG62 [33] (byte~) current_piece_char#106 ? (byte) current_piece_char#5 -- vbuz1=vbuz2 + //SEG62 [33] (byte~) current_piece_char#106 ← (byte) current_piece_char#5 -- vbuz1=vbuz2 lda current_piece_char sta current_piece_char_106 //SEG63 [34] call render_moving @@ -24039,7 +24039,7 @@ main: { //SEG69 [129] phi (byte) current_ypos#13 = (byte~) current_ypos#104 [phi:main::@15->render_moving#4] -- register_copy jsr render_moving //SEG70 main::@16 - //SEG71 [35] (byte~) next_piece_idx#84 ? (byte) play_spawn_current::piece_idx#2 -- vbuxx=vbuz1 + //SEG71 [35] (byte~) next_piece_idx#84 ← (byte) play_spawn_current::piece_idx#2 -- vbuxx=vbuz1 ldx play_spawn_current.piece_idx //SEG72 [36] call render_next //SEG73 [108] phi from main::@16 to render_next [phi:main::@16->render_next] @@ -24047,7 +24047,7 @@ main: { //SEG75 [108] phi (byte) render_screen_render#15 = (byte/signed byte/word/signed word/dword/signed dword) $40 [phi:main::@16->render_next#1] -- vbuaa=vbuc1 lda #$40 jsr render_next - //SEG76 [37] (byte*~) current_piece#96 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG76 [37] (byte*~) current_piece#96 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy play_spawn_current._0 lda PIECES,y sta current_piece @@ -24125,54 +24125,54 @@ main: { //SEG122 main::@18 //SEG123 [45] call keyboard_event_get jsr keyboard_event_get - //SEG124 [46] (byte) keyboard_event_get::return#3 ? (byte) keyboard_event_get::return#2 + //SEG124 [46] (byte) keyboard_event_get::return#3 ← (byte) keyboard_event_get::return#2 //SEG125 main::@19 - //SEG126 [47] (byte) main::key_event#0 ? (byte) keyboard_event_get::return#3 + //SEG126 [47] (byte) main::key_event#0 ← (byte) keyboard_event_get::return#3 //SEG127 [48] if((byte) game_over#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@4 -- vbuz1_eq_0_then_la1 lda game_over cmp #0 beq b4 //SEG128 main::@5 b5: - //SEG129 [49] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG129 [49] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL jmp b5 //SEG130 main::@4 b4: - //SEG131 [50] (byte) play_movement::key_event#0 ? (byte) main::key_event#0 -- vbuz1=vbuxx + //SEG131 [50] (byte) play_movement::key_event#0 ← (byte) main::key_event#0 -- vbuz1=vbuxx stx play_movement.key_event //SEG132 [51] call play_movement jsr play_movement - //SEG133 [52] (byte) play_movement::return#3 ? (byte) play_movement::return#2 -- vbuaa=vbuz1 + //SEG133 [52] (byte) play_movement::return#3 ← (byte) play_movement::return#2 -- vbuaa=vbuz1 lda play_movement.return //SEG134 main::@20 - //SEG135 [53] (byte) main::render#1 ? (byte) play_movement::return#3 + //SEG135 [53] (byte) main::render#1 ← (byte) play_movement::return#3 //SEG136 main::@6 //SEG137 [54] if((byte) main::render#1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@1 -- vbuaa_eq_0_then_la1 cmp #0 beq b1 //SEG138 main::@7 - //SEG139 [55] (byte~) render_screen_render#70 ? (byte) render_screen_render#18 -- vbuxx=vbuz1 + //SEG139 [55] (byte~) render_screen_render#70 ← (byte) render_screen_render#18 -- vbuxx=vbuz1 ldx render_screen_render //SEG140 [56] call render_playfield //SEG141 [150] phi from main::@7 to render_playfield [phi:main::@7->render_playfield] //SEG142 [150] phi (byte) render_screen_render#22 = (byte~) render_screen_render#70 [phi:main::@7->render_playfield#0] -- register_copy jsr render_playfield //SEG143 main::@21 - //SEG144 [57] (byte~) current_ypos#105 ? (byte) current_ypos#19 -- vbuxx=vbuz1 + //SEG144 [57] (byte~) current_ypos#105 ← (byte) current_ypos#19 -- vbuxx=vbuz1 ldx current_ypos - //SEG145 [58] (byte~) render_screen_render#69 ? (byte) render_screen_render#18 -- vbuz1=vbuz2 + //SEG145 [58] (byte~) render_screen_render#69 ← (byte) render_screen_render#18 -- vbuz1=vbuz2 lda render_screen_render sta render_screen_render_69 - //SEG146 [59] (byte~) current_xpos#129 ? (byte) current_xpos#19 -- vbuz1=vbuz2 + //SEG146 [59] (byte~) current_xpos#129 ← (byte) current_xpos#19 -- vbuz1=vbuz2 lda current_xpos sta current_xpos_129 - //SEG147 [60] (byte*~) current_piece_gfx#119 ? (byte*) current_piece_gfx#18 -- pbuz1=pbuz2 + //SEG147 [60] (byte*~) current_piece_gfx#119 ← (byte*) current_piece_gfx#18 -- pbuz1=pbuz2 lda current_piece_gfx sta current_piece_gfx_119 lda current_piece_gfx+1 sta current_piece_gfx_119+1 - //SEG148 [61] (byte~) current_piece_char#107 ? (byte) current_piece_char#16 -- vbuz1=vbuz2 + //SEG148 [61] (byte~) current_piece_char#107 ← (byte) current_piece_char#16 -- vbuz1=vbuz2 lda current_piece_char sta current_piece_char_107 //SEG149 [62] call render_moving @@ -24184,9 +24184,9 @@ main: { //SEG155 [129] phi (byte) current_ypos#13 = (byte~) current_ypos#105 [phi:main::@21->render_moving#4] -- register_copy jsr render_moving //SEG156 main::@22 - //SEG157 [63] (byte~) render_screen_render#68 ? (byte) render_screen_render#18 -- vbuaa=vbuz1 + //SEG157 [63] (byte~) render_screen_render#68 ← (byte) render_screen_render#18 -- vbuaa=vbuz1 lda render_screen_render - //SEG158 [64] (byte~) next_piece_idx#85 ? (byte) next_piece_idx#16 -- vbuxx=vbuz1 + //SEG158 [64] (byte~) next_piece_idx#85 ← (byte) next_piece_idx#16 -- vbuxx=vbuz1 ldx next_piece_idx //SEG159 [65] call render_next //SEG160 [108] phi from main::@22 to render_next [phi:main::@22->render_next] @@ -24224,11 +24224,11 @@ main: { //SEG187 render_screen_swap // Swap rendering to the other screen (used for double buffering) render_screen_swap: { - //SEG188 [70] (byte) render_screen_render#11 ? (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG188 [70] (byte) render_screen_render#11 ← (byte) render_screen_render#18 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 lda render_screen_render eor #$40 sta render_screen_render - //SEG189 [71] (byte) render_screen_show#13 ? (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG189 [71] (byte) render_screen_show#13 ← (byte) render_screen_show#16 ^ (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuz1=vbuz1_bxor_vbuc1 lda render_screen_show eor #$40 sta render_screen_show @@ -24266,8 +24266,8 @@ render_score: { sta screen+1 //SEG200 render_score::@1 b1: - //SEG201 [76] (byte*) render_bcd::screen#0 ? (byte*) render_score::screen#3 - //SEG202 [77] (byte) render_bcd::bcd#0 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbuxx=_deref_pbuc1 + //SEG201 [76] (byte*) render_bcd::screen#0 ← (byte*) render_score::screen#3 + //SEG202 [77] (byte) render_bcd::bcd#0 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 2) -- vbuxx=_deref_pbuc1 ldx score_bytes+2 //SEG203 [78] call render_bcd //SEG204 [95] phi from render_score::@1 to render_bcd [phi:render_score::@1->render_bcd] @@ -24282,8 +24282,8 @@ render_score: { //SEG208 [95] phi (byte*) render_bcd::screen#6 = (byte*) render_bcd::screen#0 [phi:render_score::@1->render_bcd#3] -- register_copy jsr render_bcd //SEG209 render_score::@3 - //SEG210 [79] (byte*) render_bcd::screen#1 ? (byte*) render_score::screen#3 - //SEG211 [80] (byte) render_bcd::bcd#1 ? *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbuxx=_deref_pbuc1 + //SEG210 [79] (byte*) render_bcd::screen#1 ← (byte*) render_score::screen#3 + //SEG211 [80] (byte) render_bcd::bcd#1 ← *((const byte*) render_score::score_bytes#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- vbuxx=_deref_pbuc1 ldx score_bytes+1 //SEG212 [81] call render_bcd //SEG213 [95] phi from render_score::@3 to render_bcd [phi:render_score::@3->render_bcd] @@ -24298,8 +24298,8 @@ render_score: { //SEG217 [95] phi (byte*) render_bcd::screen#6 = (byte*) render_bcd::screen#1 [phi:render_score::@3->render_bcd#3] -- register_copy jsr render_bcd //SEG218 render_score::@4 - //SEG219 [82] (byte*) render_bcd::screen#2 ? (byte*) render_score::screen#3 - //SEG220 [83] (byte) render_bcd::bcd#2 ? *((const byte*) render_score::score_bytes#0) -- vbuxx=_deref_pbuc1 + //SEG219 [82] (byte*) render_bcd::screen#2 ← (byte*) render_score::screen#3 + //SEG220 [83] (byte) render_bcd::bcd#2 ← *((const byte*) render_score::score_bytes#0) -- vbuxx=_deref_pbuc1 ldx score_bytes //SEG221 [84] call render_bcd //SEG222 [95] phi from render_score::@4 to render_bcd [phi:render_score::@4->render_bcd] @@ -24314,10 +24314,10 @@ render_score: { //SEG226 [95] phi (byte*) render_bcd::screen#6 = (byte*) render_bcd::screen#2 [phi:render_score::@4->render_bcd#3] -- register_copy jsr render_bcd //SEG227 render_score::@5 - //SEG228 [85] (byte) render_bcd::bcd#3 ? > (word) lines_bcd#15 -- vbuxx=_hi_vwuz1 + //SEG228 [85] (byte) render_bcd::bcd#3 ← > (word) lines_bcd#15 -- vbuxx=_hi_vwuz1 lda lines_bcd+1 tax - //SEG229 [86] (byte*) render_bcd::screen#3 ? (byte*) render_score::screen#3 + //SEG229 [86] (byte*) render_bcd::screen#3 ← (byte*) render_score::screen#3 //SEG230 [87] call render_bcd //SEG231 [95] phi from render_score::@5 to render_bcd [phi:render_score::@5->render_bcd] //SEG232 [95] phi (byte) render_bcd::bcd#6 = (byte) render_bcd::bcd#3 [phi:render_score::@5->render_bcd#0] -- register_copy @@ -24331,10 +24331,10 @@ render_score: { //SEG235 [95] phi (byte*) render_bcd::screen#6 = (byte*) render_bcd::screen#3 [phi:render_score::@5->render_bcd#3] -- register_copy jsr render_bcd //SEG236 render_score::@6 - //SEG237 [88] (byte) render_bcd::bcd#4 ? < (word) lines_bcd#15 -- vbuxx=_lo_vwuz1 + //SEG237 [88] (byte) render_bcd::bcd#4 ← < (word) lines_bcd#15 -- vbuxx=_lo_vwuz1 lda lines_bcd tax - //SEG238 [89] (byte*) render_bcd::screen#4 ? (byte*) render_score::screen#3 + //SEG238 [89] (byte*) render_bcd::screen#4 ← (byte*) render_score::screen#3 //SEG239 [90] call render_bcd //SEG240 [95] phi from render_score::@6 to render_bcd [phi:render_score::@6->render_bcd] //SEG241 [95] phi (byte) render_bcd::bcd#6 = (byte) render_bcd::bcd#4 [phi:render_score::@6->render_bcd#0] -- register_copy @@ -24348,8 +24348,8 @@ render_score: { //SEG244 [95] phi (byte*) render_bcd::screen#6 = (byte*) render_bcd::screen#4 [phi:render_score::@6->render_bcd#3] -- register_copy jsr render_bcd //SEG245 render_score::@7 - //SEG246 [91] (byte*) render_bcd::screen#5 ? (byte*) render_score::screen#3 - //SEG247 [92] (byte) render_bcd::bcd#5 ? (byte) level_bcd#17 -- vbuxx=vbuz1 + //SEG246 [91] (byte*) render_bcd::screen#5 ← (byte*) render_score::screen#3 + //SEG247 [92] (byte) render_bcd::bcd#5 ← (byte) level_bcd#17 -- vbuxx=vbuz1 ldx level_bcd //SEG248 [93] call render_bcd //SEG249 [95] phi from render_score::@7 to render_bcd [phi:render_score::@7->render_bcd] @@ -24379,7 +24379,7 @@ render_bcd: { .label screen = 5 .label screen_pos = 7 .label offset = 7 - //SEG257 [96] (byte*) render_bcd::screen_pos#0 ? (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 -- pbuz1=pbuz2_plus_vwuz1 + //SEG257 [96] (byte*) render_bcd::screen_pos#0 ← (byte*) render_bcd::screen#6 + (word) render_bcd::offset#6 -- pbuz1=pbuz2_plus_vwuz1 lda screen_pos clc adc screen @@ -24391,19 +24391,19 @@ render_bcd: { cpy #0 bne b1 //SEG259 render_bcd::@2 - //SEG260 [98] (byte~) render_bcd::$5 ? (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG260 [98] (byte~) render_bcd::$5 ← (byte) render_bcd::bcd#6 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG261 [99] (byte~) render_bcd::$6 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 -- vbuaa=vbuc1_plus_vbuaa + //SEG261 [99] (byte~) render_bcd::$6 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$5 -- vbuaa=vbuc1_plus_vbuaa clc adc #ZERO_CHAR - //SEG262 [100] *((byte*) render_bcd::screen_pos#0) ? (byte~) render_bcd::$6 -- _deref_pbuz1=vbuaa + //SEG262 [100] *((byte*) render_bcd::screen_pos#0) ← (byte~) render_bcd::$6 -- _deref_pbuz1=vbuaa ldy #0 sta (screen_pos),y - //SEG263 [101] (byte*) render_bcd::screen_pos#2 ? ++ (byte*) render_bcd::screen_pos#0 -- pbuz1=_inc_pbuz1 + //SEG263 [101] (byte*) render_bcd::screen_pos#2 ← ++ (byte*) render_bcd::screen_pos#0 -- pbuz1=_inc_pbuz1 inc screen_pos bne !+ inc screen_pos+1 @@ -24412,16 +24412,16 @@ render_bcd: { //SEG265 [102] phi (byte*) render_bcd::screen_pos#3 = (byte*) render_bcd::screen_pos#0 [phi:render_bcd/render_bcd::@2->render_bcd::@1#0] -- register_copy //SEG266 render_bcd::@1 b1: - //SEG267 [103] (byte~) render_bcd::$3 ? (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 + //SEG267 [103] (byte~) render_bcd::$3 ← (byte) render_bcd::bcd#6 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuxx_band_vbuc1 txa and #$f - //SEG268 [104] (byte~) render_bcd::$4 ? (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 -- vbuaa=vbuc1_plus_vbuaa + //SEG268 [104] (byte~) render_bcd::$4 ← (const byte) render_bcd::ZERO_CHAR#0 + (byte~) render_bcd::$3 -- vbuaa=vbuc1_plus_vbuaa clc adc #ZERO_CHAR - //SEG269 [105] *((byte*) render_bcd::screen_pos#3) ? (byte~) render_bcd::$4 -- _deref_pbuz1=vbuaa + //SEG269 [105] *((byte*) render_bcd::screen_pos#3) ← (byte~) render_bcd::$4 -- _deref_pbuz1=vbuaa ldy #0 sta (screen_pos),y - //SEG270 [106] (byte*) render_bcd::screen_pos#1 ? ++ (byte*) render_bcd::screen_pos#3 -- pbuz1=_inc_pbuz1 + //SEG270 [106] (byte*) render_bcd::screen_pos#1 ← ++ (byte*) render_bcd::screen_pos#3 -- pbuz1=_inc_pbuz1 inc screen_pos bne !+ inc screen_pos+1 @@ -24459,14 +24459,14 @@ render_next: { sta screen_next_area+1 //SEG281 render_next::@1 b1: - //SEG282 [112] (byte~) render_next::$4 ? (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuxx_rol_1 + //SEG282 [112] (byte~) render_next::$4 ← (byte) next_piece_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuxx_rol_1 txa asl tay - //SEG283 [113] (byte) render_next::next_piece_char#0 ? *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG283 [113] (byte) render_next::next_piece_char#0 ← *((const byte[]) PIECES_NEXT_CHARS#0 + (byte) next_piece_idx#12) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_NEXT_CHARS,x sta next_piece_char - //SEG284 [114] (byte*~) render_next::next_piece_gfx#9 ? (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) -- pbuz1=pptc1_derefidx_vbuyy + //SEG284 [114] (byte*~) render_next::next_piece_gfx#9 ← (byte*)*((const word[]) PIECES#0 + (byte~) render_next::$4) -- pbuz1=pptc1_derefidx_vbuyy lda PIECES,y sta next_piece_gfx lda PIECES+1,y @@ -24494,10 +24494,10 @@ render_next: { //SEG301 [116] phi (byte*) render_next::next_piece_gfx#2 = (byte*) render_next::next_piece_gfx#1 [phi:render_next::@6->render_next::@4#2] -- register_copy //SEG302 render_next::@4 b4: - //SEG303 [117] (byte) render_next::cell#0 ? *((byte*) render_next::next_piece_gfx#2) -- vbuaa=_deref_pbuz1 + //SEG303 [117] (byte) render_next::cell#0 ← *((byte*) render_next::next_piece_gfx#2) -- vbuaa=_deref_pbuz1 ldy #0 lda (next_piece_gfx),y - //SEG304 [118] (byte*) render_next::next_piece_gfx#1 ? ++ (byte*) render_next::next_piece_gfx#2 -- pbuz1=_inc_pbuz1 + //SEG304 [118] (byte*) render_next::next_piece_gfx#1 ← ++ (byte*) render_next::next_piece_gfx#2 -- pbuz1=_inc_pbuz1 inc next_piece_gfx bne !+ inc next_piece_gfx+1 @@ -24506,24 +24506,24 @@ render_next: { cmp #0 bne b5 //SEG306 render_next::@7 - //SEG307 [120] *((byte*) render_next::screen_next_area#5) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG307 [120] *((byte*) render_next::screen_next_area#5) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (screen_next_area),y //SEG308 render_next::@6 b6: - //SEG309 [121] (byte*) render_next::screen_next_area#3 ? ++ (byte*) render_next::screen_next_area#5 -- pbuz1=_inc_pbuz1 + //SEG309 [121] (byte*) render_next::screen_next_area#3 ← ++ (byte*) render_next::screen_next_area#5 -- pbuz1=_inc_pbuz1 inc screen_next_area bne !+ inc screen_next_area+1 !: - //SEG310 [122] (byte) render_next::c#1 ? ++ (byte) render_next::c#2 -- vbuxx=_inc_vbuxx + //SEG310 [122] (byte) render_next::c#1 ← ++ (byte) render_next::c#2 -- vbuxx=_inc_vbuxx inx //SEG311 [123] if((byte) render_next::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #4 bne b4 //SEG312 render_next::@8 - //SEG313 [124] (byte*) render_next::screen_next_area#4 ? (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 -- pbuz1=pbuz1_plus_vbuc1 + //SEG313 [124] (byte*) render_next::screen_next_area#4 ← (byte*) render_next::screen_next_area#3 + (byte/signed byte/word/signed word/dword/signed dword) $24 -- pbuz1=pbuz1_plus_vbuc1 lda #$24 clc adc screen_next_area @@ -24531,7 +24531,7 @@ render_next: { bcc !+ inc screen_next_area+1 !: - //SEG314 [125] (byte) render_next::l#1 ? ++ (byte) render_next::l#7 -- vbuz1=_inc_vbuz1 + //SEG314 [125] (byte) render_next::l#1 ← ++ (byte) render_next::l#7 -- vbuz1=_inc_vbuz1 inc l //SEG315 [126] if((byte) render_next::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_next::@3 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -24542,7 +24542,7 @@ render_next: { rts //SEG318 render_next::@5 b5: - //SEG319 [128] *((byte*) render_next::screen_next_area#5) ? (byte) render_next::next_piece_char#0 -- _deref_pbuz1=vbuz2 + //SEG319 [128] *((byte*) render_next::screen_next_area#5) ← (byte) render_next::next_piece_char#0 -- _deref_pbuz1=vbuz2 lda next_piece_char ldy #0 sta (screen_next_area),y @@ -24557,7 +24557,7 @@ render_moving: { .label xpos = $f .label i = $e .label l = $d - //SEG321 [130] (byte) render_moving::ypos2#0 ? (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 + //SEG321 [130] (byte) render_moving::ypos2#0 ← (byte) current_ypos#13 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 txa asl sta ypos2 @@ -24579,7 +24579,7 @@ render_moving: { cmp ypos2 bcc b2 //SEG332 render_moving::@7 - //SEG333 [133] (byte) render_moving::i#1 ? (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 + //SEG333 [133] (byte) render_moving::i#1 ← (byte) render_moving::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz1_plus_vbuc1 lax i axs #-[4] stx i @@ -24587,12 +24587,12 @@ render_moving: { //SEG335 [134] phi (byte) render_moving::i#8 = (byte) render_moving::i#2 [phi:render_moving::@5/render_moving::@7->render_moving::@3#0] -- register_copy //SEG336 render_moving::@3 b3: - //SEG337 [135] (byte) render_moving::ypos2#1 ? (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG337 [135] (byte) render_moving::ypos2#1 ← (byte) render_moving::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG338 [136] (byte) render_moving::l#1 ? ++ (byte) render_moving::l#4 -- vbuz1=_inc_vbuz1 + //SEG338 [136] (byte) render_moving::l#1 ← ++ (byte) render_moving::l#4 -- vbuz1=_inc_vbuz1 inc l //SEG339 [137] if((byte) render_moving::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@1 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -24603,17 +24603,17 @@ render_moving: { rts //SEG342 render_moving::@2 b2: - //SEG343 [139] (byte~) render_moving::$2 ? (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 -- vbuaa=vbuz1_plus_vbuz2 + //SEG343 [139] (byte~) render_moving::$2 ← (byte) render_screen_render#33 + (byte) render_moving::ypos2#2 -- vbuaa=vbuz1_plus_vbuz2 lda render_screen_render_33 clc adc ypos2 - //SEG344 [140] (byte*) render_moving::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) -- pbuz1=pptc1_derefidx_vbuaa + //SEG344 [140] (byte*) render_moving::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_moving::$2) -- pbuz1=pptc1_derefidx_vbuaa tay lda screen_lines_1,y sta screen_line lda screen_lines_1+1,y sta screen_line+1 - //SEG345 [141] (byte) render_moving::xpos#0 ? (byte) current_xpos#59 -- vbuz1=vbuz2 + //SEG345 [141] (byte) render_moving::xpos#0 ← (byte) current_xpos#59 -- vbuz1=vbuz2 lda current_xpos_59 sta xpos //SEG346 [142] phi from render_moving::@2 to render_moving::@4 [phi:render_moving::@2->render_moving::@4] @@ -24627,24 +24627,24 @@ render_moving: { //SEG353 [142] phi (byte) render_moving::i#4 = (byte) render_moving::i#2 [phi:render_moving::@5->render_moving::@4#2] -- register_copy //SEG354 render_moving::@4 b4: - //SEG355 [143] (byte) render_moving::current_cell#0 ? *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) -- vbuaa=pbuz1_derefidx_vbuz2 + //SEG355 [143] (byte) render_moving::current_cell#0 ← *((byte*) current_piece_gfx#64 + (byte) render_moving::i#4) -- vbuaa=pbuz1_derefidx_vbuz2 ldy i lda (current_piece_gfx_64),y - //SEG356 [144] (byte) render_moving::i#2 ? ++ (byte) render_moving::i#4 -- vbuz1=_inc_vbuz1 + //SEG356 [144] (byte) render_moving::i#2 ← ++ (byte) render_moving::i#4 -- vbuz1=_inc_vbuz1 inc i //SEG357 [145] if((byte) render_moving::current_cell#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_moving::@5 -- vbuaa_eq_0_then_la1 cmp #0 beq b5 //SEG358 render_moving::@6 - //SEG359 [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ? (byte) current_piece_char#68 -- pbuz1_derefidx_vbuz2=vbuz3 + //SEG359 [146] *((byte*) render_moving::screen_line#0 + (byte) render_moving::xpos#2) ← (byte) current_piece_char#68 -- pbuz1_derefidx_vbuz2=vbuz3 lda current_piece_char_68 ldy xpos sta (screen_line),y //SEG360 render_moving::@5 b5: - //SEG361 [147] (byte) render_moving::xpos#1 ? ++ (byte) render_moving::xpos#2 -- vbuz1=_inc_vbuz1 + //SEG361 [147] (byte) render_moving::xpos#1 ← ++ (byte) render_moving::xpos#2 -- vbuz1=_inc_vbuz1 inc xpos - //SEG362 [148] (byte) render_moving::c#1 ? ++ (byte) render_moving::c#2 -- vbuxx=_inc_vbuxx + //SEG362 [148] (byte) render_moving::c#1 ← ++ (byte) render_moving::c#2 -- vbuxx=_inc_vbuxx inx //SEG363 [149] if((byte) render_moving::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_moving::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #4 @@ -24670,14 +24670,14 @@ render_playfield: { //SEG370 [151] phi (byte) render_playfield::l#2 = (byte) render_playfield::l#1 [phi:render_playfield::@3->render_playfield::@1#1] -- register_copy //SEG371 render_playfield::@1 b1: - //SEG372 [152] (byte~) render_playfield::$2 ? (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 + //SEG372 [152] (byte~) render_playfield::$2 ← (byte) render_playfield::l#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 lda l asl - //SEG373 [153] (byte~) render_playfield::$3 ? (byte) render_screen_render#22 + (byte~) render_playfield::$2 -- vbuaa=vbuxx_plus_vbuaa + //SEG373 [153] (byte~) render_playfield::$3 ← (byte) render_screen_render#22 + (byte~) render_playfield::$2 -- vbuaa=vbuxx_plus_vbuaa stx $ff clc adc $ff - //SEG374 [154] (byte*) render_playfield::screen_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuaa + //SEG374 [154] (byte*) render_playfield::screen_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_playfield::$3) -- pbuz1=pptc1_derefidx_vbuaa tay lda screen_lines_1,y sta screen_line @@ -24695,26 +24695,26 @@ render_playfield: { //SEG382 [155] phi (byte) render_playfield::i#2 = (byte) render_playfield::i#1 [phi:render_playfield::@2->render_playfield::@2#2] -- register_copy //SEG383 render_playfield::@2 b2: - //SEG384 [156] *((byte*) render_playfield::screen_line#2) ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG384 [156] *((byte*) render_playfield::screen_line#2) ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) render_playfield::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy i lda playfield,y ldy #0 sta (screen_line),y - //SEG385 [157] (byte*) render_playfield::screen_line#1 ? ++ (byte*) render_playfield::screen_line#2 -- pbuz1=_inc_pbuz1 + //SEG385 [157] (byte*) render_playfield::screen_line#1 ← ++ (byte*) render_playfield::screen_line#2 -- pbuz1=_inc_pbuz1 inc screen_line bne !+ inc screen_line+1 !: - //SEG386 [158] (byte) render_playfield::i#1 ? ++ (byte) render_playfield::i#2 -- vbuz1=_inc_vbuz1 + //SEG386 [158] (byte) render_playfield::i#1 ← ++ (byte) render_playfield::i#2 -- vbuz1=_inc_vbuz1 inc i - //SEG387 [159] (byte) render_playfield::c#1 ? ++ (byte) render_playfield::c#2 -- vbuz1=_inc_vbuz1 + //SEG387 [159] (byte) render_playfield::c#1 ← ++ (byte) render_playfield::c#2 -- vbuz1=_inc_vbuz1 inc c //SEG388 [160] if((byte) render_playfield::c#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@2 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_COLS-1+1 cmp c bne b2 //SEG389 render_playfield::@3 - //SEG390 [161] (byte) render_playfield::l#1 ? ++ (byte) render_playfield::l#2 -- vbuz1=_inc_vbuz1 + //SEG390 [161] (byte) render_playfield::l#1 ← ++ (byte) render_playfield::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG391 [162] if((byte) render_playfield::l#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_playfield::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -24733,15 +24733,15 @@ play_movement: { .label render = 9 .label return = 9 .label key_event = $29 - //SEG395 [164] (byte) play_move_down::key_event#0 ? (byte) play_movement::key_event#0 -- vbuaa=vbuz1 + //SEG395 [164] (byte) play_move_down::key_event#0 ← (byte) play_movement::key_event#0 -- vbuaa=vbuz1 lda key_event //SEG396 [165] call play_move_down jsr play_move_down - //SEG397 [166] (byte) play_move_down::return#0 ? (byte) play_move_down::return#3 -- vbuaa=vbuxx + //SEG397 [166] (byte) play_move_down::return#0 ← (byte) play_move_down::return#3 -- vbuaa=vbuxx txa //SEG398 play_movement::@2 - //SEG399 [167] (byte~) play_movement::$0 ? (byte) play_move_down::return#0 - //SEG400 [168] (byte) play_movement::render#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 -- vbuz1=vbuc1_plus_vbuaa + //SEG399 [167] (byte~) play_movement::$0 ← (byte) play_move_down::return#0 + //SEG400 [168] (byte) play_movement::render#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) play_movement::$0 -- vbuz1=vbuc1_plus_vbuaa clc adc #0 sta render @@ -24759,25 +24759,25 @@ play_movement: { rts //SEG409 play_movement::@1 b1: - //SEG410 [172] (byte) play_move_leftright::key_event#0 ? (byte) play_movement::key_event#0 -- vbuaa=vbuz1 + //SEG410 [172] (byte) play_move_leftright::key_event#0 ← (byte) play_movement::key_event#0 -- vbuaa=vbuz1 lda key_event //SEG411 [173] call play_move_leftright jsr play_move_leftright - //SEG412 [174] (byte) play_move_leftright::return#0 ? (byte) play_move_leftright::return#2 + //SEG412 [174] (byte) play_move_leftright::return#0 ← (byte) play_move_leftright::return#2 //SEG413 play_movement::@3 - //SEG414 [175] (byte~) play_movement::$3 ? (byte) play_move_leftright::return#0 - //SEG415 [176] (byte) play_movement::render#2 ? (byte) play_movement::render#1 + (byte~) play_movement::$3 -- vbuz1=vbuz1_plus_vbuaa + //SEG414 [175] (byte~) play_movement::$3 ← (byte) play_move_leftright::return#0 + //SEG415 [176] (byte) play_movement::render#2 ← (byte) play_movement::render#1 + (byte~) play_movement::$3 -- vbuz1=vbuz1_plus_vbuaa clc adc render sta render - //SEG416 [177] (byte) play_move_rotate::key_event#0 ? (byte) play_movement::key_event#0 -- vbuaa=vbuz1 + //SEG416 [177] (byte) play_move_rotate::key_event#0 ← (byte) play_movement::key_event#0 -- vbuaa=vbuz1 lda key_event //SEG417 [178] call play_move_rotate jsr play_move_rotate - //SEG418 [179] (byte) play_move_rotate::return#0 ? (byte) play_move_rotate::return#2 + //SEG418 [179] (byte) play_move_rotate::return#0 ← (byte) play_move_rotate::return#2 //SEG419 play_movement::@4 - //SEG420 [180] (byte~) play_movement::$4 ? (byte) play_move_rotate::return#0 - //SEG421 [181] (byte) play_movement::return#0 ? (byte) play_movement::render#2 + (byte~) play_movement::$4 -- vbuz1=vbuz1_plus_vbuaa + //SEG420 [180] (byte~) play_movement::$4 ← (byte) play_move_rotate::return#0 + //SEG421 [181] (byte) play_movement::return#0 ← (byte) play_movement::render#2 + (byte~) play_movement::$4 -- vbuz1=vbuz1_plus_vbuaa clc adc return sta return @@ -24807,25 +24807,25 @@ play_move_rotate: { rts //SEG432 play_move_rotate::@2 b2: - //SEG433 [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ? (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_plus_vbuc1 + //SEG433 [186] (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 ← (byte) current_orientation#20 + (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_plus_vbuc1 lax current_orientation axs #-[$10] - //SEG434 [187] (byte) play_move_rotate::orientation#2 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 + //SEG434 [187] (byte) play_move_rotate::orientation#2 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$5 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 lda #$3f sax orientation //SEG435 [188] phi from play_move_rotate::@1 play_move_rotate::@2 to play_move_rotate::@3 [phi:play_move_rotate::@1/play_move_rotate::@2->play_move_rotate::@3] //SEG436 [188] phi (byte) play_move_rotate::orientation#3 = (byte) play_move_rotate::orientation#1 [phi:play_move_rotate::@1/play_move_rotate::@2->play_move_rotate::@3#0] -- register_copy //SEG437 play_move_rotate::@3 b3: - //SEG438 [189] (byte) play_collision::xpos#3 ? (byte) current_xpos#26 -- vbuz1=vbuz2 + //SEG438 [189] (byte) play_collision::xpos#3 ← (byte) current_xpos#26 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG439 [190] (byte) play_collision::ypos#3 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG439 [190] (byte) play_collision::ypos#3 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG440 [191] (byte) play_collision::orientation#3 ? (byte) play_move_rotate::orientation#3 -- vbuxx=vbuz1 + //SEG440 [191] (byte) play_collision::orientation#3 ← (byte) play_move_rotate::orientation#3 -- vbuxx=vbuz1 ldx orientation - //SEG441 [192] (byte*~) current_piece#101 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG441 [192] (byte*~) current_piece#101 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_101 lda current_piece+1 @@ -24837,17 +24837,17 @@ play_move_rotate: { //SEG446 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#3 [phi:play_move_rotate::@3->play_collision#2] -- register_copy //SEG447 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#101 [phi:play_move_rotate::@3->play_collision#3] -- register_copy jsr play_collision - //SEG448 [194] (byte) play_collision::return#14 ? (byte) play_collision::return#15 + //SEG448 [194] (byte) play_collision::return#14 ← (byte) play_collision::return#15 //SEG449 play_move_rotate::@6 - //SEG450 [195] (byte~) play_move_rotate::$2 ? (byte) play_collision::return#14 + //SEG450 [195] (byte~) play_move_rotate::$2 ← (byte) play_collision::return#14 //SEG451 [196] if((byte~) play_move_rotate::$2!=(const byte) COLLISION_NONE#0) goto play_move_rotate::@return -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_NONE bne b4 //SEG452 play_move_rotate::@5 - //SEG453 [197] (byte) current_orientation#7 ? (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 + //SEG453 [197] (byte) current_orientation#7 ← (byte) play_move_rotate::orientation#3 -- vbuz1=vbuz2 lda orientation sta current_orientation - //SEG454 [198] (byte*) current_piece_gfx#7 ? (byte*) current_piece#15 + (byte) current_orientation#7 -- pbuz1=pbuz2_plus_vbuz3 + //SEG454 [198] (byte*) current_piece_gfx#7 ← (byte*) current_piece#15 + (byte) current_orientation#7 -- pbuz1=pbuz2_plus_vbuz3 clc adc current_piece sta current_piece_gfx @@ -24862,10 +24862,10 @@ play_move_rotate: { rts //SEG459 play_move_rotate::@1 b1: - //SEG460 [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ? (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_minus_vbuc1 + //SEG460 [199] (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 ← (byte) current_orientation#20 - (byte/signed byte/word/signed word/dword/signed dword) $10 -- vbuxx=vbuz1_minus_vbuc1 lax current_orientation axs #$10 - //SEG461 [200] (byte) play_move_rotate::orientation#1 ? (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 + //SEG461 [200] (byte) play_move_rotate::orientation#1 ← (byte/signed word/word/dword/signed dword~) play_move_rotate::$7 & (byte/signed byte/word/signed word/dword/signed dword) $3f -- vbuz1=vbuxx_band_vbuc1 lda #$3f sax orientation jmp b3 @@ -24887,7 +24887,7 @@ play_collision: { .label i_3 = $e .label i_11 = $e .label i_13 = $e - //SEG463 [202] (byte*) play_collision::piece_gfx#0 ? (byte*) current_piece#17 + (byte) play_collision::orientation#5 -- pbuz1=pbuz1_plus_vbuxx + //SEG463 [202] (byte*) play_collision::piece_gfx#0 ← (byte*) current_piece#17 + (byte) play_collision::orientation#5 -- pbuz1=pbuz1_plus_vbuxx txa clc adc piece_gfx @@ -24895,7 +24895,7 @@ play_collision: { bcc !+ inc piece_gfx+1 !: - //SEG464 [203] (byte) play_collision::ypos2#0 ? (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG464 [203] (byte) play_collision::ypos2#0 ← (byte) play_collision::ypos#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl ypos2 //SEG465 [204] phi from play_collision to play_collision::@1 [phi:play_collision->play_collision::@1] //SEG466 [204] phi (byte) play_collision::l#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:play_collision->play_collision::@1#0] -- vbuz1=vbuc1 @@ -24906,13 +24906,13 @@ play_collision: { //SEG468 [204] phi (byte) play_collision::ypos2#2 = (byte) play_collision::ypos2#0 [phi:play_collision->play_collision::@1#2] -- register_copy //SEG469 play_collision::@1 b1: - //SEG470 [205] (byte*) play_collision::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG470 [205] (byte*) play_collision::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_collision::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 ldy ypos2 lda playfield_lines,y sta playfield_line lda playfield_lines+1,y sta playfield_line+1 - //SEG471 [206] (byte~) play_collision::col#9 ? (byte) play_collision::xpos#6 -- vbuz1=vbuz2 + //SEG471 [206] (byte~) play_collision::col#9 ← (byte) play_collision::xpos#6 -- vbuz1=vbuz2 lda xpos sta col //SEG472 [207] phi from play_collision::@1 to play_collision::@2 [phi:play_collision::@1->play_collision::@2] @@ -24922,7 +24922,7 @@ play_collision: { //SEG475 [207] phi (byte) play_collision::i#2 = (byte) play_collision::i#3 [phi:play_collision::@1->play_collision::@2#2] -- register_copy //SEG476 play_collision::@2 b2: - //SEG477 [208] (byte) play_collision::i#1 ? ++ (byte) play_collision::i#2 -- vbuz1=_inc_vbuz2 + //SEG477 [208] (byte) play_collision::i#1 ← ++ (byte) play_collision::i#2 -- vbuz1=_inc_vbuz2 ldy i_2 iny sty i @@ -24944,7 +24944,7 @@ play_collision: { rts //SEG485 play_collision::@4 b4: - //SEG486 [213] (byte~) play_collision::$7 ? (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG486 [213] (byte~) play_collision::$7 ← (byte) play_collision::col#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and col //SEG487 [214] if((byte~) play_collision::$7==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_collision::@5 -- vbuaa_eq_0_then_la1 @@ -24977,20 +24977,20 @@ play_collision: { rts //SEG498 play_collision::@3 b3: - //SEG499 [217] (byte) play_collision::col#1 ? ++ (byte) play_collision::col#2 -- vbuz1=_inc_vbuz1 + //SEG499 [217] (byte) play_collision::col#1 ← ++ (byte) play_collision::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG500 [218] (byte) play_collision::c#1 ? ++ (byte) play_collision::c#2 -- vbuxx=_inc_vbuxx + //SEG500 [218] (byte) play_collision::c#1 ← ++ (byte) play_collision::c#2 -- vbuxx=_inc_vbuxx inx //SEG501 [219] if((byte) play_collision::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@10 -- vbuxx_neq_vbuc1_then_la1 cpx #4 bne b10 //SEG502 play_collision::@8 - //SEG503 [220] (byte) play_collision::ypos2#1 ? (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG503 [220] (byte) play_collision::ypos2#1 ← (byte) play_collision::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG504 [221] (byte) play_collision::l#1 ? ++ (byte) play_collision::l#6 -- vbuz1=_inc_vbuz1 + //SEG504 [221] (byte) play_collision::l#1 ← ++ (byte) play_collision::l#6 -- vbuz1=_inc_vbuz1 inc l //SEG505 [222] if((byte) play_collision::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_collision::@9 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -25002,7 +25002,7 @@ play_collision: { rts //SEG508 play_collision::@9 b9: - //SEG509 [223] (byte~) play_collision::i#11 ? (byte) play_collision::i#1 -- vbuz1=vbuz2 + //SEG509 [223] (byte~) play_collision::i#11 ← (byte) play_collision::i#1 -- vbuz1=vbuz2 lda i sta i_11 //SEG510 [204] phi from play_collision::@9 to play_collision::@1 [phi:play_collision::@9->play_collision::@1] @@ -25012,7 +25012,7 @@ play_collision: { jmp b1 //SEG514 play_collision::@10 b10: - //SEG515 [224] (byte~) play_collision::i#13 ? (byte) play_collision::i#1 -- vbuz1=vbuz2 + //SEG515 [224] (byte~) play_collision::i#13 ← (byte) play_collision::i#1 -- vbuz1=vbuz2 lda i sta i_13 //SEG516 [207] phi from play_collision::@10 to play_collision::@2 [phi:play_collision::@10->play_collision::@2] @@ -25035,16 +25035,16 @@ play_move_leftright: { cmp #KEY_DOT bne b3 //SEG524 play_move_leftright::@3 - //SEG525 [227] (byte) play_collision::xpos#2 ? (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG525 [227] (byte) play_collision::xpos#2 ← (byte) current_xpos#22 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy current_xpos iny sty play_collision.xpos - //SEG526 [228] (byte) play_collision::ypos#2 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG526 [228] (byte) play_collision::ypos#2 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG527 [229] (byte) play_collision::orientation#2 ? (byte) current_orientation#20 -- vbuxx=vbuz1 + //SEG527 [229] (byte) play_collision::orientation#2 ← (byte) current_orientation#20 -- vbuxx=vbuz1 ldx current_orientation - //SEG528 [230] (byte*~) current_piece#100 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG528 [230] (byte*~) current_piece#100 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_100 lda current_piece+1 @@ -25056,14 +25056,14 @@ play_move_leftright: { //SEG533 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#2 [phi:play_move_leftright::@3->play_collision#2] -- register_copy //SEG534 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#100 [phi:play_move_leftright::@3->play_collision#3] -- register_copy jsr play_collision - //SEG535 [232] (byte) play_collision::return#13 ? (byte) play_collision::return#15 + //SEG535 [232] (byte) play_collision::return#13 ← (byte) play_collision::return#15 //SEG536 play_move_leftright::@7 - //SEG537 [233] (byte~) play_move_leftright::$4 ? (byte) play_collision::return#13 + //SEG537 [233] (byte~) play_move_leftright::$4 ← (byte) play_collision::return#13 //SEG538 [234] if((byte~) play_move_leftright::$4!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_NONE bne b3 //SEG539 play_move_leftright::@4 - //SEG540 [235] (byte) current_xpos#6 ? ++ (byte) current_xpos#22 -- vbuz1=_inc_vbuz1 + //SEG540 [235] (byte) current_xpos#6 ← ++ (byte) current_xpos#22 -- vbuz1=_inc_vbuz1 inc current_xpos //SEG541 [236] phi from play_move_leftright::@4 play_move_leftright::@5 to play_move_leftright::@return [phi:play_move_leftright::@4/play_move_leftright::@5->play_move_leftright::@return] b2: @@ -25081,16 +25081,16 @@ play_move_leftright: { rts //SEG549 play_move_leftright::@1 b1: - //SEG550 [238] (byte) play_collision::xpos#1 ? (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_minus_1 + //SEG550 [238] (byte) play_collision::xpos#1 ← (byte) current_xpos#22 - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_minus_1 ldx current_xpos dex stx play_collision.xpos - //SEG551 [239] (byte) play_collision::ypos#1 ? (byte) current_ypos#19 -- vbuz1=vbuz2 + //SEG551 [239] (byte) play_collision::ypos#1 ← (byte) current_ypos#19 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG552 [240] (byte) play_collision::orientation#1 ? (byte) current_orientation#20 -- vbuxx=vbuz1 + //SEG552 [240] (byte) play_collision::orientation#1 ← (byte) current_orientation#20 -- vbuxx=vbuz1 ldx current_orientation - //SEG553 [241] (byte*~) current_piece#99 ? (byte*) current_piece#15 -- pbuz1=pbuz2 + //SEG553 [241] (byte*~) current_piece#99 ← (byte*) current_piece#15 -- pbuz1=pbuz2 lda current_piece sta current_piece_99 lda current_piece+1 @@ -25102,14 +25102,14 @@ play_move_leftright: { //SEG558 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#1 [phi:play_move_leftright::@1->play_collision#2] -- register_copy //SEG559 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#99 [phi:play_move_leftright::@1->play_collision#3] -- register_copy jsr play_collision - //SEG560 [243] (byte) play_collision::return#1 ? (byte) play_collision::return#15 + //SEG560 [243] (byte) play_collision::return#1 ← (byte) play_collision::return#15 //SEG561 play_move_leftright::@6 - //SEG562 [244] (byte~) play_move_leftright::$8 ? (byte) play_collision::return#1 + //SEG562 [244] (byte~) play_move_leftright::$8 ← (byte) play_collision::return#1 //SEG563 [245] if((byte~) play_move_leftright::$8!=(const byte) COLLISION_NONE#0) goto play_move_leftright::@return -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_NONE bne b3 //SEG564 play_move_leftright::@5 - //SEG565 [246] (byte) current_xpos#8 ? -- (byte) current_xpos#22 -- vbuz1=_dec_vbuz1 + //SEG565 [246] (byte) current_xpos#8 ← -- (byte) current_xpos#22 -- vbuz1=_dec_vbuz1 dec current_xpos jmp b2 } @@ -25118,7 +25118,7 @@ play_move_leftright: { // Return non-zero if a render is needed // play_move_down(byte register(A) key_event) play_move_down: { - //SEG567 [247] (byte) current_movedown_counter#12 ? ++ (byte) current_movedown_counter#16 -- vbuz1=_inc_vbuz1 + //SEG567 [247] (byte) current_movedown_counter#12 ← ++ (byte) current_movedown_counter#16 -- vbuz1=_inc_vbuz1 inc current_movedown_counter //SEG568 [248] if((byte) play_move_down::key_event#0!=(const byte) KEY_SPACE#0) goto play_move_down::@1 -- vbuaa_neq_vbuc1_then_la1 cmp #KEY_SPACE @@ -25141,9 +25141,9 @@ play_move_down: { lda #KEY_SPACE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG579 [252] (byte) keyboard_event_pressed::return#12 ? (byte) keyboard_event_pressed::return#11 + //SEG579 [252] (byte) keyboard_event_pressed::return#12 ← (byte) keyboard_event_pressed::return#11 //SEG580 play_move_down::@12 - //SEG581 [253] (byte~) play_move_down::$2 ? (byte) keyboard_event_pressed::return#12 + //SEG581 [253] (byte~) play_move_down::$2 ← (byte) keyboard_event_pressed::return#12 //SEG582 [254] if((byte~) play_move_down::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_move_down::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 @@ -25153,7 +25153,7 @@ play_move_down: { cmp #current_movedown_fast bcc b2 //SEG585 play_move_down::@6 - //SEG586 [256] (byte) play_move_down::movedown#2 ? ++ (byte) play_move_down::movedown#10 -- vbuxx=_inc_vbuxx + //SEG586 [256] (byte) play_move_down::movedown#2 ← ++ (byte) play_move_down::movedown#10 -- vbuxx=_inc_vbuxx inx //SEG587 [257] phi from play_move_down::@12 play_move_down::@5 play_move_down::@6 to play_move_down::@2 [phi:play_move_down::@12/play_move_down::@5/play_move_down::@6->play_move_down::@2] //SEG588 [257] phi (byte) play_move_down::movedown#7 = (byte) play_move_down::movedown#10 [phi:play_move_down::@12/play_move_down::@5/play_move_down::@6->play_move_down::@2#0] -- register_copy @@ -25164,7 +25164,7 @@ play_move_down: { cmp current_movedown_slow bcc b3 //SEG591 play_move_down::@7 - //SEG592 [259] (byte) play_move_down::movedown#3 ? ++ (byte) play_move_down::movedown#7 -- vbuxx=_inc_vbuxx + //SEG592 [259] (byte) play_move_down::movedown#3 ← ++ (byte) play_move_down::movedown#7 -- vbuxx=_inc_vbuxx inx //SEG593 [260] phi from play_move_down::@2 play_move_down::@7 to play_move_down::@3 [phi:play_move_down::@2/play_move_down::@7->play_move_down::@3] //SEG594 [260] phi (byte) play_move_down::movedown#6 = (byte) play_move_down::movedown#7 [phi:play_move_down::@2/play_move_down::@7->play_move_down::@3#0] -- register_copy @@ -25174,16 +25174,16 @@ play_move_down: { cpx #0 beq b5 //SEG597 play_move_down::@8 - //SEG598 [262] (byte) play_collision::ypos#0 ? (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG598 [262] (byte) play_collision::ypos#0 ← (byte) current_ypos#11 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy current_ypos iny sty play_collision.ypos - //SEG599 [263] (byte) play_collision::xpos#0 ? (byte) current_xpos#122 -- vbuz1=vbuz2 + //SEG599 [263] (byte) play_collision::xpos#0 ← (byte) current_xpos#122 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG600 [264] (byte) play_collision::orientation#0 ? (byte) current_orientation#13 -- vbuxx=vbuz1 + //SEG600 [264] (byte) play_collision::orientation#0 ← (byte) current_orientation#13 -- vbuxx=vbuz1 ldx current_orientation - //SEG601 [265] (byte*~) current_piece#98 ? (byte*) current_piece#10 -- pbuz1=pbuz2 + //SEG601 [265] (byte*~) current_piece#98 ← (byte*) current_piece#10 -- pbuz1=pbuz2 lda current_piece sta current_piece_98 lda current_piece+1 @@ -25195,9 +25195,9 @@ play_move_down: { //SEG606 [201] phi (byte) play_collision::orientation#5 = (byte) play_collision::orientation#0 [phi:play_move_down::@8->play_collision#2] -- register_copy //SEG607 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#98 [phi:play_move_down::@8->play_collision#3] -- register_copy jsr play_collision - //SEG608 [267] (byte) play_collision::return#0 ? (byte) play_collision::return#15 + //SEG608 [267] (byte) play_collision::return#0 ← (byte) play_collision::return#15 //SEG609 play_move_down::@13 - //SEG610 [268] (byte~) play_move_down::$12 ? (byte) play_collision::return#0 + //SEG610 [268] (byte~) play_move_down::$12 ← (byte) play_collision::return#0 //SEG611 [269] if((byte~) play_move_down::$12==(const byte) COLLISION_NONE#0) goto play_move_down::@10 -- vbuaa_eq_vbuc1_then_la1 cmp #COLLISION_NONE beq b10 @@ -25210,11 +25210,11 @@ play_move_down: { //SEG617 [273] call play_remove_lines //SEG618 [344] phi from play_move_down::@14 to play_remove_lines [phi:play_move_down::@14->play_remove_lines] jsr play_remove_lines - //SEG619 [274] (byte) play_remove_lines::return#0 ? (byte) play_remove_lines::removed#8 -- vbuaa=vbuz1 + //SEG619 [274] (byte) play_remove_lines::return#0 ← (byte) play_remove_lines::removed#8 -- vbuaa=vbuz1 lda play_remove_lines.removed //SEG620 play_move_down::@15 - //SEG621 [275] (byte) play_move_down::removed#0 ? (byte) play_remove_lines::return#0 - //SEG622 [276] (byte) play_update_score::removed#0 ? (byte) play_move_down::removed#0 -- vbuxx=vbuaa + //SEG621 [275] (byte) play_move_down::removed#0 ← (byte) play_remove_lines::return#0 + //SEG622 [276] (byte) play_update_score::removed#0 ← (byte) play_move_down::removed#0 -- vbuxx=vbuaa tax //SEG623 [277] call play_update_score jsr play_update_score @@ -25225,7 +25225,7 @@ play_move_down: { //SEG628 [285] phi (byte) game_over#65 = (byte) game_over#10 [phi:play_move_down::@16->play_spawn_current#0] -- register_copy //SEG629 [285] phi (byte) next_piece_idx#17 = (byte) next_piece_idx#10 [phi:play_move_down::@16->play_spawn_current#1] -- register_copy jsr play_spawn_current - //SEG630 [280] (byte*~) current_piece#104 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG630 [280] (byte*~) current_piece#104 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 ldy play_spawn_current._0 lda PIECES,y sta current_piece @@ -25292,7 +25292,7 @@ play_move_down: { rts //SEG680 play_move_down::@10 b10: - //SEG681 [284] (byte) current_ypos#3 ? ++ (byte) current_ypos#11 -- vbuz1=_inc_vbuz1 + //SEG681 [284] (byte) current_ypos#3 ← ++ (byte) current_ypos#11 -- vbuz1=_inc_vbuz1 inc current_ypos //SEG682 [281] phi from play_move_down::@10 to play_move_down::@11 [phi:play_move_down::@10->play_move_down::@11] //SEG683 [281] phi (byte) next_piece_idx#30 = (byte) next_piece_idx#10 [phi:play_move_down::@10->play_move_down::@11#0] -- register_copy @@ -25316,35 +25316,35 @@ play_move_down: { play_spawn_current: { .label _0 = 4 .label piece_idx = $21 - //SEG697 [286] (byte) play_spawn_current::current_piece_idx#0 ? (byte) next_piece_idx#17 -- vbuxx=vbuz1 + //SEG697 [286] (byte) play_spawn_current::current_piece_idx#0 ← (byte) next_piece_idx#17 -- vbuxx=vbuz1 // Move next piece into current ldx next_piece_idx - //SEG698 [287] (byte~) play_spawn_current::$0 ? (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 + //SEG698 [287] (byte~) play_spawn_current::$0 ← (byte) play_spawn_current::current_piece_idx#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuxx_rol_1 txa asl sta _0 - //SEG699 [288] (byte) current_piece_char#5 ? *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG699 [288] (byte) current_piece_char#5 ← *((const byte[]) PIECES_CHARS#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_CHARS,x sta current_piece_char - //SEG700 [289] (byte*) current_piece_gfx#74 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuz1=pptc1_derefidx_vbuz2_plus_0 + //SEG700 [289] (byte*) current_piece_gfx#74 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) + (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuz1=pptc1_derefidx_vbuz2_plus_0 ldy _0 lda PIECES,y sta current_piece_gfx lda PIECES+1,y sta current_piece_gfx+1 - //SEG701 [290] (byte) current_xpos#103 ? *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG701 [290] (byte) current_xpos#103 ← *((const byte[]) PIECES_START_X#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_START_X,x sta current_xpos - //SEG702 [291] (byte) current_ypos#6 ? *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx + //SEG702 [291] (byte) current_ypos#6 ← *((const byte[]) PIECES_START_Y#0 + (byte) play_spawn_current::current_piece_idx#0) -- vbuz1=pbuc1_derefidx_vbuxx lda PIECES_START_Y,x sta current_ypos - //SEG703 [292] (byte) play_collision::xpos#4 ? (byte) current_xpos#103 -- vbuz1=vbuz2 + //SEG703 [292] (byte) play_collision::xpos#4 ← (byte) current_xpos#103 -- vbuz1=vbuz2 lda current_xpos sta play_collision.xpos - //SEG704 [293] (byte) play_collision::ypos#4 ? (byte) current_ypos#6 -- vbuz1=vbuz2 + //SEG704 [293] (byte) play_collision::ypos#4 ← (byte) current_ypos#6 -- vbuz1=vbuz2 lda current_ypos sta play_collision.ypos - //SEG705 [294] (byte*~) current_piece#102 ? (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG705 [294] (byte*~) current_piece#102 ← (byte*)*((const word[]) PIECES#0 + (byte~) play_spawn_current::$0) -- pbuz1=pptc1_derefidx_vbuz2 lda PIECES,y sta current_piece_102 lda PIECES+1,y @@ -25357,9 +25357,9 @@ play_spawn_current: { ldx #0 //SEG711 [201] phi (byte*) current_piece#17 = (byte*~) current_piece#102 [phi:play_spawn_current->play_collision#3] -- register_copy jsr play_collision - //SEG712 [296] (byte) play_collision::return#10 ? (byte) play_collision::return#15 + //SEG712 [296] (byte) play_collision::return#10 ← (byte) play_collision::return#15 //SEG713 play_spawn_current::@4 - //SEG714 [297] (byte~) play_spawn_current::$2 ? (byte) play_collision::return#10 + //SEG714 [297] (byte~) play_spawn_current::$2 ← (byte) play_collision::return#10 //SEG715 [298] if((byte~) play_spawn_current::$2!=(const byte) COLLISION_PLAYFIELD#0) goto play_spawn_current::@6 -- vbuaa_neq_vbuc1_then_la1 cmp #COLLISION_PLAYFIELD bne b1 @@ -25387,10 +25387,10 @@ play_spawn_current: { b3: //SEG727 [304] call sid_rnd jsr sid_rnd - //SEG728 [305] (byte) sid_rnd::return#2 ? (byte) sid_rnd::return#0 + //SEG728 [305] (byte) sid_rnd::return#2 ← (byte) sid_rnd::return#0 //SEG729 play_spawn_current::@5 - //SEG730 [306] (byte~) play_spawn_current::$6 ? (byte) sid_rnd::return#2 - //SEG731 [307] (byte) play_spawn_current::piece_idx#1 ? (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuaa_band_vbuc1 + //SEG730 [306] (byte~) play_spawn_current::$6 ← (byte) sid_rnd::return#2 + //SEG731 [307] (byte) play_spawn_current::piece_idx#1 ← (byte~) play_spawn_current::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuaa_band_vbuc1 and #7 sta piece_idx //SEG732 [300] phi from play_spawn_current::@5 to play_spawn_current::@2 [phi:play_spawn_current::@5->play_spawn_current::@2] @@ -25405,7 +25405,7 @@ play_spawn_current: { // Get a random number from the SID voice 3, // Must be initialized with sid_rnd_init() sid_rnd: { - //SEG739 [309] (byte) sid_rnd::return#0 ? *((const byte*) SID_VOICE3_OSC#0) -- vbuaa=_deref_pbuc1 + //SEG739 [309] (byte) sid_rnd::return#0 ← *((const byte*) SID_VOICE3_OSC#0) -- vbuaa=_deref_pbuc1 lda SID_VOICE3_OSC //SEG740 sid_rnd::@return //SEG741 [310] return @@ -25421,16 +25421,16 @@ play_update_score: { cpx #0 beq breturn //SEG744 play_update_score::@1 - //SEG745 [312] (byte~) play_update_score::$2 ? < (word) lines_bcd#19 -- vbuaa=_lo_vwuz1 + //SEG745 [312] (byte~) play_update_score::$2 ← < (word) lines_bcd#19 -- vbuaa=_lo_vwuz1 lda lines_bcd - //SEG746 [313] (byte) play_update_score::lines_before#0 ? (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuaa_band_vbuc1 + //SEG746 [313] (byte) play_update_score::lines_before#0 ← (byte~) play_update_score::$2 & (byte/word/signed word/dword/signed dword) $f0 -- vbuz1=vbuaa_band_vbuc1 and #$f0 sta lines_before - //SEG747 [314] (byte~) play_update_score::$4 ? (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 + //SEG747 [314] (byte~) play_update_score::$4 ← (byte) play_update_score::removed#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 txa asl asl - //SEG748 [315] (dword) play_update_score::add_bcd#0 ? *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) -- vduz1=pduc1_derefidx_vbuaa + //SEG748 [315] (dword) play_update_score::add_bcd#0 ← *((const dword[5]) score_add_bcd#0 + (byte~) play_update_score::$4) -- vduz1=pduc1_derefidx_vbuaa tay lda score_add_bcd,y sta add_bcd @@ -25442,7 +25442,7 @@ play_update_score: { sta add_bcd+3 //SEG749 asm { sed } sed - //SEG750 [317] (word) lines_bcd#30 ? (word) lines_bcd#19 + (byte) play_update_score::removed#0 -- vwuz1=vwuz1_plus_vbuxx + //SEG750 [317] (word) lines_bcd#30 ← (word) lines_bcd#19 + (byte) play_update_score::removed#0 -- vwuz1=vwuz1_plus_vbuxx txa clc adc lines_bcd @@ -25450,7 +25450,7 @@ play_update_score: { bcc !+ inc lines_bcd+1 !: - //SEG751 [318] (dword) score_bcd#30 ? (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 -- vduz1=vduz1_plus_vduz2 + //SEG751 [318] (dword) score_bcd#30 ← (dword) score_bcd#18 + (dword) play_update_score::add_bcd#0 -- vduz1=vduz1_plus_vduz2 lda score_bcd clc adc add_bcd @@ -25466,9 +25466,9 @@ play_update_score: { sta score_bcd+3 //SEG752 asm { cld } cld - //SEG753 [320] (byte~) play_update_score::$5 ? < (word) lines_bcd#30 -- vbuaa=_lo_vwuz1 + //SEG753 [320] (byte~) play_update_score::$5 ← < (word) lines_bcd#30 -- vbuaa=_lo_vwuz1 lda lines_bcd - //SEG754 [321] (byte) play_update_score::lines_after#0 ? (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 -- vbuaa=vbuaa_band_vbuc1 + //SEG754 [321] (byte) play_update_score::lines_after#0 ← (byte~) play_update_score::$5 & (byte/word/signed word/dword/signed dword) $f0 -- vbuaa=vbuaa_band_vbuc1 and #$f0 //SEG755 [322] if((byte) play_update_score::lines_before#0==(byte) play_update_score::lines_after#0) goto play_update_score::@return -- vbuz1_eq_vbuaa_then_la1 cmp lines_before @@ -25491,7 +25491,7 @@ play_update_score: { //SEG767 play_increase_level // Increase the level play_increase_level: { - //SEG768 [327] (byte) level#21 ? ++ (byte) level#10 -- vbuz1=_inc_vbuz1 + //SEG768 [327] (byte) level#21 ← ++ (byte) level#10 -- vbuz1=_inc_vbuz1 inc level //SEG769 [328] if((byte) level#21>(byte/signed byte/word/signed word/dword/signed dword) $1d) goto play_increase_level::@1 -- vbuz1_gt_vbuc1_then_la1 // Update speed of moving tetrominos down @@ -25499,7 +25499,7 @@ play_increase_level: { cmp level bcc b3 //SEG770 play_increase_level::@3 - //SEG771 [329] (byte) current_movedown_slow#10 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG771 [329] (byte) current_movedown_slow#10 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0 + (byte) level#21) -- vbuz1=pbuc1_derefidx_vbuz2 ldy level lda MOVEDOWN_SLOW_SPEEDS,y sta current_movedown_slow @@ -25513,16 +25513,16 @@ play_increase_level: { sta current_movedown_slow //SEG776 play_increase_level::@1 b1: - //SEG777 [331] (byte) level_bcd#21 ? ++ (byte) level_bcd#11 -- vbuz1=_inc_vbuz1 + //SEG777 [331] (byte) level_bcd#21 ← ++ (byte) level_bcd#11 -- vbuz1=_inc_vbuz1 inc level_bcd - //SEG778 [332] (byte~) play_increase_level::$1 ? (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG778 [332] (byte~) play_increase_level::$1 ← (byte) level_bcd#21 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and level_bcd //SEG779 [333] if((byte~) play_increase_level::$1!=(byte/signed byte/word/signed word/dword/signed dword) $a) goto play_increase_level::@2 -- vbuaa_neq_vbuc1_then_la1 cmp #$a bne b2 //SEG780 play_increase_level::@4 - //SEG781 [334] (byte) level_bcd#8 ? (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 -- vbuz1=vbuz1_plus_vbuc1 + //SEG781 [334] (byte) level_bcd#8 ← (byte) level_bcd#21 + (byte/signed byte/word/signed word/dword/signed dword) 6 -- vbuz1=vbuz1_plus_vbuc1 // If level low nybble hits $a change to $10 lax level_bcd axs #-[6] @@ -25541,11 +25541,11 @@ play_increase_level: { //SEG789 [337] phi (byte) play_increase_level::b#2 = (byte) play_increase_level::b#1 [phi:play_increase_level::@5->play_increase_level::@5#0] -- register_copy //SEG790 play_increase_level::@5 b5: - //SEG791 [338] (byte) play_increase_level::b4#0 ? (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 + //SEG791 [338] (byte) play_increase_level::b4#0 ← (byte) play_increase_level::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 txa asl asl - //SEG792 [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ? *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) -- pduc1_derefidx_vbuaa=pduc1_derefidx_vbuaa_plus_pduc2_derefidx_vbuaa + //SEG792 [339] *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) ← *((const dword[5]) score_add_bcd#0 + (byte) play_increase_level::b4#0) + *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_increase_level::b4#0) -- pduc1_derefidx_vbuaa=pduc1_derefidx_vbuaa_plus_pduc2_derefidx_vbuaa tay clc lda score_add_bcd,y @@ -25560,7 +25560,7 @@ play_increase_level: { lda score_add_bcd+3,y adc SCORE_BASE_BCD+3,y sta score_add_bcd+3,y - //SEG793 [340] (byte) play_increase_level::b#1 ? ++ (byte) play_increase_level::b#2 -- vbuxx=_inc_vbuxx + //SEG793 [340] (byte) play_increase_level::b#1 ← ++ (byte) play_increase_level::b#2 -- vbuxx=_inc_vbuxx inx //SEG794 [341] if((byte) play_increase_level::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_increase_level::@5 -- vbuxx_neq_vbuc1_then_la1 cpx #5 @@ -25617,10 +25617,10 @@ play_remove_lines: { //SEG820 [346] phi (byte) play_remove_lines::r#2 = (byte) play_remove_lines::r#1 [phi:play_remove_lines::@3->play_remove_lines::@2#3] -- register_copy //SEG821 play_remove_lines::@2 b2: - //SEG822 [347] (byte) play_remove_lines::c#0 ? *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) -- vbuz1=pbuc1_derefidx_vbuyy + //SEG822 [347] (byte) play_remove_lines::c#0 ← *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::r#2) -- vbuz1=pbuc1_derefidx_vbuyy lda playfield,y sta c - //SEG823 [348] (byte) play_remove_lines::r#1 ? -- (byte) play_remove_lines::r#2 -- vbuyy=_dec_vbuyy + //SEG823 [348] (byte) play_remove_lines::r#1 ← -- (byte) play_remove_lines::r#2 -- vbuyy=_dec_vbuyy dey //SEG824 [349] if((byte) play_remove_lines::c#0!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto play_remove_lines::@9 -- vbuz1_neq_0_then_la1 cmp #0 @@ -25631,12 +25631,12 @@ play_remove_lines: { sta full //SEG827 play_remove_lines::@3 b3: - //SEG828 [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ? (byte) play_remove_lines::c#0 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG828 [351] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#4) ← (byte) play_remove_lines::c#0 -- pbuc1_derefidx_vbuxx=vbuz1 lda c sta playfield,x - //SEG829 [352] (byte) play_remove_lines::w#1 ? -- (byte) play_remove_lines::w#4 -- vbuxx=_dec_vbuxx + //SEG829 [352] (byte) play_remove_lines::w#1 ← -- (byte) play_remove_lines::w#4 -- vbuxx=_dec_vbuxx dex - //SEG830 [353] (byte) play_remove_lines::x#1 ? ++ (byte) play_remove_lines::x#2 -- vbuz1=_inc_vbuz1 + //SEG830 [353] (byte) play_remove_lines::x#1 ← ++ (byte) play_remove_lines::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG831 [354] if((byte) play_remove_lines::x#1!=(const byte) PLAYFIELD_COLS#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@2 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_COLS-1+1 @@ -25648,17 +25648,17 @@ play_remove_lines: { cmp full bne b6 //SEG834 play_remove_lines::@5 - //SEG835 [356] (byte) play_remove_lines::w#2 ? (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 -- vbuxx=vbuxx_plus_vbuc1 + //SEG835 [356] (byte) play_remove_lines::w#2 ← (byte) play_remove_lines::w#1 + (const byte) PLAYFIELD_COLS#0 -- vbuxx=vbuxx_plus_vbuc1 txa axs #-[PLAYFIELD_COLS] - //SEG836 [357] (byte) play_remove_lines::removed#1 ? ++ (byte) play_remove_lines::removed#11 -- vbuz1=_inc_vbuz1 + //SEG836 [357] (byte) play_remove_lines::removed#1 ← ++ (byte) play_remove_lines::removed#11 -- vbuz1=_inc_vbuz1 inc removed //SEG837 [358] phi from play_remove_lines::@4 play_remove_lines::@5 to play_remove_lines::@6 [phi:play_remove_lines::@4/play_remove_lines::@5->play_remove_lines::@6] //SEG838 [358] phi (byte) play_remove_lines::removed#8 = (byte) play_remove_lines::removed#11 [phi:play_remove_lines::@4/play_remove_lines::@5->play_remove_lines::@6#0] -- register_copy //SEG839 [358] phi (byte) play_remove_lines::w#11 = (byte) play_remove_lines::w#1 [phi:play_remove_lines::@4/play_remove_lines::@5->play_remove_lines::@6#1] -- register_copy //SEG840 play_remove_lines::@6 b6: - //SEG841 [359] (byte) play_remove_lines::y#1 ? ++ (byte) play_remove_lines::y#8 -- vbuz1=_inc_vbuz1 + //SEG841 [359] (byte) play_remove_lines::y#1 ← ++ (byte) play_remove_lines::y#8 -- vbuz1=_inc_vbuz1 inc y //SEG842 [360] if((byte) play_remove_lines::y#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_remove_lines::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLAYFIELD_LINES-1+1 @@ -25677,10 +25677,10 @@ play_remove_lines: { rts //SEG849 play_remove_lines::@8 b8: - //SEG850 [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG850 [364] *((const byte[PLAYFIELD_LINES#0*PLAYFIELD_COLS#0]) playfield#0 + (byte) play_remove_lines::w#6) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #0 sta playfield,x - //SEG851 [365] (byte) play_remove_lines::w#3 ? -- (byte) play_remove_lines::w#6 -- vbuxx=_dec_vbuxx + //SEG851 [365] (byte) play_remove_lines::w#3 ← -- (byte) play_remove_lines::w#6 -- vbuxx=_dec_vbuxx dex jmp b4 //SEG852 [366] phi from play_remove_lines::@2 to play_remove_lines::@9 [phi:play_remove_lines::@2->play_remove_lines::@9] @@ -25700,7 +25700,7 @@ play_lock_current: { .label i_3 = 9 .label i_7 = 9 .label i_9 = 9 - //SEG857 [367] (byte) play_lock_current::ypos2#0 ? (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG857 [367] (byte) play_lock_current::ypos2#0 ← (byte) current_ypos#11 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl ypos2 //SEG858 [368] phi from play_lock_current to play_lock_current::@1 [phi:play_lock_current->play_lock_current::@1] //SEG859 [368] phi (byte) play_lock_current::l#6 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:play_lock_current->play_lock_current::@1#0] -- vbuz1=vbuc1 @@ -25711,13 +25711,13 @@ play_lock_current: { //SEG861 [368] phi (byte) play_lock_current::ypos2#2 = (byte) play_lock_current::ypos2#0 [phi:play_lock_current->play_lock_current::@1#2] -- register_copy //SEG862 play_lock_current::@1 b1: - //SEG863 [369] (byte*) play_lock_current::playfield_line#0 ? *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 + //SEG863 [369] (byte*) play_lock_current::playfield_line#0 ← *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte) play_lock_current::ypos2#2) -- pbuz1=pptc1_derefidx_vbuz2 ldy ypos2 lda playfield_lines,y sta playfield_line lda playfield_lines+1,y sta playfield_line+1 - //SEG864 [370] (byte) play_lock_current::col#0 ? (byte) current_xpos#122 -- vbuz1=vbuz2 + //SEG864 [370] (byte) play_lock_current::col#0 ← (byte) current_xpos#122 -- vbuz1=vbuz2 lda current_xpos sta col //SEG865 [371] phi from play_lock_current::@1 to play_lock_current::@2 [phi:play_lock_current::@1->play_lock_current::@2] @@ -25727,7 +25727,7 @@ play_lock_current: { //SEG868 [371] phi (byte) play_lock_current::i#2 = (byte) play_lock_current::i#3 [phi:play_lock_current::@1->play_lock_current::@2#2] -- register_copy //SEG869 play_lock_current::@2 b2: - //SEG870 [372] (byte) play_lock_current::i#1 ? ++ (byte) play_lock_current::i#2 -- vbuz1=_inc_vbuz2 + //SEG870 [372] (byte) play_lock_current::i#1 ← ++ (byte) play_lock_current::i#2 -- vbuz1=_inc_vbuz2 ldy i_2 iny sty i @@ -25737,26 +25737,26 @@ play_lock_current: { cmp #0 beq b3 //SEG872 play_lock_current::@4 - //SEG873 [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ? (byte) current_piece_char#10 -- pbuz1_derefidx_vbuz2=vbuz3 + //SEG873 [374] *((byte*) play_lock_current::playfield_line#0 + (byte) play_lock_current::col#2) ← (byte) current_piece_char#10 -- pbuz1_derefidx_vbuz2=vbuz3 lda current_piece_char ldy col sta (playfield_line),y //SEG874 play_lock_current::@3 b3: - //SEG875 [375] (byte) play_lock_current::col#1 ? ++ (byte) play_lock_current::col#2 -- vbuz1=_inc_vbuz1 + //SEG875 [375] (byte) play_lock_current::col#1 ← ++ (byte) play_lock_current::col#2 -- vbuz1=_inc_vbuz1 inc col - //SEG876 [376] (byte) play_lock_current::c#1 ? ++ (byte) play_lock_current::c#2 -- vbuxx=_inc_vbuxx + //SEG876 [376] (byte) play_lock_current::c#1 ← ++ (byte) play_lock_current::c#2 -- vbuxx=_inc_vbuxx inx //SEG877 [377] if((byte) play_lock_current::c#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@7 -- vbuxx_neq_vbuc1_then_la1 cpx #4 bne b7 //SEG878 play_lock_current::@5 - //SEG879 [378] (byte) play_lock_current::ypos2#1 ? (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG879 [378] (byte) play_lock_current::ypos2#1 ← (byte) play_lock_current::ypos2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda ypos2 clc adc #2 sta ypos2 - //SEG880 [379] (byte) play_lock_current::l#1 ? ++ (byte) play_lock_current::l#6 -- vbuz1=_inc_vbuz1 + //SEG880 [379] (byte) play_lock_current::l#1 ← ++ (byte) play_lock_current::l#6 -- vbuz1=_inc_vbuz1 inc l //SEG881 [380] if((byte) play_lock_current::l#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto play_lock_current::@6 -- vbuz1_neq_vbuc1_then_la1 lda #4 @@ -25767,7 +25767,7 @@ play_lock_current: { rts //SEG884 play_lock_current::@6 b6: - //SEG885 [382] (byte~) play_lock_current::i#7 ? (byte) play_lock_current::i#1 -- vbuz1=vbuz2 + //SEG885 [382] (byte~) play_lock_current::i#7 ← (byte) play_lock_current::i#1 -- vbuz1=vbuz2 lda i sta i_7 //SEG886 [368] phi from play_lock_current::@6 to play_lock_current::@1 [phi:play_lock_current::@6->play_lock_current::@1] @@ -25777,7 +25777,7 @@ play_lock_current: { jmp b1 //SEG890 play_lock_current::@7 b7: - //SEG891 [383] (byte~) play_lock_current::i#9 ? (byte) play_lock_current::i#1 -- vbuz1=vbuz2 + //SEG891 [383] (byte~) play_lock_current::i#9 ← (byte) play_lock_current::i#1 -- vbuz1=vbuz2 lda i sta i_9 //SEG892 [371] phi from play_lock_current::@7 to play_lock_current::@2 [phi:play_lock_current::@7->play_lock_current::@2] @@ -25793,19 +25793,19 @@ play_lock_current: { keyboard_event_pressed: { .label row_bits = $a .label keycode = 9 - //SEG897 [385] (byte~) keyboard_event_pressed::$0 ? (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 + //SEG897 [385] (byte~) keyboard_event_pressed::$0 ← (byte) keyboard_event_pressed::keycode#5 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_ror_3 lda keycode lsr lsr lsr - //SEG898 [386] (byte) keyboard_event_pressed::row_bits#0 ? *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa + //SEG898 [386] (byte) keyboard_event_pressed::row_bits#0 ← *((const byte[8]) keyboard_scan_values#0 + (byte~) keyboard_event_pressed::$0) -- vbuz1=pbuc1_derefidx_vbuaa tay lda keyboard_scan_values,y sta row_bits - //SEG899 [387] (byte~) keyboard_event_pressed::$1 ? (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 + //SEG899 [387] (byte~) keyboard_event_pressed::$1 ← (byte) keyboard_event_pressed::keycode#5 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuz1_band_vbuc1 lda #7 and keycode - //SEG900 [388] (byte) keyboard_event_pressed::return#11 ? (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa + //SEG900 [388] (byte) keyboard_event_pressed::return#11 ← (byte) keyboard_event_pressed::row_bits#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte~) keyboard_event_pressed::$1) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuaa tay lda keyboard_matrix_col_bitmask,y and row_bits @@ -25823,9 +25823,9 @@ keyboard_event_get: { cmp #0 beq b1 //SEG905 keyboard_event_get::@1 - //SEG906 [391] (byte) keyboard_events_size#4 ? -- (byte) keyboard_events_size#13 -- vbuz1=_dec_vbuz1 + //SEG906 [391] (byte) keyboard_events_size#4 ← -- (byte) keyboard_events_size#13 -- vbuz1=_dec_vbuz1 dec keyboard_events_size - //SEG907 [392] (byte) keyboard_event_get::return#1 ? *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuxx=pbuc1_derefidx_vbuz1 + //SEG907 [392] (byte) keyboard_event_get::return#1 ← *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#4) -- vbuxx=pbuc1_derefidx_vbuz1 ldy keyboard_events_size ldx keyboard_events,y //SEG908 [393] phi from keyboard_event_get::@1 to keyboard_event_get::@return [phi:keyboard_event_get::@1->keyboard_event_get::@return] @@ -25863,20 +25863,20 @@ keyboard_event_scan: { //SEG924 [396] phi (byte) keyboard_event_scan::row#2 = (byte) keyboard_event_scan::row#1 [phi:keyboard_event_scan::@8->keyboard_event_scan::@7#2] -- register_copy //SEG925 keyboard_event_scan::@7 b7: - //SEG926 [397] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 + //SEG926 [397] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_event_scan::row#2 -- vbuxx=vbuz1 ldx row //SEG927 [398] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG928 [399] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG928 [399] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 //SEG929 keyboard_event_scan::@19 - //SEG930 [400] (byte) keyboard_event_scan::row_scan#0 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa + //SEG930 [400] (byte) keyboard_event_scan::row_scan#0 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuaa sta row_scan //SEG931 [401] if((byte) keyboard_event_scan::row_scan#0!=*((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2)) goto keyboard_event_scan::@9 -- vbuz1_neq_pbuc1_derefidx_vbuz2_then_la1 ldy row cmp keyboard_scan_values,y bne b6 //SEG932 keyboard_event_scan::@16 - //SEG933 [402] (byte) keyboard_event_scan::keycode#1 ? (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 + //SEG933 [402] (byte) keyboard_event_scan::keycode#1 ← (byte) keyboard_event_scan::keycode#11 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 lax keycode axs #-[8] stx keycode @@ -25885,7 +25885,7 @@ keyboard_event_scan: { //SEG936 [403] phi (byte) keyboard_event_scan::keycode#14 = (byte) keyboard_event_scan::keycode#15 [phi:keyboard_event_scan::@15/keyboard_event_scan::@16->keyboard_event_scan::@8#1] -- register_copy //SEG937 keyboard_event_scan::@8 b8: - //SEG938 [404] (byte) keyboard_event_scan::row#1 ? ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 + //SEG938 [404] (byte) keyboard_event_scan::row#1 ← ++ (byte) keyboard_event_scan::row#2 -- vbuz1=_inc_vbuz1 inc row //SEG939 [405] if((byte) keyboard_event_scan::row#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@7 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -25899,9 +25899,9 @@ keyboard_event_scan: { lda #KEY_LSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG945 [408] (byte) keyboard_event_pressed::return#0 ? (byte) keyboard_event_pressed::return#11 + //SEG945 [408] (byte) keyboard_event_pressed::return#0 ← (byte) keyboard_event_pressed::return#11 //SEG946 keyboard_event_scan::@20 - //SEG947 [409] (byte~) keyboard_event_scan::$0 ? (byte) keyboard_event_pressed::return#0 + //SEG947 [409] (byte~) keyboard_event_scan::$0 ← (byte) keyboard_event_pressed::return#0 //SEG948 [410] if((byte~) keyboard_event_scan::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@1 -- vbuaa_eq_0_then_la1 cmp #0 beq b4 @@ -25923,14 +25923,14 @@ keyboard_event_scan: { lda #KEY_RSHIFT sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG959 [414] (byte) keyboard_event_pressed::return#1 ? (byte) keyboard_event_pressed::return#11 + //SEG959 [414] (byte) keyboard_event_pressed::return#1 ← (byte) keyboard_event_pressed::return#11 //SEG960 keyboard_event_scan::@21 - //SEG961 [415] (byte~) keyboard_event_scan::$3 ? (byte) keyboard_event_pressed::return#1 + //SEG961 [415] (byte~) keyboard_event_scan::$3 ← (byte) keyboard_event_pressed::return#1 //SEG962 [416] if((byte~) keyboard_event_scan::$3==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG963 keyboard_event_scan::@4 - //SEG964 [417] (byte) keyboard_modifiers#3 ? (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG964 [417] (byte) keyboard_modifiers#3 ← (byte) keyboard_modifiers#11 | (const byte) KEY_MODIFIER_RSHIFT#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_RSHIFT tax @@ -25944,14 +25944,14 @@ keyboard_event_scan: { lda #KEY_CTRL sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG971 [420] (byte) keyboard_event_pressed::return#2 ? (byte) keyboard_event_pressed::return#11 + //SEG971 [420] (byte) keyboard_event_pressed::return#2 ← (byte) keyboard_event_pressed::return#11 //SEG972 keyboard_event_scan::@22 - //SEG973 [421] (byte~) keyboard_event_scan::$6 ? (byte) keyboard_event_pressed::return#2 + //SEG973 [421] (byte~) keyboard_event_scan::$6 ← (byte) keyboard_event_pressed::return#2 //SEG974 [422] if((byte~) keyboard_event_scan::$6==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG975 keyboard_event_scan::@5 - //SEG976 [423] (byte) keyboard_modifiers#4 ? (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 + //SEG976 [423] (byte) keyboard_modifiers#4 ← (byte) keyboard_modifiers#12 | (const byte) KEY_MODIFIER_CTRL#0 -- vbuxx=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_CTRL tax @@ -25965,14 +25965,14 @@ keyboard_event_scan: { lda #KEY_COMMODORE sta keyboard_event_pressed.keycode jsr keyboard_event_pressed - //SEG983 [426] (byte) keyboard_event_pressed::return#10 ? (byte) keyboard_event_pressed::return#11 + //SEG983 [426] (byte) keyboard_event_pressed::return#10 ← (byte) keyboard_event_pressed::return#11 //SEG984 keyboard_event_scan::@23 - //SEG985 [427] (byte~) keyboard_event_scan::$9 ? (byte) keyboard_event_pressed::return#10 + //SEG985 [427] (byte~) keyboard_event_scan::$9 ← (byte) keyboard_event_pressed::return#10 //SEG986 [428] if((byte~) keyboard_event_scan::$9==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@return -- vbuaa_eq_0_then_la1 cmp #0 beq breturn //SEG987 keyboard_event_scan::@6 - //SEG988 [429] (byte) keyboard_modifiers#5 ? (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuaa=vbuxx_bor_vbuc1 + //SEG988 [429] (byte) keyboard_modifiers#5 ← (byte) keyboard_modifiers#13 | (const byte) KEY_MODIFIER_COMMODORE#0 -- vbuaa=vbuxx_bor_vbuc1 txa ora #KEY_MODIFIER_COMMODORE //SEG989 keyboard_event_scan::@return @@ -25992,11 +25992,11 @@ keyboard_event_scan: { ldx #0 //SEG999 keyboard_event_scan::@9 b9: - //SEG1000 [432] (byte~) keyboard_event_scan::$15 ? (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 + //SEG1000 [432] (byte~) keyboard_event_scan::$15 ← (byte) keyboard_event_scan::row_scan#0 ^ *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) -- vbuaa=vbuz1_bxor_pbuc1_derefidx_vbuz2 lda row_scan ldy row eor keyboard_scan_values,y - //SEG1001 [433] (byte~) keyboard_event_scan::$16 ? (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx + //SEG1001 [433] (byte~) keyboard_event_scan::$16 ← (byte~) keyboard_event_scan::$15 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx and keyboard_matrix_col_bitmask,x //SEG1002 [434] if((byte~) keyboard_event_scan::$16==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@10 -- vbuaa_eq_0_then_la1 cmp #0 @@ -26007,33 +26007,33 @@ keyboard_event_scan: { cmp keyboard_events_size beq b10 //SEG1005 keyboard_event_scan::@13 - //SEG1006 [436] (byte) keyboard_event_scan::event_type#0 ? (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx + //SEG1006 [436] (byte) keyboard_event_scan::event_type#0 ← (byte) keyboard_event_scan::row_scan#0 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_event_scan::col#2) -- vbuaa=vbuz1_band_pbuc1_derefidx_vbuxx lda keyboard_matrix_col_bitmask,x and row_scan //SEG1007 [437] if((byte) keyboard_event_scan::event_type#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto keyboard_event_scan::@11 -- vbuaa_eq_0_then_la1 cmp #0 beq b11 //SEG1008 keyboard_event_scan::@14 - //SEG1009 [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1009 [438] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte) keyboard_event_scan::keycode#10 -- pbuc1_derefidx_vbuz1=vbuz2 // Key pressed lda keycode ldy keyboard_events_size sta keyboard_events,y - //SEG1010 [439] (byte) keyboard_events_size#2 ? ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 + //SEG1010 [439] (byte) keyboard_events_size#2 ← ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 inc keyboard_events_size //SEG1011 [440] phi from keyboard_event_scan::@11 keyboard_event_scan::@12 keyboard_event_scan::@14 keyboard_event_scan::@9 to keyboard_event_scan::@10 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10] //SEG1012 [440] phi (byte) keyboard_events_size#29 = (byte) keyboard_events_size#1 [phi:keyboard_event_scan::@11/keyboard_event_scan::@12/keyboard_event_scan::@14/keyboard_event_scan::@9->keyboard_event_scan::@10#0] -- register_copy //SEG1013 keyboard_event_scan::@10 b10: - //SEG1014 [441] (byte) keyboard_event_scan::keycode#15 ? ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 + //SEG1014 [441] (byte) keyboard_event_scan::keycode#15 ← ++ (byte) keyboard_event_scan::keycode#10 -- vbuz1=_inc_vbuz1 inc keycode - //SEG1015 [442] (byte) keyboard_event_scan::col#1 ? ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx + //SEG1015 [442] (byte) keyboard_event_scan::col#1 ← ++ (byte) keyboard_event_scan::col#2 -- vbuxx=_inc_vbuxx inx //SEG1016 [443] if((byte) keyboard_event_scan::col#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto keyboard_event_scan::@9 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b9 //SEG1017 keyboard_event_scan::@15 - //SEG1018 [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ? (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG1018 [444] *((const byte[8]) keyboard_scan_values#0 + (byte) keyboard_event_scan::row#2) ← (byte) keyboard_event_scan::row_scan#0 -- pbuc1_derefidx_vbuz1=vbuz2 // Store the current keyboard status for the row to debounce lda row_scan ldy row @@ -26041,14 +26041,14 @@ keyboard_event_scan: { jmp b8 //SEG1019 keyboard_event_scan::@11 b11: - //SEG1020 [445] (byte/word/dword~) keyboard_event_scan::$23 ? (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 + //SEG1020 [445] (byte/word/dword~) keyboard_event_scan::$23 ← (byte) keyboard_event_scan::keycode#10 | (byte/signed byte/word/signed word/dword/signed dword) $40 -- vbuaa=vbuz1_bor_vbuc1 lda #$40 ora keycode - //SEG1021 [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ? (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG1021 [446] *((const byte[8]) keyboard_events#0 + (byte) keyboard_events_size#10) ← (byte/word/dword~) keyboard_event_scan::$23 -- pbuc1_derefidx_vbuz1=vbuaa // Key released ldy keyboard_events_size sta keyboard_events,y - //SEG1022 [447] (byte) keyboard_events_size#1 ? ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 + //SEG1022 [447] (byte) keyboard_events_size#1 ← ++ (byte) keyboard_events_size#10 -- vbuz1=_inc_vbuz1 inc keyboard_events_size jmp b10 } @@ -26060,10 +26060,10 @@ keyboard_event_scan: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(X) rowid) keyboard_matrix_read: { - //SEG1024 [448] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + //SEG1024 [448] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx lda keyboard_matrix_row_bitmask,x sta CIA1_PORT_A - //SEG1025 [449] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG1025 [449] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff //SEG1026 keyboard_matrix_read::@return @@ -26086,16 +26086,16 @@ render_show: { lda #toD0182_return //SEG1034 render_show::@1 b1: - //SEG1035 [454] *((const byte*) D018#0) ? (byte) render_show::d018val#3 -- _deref_pbuc1=vbuaa + //SEG1035 [454] *((const byte*) D018#0) ← (byte) render_show::d018val#3 -- _deref_pbuc1=vbuaa sta D018 - //SEG1036 [455] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG1036 [455] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy level lda PIECES_COLORS_1,y sta BGCOL2 - //SEG1037 [456] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG1037 [456] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0 + (byte) level#10) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 lda PIECES_COLORS_2,y sta BGCOL3 - //SEG1038 [457] (byte) render_screen_showing#1 ? (byte) render_screen_show#16 -- vbuz1=vbuz2 + //SEG1038 [457] (byte) render_screen_showing#1 ← (byte) render_screen_show#16 -- vbuz1=vbuz2 lda render_screen_show sta render_screen_showing //SEG1039 render_show::@return @@ -26131,19 +26131,19 @@ play_init: { //SEG1053 [461] phi (byte) play_init::j#2 = (byte) play_init::j#1 [phi:play_init::@1->play_init::@1#2] -- register_copy //SEG1054 play_init::@1 b1: - //SEG1055 [462] (byte~) play_init::$2 ? (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 + //SEG1055 [462] (byte~) play_init::$2 ← (byte) play_init::j#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 tya asl tax - //SEG1056 [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ? (byte*) play_init::pli#2 -- pptc1_derefidx_vbuxx=pbuz1 + //SEG1056 [463] *((const byte*[PLAYFIELD_LINES#0]) playfield_lines#0 + (byte~) play_init::$2) ← (byte*) play_init::pli#2 -- pptc1_derefidx_vbuxx=pbuz1 lda pli sta playfield_lines,x lda pli+1 sta playfield_lines+1,x - //SEG1057 [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ? (byte) play_init::idx#2 -- pbuc1_derefidx_vbuyy=vbuz1 + //SEG1057 [464] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0 + (byte) play_init::j#2) ← (byte) play_init::idx#2 -- pbuc1_derefidx_vbuyy=vbuz1 lda idx sta playfield_lines_idx,y - //SEG1058 [465] (byte*) play_init::pli#1 ? (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1058 [465] (byte*) play_init::pli#1 ← (byte*) play_init::pli#2 + (const byte) PLAYFIELD_COLS#0 -- pbuz1=pbuz1_plus_vbuc1 lda #PLAYFIELD_COLS clc adc pli @@ -26151,20 +26151,20 @@ play_init: { bcc !+ inc pli+1 !: - //SEG1059 [466] (byte) play_init::idx#1 ? (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1059 [466] (byte) play_init::idx#1 ← (byte) play_init::idx#2 + (const byte) PLAYFIELD_COLS#0 -- vbuz1=vbuz1_plus_vbuc1 lax idx axs #-[PLAYFIELD_COLS] stx idx - //SEG1060 [467] (byte) play_init::j#1 ? ++ (byte) play_init::j#2 -- vbuyy=_inc_vbuyy + //SEG1060 [467] (byte) play_init::j#1 ← ++ (byte) play_init::j#2 -- vbuyy=_inc_vbuyy iny //SEG1061 [468] if((byte) play_init::j#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto play_init::@1 -- vbuyy_neq_vbuc1_then_la1 cpy #PLAYFIELD_LINES-1+1 bne b1 //SEG1062 play_init::@2 - //SEG1063 [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ? (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 -- _deref_pbuc1=vbuc2 + //SEG1063 [469] *((const byte[PLAYFIELD_LINES#0+1]) playfield_lines_idx#0+(const byte) PLAYFIELD_LINES#0) ← (const byte) PLAYFIELD_COLS#0*(const byte) PLAYFIELD_LINES#0 -- _deref_pbuc1=vbuc2 lda #PLAYFIELD_COLS*PLAYFIELD_LINES sta playfield_lines_idx+PLAYFIELD_LINES - //SEG1064 [470] (byte) current_movedown_slow#1 ? *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) -- vbuz1=_deref_pbuc1 + //SEG1064 [470] (byte) current_movedown_slow#1 ← *((const byte[]) MOVEDOWN_SLOW_SPEEDS#0) -- vbuz1=_deref_pbuc1 // Set initial speed of moving down a tetromino lda MOVEDOWN_SLOW_SPEEDS sta current_movedown_slow @@ -26176,11 +26176,11 @@ play_init: { //SEG1068 [471] phi (byte) play_init::b#2 = (byte) play_init::b#1 [phi:play_init::@3->play_init::@3#0] -- register_copy //SEG1069 play_init::@3 b3: - //SEG1070 [472] (byte) play_init::b4#0 ? (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 + //SEG1070 [472] (byte) play_init::b4#0 ← (byte) play_init::b#2 << (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuxx_rol_2 txa asl asl - //SEG1071 [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ? *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) -- pduc1_derefidx_vbuaa=pduc2_derefidx_vbuaa + //SEG1071 [473] *((const dword[5]) score_add_bcd#0 + (byte) play_init::b4#0) ← *((const dword[]) SCORE_BASE_BCD#0 + (byte) play_init::b4#0) -- pduc1_derefidx_vbuaa=pduc2_derefidx_vbuaa tay lda SCORE_BASE_BCD,y sta score_add_bcd,y @@ -26190,7 +26190,7 @@ play_init: { sta score_add_bcd+2,y lda SCORE_BASE_BCD+3,y sta score_add_bcd+3,y - //SEG1072 [474] (byte) play_init::b#1 ? ++ (byte) play_init::b#2 -- vbuxx=_inc_vbuxx + //SEG1072 [474] (byte) play_init::b#1 ← ++ (byte) play_init::b#2 -- vbuxx=_inc_vbuxx inx //SEG1073 [475] if((byte) play_init::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto play_init::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #5 @@ -26204,36 +26204,36 @@ play_init: { sprites_irq_init: { //SEG1077 asm { sei } sei - //SEG1078 [478] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1078 [478] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Acknowledge any IRQ and setup the next one lda #IRQ_RASTER sta IRQ_STATUS //SEG1079 asm { ldaCIA1_INTERRUPT } lda CIA1_INTERRUPT - //SEG1080 [480] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG1080 [480] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG1081 [481] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG1081 [481] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG1082 [482] *((const byte*) CIA1_INTERRUPT#0) ? (const byte) CIA_INTERRUPT_CLEAR#0 -- _deref_pbuc1=vbuc2 + //SEG1082 [482] *((const byte*) CIA1_INTERRUPT#0) ← (const byte) CIA_INTERRUPT_CLEAR#0 -- _deref_pbuc1=vbuc2 // Disable CIA 1 Timer IRQ lda #CIA_INTERRUPT_CLEAR sta CIA1_INTERRUPT - //SEG1083 [483] *((const byte*) VIC_CONTROL#0) ? *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- _deref_pbuc1=_deref_pbuc1_band_vbuc2 + //SEG1083 [483] *((const byte*) VIC_CONTROL#0) ← *((const byte*) VIC_CONTROL#0) & (byte/signed byte/word/signed word/dword/signed dword) $7f -- _deref_pbuc1=_deref_pbuc1_band_vbuc2 // Set raster line lda #$7f and VIC_CONTROL sta VIC_CONTROL - //SEG1084 [484] *((const byte*) RASTER#0) ? (const byte) IRQ_RASTER_FIRST#0 -- _deref_pbuc1=vbuc2 + //SEG1084 [484] *((const byte*) RASTER#0) ← (const byte) IRQ_RASTER_FIRST#0 -- _deref_pbuc1=vbuc2 lda #IRQ_RASTER_FIRST sta RASTER - //SEG1085 [485] *((const byte*) IRQ_ENABLE#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1085 [485] *((const byte*) IRQ_ENABLE#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Enable Raster Interrupt lda #IRQ_RASTER sta IRQ_ENABLE - //SEG1086 [486] *((const void()**) HARDWARE_IRQ#0) ? &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2 + //SEG1086 [486] *((const void()**) HARDWARE_IRQ#0) ← &interrupt(HARDWARE_CLOBBER)(void()) sprites_irq() -- _deref_pptc1=pprc2 // Set the IRQ routine lda #sprites_init::@1] //SEG1096 [493] phi (byte) sprites_init::xpos#2 = (byte/signed byte/word/signed word/dword/signed dword) $18+(byte/signed byte/word/signed word/dword/signed dword) $f*(byte/signed byte/word/signed word/dword/signed dword) 8 [phi:sprites_init->sprites_init::@1#0] -- vbuz1=vbuc1 @@ -26270,21 +26270,21 @@ sprites_init: { //SEG1100 [493] phi (byte) sprites_init::s#2 = (byte) sprites_init::s#1 [phi:sprites_init::@1->sprites_init::@1#1] -- register_copy //SEG1101 sprites_init::@1 b1: - //SEG1102 [494] (byte) sprites_init::s2#0 ? (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 + //SEG1102 [494] (byte) sprites_init::s2#0 ← (byte) sprites_init::s#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuyy_rol_1 tya asl tax - //SEG1103 [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ? (byte) sprites_init::xpos#2 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG1103 [495] *((const byte*) SPRITES_XPOS#0 + (byte) sprites_init::s2#0) ← (byte) sprites_init::xpos#2 -- pbuc1_derefidx_vbuxx=vbuz1 lda xpos sta SPRITES_XPOS,x - //SEG1104 [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ? (const byte) BLACK#0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG1104 [496] *((const byte*) SPRITES_COLS#0 + (byte) sprites_init::s#2) ← (const byte) BLACK#0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #BLACK sta SPRITES_COLS,y - //SEG1105 [497] (byte) sprites_init::xpos#1 ? (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1105 [497] (byte) sprites_init::xpos#1 ← (byte) sprites_init::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $18 -- vbuz1=vbuz1_plus_vbuc1 lax xpos axs #-[$18] stx xpos - //SEG1106 [498] (byte) sprites_init::s#1 ? ++ (byte) sprites_init::s#2 -- vbuyy=_inc_vbuyy + //SEG1106 [498] (byte) sprites_init::s#1 ← ++ (byte) sprites_init::s#2 -- vbuyy=_inc_vbuyy iny //SEG1107 [499] if((byte) sprites_init::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto sprites_init::@1 -- vbuyy_neq_vbuc1_then_la1 cpy #4 @@ -26300,32 +26300,32 @@ render_init: { .label li_1 = 5 .label li_2 = 7 //SEG1111 render_init::vicSelectGfxBank1 - //SEG1112 [502] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1112 [502] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG1113 [503] phi from render_init::vicSelectGfxBank1 to render_init::vicSelectGfxBank1_toDd001 [phi:render_init::vicSelectGfxBank1->render_init::vicSelectGfxBank1_toDd001] //SEG1114 render_init::vicSelectGfxBank1_toDd001 //SEG1115 render_init::vicSelectGfxBank1_@1 - //SEG1116 [504] *((const byte*) CIA2_PORT_A#0) ? (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG1116 [504] *((const byte*) CIA2_PORT_A#0) ← (const byte) render_init::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A //SEG1117 render_init::@2 - //SEG1118 [505] *((const byte*) D011#0) ? (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG1118 [505] *((const byte*) D011#0) ← (const byte) VIC_ECM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 // Enable Extended Background Color Mode lda #VIC_ECM|VIC_DEN|VIC_RSEL|3 sta D011 - //SEG1119 [506] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1119 [506] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL - //SEG1120 [507] *((const byte*) BGCOL1#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG1120 [507] *((const byte*) BGCOL1#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 sta BGCOL1 - //SEG1121 [508] *((const byte*) BGCOL2#0) ? *((const byte[]) PIECES_COLORS_1#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG1121 [508] *((const byte*) BGCOL2#0) ← *((const byte[]) PIECES_COLORS_1#0) -- _deref_pbuc1=_deref_pbuc2 lda PIECES_COLORS_1 sta BGCOL2 - //SEG1122 [509] *((const byte*) BGCOL3#0) ? *((const byte[]) PIECES_COLORS_2#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG1122 [509] *((const byte*) BGCOL3#0) ← *((const byte[]) PIECES_COLORS_2#0) -- _deref_pbuc1=_deref_pbuc2 lda PIECES_COLORS_2 sta BGCOL3 - //SEG1123 [510] *((const byte*) BGCOL4#0) ? (const byte) GREY#0 -- _deref_pbuc1=vbuc2 + //SEG1123 [510] *((const byte*) BGCOL4#0) ← (const byte) GREY#0 -- _deref_pbuc1=vbuc2 lda #GREY sta BGCOL4 //SEG1124 [511] call render_screen_original @@ -26365,25 +26365,25 @@ render_init: { //SEG1139 [514] phi (byte) render_init::i#2 = (byte) render_init::i#1 [phi:render_init::@1->render_init::@1#2] -- register_copy //SEG1140 render_init::@1 b1: - //SEG1141 [515] (byte~) render_init::$13 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 + //SEG1141 [515] (byte~) render_init::$13 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 txa asl - //SEG1142 [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ? (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuaa=pbuz1 + //SEG1142 [516] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_1#0 + (byte~) render_init::$13) ← (byte*) render_init::li_1#2 -- pptc1_derefidx_vbuaa=pbuz1 tay lda li_1 sta screen_lines_1,y lda li_1+1 sta screen_lines_1+1,y - //SEG1143 [517] (byte~) render_init::$14 ? (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 + //SEG1143 [517] (byte~) render_init::$14 ← (byte) render_init::i#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 txa asl - //SEG1144 [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ? (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuaa=pbuz1 + //SEG1144 [518] *((const byte*[PLAYFIELD_LINES#0]) screen_lines_2#0 + (byte~) render_init::$14) ← (byte*) render_init::li_2#2 -- pptc1_derefidx_vbuaa=pbuz1 tay lda li_2 sta screen_lines_2,y lda li_2+1 sta screen_lines_2+1,y - //SEG1145 [519] (byte*) render_init::li_1#1 ? (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1145 [519] (byte*) render_init::li_1#1 ← (byte*) render_init::li_1#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc li_1 @@ -26391,7 +26391,7 @@ render_init: { bcc !+ inc li_1+1 !: - //SEG1146 [520] (byte*) render_init::li_2#1 ? (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG1146 [520] (byte*) render_init::li_2#1 ← (byte*) render_init::li_2#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc li_2 @@ -26399,7 +26399,7 @@ render_init: { bcc !+ inc li_2+1 !: - //SEG1147 [521] (byte) render_init::i#1 ? ++ (byte) render_init::i#2 -- vbuxx=_inc_vbuxx + //SEG1147 [521] (byte) render_init::i#1 ← ++ (byte) render_init::i#2 -- vbuxx=_inc_vbuxx inx //SEG1148 [522] if((byte) render_init::i#1!=(const byte) PLAYFIELD_LINES#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto render_init::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #PLAYFIELD_LINES-1+1 @@ -26458,25 +26458,25 @@ render_screen_original: { //SEG1172 [526] phi (byte*) render_screen_original::screen#5 = (byte*) render_screen_original::screen#2 [phi:render_screen_original::@2->render_screen_original::@2#2] -- register_copy //SEG1173 render_screen_original::@2 b2: - //SEG1174 [527] *((byte*) render_screen_original::screen#5) ? (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 + //SEG1174 [527] *((byte*) render_screen_original::screen#5) ← (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 lda #SPACE ldy #0 sta (screen),y - //SEG1175 [528] (byte*) render_screen_original::screen#2 ? ++ (byte*) render_screen_original::screen#5 -- pbuz1=_inc_pbuz1 + //SEG1175 [528] (byte*) render_screen_original::screen#2 ← ++ (byte*) render_screen_original::screen#5 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1176 [529] *((byte*) render_screen_original::cols#4) ? (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 + //SEG1176 [529] *((byte*) render_screen_original::cols#4) ← (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 lda #BLACK ldy #0 sta (cols),y - //SEG1177 [530] (byte*) render_screen_original::cols#1 ? ++ (byte*) render_screen_original::cols#4 -- pbuz1=_inc_pbuz1 + //SEG1177 [530] (byte*) render_screen_original::cols#1 ← ++ (byte*) render_screen_original::cols#4 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1178 [531] (byte) render_screen_original::x#1 ? ++ (byte) render_screen_original::x#4 -- vbuxx=_inc_vbuxx + //SEG1178 [531] (byte) render_screen_original::x#1 ← ++ (byte) render_screen_original::x#4 -- vbuxx=_inc_vbuxx inx //SEG1179 [532] if((byte) render_screen_original::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto render_screen_original::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #4 @@ -26489,35 +26489,35 @@ render_screen_original: { //SEG1185 [533] phi (byte*) render_screen_original::oscr#2 = (byte*) render_screen_original::oscr#4 [phi:render_screen_original::@2/render_screen_original::@3->render_screen_original::@3#4] -- register_copy //SEG1186 render_screen_original::@3 b3: - //SEG1187 [534] *((byte*) render_screen_original::screen#6) ? *((byte*) render_screen_original::oscr#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1187 [534] *((byte*) render_screen_original::screen#6) ← *((byte*) render_screen_original::oscr#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (oscr),y sta (screen),y - //SEG1188 [535] (byte*) render_screen_original::screen#3 ? ++ (byte*) render_screen_original::screen#6 -- pbuz1=_inc_pbuz1 + //SEG1188 [535] (byte*) render_screen_original::screen#3 ← ++ (byte*) render_screen_original::screen#6 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1189 [536] (byte*) render_screen_original::oscr#1 ? ++ (byte*) render_screen_original::oscr#2 -- pbuz1=_inc_pbuz1 + //SEG1189 [536] (byte*) render_screen_original::oscr#1 ← ++ (byte*) render_screen_original::oscr#2 -- pbuz1=_inc_pbuz1 inc oscr bne !+ inc oscr+1 !: - //SEG1190 [537] *((byte*) render_screen_original::cols#5) ? *((byte*) render_screen_original::ocols#2) -- _deref_pbuz1=_deref_pbuz2 + //SEG1190 [537] *((byte*) render_screen_original::cols#5) ← *((byte*) render_screen_original::ocols#2) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (ocols),y sta (cols),y - //SEG1191 [538] (byte*) render_screen_original::cols#2 ? ++ (byte*) render_screen_original::cols#5 -- pbuz1=_inc_pbuz1 + //SEG1191 [538] (byte*) render_screen_original::cols#2 ← ++ (byte*) render_screen_original::cols#5 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1192 [539] (byte*) render_screen_original::ocols#1 ? ++ (byte*) render_screen_original::ocols#2 -- pbuz1=_inc_pbuz1 + //SEG1192 [539] (byte*) render_screen_original::ocols#1 ← ++ (byte*) render_screen_original::ocols#2 -- pbuz1=_inc_pbuz1 inc ocols bne !+ inc ocols+1 !: - //SEG1193 [540] (byte) render_screen_original::x#2 ? ++ (byte) render_screen_original::x#5 -- vbuxx=_inc_vbuxx + //SEG1193 [540] (byte) render_screen_original::x#2 ← ++ (byte) render_screen_original::x#5 -- vbuxx=_inc_vbuxx inx //SEG1194 [541] if((byte) render_screen_original::x#2!=(byte/signed byte/word/signed word/dword/signed dword) $24) goto render_screen_original::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #$24 @@ -26528,31 +26528,31 @@ render_screen_original: { //SEG1198 [542] phi (byte*) render_screen_original::screen#7 = (byte*) render_screen_original::screen#3 [phi:render_screen_original::@3/render_screen_original::@4->render_screen_original::@4#2] -- register_copy //SEG1199 render_screen_original::@4 b4: - //SEG1200 [543] *((byte*) render_screen_original::screen#7) ? (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 + //SEG1200 [543] *((byte*) render_screen_original::screen#7) ← (const byte) render_screen_original::SPACE#0 -- _deref_pbuz1=vbuc1 lda #SPACE ldy #0 sta (screen),y - //SEG1201 [544] (byte*) render_screen_original::screen#10 ? ++ (byte*) render_screen_original::screen#7 -- pbuz1=_inc_pbuz1 + //SEG1201 [544] (byte*) render_screen_original::screen#10 ← ++ (byte*) render_screen_original::screen#7 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG1202 [545] *((byte*) render_screen_original::cols#6) ? (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 + //SEG1202 [545] *((byte*) render_screen_original::cols#6) ← (const byte) BLACK#0 -- _deref_pbuz1=vbuc1 lda #BLACK ldy #0 sta (cols),y - //SEG1203 [546] (byte*) render_screen_original::cols#3 ? ++ (byte*) render_screen_original::cols#6 -- pbuz1=_inc_pbuz1 + //SEG1203 [546] (byte*) render_screen_original::cols#3 ← ++ (byte*) render_screen_original::cols#6 -- pbuz1=_inc_pbuz1 inc cols bne !+ inc cols+1 !: - //SEG1204 [547] (byte) render_screen_original::x#3 ? ++ (byte) render_screen_original::x#6 -- vbuxx=_inc_vbuxx + //SEG1204 [547] (byte) render_screen_original::x#3 ← ++ (byte) render_screen_original::x#6 -- vbuxx=_inc_vbuxx inx //SEG1205 [548] if((byte) render_screen_original::x#3!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render_screen_original::@4 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b4 //SEG1206 render_screen_original::@5 - //SEG1207 [549] (byte) render_screen_original::y#1 ? ++ (byte) render_screen_original::y#6 -- vbuz1=_inc_vbuz1 + //SEG1207 [549] (byte) render_screen_original::y#1 ← ++ (byte) render_screen_original::y#6 -- vbuz1=_inc_vbuz1 inc y //SEG1208 [550] if((byte) render_screen_original::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render_screen_original::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -26565,12 +26565,12 @@ render_screen_original: { //SEG1211 sid_rnd_init // Initialize SID voice 3 for random number generation sid_rnd_init: { - //SEG1212 [552] *((const word*) SID_VOICE3_FREQ#0) ? (word/dword/signed dword) $ffff -- _deref_pwuc1=vwuc2 + //SEG1212 [552] *((const word*) SID_VOICE3_FREQ#0) ← (word/dword/signed dword) $ffff -- _deref_pwuc1=vwuc2 lda #<$ffff sta SID_VOICE3_FREQ lda #>$ffff sta SID_VOICE3_FREQ+1 - //SEG1213 [553] *((const byte*) SID_VOICE3_CONTROL#0) ? (const byte) SID_CONTROL_NOISE#0 -- _deref_pbuc1=vbuc2 + //SEG1213 [553] *((const byte*) SID_VOICE3_CONTROL#0) ← (const byte) SID_CONTROL_NOISE#0 -- _deref_pbuc1=vbuc2 lda #SID_CONTROL_NOISE sta SID_VOICE3_CONTROL //SEG1214 sid_rnd_init::@return @@ -26591,21 +26591,21 @@ sprites_irq: { //(*BGCOL)++; // Clear decimal flag (because it is used by the score algorithm) cld - //SEG1219 [556] (byte) sprites_irq::ypos#0 ? (byte) irq_sprite_ypos#0 -- vbuaa=vbuz1 + //SEG1219 [556] (byte) sprites_irq::ypos#0 ← (byte) irq_sprite_ypos#0 -- vbuaa=vbuz1 // Place the sprites lda irq_sprite_ypos - //SEG1220 [557] *((const byte*) SPRITES_YPOS#0) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1220 [557] *((const byte*) SPRITES_YPOS#0) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS - //SEG1221 [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1221 [558] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS+2 - //SEG1222 [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1222 [559] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 4) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS+4 - //SEG1223 [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ? (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa + //SEG1223 [560] *((const byte*) SPRITES_YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 6) ← (byte) sprites_irq::ypos#0 -- _deref_pbuc1=vbuaa sta SPRITES_YPOS+6 - //SEG1224 [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG1224 [561] (byte/signed word/word/dword/signed dword~) sprites_irq::$0 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx irq_raster_next inx - //SEG1225 [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ? (byte/signed word/word/dword/signed dword~) sprites_irq::$0 -- vbuz1=vbuxx + //SEG1225 [562] (byte) sprites_irq::raster_sprite_gfx_modify#0 ← (byte/signed word/word/dword/signed dword~) sprites_irq::$0 -- vbuz1=vbuxx // Wait for the y-position before changing sprite pointers stx raster_sprite_gfx_modify //SEG1226 sprites_irq::@8 @@ -26615,30 +26615,30 @@ sprites_irq: { cmp raster_sprite_gfx_modify bcc b8 //SEG1228 sprites_irq::@9 - //SEG1229 [564] (byte) sprites_irq::ptr#0 ? (byte) irq_sprite_ptr#0 -- vbuxx=vbuz1 + //SEG1229 [564] (byte) sprites_irq::ptr#0 ← (byte) irq_sprite_ptr#0 -- vbuxx=vbuz1 ldx irq_sprite_ptr //SEG1230 [565] if((byte) render_screen_showing#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sprites_irq::@1 -- vbuz1_eq_0_then_la1 lda render_screen_showing cmp #0 beq b1 //SEG1231 sprites_irq::@10 - //SEG1232 [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ? (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx + //SEG1232 [566] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0) ← (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_2 - //SEG1233 [567] (byte) sprites_irq::ptr#3 ? ++ (byte) sprites_irq::ptr#0 -- vbuaa=_inc_vbuxx + //SEG1233 [567] (byte) sprites_irq::ptr#3 ← ++ (byte) sprites_irq::ptr#0 -- vbuaa=_inc_vbuxx inx txa - //SEG1234 [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa + //SEG1234 [568] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_2+1 - //SEG1235 [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa + //SEG1235 [569] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#3 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_2+2 - //SEG1236 [570] (byte) sprites_irq::ptr#4 ? ++ (byte) sprites_irq::ptr#3 -- vbuaa=_inc_vbuaa + //SEG1236 [570] (byte) sprites_irq::ptr#4 ← ++ (byte) sprites_irq::ptr#3 -- vbuaa=_inc_vbuaa clc adc #1 - //SEG1237 [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#4 -- _deref_pbuc1=vbuaa + //SEG1237 [571] *((const byte*) PLAYFIELD_SPRITE_PTRS_2#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#4 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_2+3 //SEG1238 sprites_irq::@2 b2: - //SEG1239 [572] (byte) irq_cnt#1 ? ++ (byte) irq_cnt#0 -- vbuz1=_inc_vbuz1 + //SEG1239 [572] (byte) irq_cnt#1 ← ++ (byte) irq_cnt#0 -- vbuz1=_inc_vbuz1 inc irq_cnt //SEG1240 [573] if((byte) irq_cnt#1==(byte/signed byte/word/signed word/dword/signed dword) 9) goto sprites_irq::@3 -- vbuz1_eq_vbuc1_then_la1 lda #9 @@ -26650,15 +26650,15 @@ sprites_irq: { cmp irq_cnt beq b4 //SEG1243 sprites_irq::@7 - //SEG1244 [575] (byte) irq_raster_next#3 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1244 [575] (byte) irq_raster_next#3 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $14 -- vbuz1=vbuz1_plus_vbuc1 lax irq_raster_next axs #-[$14] stx irq_raster_next - //SEG1245 [576] (byte) irq_sprite_ypos#3 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1245 [576] (byte) irq_sprite_ypos#3 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ypos axs #-[$15] stx irq_sprite_ypos - //SEG1246 [577] (byte) irq_sprite_ptr#3 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1246 [577] (byte) irq_sprite_ptr#3 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ptr axs #-[3] stx irq_sprite_ptr @@ -26666,11 +26666,11 @@ sprites_irq: { //SEG1248 [578] phi (byte) irq_raster_next#4 = (byte) irq_raster_next#1 [phi:sprites_irq::@11/sprites_irq::@4/sprites_irq::@7->sprites_irq::@5#0] -- register_copy //SEG1249 sprites_irq::@5 b5: - //SEG1250 [579] *((const byte*) RASTER#0) ? (byte) irq_raster_next#4 -- _deref_pbuc1=vbuz1 + //SEG1250 [579] *((const byte*) RASTER#0) ← (byte) irq_raster_next#4 -- _deref_pbuc1=vbuz1 // Setup next interrupt lda irq_raster_next sta RASTER - //SEG1251 [580] *((const byte*) IRQ_STATUS#0) ? (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 + //SEG1251 [580] *((const byte*) IRQ_STATUS#0) ← (const byte) IRQ_RASTER#0 -- _deref_pbuc1=vbuc2 // Acknowledge the IRQ and setup the next one lda #IRQ_RASTER sta IRQ_STATUS @@ -26683,51 +26683,51 @@ sprites_irq: { rti //SEG1254 sprites_irq::@4 b4: - //SEG1255 [582] (byte) irq_cnt#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 + //SEG1255 [582] (byte) irq_cnt#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuc1 lda #0 sta irq_cnt - //SEG1256 [583] (byte) irq_raster_next#2 ? (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 + //SEG1256 [583] (byte) irq_raster_next#2 ← (const byte) IRQ_RASTER_FIRST#0 -- vbuz1=vbuc1 lda #IRQ_RASTER_FIRST sta irq_raster_next - //SEG1257 [584] (byte) irq_sprite_ypos#2 ? (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1257 [584] (byte) irq_sprite_ypos#2 ← (byte) irq_sprite_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ypos axs #-[$15] stx irq_sprite_ypos - //SEG1258 [585] (byte) irq_sprite_ptr#2 ? (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1258 [585] (byte) irq_sprite_ptr#2 ← (byte) irq_sprite_ptr#0 + (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz1_plus_vbuc1 lax irq_sprite_ptr axs #-[3] stx irq_sprite_ptr jmp b5 //SEG1259 sprites_irq::@3 b3: - //SEG1260 [586] (byte) irq_raster_next#1 ? (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 + //SEG1260 [586] (byte) irq_raster_next#1 ← (byte) irq_raster_next#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz1_plus_vbuc1 lax irq_raster_next axs #-[$15] stx irq_raster_next - //SEG1261 [587] (byte) irq_sprite_ypos#1 ? (const byte) SPRITES_FIRST_YPOS#0 -- vbuz1=vbuc1 + //SEG1261 [587] (byte) irq_sprite_ypos#1 ← (const byte) SPRITES_FIRST_YPOS#0 -- vbuz1=vbuc1 lda #SPRITES_FIRST_YPOS sta irq_sprite_ypos //SEG1262 [588] phi from sprites_irq::@3 to sprites_irq::toSpritePtr2 [phi:sprites_irq::@3->sprites_irq::toSpritePtr2] //SEG1263 sprites_irq::toSpritePtr2 //SEG1264 sprites_irq::@11 - //SEG1265 [589] (byte) irq_sprite_ptr#1 ? (const byte) sprites_irq::toSpritePtr2_return#0 -- vbuz1=vbuc1 + //SEG1265 [589] (byte) irq_sprite_ptr#1 ← (const byte) sprites_irq::toSpritePtr2_return#0 -- vbuz1=vbuc1 lda #toSpritePtr2_return sta irq_sprite_ptr jmp b5 //SEG1266 sprites_irq::@1 b1: - //SEG1267 [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ? (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx + //SEG1267 [590] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0) ← (byte) sprites_irq::ptr#0 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_1 - //SEG1268 [591] (byte) sprites_irq::ptr#1 ? ++ (byte) sprites_irq::ptr#0 -- vbuxx=_inc_vbuxx + //SEG1268 [591] (byte) sprites_irq::ptr#1 ← ++ (byte) sprites_irq::ptr#0 -- vbuxx=_inc_vbuxx inx - //SEG1269 [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx + //SEG1269 [592] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_1+1 - //SEG1270 [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx + //SEG1270 [593] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte) sprites_irq::ptr#1 -- _deref_pbuc1=vbuxx stx PLAYFIELD_SPRITE_PTRS_1+2 - //SEG1271 [594] (byte) sprites_irq::ptr#2 ? ++ (byte) sprites_irq::ptr#1 -- vbuaa=_inc_vbuxx + //SEG1271 [594] (byte) sprites_irq::ptr#2 ← ++ (byte) sprites_irq::ptr#1 -- vbuaa=_inc_vbuxx inx txa - //SEG1272 [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte) sprites_irq::ptr#2 -- _deref_pbuc1=vbuaa + //SEG1272 [595] *((const byte*) PLAYFIELD_SPRITE_PTRS_1#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte) sprites_irq::ptr#2 -- _deref_pbuc1=vbuaa sta PLAYFIELD_SPRITE_PTRS_1+3 jmp b2 } diff --git a/src/test/ref/examples/bresenham/bitmap-bresenham.log b/src/test/ref/examples/bresenham/bitmap-bresenham.log index f362964a8..755a44029 100644 --- a/src/test/ref/examples/bresenham/bitmap-bresenham.log +++ b/src/test/ref/examples/bresenham/bitmap-bresenham.log @@ -1,396 +1,396 @@ Identified constant variable (byte) lines_cnt -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte[$100]) bitmap_plot_xlo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_xhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_ylo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_yhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_bit#0 ? { fill( $100, 0) } + (byte[$100]) bitmap_plot_xlo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_xhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_ylo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_yhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_bit#0 ← { fill( $100, 0) } to:@12 bitmap_init: scope:[bitmap_init] from main - (byte*) bitmap_init::bitmap#2 ? phi( main/(byte*) bitmap_init::bitmap#0 ) - (byte) bitmap_init::bits#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) bitmap_init::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::bitmap#2 ← phi( main/(byte*) bitmap_init::bitmap#0 ) + (byte) bitmap_init::bits#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) bitmap_init::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - (byte*) bitmap_init::bitmap#1 ? phi( bitmap_init/(byte*) bitmap_init::bitmap#2 bitmap_init::@2/(byte*) bitmap_init::bitmap#3 ) - (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 - *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 - (byte~) bitmap_init::$1 ? > (byte*) bitmap_init::bitmap#1 - *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$1 - *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - (byte~) bitmap_init::$2 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_init::bits#1 ? (byte~) bitmap_init::$2 - (bool~) bitmap_init::$3 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_init::$4 ? ! (bool~) bitmap_init::$3 + (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + (byte*) bitmap_init::bitmap#1 ← phi( bitmap_init/(byte*) bitmap_init::bitmap#2 bitmap_init::@2/(byte*) bitmap_init::bitmap#3 ) + (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 + *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 + (byte~) bitmap_init::$1 ← > (byte*) bitmap_init::bitmap#1 + *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$1 + *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + (byte~) bitmap_init::$2 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_init::bits#1 ← (byte~) bitmap_init::$2 + (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_init::$4 ← ! (bool~) bitmap_init::$3 if((bool~) bitmap_init::$4) goto bitmap_init::@2 to:bitmap_init::@3 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@3 - (byte) bitmap_init::bits#4 ? phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) - (byte*) bitmap_init::bitmap#3 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) - (byte) bitmap_init::x#3 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) - (byte) bitmap_init::x#1 ? (byte) bitmap_init::x#3 + rangenext(0,$ff) - (bool~) bitmap_init::$5 ? (byte) bitmap_init::x#1 != rangelast(0,$ff) + (byte) bitmap_init::bits#4 ← phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) + (byte*) bitmap_init::bitmap#3 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) + (byte) bitmap_init::x#3 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) + (byte) bitmap_init::x#1 ← (byte) bitmap_init::x#3 + rangenext(0,$ff) + (bool~) bitmap_init::$5 ← (byte) bitmap_init::x#1 != rangelast(0,$ff) if((bool~) bitmap_init::$5) goto bitmap_init::@1 to:bitmap_init::@4 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@1 - (byte*) bitmap_init::bitmap#4 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 ) - (byte) bitmap_init::x#4 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) - (byte) bitmap_init::bits#2 ? (byte/word/signed word/dword/signed dword) $80 + (byte*) bitmap_init::bitmap#4 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#1 ) + (byte) bitmap_init::x#4 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) + (byte) bitmap_init::bits#2 ← (byte/word/signed word/dword/signed dword) $80 to:bitmap_init::@2 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@2 - (byte*) bitmap_init::yoffs#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bitmap_init::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::yoffs#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_init::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@4 bitmap_init::@6 - (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) - (byte) bitmap_init::y#2 ? phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) - (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 - (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 - *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 - (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 - *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 - (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$11 ? (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$12 ? ! (bool~) bitmap_init::$11 + (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) + (byte) bitmap_init::y#2 ← phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) + (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 + (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 + *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 + (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 + *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 + (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$12 ← ! (bool~) bitmap_init::$11 if((bool~) bitmap_init::$12) goto bitmap_init::@6 to:bitmap_init::@7 bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@5 bitmap_init::@7 - (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) - (byte) bitmap_init::y#3 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) - (byte) bitmap_init::y#1 ? (byte) bitmap_init::y#3 + rangenext(0,$ff) - (bool~) bitmap_init::$15 ? (byte) bitmap_init::y#1 != rangelast(0,$ff) + (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) + (byte) bitmap_init::y#3 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) + (byte) bitmap_init::y#1 ← (byte) bitmap_init::y#3 + rangenext(0,$ff) + (bool~) bitmap_init::$15 ← (byte) bitmap_init::y#1 != rangelast(0,$ff) if((bool~) bitmap_init::$15) goto bitmap_init::@5 to:bitmap_init::@return bitmap_init::@7: scope:[bitmap_init] from bitmap_init::@5 - (byte) bitmap_init::y#4 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) - (byte*) bitmap_init::yoffs#3 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) - (word/signed word/dword/signed dword~) bitmap_init::$13 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*~) bitmap_init::$14 ? (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$13 - (byte*) bitmap_init::yoffs#1 ? (byte*~) bitmap_init::$14 + (byte) bitmap_init::y#4 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) + (byte*) bitmap_init::yoffs#3 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) + (word/signed word/dword/signed dword~) bitmap_init::$13 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*~) bitmap_init::$14 ← (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$13 + (byte*) bitmap_init::yoffs#1 ← (byte*~) bitmap_init::$14 to:bitmap_init::@6 bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@6 return to:@return bitmap_clear: scope:[bitmap_clear] from main::@3 - (byte*~) bitmap_clear::$0 ? ((byte*)) { *((byte[$100]) bitmap_plot_xhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_xlo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } - (byte*) bitmap_clear::bitmap#0 ? (byte*~) bitmap_clear::$0 - (byte) bitmap_clear::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) bitmap_clear::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_xhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_xlo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } + (byte*) bitmap_clear::bitmap#0 ← (byte*~) bitmap_clear::$0 + (byte) bitmap_clear::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) - (byte) bitmap_clear::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) + (byte) bitmap_clear::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - (byte) bitmap_clear::y#3 ? phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - (byte) bitmap_clear::x#1 ? (byte) bitmap_clear::x#2 + rangenext(0,$c7) - (bool~) bitmap_clear::$1 ? (byte) bitmap_clear::x#1 != rangelast(0,$c7) + (byte) bitmap_clear::y#3 ← phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + (byte) bitmap_clear::x#1 ← (byte) bitmap_clear::x#2 + rangenext(0,$c7) + (bool~) bitmap_clear::$1 ← (byte) bitmap_clear::x#1 != rangelast(0,$c7) if((bool~) bitmap_clear::$1) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - (byte*) bitmap_clear::bitmap#4 ? phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - (byte) bitmap_clear::y#2 ? phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::y#1 ? (byte) bitmap_clear::y#2 + rangenext(0,$27) - (bool~) bitmap_clear::$2 ? (byte) bitmap_clear::y#1 != rangelast(0,$27) + (byte*) bitmap_clear::bitmap#4 ← phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + (byte) bitmap_clear::y#2 ← phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::y#1 ← (byte) bitmap_clear::y#2 + rangenext(0,$27) + (bool~) bitmap_clear::$2 ← (byte) bitmap_clear::y#1 != rangelast(0,$27) if((bool~) bitmap_clear::$2) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 return to:@return bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1 - (byte) bitmap_plot::y#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) - (byte) bitmap_plot::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) - (word) bitmap_plot::plotter_x#0 ? { *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4), *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) } - (word) bitmap_plot::plotter_y#0 ? { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) } - (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 - (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$0 - (byte~) bitmap_plot::$1 ? *((byte*) bitmap_plot::plotter#0) | *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) - *((byte*) bitmap_plot::plotter#0) ? (byte~) bitmap_plot::$1 + (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) + (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) + (word) bitmap_plot::plotter_x#0 ← { *((byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4), *((byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) } + (word) bitmap_plot::plotter_y#0 ← { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) } + (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 + (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$0 + (byte~) bitmap_plot::$1 ← *((byte*) bitmap_plot::plotter#0) | *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) + *((byte*) bitmap_plot::plotter#0) ← (byte~) bitmap_plot::$1 to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot return to:@return bitmap_line: scope:[bitmap_line] from lines::@1 - (byte) bitmap_line::y1#13 ? phi( lines::@1/(byte) bitmap_line::y1#0 ) - (byte) bitmap_line::y0#13 ? phi( lines::@1/(byte) bitmap_line::y0#0 ) - (byte) bitmap_line::x1#1 ? phi( lines::@1/(byte) bitmap_line::x1#0 ) - (byte) bitmap_line::x0#1 ? phi( lines::@1/(byte) bitmap_line::x0#0 ) - (byte) bitmap_line::xd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bitmap_line::yd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_line::$0 ? (byte) bitmap_line::x0#1 < (byte) bitmap_line::x1#1 + (byte) bitmap_line::y1#13 ← phi( lines::@1/(byte) bitmap_line::y1#0 ) + (byte) bitmap_line::y0#13 ← phi( lines::@1/(byte) bitmap_line::y0#0 ) + (byte) bitmap_line::x1#1 ← phi( lines::@1/(byte) bitmap_line::x1#0 ) + (byte) bitmap_line::x0#1 ← phi( lines::@1/(byte) bitmap_line::x0#0 ) + (byte) bitmap_line::xd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_line::yd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_line::$0 ← (byte) bitmap_line::x0#1 < (byte) bitmap_line::x1#1 if((bool~) bitmap_line::$0) goto bitmap_line::@1 to:bitmap_line::@3 bitmap_line::@1: scope:[bitmap_line] from bitmap_line - (byte) bitmap_line::y1#1 ? phi( bitmap_line/(byte) bitmap_line::y1#13 ) - (byte) bitmap_line::y0#1 ? phi( bitmap_line/(byte) bitmap_line::y0#13 ) - (byte) bitmap_line::x0#2 ? phi( bitmap_line/(byte) bitmap_line::x0#1 ) - (byte) bitmap_line::x1#2 ? phi( bitmap_line/(byte) bitmap_line::x1#1 ) - (byte~) bitmap_line::$11 ? (byte) bitmap_line::x1#2 - (byte) bitmap_line::x0#2 - (byte) bitmap_line::xd#1 ? (byte~) bitmap_line::$11 - (bool~) bitmap_line::$12 ? (byte) bitmap_line::y0#1 < (byte) bitmap_line::y1#1 + (byte) bitmap_line::y1#1 ← phi( bitmap_line/(byte) bitmap_line::y1#13 ) + (byte) bitmap_line::y0#1 ← phi( bitmap_line/(byte) bitmap_line::y0#13 ) + (byte) bitmap_line::x0#2 ← phi( bitmap_line/(byte) bitmap_line::x0#1 ) + (byte) bitmap_line::x1#2 ← phi( bitmap_line/(byte) bitmap_line::x1#1 ) + (byte~) bitmap_line::$11 ← (byte) bitmap_line::x1#2 - (byte) bitmap_line::x0#2 + (byte) bitmap_line::xd#1 ← (byte~) bitmap_line::$11 + (bool~) bitmap_line::$12 ← (byte) bitmap_line::y0#1 < (byte) bitmap_line::y1#1 if((bool~) bitmap_line::$12) goto bitmap_line::@20 to:bitmap_line::@7 bitmap_line::@3: scope:[bitmap_line] from bitmap_line - (byte) bitmap_line::y1#2 ? phi( bitmap_line/(byte) bitmap_line::y1#13 ) - (byte) bitmap_line::y0#2 ? phi( bitmap_line/(byte) bitmap_line::y0#13 ) - (byte) bitmap_line::x1#3 ? phi( bitmap_line/(byte) bitmap_line::x1#1 ) - (byte) bitmap_line::x0#3 ? phi( bitmap_line/(byte) bitmap_line::x0#1 ) - (byte~) bitmap_line::$1 ? (byte) bitmap_line::x0#3 - (byte) bitmap_line::x1#3 - (byte) bitmap_line::xd#2 ? (byte~) bitmap_line::$1 - (bool~) bitmap_line::$2 ? (byte) bitmap_line::y0#2 < (byte) bitmap_line::y1#2 + (byte) bitmap_line::y1#2 ← phi( bitmap_line/(byte) bitmap_line::y1#13 ) + (byte) bitmap_line::y0#2 ← phi( bitmap_line/(byte) bitmap_line::y0#13 ) + (byte) bitmap_line::x1#3 ← phi( bitmap_line/(byte) bitmap_line::x1#1 ) + (byte) bitmap_line::x0#3 ← phi( bitmap_line/(byte) bitmap_line::x0#1 ) + (byte~) bitmap_line::$1 ← (byte) bitmap_line::x0#3 - (byte) bitmap_line::x1#3 + (byte) bitmap_line::xd#2 ← (byte~) bitmap_line::$1 + (bool~) bitmap_line::$2 ← (byte) bitmap_line::y0#2 < (byte) bitmap_line::y1#2 if((bool~) bitmap_line::$2) goto bitmap_line::@10 to:bitmap_line::@4 bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@3 - (byte) bitmap_line::x0#11 ? phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) - (byte) bitmap_line::x1#11 ? phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) - (byte) bitmap_line::xd#3 ? phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) - (byte) bitmap_line::y0#3 ? phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) - (byte) bitmap_line::y1#3 ? phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) - (byte~) bitmap_line::$7 ? (byte) bitmap_line::y1#3 - (byte) bitmap_line::y0#3 - (byte) bitmap_line::yd#1 ? (byte~) bitmap_line::$7 - (bool~) bitmap_line::$8 ? (byte) bitmap_line::yd#1 < (byte) bitmap_line::xd#3 + (byte) bitmap_line::x0#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) + (byte) bitmap_line::x1#11 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) + (byte) bitmap_line::xd#3 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) + (byte) bitmap_line::y0#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) + (byte) bitmap_line::y1#3 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) + (byte~) bitmap_line::$7 ← (byte) bitmap_line::y1#3 - (byte) bitmap_line::y0#3 + (byte) bitmap_line::yd#1 ← (byte~) bitmap_line::$7 + (bool~) bitmap_line::$8 ← (byte) bitmap_line::yd#1 < (byte) bitmap_line::xd#3 if((bool~) bitmap_line::$8) goto bitmap_line::@15 to:bitmap_line::@17 bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3 - (byte) bitmap_line::x0#10 ? phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) - (byte) bitmap_line::x1#10 ? phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) - (byte) bitmap_line::xd#4 ? phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) - (byte) bitmap_line::y1#4 ? phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) - (byte) bitmap_line::y0#4 ? phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) - (byte~) bitmap_line::$3 ? (byte) bitmap_line::y0#4 - (byte) bitmap_line::y1#4 - (byte) bitmap_line::yd#2 ? (byte~) bitmap_line::$3 - (bool~) bitmap_line::$4 ? (byte) bitmap_line::yd#2 < (byte) bitmap_line::xd#4 + (byte) bitmap_line::x0#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x0#3 ) + (byte) bitmap_line::x1#10 ← phi( bitmap_line::@3/(byte) bitmap_line::x1#3 ) + (byte) bitmap_line::xd#4 ← phi( bitmap_line::@3/(byte) bitmap_line::xd#2 ) + (byte) bitmap_line::y1#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y1#2 ) + (byte) bitmap_line::y0#4 ← phi( bitmap_line::@3/(byte) bitmap_line::y0#2 ) + (byte~) bitmap_line::$3 ← (byte) bitmap_line::y0#4 - (byte) bitmap_line::y1#4 + (byte) bitmap_line::yd#2 ← (byte~) bitmap_line::$3 + (bool~) bitmap_line::$4 ← (byte) bitmap_line::yd#2 < (byte) bitmap_line::xd#4 if((bool~) bitmap_line::$4) goto bitmap_line::@11 to:bitmap_line::@5 bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@4 - (byte) bitmap_line::yd#5 ? phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) - (byte) bitmap_line::xd#5 ? phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) - (byte) bitmap_line::x0#4 ? phi( bitmap_line::@4/(byte) bitmap_line::x0#10 ) - (byte) bitmap_line::y1#5 ? phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) - (byte) bitmap_line::x1#4 ? phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) - (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#4 - (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#5 - (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#4 - (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#5 - (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#5 + (byte) bitmap_line::yd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) + (byte) bitmap_line::xd#5 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) + (byte) bitmap_line::x0#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x0#10 ) + (byte) bitmap_line::y1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) + (byte) bitmap_line::x1#4 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) + (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#4 + (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#5 + (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#4 + (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#5 + (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#5 call bitmap_line_xdyi to:bitmap_line::@29 bitmap_line::@29: scope:[bitmap_line] from bitmap_line::@11 to:bitmap_line::@return bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@4 - (byte) bitmap_line::xd#6 ? phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) - (byte) bitmap_line::yd#6 ? phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) - (byte) bitmap_line::y0#5 ? phi( bitmap_line::@4/(byte) bitmap_line::y0#4 ) - (byte) bitmap_line::x1#5 ? phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) - (byte) bitmap_line::y1#6 ? phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) - (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#6 - (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#5 - (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#5 - (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#6 - (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#6 + (byte) bitmap_line::xd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::xd#4 ) + (byte) bitmap_line::yd#6 ← phi( bitmap_line::@4/(byte) bitmap_line::yd#2 ) + (byte) bitmap_line::y0#5 ← phi( bitmap_line::@4/(byte) bitmap_line::y0#4 ) + (byte) bitmap_line::x1#5 ← phi( bitmap_line::@4/(byte) bitmap_line::x1#10 ) + (byte) bitmap_line::y1#6 ← phi( bitmap_line::@4/(byte) bitmap_line::y1#4 ) + (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#6 + (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#5 + (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#5 + (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#6 + (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#6 call bitmap_line_ydxi to:bitmap_line::@30 bitmap_line::@30: scope:[bitmap_line] from bitmap_line::@5 to:bitmap_line::@return bitmap_line::@15: scope:[bitmap_line] from bitmap_line::@10 - (byte) bitmap_line::yd#7 ? phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) - (byte) bitmap_line::xd#7 ? phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) - (byte) bitmap_line::x0#5 ? phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) - (byte) bitmap_line::y1#7 ? phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) - (byte) bitmap_line::x1#6 ? phi( bitmap_line::@10/(byte) bitmap_line::x1#11 ) - (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#6 - (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#7 - (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#5 - (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#7 - (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#7 + (byte) bitmap_line::yd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) + (byte) bitmap_line::xd#7 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) + (byte) bitmap_line::x0#5 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) + (byte) bitmap_line::y1#7 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) + (byte) bitmap_line::x1#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x1#11 ) + (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#6 + (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#7 + (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#5 + (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#7 + (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#7 call bitmap_line_xdyd to:bitmap_line::@31 bitmap_line::@31: scope:[bitmap_line] from bitmap_line::@15 to:bitmap_line::@return bitmap_line::@17: scope:[bitmap_line] from bitmap_line::@10 - (byte) bitmap_line::xd#8 ? phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) - (byte) bitmap_line::yd#8 ? phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) - (byte) bitmap_line::y1#8 ? phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) - (byte) bitmap_line::x0#6 ? phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) - (byte) bitmap_line::y0#6 ? phi( bitmap_line::@10/(byte) bitmap_line::y0#3 ) - (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#6 - (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#6 - (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#8 - (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#8 - (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#8 + (byte) bitmap_line::xd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::xd#3 ) + (byte) bitmap_line::yd#8 ← phi( bitmap_line::@10/(byte) bitmap_line::yd#1 ) + (byte) bitmap_line::y1#8 ← phi( bitmap_line::@10/(byte) bitmap_line::y1#3 ) + (byte) bitmap_line::x0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::x0#11 ) + (byte) bitmap_line::y0#6 ← phi( bitmap_line::@10/(byte) bitmap_line::y0#3 ) + (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#6 + (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#6 + (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#8 + (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#8 + (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#8 call bitmap_line_ydxd to:bitmap_line::@32 bitmap_line::@32: scope:[bitmap_line] from bitmap_line::@17 to:bitmap_line::@return bitmap_line::@20: scope:[bitmap_line] from bitmap_line::@1 - (byte) bitmap_line::x1#13 ? phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) - (byte) bitmap_line::x0#13 ? phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) - (byte) bitmap_line::xd#9 ? phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) - (byte) bitmap_line::y0#7 ? phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) - (byte) bitmap_line::y1#9 ? phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) - (byte~) bitmap_line::$17 ? (byte) bitmap_line::y1#9 - (byte) bitmap_line::y0#7 - (byte) bitmap_line::yd#3 ? (byte~) bitmap_line::$17 - (bool~) bitmap_line::$18 ? (byte) bitmap_line::yd#3 < (byte) bitmap_line::xd#9 + (byte) bitmap_line::x1#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) + (byte) bitmap_line::x0#13 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) + (byte) bitmap_line::xd#9 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) + (byte) bitmap_line::y0#7 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) + (byte) bitmap_line::y1#9 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) + (byte~) bitmap_line::$17 ← (byte) bitmap_line::y1#9 - (byte) bitmap_line::y0#7 + (byte) bitmap_line::yd#3 ← (byte~) bitmap_line::$17 + (bool~) bitmap_line::$18 ← (byte) bitmap_line::yd#3 < (byte) bitmap_line::xd#9 if((bool~) bitmap_line::$18) goto bitmap_line::@25 to:bitmap_line::@27 bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@1 - (byte) bitmap_line::x1#12 ? phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) - (byte) bitmap_line::x0#12 ? phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) - (byte) bitmap_line::xd#10 ? phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) - (byte) bitmap_line::y1#10 ? phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) - (byte) bitmap_line::y0#8 ? phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) - (byte~) bitmap_line::$13 ? (byte) bitmap_line::y0#8 - (byte) bitmap_line::y1#10 - (byte) bitmap_line::yd#4 ? (byte~) bitmap_line::$13 - (bool~) bitmap_line::$14 ? (byte) bitmap_line::yd#4 < (byte) bitmap_line::xd#10 + (byte) bitmap_line::x1#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x1#2 ) + (byte) bitmap_line::x0#12 ← phi( bitmap_line::@1/(byte) bitmap_line::x0#2 ) + (byte) bitmap_line::xd#10 ← phi( bitmap_line::@1/(byte) bitmap_line::xd#1 ) + (byte) bitmap_line::y1#10 ← phi( bitmap_line::@1/(byte) bitmap_line::y1#1 ) + (byte) bitmap_line::y0#8 ← phi( bitmap_line::@1/(byte) bitmap_line::y0#1 ) + (byte~) bitmap_line::$13 ← (byte) bitmap_line::y0#8 - (byte) bitmap_line::y1#10 + (byte) bitmap_line::yd#4 ← (byte~) bitmap_line::$13 + (bool~) bitmap_line::$14 ← (byte) bitmap_line::yd#4 < (byte) bitmap_line::xd#10 if((bool~) bitmap_line::$14) goto bitmap_line::@21 to:bitmap_line::@8 bitmap_line::@21: scope:[bitmap_line] from bitmap_line::@7 - (byte) bitmap_line::yd#9 ? phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) - (byte) bitmap_line::xd#11 ? phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) - (byte) bitmap_line::x1#7 ? phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) - (byte) bitmap_line::y0#9 ? phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) - (byte) bitmap_line::x0#7 ? phi( bitmap_line::@7/(byte) bitmap_line::x0#12 ) - (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#7 - (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#9 - (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#7 - (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#11 - (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#9 + (byte) bitmap_line::yd#9 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) + (byte) bitmap_line::xd#11 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) + (byte) bitmap_line::x1#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) + (byte) bitmap_line::y0#9 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) + (byte) bitmap_line::x0#7 ← phi( bitmap_line::@7/(byte) bitmap_line::x0#12 ) + (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#7 + (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#9 + (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#7 + (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#11 + (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#9 call bitmap_line_xdyd to:bitmap_line::@33 bitmap_line::@33: scope:[bitmap_line] from bitmap_line::@21 to:bitmap_line::@return bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@7 - (byte) bitmap_line::xd#12 ? phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) - (byte) bitmap_line::yd#10 ? phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) - (byte) bitmap_line::y0#10 ? phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) - (byte) bitmap_line::x1#8 ? phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) - (byte) bitmap_line::y1#11 ? phi( bitmap_line::@7/(byte) bitmap_line::y1#10 ) - (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#11 - (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#8 - (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#10 - (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#12 + (byte) bitmap_line::xd#12 ← phi( bitmap_line::@7/(byte) bitmap_line::xd#10 ) + (byte) bitmap_line::yd#10 ← phi( bitmap_line::@7/(byte) bitmap_line::yd#4 ) + (byte) bitmap_line::y0#10 ← phi( bitmap_line::@7/(byte) bitmap_line::y0#8 ) + (byte) bitmap_line::x1#8 ← phi( bitmap_line::@7/(byte) bitmap_line::x1#12 ) + (byte) bitmap_line::y1#11 ← phi( bitmap_line::@7/(byte) bitmap_line::y1#10 ) + (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#11 + (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#8 + (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#10 + (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#12 call bitmap_line_ydxd to:bitmap_line::@34 bitmap_line::@34: scope:[bitmap_line] from bitmap_line::@8 to:bitmap_line::@return bitmap_line::@25: scope:[bitmap_line] from bitmap_line::@20 - (byte) bitmap_line::yd#11 ? phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) - (byte) bitmap_line::xd#13 ? phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) - (byte) bitmap_line::x1#9 ? phi( bitmap_line::@20/(byte) bitmap_line::x1#13 ) - (byte) bitmap_line::y0#11 ? phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) - (byte) bitmap_line::x0#8 ? phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) - (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#8 - (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#11 - (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#9 - (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#13 - (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + (byte) bitmap_line::yd#11 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) + (byte) bitmap_line::xd#13 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) + (byte) bitmap_line::x1#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x1#13 ) + (byte) bitmap_line::y0#11 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) + (byte) bitmap_line::x0#8 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) + (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#8 + (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#11 + (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#9 + (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#13 + (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 call bitmap_line_xdyi to:bitmap_line::@35 bitmap_line::@35: scope:[bitmap_line] from bitmap_line::@25 to:bitmap_line::@return bitmap_line::@27: scope:[bitmap_line] from bitmap_line::@20 - (byte) bitmap_line::xd#14 ? phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) - (byte) bitmap_line::yd#12 ? phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) - (byte) bitmap_line::y1#12 ? phi( bitmap_line::@20/(byte) bitmap_line::y1#9 ) - (byte) bitmap_line::x0#9 ? phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) - (byte) bitmap_line::y0#12 ? phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) - (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#12 - (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#9 - (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#12 - (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#12 - (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#14 + (byte) bitmap_line::xd#14 ← phi( bitmap_line::@20/(byte) bitmap_line::xd#9 ) + (byte) bitmap_line::yd#12 ← phi( bitmap_line::@20/(byte) bitmap_line::yd#3 ) + (byte) bitmap_line::y1#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y1#9 ) + (byte) bitmap_line::x0#9 ← phi( bitmap_line::@20/(byte) bitmap_line::x0#13 ) + (byte) bitmap_line::y0#12 ← phi( bitmap_line::@20/(byte) bitmap_line::y0#7 ) + (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#12 + (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#9 + (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#12 + (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#12 + (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#14 call bitmap_line_ydxi to:bitmap_line::@36 bitmap_line::@36: scope:[bitmap_line] from bitmap_line::@27 @@ -399,266 +399,266 @@ bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@29 bitmap_line::@3 return to:@return bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@11 bitmap_line::@25 - (byte) bitmap_line_xdyi::x1#6 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x1#1 ) - (byte) bitmap_line_xdyi::xd#5 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::xd#1 ) - (byte) bitmap_line_xdyi::y#5 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::y#0 bitmap_line::@25/(byte) bitmap_line_xdyi::y#1 ) - (byte) bitmap_line_xdyi::x#6 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x#1 ) - (byte) bitmap_line_xdyi::yd#2 ? phi( bitmap_line::@11/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::yd#1 ) - (byte~) bitmap_line_xdyi::$0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_xdyi::e#0 ? (byte~) bitmap_line_xdyi::$0 + (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x1#1 ) + (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::xd#1 ) + (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::y#0 bitmap_line::@25/(byte) bitmap_line_xdyi::y#1 ) + (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::x#0 bitmap_line::@25/(byte) bitmap_line_xdyi::x#1 ) + (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@11/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@25/(byte) bitmap_line_xdyi::yd#1 ) + (byte~) bitmap_line_xdyi::$0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_xdyi::e#0 ← (byte~) bitmap_line_xdyi::$0 to:bitmap_line_xdyi::@1 bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2 - (byte) bitmap_line_xdyi::x1#5 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x1#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x1#2 ) - (byte) bitmap_line_xdyi::xd#4 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::xd#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::xd#6 ) - (byte) bitmap_line_xdyi::yd#4 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::yd#2 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::yd#5 ) - (byte) bitmap_line_xdyi::e#5 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) - (byte) bitmap_line_xdyi::y#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) - (byte) bitmap_line_xdyi::x#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#5 ) - (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 + (byte) bitmap_line_xdyi::x1#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x1#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x1#2 ) + (byte) bitmap_line_xdyi::xd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::xd#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::xd#6 ) + (byte) bitmap_line_xdyi::yd#4 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::yd#2 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::yd#5 ) + (byte) bitmap_line_xdyi::e#5 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) + (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) + (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#5 ) + (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 call bitmap_plot to:bitmap_line_xdyi::@5 bitmap_line_xdyi::@5: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1 - (byte) bitmap_line_xdyi::y#7 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::y#3 ) - (byte) bitmap_line_xdyi::x1#4 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x1#5 ) - (byte) bitmap_line_xdyi::xd#2 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::xd#4 ) - (byte) bitmap_line_xdyi::yd#3 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::yd#4 ) - (byte) bitmap_line_xdyi::e#3 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::e#5 ) - (byte) bitmap_line_xdyi::x#4 ? phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x#3 ) - (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#4 - (byte~) bitmap_line_xdyi::$2 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#3 - (byte) bitmap_line_xdyi::e#1 ? (byte~) bitmap_line_xdyi::$2 - (bool~) bitmap_line_xdyi::$3 ? (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 - (bool~) bitmap_line_xdyi::$4 ? ! (bool~) bitmap_line_xdyi::$3 + (byte) bitmap_line_xdyi::y#7 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::y#3 ) + (byte) bitmap_line_xdyi::x1#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x1#5 ) + (byte) bitmap_line_xdyi::xd#2 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::xd#4 ) + (byte) bitmap_line_xdyi::yd#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::yd#4 ) + (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::e#5 ) + (byte) bitmap_line_xdyi::x#4 ← phi( bitmap_line_xdyi::@1/(byte) bitmap_line_xdyi::x#3 ) + (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#4 + (byte~) bitmap_line_xdyi::$2 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#3 + (byte) bitmap_line_xdyi::e#1 ← (byte~) bitmap_line_xdyi::$2 + (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 + (bool~) bitmap_line_xdyi::$4 ← ! (bool~) bitmap_line_xdyi::$3 if((bool~) bitmap_line_xdyi::$4) goto bitmap_line_xdyi::@2 to:bitmap_line_xdyi::@3 bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@5 - (byte) bitmap_line_xdyi::xd#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) - (byte) bitmap_line_xdyi::yd#5 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::yd#6 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) - (byte) bitmap_line_xdyi::e#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) - (byte) bitmap_line_xdyi::y#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) - (byte) bitmap_line_xdyi::x#5 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x#7 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) - (byte) bitmap_line_xdyi::x1#2 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x1#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_xdyi::$7 ? (byte) bitmap_line_xdyi::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 + (byte) bitmap_line_xdyi::xd#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::xd#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) + (byte) bitmap_line_xdyi::yd#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::yd#6 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) + (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) + (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) + (byte) bitmap_line_xdyi::x#5 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x#7 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) + (byte) bitmap_line_xdyi::x1#2 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::x1#3 bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_xdyi::$7 ← (byte) bitmap_line_xdyi::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 if((bool~) bitmap_line_xdyi::$7) goto bitmap_line_xdyi::@1 to:bitmap_line_xdyi::@return bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@5 - (byte) bitmap_line_xdyi::yd#6 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) - (byte) bitmap_line_xdyi::x#7 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) - (byte) bitmap_line_xdyi::x1#3 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) - (byte) bitmap_line_xdyi::xd#3 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) - (byte) bitmap_line_xdyi::e#4 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) - (byte) bitmap_line_xdyi::y#4 ? phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) - (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#4 - (byte~) bitmap_line_xdyi::$5 ? (byte) bitmap_line_xdyi::e#4 - (byte) bitmap_line_xdyi::xd#3 - (byte) bitmap_line_xdyi::e#2 ? (byte~) bitmap_line_xdyi::$5 + (byte) bitmap_line_xdyi::yd#6 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::yd#3 ) + (byte) bitmap_line_xdyi::x#7 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x#2 ) + (byte) bitmap_line_xdyi::x1#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::x1#4 ) + (byte) bitmap_line_xdyi::xd#3 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::xd#2 ) + (byte) bitmap_line_xdyi::e#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::e#1 ) + (byte) bitmap_line_xdyi::y#4 ← phi( bitmap_line_xdyi::@5/(byte) bitmap_line_xdyi::y#7 ) + (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#4 + (byte~) bitmap_line_xdyi::$5 ← (byte) bitmap_line_xdyi::e#4 - (byte) bitmap_line_xdyi::xd#3 + (byte) bitmap_line_xdyi::e#2 ← (byte~) bitmap_line_xdyi::$5 to:bitmap_line_xdyi::@2 bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2 return to:@return bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@15 bitmap_line::@21 - (byte) bitmap_line_xdyd::x1#6 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x1#1 ) - (byte) bitmap_line_xdyd::xd#5 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::xd#1 ) - (byte) bitmap_line_xdyd::y#5 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::y#0 bitmap_line::@21/(byte) bitmap_line_xdyd::y#1 ) - (byte) bitmap_line_xdyd::x#6 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x#1 ) - (byte) bitmap_line_xdyd::yd#2 ? phi( bitmap_line::@15/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::yd#1 ) - (byte~) bitmap_line_xdyd::$0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_xdyd::e#0 ? (byte~) bitmap_line_xdyd::$0 + (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x1#1 ) + (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::xd#1 ) + (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::y#0 bitmap_line::@21/(byte) bitmap_line_xdyd::y#1 ) + (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::x#0 bitmap_line::@21/(byte) bitmap_line_xdyd::x#1 ) + (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@15/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@21/(byte) bitmap_line_xdyd::yd#1 ) + (byte~) bitmap_line_xdyd::$0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_xdyd::e#0 ← (byte~) bitmap_line_xdyd::$0 to:bitmap_line_xdyd::@1 bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2 - (byte) bitmap_line_xdyd::x1#5 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x1#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x1#2 ) - (byte) bitmap_line_xdyd::xd#4 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::xd#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::xd#6 ) - (byte) bitmap_line_xdyd::yd#4 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::yd#2 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::yd#5 ) - (byte) bitmap_line_xdyd::e#5 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) - (byte) bitmap_line_xdyd::y#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) - (byte) bitmap_line_xdyd::x#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#5 ) - (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 + (byte) bitmap_line_xdyd::x1#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x1#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x1#2 ) + (byte) bitmap_line_xdyd::xd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::xd#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::xd#6 ) + (byte) bitmap_line_xdyd::yd#4 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::yd#2 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::yd#5 ) + (byte) bitmap_line_xdyd::e#5 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) + (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) + (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#5 ) + (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 call bitmap_plot to:bitmap_line_xdyd::@5 bitmap_line_xdyd::@5: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1 - (byte) bitmap_line_xdyd::y#7 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::y#3 ) - (byte) bitmap_line_xdyd::x1#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x1#5 ) - (byte) bitmap_line_xdyd::xd#2 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::xd#4 ) - (byte) bitmap_line_xdyd::yd#3 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::yd#4 ) - (byte) bitmap_line_xdyd::e#3 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::e#5 ) - (byte) bitmap_line_xdyd::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x#3 ) - (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#4 - (byte~) bitmap_line_xdyd::$2 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#3 - (byte) bitmap_line_xdyd::e#1 ? (byte~) bitmap_line_xdyd::$2 - (bool~) bitmap_line_xdyd::$3 ? (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 - (bool~) bitmap_line_xdyd::$4 ? ! (bool~) bitmap_line_xdyd::$3 + (byte) bitmap_line_xdyd::y#7 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::y#3 ) + (byte) bitmap_line_xdyd::x1#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x1#5 ) + (byte) bitmap_line_xdyd::xd#2 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::xd#4 ) + (byte) bitmap_line_xdyd::yd#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::yd#4 ) + (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::e#5 ) + (byte) bitmap_line_xdyd::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_line_xdyd::x#3 ) + (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#4 + (byte~) bitmap_line_xdyd::$2 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#3 + (byte) bitmap_line_xdyd::e#1 ← (byte~) bitmap_line_xdyd::$2 + (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 + (bool~) bitmap_line_xdyd::$4 ← ! (bool~) bitmap_line_xdyd::$3 if((bool~) bitmap_line_xdyd::$4) goto bitmap_line_xdyd::@2 to:bitmap_line_xdyd::@3 bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@5 - (byte) bitmap_line_xdyd::xd#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) - (byte) bitmap_line_xdyd::yd#5 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::yd#6 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) - (byte) bitmap_line_xdyd::e#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) - (byte) bitmap_line_xdyd::y#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) - (byte) bitmap_line_xdyd::x#5 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x#7 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) - (byte) bitmap_line_xdyd::x1#2 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x1#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_xdyd::$7 ? (byte) bitmap_line_xdyd::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 + (byte) bitmap_line_xdyd::xd#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::xd#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) + (byte) bitmap_line_xdyd::yd#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::yd#6 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) + (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) + (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) + (byte) bitmap_line_xdyd::x#5 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x#7 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) + (byte) bitmap_line_xdyd::x1#2 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::x1#3 bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_xdyd::$7 ← (byte) bitmap_line_xdyd::x#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 if((bool~) bitmap_line_xdyd::$7) goto bitmap_line_xdyd::@1 to:bitmap_line_xdyd::@return bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@5 - (byte) bitmap_line_xdyd::yd#6 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) - (byte) bitmap_line_xdyd::x#7 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) - (byte) bitmap_line_xdyd::x1#3 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) - (byte) bitmap_line_xdyd::xd#3 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) - (byte) bitmap_line_xdyd::e#4 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) - (byte) bitmap_line_xdyd::y#4 ? phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) - (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#4 - (byte~) bitmap_line_xdyd::$5 ? (byte) bitmap_line_xdyd::e#4 - (byte) bitmap_line_xdyd::xd#3 - (byte) bitmap_line_xdyd::e#2 ? (byte~) bitmap_line_xdyd::$5 + (byte) bitmap_line_xdyd::yd#6 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::yd#3 ) + (byte) bitmap_line_xdyd::x#7 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x#2 ) + (byte) bitmap_line_xdyd::x1#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::x1#4 ) + (byte) bitmap_line_xdyd::xd#3 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::xd#2 ) + (byte) bitmap_line_xdyd::e#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::e#1 ) + (byte) bitmap_line_xdyd::y#4 ← phi( bitmap_line_xdyd::@5/(byte) bitmap_line_xdyd::y#7 ) + (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#4 + (byte~) bitmap_line_xdyd::$5 ← (byte) bitmap_line_xdyd::e#4 - (byte) bitmap_line_xdyd::xd#3 + (byte) bitmap_line_xdyd::e#2 ← (byte~) bitmap_line_xdyd::$5 to:bitmap_line_xdyd::@2 bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2 return to:@return bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@27 bitmap_line::@5 - (byte) bitmap_line_ydxi::y1#6 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y1#0 ) - (byte) bitmap_line_ydxi::yd#5 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::yd#0 ) - (byte) bitmap_line_ydxi::y#6 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y#0 ) - (byte) bitmap_line_ydxi::x#5 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 bitmap_line::@5/(byte) bitmap_line_ydxi::x#0 ) - (byte) bitmap_line_ydxi::xd#2 ? phi( bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::xd#0 ) - (byte~) bitmap_line_ydxi::$0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_ydxi::e#0 ? (byte~) bitmap_line_ydxi::$0 + (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y1#0 ) + (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::yd#0 ) + (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::y#1 bitmap_line::@5/(byte) bitmap_line_ydxi::y#0 ) + (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::x#1 bitmap_line::@5/(byte) bitmap_line_ydxi::x#0 ) + (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@27/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@5/(byte) bitmap_line_ydxi::xd#0 ) + (byte~) bitmap_line_ydxi::$0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_ydxi::e#0 ← (byte~) bitmap_line_ydxi::$0 to:bitmap_line_ydxi::@1 bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2 - (byte) bitmap_line_ydxi::y1#5 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y1#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y1#2 ) - (byte) bitmap_line_ydxi::yd#4 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::yd#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::yd#6 ) - (byte) bitmap_line_ydxi::xd#4 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::xd#2 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::xd#5 ) - (byte) bitmap_line_ydxi::e#5 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) - (byte) bitmap_line_ydxi::y#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#5 ) - (byte) bitmap_line_ydxi::x#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) - (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 + (byte) bitmap_line_ydxi::y1#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y1#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y1#2 ) + (byte) bitmap_line_ydxi::yd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::yd#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::yd#6 ) + (byte) bitmap_line_ydxi::xd#4 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::xd#2 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::xd#5 ) + (byte) bitmap_line_ydxi::e#5 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) + (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#5 ) + (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) + (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 call bitmap_plot to:bitmap_line_ydxi::@5 bitmap_line_ydxi::@5: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1 - (byte) bitmap_line_ydxi::x#7 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::x#3 ) - (byte) bitmap_line_ydxi::y1#4 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y1#5 ) - (byte) bitmap_line_ydxi::yd#2 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::yd#4 ) - (byte) bitmap_line_ydxi::xd#3 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::xd#4 ) - (byte) bitmap_line_ydxi::e#3 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::e#5 ) - (byte) bitmap_line_ydxi::y#4 ? phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y#3 ) - (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#4 - (byte~) bitmap_line_ydxi::$2 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#3 - (byte) bitmap_line_ydxi::e#1 ? (byte~) bitmap_line_ydxi::$2 - (bool~) bitmap_line_ydxi::$3 ? (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 - (bool~) bitmap_line_ydxi::$4 ? ! (bool~) bitmap_line_ydxi::$3 + (byte) bitmap_line_ydxi::x#7 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::x#3 ) + (byte) bitmap_line_ydxi::y1#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y1#5 ) + (byte) bitmap_line_ydxi::yd#2 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::yd#4 ) + (byte) bitmap_line_ydxi::xd#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::xd#4 ) + (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::e#5 ) + (byte) bitmap_line_ydxi::y#4 ← phi( bitmap_line_ydxi::@1/(byte) bitmap_line_ydxi::y#3 ) + (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#4 + (byte~) bitmap_line_ydxi::$2 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#3 + (byte) bitmap_line_ydxi::e#1 ← (byte~) bitmap_line_ydxi::$2 + (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 + (bool~) bitmap_line_ydxi::$4 ← ! (bool~) bitmap_line_ydxi::$3 if((bool~) bitmap_line_ydxi::$4) goto bitmap_line_ydxi::@2 to:bitmap_line_ydxi::@3 bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@5 - (byte) bitmap_line_ydxi::yd#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) - (byte) bitmap_line_ydxi::xd#5 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::xd#6 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) - (byte) bitmap_line_ydxi::e#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) - (byte) bitmap_line_ydxi::x#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) - (byte) bitmap_line_ydxi::y#5 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y#7 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) - (byte) bitmap_line_ydxi::y1#2 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y1#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_ydxi::$7 ? (byte) bitmap_line_ydxi::y#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 + (byte) bitmap_line_ydxi::yd#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::yd#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) + (byte) bitmap_line_ydxi::xd#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::xd#6 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) + (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) + (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) + (byte) bitmap_line_ydxi::y#5 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y#7 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) + (byte) bitmap_line_ydxi::y1#2 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::y1#3 bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_ydxi::$7 ← (byte) bitmap_line_ydxi::y#5 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 if((bool~) bitmap_line_ydxi::$7) goto bitmap_line_ydxi::@1 to:bitmap_line_ydxi::@return bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@5 - (byte) bitmap_line_ydxi::xd#6 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) - (byte) bitmap_line_ydxi::y#7 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) - (byte) bitmap_line_ydxi::y1#3 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) - (byte) bitmap_line_ydxi::yd#3 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) - (byte) bitmap_line_ydxi::e#4 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) - (byte) bitmap_line_ydxi::x#4 ? phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) - (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#4 - (byte~) bitmap_line_ydxi::$5 ? (byte) bitmap_line_ydxi::e#4 - (byte) bitmap_line_ydxi::yd#3 - (byte) bitmap_line_ydxi::e#2 ? (byte~) bitmap_line_ydxi::$5 + (byte) bitmap_line_ydxi::xd#6 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::xd#3 ) + (byte) bitmap_line_ydxi::y#7 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y#2 ) + (byte) bitmap_line_ydxi::y1#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::y1#4 ) + (byte) bitmap_line_ydxi::yd#3 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::yd#2 ) + (byte) bitmap_line_ydxi::e#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::e#1 ) + (byte) bitmap_line_ydxi::x#4 ← phi( bitmap_line_ydxi::@5/(byte) bitmap_line_ydxi::x#7 ) + (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#4 + (byte~) bitmap_line_ydxi::$5 ← (byte) bitmap_line_ydxi::e#4 - (byte) bitmap_line_ydxi::yd#3 + (byte) bitmap_line_ydxi::e#2 ← (byte~) bitmap_line_ydxi::$5 to:bitmap_line_ydxi::@2 bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2 return to:@return bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@17 bitmap_line::@8 - (byte) bitmap_line_ydxd::y1#6 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y1#1 ) - (byte) bitmap_line_ydxd::yd#5 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::yd#1 ) - (byte) bitmap_line_ydxd::y#7 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y#1 ) - (byte) bitmap_line_ydxd::x#5 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::x#0 bitmap_line::@8/(byte) bitmap_line_ydxd::x#1 ) - (byte) bitmap_line_ydxd::xd#2 ? phi( bitmap_line::@17/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::xd#1 ) - (byte~) bitmap_line_ydxd::$0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line_ydxd::e#0 ? (byte~) bitmap_line_ydxd::$0 + (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y1#1 ) + (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::yd#1 ) + (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::y#0 bitmap_line::@8/(byte) bitmap_line_ydxd::y#1 ) + (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::x#0 bitmap_line::@8/(byte) bitmap_line_ydxd::x#1 ) + (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@17/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@8/(byte) bitmap_line_ydxd::xd#1 ) + (byte~) bitmap_line_ydxd::$0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line_ydxd::e#0 ← (byte~) bitmap_line_ydxd::$0 to:bitmap_line_ydxd::@1 bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2 - (byte) bitmap_line_ydxd::y1#5 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y1#6 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y1#2 ) - (byte) bitmap_line_ydxd::yd#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::yd#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::yd#6 ) - (byte) bitmap_line_ydxd::xd#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::xd#2 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::xd#5 ) - (byte) bitmap_line_ydxd::e#5 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) - (byte) bitmap_line_ydxd::y#4 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#6 ) - (byte) bitmap_line_ydxd::x#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) - (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#4 + (byte) bitmap_line_ydxd::y1#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y1#6 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y1#2 ) + (byte) bitmap_line_ydxd::yd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::yd#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::yd#6 ) + (byte) bitmap_line_ydxd::xd#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::xd#2 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::xd#5 ) + (byte) bitmap_line_ydxd::e#5 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) + (byte) bitmap_line_ydxd::y#4 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#6 ) + (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) + (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#4 call bitmap_plot to:bitmap_line_ydxd::@5 bitmap_line_ydxd::@5: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1 - (byte) bitmap_line_ydxd::x#7 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::x#3 ) - (byte) bitmap_line_ydxd::y1#4 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y1#5 ) - (byte) bitmap_line_ydxd::yd#2 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::yd#4 ) - (byte) bitmap_line_ydxd::xd#3 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::xd#4 ) - (byte) bitmap_line_ydxd::e#3 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::e#5 ) - (byte) bitmap_line_ydxd::y#5 ? phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y#4 ) - (byte) bitmap_line_ydxd::y#2 ? (byte) bitmap_line_ydxd::y#5 - (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 - (byte~) bitmap_line_ydxd::$2 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#3 - (byte) bitmap_line_ydxd::e#1 ? (byte~) bitmap_line_ydxd::$2 - (bool~) bitmap_line_ydxd::$3 ? (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 - (bool~) bitmap_line_ydxd::$4 ? ! (bool~) bitmap_line_ydxd::$3 + (byte) bitmap_line_ydxd::x#7 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::x#3 ) + (byte) bitmap_line_ydxd::y1#4 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y1#5 ) + (byte) bitmap_line_ydxd::yd#2 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::yd#4 ) + (byte) bitmap_line_ydxd::xd#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::xd#4 ) + (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::e#5 ) + (byte) bitmap_line_ydxd::y#5 ← phi( bitmap_line_ydxd::@1/(byte) bitmap_line_ydxd::y#4 ) + (byte) bitmap_line_ydxd::y#2 ← (byte) bitmap_line_ydxd::y#5 + (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 + (byte~) bitmap_line_ydxd::$2 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#3 + (byte) bitmap_line_ydxd::e#1 ← (byte~) bitmap_line_ydxd::$2 + (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 + (bool~) bitmap_line_ydxd::$4 ← ! (bool~) bitmap_line_ydxd::$3 if((bool~) bitmap_line_ydxd::$4) goto bitmap_line_ydxd::@2 to:bitmap_line_ydxd::@3 bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@5 - (byte) bitmap_line_ydxd::yd#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) - (byte) bitmap_line_ydxd::xd#5 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::xd#6 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) - (byte) bitmap_line_ydxd::e#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) - (byte) bitmap_line_ydxd::x#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) - (byte) bitmap_line_ydxd::y#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y#8 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) - (byte) bitmap_line_ydxd::y1#2 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y1#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) - (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_line_ydxd::$7 ? (byte) bitmap_line_ydxd::y#6 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 + (byte) bitmap_line_ydxd::yd#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::yd#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) + (byte) bitmap_line_ydxd::xd#5 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::xd#6 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) + (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) + (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) + (byte) bitmap_line_ydxd::y#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y#8 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) + (byte) bitmap_line_ydxd::y1#2 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::y1#3 bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) + (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_line_ydxd::$7 ← (byte) bitmap_line_ydxd::y#6 != (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 if((bool~) bitmap_line_ydxd::$7) goto bitmap_line_ydxd::@1 to:bitmap_line_ydxd::@return bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@5 - (byte) bitmap_line_ydxd::xd#6 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) - (byte) bitmap_line_ydxd::y#8 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) - (byte) bitmap_line_ydxd::y1#3 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) - (byte) bitmap_line_ydxd::yd#3 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) - (byte) bitmap_line_ydxd::e#4 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) - (byte) bitmap_line_ydxd::x#4 ? phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) - (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#4 - (byte~) bitmap_line_ydxd::$5 ? (byte) bitmap_line_ydxd::e#4 - (byte) bitmap_line_ydxd::yd#3 - (byte) bitmap_line_ydxd::e#2 ? (byte~) bitmap_line_ydxd::$5 + (byte) bitmap_line_ydxd::xd#6 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::xd#3 ) + (byte) bitmap_line_ydxd::y#8 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y#3 ) + (byte) bitmap_line_ydxd::y1#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::y1#4 ) + (byte) bitmap_line_ydxd::yd#3 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::yd#2 ) + (byte) bitmap_line_ydxd::e#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::e#1 ) + (byte) bitmap_line_ydxd::x#4 ← phi( bitmap_line_ydxd::@5/(byte) bitmap_line_ydxd::x#7 ) + (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#4 + (byte~) bitmap_line_ydxd::$5 ← (byte) bitmap_line_ydxd::e#4 - (byte) bitmap_line_ydxd::yd#3 + (byte) bitmap_line_ydxd::e#2 ← (byte~) bitmap_line_ydxd::$5 to:bitmap_line_ydxd::@2 bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2 return to:@return @12: scope:[] from @4 - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) BITMAP#0 ? ((byte*)) (word/signed word/dword/signed dword) $2000 - (byte[]) lines_x#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $3c } - (byte[]) lines_y#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $a } - (byte) lines_cnt#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) BITMAP#0 ← ((byte*)) (word/signed word/dword/signed dword) $2000 + (byte[]) lines_x#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $3c } + (byte[]) lines_y#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $50, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $28, (byte/signed byte/word/signed word/dword/signed dword) $a } + (byte) lines_cnt#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 to:@15 main: scope:[main] from @15 - *((byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) main::$0 ? (byte) VIC_BMM#0 | (byte) VIC_DEN#0 - (byte~) main::$1 ? (byte~) main::$0 | (byte) VIC_RSEL#0 - (byte/word/dword~) main::$2 ? (byte~) main::$1 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) D011#0) ? (byte/word/dword~) main::$2 - (word~) main::$3 ? ((word)) (byte*) SCREEN#0 - (word~) main::$4 ? (word~) main::$3 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) main::$5 ? (word~) main::$4 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (word~) main::$6 ? ((word)) (byte*) BITMAP#0 - (word~) main::$7 ? (word~) main::$6 & (word/signed word/dword/signed dword) $3fff - (word/signed dword/dword~) main::$8 ? (word~) main::$7 / (word/signed word/dword/signed dword) $400 - (word/dword~) main::$9 ? (word/signed dword/dword~) main::$5 | (word/signed dword/dword~) main::$8 - (byte~) main::$10 ? ((byte)) (word/dword~) main::$9 - *((byte*) VIC_MEMORY#0) ? (byte~) main::$10 - (byte*) bitmap_init::bitmap#0 ? (byte*) BITMAP#0 + *((byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) main::$0 ← (byte) VIC_BMM#0 | (byte) VIC_DEN#0 + (byte~) main::$1 ← (byte~) main::$0 | (byte) VIC_RSEL#0 + (byte/word/dword~) main::$2 ← (byte~) main::$1 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) D011#0) ← (byte/word/dword~) main::$2 + (word~) main::$3 ← ((word)) (byte*) SCREEN#0 + (word~) main::$4 ← (word~) main::$3 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) main::$5 ← (word~) main::$4 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (word~) main::$6 ← ((word)) (byte*) BITMAP#0 + (word~) main::$7 ← (word~) main::$6 & (word/signed word/dword/signed dword) $3fff + (word/signed dword/dword~) main::$8 ← (word~) main::$7 / (word/signed word/dword/signed dword) $400 + (word/dword~) main::$9 ← (word/signed dword/dword~) main::$5 | (word/signed dword/dword~) main::$8 + (byte~) main::$10 ← ((byte)) (word/dword~) main::$9 + *((byte*) VIC_MEMORY#0) ← (byte~) main::$10 + (byte*) bitmap_init::bitmap#0 ← (byte*) BITMAP#0 call bitmap_init to:main::@3 main::@3: scope:[main] from main @@ -679,36 +679,36 @@ main::@return: scope:[main] from main::@6 return to:@return lines: scope:[lines] from main::@1 - (byte) lines::l#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) lines::l#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:lines::@1 lines::@1: scope:[lines] from lines lines::@3 - (byte) lines::l#2 ? phi( lines/(byte) lines::l#0 lines::@3/(byte) lines::l#1 ) - (byte/signed word/word/dword/signed dword~) lines::$0 ? (byte) lines::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/signed word/word/dword/signed dword~) lines::$1 ? (byte) lines::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) bitmap_line::x0#0 ? *((byte[]) lines_x#0 + (byte) lines::l#2) - (byte) bitmap_line::x1#0 ? *((byte[]) lines_x#0 + (byte/signed word/word/dword/signed dword~) lines::$0) - (byte) bitmap_line::y0#0 ? *((byte[]) lines_y#0 + (byte) lines::l#2) - (byte) bitmap_line::y1#0 ? *((byte[]) lines_y#0 + (byte/signed word/word/dword/signed dword~) lines::$1) + (byte) lines::l#2 ← phi( lines/(byte) lines::l#0 lines::@3/(byte) lines::l#1 ) + (byte/signed word/word/dword/signed dword~) lines::$0 ← (byte) lines::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/signed word/word/dword/signed dword~) lines::$1 ← (byte) lines::l#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) bitmap_line::x0#0 ← *((byte[]) lines_x#0 + (byte) lines::l#2) + (byte) bitmap_line::x1#0 ← *((byte[]) lines_x#0 + (byte/signed word/word/dword/signed dword~) lines::$0) + (byte) bitmap_line::y0#0 ← *((byte[]) lines_y#0 + (byte) lines::l#2) + (byte) bitmap_line::y1#0 ← *((byte[]) lines_y#0 + (byte/signed word/word/dword/signed dword~) lines::$1) call bitmap_line to:lines::@3 lines::@3: scope:[lines] from lines::@1 - (byte) lines::l#3 ? phi( lines::@1/(byte) lines::l#2 ) - (byte) lines::l#1 ? ++ (byte) lines::l#3 - (bool~) lines::$3 ? (byte) lines::l#1 < (byte) lines_cnt#0 + (byte) lines::l#3 ← phi( lines::@1/(byte) lines::l#2 ) + (byte) lines::l#1 ← ++ (byte) lines::l#3 + (bool~) lines::$3 ← (byte) lines::l#1 < (byte) lines_cnt#0 if((bool~) lines::$3) goto lines::@1 to:lines::@return lines::@return: scope:[lines] from lines::@3 return to:@return init_screen: scope:[init_screen] from main::@4 - (byte*) init_screen::c#0 ? (byte*) SCREEN#0 + (byte*) init_screen::c#0 ← (byte*) SCREEN#0 to:init_screen::@1 init_screen::@1: scope:[init_screen] from init_screen init_screen::@1 - (byte*) init_screen::c#2 ? phi( init_screen/(byte*) init_screen::c#0 init_screen::@1/(byte*) init_screen::c#1 ) - *((byte*) init_screen::c#2) ? (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte*) init_screen::c#1 ? ++ (byte*) init_screen::c#2 - (byte*~) init_screen::$0 ? (byte*) SCREEN#0 + (word/signed word/dword/signed dword) $400 - (bool~) init_screen::$1 ? (byte*) init_screen::c#1 != (byte*~) init_screen::$0 + (byte*) init_screen::c#2 ← phi( init_screen/(byte*) init_screen::c#0 init_screen::@1/(byte*) init_screen::c#1 ) + *((byte*) init_screen::c#2) ← (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte*) init_screen::c#1 ← ++ (byte*) init_screen::c#2 + (byte*~) init_screen::$0 ← (byte*) SCREEN#0 + (word/signed word/dword/signed dword) $400 + (bool~) init_screen::$1 ← (byte*) init_screen::c#1 != (byte*~) init_screen::$0 if((bool~) init_screen::$1) goto init_screen::@1 to:init_screen::@return init_screen::@return: scope:[init_screen] from init_screen::@1 @@ -1438,12 +1438,12 @@ Culled Empty Block (label) bitmap_line::@36 Culled Empty Block (label) main::@5 Culled Empty Block (label) @16 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [96] (bool~) bitmap_init::$4 ? (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [95] (bool~) bitmap_init::$3 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [115] (bool~) bitmap_init::$12 ? (byte~) bitmap_init::$10 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [114] (bool~) bitmap_init::$11 ? (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [254] (bool~) bitmap_line_xdyi::$4 ? (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [253] (bool~) bitmap_line_xdyi::$3 ? (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 -Inversing boolean not [277] (bool~) bitmap_line_xdyd::$4 ? (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [276] (bool~) bitmap_line_xdyd::$3 ? (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 -Inversing boolean not [300] (bool~) bitmap_line_ydxi::$4 ? (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [299] (bool~) bitmap_line_ydxi::$3 ? (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 -Inversing boolean not [324] (bool~) bitmap_line_ydxd::$4 ? (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [323] (bool~) bitmap_line_ydxd::$3 ? (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 +Inversing boolean not [96] (bool~) bitmap_init::$4 ← (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [95] (bool~) bitmap_init::$3 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [115] (bool~) bitmap_init::$12 ← (byte~) bitmap_init::$10 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [114] (bool~) bitmap_init::$11 ← (byte~) bitmap_init::$10 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [254] (bool~) bitmap_line_xdyi::$4 ← (byte) bitmap_line_xdyi::xd#2 >= (byte) bitmap_line_xdyi::e#1 from [253] (bool~) bitmap_line_xdyi::$3 ← (byte) bitmap_line_xdyi::xd#2 < (byte) bitmap_line_xdyi::e#1 +Inversing boolean not [277] (bool~) bitmap_line_xdyd::$4 ← (byte) bitmap_line_xdyd::xd#2 >= (byte) bitmap_line_xdyd::e#1 from [276] (bool~) bitmap_line_xdyd::$3 ← (byte) bitmap_line_xdyd::xd#2 < (byte) bitmap_line_xdyd::e#1 +Inversing boolean not [300] (bool~) bitmap_line_ydxi::$4 ← (byte) bitmap_line_ydxi::yd#2 >= (byte) bitmap_line_ydxi::e#1 from [299] (bool~) bitmap_line_ydxi::$3 ← (byte) bitmap_line_ydxi::yd#2 < (byte) bitmap_line_ydxi::e#1 +Inversing boolean not [324] (bool~) bitmap_line_ydxd::$4 ← (byte) bitmap_line_ydxd::yd#2 >= (byte) bitmap_line_ydxd::e#1 from [323] (bool~) bitmap_line_ydxd::$3 ← (byte) bitmap_line_ydxd::yd#2 < (byte) bitmap_line_ydxd::e#1 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte) bitmap_init::bits#1 = (byte~) bitmap_init::$2 Alias (byte) bitmap_init::x#2 = (byte) bitmap_init::x#4 @@ -1713,25 +1713,25 @@ Consolidated array index constant in assignment *(lines_y#0+1 + lines::$1) Successful SSA optimization Pass2ConstantAdditionElimination if() condition always true - replacing block destination [172] if(true) goto main::@1 Successful SSA optimization Pass2ConstantIfs -Fixing inline constructor with bitmap_clear::$3 ? *(bitmap_plot_xhi#0+0) w= *(bitmap_plot_xlo#0+0) -Fixing inline constructor with bitmap_plot::$2 ? *(bitmap_plot_xhi#0 + bitmap_plot::x#4) w= *(bitmap_plot_xlo#0 + bitmap_plot::x#4) -Fixing inline constructor with bitmap_plot::$3 ? *(bitmap_plot_yhi#0 + bitmap_plot::y#4) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#4) +Fixing inline constructor with bitmap_clear::$3 ← *(bitmap_plot_xhi#0+0) w= *(bitmap_plot_xlo#0+0) +Fixing inline constructor with bitmap_plot::$2 ← *(bitmap_plot_xhi#0 + bitmap_plot::x#4) w= *(bitmap_plot_xlo#0 + bitmap_plot::x#4) +Fixing inline constructor with bitmap_plot::$3 ← *(bitmap_plot_yhi#0 + bitmap_plot::y#4) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#4) Successful SSA optimization Pass2FixInlineConstructors -Inferred type updated to byte in [175] (byte/signed word/word/dword/signed dword~) lines::$0 ? (byte) lines::l#2 -Inferred type updated to byte in [176] (byte/signed word/word/dword/signed dword~) lines::$1 ? (byte) lines::l#2 +Inferred type updated to byte in [175] (byte/signed word/word/dword/signed dword~) lines::$0 ← (byte) lines::l#2 +Inferred type updated to byte in [176] (byte/signed word/word/dword/signed dword~) lines::$1 ← (byte) lines::l#2 Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ? ((byte*)) (word~) bitmap_clear::$3 -Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$0 +Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ← ((byte*)) (word~) bitmap_clear::$3 +Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$0 Successful SSA optimization Pass2NopCastElimination Removing unused block main::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value bitmap_init::x#1 ? ++ bitmap_init::x#2 to ++ +Resolved ranged next value bitmap_init::x#1 ← ++ bitmap_init::x#2 to ++ Resolved ranged comparison value if(bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_init::y#1 ? ++ bitmap_init::y#2 to ++ +Resolved ranged next value bitmap_init::y#1 ← ++ bitmap_init::y#2 to ++ Resolved ranged comparison value if(bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_clear::x#1 ? ++ bitmap_clear::x#2 to ++ +Resolved ranged next value bitmap_clear::x#1 ← ++ bitmap_clear::x#2 to ++ Resolved ranged comparison value if(bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value bitmap_clear::y#1 ? ++ bitmap_clear::y#4 to ++ +Resolved ranged next value bitmap_clear::y#1 ← ++ bitmap_clear::y#4 to ++ Resolved ranged comparison value if(bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 to (byte/signed byte/word/signed word/dword/signed dword) $28 Culled Empty Block (label) @4 Culled Empty Block (label) bitmap_init::@4 @@ -1815,108 +1815,108 @@ Calls in [bitmap_line_xdyd] to bitmap_plot:199 Calls in [bitmap_line_ydxd] to bitmap_plot:226 Created 54 initial phi equivalence classes -Coalesced [25] lines::l#4 ? lines::l#1 -Coalesced [36] bitmap_line_ydxi::xd#8 ? bitmap_line_ydxi::xd#0 -Coalesced [37] bitmap_line_ydxi::x#9 ? bitmap_line_ydxi::x#0 -Coalesced [38] bitmap_line_ydxi::y#9 ? bitmap_line_ydxi::y#0 -Coalesced [39] bitmap_line_ydxi::yd#8 ? bitmap_line_ydxi::yd#0 -Coalesced [40] bitmap_line_ydxi::y1#8 ? bitmap_line_ydxi::y1#0 -Coalesced [48] bitmap_line_xdyi::yd#7 ? bitmap_line_xdyi::yd#0 -Coalesced [49] bitmap_line_xdyi::x#8 ? bitmap_line_xdyi::x#0 -Coalesced [50] bitmap_line_xdyi::y#8 ? bitmap_line_xdyi::y#0 -Coalesced [51] bitmap_line_xdyi::xd#7 ? bitmap_line_xdyi::xd#0 -Coalesced [52] bitmap_line_xdyi::x1#7 ? bitmap_line_xdyi::x1#0 -Coalesced [61] bitmap_line_ydxd::xd#7 ? bitmap_line_ydxd::xd#0 -Coalesced [62] bitmap_line_ydxd::x#8 ? bitmap_line_ydxd::x#0 -Coalesced [63] bitmap_line_ydxd::y#9 ? bitmap_line_ydxd::y#0 -Coalesced [64] bitmap_line_ydxd::yd#7 ? bitmap_line_ydxd::yd#0 -Coalesced [65] bitmap_line_ydxd::y1#7 ? bitmap_line_ydxd::y1#0 -Coalesced [72] bitmap_line_xdyd::yd#7 ? bitmap_line_xdyd::yd#0 -Coalesced [73] bitmap_line_xdyd::x#8 ? bitmap_line_xdyd::x#0 -Coalesced [74] bitmap_line_xdyd::y#8 ? bitmap_line_xdyd::y#0 -Coalesced [75] bitmap_line_xdyd::xd#7 ? bitmap_line_xdyd::xd#0 -Coalesced [76] bitmap_line_xdyd::x1#7 ? bitmap_line_xdyd::x1#0 -Coalesced [87] bitmap_line_ydxd::xd#8 ? bitmap_line_ydxd::xd#1 -Coalesced [88] bitmap_line_ydxd::x#9 ? bitmap_line_ydxd::x#1 -Coalesced [89] bitmap_line_ydxd::y#10 ? bitmap_line_ydxd::y#1 -Coalesced [90] bitmap_line_ydxd::yd#8 ? bitmap_line_ydxd::yd#1 -Coalesced [91] bitmap_line_ydxd::y1#8 ? bitmap_line_ydxd::y1#1 -Coalesced [98] bitmap_line_xdyd::yd#8 ? bitmap_line_xdyd::yd#1 -Coalesced [99] bitmap_line_xdyd::x#9 ? bitmap_line_xdyd::x#1 -Coalesced [100] bitmap_line_xdyd::y#9 ? bitmap_line_xdyd::y#1 -Coalesced [101] bitmap_line_xdyd::xd#8 ? bitmap_line_xdyd::xd#1 -Coalesced [102] bitmap_line_xdyd::x1#8 ? bitmap_line_xdyd::x1#1 -Coalesced [111] bitmap_line_ydxi::xd#7 ? bitmap_line_ydxi::xd#1 -Coalesced [112] bitmap_line_ydxi::x#8 ? bitmap_line_ydxi::x#1 -Coalesced [113] bitmap_line_ydxi::y#8 ? bitmap_line_ydxi::y#1 -Coalesced [114] bitmap_line_ydxi::yd#7 ? bitmap_line_ydxi::yd#1 -Coalesced [115] bitmap_line_ydxi::y1#7 ? bitmap_line_ydxi::y1#1 -Coalesced [122] bitmap_line_xdyi::yd#8 ? bitmap_line_xdyi::yd#1 -Coalesced [123] bitmap_line_xdyi::x#9 ? bitmap_line_xdyi::x#1 -Coalesced [124] bitmap_line_xdyi::y#9 ? bitmap_line_xdyi::y#1 -Coalesced [125] bitmap_line_xdyi::xd#8 ? bitmap_line_xdyi::xd#1 -Coalesced [126] bitmap_line_xdyi::x1#8 ? bitmap_line_xdyi::x1#1 -Coalesced [130] bitmap_line_xdyi::x#10 ? bitmap_line_xdyi::x#6 -Coalesced [131] bitmap_line_xdyi::y#10 ? bitmap_line_xdyi::y#5 -Coalesced [132] bitmap_line_xdyi::e#7 ? bitmap_line_xdyi::e#0 -Coalesced [136] bitmap_plot::x#6 ? bitmap_plot::x#0 -Coalesced [137] bitmap_plot::y#6 ? bitmap_plot::y#0 -Coalesced [144] bitmap_line_xdyi::y#12 ? bitmap_line_xdyi::y#2 -Coalesced [145] bitmap_line_xdyi::e#9 ? bitmap_line_xdyi::e#2 -Coalesced [150] bitmap_line_xdyi::x#11 ? bitmap_line_xdyi::x#2 -Coalesced [151] bitmap_line_xdyi::y#11 ? bitmap_line_xdyi::y#6 -Coalesced [152] bitmap_line_xdyi::e#8 ? bitmap_line_xdyi::e#6 -Coalesced (already) [153] bitmap_line_xdyi::y#13 ? bitmap_line_xdyi::y#3 -Coalesced [154] bitmap_line_xdyi::e#10 ? bitmap_line_xdyi::e#1 -Coalesced [164] bitmap_line_ydxi::x#10 ? bitmap_line_ydxi::x#5 -Coalesced [165] bitmap_line_ydxi::y#10 ? bitmap_line_ydxi::y#6 -Coalesced [166] bitmap_line_ydxi::e#7 ? bitmap_line_ydxi::e#0 -Coalesced [170] bitmap_plot::x#8 ? bitmap_plot::x#2 -Coalesced [171] bitmap_plot::y#8 ? bitmap_plot::y#2 -Coalesced [178] bitmap_line_ydxi::x#12 ? bitmap_line_ydxi::x#2 -Coalesced [179] bitmap_line_ydxi::e#9 ? bitmap_line_ydxi::e#2 -Coalesced [184] bitmap_line_ydxi::x#11 ? bitmap_line_ydxi::x#6 -Coalesced [185] bitmap_line_ydxi::y#11 ? bitmap_line_ydxi::y#2 -Coalesced [186] bitmap_line_ydxi::e#8 ? bitmap_line_ydxi::e#6 -Coalesced (already) [187] bitmap_line_ydxi::x#13 ? bitmap_line_ydxi::x#3 -Coalesced [188] bitmap_line_ydxi::e#10 ? bitmap_line_ydxi::e#1 -Coalesced [191] bitmap_line_xdyd::x#10 ? bitmap_line_xdyd::x#6 -Coalesced [192] bitmap_line_xdyd::y#10 ? bitmap_line_xdyd::y#5 -Coalesced [193] bitmap_line_xdyd::e#7 ? bitmap_line_xdyd::e#0 -Coalesced [197] bitmap_plot::x#5 ? bitmap_plot::x#1 -Coalesced [198] bitmap_plot::y#5 ? bitmap_plot::y#1 -Coalesced [205] bitmap_line_xdyd::y#12 ? bitmap_line_xdyd::y#2 -Coalesced [206] bitmap_line_xdyd::e#9 ? bitmap_line_xdyd::e#2 -Coalesced [211] bitmap_line_xdyd::x#11 ? bitmap_line_xdyd::x#2 -Coalesced [212] bitmap_line_xdyd::y#11 ? bitmap_line_xdyd::y#6 -Coalesced [213] bitmap_line_xdyd::e#8 ? bitmap_line_xdyd::e#6 -Coalesced (already) [214] bitmap_line_xdyd::y#13 ? bitmap_line_xdyd::y#3 -Coalesced [215] bitmap_line_xdyd::e#10 ? bitmap_line_xdyd::e#1 -Coalesced [218] bitmap_line_ydxd::x#10 ? bitmap_line_ydxd::x#5 -Coalesced [219] bitmap_line_ydxd::y#11 ? bitmap_line_ydxd::y#7 -Coalesced [220] bitmap_line_ydxd::e#7 ? bitmap_line_ydxd::e#0 -Coalesced [224] bitmap_plot::x#7 ? bitmap_plot::x#3 -Coalesced [225] bitmap_plot::y#7 ? bitmap_plot::y#3 -Coalesced [232] bitmap_line_ydxd::x#12 ? bitmap_line_ydxd::x#2 -Coalesced [233] bitmap_line_ydxd::e#9 ? bitmap_line_ydxd::e#2 -Coalesced [238] bitmap_line_ydxd::x#11 ? bitmap_line_ydxd::x#6 -Coalesced [239] bitmap_line_ydxd::y#12 ? bitmap_line_ydxd::y#3 -Coalesced [240] bitmap_line_ydxd::e#8 ? bitmap_line_ydxd::e#6 -Coalesced (already) [241] bitmap_line_ydxd::x#13 ? bitmap_line_ydxd::x#3 -Coalesced [242] bitmap_line_ydxd::e#10 ? bitmap_line_ydxd::e#1 -Coalesced [249] init_screen::c#3 ? init_screen::c#1 -Coalesced [253] bitmap_clear::bitmap#7 ? bitmap_clear::bitmap#3 -Coalesced [262] bitmap_clear::bitmap#6 ? bitmap_clear::bitmap#1 -Coalesced [263] bitmap_clear::y#5 ? bitmap_clear::y#1 -Coalesced (already) [264] bitmap_clear::bitmap#8 ? bitmap_clear::bitmap#1 -Coalesced [265] bitmap_clear::x#3 ? bitmap_clear::x#1 -Coalesced [288] bitmap_init::yoffs#7 ? bitmap_init::yoffs#1 -Coalesced [293] bitmap_init::y#5 ? bitmap_init::y#1 -Coalesced [294] bitmap_init::yoffs#5 ? bitmap_init::yoffs#4 -Coalesced (already) [295] bitmap_init::yoffs#6 ? bitmap_init::yoffs#2 -Coalesced [296] bitmap_init::x#5 ? bitmap_init::x#1 -Coalesced [297] bitmap_init::bits#5 ? bitmap_init::bits#4 -Coalesced [298] bitmap_init::bits#6 ? bitmap_init::bits#1 +Coalesced [25] lines::l#4 ← lines::l#1 +Coalesced [36] bitmap_line_ydxi::xd#8 ← bitmap_line_ydxi::xd#0 +Coalesced [37] bitmap_line_ydxi::x#9 ← bitmap_line_ydxi::x#0 +Coalesced [38] bitmap_line_ydxi::y#9 ← bitmap_line_ydxi::y#0 +Coalesced [39] bitmap_line_ydxi::yd#8 ← bitmap_line_ydxi::yd#0 +Coalesced [40] bitmap_line_ydxi::y1#8 ← bitmap_line_ydxi::y1#0 +Coalesced [48] bitmap_line_xdyi::yd#7 ← bitmap_line_xdyi::yd#0 +Coalesced [49] bitmap_line_xdyi::x#8 ← bitmap_line_xdyi::x#0 +Coalesced [50] bitmap_line_xdyi::y#8 ← bitmap_line_xdyi::y#0 +Coalesced [51] bitmap_line_xdyi::xd#7 ← bitmap_line_xdyi::xd#0 +Coalesced [52] bitmap_line_xdyi::x1#7 ← bitmap_line_xdyi::x1#0 +Coalesced [61] bitmap_line_ydxd::xd#7 ← bitmap_line_ydxd::xd#0 +Coalesced [62] bitmap_line_ydxd::x#8 ← bitmap_line_ydxd::x#0 +Coalesced [63] bitmap_line_ydxd::y#9 ← bitmap_line_ydxd::y#0 +Coalesced [64] bitmap_line_ydxd::yd#7 ← bitmap_line_ydxd::yd#0 +Coalesced [65] bitmap_line_ydxd::y1#7 ← bitmap_line_ydxd::y1#0 +Coalesced [72] bitmap_line_xdyd::yd#7 ← bitmap_line_xdyd::yd#0 +Coalesced [73] bitmap_line_xdyd::x#8 ← bitmap_line_xdyd::x#0 +Coalesced [74] bitmap_line_xdyd::y#8 ← bitmap_line_xdyd::y#0 +Coalesced [75] bitmap_line_xdyd::xd#7 ← bitmap_line_xdyd::xd#0 +Coalesced [76] bitmap_line_xdyd::x1#7 ← bitmap_line_xdyd::x1#0 +Coalesced [87] bitmap_line_ydxd::xd#8 ← bitmap_line_ydxd::xd#1 +Coalesced [88] bitmap_line_ydxd::x#9 ← bitmap_line_ydxd::x#1 +Coalesced [89] bitmap_line_ydxd::y#10 ← bitmap_line_ydxd::y#1 +Coalesced [90] bitmap_line_ydxd::yd#8 ← bitmap_line_ydxd::yd#1 +Coalesced [91] bitmap_line_ydxd::y1#8 ← bitmap_line_ydxd::y1#1 +Coalesced [98] bitmap_line_xdyd::yd#8 ← bitmap_line_xdyd::yd#1 +Coalesced [99] bitmap_line_xdyd::x#9 ← bitmap_line_xdyd::x#1 +Coalesced [100] bitmap_line_xdyd::y#9 ← bitmap_line_xdyd::y#1 +Coalesced [101] bitmap_line_xdyd::xd#8 ← bitmap_line_xdyd::xd#1 +Coalesced [102] bitmap_line_xdyd::x1#8 ← bitmap_line_xdyd::x1#1 +Coalesced [111] bitmap_line_ydxi::xd#7 ← bitmap_line_ydxi::xd#1 +Coalesced [112] bitmap_line_ydxi::x#8 ← bitmap_line_ydxi::x#1 +Coalesced [113] bitmap_line_ydxi::y#8 ← bitmap_line_ydxi::y#1 +Coalesced [114] bitmap_line_ydxi::yd#7 ← bitmap_line_ydxi::yd#1 +Coalesced [115] bitmap_line_ydxi::y1#7 ← bitmap_line_ydxi::y1#1 +Coalesced [122] bitmap_line_xdyi::yd#8 ← bitmap_line_xdyi::yd#1 +Coalesced [123] bitmap_line_xdyi::x#9 ← bitmap_line_xdyi::x#1 +Coalesced [124] bitmap_line_xdyi::y#9 ← bitmap_line_xdyi::y#1 +Coalesced [125] bitmap_line_xdyi::xd#8 ← bitmap_line_xdyi::xd#1 +Coalesced [126] bitmap_line_xdyi::x1#8 ← bitmap_line_xdyi::x1#1 +Coalesced [130] bitmap_line_xdyi::x#10 ← bitmap_line_xdyi::x#6 +Coalesced [131] bitmap_line_xdyi::y#10 ← bitmap_line_xdyi::y#5 +Coalesced [132] bitmap_line_xdyi::e#7 ← bitmap_line_xdyi::e#0 +Coalesced [136] bitmap_plot::x#6 ← bitmap_plot::x#0 +Coalesced [137] bitmap_plot::y#6 ← bitmap_plot::y#0 +Coalesced [144] bitmap_line_xdyi::y#12 ← bitmap_line_xdyi::y#2 +Coalesced [145] bitmap_line_xdyi::e#9 ← bitmap_line_xdyi::e#2 +Coalesced [150] bitmap_line_xdyi::x#11 ← bitmap_line_xdyi::x#2 +Coalesced [151] bitmap_line_xdyi::y#11 ← bitmap_line_xdyi::y#6 +Coalesced [152] bitmap_line_xdyi::e#8 ← bitmap_line_xdyi::e#6 +Coalesced (already) [153] bitmap_line_xdyi::y#13 ← bitmap_line_xdyi::y#3 +Coalesced [154] bitmap_line_xdyi::e#10 ← bitmap_line_xdyi::e#1 +Coalesced [164] bitmap_line_ydxi::x#10 ← bitmap_line_ydxi::x#5 +Coalesced [165] bitmap_line_ydxi::y#10 ← bitmap_line_ydxi::y#6 +Coalesced [166] bitmap_line_ydxi::e#7 ← bitmap_line_ydxi::e#0 +Coalesced [170] bitmap_plot::x#8 ← bitmap_plot::x#2 +Coalesced [171] bitmap_plot::y#8 ← bitmap_plot::y#2 +Coalesced [178] bitmap_line_ydxi::x#12 ← bitmap_line_ydxi::x#2 +Coalesced [179] bitmap_line_ydxi::e#9 ← bitmap_line_ydxi::e#2 +Coalesced [184] bitmap_line_ydxi::x#11 ← bitmap_line_ydxi::x#6 +Coalesced [185] bitmap_line_ydxi::y#11 ← bitmap_line_ydxi::y#2 +Coalesced [186] bitmap_line_ydxi::e#8 ← bitmap_line_ydxi::e#6 +Coalesced (already) [187] bitmap_line_ydxi::x#13 ← bitmap_line_ydxi::x#3 +Coalesced [188] bitmap_line_ydxi::e#10 ← bitmap_line_ydxi::e#1 +Coalesced [191] bitmap_line_xdyd::x#10 ← bitmap_line_xdyd::x#6 +Coalesced [192] bitmap_line_xdyd::y#10 ← bitmap_line_xdyd::y#5 +Coalesced [193] bitmap_line_xdyd::e#7 ← bitmap_line_xdyd::e#0 +Coalesced [197] bitmap_plot::x#5 ← bitmap_plot::x#1 +Coalesced [198] bitmap_plot::y#5 ← bitmap_plot::y#1 +Coalesced [205] bitmap_line_xdyd::y#12 ← bitmap_line_xdyd::y#2 +Coalesced [206] bitmap_line_xdyd::e#9 ← bitmap_line_xdyd::e#2 +Coalesced [211] bitmap_line_xdyd::x#11 ← bitmap_line_xdyd::x#2 +Coalesced [212] bitmap_line_xdyd::y#11 ← bitmap_line_xdyd::y#6 +Coalesced [213] bitmap_line_xdyd::e#8 ← bitmap_line_xdyd::e#6 +Coalesced (already) [214] bitmap_line_xdyd::y#13 ← bitmap_line_xdyd::y#3 +Coalesced [215] bitmap_line_xdyd::e#10 ← bitmap_line_xdyd::e#1 +Coalesced [218] bitmap_line_ydxd::x#10 ← bitmap_line_ydxd::x#5 +Coalesced [219] bitmap_line_ydxd::y#11 ← bitmap_line_ydxd::y#7 +Coalesced [220] bitmap_line_ydxd::e#7 ← bitmap_line_ydxd::e#0 +Coalesced [224] bitmap_plot::x#7 ← bitmap_plot::x#3 +Coalesced [225] bitmap_plot::y#7 ← bitmap_plot::y#3 +Coalesced [232] bitmap_line_ydxd::x#12 ← bitmap_line_ydxd::x#2 +Coalesced [233] bitmap_line_ydxd::e#9 ← bitmap_line_ydxd::e#2 +Coalesced [238] bitmap_line_ydxd::x#11 ← bitmap_line_ydxd::x#6 +Coalesced [239] bitmap_line_ydxd::y#12 ← bitmap_line_ydxd::y#3 +Coalesced [240] bitmap_line_ydxd::e#8 ← bitmap_line_ydxd::e#6 +Coalesced (already) [241] bitmap_line_ydxd::x#13 ← bitmap_line_ydxd::x#3 +Coalesced [242] bitmap_line_ydxd::e#10 ← bitmap_line_ydxd::e#1 +Coalesced [249] init_screen::c#3 ← init_screen::c#1 +Coalesced [253] bitmap_clear::bitmap#7 ← bitmap_clear::bitmap#3 +Coalesced [262] bitmap_clear::bitmap#6 ← bitmap_clear::bitmap#1 +Coalesced [263] bitmap_clear::y#5 ← bitmap_clear::y#1 +Coalesced (already) [264] bitmap_clear::bitmap#8 ← bitmap_clear::bitmap#1 +Coalesced [265] bitmap_clear::x#3 ← bitmap_clear::x#1 +Coalesced [288] bitmap_init::yoffs#7 ← bitmap_init::yoffs#1 +Coalesced [293] bitmap_init::y#5 ← bitmap_init::y#1 +Coalesced [294] bitmap_init::yoffs#5 ← bitmap_init::yoffs#4 +Coalesced (already) [295] bitmap_init::yoffs#6 ← bitmap_init::yoffs#2 +Coalesced [296] bitmap_init::x#5 ← bitmap_init::x#1 +Coalesced [297] bitmap_init::bits#5 ← bitmap_init::bits#4 +Coalesced [298] bitmap_init::bits#6 ← bitmap_init::bits#1 Coalesced down to 35 phi equivalence classes Culled Empty Block (label) lines::@4 Culled Empty Block (label) bitmap_line_xdyi::@6 @@ -1981,10 +1981,10 @@ FINAL CONTROL FLOW GRAPH @end: scope:[] from @1 [3] phi() main: scope:[main] from @1 - [4] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [5] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [6] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 - [7] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 + [4] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [5] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [6] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [7] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [8] call bitmap_init to:main::@2 main::@2: scope:[main] from main @@ -2003,15 +2003,15 @@ lines: scope:[lines] from main::@1 [15] phi() to:lines::@1 lines::@1: scope:[lines] from lines lines::@2 - [16] (byte) lines::l#2 ? phi( lines/(byte/signed byte/word/signed word/dword/signed dword) 0 lines::@2/(byte) lines::l#1 ) - [17] (byte) bitmap_line::x0#0 ? *((const byte[]) lines_x#0 + (byte) lines::l#2) - [18] (byte) bitmap_line::x1#0 ? *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) - [19] (byte) bitmap_line::y0#0 ? *((const byte[]) lines_y#0 + (byte) lines::l#2) - [20] (byte) bitmap_line::y1#0 ? *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) + [16] (byte) lines::l#2 ← phi( lines/(byte/signed byte/word/signed word/dword/signed dword) 0 lines::@2/(byte) lines::l#1 ) + [17] (byte) bitmap_line::x0#0 ← *((const byte[]) lines_x#0 + (byte) lines::l#2) + [18] (byte) bitmap_line::x1#0 ← *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) + [19] (byte) bitmap_line::y0#0 ← *((const byte[]) lines_y#0 + (byte) lines::l#2) + [20] (byte) bitmap_line::y1#0 ← *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) [21] call bitmap_line to:lines::@2 lines::@2: scope:[lines] from lines::@1 - [22] (byte) lines::l#1 ? ++ (byte) lines::l#2 + [22] (byte) lines::l#1 ← ++ (byte) lines::l#2 [23] if((byte) lines::l#1<(const byte) lines_cnt#0) goto lines::@1 to:lines::@return lines::@return: scope:[lines] from lines::@2 @@ -2021,239 +2021,239 @@ bitmap_line: scope:[bitmap_line] from lines::@1 [25] if((byte) bitmap_line::x0#0<(byte) bitmap_line::x1#0) goto bitmap_line::@1 to:bitmap_line::@2 bitmap_line::@2: scope:[bitmap_line] from bitmap_line - [26] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 + [26] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [27] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@7 to:bitmap_line::@3 bitmap_line::@3: scope:[bitmap_line] from bitmap_line::@2 - [28] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 + [28] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [29] if((byte) bitmap_line::yd#2<(byte) bitmap_line::xd#2) goto bitmap_line::@8 to:bitmap_line::@4 bitmap_line::@4: scope:[bitmap_line] from bitmap_line::@3 - [30] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 - [31] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 - [32] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 - [33] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 - [34] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + [30] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 + [31] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 + [32] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 + [33] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 + [34] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 [35] call bitmap_line_ydxi to:bitmap_line::@return bitmap_line::@return: scope:[bitmap_line] from bitmap_line::@10 bitmap_line::@12 bitmap_line::@13 bitmap_line::@14 bitmap_line::@4 bitmap_line::@6 bitmap_line::@8 bitmap_line::@9 [36] return to:@return bitmap_line::@8: scope:[bitmap_line] from bitmap_line::@3 - [37] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 - [38] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 - [39] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - [40] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - [41] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 + [37] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 + [38] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 + [39] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + [40] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + [41] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 [42] call bitmap_line_xdyi to:bitmap_line::@return bitmap_line::@7: scope:[bitmap_line] from bitmap_line::@2 - [43] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 + [43] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [44] if((byte) bitmap_line::yd#1<(byte) bitmap_line::xd#2) goto bitmap_line::@9 to:bitmap_line::@10 bitmap_line::@10: scope:[bitmap_line] from bitmap_line::@7 - [45] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 - [46] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 - [47] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 - [48] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 - [49] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + [45] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 + [46] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 + [47] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 + [48] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 + [49] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 [50] call bitmap_line_ydxd to:bitmap_line::@return bitmap_line::@9: scope:[bitmap_line] from bitmap_line::@7 - [51] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 - [52] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 - [53] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 - [54] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - [55] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 + [51] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 + [52] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 + [53] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 + [54] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + [55] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 [56] call bitmap_line_xdyd to:bitmap_line::@return bitmap_line::@1: scope:[bitmap_line] from bitmap_line - [57] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 + [57] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [58] if((byte) bitmap_line::y0#0<(byte) bitmap_line::y1#0) goto bitmap_line::@11 to:bitmap_line::@5 bitmap_line::@5: scope:[bitmap_line] from bitmap_line::@1 - [59] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 + [59] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [60] if((byte) bitmap_line::yd#10<(byte) bitmap_line::xd#1) goto bitmap_line::@12 to:bitmap_line::@6 bitmap_line::@6: scope:[bitmap_line] from bitmap_line::@5 - [61] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 - [62] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 - [63] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - [64] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - [65] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + [61] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 + [62] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 + [63] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + [64] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + [65] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 [66] call bitmap_line_ydxd to:bitmap_line::@return bitmap_line::@12: scope:[bitmap_line] from bitmap_line::@5 - [67] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 - [68] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - [69] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 - [70] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - [71] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 + [67] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 + [68] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + [69] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 + [70] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + [71] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 [72] call bitmap_line_xdyd to:bitmap_line::@return bitmap_line::@11: scope:[bitmap_line] from bitmap_line::@1 - [73] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 + [73] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [74] if((byte) bitmap_line::yd#11<(byte) bitmap_line::xd#1) goto bitmap_line::@13 to:bitmap_line::@14 bitmap_line::@14: scope:[bitmap_line] from bitmap_line::@11 - [75] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 - [76] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 - [77] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 - [78] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 - [79] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + [75] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 + [76] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 + [77] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 + [78] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 + [79] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 [80] call bitmap_line_ydxi to:bitmap_line::@return bitmap_line::@13: scope:[bitmap_line] from bitmap_line::@11 - [81] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 - [82] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - [83] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 - [84] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - [85] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + [81] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 + [82] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + [83] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 + [84] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + [85] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 [86] call bitmap_line_xdyi to:bitmap_line::@return bitmap_line_xdyi: scope:[bitmap_line_xdyi] from bitmap_line::@13 bitmap_line::@8 - [87] (byte) bitmap_line_xdyi::x1#6 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 ) - [87] (byte) bitmap_line_xdyi::xd#5 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 ) - [87] (byte) bitmap_line_xdyi::y#5 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 ) - [87] (byte) bitmap_line_xdyi::x#6 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 ) - [87] (byte) bitmap_line_xdyi::yd#2 ? phi( bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 ) - [88] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [87] (byte) bitmap_line_xdyi::x1#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x1#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x1#1 ) + [87] (byte) bitmap_line_xdyi::xd#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::xd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::xd#1 ) + [87] (byte) bitmap_line_xdyi::y#5 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::y#0 bitmap_line::@13/(byte) bitmap_line_xdyi::y#1 ) + [87] (byte) bitmap_line_xdyi::x#6 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::x#0 bitmap_line::@13/(byte) bitmap_line_xdyi::x#1 ) + [87] (byte) bitmap_line_xdyi::yd#2 ← phi( bitmap_line::@8/(byte) bitmap_line_xdyi::yd#0 bitmap_line::@13/(byte) bitmap_line_xdyi::yd#1 ) + [88] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_xdyi::@1 bitmap_line_xdyi::@1: scope:[bitmap_line_xdyi] from bitmap_line_xdyi bitmap_line_xdyi::@2 - [89] (byte) bitmap_line_xdyi::e#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) - [89] (byte) bitmap_line_xdyi::y#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) - [89] (byte) bitmap_line_xdyi::x#3 ? phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) - [90] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - [91] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 + [89] (byte) bitmap_line_xdyi::e#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::e#0 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::e#6 ) + [89] (byte) bitmap_line_xdyi::y#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::y#5 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::y#6 ) + [89] (byte) bitmap_line_xdyi::x#3 ← phi( bitmap_line_xdyi/(byte) bitmap_line_xdyi::x#6 bitmap_line_xdyi::@2/(byte) bitmap_line_xdyi::x#2 ) + [90] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + [91] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 [92] call bitmap_plot to:bitmap_line_xdyi::@4 bitmap_line_xdyi::@4: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@1 - [93] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 - [94] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 + [93] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 + [94] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [95] if((byte) bitmap_line_xdyi::xd#5>=(byte) bitmap_line_xdyi::e#1) goto bitmap_line_xdyi::@2 to:bitmap_line_xdyi::@3 bitmap_line_xdyi::@3: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@4 - [96] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 - [97] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 + [96] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 + [97] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 to:bitmap_line_xdyi::@2 bitmap_line_xdyi::@2: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@3 bitmap_line_xdyi::@4 - [98] (byte) bitmap_line_xdyi::e#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 ) - [98] (byte) bitmap_line_xdyi::y#6 ? phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::y#3 ) - [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [98] (byte) bitmap_line_xdyi::e#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::e#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::e#1 ) + [98] (byte) bitmap_line_xdyi::y#6 ← phi( bitmap_line_xdyi::@3/(byte) bitmap_line_xdyi::y#2 bitmap_line_xdyi::@4/(byte) bitmap_line_xdyi::y#3 ) + [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [100] if((byte) bitmap_line_xdyi::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6) goto bitmap_line_xdyi::@1 to:bitmap_line_xdyi::@return bitmap_line_xdyi::@return: scope:[bitmap_line_xdyi] from bitmap_line_xdyi::@2 [101] return to:@return bitmap_plot: scope:[bitmap_plot] from bitmap_line_xdyd::@1 bitmap_line_xdyi::@1 bitmap_line_ydxd::@1 bitmap_line_ydxi::@1 - [102] (byte) bitmap_plot::y#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) - [102] (byte) bitmap_plot::x#4 ? phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) - [103] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) - [104] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) - [105] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 - [106] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) - [107] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 + [102] (byte) bitmap_plot::y#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::y#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::y#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::y#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::y#2 ) + [102] (byte) bitmap_plot::x#4 ← phi( bitmap_line_xdyd::@1/(byte) bitmap_plot::x#1 bitmap_line_xdyi::@1/(byte) bitmap_plot::x#0 bitmap_line_ydxd::@1/(byte) bitmap_plot::x#3 bitmap_line_ydxi::@1/(byte) bitmap_plot::x#2 ) + [103] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) + [104] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) + [105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 + [106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) + [107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot [108] return to:@return bitmap_line_ydxi: scope:[bitmap_line_ydxi] from bitmap_line::@14 bitmap_line::@4 - [109] (byte) bitmap_line_ydxi::y1#6 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y1#0 ) - [109] (byte) bitmap_line_ydxi::yd#5 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::yd#0 ) - [109] (byte) bitmap_line_ydxi::y#6 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y#0 ) - [109] (byte) bitmap_line_ydxi::x#5 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::x#1 bitmap_line::@4/(byte) bitmap_line_ydxi::x#0 ) - [109] (byte) bitmap_line_ydxi::xd#2 ? phi( bitmap_line::@14/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::xd#0 ) - [110] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [109] (byte) bitmap_line_ydxi::y1#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y1#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y1#0 ) + [109] (byte) bitmap_line_ydxi::yd#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::yd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::yd#0 ) + [109] (byte) bitmap_line_ydxi::y#6 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::y#1 bitmap_line::@4/(byte) bitmap_line_ydxi::y#0 ) + [109] (byte) bitmap_line_ydxi::x#5 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::x#1 bitmap_line::@4/(byte) bitmap_line_ydxi::x#0 ) + [109] (byte) bitmap_line_ydxi::xd#2 ← phi( bitmap_line::@14/(byte) bitmap_line_ydxi::xd#1 bitmap_line::@4/(byte) bitmap_line_ydxi::xd#0 ) + [110] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_ydxi::@1 bitmap_line_ydxi::@1: scope:[bitmap_line_ydxi] from bitmap_line_ydxi bitmap_line_ydxi::@2 - [111] (byte) bitmap_line_ydxi::e#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) - [111] (byte) bitmap_line_ydxi::y#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) - [111] (byte) bitmap_line_ydxi::x#3 ? phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) - [112] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - [113] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 + [111] (byte) bitmap_line_ydxi::e#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::e#0 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::e#6 ) + [111] (byte) bitmap_line_ydxi::y#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::y#6 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::y#2 ) + [111] (byte) bitmap_line_ydxi::x#3 ← phi( bitmap_line_ydxi/(byte) bitmap_line_ydxi::x#5 bitmap_line_ydxi::@2/(byte) bitmap_line_ydxi::x#6 ) + [112] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + [113] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 [114] call bitmap_plot to:bitmap_line_ydxi::@4 bitmap_line_ydxi::@4: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@1 - [115] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 - [116] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 + [115] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 + [116] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [117] if((byte) bitmap_line_ydxi::yd#5>=(byte) bitmap_line_ydxi::e#1) goto bitmap_line_ydxi::@2 to:bitmap_line_ydxi::@3 bitmap_line_ydxi::@3: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@4 - [118] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 - [119] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 + [118] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 + [119] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 to:bitmap_line_ydxi::@2 bitmap_line_ydxi::@2: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@3 bitmap_line_ydxi::@4 - [120] (byte) bitmap_line_ydxi::e#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 ) - [120] (byte) bitmap_line_ydxi::x#6 ? phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::x#3 ) - [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [120] (byte) bitmap_line_ydxi::e#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::e#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::e#1 ) + [120] (byte) bitmap_line_ydxi::x#6 ← phi( bitmap_line_ydxi::@3/(byte) bitmap_line_ydxi::x#2 bitmap_line_ydxi::@4/(byte) bitmap_line_ydxi::x#3 ) + [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [122] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 to:bitmap_line_ydxi::@return bitmap_line_ydxi::@return: scope:[bitmap_line_ydxi] from bitmap_line_ydxi::@2 [123] return to:@return bitmap_line_xdyd: scope:[bitmap_line_xdyd] from bitmap_line::@12 bitmap_line::@9 - [124] (byte) bitmap_line_xdyd::x1#6 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 ) - [124] (byte) bitmap_line_xdyd::xd#5 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 ) - [124] (byte) bitmap_line_xdyd::y#5 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 ) - [124] (byte) bitmap_line_xdyd::x#6 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 ) - [124] (byte) bitmap_line_xdyd::yd#2 ? phi( bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 ) - [125] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [124] (byte) bitmap_line_xdyd::x1#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x1#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x1#1 ) + [124] (byte) bitmap_line_xdyd::xd#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::xd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::xd#1 ) + [124] (byte) bitmap_line_xdyd::y#5 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::y#0 bitmap_line::@12/(byte) bitmap_line_xdyd::y#1 ) + [124] (byte) bitmap_line_xdyd::x#6 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::x#0 bitmap_line::@12/(byte) bitmap_line_xdyd::x#1 ) + [124] (byte) bitmap_line_xdyd::yd#2 ← phi( bitmap_line::@9/(byte) bitmap_line_xdyd::yd#0 bitmap_line::@12/(byte) bitmap_line_xdyd::yd#1 ) + [125] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_xdyd::@1 bitmap_line_xdyd::@1: scope:[bitmap_line_xdyd] from bitmap_line_xdyd bitmap_line_xdyd::@2 - [126] (byte) bitmap_line_xdyd::e#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) - [126] (byte) bitmap_line_xdyd::y#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) - [126] (byte) bitmap_line_xdyd::x#3 ? phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) - [127] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - [128] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 + [126] (byte) bitmap_line_xdyd::e#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::e#0 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::e#6 ) + [126] (byte) bitmap_line_xdyd::y#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::y#5 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::y#6 ) + [126] (byte) bitmap_line_xdyd::x#3 ← phi( bitmap_line_xdyd/(byte) bitmap_line_xdyd::x#6 bitmap_line_xdyd::@2/(byte) bitmap_line_xdyd::x#2 ) + [127] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + [128] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 [129] call bitmap_plot to:bitmap_line_xdyd::@4 bitmap_line_xdyd::@4: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@1 - [130] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 - [131] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 + [130] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 + [131] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [132] if((byte) bitmap_line_xdyd::xd#5>=(byte) bitmap_line_xdyd::e#1) goto bitmap_line_xdyd::@2 to:bitmap_line_xdyd::@3 bitmap_line_xdyd::@3: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@4 - [133] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 - [134] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 + [133] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 + [134] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 to:bitmap_line_xdyd::@2 bitmap_line_xdyd::@2: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@3 bitmap_line_xdyd::@4 - [135] (byte) bitmap_line_xdyd::e#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 ) - [135] (byte) bitmap_line_xdyd::y#6 ? phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::y#3 ) - [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [135] (byte) bitmap_line_xdyd::e#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::e#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::e#1 ) + [135] (byte) bitmap_line_xdyd::y#6 ← phi( bitmap_line_xdyd::@3/(byte) bitmap_line_xdyd::y#2 bitmap_line_xdyd::@4/(byte) bitmap_line_xdyd::y#3 ) + [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [137] if((byte) bitmap_line_xdyd::x#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6) goto bitmap_line_xdyd::@1 to:bitmap_line_xdyd::@return bitmap_line_xdyd::@return: scope:[bitmap_line_xdyd] from bitmap_line_xdyd::@2 [138] return to:@return bitmap_line_ydxd: scope:[bitmap_line_ydxd] from bitmap_line::@10 bitmap_line::@6 - [139] (byte) bitmap_line_ydxd::y1#6 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#1 ) - [139] (byte) bitmap_line_ydxd::yd#5 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#1 ) - [139] (byte) bitmap_line_ydxd::y#7 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y#1 ) - [139] (byte) bitmap_line_ydxd::x#5 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#0 bitmap_line::@6/(byte) bitmap_line_ydxd::x#1 ) - [139] (byte) bitmap_line_ydxd::xd#2 ? phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#1 ) - [140] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [139] (byte) bitmap_line_ydxd::y1#6 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y1#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y1#1 ) + [139] (byte) bitmap_line_ydxd::yd#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::yd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::yd#1 ) + [139] (byte) bitmap_line_ydxd::y#7 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::y#0 bitmap_line::@6/(byte) bitmap_line_ydxd::y#1 ) + [139] (byte) bitmap_line_ydxd::x#5 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::x#0 bitmap_line::@6/(byte) bitmap_line_ydxd::x#1 ) + [139] (byte) bitmap_line_ydxd::xd#2 ← phi( bitmap_line::@10/(byte) bitmap_line_ydxd::xd#0 bitmap_line::@6/(byte) bitmap_line_ydxd::xd#1 ) + [140] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 to:bitmap_line_ydxd::@1 bitmap_line_ydxd::@1: scope:[bitmap_line_ydxd] from bitmap_line_ydxd bitmap_line_ydxd::@2 - [141] (byte) bitmap_line_ydxd::e#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) - [141] (byte) bitmap_line_ydxd::y#2 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) - [141] (byte) bitmap_line_ydxd::x#3 ? phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) - [142] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - [143] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 + [141] (byte) bitmap_line_ydxd::e#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::e#0 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::e#6 ) + [141] (byte) bitmap_line_ydxd::y#2 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::y#7 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::y#3 ) + [141] (byte) bitmap_line_ydxd::x#3 ← phi( bitmap_line_ydxd/(byte) bitmap_line_ydxd::x#5 bitmap_line_ydxd::@2/(byte) bitmap_line_ydxd::x#6 ) + [142] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + [143] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 [144] call bitmap_plot to:bitmap_line_ydxd::@4 bitmap_line_ydxd::@4: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@1 - [145] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 - [146] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 + [145] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 + [146] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [147] if((byte) bitmap_line_ydxd::yd#5>=(byte) bitmap_line_ydxd::e#1) goto bitmap_line_ydxd::@2 to:bitmap_line_ydxd::@3 bitmap_line_ydxd::@3: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@4 - [148] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 - [149] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 + [148] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 + [149] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 to:bitmap_line_ydxd::@2 bitmap_line_ydxd::@2: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@3 bitmap_line_ydxd::@4 - [150] (byte) bitmap_line_ydxd::e#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 ) - [150] (byte) bitmap_line_ydxd::x#6 ? phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::x#3 ) - [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [150] (byte) bitmap_line_ydxd::e#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::e#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::e#1 ) + [150] (byte) bitmap_line_ydxd::x#6 ← phi( bitmap_line_ydxd::@3/(byte) bitmap_line_ydxd::x#2 bitmap_line_ydxd::@4/(byte) bitmap_line_ydxd::x#3 ) + [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 [152] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 to:bitmap_line_ydxd::@return bitmap_line_ydxd::@return: scope:[bitmap_line_ydxd] from bitmap_line_ydxd::@2 @@ -2263,32 +2263,32 @@ init_screen: scope:[init_screen] from main::@3 [154] phi() to:init_screen::@1 init_screen::@1: scope:[init_screen] from init_screen init_screen::@1 - [155] (byte*) init_screen::c#2 ? phi( init_screen/(const byte*) SCREEN#0 init_screen::@1/(byte*) init_screen::c#1 ) - [156] *((byte*) init_screen::c#2) ? (byte/signed byte/word/signed word/dword/signed dword) $14 - [157] (byte*) init_screen::c#1 ? ++ (byte*) init_screen::c#2 + [155] (byte*) init_screen::c#2 ← phi( init_screen/(const byte*) SCREEN#0 init_screen::@1/(byte*) init_screen::c#1 ) + [156] *((byte*) init_screen::c#2) ← (byte/signed byte/word/signed word/dword/signed dword) $14 + [157] (byte*) init_screen::c#1 ← ++ (byte*) init_screen::c#2 [158] if((byte*) init_screen::c#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) $400) goto init_screen::@1 to:init_screen::@return init_screen::@return: scope:[init_screen] from init_screen::@1 [159] return to:@return bitmap_clear: scope:[bitmap_clear] from main::@2 - [160] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) - [161] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + [160] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) + [161] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - [162] (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - [162] (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) + [162] (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + [162] (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - [163] (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - [163] (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - [164] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [165] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - [166] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 + [163] (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + [163] (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + [164] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [165] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + [166] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 [167] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - [168] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 + [168] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 [169] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 @@ -2298,38 +2298,38 @@ bitmap_init: scope:[bitmap_init] from main [171] phi() to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - [172] (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - [172] (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - [173] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 - [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 - [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) BITMAP#0 - [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - [177] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [172] (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + [172] (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + [173] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 + [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 + [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) BITMAP#0 + [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + [177] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [178] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 to:bitmap_init::@2 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@6 - [179] (byte) bitmap_init::bits#4 ? phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) - [180] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 + [179] (byte) bitmap_init::bits#4 ← phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) + [180] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 [181] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 to:bitmap_init::@3 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@2 bitmap_init::@4 - [182] (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@2/((byte*))(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) - [182] (byte) bitmap_init::y#2 ? phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) - [183] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [184] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 - [185] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 - [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 - [187] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 - [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 - [189] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [182] (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@2/((byte*))(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) + [182] (byte) bitmap_init::y#2 ← phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) + [183] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [184] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 + [185] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 + [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 + [187] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 + [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 + [189] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [190] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@3 - [191] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 + [191] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 to:bitmap_init::@4 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@3 bitmap_init::@5 - [192] (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) - [193] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 + [192] (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) + [193] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 [194] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 to:bitmap_init::@return bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@4 @@ -2860,16 +2860,16 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL - //SEG11 [5] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BGCOL - //SEG12 [6] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 - //SEG13 [7] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #(SCREEN&$3fff)/$40|(BITMAP&$3fff)/$400 sta VIC_MEMORY //SEG14 [8] call bitmap_init @@ -2919,19 +2919,19 @@ lines: { jmp b1 //SEG32 lines::@1 b1: - //SEG33 [17] (byte) bitmap_line::x0#0 ? *((const byte[]) lines_x#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG33 [17] (byte) bitmap_line::x0#0 ← *((const byte[]) lines_x#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG34 [18] (byte) bitmap_line::x1#0 ? *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG34 [18] (byte) bitmap_line::x1#0 ← *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x+1,y sta bitmap_line.x1 - //SEG35 [19] (byte) bitmap_line::y0#0 ? *((const byte[]) lines_y#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG35 [19] (byte) bitmap_line::y0#0 ← *((const byte[]) lines_y#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y,y sta bitmap_line.y0 - //SEG36 [20] (byte) bitmap_line::y1#0 ? *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG36 [20] (byte) bitmap_line::y1#0 ← *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y+1,y sta bitmap_line.y1 @@ -2940,7 +2940,7 @@ lines: { jmp b2 //SEG38 lines::@2 b2: - //SEG39 [22] (byte) lines::l#1 ? ++ (byte) lines::l#2 -- vbuz1=_inc_vbuz1 + //SEG39 [22] (byte) lines::l#1 ← ++ (byte) lines::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG40 [23] if((byte) lines::l#1<(const byte) lines_cnt#0) goto lines::@1 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -2973,7 +2973,7 @@ bitmap_line: { jmp b2 //SEG45 bitmap_line::@2 b2: - //SEG46 [26] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG46 [26] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 lda x0 sec sbc x1 @@ -2985,7 +2985,7 @@ bitmap_line: { jmp b3 //SEG48 bitmap_line::@3 b3: - //SEG49 [28] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG49 [28] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 lda y0 sec sbc y1 @@ -2997,19 +2997,19 @@ bitmap_line: { jmp b4 //SEG51 bitmap_line::@4 b4: - //SEG52 [30] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG52 [30] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y - //SEG53 [31] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG53 [31] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_ydxi.x - //SEG54 [32] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG54 [32] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y1 - //SEG55 [33] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 + //SEG55 [33] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 lda yd_2 sta bitmap_line_ydxi.yd - //SEG56 [34] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG56 [34] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_ydxi.xd //SEG57 [35] call bitmap_line_ydxi @@ -3028,19 +3028,19 @@ bitmap_line: { rts //SEG66 bitmap_line::@8 b8: - //SEG67 [37] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG67 [37] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x - //SEG68 [38] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG68 [38] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyi.y - //SEG69 [39] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG69 [39] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x1 - //SEG70 [40] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG70 [40] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_xdyi.xd - //SEG71 [41] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 + //SEG71 [41] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 -- vbuz1=vbuz2 lda yd_2 sta bitmap_line_xdyi.yd //SEG72 [42] call bitmap_line_xdyi @@ -3055,7 +3055,7 @@ bitmap_line: { jmp breturn //SEG79 bitmap_line::@7 b7: - //SEG80 [43] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG80 [43] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 lda y1 sec sbc y0 @@ -3067,19 +3067,19 @@ bitmap_line: { jmp b10 //SEG82 bitmap_line::@10 b10: - //SEG83 [45] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG83 [45] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG84 [46] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG84 [46] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_ydxd.x - //SEG85 [47] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG85 [47] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y1 - //SEG86 [48] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 + //SEG86 [48] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 lda yd sta bitmap_line_ydxd.yd - //SEG87 [49] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG87 [49] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_ydxd.xd //SEG88 [50] call bitmap_line_ydxd @@ -3094,19 +3094,19 @@ bitmap_line: { jmp breturn //SEG95 bitmap_line::@9 b9: - //SEG96 [51] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG96 [51] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyd.x - //SEG97 [52] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG97 [52] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_xdyd.y - //SEG98 [53] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG98 [53] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x1 - //SEG99 [54] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 + //SEG99 [54] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 -- vbuz1=vbuz2 lda xd_2 sta bitmap_line_xdyd.xd - //SEG100 [55] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 + //SEG100 [55] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 -- vbuz1=vbuz2 lda yd sta bitmap_line_xdyd.yd //SEG101 [56] call bitmap_line_xdyd @@ -3121,7 +3121,7 @@ bitmap_line: { jmp breturn //SEG108 bitmap_line::@1 b1: - //SEG109 [57] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG109 [57] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x0 @@ -3133,7 +3133,7 @@ bitmap_line: { jmp b5 //SEG111 bitmap_line::@5 b5: - //SEG112 [59] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG112 [59] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuz3 lda y0 sec sbc y1 @@ -3145,19 +3145,19 @@ bitmap_line: { jmp b6 //SEG114 bitmap_line::@6 b6: - //SEG115 [61] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG115 [61] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxd.y - //SEG116 [62] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG116 [62] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_ydxd.x - //SEG117 [63] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG117 [63] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y1 - //SEG118 [64] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 + //SEG118 [64] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 lda yd_10 sta bitmap_line_ydxd.yd - //SEG119 [65] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG119 [65] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_ydxd.xd //SEG120 [66] call bitmap_line_ydxd @@ -3172,19 +3172,19 @@ bitmap_line: { jmp breturn //SEG127 bitmap_line::@12 b12: - //SEG128 [67] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG128 [67] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x - //SEG129 [68] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG129 [68] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_xdyd.y - //SEG130 [69] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG130 [69] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyd.x1 - //SEG131 [70] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG131 [70] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_xdyd.xd - //SEG132 [71] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 + //SEG132 [71] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 -- vbuz1=vbuz2 lda yd_10 sta bitmap_line_xdyd.yd //SEG133 [72] call bitmap_line_xdyd @@ -3199,7 +3199,7 @@ bitmap_line: { jmp breturn //SEG140 bitmap_line::@11 b11: - //SEG141 [73] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG141 [73] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuz2_minus_vbuz3 lda y1 sec sbc y0 @@ -3211,19 +3211,19 @@ bitmap_line: { jmp b14 //SEG143 bitmap_line::@14 b14: - //SEG144 [75] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG144 [75] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG145 [76] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG145 [76] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_ydxi.x - //SEG146 [77] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 + //SEG146 [77] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuz2 lda y1 sta bitmap_line_ydxi.y1 - //SEG147 [78] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 + //SEG147 [78] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 lda yd_11 sta bitmap_line_ydxi.yd - //SEG148 [79] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG148 [79] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_ydxi.xd //SEG149 [80] call bitmap_line_ydxi @@ -3238,19 +3238,19 @@ bitmap_line: { jmp breturn //SEG156 bitmap_line::@13 b13: - //SEG157 [81] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG157 [81] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyi.x - //SEG158 [82] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG158 [82] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_xdyi.y - //SEG159 [83] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG159 [83] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x1 - //SEG160 [84] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 + //SEG160 [84] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 -- vbuz1=vbuz2 lda xd sta bitmap_line_xdyi.xd - //SEG161 [85] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 + //SEG161 [85] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 -- vbuz1=vbuz2 lda yd_11 sta bitmap_line_xdyi.yd //SEG162 [86] call bitmap_line_xdyi @@ -3274,7 +3274,7 @@ bitmap_line_xdyi: { .label xd = 4 .label yd = 3 .label e = 8 - //SEG170 [88] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG170 [88] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -3287,10 +3287,10 @@ bitmap_line_xdyi: { jmp b1 //SEG175 bitmap_line_xdyi::@1 b1: - //SEG176 [90] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 -- vbuz1=vbuz2 + //SEG176 [90] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG177 [91] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuz1=vbuz2 + //SEG177 [91] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG178 [92] call bitmap_plot @@ -3302,9 +3302,9 @@ bitmap_line_xdyi: { jmp b4 //SEG182 bitmap_line_xdyi::@4 b4: - //SEG183 [93] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 + //SEG183 [93] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG184 [94] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG184 [94] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -3316,9 +3316,9 @@ bitmap_line_xdyi: { jmp b3 //SEG186 bitmap_line_xdyi::@3 b3: - //SEG187 [96] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG187 [96] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG188 [97] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG188 [97] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -3331,7 +3331,7 @@ bitmap_line_xdyi: { jmp b2 //SEG192 bitmap_line_xdyi::@2 b2: - //SEG193 [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG193 [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -3354,19 +3354,19 @@ bitmap_plot: { .label plotter_y = $35 .label x = 9 .label y = $a - //SEG198 [103] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG198 [103] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy x lda bitmap_plot_xhi,y sta plotter_x+1 lda bitmap_plot_xlo,y sta plotter_x - //SEG199 [104] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG199 [104] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy y lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG200 [105] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG200 [105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz2_plus_vwuz3 lda plotter_x clc adc plotter_y @@ -3374,13 +3374,13 @@ bitmap_plot: { lda plotter_x+1 adc plotter_y+1 sta _0+1 - //SEG201 [106] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuz3 + //SEG201 [106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuz3 ldy #0 lda (_0),y ldy x ora bitmap_plot_bit,y sta _1 - //SEG202 [107] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuz2 + //SEG202 [107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuz2 lda _1 ldy #0 sta (_0),y @@ -3400,7 +3400,7 @@ bitmap_line_ydxi: { .label yd = $c .label xd = $b .label e = $10 - //SEG206 [110] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG206 [110] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -3413,10 +3413,10 @@ bitmap_line_ydxi: { jmp b1 //SEG211 bitmap_line_ydxi::@1 b1: - //SEG212 [112] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 -- vbuz1=vbuz2 + //SEG212 [112] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG213 [113] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuz1=vbuz2 + //SEG213 [113] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG214 [114] call bitmap_plot @@ -3428,9 +3428,9 @@ bitmap_line_ydxi: { jmp b4 //SEG218 bitmap_line_ydxi::@4 b4: - //SEG219 [115] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG219 [115] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG220 [116] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG220 [116] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -3442,9 +3442,9 @@ bitmap_line_ydxi: { jmp b3 //SEG222 bitmap_line_ydxi::@3 b3: - //SEG223 [118] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuz1=_inc_vbuz1 + //SEG223 [118] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG224 [119] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG224 [119] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -3457,7 +3457,7 @@ bitmap_line_ydxi: { jmp b2 //SEG228 bitmap_line_ydxi::@2 b2: - //SEG229 [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG229 [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy y1 iny sty _6 @@ -3481,7 +3481,7 @@ bitmap_line_xdyd: { .label xd = $12 .label yd = $11 .label e = $16 - //SEG234 [125] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG234 [125] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -3494,10 +3494,10 @@ bitmap_line_xdyd: { jmp b1 //SEG239 bitmap_line_xdyd::@1 b1: - //SEG240 [127] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 -- vbuz1=vbuz2 + //SEG240 [127] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG241 [128] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuz1=vbuz2 + //SEG241 [128] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG242 [129] call bitmap_plot @@ -3509,9 +3509,9 @@ bitmap_line_xdyd: { jmp b4 //SEG246 bitmap_line_xdyd::@4 b4: - //SEG247 [130] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 + //SEG247 [130] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuz1=_inc_vbuz1 inc x - //SEG248 [131] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG248 [131] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -3523,9 +3523,9 @@ bitmap_line_xdyd: { jmp b3 //SEG250 bitmap_line_xdyd::@3 b3: - //SEG251 [133] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG251 [133] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG252 [134] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG252 [134] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -3538,7 +3538,7 @@ bitmap_line_xdyd: { jmp b2 //SEG256 bitmap_line_xdyd::@2 b2: - //SEG257 [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG257 [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -3562,7 +3562,7 @@ bitmap_line_ydxd: { .label yd = $18 .label xd = $17 .label e = $1c - //SEG262 [140] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG262 [140] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -3575,10 +3575,10 @@ bitmap_line_ydxd: { jmp b1 //SEG267 bitmap_line_ydxd::@1 b1: - //SEG268 [142] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 -- vbuz1=vbuz2 + //SEG268 [142] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 -- vbuz1=vbuz2 lda x sta bitmap_plot.x - //SEG269 [143] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuz1=vbuz2 + //SEG269 [143] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuz1=vbuz2 lda y sta bitmap_plot.y //SEG270 [144] call bitmap_plot @@ -3590,9 +3590,9 @@ bitmap_line_ydxd: { jmp b4 //SEG274 bitmap_line_ydxd::@4 b4: - //SEG275 [145] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG275 [145] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG276 [146] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG276 [146] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -3604,9 +3604,9 @@ bitmap_line_ydxd: { jmp b3 //SEG278 bitmap_line_ydxd::@3 b3: - //SEG279 [148] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuz1=_dec_vbuz1 + //SEG279 [148] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuz1=_dec_vbuz1 dec x - //SEG280 [149] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG280 [149] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -3619,7 +3619,7 @@ bitmap_line_ydxd: { jmp b2 //SEG284 bitmap_line_ydxd::@2 b2: - //SEG285 [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG285 [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy y1 iny sty _6 @@ -3650,11 +3650,11 @@ init_screen: { jmp b1 //SEG294 init_screen::@1 b1: - //SEG295 [156] *((byte*) init_screen::c#2) ? (byte/signed byte/word/signed word/dword/signed dword) $14 -- _deref_pbuz1=vbuc1 + //SEG295 [156] *((byte*) init_screen::c#2) ← (byte/signed byte/word/signed word/dword/signed dword) $14 -- _deref_pbuz1=vbuc1 lda #$14 ldy #0 sta (c),y - //SEG296 [157] (byte*) init_screen::c#1 ? ++ (byte*) init_screen::c#2 -- pbuz1=_inc_pbuz1 + //SEG296 [157] (byte*) init_screen::c#1 ← ++ (byte*) init_screen::c#2 -- pbuz1=_inc_pbuz1 inc c bne !+ inc c+1 @@ -3679,12 +3679,12 @@ bitmap_clear: { .label x = $22 .label y = $1f .label _3 = $3d - //SEG301 [160] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG301 [160] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG302 [161] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 + //SEG302 [161] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 lda _3 sta bitmap lda _3+1 @@ -3717,16 +3717,16 @@ bitmap_clear: { jmp b2 //SEG316 bitmap_clear::@2 b2: - //SEG317 [164] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG317 [164] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG318 [165] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG318 [165] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG319 [166] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 + //SEG319 [166] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG320 [167] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -3735,7 +3735,7 @@ bitmap_clear: { jmp b3 //SEG321 bitmap_clear::@3 b3: - //SEG322 [168] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG322 [168] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG323 [169] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -3776,23 +3776,23 @@ bitmap_init: { jmp b1 //SEG333 bitmap_init::@1 b1: - //SEG334 [173] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuz1=vbuz2_band_vbuc1 + //SEG334 [173] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuz1=vbuz2_band_vbuc1 lda #$f8 and x sta _0 - //SEG335 [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG335 [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuz1=vbuz2 lda _0 ldy x sta bitmap_plot_xlo,y - //SEG336 [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) BITMAP#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG336 [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) BITMAP#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #>BITMAP ldy x sta bitmap_plot_xhi,y - //SEG337 [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG337 [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 lda bits ldy x sta bitmap_plot_bit,y - //SEG338 [177] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG338 [177] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr bits //SEG339 [178] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuz1_neq_0_then_la1 lda bits @@ -3806,7 +3806,7 @@ bitmap_init: { jmp b2 //SEG342 bitmap_init::@2 b2: - //SEG343 [180] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 + //SEG343 [180] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG344 [181] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuz1_neq_0_then_la1 lda x @@ -3830,29 +3830,29 @@ bitmap_init: { jmp b3 //SEG351 bitmap_init::@3 b3: - //SEG352 [183] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG352 [183] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _6 - //SEG353 [184] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 + //SEG353 [184] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 lda yoffs sta _7 - //SEG354 [185] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuz1=vbuz2_bor_vbuz3 + //SEG354 [185] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuz1=vbuz2_bor_vbuz3 lda _6 ora _7 sta _8 - //SEG355 [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG355 [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuz1=vbuz2 lda _8 ldy y sta bitmap_plot_ylo,y - //SEG356 [187] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 + //SEG356 [187] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 lda yoffs+1 sta _9 - //SEG357 [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG357 [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuz1=vbuz2 lda _9 ldy y sta bitmap_plot_yhi,y - //SEG358 [189] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG358 [189] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _10 @@ -3863,7 +3863,7 @@ bitmap_init: { jmp b5 //SEG360 bitmap_init::@5 b5: - //SEG361 [191] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG361 [191] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -3878,7 +3878,7 @@ bitmap_init: { jmp b4 //SEG364 bitmap_init::@4 b4: - //SEG365 [193] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 + //SEG365 [193] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 inc y //SEG366 [194] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuz1_neq_0_then_la1 lda y @@ -3910,32 +3910,32 @@ bitmap_init: { REGISTER UPLIFT POTENTIAL REGISTERS Equivalence Class zp ZP_BYTE:65 [ bitmap_init::$7 ] has ALU potential. -Statement [4] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [5] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [26] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a +Statement [4] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [5] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [26] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ lines::l#2 lines::l#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:40 [ bitmap_line::x0#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:41 [ bitmap_line::x1#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:42 [ bitmap_line::y0#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:43 [ bitmap_line::y1#0 ] -Statement [28] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a +Statement [28] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:44 [ bitmap_line::xd#2 ] -Statement [43] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a -Statement [57] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a -Statement [59] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a +Statement [43] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a +Statement [57] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a +Statement [59] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:47 [ bitmap_line::xd#1 ] -Statement [73] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a -Statement [88] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a +Statement [73] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a +Statement [88] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ bitmap_line_xdyi::x#3 bitmap_line_xdyi::x#6 bitmap_line_xdyi::x#0 bitmap_line_xdyi::x#1 bitmap_line_xdyi::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ bitmap_line_xdyi::y#3 bitmap_line_xdyi::y#5 bitmap_line_xdyi::y#0 bitmap_line_xdyi::y#1 bitmap_line_xdyi::y#6 bitmap_line_xdyi::y#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x1#0 bitmap_line_xdyi::x1#1 ] -Statement [94] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a -Statement [97] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a -Statement [103] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a +Statement [94] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a +Statement [97] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a +Statement [103] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ bitmap_line_xdyi::e#3 bitmap_line_xdyi::e#0 bitmap_line_xdyi::e#6 bitmap_line_xdyi::e#2 bitmap_line_xdyi::e#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ bitmap_plot::x#4 bitmap_plot::x#1 bitmap_plot::x#0 bitmap_plot::x#3 bitmap_plot::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:10 [ bitmap_plot::y#4 bitmap_plot::y#1 bitmap_plot::y#0 bitmap_plot::y#3 bitmap_plot::y#2 ] @@ -3957,9 +3957,9 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ b Removing always clobbered register reg byte a as potential for zp ZP_BYTE:26 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:27 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] -Statement [104] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a -Statement [105] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a -Statement [106] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y +Statement [104] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a +Statement [105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a +Statement [106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ lines::l#2 lines::l#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:4 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] @@ -3985,69 +3985,69 @@ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:25 [ b Removing always clobbered register reg byte y as potential for zp ZP_BYTE:26 [ bitmap_line_ydxd::x#3 bitmap_line_ydxd::x#5 bitmap_line_ydxd::x#0 bitmap_line_ydxd::x#1 bitmap_line_ydxd::x#6 bitmap_line_ydxd::x#2 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:27 [ bitmap_line_ydxd::y#2 bitmap_line_ydxd::y#7 bitmap_line_ydxd::y#0 bitmap_line_ydxd::y#1 bitmap_line_ydxd::y#3 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:28 [ bitmap_line_ydxd::e#3 bitmap_line_ydxd::e#0 bitmap_line_ydxd::e#6 bitmap_line_ydxd::e#2 bitmap_line_ydxd::e#1 ] -Statement [107] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y -Statement [110] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a -Statement [116] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a -Statement [119] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a -Statement [125] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a -Statement [131] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a -Statement [134] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a -Statement [140] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a -Statement [146] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a -Statement [149] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a -Statement [156] *((byte*) init_screen::c#2) ? (byte/signed byte/word/signed word/dword/signed dword) $14 [ init_screen::c#2 ] ( main:2::init_screen:12 [ init_screen::c#2 ] ) always clobbers reg byte a reg byte y +Statement [107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y +Statement [110] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a +Statement [116] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a +Statement [119] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a +Statement [125] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a +Statement [131] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a +Statement [134] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a +Statement [140] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a +Statement [146] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a +Statement [149] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a +Statement [156] *((byte*) init_screen::c#2) ← (byte/signed byte/word/signed word/dword/signed dword) $14 [ init_screen::c#2 ] ( main:2::init_screen:12 [ init_screen::c#2 ] ) always clobbers reg byte a reg byte y Statement [158] if((byte*) init_screen::c#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) $400) goto init_screen::@1 [ init_screen::c#1 ] ( main:2::init_screen:12 [ init_screen::c#1 ] ) always clobbers reg byte a -Statement [160] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:10 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [161] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:10 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [164] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:10 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [160] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:10 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [161] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:10 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [164] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:10 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:31 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:31 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:34 [ bitmap_clear::x#2 bitmap_clear::x#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:34 [ bitmap_clear::x#2 bitmap_clear::x#1 ] -Statement [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:35 [ bitmap_init::x#2 bitmap_init::x#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ bitmap_init::bits#3 bitmap_init::bits#4 bitmap_init::bits#1 ] -Statement [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [191] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [191] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:37 [ bitmap_init::y#2 bitmap_init::y#1 ] -Statement [4] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [5] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [26] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a -Statement [28] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a -Statement [43] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a -Statement [57] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a -Statement [59] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a -Statement [73] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a -Statement [88] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a -Statement [94] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a -Statement [97] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a -Statement [103] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a -Statement [104] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a -Statement [105] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a -Statement [106] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y -Statement [107] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y -Statement [110] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a -Statement [116] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a -Statement [119] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a -Statement [125] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a -Statement [131] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a -Statement [134] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a -Statement [140] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a -Statement [146] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a -Statement [149] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a -Statement [156] *((byte*) init_screen::c#2) ? (byte/signed byte/word/signed word/dword/signed dword) $14 [ init_screen::c#2 ] ( main:2::init_screen:12 [ init_screen::c#2 ] ) always clobbers reg byte a reg byte y +Statement [4] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [5] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [26] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 ] ) always clobbers reg byte a +Statement [28] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#2 ] ) always clobbers reg byte a +Statement [43] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#2 bitmap_line::yd#1 ] ) always clobbers reg byte a +Statement [57] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 ] ) always clobbers reg byte a +Statement [59] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#10 ] ) always clobbers reg byte a +Statement [73] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 [ bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ( main:2::lines:14::bitmap_line:21 [ lines::l#2 bitmap_line::x0#0 bitmap_line::x1#0 bitmap_line::y0#0 bitmap_line::y1#0 bitmap_line::xd#1 bitmap_line::yd#11 ] ) always clobbers reg byte a +Statement [88] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::x#6 bitmap_line_xdyi::y#5 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::e#0 ] ) always clobbers reg byte a +Statement [94] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::y#3 bitmap_line_xdyi::x#2 bitmap_line_xdyi::e#1 ] ) always clobbers reg byte a +Statement [97] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#2 bitmap_line_xdyi::y#2 bitmap_line_xdyi::e#2 ] ) always clobbers reg byte a +Statement [103] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::y#4 bitmap_plot::plotter_x#0 ] ) always clobbers reg byte a +Statement [104] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) [ bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::plotter_x#0 bitmap_plot::plotter_y#0 ] ) always clobbers reg byte a +Statement [105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 [ bitmap_plot::x#4 bitmap_plot::$0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::x#4 bitmap_plot::$0 ] ) always clobbers reg byte a +Statement [106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) [ bitmap_plot::$0 bitmap_plot::$1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 bitmap_plot::$0 bitmap_plot::$1 ] ) always clobbers reg byte a reg byte y +Statement [107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 [ ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:42::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyi:86::bitmap_plot:92 [ lines::l#2 bitmap_line_xdyi::yd#2 bitmap_line_xdyi::xd#5 bitmap_line_xdyi::x1#6 bitmap_line_xdyi::x#3 bitmap_line_xdyi::y#3 bitmap_line_xdyi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80::bitmap_plot:114 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#3 bitmap_line_ydxi::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72::bitmap_plot:129 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#3 bitmap_line_xdyd::y#3 bitmap_line_xdyd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66::bitmap_plot:144 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#2 bitmap_line_ydxd::e#3 ] ) always clobbers reg byte y +Statement [110] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::x#5 bitmap_line_ydxi::y#6 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::e#0 ] ) always clobbers reg byte a +Statement [116] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::x#3 bitmap_line_ydxi::y#2 bitmap_line_ydxi::e#1 ] ) always clobbers reg byte a +Statement [119] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 [ bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:35 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxi:80 [ lines::l#2 bitmap_line_ydxi::xd#2 bitmap_line_ydxi::yd#5 bitmap_line_ydxi::y1#6 bitmap_line_ydxi::y#2 bitmap_line_ydxi::x#2 bitmap_line_ydxi::e#2 ] ) always clobbers reg byte a +Statement [125] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::x#6 bitmap_line_xdyd::y#5 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::e#0 ] ) always clobbers reg byte a +Statement [131] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::y#3 bitmap_line_xdyd::x#2 bitmap_line_xdyd::e#1 ] ) always clobbers reg byte a +Statement [134] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 [ bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:56 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_xdyd:72 [ lines::l#2 bitmap_line_xdyd::yd#2 bitmap_line_xdyd::xd#5 bitmap_line_xdyd::x1#6 bitmap_line_xdyd::x#2 bitmap_line_xdyd::y#2 bitmap_line_xdyd::e#2 ] ) always clobbers reg byte a +Statement [140] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::x#5 bitmap_line_ydxd::y#7 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::e#0 ] ) always clobbers reg byte a +Statement [146] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::x#3 bitmap_line_ydxd::y#3 bitmap_line_ydxd::e#1 ] ) always clobbers reg byte a +Statement [149] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 [ bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ( main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:50 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] main:2::lines:14::bitmap_line:21::bitmap_line_ydxd:66 [ lines::l#2 bitmap_line_ydxd::xd#2 bitmap_line_ydxd::yd#5 bitmap_line_ydxd::y1#6 bitmap_line_ydxd::y#3 bitmap_line_ydxd::x#2 bitmap_line_ydxd::e#2 ] ) always clobbers reg byte a +Statement [156] *((byte*) init_screen::c#2) ← (byte/signed byte/word/signed word/dword/signed dword) $14 [ init_screen::c#2 ] ( main:2::init_screen:12 [ init_screen::c#2 ] ) always clobbers reg byte a reg byte y Statement [158] if((byte*) init_screen::c#1!=(const byte*) SCREEN#0+(word/signed word/dword/signed dword) $400) goto init_screen::@1 [ init_screen::c#1 ] ( main:2::init_screen:12 [ init_screen::c#1 ] ) always clobbers reg byte a -Statement [160] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:10 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [161] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:10 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [164] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:10 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y -Statement [173] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ) always clobbers reg byte a -Statement [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a -Statement [183] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ) always clobbers reg byte a -Statement [189] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ) always clobbers reg byte a -Statement [191] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [160] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:10 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [161] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:10 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [164] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:10 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [173] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 bitmap_init::$0 ] ) always clobbers reg byte a +Statement [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) BITMAP#0 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 [ bitmap_init::x#2 bitmap_init::bits#3 ] ( main:2::bitmap_init:8 [ bitmap_init::x#2 bitmap_init::bits#3 ] ) always clobbers reg byte a +Statement [183] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$6 ] ) always clobbers reg byte a +Statement [189] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$10 ] ) always clobbers reg byte a +Statement [191] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ lines::l#2 lines::l#1 ] : zp ZP_BYTE:2 , reg byte x , Potential registers zp ZP_BYTE:3 [ bitmap_line_xdyi::yd#2 bitmap_line_xdyi::yd#0 bitmap_line_xdyi::yd#1 ] : zp ZP_BYTE:3 , reg byte x , Potential registers zp ZP_BYTE:4 [ bitmap_line_xdyi::xd#5 bitmap_line_xdyi::xd#0 bitmap_line_xdyi::xd#1 ] : zp ZP_BYTE:4 , reg byte x , @@ -4288,16 +4288,16 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL - //SEG11 [5] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BGCOL - //SEG12 [6] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 - //SEG13 [7] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #(SCREEN&$3fff)/$40|(BITMAP&$3fff)/$400 sta VIC_MEMORY //SEG14 [8] call bitmap_init @@ -4347,19 +4347,19 @@ lines: { jmp b1 //SEG32 lines::@1 b1: - //SEG33 [17] (byte) bitmap_line::x0#0 ? *((const byte[]) lines_x#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG33 [17] (byte) bitmap_line::x0#0 ← *((const byte[]) lines_x#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG34 [18] (byte) bitmap_line::x1#0 ? *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG34 [18] (byte) bitmap_line::x1#0 ← *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x+1,y sta bitmap_line.x1 - //SEG35 [19] (byte) bitmap_line::y0#0 ? *((const byte[]) lines_y#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG35 [19] (byte) bitmap_line::y0#0 ← *((const byte[]) lines_y#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_y,y sta bitmap_line.y0 - //SEG36 [20] (byte) bitmap_line::y1#0 ? *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuyy=pbuc1_derefidx_vbuz1 + //SEG36 [20] (byte) bitmap_line::y1#0 ← *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuyy=pbuc1_derefidx_vbuz1 ldx l ldy lines_y+1,x //SEG37 [21] call bitmap_line @@ -4367,7 +4367,7 @@ lines: { jmp b2 //SEG38 lines::@2 b2: - //SEG39 [22] (byte) lines::l#1 ? ++ (byte) lines::l#2 -- vbuz1=_inc_vbuz1 + //SEG39 [22] (byte) lines::l#1 ← ++ (byte) lines::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG40 [23] if((byte) lines::l#1<(const byte) lines_cnt#0) goto lines::@1 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -4395,7 +4395,7 @@ bitmap_line: { jmp b2 //SEG45 bitmap_line::@2 b2: - //SEG46 [26] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG46 [26] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 lda x0 sec sbc x1 @@ -4409,7 +4409,7 @@ bitmap_line: { jmp b3 //SEG48 bitmap_line::@3 b3: - //SEG49 [28] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy + //SEG49 [28] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy tya eor #$ff sec @@ -4422,13 +4422,13 @@ bitmap_line: { jmp b4 //SEG51 bitmap_line::@4 b4: - //SEG52 [30] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG52 [30] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxi.y - //SEG53 [31] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG53 [31] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG54 [32] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 - //SEG55 [33] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 - //SEG56 [34] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + //SEG54 [32] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 + //SEG55 [33] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 + //SEG56 [34] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 //SEG57 [35] call bitmap_line_ydxi //SEG58 [109] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi] bitmap_line_ydxi_from_b4: @@ -4445,13 +4445,13 @@ bitmap_line: { rts //SEG66 bitmap_line::@8 b8: - //SEG67 [37] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG67 [37] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG68 [38] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG68 [38] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_xdyi.y - //SEG69 [39] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - //SEG70 [40] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - //SEG71 [41] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 + //SEG69 [39] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + //SEG70 [40] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + //SEG71 [41] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 //SEG72 [42] call bitmap_line_xdyi //SEG73 [87] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi] bitmap_line_xdyi_from_b8: @@ -4464,7 +4464,7 @@ bitmap_line: { jmp breturn //SEG79 bitmap_line::@7 b7: - //SEG80 [43] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 + //SEG80 [43] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 tya sec sbc y0 @@ -4476,15 +4476,15 @@ bitmap_line: { jmp b10 //SEG82 bitmap_line::@10 b10: - //SEG83 [45] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG83 [45] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG84 [46] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG84 [46] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG85 [47] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG85 [47] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxd.y1 - //SEG86 [48] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 - //SEG87 [49] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + //SEG86 [48] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 + //SEG87 [49] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 //SEG88 [50] call bitmap_line_ydxd //SEG89 [139] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd] bitmap_line_ydxd_from_b10: @@ -4497,15 +4497,15 @@ bitmap_line: { jmp breturn //SEG95 bitmap_line::@9 b9: - //SEG96 [51] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG96 [51] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG97 [52] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG97 [52] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_xdyd.y - //SEG98 [53] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG98 [53] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x1 - //SEG99 [54] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - //SEG100 [55] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 + //SEG99 [54] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + //SEG100 [55] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 //SEG101 [56] call bitmap_line_xdyd //SEG102 [124] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd] bitmap_line_xdyd_from_b9: @@ -4518,7 +4518,7 @@ bitmap_line: { jmp breturn //SEG108 bitmap_line::@1 b1: - //SEG109 [57] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG109 [57] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x0 @@ -4532,7 +4532,7 @@ bitmap_line: { jmp b5 //SEG111 bitmap_line::@5 b5: - //SEG112 [59] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy + //SEG112 [59] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy tya eor #$ff sec @@ -4545,13 +4545,13 @@ bitmap_line: { jmp b6 //SEG114 bitmap_line::@6 b6: - //SEG115 [61] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG115 [61] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxd.y - //SEG116 [62] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG116 [62] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG117 [63] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - //SEG118 [64] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - //SEG119 [65] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + //SEG117 [63] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + //SEG118 [64] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + //SEG119 [65] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 //SEG120 [66] call bitmap_line_ydxd //SEG121 [139] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd] bitmap_line_ydxd_from_b6: @@ -4564,12 +4564,12 @@ bitmap_line: { jmp breturn //SEG127 bitmap_line::@12 b12: - //SEG128 [67] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG128 [67] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG129 [68] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - //SEG130 [69] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 - //SEG131 [70] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - //SEG132 [71] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 + //SEG129 [68] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + //SEG130 [69] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 + //SEG131 [70] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + //SEG132 [71] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 //SEG133 [72] call bitmap_line_xdyd //SEG134 [124] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd] bitmap_line_xdyd_from_b12: @@ -4582,7 +4582,7 @@ bitmap_line: { jmp breturn //SEG140 bitmap_line::@11 b11: - //SEG141 [73] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 + //SEG141 [73] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 tya sec sbc y0 @@ -4594,15 +4594,15 @@ bitmap_line: { jmp b14 //SEG143 bitmap_line::@14 b14: - //SEG144 [75] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG144 [75] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG145 [76] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG145 [76] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG146 [77] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG146 [77] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxi.y1 - //SEG147 [78] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 - //SEG148 [79] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + //SEG147 [78] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 + //SEG148 [79] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 //SEG149 [80] call bitmap_line_ydxi //SEG150 [109] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi] bitmap_line_ydxi_from_b14: @@ -4615,14 +4615,14 @@ bitmap_line: { jmp breturn //SEG156 bitmap_line::@13 b13: - //SEG157 [81] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG157 [81] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG158 [82] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - //SEG159 [83] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG158 [82] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + //SEG159 [83] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x1 - //SEG160 [84] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - //SEG161 [85] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + //SEG160 [84] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + //SEG161 [85] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 //SEG162 [86] call bitmap_line_xdyi //SEG163 [87] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi] bitmap_line_xdyi_from_b13: @@ -4643,7 +4643,7 @@ bitmap_line_xdyi: { .label xd = 4 .label yd = 3 .label e = 7 - //SEG170 [88] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG170 [88] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -4656,8 +4656,8 @@ bitmap_line_xdyi: { jmp b1 //SEG175 bitmap_line_xdyi::@1 b1: - //SEG176 [90] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - //SEG177 [91] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 + //SEG176 [90] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + //SEG177 [91] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 ldy y //SEG178 [92] call bitmap_plot //SEG179 [102] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot] @@ -4668,9 +4668,9 @@ bitmap_line_xdyi: { jmp b4 //SEG182 bitmap_line_xdyi::@4 b4: - //SEG183 [93] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuxx=_inc_vbuxx + //SEG183 [93] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG184 [94] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG184 [94] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -4682,9 +4682,9 @@ bitmap_line_xdyi: { jmp b3 //SEG186 bitmap_line_xdyi::@3 b3: - //SEG187 [96] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG187 [96] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG188 [97] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG188 [97] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -4697,7 +4697,7 @@ bitmap_line_xdyi: { jmp b2 //SEG192 bitmap_line_xdyi::@2 b2: - //SEG193 [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG193 [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -4716,17 +4716,17 @@ bitmap_plot: { .label _0 = 9 .label plotter_x = 9 .label plotter_y = $b - //SEG198 [103] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG198 [103] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_xhi,x sta plotter_x+1 lda bitmap_plot_xlo,x sta plotter_x - //SEG199 [104] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG199 [104] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG200 [105] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG200 [105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 lda _0 clc adc plotter_y @@ -4734,11 +4734,11 @@ bitmap_plot: { lda _0+1 adc plotter_y+1 sta _0+1 - //SEG201 [106] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx + //SEG201 [106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx lda bitmap_plot_bit,x ldy #0 ora (_0),y - //SEG202 [107] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa + //SEG202 [107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa ldy #0 sta (_0),y jmp breturn @@ -4755,7 +4755,7 @@ bitmap_line_ydxi: { .label yd = 3 .label xd = 4 .label e = 5 - //SEG206 [110] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG206 [110] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -4768,8 +4768,8 @@ bitmap_line_ydxi: { jmp b1 //SEG211 bitmap_line_ydxi::@1 b1: - //SEG212 [112] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - //SEG213 [113] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 + //SEG212 [112] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + //SEG213 [113] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 ldy y //SEG214 [114] call bitmap_plot //SEG215 [102] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot] @@ -4780,9 +4780,9 @@ bitmap_line_ydxi: { jmp b4 //SEG218 bitmap_line_ydxi::@4 b4: - //SEG219 [115] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG219 [115] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG220 [116] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG220 [116] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -4794,9 +4794,9 @@ bitmap_line_ydxi: { jmp b3 //SEG222 bitmap_line_ydxi::@3 b3: - //SEG223 [118] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx + //SEG223 [118] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG224 [119] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG224 [119] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -4809,7 +4809,7 @@ bitmap_line_ydxi: { jmp b2 //SEG228 bitmap_line_ydxi::@2 b2: - //SEG229 [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 + //SEG229 [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 ldy y1 iny //SEG230 [122] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 -- vbuz1_neq_vbuyy_then_la1 @@ -4830,7 +4830,7 @@ bitmap_line_xdyd: { .label xd = 4 .label yd = 3 .label e = 5 - //SEG234 [125] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG234 [125] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -4843,8 +4843,8 @@ bitmap_line_xdyd: { jmp b1 //SEG239 bitmap_line_xdyd::@1 b1: - //SEG240 [127] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - //SEG241 [128] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 + //SEG240 [127] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + //SEG241 [128] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 ldy y //SEG242 [129] call bitmap_plot //SEG243 [102] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot] @@ -4855,9 +4855,9 @@ bitmap_line_xdyd: { jmp b4 //SEG246 bitmap_line_xdyd::@4 b4: - //SEG247 [130] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuxx=_inc_vbuxx + //SEG247 [130] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuxx=_inc_vbuxx inx - //SEG248 [131] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG248 [131] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -4869,9 +4869,9 @@ bitmap_line_xdyd: { jmp b3 //SEG250 bitmap_line_xdyd::@3 b3: - //SEG251 [133] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG251 [133] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG252 [134] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG252 [134] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -4884,7 +4884,7 @@ bitmap_line_xdyd: { jmp b2 //SEG256 bitmap_line_xdyd::@2 b2: - //SEG257 [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG257 [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -4905,7 +4905,7 @@ bitmap_line_ydxd: { .label yd = 3 .label xd = 4 .label e = 5 - //SEG262 [140] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG262 [140] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -4918,8 +4918,8 @@ bitmap_line_ydxd: { jmp b1 //SEG267 bitmap_line_ydxd::@1 b1: - //SEG268 [142] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - //SEG269 [143] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 + //SEG268 [142] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + //SEG269 [143] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 ldy y //SEG270 [144] call bitmap_plot //SEG271 [102] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot] @@ -4930,9 +4930,9 @@ bitmap_line_ydxd: { jmp b4 //SEG274 bitmap_line_ydxd::@4 b4: - //SEG275 [145] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG275 [145] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG276 [146] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG276 [146] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -4944,9 +4944,9 @@ bitmap_line_ydxd: { jmp b3 //SEG278 bitmap_line_ydxd::@3 b3: - //SEG279 [148] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx + //SEG279 [148] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx dex - //SEG280 [149] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG280 [149] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -4959,7 +4959,7 @@ bitmap_line_ydxd: { jmp b2 //SEG284 bitmap_line_ydxd::@2 b2: - //SEG285 [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 + //SEG285 [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 ldy y1 iny //SEG286 [152] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 -- vbuz1_neq_vbuyy_then_la1 @@ -4988,11 +4988,11 @@ init_screen: { jmp b1 //SEG294 init_screen::@1 b1: - //SEG295 [156] *((byte*) init_screen::c#2) ? (byte/signed byte/word/signed word/dword/signed dword) $14 -- _deref_pbuz1=vbuc1 + //SEG295 [156] *((byte*) init_screen::c#2) ← (byte/signed byte/word/signed word/dword/signed dword) $14 -- _deref_pbuz1=vbuc1 lda #$14 ldy #0 sta (c),y - //SEG296 [157] (byte*) init_screen::c#1 ? ++ (byte*) init_screen::c#2 -- pbuz1=_inc_pbuz1 + //SEG296 [157] (byte*) init_screen::c#1 ← ++ (byte*) init_screen::c#2 -- pbuz1=_inc_pbuz1 inc c bne !+ inc c+1 @@ -5016,12 +5016,12 @@ bitmap_clear: { .label bitmap = 9 .label y = 2 .label _3 = 9 - //SEG301 [160] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG301 [160] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG302 [161] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG302 [161] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG303 [162] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] b1_from_bitmap_clear: //SEG304 [162] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 @@ -5049,16 +5049,16 @@ bitmap_clear: { jmp b2 //SEG316 bitmap_clear::@2 b2: - //SEG317 [164] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG317 [164] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG318 [165] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG318 [165] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG319 [166] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG319 [166] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG320 [167] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 @@ -5066,7 +5066,7 @@ bitmap_clear: { jmp b3 //SEG321 bitmap_clear::@3 b3: - //SEG322 [168] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG322 [168] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG323 [169] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -5097,18 +5097,18 @@ bitmap_init: { jmp b1 //SEG333 bitmap_init::@1 b1: - //SEG334 [173] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 + //SEG334 [173] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 txa and #$f8 - //SEG335 [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG335 [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_xlo,x - //SEG336 [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG336 [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #>BITMAP sta bitmap_plot_xhi,x - //SEG337 [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy + //SEG337 [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy tya sta bitmap_plot_bit,x - //SEG338 [177] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 + //SEG338 [177] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 tya lsr tay @@ -5122,7 +5122,7 @@ bitmap_init: { jmp b2 //SEG342 bitmap_init::@2 b2: - //SEG343 [180] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG343 [180] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG344 [181] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -5144,20 +5144,20 @@ bitmap_init: { jmp b3 //SEG351 bitmap_init::@3 b3: - //SEG352 [183] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG352 [183] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _6 - //SEG353 [184] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG353 [184] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG354 [185] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa + //SEG354 [185] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa ora _6 - //SEG355 [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG355 [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG356 [187] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG356 [187] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG357 [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG357 [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG358 [189] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG358 [189] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG359 [190] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 @@ -5166,7 +5166,7 @@ bitmap_init: { jmp b5 //SEG360 bitmap_init::@5 b5: - //SEG361 [191] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG361 [191] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -5181,7 +5181,7 @@ bitmap_init: { jmp b4 //SEG364 bitmap_init::@4 b4: - //SEG365 [193] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG365 [193] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG366 [194] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -5843,15 +5843,15 @@ Score: 221044 //SEG8 @end //SEG9 main main: { - //SEG10 [4] *((const byte*) BORDERCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BORDERCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta BORDERCOL - //SEG11 [5] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 sta BGCOL - //SEG12 [6] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 - //SEG13 [7] *((const byte*) VIC_MEMORY#0) ? ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) VIC_MEMORY#0) ← ((byte))((word))(const byte*) SCREEN#0&(word/signed word/dword/signed dword) $3fff/(byte/signed byte/word/signed word/dword/signed dword) $40|((word))(const byte*) BITMAP#0&(word/signed word/dword/signed dword) $3fff/(word/signed word/dword/signed dword) $400 -- _deref_pbuc1=vbuc2 lda #(SCREEN&$3fff)/$40|(BITMAP&$3fff)/$400 sta VIC_MEMORY //SEG14 [8] call bitmap_init @@ -5885,23 +5885,23 @@ lines: { //SEG31 [16] phi (byte) lines::l#2 = (byte) lines::l#1 [phi:lines::@2->lines::@1#0] -- register_copy //SEG32 lines::@1 b1: - //SEG33 [17] (byte) bitmap_line::x0#0 ? *((const byte[]) lines_x#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG33 [17] (byte) bitmap_line::x0#0 ← *((const byte[]) lines_x#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy l lda lines_x,y sta bitmap_line.x0 - //SEG34 [18] (byte) bitmap_line::x1#0 ? *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG34 [18] (byte) bitmap_line::x1#0 ← *((const byte[]) lines_x#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 lda lines_x+1,y sta bitmap_line.x1 - //SEG35 [19] (byte) bitmap_line::y0#0 ? *((const byte[]) lines_y#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG35 [19] (byte) bitmap_line::y0#0 ← *((const byte[]) lines_y#0 + (byte) lines::l#2) -- vbuz1=pbuc1_derefidx_vbuz2 lda lines_y,y sta bitmap_line.y0 - //SEG36 [20] (byte) bitmap_line::y1#0 ? *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuyy=pbuc1_derefidx_vbuz1 + //SEG36 [20] (byte) bitmap_line::y1#0 ← *((const byte[]) lines_y#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) lines::l#2) -- vbuyy=pbuc1_derefidx_vbuz1 ldx l ldy lines_y+1,x //SEG37 [21] call bitmap_line jsr bitmap_line //SEG38 lines::@2 - //SEG39 [22] (byte) lines::l#1 ? ++ (byte) lines::l#2 -- vbuz1=_inc_vbuz1 + //SEG39 [22] (byte) lines::l#1 ← ++ (byte) lines::l#2 -- vbuz1=_inc_vbuz1 inc l //SEG40 [23] if((byte) lines::l#1<(const byte) lines_cnt#0) goto lines::@1 -- vbuz1_lt_vbuc1_then_la1 lda l @@ -5925,7 +5925,7 @@ bitmap_line: { cmp x1 bcc b1 //SEG45 bitmap_line::@2 - //SEG46 [26] (byte) bitmap_line::xd#2 ? (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG46 [26] (byte) bitmap_line::xd#2 ← (byte) bitmap_line::x0#0 - (byte) bitmap_line::x1#0 -- vbuz1=vbuz2_minus_vbuz3 sec sbc x1 sta xd @@ -5936,7 +5936,7 @@ bitmap_line: { bcs b7 !: //SEG48 bitmap_line::@3 - //SEG49 [28] (byte) bitmap_line::yd#2 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy + //SEG49 [28] (byte) bitmap_line::yd#2 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy tya eor #$ff sec @@ -5946,13 +5946,13 @@ bitmap_line: { cmp xd bcc b8 //SEG51 bitmap_line::@4 - //SEG52 [30] (byte) bitmap_line_ydxi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG52 [30] (byte) bitmap_line_ydxi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxi.y - //SEG53 [31] (byte) bitmap_line_ydxi::x#0 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG53 [31] (byte) bitmap_line_ydxi::x#0 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG54 [32] (byte) bitmap_line_ydxi::y1#0 ? (byte) bitmap_line::y0#0 - //SEG55 [33] (byte) bitmap_line_ydxi::yd#0 ? (byte) bitmap_line::yd#2 - //SEG56 [34] (byte) bitmap_line_ydxi::xd#0 ? (byte) bitmap_line::xd#2 + //SEG54 [32] (byte) bitmap_line_ydxi::y1#0 ← (byte) bitmap_line::y0#0 + //SEG55 [33] (byte) bitmap_line_ydxi::yd#0 ← (byte) bitmap_line::yd#2 + //SEG56 [34] (byte) bitmap_line_ydxi::xd#0 ← (byte) bitmap_line::xd#2 //SEG57 [35] call bitmap_line_ydxi //SEG58 [109] phi from bitmap_line::@4 to bitmap_line_ydxi [phi:bitmap_line::@4->bitmap_line_ydxi] //SEG59 [109] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#0 [phi:bitmap_line::@4->bitmap_line_ydxi#0] -- register_copy @@ -5966,13 +5966,13 @@ bitmap_line: { rts //SEG66 bitmap_line::@8 b8: - //SEG67 [37] (byte) bitmap_line_xdyi::x#0 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG67 [37] (byte) bitmap_line_xdyi::x#0 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG68 [38] (byte) bitmap_line_xdyi::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG68 [38] (byte) bitmap_line_xdyi::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_xdyi.y - //SEG69 [39] (byte) bitmap_line_xdyi::x1#0 ? (byte) bitmap_line::x0#0 - //SEG70 [40] (byte) bitmap_line_xdyi::xd#0 ? (byte) bitmap_line::xd#2 - //SEG71 [41] (byte) bitmap_line_xdyi::yd#0 ? (byte) bitmap_line::yd#2 + //SEG69 [39] (byte) bitmap_line_xdyi::x1#0 ← (byte) bitmap_line::x0#0 + //SEG70 [40] (byte) bitmap_line_xdyi::xd#0 ← (byte) bitmap_line::xd#2 + //SEG71 [41] (byte) bitmap_line_xdyi::yd#0 ← (byte) bitmap_line::yd#2 //SEG72 [42] call bitmap_line_xdyi //SEG73 [87] phi from bitmap_line::@8 to bitmap_line_xdyi [phi:bitmap_line::@8->bitmap_line_xdyi] //SEG74 [87] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#0 [phi:bitmap_line::@8->bitmap_line_xdyi#0] -- register_copy @@ -5984,7 +5984,7 @@ bitmap_line: { rts //SEG79 bitmap_line::@7 b7: - //SEG80 [43] (byte) bitmap_line::yd#1 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 + //SEG80 [43] (byte) bitmap_line::yd#1 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 tya sec sbc y0 @@ -5993,15 +5993,15 @@ bitmap_line: { cmp xd bcc b9 //SEG82 bitmap_line::@10 - //SEG83 [45] (byte) bitmap_line_ydxd::y#0 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG83 [45] (byte) bitmap_line_ydxd::y#0 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxd.y - //SEG84 [46] (byte) bitmap_line_ydxd::x#0 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG84 [46] (byte) bitmap_line_ydxd::x#0 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG85 [47] (byte) bitmap_line_ydxd::y1#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG85 [47] (byte) bitmap_line_ydxd::y1#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxd.y1 - //SEG86 [48] (byte) bitmap_line_ydxd::yd#0 ? (byte) bitmap_line::yd#1 - //SEG87 [49] (byte) bitmap_line_ydxd::xd#0 ? (byte) bitmap_line::xd#2 + //SEG86 [48] (byte) bitmap_line_ydxd::yd#0 ← (byte) bitmap_line::yd#1 + //SEG87 [49] (byte) bitmap_line_ydxd::xd#0 ← (byte) bitmap_line::xd#2 //SEG88 [50] call bitmap_line_ydxd //SEG89 [139] phi from bitmap_line::@10 to bitmap_line_ydxd [phi:bitmap_line::@10->bitmap_line_ydxd] //SEG90 [139] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#0 [phi:bitmap_line::@10->bitmap_line_ydxd#0] -- register_copy @@ -6013,15 +6013,15 @@ bitmap_line: { rts //SEG95 bitmap_line::@9 b9: - //SEG96 [51] (byte) bitmap_line_xdyd::x#0 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG96 [51] (byte) bitmap_line_xdyd::x#0 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG97 [52] (byte) bitmap_line_xdyd::y#0 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG97 [52] (byte) bitmap_line_xdyd::y#0 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_xdyd.y - //SEG98 [53] (byte) bitmap_line_xdyd::x1#0 ? (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 + //SEG98 [53] (byte) bitmap_line_xdyd::x1#0 ← (byte) bitmap_line::x0#0 -- vbuz1=vbuz2 lda x0 sta bitmap_line_xdyd.x1 - //SEG99 [54] (byte) bitmap_line_xdyd::xd#0 ? (byte) bitmap_line::xd#2 - //SEG100 [55] (byte) bitmap_line_xdyd::yd#0 ? (byte) bitmap_line::yd#1 + //SEG99 [54] (byte) bitmap_line_xdyd::xd#0 ← (byte) bitmap_line::xd#2 + //SEG100 [55] (byte) bitmap_line_xdyd::yd#0 ← (byte) bitmap_line::yd#1 //SEG101 [56] call bitmap_line_xdyd //SEG102 [124] phi from bitmap_line::@9 to bitmap_line_xdyd [phi:bitmap_line::@9->bitmap_line_xdyd] //SEG103 [124] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#0 [phi:bitmap_line::@9->bitmap_line_xdyd#0] -- register_copy @@ -6033,7 +6033,7 @@ bitmap_line: { rts //SEG108 bitmap_line::@1 b1: - //SEG109 [57] (byte) bitmap_line::xd#1 ? (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG109 [57] (byte) bitmap_line::xd#1 ← (byte) bitmap_line::x1#0 - (byte) bitmap_line::x0#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x0 @@ -6045,7 +6045,7 @@ bitmap_line: { bcs b11 !: //SEG111 bitmap_line::@5 - //SEG112 [59] (byte) bitmap_line::yd#10 ? (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy + //SEG112 [59] (byte) bitmap_line::yd#10 ← (byte) bitmap_line::y0#0 - (byte) bitmap_line::y1#0 -- vbuz1=vbuz2_minus_vbuyy tya eor #$ff sec @@ -6055,13 +6055,13 @@ bitmap_line: { cmp xd bcc b12 //SEG114 bitmap_line::@6 - //SEG115 [61] (byte) bitmap_line_ydxd::y#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG115 [61] (byte) bitmap_line_ydxd::y#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxd.y - //SEG116 [62] (byte) bitmap_line_ydxd::x#1 ? (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 + //SEG116 [62] (byte) bitmap_line_ydxd::x#1 ← (byte) bitmap_line::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG117 [63] (byte) bitmap_line_ydxd::y1#1 ? (byte) bitmap_line::y0#0 - //SEG118 [64] (byte) bitmap_line_ydxd::yd#1 ? (byte) bitmap_line::yd#10 - //SEG119 [65] (byte) bitmap_line_ydxd::xd#1 ? (byte) bitmap_line::xd#1 + //SEG117 [63] (byte) bitmap_line_ydxd::y1#1 ← (byte) bitmap_line::y0#0 + //SEG118 [64] (byte) bitmap_line_ydxd::yd#1 ← (byte) bitmap_line::yd#10 + //SEG119 [65] (byte) bitmap_line_ydxd::xd#1 ← (byte) bitmap_line::xd#1 //SEG120 [66] call bitmap_line_ydxd //SEG121 [139] phi from bitmap_line::@6 to bitmap_line_ydxd [phi:bitmap_line::@6->bitmap_line_ydxd] //SEG122 [139] phi (byte) bitmap_line_ydxd::y1#6 = (byte) bitmap_line_ydxd::y1#1 [phi:bitmap_line::@6->bitmap_line_ydxd#0] -- register_copy @@ -6073,12 +6073,12 @@ bitmap_line: { rts //SEG127 bitmap_line::@12 b12: - //SEG128 [67] (byte) bitmap_line_xdyd::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG128 [67] (byte) bitmap_line_xdyd::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG129 [68] (byte) bitmap_line_xdyd::y#1 ? (byte) bitmap_line::y0#0 - //SEG130 [69] (byte) bitmap_line_xdyd::x1#1 ? (byte) bitmap_line::x1#0 - //SEG131 [70] (byte) bitmap_line_xdyd::xd#1 ? (byte) bitmap_line::xd#1 - //SEG132 [71] (byte) bitmap_line_xdyd::yd#1 ? (byte) bitmap_line::yd#10 + //SEG129 [68] (byte) bitmap_line_xdyd::y#1 ← (byte) bitmap_line::y0#0 + //SEG130 [69] (byte) bitmap_line_xdyd::x1#1 ← (byte) bitmap_line::x1#0 + //SEG131 [70] (byte) bitmap_line_xdyd::xd#1 ← (byte) bitmap_line::xd#1 + //SEG132 [71] (byte) bitmap_line_xdyd::yd#1 ← (byte) bitmap_line::yd#10 //SEG133 [72] call bitmap_line_xdyd //SEG134 [124] phi from bitmap_line::@12 to bitmap_line_xdyd [phi:bitmap_line::@12->bitmap_line_xdyd] //SEG135 [124] phi (byte) bitmap_line_xdyd::x1#6 = (byte) bitmap_line_xdyd::x1#1 [phi:bitmap_line::@12->bitmap_line_xdyd#0] -- register_copy @@ -6090,7 +6090,7 @@ bitmap_line: { rts //SEG140 bitmap_line::@11 b11: - //SEG141 [73] (byte) bitmap_line::yd#11 ? (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 + //SEG141 [73] (byte) bitmap_line::yd#11 ← (byte) bitmap_line::y1#0 - (byte) bitmap_line::y0#0 -- vbuz1=vbuyy_minus_vbuz2 tya sec sbc y0 @@ -6099,15 +6099,15 @@ bitmap_line: { cmp xd bcc b13 //SEG143 bitmap_line::@14 - //SEG144 [75] (byte) bitmap_line_ydxi::y#1 ? (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 + //SEG144 [75] (byte) bitmap_line_ydxi::y#1 ← (byte) bitmap_line::y0#0 -- vbuz1=vbuz2 lda y0 sta bitmap_line_ydxi.y - //SEG145 [76] (byte) bitmap_line_ydxi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG145 [76] (byte) bitmap_line_ydxi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG146 [77] (byte) bitmap_line_ydxi::y1#1 ? (byte) bitmap_line::y1#0 -- vbuz1=vbuyy + //SEG146 [77] (byte) bitmap_line_ydxi::y1#1 ← (byte) bitmap_line::y1#0 -- vbuz1=vbuyy sty bitmap_line_ydxi.y1 - //SEG147 [78] (byte) bitmap_line_ydxi::yd#1 ? (byte) bitmap_line::yd#11 - //SEG148 [79] (byte) bitmap_line_ydxi::xd#1 ? (byte) bitmap_line::xd#1 + //SEG147 [78] (byte) bitmap_line_ydxi::yd#1 ← (byte) bitmap_line::yd#11 + //SEG148 [79] (byte) bitmap_line_ydxi::xd#1 ← (byte) bitmap_line::xd#1 //SEG149 [80] call bitmap_line_ydxi //SEG150 [109] phi from bitmap_line::@14 to bitmap_line_ydxi [phi:bitmap_line::@14->bitmap_line_ydxi] //SEG151 [109] phi (byte) bitmap_line_ydxi::y1#6 = (byte) bitmap_line_ydxi::y1#1 [phi:bitmap_line::@14->bitmap_line_ydxi#0] -- register_copy @@ -6119,14 +6119,14 @@ bitmap_line: { rts //SEG156 bitmap_line::@13 b13: - //SEG157 [81] (byte) bitmap_line_xdyi::x#1 ? (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 + //SEG157 [81] (byte) bitmap_line_xdyi::x#1 ← (byte) bitmap_line::x0#0 -- vbuxx=vbuz1 ldx x0 - //SEG158 [82] (byte) bitmap_line_xdyi::y#1 ? (byte) bitmap_line::y0#0 - //SEG159 [83] (byte) bitmap_line_xdyi::x1#1 ? (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 + //SEG158 [82] (byte) bitmap_line_xdyi::y#1 ← (byte) bitmap_line::y0#0 + //SEG159 [83] (byte) bitmap_line_xdyi::x1#1 ← (byte) bitmap_line::x1#0 -- vbuz1=vbuz2 lda x1 sta bitmap_line_xdyi.x1 - //SEG160 [84] (byte) bitmap_line_xdyi::xd#1 ? (byte) bitmap_line::xd#1 - //SEG161 [85] (byte) bitmap_line_xdyi::yd#1 ? (byte) bitmap_line::yd#11 + //SEG160 [84] (byte) bitmap_line_xdyi::xd#1 ← (byte) bitmap_line::xd#1 + //SEG161 [85] (byte) bitmap_line_xdyi::yd#1 ← (byte) bitmap_line::yd#11 //SEG162 [86] call bitmap_line_xdyi //SEG163 [87] phi from bitmap_line::@13 to bitmap_line_xdyi [phi:bitmap_line::@13->bitmap_line_xdyi] //SEG164 [87] phi (byte) bitmap_line_xdyi::x1#6 = (byte) bitmap_line_xdyi::x1#1 [phi:bitmap_line::@13->bitmap_line_xdyi#0] -- register_copy @@ -6146,7 +6146,7 @@ bitmap_line_xdyi: { .label xd = 4 .label yd = 3 .label e = 7 - //SEG170 [88] (byte) bitmap_line_xdyi::e#0 ? (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG170 [88] (byte) bitmap_line_xdyi::e#0 ← (byte) bitmap_line_xdyi::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -6156,8 +6156,8 @@ bitmap_line_xdyi: { //SEG174 [89] phi (byte) bitmap_line_xdyi::x#3 = (byte) bitmap_line_xdyi::x#6 [phi:bitmap_line_xdyi/bitmap_line_xdyi::@2->bitmap_line_xdyi::@1#2] -- register_copy //SEG175 bitmap_line_xdyi::@1 b1: - //SEG176 [90] (byte) bitmap_plot::x#0 ? (byte) bitmap_line_xdyi::x#3 - //SEG177 [91] (byte) bitmap_plot::y#0 ? (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 + //SEG176 [90] (byte) bitmap_plot::x#0 ← (byte) bitmap_line_xdyi::x#3 + //SEG177 [91] (byte) bitmap_plot::y#0 ← (byte) bitmap_line_xdyi::y#3 -- vbuyy=vbuz1 ldy y //SEG178 [92] call bitmap_plot //SEG179 [102] phi from bitmap_line_xdyi::@1 to bitmap_plot [phi:bitmap_line_xdyi::@1->bitmap_plot] @@ -6165,9 +6165,9 @@ bitmap_line_xdyi: { //SEG181 [102] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#0 [phi:bitmap_line_xdyi::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG182 bitmap_line_xdyi::@4 - //SEG183 [93] (byte) bitmap_line_xdyi::x#2 ? ++ (byte) bitmap_line_xdyi::x#3 -- vbuxx=_inc_vbuxx + //SEG183 [93] (byte) bitmap_line_xdyi::x#2 ← ++ (byte) bitmap_line_xdyi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG184 [94] (byte) bitmap_line_xdyi::e#1 ? (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG184 [94] (byte) bitmap_line_xdyi::e#1 ← (byte) bitmap_line_xdyi::e#3 + (byte) bitmap_line_xdyi::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -6177,9 +6177,9 @@ bitmap_line_xdyi: { cmp e bcs b2 //SEG186 bitmap_line_xdyi::@3 - //SEG187 [96] (byte) bitmap_line_xdyi::y#2 ? ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 + //SEG187 [96] (byte) bitmap_line_xdyi::y#2 ← ++ (byte) bitmap_line_xdyi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG188 [97] (byte) bitmap_line_xdyi::e#2 ? (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG188 [97] (byte) bitmap_line_xdyi::e#2 ← (byte) bitmap_line_xdyi::e#1 - (byte) bitmap_line_xdyi::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -6189,7 +6189,7 @@ bitmap_line_xdyi: { //SEG191 [98] phi (byte) bitmap_line_xdyi::y#6 = (byte) bitmap_line_xdyi::y#2 [phi:bitmap_line_xdyi::@3/bitmap_line_xdyi::@4->bitmap_line_xdyi::@2#1] -- register_copy //SEG192 bitmap_line_xdyi::@2 b2: - //SEG193 [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ? (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG193 [99] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyi::$6 ← (byte) bitmap_line_xdyi::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -6206,17 +6206,17 @@ bitmap_plot: { .label _0 = 9 .label plotter_x = 9 .label plotter_y = $b - //SEG198 [103] (word) bitmap_plot::plotter_x#0 ? *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG198 [103] (word) bitmap_plot::plotter_x#0 ← *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_plot::x#4) w= *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_plot::x#4) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_xhi,x sta plotter_x+1 lda bitmap_plot_xlo,x sta plotter_x - //SEG199 [104] (word) bitmap_plot::plotter_y#0 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG199 [104] (word) bitmap_plot::plotter_y#0 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#4) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#4) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta plotter_y+1 lda bitmap_plot_ylo,y sta plotter_y - //SEG200 [105] (word~) bitmap_plot::$0 ? (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG200 [105] (word~) bitmap_plot::$0 ← (word) bitmap_plot::plotter_x#0 + (word) bitmap_plot::plotter_y#0 -- vwuz1=vwuz1_plus_vwuz2 lda _0 clc adc plotter_y @@ -6224,11 +6224,11 @@ bitmap_plot: { lda _0+1 adc plotter_y+1 sta _0+1 - //SEG201 [106] (byte~) bitmap_plot::$1 ? *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx + //SEG201 [106] (byte~) bitmap_plot::$1 ← *((byte*)(word~) bitmap_plot::$0) | *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_plot::x#4) -- vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuxx lda bitmap_plot_bit,x ldy #0 ora (_0),y - //SEG202 [107] *((byte*)(word~) bitmap_plot::$0) ? (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa + //SEG202 [107] *((byte*)(word~) bitmap_plot::$0) ← (byte~) bitmap_plot::$1 -- _deref_pbuz1=vbuaa sta (_0),y //SEG203 bitmap_plot::@return //SEG204 [108] return @@ -6242,7 +6242,7 @@ bitmap_line_ydxi: { .label yd = 3 .label xd = 4 .label e = 5 - //SEG206 [110] (byte) bitmap_line_ydxi::e#0 ? (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG206 [110] (byte) bitmap_line_ydxi::e#0 ← (byte) bitmap_line_ydxi::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -6252,8 +6252,8 @@ bitmap_line_ydxi: { //SEG210 [111] phi (byte) bitmap_line_ydxi::x#3 = (byte) bitmap_line_ydxi::x#5 [phi:bitmap_line_ydxi/bitmap_line_ydxi::@2->bitmap_line_ydxi::@1#2] -- register_copy //SEG211 bitmap_line_ydxi::@1 b1: - //SEG212 [112] (byte) bitmap_plot::x#2 ? (byte) bitmap_line_ydxi::x#3 - //SEG213 [113] (byte) bitmap_plot::y#2 ? (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 + //SEG212 [112] (byte) bitmap_plot::x#2 ← (byte) bitmap_line_ydxi::x#3 + //SEG213 [113] (byte) bitmap_plot::y#2 ← (byte) bitmap_line_ydxi::y#3 -- vbuyy=vbuz1 ldy y //SEG214 [114] call bitmap_plot //SEG215 [102] phi from bitmap_line_ydxi::@1 to bitmap_plot [phi:bitmap_line_ydxi::@1->bitmap_plot] @@ -6261,9 +6261,9 @@ bitmap_line_ydxi: { //SEG217 [102] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#2 [phi:bitmap_line_ydxi::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG218 bitmap_line_ydxi::@4 - //SEG219 [115] (byte) bitmap_line_ydxi::y#2 ? ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 + //SEG219 [115] (byte) bitmap_line_ydxi::y#2 ← ++ (byte) bitmap_line_ydxi::y#3 -- vbuz1=_inc_vbuz1 inc y - //SEG220 [116] (byte) bitmap_line_ydxi::e#1 ? (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG220 [116] (byte) bitmap_line_ydxi::e#1 ← (byte) bitmap_line_ydxi::e#3 + (byte) bitmap_line_ydxi::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -6273,9 +6273,9 @@ bitmap_line_ydxi: { cmp e bcs b2 //SEG222 bitmap_line_ydxi::@3 - //SEG223 [118] (byte) bitmap_line_ydxi::x#2 ? ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx + //SEG223 [118] (byte) bitmap_line_ydxi::x#2 ← ++ (byte) bitmap_line_ydxi::x#3 -- vbuxx=_inc_vbuxx inx - //SEG224 [119] (byte) bitmap_line_ydxi::e#2 ? (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG224 [119] (byte) bitmap_line_ydxi::e#2 ← (byte) bitmap_line_ydxi::e#1 - (byte) bitmap_line_ydxi::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -6285,7 +6285,7 @@ bitmap_line_ydxi: { //SEG227 [120] phi (byte) bitmap_line_ydxi::x#6 = (byte) bitmap_line_ydxi::x#2 [phi:bitmap_line_ydxi::@3/bitmap_line_ydxi::@4->bitmap_line_ydxi::@2#1] -- register_copy //SEG228 bitmap_line_ydxi::@2 b2: - //SEG229 [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ? (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 + //SEG229 [121] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6 ← (byte) bitmap_line_ydxi::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 ldy y1 iny //SEG230 [122] if((byte) bitmap_line_ydxi::y#2!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxi::$6) goto bitmap_line_ydxi::@1 -- vbuz1_neq_vbuyy_then_la1 @@ -6304,7 +6304,7 @@ bitmap_line_xdyd: { .label xd = 4 .label yd = 3 .label e = 5 - //SEG234 [125] (byte) bitmap_line_xdyd::e#0 ? (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG234 [125] (byte) bitmap_line_xdyd::e#0 ← (byte) bitmap_line_xdyd::yd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda yd lsr sta e @@ -6314,8 +6314,8 @@ bitmap_line_xdyd: { //SEG238 [126] phi (byte) bitmap_line_xdyd::x#3 = (byte) bitmap_line_xdyd::x#6 [phi:bitmap_line_xdyd/bitmap_line_xdyd::@2->bitmap_line_xdyd::@1#2] -- register_copy //SEG239 bitmap_line_xdyd::@1 b1: - //SEG240 [127] (byte) bitmap_plot::x#1 ? (byte) bitmap_line_xdyd::x#3 - //SEG241 [128] (byte) bitmap_plot::y#1 ? (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 + //SEG240 [127] (byte) bitmap_plot::x#1 ← (byte) bitmap_line_xdyd::x#3 + //SEG241 [128] (byte) bitmap_plot::y#1 ← (byte) bitmap_line_xdyd::y#3 -- vbuyy=vbuz1 ldy y //SEG242 [129] call bitmap_plot //SEG243 [102] phi from bitmap_line_xdyd::@1 to bitmap_plot [phi:bitmap_line_xdyd::@1->bitmap_plot] @@ -6323,9 +6323,9 @@ bitmap_line_xdyd: { //SEG245 [102] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#1 [phi:bitmap_line_xdyd::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG246 bitmap_line_xdyd::@4 - //SEG247 [130] (byte) bitmap_line_xdyd::x#2 ? ++ (byte) bitmap_line_xdyd::x#3 -- vbuxx=_inc_vbuxx + //SEG247 [130] (byte) bitmap_line_xdyd::x#2 ← ++ (byte) bitmap_line_xdyd::x#3 -- vbuxx=_inc_vbuxx inx - //SEG248 [131] (byte) bitmap_line_xdyd::e#1 ? (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG248 [131] (byte) bitmap_line_xdyd::e#1 ← (byte) bitmap_line_xdyd::e#3 + (byte) bitmap_line_xdyd::yd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc yd @@ -6335,9 +6335,9 @@ bitmap_line_xdyd: { cmp e bcs b2 //SEG250 bitmap_line_xdyd::@3 - //SEG251 [133] (byte) bitmap_line_xdyd::y#2 ? -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 + //SEG251 [133] (byte) bitmap_line_xdyd::y#2 ← -- (byte) bitmap_line_xdyd::y#3 -- vbuz1=_dec_vbuz1 dec y - //SEG252 [134] (byte) bitmap_line_xdyd::e#2 ? (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG252 [134] (byte) bitmap_line_xdyd::e#2 ← (byte) bitmap_line_xdyd::e#1 - (byte) bitmap_line_xdyd::xd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc xd @@ -6347,7 +6347,7 @@ bitmap_line_xdyd: { //SEG255 [135] phi (byte) bitmap_line_xdyd::y#6 = (byte) bitmap_line_xdyd::y#2 [phi:bitmap_line_xdyd::@3/bitmap_line_xdyd::@4->bitmap_line_xdyd::@2#1] -- register_copy //SEG256 bitmap_line_xdyd::@2 b2: - //SEG257 [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ? (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG257 [136] (byte/signed word/word/dword/signed dword~) bitmap_line_xdyd::$6 ← (byte) bitmap_line_xdyd::x1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy x1 iny sty _6 @@ -6366,7 +6366,7 @@ bitmap_line_ydxd: { .label yd = 3 .label xd = 4 .label e = 5 - //SEG262 [140] (byte) bitmap_line_ydxd::e#0 ? (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG262 [140] (byte) bitmap_line_ydxd::e#0 ← (byte) bitmap_line_ydxd::xd#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda xd lsr sta e @@ -6376,8 +6376,8 @@ bitmap_line_ydxd: { //SEG266 [141] phi (byte) bitmap_line_ydxd::x#3 = (byte) bitmap_line_ydxd::x#5 [phi:bitmap_line_ydxd/bitmap_line_ydxd::@2->bitmap_line_ydxd::@1#2] -- register_copy //SEG267 bitmap_line_ydxd::@1 b1: - //SEG268 [142] (byte) bitmap_plot::x#3 ? (byte) bitmap_line_ydxd::x#3 - //SEG269 [143] (byte) bitmap_plot::y#3 ? (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 + //SEG268 [142] (byte) bitmap_plot::x#3 ← (byte) bitmap_line_ydxd::x#3 + //SEG269 [143] (byte) bitmap_plot::y#3 ← (byte) bitmap_line_ydxd::y#2 -- vbuyy=vbuz1 ldy y //SEG270 [144] call bitmap_plot //SEG271 [102] phi from bitmap_line_ydxd::@1 to bitmap_plot [phi:bitmap_line_ydxd::@1->bitmap_plot] @@ -6385,9 +6385,9 @@ bitmap_line_ydxd: { //SEG273 [102] phi (byte) bitmap_plot::x#4 = (byte) bitmap_plot::x#3 [phi:bitmap_line_ydxd::@1->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG274 bitmap_line_ydxd::@4 - //SEG275 [145] (byte) bitmap_line_ydxd::y#3 ? ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 + //SEG275 [145] (byte) bitmap_line_ydxd::y#3 ← ++ (byte) bitmap_line_ydxd::y#2 -- vbuz1=_inc_vbuz1 inc y - //SEG276 [146] (byte) bitmap_line_ydxd::e#1 ? (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG276 [146] (byte) bitmap_line_ydxd::e#1 ← (byte) bitmap_line_ydxd::e#3 + (byte) bitmap_line_ydxd::xd#2 -- vbuz1=vbuz1_plus_vbuz2 lda e clc adc xd @@ -6397,9 +6397,9 @@ bitmap_line_ydxd: { cmp e bcs b2 //SEG278 bitmap_line_ydxd::@3 - //SEG279 [148] (byte) bitmap_line_ydxd::x#2 ? -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx + //SEG279 [148] (byte) bitmap_line_ydxd::x#2 ← -- (byte) bitmap_line_ydxd::x#3 -- vbuxx=_dec_vbuxx dex - //SEG280 [149] (byte) bitmap_line_ydxd::e#2 ? (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 + //SEG280 [149] (byte) bitmap_line_ydxd::e#2 ← (byte) bitmap_line_ydxd::e#1 - (byte) bitmap_line_ydxd::yd#5 -- vbuz1=vbuz1_minus_vbuz2 lda e sec sbc yd @@ -6409,7 +6409,7 @@ bitmap_line_ydxd: { //SEG283 [150] phi (byte) bitmap_line_ydxd::x#6 = (byte) bitmap_line_ydxd::x#2 [phi:bitmap_line_ydxd::@3/bitmap_line_ydxd::@4->bitmap_line_ydxd::@2#1] -- register_copy //SEG284 bitmap_line_ydxd::@2 b2: - //SEG285 [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ? (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 + //SEG285 [151] (byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6 ← (byte) bitmap_line_ydxd::y1#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_plus_1 ldy y1 iny //SEG286 [152] if((byte) bitmap_line_ydxd::y#3!=(byte/signed word/word/dword/signed dword~) bitmap_line_ydxd::$6) goto bitmap_line_ydxd::@1 -- vbuz1_neq_vbuyy_then_la1 @@ -6432,11 +6432,11 @@ init_screen: { //SEG293 [155] phi (byte*) init_screen::c#2 = (byte*) init_screen::c#1 [phi:init_screen::@1->init_screen::@1#0] -- register_copy //SEG294 init_screen::@1 b1: - //SEG295 [156] *((byte*) init_screen::c#2) ? (byte/signed byte/word/signed word/dword/signed dword) $14 -- _deref_pbuz1=vbuc1 + //SEG295 [156] *((byte*) init_screen::c#2) ← (byte/signed byte/word/signed word/dword/signed dword) $14 -- _deref_pbuz1=vbuc1 lda #$14 ldy #0 sta (c),y - //SEG296 [157] (byte*) init_screen::c#1 ? ++ (byte*) init_screen::c#2 -- pbuz1=_inc_pbuz1 + //SEG296 [157] (byte*) init_screen::c#1 ← ++ (byte*) init_screen::c#2 -- pbuz1=_inc_pbuz1 inc c bne !+ inc c+1 @@ -6458,12 +6458,12 @@ bitmap_clear: { .label bitmap = 9 .label y = 2 .label _3 = 9 - //SEG301 [160] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG301 [160] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_xhi#0) w= *((const byte[$100]) bitmap_plot_xlo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_xlo sta _3 lda bitmap_plot_xhi sta _3+1 - //SEG302 [161] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG302 [161] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG303 [162] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] //SEG304 [162] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 lda #0 @@ -6483,22 +6483,22 @@ bitmap_clear: { //SEG315 [163] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy //SEG316 bitmap_clear::@2 b2: - //SEG317 [164] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG317 [164] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (bitmap),y - //SEG318 [165] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG318 [165] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG319 [166] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG319 [166] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG320 [167] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 bne b2 //SEG321 bitmap_clear::@3 - //SEG322 [168] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG322 [168] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG323 [169] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -6523,18 +6523,18 @@ bitmap_init: { //SEG332 [172] phi (byte) bitmap_init::x#2 = (byte) bitmap_init::x#1 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy //SEG333 bitmap_init::@1 b1: - //SEG334 [173] (byte~) bitmap_init::$0 ? (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 + //SEG334 [173] (byte~) bitmap_init::$0 ← (byte) bitmap_init::x#2 & (byte/word/signed word/dword/signed dword) $f8 -- vbuaa=vbuxx_band_vbuc1 txa and #$f8 - //SEG335 [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ? (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG335 [174] *((const byte[$100]) bitmap_plot_xlo#0 + (byte) bitmap_init::x#2) ← (byte~) bitmap_init::$0 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_xlo,x - //SEG336 [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ? >(const byte*) BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG336 [175] *((const byte[$100]) bitmap_plot_xhi#0 + (byte) bitmap_init::x#2) ← >(const byte*) BITMAP#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #>BITMAP sta bitmap_plot_xhi,x - //SEG337 [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy + //SEG337 [176] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuyy tya sta bitmap_plot_bit,x - //SEG338 [177] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 + //SEG338 [177] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_ror_1 tya lsr tay @@ -6546,7 +6546,7 @@ bitmap_init: { ldy #$80 //SEG342 bitmap_init::@2 b2: - //SEG343 [180] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG343 [180] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG344 [181] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -6563,27 +6563,27 @@ bitmap_init: { //SEG350 [182] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy //SEG351 bitmap_init::@3 b3: - //SEG352 [183] (byte~) bitmap_init::$6 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG352 [183] (byte~) bitmap_init::$6 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _6 - //SEG353 [184] (byte~) bitmap_init::$7 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG353 [184] (byte~) bitmap_init::$7 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG354 [185] (byte~) bitmap_init::$8 ? (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa + //SEG354 [185] (byte~) bitmap_init::$8 ← (byte~) bitmap_init::$6 | (byte~) bitmap_init::$7 -- vbuaa=vbuz1_bor_vbuaa ora _6 - //SEG355 [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG355 [186] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$8 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG356 [187] (byte~) bitmap_init::$9 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG356 [187] (byte~) bitmap_init::$9 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG357 [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG357 [188] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$9 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG358 [189] (byte~) bitmap_init::$10 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG358 [189] (byte~) bitmap_init::$10 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG359 [190] if((byte~) bitmap_init::$10!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 cmp #7 bne b4 //SEG360 bitmap_init::@5 - //SEG361 [191] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG361 [191] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -6595,7 +6595,7 @@ bitmap_init: { //SEG363 [192] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy //SEG364 bitmap_init::@4 b4: - //SEG365 [193] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG365 [193] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG366 [194] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 diff --git a/src/test/ref/examples/multiplexer/simple-multiplexer.log b/src/test/ref/examples/multiplexer/simple-multiplexer.log index 305872b1c..0fd658eaa 100644 --- a/src/test/ref/examples/multiplexer/simple-multiplexer.log +++ b/src/test/ref/examples/multiplexer/simple-multiplexer.log @@ -1,327 +1,327 @@ Identified constant variable (byte*) SCREEN Identified constant variable (byte*) SPRITE Identified constant variable (byte*) YSIN -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx Inlined call call plexSetScreen (byte*) plexInit::screen Inlined call call plexFreePrepare Inlined call call plexFreeAdd (byte) plexShowSprite::ypos -Inlined call (byte~) loop::$7 ? call plexFreeNextYpos +Inlined call (byte~) loop::$7 ← call plexFreeNextYpos CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte) PLEX_COUNT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (word[PLEX_COUNT#0]) PLEX_XPOS#0 ? { fill( PLEX_COUNT#0, 0) } - (byte[PLEX_COUNT#0]) PLEX_YPOS#0 ? { fill( PLEX_COUNT#0, 0) } - (byte[PLEX_COUNT#0]) PLEX_PTR#0 ? { fill( PLEX_COUNT#0, 0) } - (word/signed word/dword/signed dword~) $0 ? (word/signed word/dword/signed dword) $400 + (word/signed word/dword/signed dword) $3f8 - (byte*) PLEX_SCREEN_PTR#0 ? ((byte*)) (word/signed word/dword/signed dword~) $0 - (byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 ? { fill( PLEX_COUNT#0, 0) } - (byte) plex_show_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) plex_sprite_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) plex_sprite_msb#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PLEX_COUNT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (word[PLEX_COUNT#0]) PLEX_XPOS#0 ← { fill( PLEX_COUNT#0, 0) } + (byte[PLEX_COUNT#0]) PLEX_YPOS#0 ← { fill( PLEX_COUNT#0, 0) } + (byte[PLEX_COUNT#0]) PLEX_PTR#0 ← { fill( PLEX_COUNT#0, 0) } + (word/signed word/dword/signed dword~) $0 ← (word/signed word/dword/signed dword) $400 + (word/signed word/dword/signed dword) $3f8 + (byte*) PLEX_SCREEN_PTR#0 ← ((byte*)) (word/signed word/dword/signed dword~) $0 + (byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 ← { fill( PLEX_COUNT#0, 0) } + (byte) plex_show_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_sprite_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_sprite_msb#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:@9 plexInit: scope:[plexInit] from init - (byte*) plexInit::screen#1 ? phi( init/(byte*) plexInit::screen#0 ) - (byte*) plexInit::plexSetScreen1_screen#0 ? (byte*) plexInit::screen#1 + (byte*) plexInit::screen#1 ← phi( init/(byte*) plexInit::screen#0 ) + (byte*) plexInit::plexSetScreen1_screen#0 ← (byte*) plexInit::screen#1 to:plexInit::plexSetScreen1 plexInit::plexSetScreen1: scope:[plexInit] from plexInit - (byte*) plexInit::plexSetScreen1_screen#1 ? phi( plexInit/(byte*) plexInit::plexSetScreen1_screen#0 ) - (byte*) plexInit::plexSetScreen1_$0#0 ? (byte*) plexInit::plexSetScreen1_screen#1 + (word/signed word/dword/signed dword) $3f8 - (byte*) PLEX_SCREEN_PTR#1 ? (byte*) plexInit::plexSetScreen1_$0#0 + (byte*) plexInit::plexSetScreen1_screen#1 ← phi( plexInit/(byte*) plexInit::plexSetScreen1_screen#0 ) + (byte*) plexInit::plexSetScreen1_$0#0 ← (byte*) plexInit::plexSetScreen1_screen#1 + (word/signed word/dword/signed dword) $3f8 + (byte*) PLEX_SCREEN_PTR#1 ← (byte*) plexInit::plexSetScreen1_$0#0 to:plexInit::@3 plexInit::@3: scope:[plexInit] from plexInit::plexSetScreen1 - (byte*) PLEX_SCREEN_PTR#22 ? phi( plexInit::plexSetScreen1/(byte*) PLEX_SCREEN_PTR#1 ) - (byte/signed word/word/dword/signed dword~) plexInit::$1 ? (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) plexInit::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) PLEX_SCREEN_PTR#22 ← phi( plexInit::plexSetScreen1/(byte*) PLEX_SCREEN_PTR#1 ) + (byte/signed word/word/dword/signed dword~) plexInit::$1 ← (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexInit::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:plexInit::@1 plexInit::@1: scope:[plexInit] from plexInit::@1 plexInit::@3 - (byte*) PLEX_SCREEN_PTR#15 ? phi( plexInit::@1/(byte*) PLEX_SCREEN_PTR#15 plexInit::@3/(byte*) PLEX_SCREEN_PTR#22 ) - (byte) plexInit::i#2 ? phi( plexInit::@1/(byte) plexInit::i#1 plexInit::@3/(byte) plexInit::i#0 ) - *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ? (byte) plexInit::i#2 - (byte) plexInit::i#1 ? (byte) plexInit::i#2 + rangenext(0,plexInit::$1) - (bool~) plexInit::$2 ? (byte) plexInit::i#1 != rangelast(0,plexInit::$1) + (byte*) PLEX_SCREEN_PTR#15 ← phi( plexInit::@1/(byte*) PLEX_SCREEN_PTR#15 plexInit::@3/(byte*) PLEX_SCREEN_PTR#22 ) + (byte) plexInit::i#2 ← phi( plexInit::@1/(byte) plexInit::i#1 plexInit::@3/(byte) plexInit::i#0 ) + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ← (byte) plexInit::i#2 + (byte) plexInit::i#1 ← (byte) plexInit::i#2 + rangenext(0,plexInit::$1) + (bool~) plexInit::$2 ← (byte) plexInit::i#1 != rangelast(0,plexInit::$1) if((bool~) plexInit::$2) goto plexInit::@1 to:plexInit::@return plexInit::@return: scope:[plexInit] from plexInit::@1 - (byte*) PLEX_SCREEN_PTR#8 ? phi( plexInit::@1/(byte*) PLEX_SCREEN_PTR#15 ) - (byte*) PLEX_SCREEN_PTR#2 ? (byte*) PLEX_SCREEN_PTR#8 + (byte*) PLEX_SCREEN_PTR#8 ← phi( plexInit::@1/(byte*) PLEX_SCREEN_PTR#15 ) + (byte*) PLEX_SCREEN_PTR#2 ← (byte*) PLEX_SCREEN_PTR#8 return to:@return plexSort: scope:[plexSort] from loop::@11 - (byte/signed word/word/dword/signed dword~) plexSort::$1 ? (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) plexSort::m#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte/signed word/word/dword/signed dword~) plexSort::$1 ← (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) plexSort::m#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:plexSort::@1 plexSort::@1: scope:[plexSort] from plexSort plexSort::@2 - (byte) plexSort::m#2 ? phi( plexSort/(byte) plexSort::m#0 plexSort::@2/(byte) plexSort::m#1 ) - (byte/signed word/word/dword/signed dword~) plexSort::$2 ? (byte) plexSort::m#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) plexSort::nxt_idx#0 ? *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte/signed word/word/dword/signed dword~) plexSort::$2) - (byte) plexSort::nxt_y#0 ? *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) - (bool~) plexSort::$3 ? (byte) plexSort::nxt_y#0 < *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2)) - (bool~) plexSort::$4 ? ! (bool~) plexSort::$3 + (byte) plexSort::m#2 ← phi( plexSort/(byte) plexSort::m#0 plexSort::@2/(byte) plexSort::m#1 ) + (byte/signed word/word/dword/signed dword~) plexSort::$2 ← (byte) plexSort::m#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::nxt_idx#0 ← *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte/signed word/word/dword/signed dword~) plexSort::$2) + (byte) plexSort::nxt_y#0 ← *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) + (bool~) plexSort::$3 ← (byte) plexSort::nxt_y#0 < *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2)) + (bool~) plexSort::$4 ← ! (bool~) plexSort::$3 if((bool~) plexSort::$4) goto plexSort::@2 to:plexSort::@5 plexSort::@2: scope:[plexSort] from plexSort::@1 plexSort::@4 - (byte) plexSort::m#3 ? phi( plexSort::@1/(byte) plexSort::m#2 plexSort::@4/(byte) plexSort::m#5 ) - (byte) plexSort::m#1 ? (byte) plexSort::m#3 + rangenext(0,plexSort::$1) - (bool~) plexSort::$9 ? (byte) plexSort::m#1 != rangelast(0,plexSort::$1) + (byte) plexSort::m#3 ← phi( plexSort::@1/(byte) plexSort::m#2 plexSort::@4/(byte) plexSort::m#5 ) + (byte) plexSort::m#1 ← (byte) plexSort::m#3 + rangenext(0,plexSort::$1) + (bool~) plexSort::$9 ← (byte) plexSort::m#1 != rangelast(0,plexSort::$1) if((bool~) plexSort::$9) goto plexSort::@1 to:plexSort::@6 plexSort::@5: scope:[plexSort] from plexSort::@1 - (byte) plexSort::nxt_idx#3 ? phi( plexSort::@1/(byte) plexSort::nxt_idx#0 ) - (byte) plexSort::nxt_y#2 ? phi( plexSort::@1/(byte) plexSort::nxt_y#0 ) - (byte) plexSort::m#4 ? phi( plexSort::@1/(byte) plexSort::m#2 ) - (byte) plexSort::s#0 ? (byte) plexSort::m#4 + (byte) plexSort::nxt_idx#3 ← phi( plexSort::@1/(byte) plexSort::nxt_idx#0 ) + (byte) plexSort::nxt_y#2 ← phi( plexSort::@1/(byte) plexSort::nxt_y#0 ) + (byte) plexSort::m#4 ← phi( plexSort::@1/(byte) plexSort::m#2 ) + (byte) plexSort::s#0 ← (byte) plexSort::m#4 to:plexSort::@3 plexSort::@3: scope:[plexSort] from plexSort::@3 plexSort::@5 - (byte) plexSort::m#6 ? phi( plexSort::@3/(byte) plexSort::m#6 plexSort::@5/(byte) plexSort::m#4 ) - (byte) plexSort::nxt_idx#2 ? phi( plexSort::@3/(byte) plexSort::nxt_idx#2 plexSort::@5/(byte) plexSort::nxt_idx#3 ) - (byte) plexSort::nxt_y#1 ? phi( plexSort::@3/(byte) plexSort::nxt_y#1 plexSort::@5/(byte) plexSort::nxt_y#2 ) - (byte) plexSort::s#3 ? phi( plexSort::@3/(byte) plexSort::s#1 plexSort::@5/(byte) plexSort::s#0 ) - (byte/signed word/word/dword/signed dword~) plexSort::$5 ? (byte) plexSort::s#3 + (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte/signed word/word/dword/signed dword~) plexSort::$5) ? *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) - (byte) plexSort::s#1 ? -- (byte) plexSort::s#3 - (bool~) plexSort::$6 ? (byte) plexSort::s#1 != (byte/word/signed word/dword/signed dword) $ff - (bool~) plexSort::$7 ? (byte) plexSort::nxt_y#1 < *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#1)) - (bool~) plexSort::$8 ? (bool~) plexSort::$6 && (bool~) plexSort::$7 + (byte) plexSort::m#6 ← phi( plexSort::@3/(byte) plexSort::m#6 plexSort::@5/(byte) plexSort::m#4 ) + (byte) plexSort::nxt_idx#2 ← phi( plexSort::@3/(byte) plexSort::nxt_idx#2 plexSort::@5/(byte) plexSort::nxt_idx#3 ) + (byte) plexSort::nxt_y#1 ← phi( plexSort::@3/(byte) plexSort::nxt_y#1 plexSort::@5/(byte) plexSort::nxt_y#2 ) + (byte) plexSort::s#3 ← phi( plexSort::@3/(byte) plexSort::s#1 plexSort::@5/(byte) plexSort::s#0 ) + (byte/signed word/word/dword/signed dword~) plexSort::$5 ← (byte) plexSort::s#3 + (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte/signed word/word/dword/signed dword~) plexSort::$5) ← *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) + (byte) plexSort::s#1 ← -- (byte) plexSort::s#3 + (bool~) plexSort::$6 ← (byte) plexSort::s#1 != (byte/word/signed word/dword/signed dword) $ff + (bool~) plexSort::$7 ← (byte) plexSort::nxt_y#1 < *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#1)) + (bool~) plexSort::$8 ← (bool~) plexSort::$6 && (bool~) plexSort::$7 if((bool~) plexSort::$8) goto plexSort::@3 to:plexSort::@4 plexSort::@4: scope:[plexSort] from plexSort::@3 - (byte) plexSort::m#5 ? phi( plexSort::@3/(byte) plexSort::m#6 ) - (byte) plexSort::nxt_idx#1 ? phi( plexSort::@3/(byte) plexSort::nxt_idx#2 ) - (byte) plexSort::s#4 ? phi( plexSort::@3/(byte) plexSort::s#1 ) - (byte) plexSort::s#2 ? ++ (byte) plexSort::s#4 - *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ? (byte) plexSort::nxt_idx#1 + (byte) plexSort::m#5 ← phi( plexSort::@3/(byte) plexSort::m#6 ) + (byte) plexSort::nxt_idx#1 ← phi( plexSort::@3/(byte) plexSort::nxt_idx#2 ) + (byte) plexSort::s#4 ← phi( plexSort::@3/(byte) plexSort::s#1 ) + (byte) plexSort::s#2 ← ++ (byte) plexSort::s#4 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ← (byte) plexSort::nxt_idx#1 to:plexSort::@2 plexSort::@6: scope:[plexSort] from plexSort::@2 - (byte) plex_show_idx#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) plex_sprite_idx#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) plex_sprite_msb#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plex_show_idx#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_sprite_idx#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_sprite_msb#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:plexSort::plexFreePrepare1 plexSort::plexFreePrepare1: scope:[plexSort] from plexSort::@6 - (byte) plex_sprite_msb#39 ? phi( plexSort::@6/(byte) plex_sprite_msb#1 ) - (byte) plex_sprite_idx#40 ? phi( plexSort::@6/(byte) plex_sprite_idx#1 ) - (byte) plex_show_idx#40 ? phi( plexSort::@6/(byte) plex_show_idx#1 ) - (byte) plexSort::plexFreePrepare1_s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_sprite_msb#39 ← phi( plexSort::@6/(byte) plex_sprite_msb#1 ) + (byte) plex_sprite_idx#40 ← phi( plexSort::@6/(byte) plex_sprite_idx#1 ) + (byte) plex_show_idx#40 ← phi( plexSort::@6/(byte) plex_show_idx#1 ) + (byte) plexSort::plexFreePrepare1_s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:plexSort::plexFreePrepare1_@1 plexSort::plexFreePrepare1_@1: scope:[plexSort] from plexSort::plexFreePrepare1 plexSort::plexFreePrepare1_@1 - (byte) plex_sprite_msb#31 ? phi( plexSort::plexFreePrepare1/(byte) plex_sprite_msb#39 plexSort::plexFreePrepare1_@1/(byte) plex_sprite_msb#31 ) - (byte) plex_sprite_idx#33 ? phi( plexSort::plexFreePrepare1/(byte) plex_sprite_idx#40 plexSort::plexFreePrepare1_@1/(byte) plex_sprite_idx#33 ) - (byte) plex_show_idx#33 ? phi( plexSort::plexFreePrepare1/(byte) plex_show_idx#40 plexSort::plexFreePrepare1_@1/(byte) plex_show_idx#33 ) - (byte) plexSort::plexFreePrepare1_s#2 ? phi( plexSort::plexFreePrepare1/(byte) plexSort::plexFreePrepare1_s#0 plexSort::plexFreePrepare1_@1/(byte) plexSort::plexFreePrepare1_s#1 ) - *((byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) plexSort::plexFreePrepare1_s#1 ? (byte) plexSort::plexFreePrepare1_s#2 + rangenext(0,7) - (bool) plexSort::plexFreePrepare1_$0#0 ? (byte) plexSort::plexFreePrepare1_s#1 != rangelast(0,7) + (byte) plex_sprite_msb#31 ← phi( plexSort::plexFreePrepare1/(byte) plex_sprite_msb#39 plexSort::plexFreePrepare1_@1/(byte) plex_sprite_msb#31 ) + (byte) plex_sprite_idx#33 ← phi( plexSort::plexFreePrepare1/(byte) plex_sprite_idx#40 plexSort::plexFreePrepare1_@1/(byte) plex_sprite_idx#33 ) + (byte) plex_show_idx#33 ← phi( plexSort::plexFreePrepare1/(byte) plex_show_idx#40 plexSort::plexFreePrepare1_@1/(byte) plex_show_idx#33 ) + (byte) plexSort::plexFreePrepare1_s#2 ← phi( plexSort::plexFreePrepare1/(byte) plexSort::plexFreePrepare1_s#0 plexSort::plexFreePrepare1_@1/(byte) plexSort::plexFreePrepare1_s#1 ) + *((byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plexSort::plexFreePrepare1_s#1 ← (byte) plexSort::plexFreePrepare1_s#2 + rangenext(0,7) + (bool) plexSort::plexFreePrepare1_$0#0 ← (byte) plexSort::plexFreePrepare1_s#1 != rangelast(0,7) if((bool) plexSort::plexFreePrepare1_$0#0) goto plexSort::plexFreePrepare1_@1 to:plexSort::plexFreePrepare1_@2 plexSort::plexFreePrepare1_@2: scope:[plexSort] from plexSort::plexFreePrepare1_@1 - (byte) plex_sprite_msb#23 ? phi( plexSort::plexFreePrepare1_@1/(byte) plex_sprite_msb#31 ) - (byte) plex_sprite_idx#22 ? phi( plexSort::plexFreePrepare1_@1/(byte) plex_sprite_idx#33 ) - (byte) plex_show_idx#22 ? phi( plexSort::plexFreePrepare1_@1/(byte) plex_show_idx#33 ) - (byte) plex_free_next#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_sprite_msb#23 ← phi( plexSort::plexFreePrepare1_@1/(byte) plex_sprite_msb#31 ) + (byte) plex_sprite_idx#22 ← phi( plexSort::plexFreePrepare1_@1/(byte) plex_sprite_idx#33 ) + (byte) plex_show_idx#22 ← phi( plexSort::plexFreePrepare1_@1/(byte) plex_show_idx#33 ) + (byte) plex_free_next#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:plexSort::@return plexSort::@return: scope:[plexSort] from plexSort::plexFreePrepare1_@2 - (byte) plex_free_next#11 ? phi( plexSort::plexFreePrepare1_@2/(byte) plex_free_next#0 ) - (byte) plex_sprite_msb#12 ? phi( plexSort::plexFreePrepare1_@2/(byte) plex_sprite_msb#23 ) - (byte) plex_sprite_idx#11 ? phi( plexSort::plexFreePrepare1_@2/(byte) plex_sprite_idx#22 ) - (byte) plex_show_idx#11 ? phi( plexSort::plexFreePrepare1_@2/(byte) plex_show_idx#22 ) - (byte) plex_show_idx#2 ? (byte) plex_show_idx#11 - (byte) plex_sprite_idx#2 ? (byte) plex_sprite_idx#11 - (byte) plex_sprite_msb#2 ? (byte) plex_sprite_msb#12 - (byte) plex_free_next#1 ? (byte) plex_free_next#11 + (byte) plex_free_next#11 ← phi( plexSort::plexFreePrepare1_@2/(byte) plex_free_next#0 ) + (byte) plex_sprite_msb#12 ← phi( plexSort::plexFreePrepare1_@2/(byte) plex_sprite_msb#23 ) + (byte) plex_sprite_idx#11 ← phi( plexSort::plexFreePrepare1_@2/(byte) plex_sprite_idx#22 ) + (byte) plex_show_idx#11 ← phi( plexSort::plexFreePrepare1_@2/(byte) plex_show_idx#22 ) + (byte) plex_show_idx#2 ← (byte) plex_show_idx#11 + (byte) plex_sprite_idx#2 ← (byte) plex_sprite_idx#11 + (byte) plex_sprite_msb#2 ← (byte) plex_sprite_msb#12 + (byte) plex_free_next#1 ← (byte) plex_free_next#11 return to:@return plexShowSprite: scope:[plexShowSprite] from loop::@21 - (byte) plex_sprite_msb#40 ? phi( loop::@21/(byte) plex_sprite_msb#28 ) - (byte*) PLEX_SCREEN_PTR#23 ? phi( loop::@21/(byte*) PLEX_SCREEN_PTR#26 ) - (byte) plex_free_next#21 ? phi( loop::@21/(byte) plex_free_next#27 ) - (byte) plex_show_idx#12 ? phi( loop::@21/(byte) plex_show_idx#23 ) - (byte) plex_sprite_idx#12 ? phi( loop::@21/(byte) plex_sprite_idx#23 ) - (byte~) plexShowSprite::$0 ? (byte) plex_sprite_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) plexShowSprite::plex_sprite_idx2#0 ? (byte~) plexShowSprite::$0 - (byte) plexShowSprite::ypos#0 ? *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#12)) - *((byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte) plexShowSprite::ypos#0 - (byte) plexShowSprite::plexFreeAdd1_ypos#0 ? (byte) plexShowSprite::ypos#0 + (byte) plex_sprite_msb#40 ← phi( loop::@21/(byte) plex_sprite_msb#28 ) + (byte*) PLEX_SCREEN_PTR#23 ← phi( loop::@21/(byte*) PLEX_SCREEN_PTR#26 ) + (byte) plex_free_next#21 ← phi( loop::@21/(byte) plex_free_next#27 ) + (byte) plex_show_idx#12 ← phi( loop::@21/(byte) plex_show_idx#23 ) + (byte) plex_sprite_idx#12 ← phi( loop::@21/(byte) plex_sprite_idx#23 ) + (byte~) plexShowSprite::$0 ← (byte) plex_sprite_idx#12 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte~) plexShowSprite::$0 + (byte) plexShowSprite::ypos#0 ← *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#12)) + *((byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte) plexShowSprite::ypos#0 + (byte) plexShowSprite::plexFreeAdd1_ypos#0 ← (byte) plexShowSprite::ypos#0 to:plexShowSprite::plexFreeAdd1 plexShowSprite::plexFreeAdd1: scope:[plexShowSprite] from plexShowSprite - (byte) plex_sprite_msb#32 ? phi( plexShowSprite/(byte) plex_sprite_msb#40 ) - (byte) plexShowSprite::plex_sprite_idx2#2 ? phi( plexShowSprite/(byte) plexShowSprite::plex_sprite_idx2#0 ) - (byte) plex_sprite_idx#24 ? phi( plexShowSprite/(byte) plex_sprite_idx#12 ) - (byte*) PLEX_SCREEN_PTR#16 ? phi( plexShowSprite/(byte*) PLEX_SCREEN_PTR#23 ) - (byte) plex_show_idx#24 ? phi( plexShowSprite/(byte) plex_show_idx#12 ) - (byte) plex_free_next#12 ? phi( plexShowSprite/(byte) plex_free_next#21 ) - (byte) plexShowSprite::plexFreeAdd1_ypos#1 ? phi( plexShowSprite/(byte) plexShowSprite::plexFreeAdd1_ypos#0 ) - (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ? (byte) plexShowSprite::plexFreeAdd1_ypos#1 + (byte/signed byte/word/signed word/dword/signed dword) $15 - *((byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#12) ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 - (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ? (byte) plex_free_next#12 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/word/dword) plexShowSprite::plexFreeAdd1_$2#0 ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) plex_free_next#2 ? (byte/word/dword) plexShowSprite::plexFreeAdd1_$2#0 + (byte) plex_sprite_msb#32 ← phi( plexShowSprite/(byte) plex_sprite_msb#40 ) + (byte) plexShowSprite::plex_sprite_idx2#2 ← phi( plexShowSprite/(byte) plexShowSprite::plex_sprite_idx2#0 ) + (byte) plex_sprite_idx#24 ← phi( plexShowSprite/(byte) plex_sprite_idx#12 ) + (byte*) PLEX_SCREEN_PTR#16 ← phi( plexShowSprite/(byte*) PLEX_SCREEN_PTR#23 ) + (byte) plex_show_idx#24 ← phi( plexShowSprite/(byte) plex_show_idx#12 ) + (byte) plex_free_next#12 ← phi( plexShowSprite/(byte) plex_free_next#21 ) + (byte) plexShowSprite::plexFreeAdd1_ypos#1 ← phi( plexShowSprite/(byte) plexShowSprite::plexFreeAdd1_ypos#0 ) + (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ← (byte) plexShowSprite::plexFreeAdd1_ypos#1 + (byte/signed byte/word/signed word/dword/signed dword) $15 + *((byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#12) ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 + (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ← (byte) plex_free_next#12 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/word/dword) plexShowSprite::plexFreeAdd1_$2#0 ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) plex_free_next#2 ← (byte/word/dword) plexShowSprite::plexFreeAdd1_$2#0 to:plexShowSprite::@7 plexShowSprite::@7: scope:[plexShowSprite] from plexShowSprite::plexFreeAdd1 - (byte) plex_free_next#44 ? phi( plexShowSprite::plexFreeAdd1/(byte) plex_free_next#2 ) - (byte) plex_sprite_msb#24 ? phi( plexShowSprite::plexFreeAdd1/(byte) plex_sprite_msb#32 ) - (byte) plexShowSprite::plex_sprite_idx2#1 ? phi( plexShowSprite::plexFreeAdd1/(byte) plexShowSprite::plex_sprite_idx2#2 ) - (byte) plex_sprite_idx#13 ? phi( plexShowSprite::plexFreeAdd1/(byte) plex_sprite_idx#24 ) - (byte*) PLEX_SCREEN_PTR#9 ? phi( plexShowSprite::plexFreeAdd1/(byte*) PLEX_SCREEN_PTR#16 ) - (byte) plex_show_idx#13 ? phi( plexShowSprite::plexFreeAdd1/(byte) plex_show_idx#24 ) - *((byte*) PLEX_SCREEN_PTR#9 + (byte) plex_sprite_idx#13) ? *((byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13)) - (byte~) plexShowSprite::$2 ? *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13) << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) plexShowSprite::xpos_idx#0 ? (byte~) plexShowSprite::$2 - (byte~) plexShowSprite::$3 ? < *((word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) - *((byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#1) ? (byte~) plexShowSprite::$3 - (byte~) plexShowSprite::$4 ? > *((word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) - (bool~) plexShowSprite::$5 ? (byte~) plexShowSprite::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_free_next#44 ← phi( plexShowSprite::plexFreeAdd1/(byte) plex_free_next#2 ) + (byte) plex_sprite_msb#24 ← phi( plexShowSprite::plexFreeAdd1/(byte) plex_sprite_msb#32 ) + (byte) plexShowSprite::plex_sprite_idx2#1 ← phi( plexShowSprite::plexFreeAdd1/(byte) plexShowSprite::plex_sprite_idx2#2 ) + (byte) plex_sprite_idx#13 ← phi( plexShowSprite::plexFreeAdd1/(byte) plex_sprite_idx#24 ) + (byte*) PLEX_SCREEN_PTR#9 ← phi( plexShowSprite::plexFreeAdd1/(byte*) PLEX_SCREEN_PTR#16 ) + (byte) plex_show_idx#13 ← phi( plexShowSprite::plexFreeAdd1/(byte) plex_show_idx#24 ) + *((byte*) PLEX_SCREEN_PTR#9 + (byte) plex_sprite_idx#13) ← *((byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13)) + (byte~) plexShowSprite::$2 ← *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#13) << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexShowSprite::xpos_idx#0 ← (byte~) plexShowSprite::$2 + (byte~) plexShowSprite::$3 ← < *((word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) + *((byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#1) ← (byte~) plexShowSprite::$3 + (byte~) plexShowSprite::$4 ← > *((word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) + (bool~) plexShowSprite::$5 ← (byte~) plexShowSprite::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) plexShowSprite::$5) goto plexShowSprite::@1 to:plexShowSprite::@4 plexShowSprite::@1: scope:[plexShowSprite] from plexShowSprite::@7 - (byte) plex_free_next#38 ? phi( plexShowSprite::@7/(byte) plex_free_next#44 ) - (byte) plex_show_idx#25 ? phi( plexShowSprite::@7/(byte) plex_show_idx#13 ) - (byte) plex_sprite_idx#25 ? phi( plexShowSprite::@7/(byte) plex_sprite_idx#13 ) - (byte) plex_sprite_msb#13 ? phi( plexShowSprite::@7/(byte) plex_sprite_msb#24 ) - *((byte*) SPRITES_XMSB#0) ? *((byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#13 + (byte) plex_free_next#38 ← phi( plexShowSprite::@7/(byte) plex_free_next#44 ) + (byte) plex_show_idx#25 ← phi( plexShowSprite::@7/(byte) plex_show_idx#13 ) + (byte) plex_sprite_idx#25 ← phi( plexShowSprite::@7/(byte) plex_sprite_idx#13 ) + (byte) plex_sprite_msb#13 ← phi( plexShowSprite::@7/(byte) plex_sprite_msb#24 ) + *((byte*) SPRITES_XMSB#0) ← *((byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#13 to:plexShowSprite::@2 plexShowSprite::@4: scope:[plexShowSprite] from plexShowSprite::@7 - (byte) plex_free_next#39 ? phi( plexShowSprite::@7/(byte) plex_free_next#44 ) - (byte) plex_show_idx#26 ? phi( plexShowSprite::@7/(byte) plex_show_idx#13 ) - (byte) plex_sprite_idx#26 ? phi( plexShowSprite::@7/(byte) plex_sprite_idx#13 ) - (byte) plex_sprite_msb#14 ? phi( plexShowSprite::@7/(byte) plex_sprite_msb#24 ) - (byte/word/dword~) plexShowSprite::$10 ? (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#14 - *((byte*) SPRITES_XMSB#0) ? *((byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 + (byte) plex_free_next#39 ← phi( plexShowSprite::@7/(byte) plex_free_next#44 ) + (byte) plex_show_idx#26 ← phi( plexShowSprite::@7/(byte) plex_show_idx#13 ) + (byte) plex_sprite_idx#26 ← phi( plexShowSprite::@7/(byte) plex_sprite_idx#13 ) + (byte) plex_sprite_msb#14 ← phi( plexShowSprite::@7/(byte) plex_sprite_msb#24 ) + (byte/word/dword~) plexShowSprite::$10 ← (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#14 + *((byte*) SPRITES_XMSB#0) ← *((byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 to:plexShowSprite::@2 plexShowSprite::@2: scope:[plexShowSprite] from plexShowSprite::@1 plexShowSprite::@4 - (byte) plex_free_next#30 ? phi( plexShowSprite::@1/(byte) plex_free_next#38 plexShowSprite::@4/(byte) plex_free_next#39 ) - (byte) plex_sprite_msb#15 ? phi( plexShowSprite::@1/(byte) plex_sprite_msb#13 plexShowSprite::@4/(byte) plex_sprite_msb#14 ) - (byte) plex_show_idx#14 ? phi( plexShowSprite::@1/(byte) plex_show_idx#25 plexShowSprite::@4/(byte) plex_show_idx#26 ) - (byte) plex_sprite_idx#14 ? phi( plexShowSprite::@1/(byte) plex_sprite_idx#25 plexShowSprite::@4/(byte) plex_sprite_idx#26 ) - (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ? (byte) plex_sprite_idx#14 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte/word/dword~) plexShowSprite::$7 ? (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) plex_sprite_idx#3 ? (byte/word/dword~) plexShowSprite::$7 - (byte) plex_show_idx#3 ? ++ (byte) plex_show_idx#14 - (byte) plex_sprite_msb#3 ? (byte) plex_sprite_msb#15 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) plexShowSprite::$8 ? (byte) plex_sprite_msb#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) plexShowSprite::$9 ? ! (bool~) plexShowSprite::$8 + (byte) plex_free_next#30 ← phi( plexShowSprite::@1/(byte) plex_free_next#38 plexShowSprite::@4/(byte) plex_free_next#39 ) + (byte) plex_sprite_msb#15 ← phi( plexShowSprite::@1/(byte) plex_sprite_msb#13 plexShowSprite::@4/(byte) plex_sprite_msb#14 ) + (byte) plex_show_idx#14 ← phi( plexShowSprite::@1/(byte) plex_show_idx#25 plexShowSprite::@4/(byte) plex_show_idx#26 ) + (byte) plex_sprite_idx#14 ← phi( plexShowSprite::@1/(byte) plex_sprite_idx#25 plexShowSprite::@4/(byte) plex_sprite_idx#26 ) + (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ← (byte) plex_sprite_idx#14 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte/word/dword~) plexShowSprite::$7 ← (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) plex_sprite_idx#3 ← (byte/word/dword~) plexShowSprite::$7 + (byte) plex_show_idx#3 ← ++ (byte) plex_show_idx#14 + (byte) plex_sprite_msb#3 ← (byte) plex_sprite_msb#15 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) plexShowSprite::$8 ← (byte) plex_sprite_msb#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) plexShowSprite::$9 ← ! (bool~) plexShowSprite::$8 if((bool~) plexShowSprite::$9) goto plexShowSprite::@3 to:plexShowSprite::@6 plexShowSprite::@3: scope:[plexShowSprite] from plexShowSprite::@2 - (byte) plex_sprite_msb#25 ? phi( plexShowSprite::@2/(byte) plex_sprite_msb#3 ) - (byte) plex_show_idx#27 ? phi( plexShowSprite::@2/(byte) plex_show_idx#3 ) - (byte) plex_sprite_idx#27 ? phi( plexShowSprite::@2/(byte) plex_sprite_idx#3 ) - (byte) plex_free_next#22 ? phi( plexShowSprite::@2/(byte) plex_free_next#30 ) + (byte) plex_sprite_msb#25 ← phi( plexShowSprite::@2/(byte) plex_sprite_msb#3 ) + (byte) plex_show_idx#27 ← phi( plexShowSprite::@2/(byte) plex_show_idx#3 ) + (byte) plex_sprite_idx#27 ← phi( plexShowSprite::@2/(byte) plex_sprite_idx#3 ) + (byte) plex_free_next#22 ← phi( plexShowSprite::@2/(byte) plex_free_next#30 ) to:plexShowSprite::@return plexShowSprite::@6: scope:[plexShowSprite] from plexShowSprite::@2 - (byte) plex_show_idx#28 ? phi( plexShowSprite::@2/(byte) plex_show_idx#3 ) - (byte) plex_sprite_idx#28 ? phi( plexShowSprite::@2/(byte) plex_sprite_idx#3 ) - (byte) plex_free_next#23 ? phi( plexShowSprite::@2/(byte) plex_free_next#30 ) - (byte) plex_sprite_msb#4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plex_show_idx#28 ← phi( plexShowSprite::@2/(byte) plex_show_idx#3 ) + (byte) plex_sprite_idx#28 ← phi( plexShowSprite::@2/(byte) plex_sprite_idx#3 ) + (byte) plex_free_next#23 ← phi( plexShowSprite::@2/(byte) plex_free_next#30 ) + (byte) plex_sprite_msb#4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:plexShowSprite::@return plexShowSprite::@return: scope:[plexShowSprite] from plexShowSprite::@3 plexShowSprite::@6 - (byte) plex_sprite_msb#16 ? phi( plexShowSprite::@3/(byte) plex_sprite_msb#25 plexShowSprite::@6/(byte) plex_sprite_msb#4 ) - (byte) plex_show_idx#15 ? phi( plexShowSprite::@3/(byte) plex_show_idx#27 plexShowSprite::@6/(byte) plex_show_idx#28 ) - (byte) plex_sprite_idx#15 ? phi( plexShowSprite::@3/(byte) plex_sprite_idx#27 plexShowSprite::@6/(byte) plex_sprite_idx#28 ) - (byte) plex_free_next#13 ? phi( plexShowSprite::@3/(byte) plex_free_next#22 plexShowSprite::@6/(byte) plex_free_next#23 ) - (byte) plex_free_next#3 ? (byte) plex_free_next#13 - (byte) plex_sprite_idx#4 ? (byte) plex_sprite_idx#15 - (byte) plex_show_idx#4 ? (byte) plex_show_idx#15 - (byte) plex_sprite_msb#5 ? (byte) plex_sprite_msb#16 + (byte) plex_sprite_msb#16 ← phi( plexShowSprite::@3/(byte) plex_sprite_msb#25 plexShowSprite::@6/(byte) plex_sprite_msb#4 ) + (byte) plex_show_idx#15 ← phi( plexShowSprite::@3/(byte) plex_show_idx#27 plexShowSprite::@6/(byte) plex_show_idx#28 ) + (byte) plex_sprite_idx#15 ← phi( plexShowSprite::@3/(byte) plex_sprite_idx#27 plexShowSprite::@6/(byte) plex_sprite_idx#28 ) + (byte) plex_free_next#13 ← phi( plexShowSprite::@3/(byte) plex_free_next#22 plexShowSprite::@6/(byte) plex_free_next#23 ) + (byte) plex_free_next#3 ← (byte) plex_free_next#13 + (byte) plex_sprite_idx#4 ← (byte) plex_sprite_idx#15 + (byte) plex_show_idx#4 ← (byte) plex_show_idx#15 + (byte) plex_sprite_msb#5 ← (byte) plex_sprite_msb#16 return to:@return @9: scope:[] from @4 - (byte) plex_sprite_msb#41 ? phi( @4/(byte) plex_sprite_msb#0 ) - (byte) plex_sprite_idx#41 ? phi( @4/(byte) plex_sprite_idx#0 ) - (byte) plex_show_idx#41 ? phi( @4/(byte) plex_show_idx#0 ) - (byte*) PLEX_SCREEN_PTR#27 ? phi( @4/(byte*) PLEX_SCREEN_PTR#0 ) - (byte[8]) PLEX_FREE_YPOS#0 ? { fill( 8, 0) } - (byte) plex_free_next#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) plex_sprite_msb#41 ← phi( @4/(byte) plex_sprite_msb#0 ) + (byte) plex_sprite_idx#41 ← phi( @4/(byte) plex_sprite_idx#0 ) + (byte) plex_show_idx#41 ← phi( @4/(byte) plex_show_idx#0 ) + (byte*) PLEX_SCREEN_PTR#27 ← phi( @4/(byte*) PLEX_SCREEN_PTR#0 ) + (byte[8]) PLEX_FREE_YPOS#0 ← { fill( 8, 0) } + (byte) plex_free_next#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@12 @12: scope:[] from @9 - (byte) plex_free_next#37 ? phi( @9/(byte) plex_free_next#4 ) - (byte) plex_sprite_msb#38 ? phi( @9/(byte) plex_sprite_msb#41 ) - (byte) plex_sprite_idx#39 ? phi( @9/(byte) plex_sprite_idx#41 ) - (byte) plex_show_idx#39 ? phi( @9/(byte) plex_show_idx#41 ) - (byte*) PLEX_SCREEN_PTR#25 ? phi( @9/(byte*) PLEX_SCREEN_PTR#27 ) - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) SPRITE#0 ? ((byte*)) (word/signed word/dword/signed dword) $2000 - (byte*) YSIN#0 ? ((byte*)) (word/signed word/dword/signed dword) $2100 + (byte) plex_free_next#37 ← phi( @9/(byte) plex_free_next#4 ) + (byte) plex_sprite_msb#38 ← phi( @9/(byte) plex_sprite_msb#41 ) + (byte) plex_sprite_idx#39 ← phi( @9/(byte) plex_sprite_idx#41 ) + (byte) plex_show_idx#39 ← phi( @9/(byte) plex_show_idx#41 ) + (byte*) PLEX_SCREEN_PTR#25 ← phi( @9/(byte*) PLEX_SCREEN_PTR#27 ) + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) SPRITE#0 ← ((byte*)) (word/signed word/dword/signed dword) $2000 + (byte*) YSIN#0 ← ((byte*)) (word/signed word/dword/signed dword) $2100 kickasm(location (byte*) YSIN#0) {{ .var min = 50 .var max = 250-21 .var ampl = max-min; @@ -335,348 +335,348 @@ plexShowSprite::@return: scope:[plexShowSprite] from plexShowSprite::@3 plexSho }} to:@15 main: scope:[main] from @15 - (byte) plex_free_next#31 ? phi( @15/(byte) plex_free_next#29 ) - (byte) plex_sprite_msb#33 ? phi( @15/(byte) plex_sprite_msb#30 ) - (byte) plex_sprite_idx#34 ? phi( @15/(byte) plex_sprite_idx#32 ) - (byte) plex_show_idx#34 ? phi( @15/(byte) plex_show_idx#32 ) - (byte*) PLEX_SCREEN_PTR#17 ? phi( @15/(byte*) PLEX_SCREEN_PTR#21 ) + (byte) plex_free_next#31 ← phi( @15/(byte) plex_free_next#29 ) + (byte) plex_sprite_msb#33 ← phi( @15/(byte) plex_sprite_msb#30 ) + (byte) plex_sprite_idx#34 ← phi( @15/(byte) plex_sprite_idx#32 ) + (byte) plex_show_idx#34 ← phi( @15/(byte) plex_show_idx#32 ) + (byte*) PLEX_SCREEN_PTR#17 ← phi( @15/(byte*) PLEX_SCREEN_PTR#21 ) asm { sei } call init to:main::@1 main::@1: scope:[main] from main - (byte) plex_free_next#24 ? phi( main/(byte) plex_free_next#31 ) - (byte) plex_sprite_msb#26 ? phi( main/(byte) plex_sprite_msb#33 ) - (byte) plex_sprite_idx#29 ? phi( main/(byte) plex_sprite_idx#34 ) - (byte) plex_show_idx#29 ? phi( main/(byte) plex_show_idx#34 ) - (byte*) PLEX_SCREEN_PTR#10 ? phi( main/(byte*) PLEX_SCREEN_PTR#6 ) - (byte*) PLEX_SCREEN_PTR#3 ? (byte*) PLEX_SCREEN_PTR#10 + (byte) plex_free_next#24 ← phi( main/(byte) plex_free_next#31 ) + (byte) plex_sprite_msb#26 ← phi( main/(byte) plex_sprite_msb#33 ) + (byte) plex_sprite_idx#29 ← phi( main/(byte) plex_sprite_idx#34 ) + (byte) plex_show_idx#29 ← phi( main/(byte) plex_show_idx#34 ) + (byte*) PLEX_SCREEN_PTR#10 ← phi( main/(byte*) PLEX_SCREEN_PTR#6 ) + (byte*) PLEX_SCREEN_PTR#3 ← (byte*) PLEX_SCREEN_PTR#10 call loop to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) PLEX_SCREEN_PTR#18 ? phi( main::@1/(byte*) PLEX_SCREEN_PTR#3 ) - (byte) plex_free_next#14 ? phi( main::@1/(byte) plex_free_next#9 ) - (byte) plex_sprite_msb#17 ? phi( main::@1/(byte) plex_sprite_msb#10 ) - (byte) plex_sprite_idx#16 ? phi( main::@1/(byte) plex_sprite_idx#9 ) - (byte) plex_show_idx#16 ? phi( main::@1/(byte) plex_show_idx#9 ) - (byte) plex_show_idx#5 ? (byte) plex_show_idx#16 - (byte) plex_sprite_idx#5 ? (byte) plex_sprite_idx#16 - (byte) plex_sprite_msb#6 ? (byte) plex_sprite_msb#17 - (byte) plex_free_next#5 ? (byte) plex_free_next#14 + (byte*) PLEX_SCREEN_PTR#18 ← phi( main::@1/(byte*) PLEX_SCREEN_PTR#3 ) + (byte) plex_free_next#14 ← phi( main::@1/(byte) plex_free_next#9 ) + (byte) plex_sprite_msb#17 ← phi( main::@1/(byte) plex_sprite_msb#10 ) + (byte) plex_sprite_idx#16 ← phi( main::@1/(byte) plex_sprite_idx#9 ) + (byte) plex_show_idx#16 ← phi( main::@1/(byte) plex_show_idx#9 ) + (byte) plex_show_idx#5 ← (byte) plex_show_idx#16 + (byte) plex_sprite_idx#5 ← (byte) plex_sprite_idx#16 + (byte) plex_sprite_msb#6 ← (byte) plex_sprite_msb#17 + (byte) plex_free_next#5 ← (byte) plex_free_next#14 to:main::@return main::@return: scope:[main] from main::@2 - (byte) plex_free_next#15 ? phi( main::@2/(byte) plex_free_next#5 ) - (byte) plex_sprite_msb#18 ? phi( main::@2/(byte) plex_sprite_msb#6 ) - (byte) plex_sprite_idx#17 ? phi( main::@2/(byte) plex_sprite_idx#5 ) - (byte) plex_show_idx#17 ? phi( main::@2/(byte) plex_show_idx#5 ) - (byte*) PLEX_SCREEN_PTR#11 ? phi( main::@2/(byte*) PLEX_SCREEN_PTR#18 ) - (byte*) PLEX_SCREEN_PTR#4 ? (byte*) PLEX_SCREEN_PTR#11 - (byte) plex_show_idx#6 ? (byte) plex_show_idx#17 - (byte) plex_sprite_idx#6 ? (byte) plex_sprite_idx#17 - (byte) plex_sprite_msb#7 ? (byte) plex_sprite_msb#18 - (byte) plex_free_next#6 ? (byte) plex_free_next#15 + (byte) plex_free_next#15 ← phi( main::@2/(byte) plex_free_next#5 ) + (byte) plex_sprite_msb#18 ← phi( main::@2/(byte) plex_sprite_msb#6 ) + (byte) plex_sprite_idx#17 ← phi( main::@2/(byte) plex_sprite_idx#5 ) + (byte) plex_show_idx#17 ← phi( main::@2/(byte) plex_show_idx#5 ) + (byte*) PLEX_SCREEN_PTR#11 ← phi( main::@2/(byte*) PLEX_SCREEN_PTR#18 ) + (byte*) PLEX_SCREEN_PTR#4 ← (byte*) PLEX_SCREEN_PTR#11 + (byte) plex_show_idx#6 ← (byte) plex_show_idx#17 + (byte) plex_sprite_idx#6 ← (byte) plex_sprite_idx#17 + (byte) plex_sprite_msb#7 ← (byte) plex_sprite_msb#18 + (byte) plex_free_next#6 ← (byte) plex_free_next#15 return to:@return init: scope:[init] from main - (byte*) PLEX_SCREEN_PTR#19 ? phi( main/(byte*) PLEX_SCREEN_PTR#17 ) - (byte~) init::$0 ? (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 - (byte/word/dword~) init::$1 ? (byte~) init::$0 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) D011#0) ? (byte/word/dword~) init::$1 - (byte*) plexInit::screen#0 ? (byte*) SCREEN#0 + (byte*) PLEX_SCREEN_PTR#19 ← phi( main/(byte*) PLEX_SCREEN_PTR#17 ) + (byte~) init::$0 ← (byte) VIC_DEN#0 | (byte) VIC_RSEL#0 + (byte/word/dword~) init::$1 ← (byte~) init::$0 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) D011#0) ← (byte/word/dword~) init::$1 + (byte*) plexInit::screen#0 ← (byte*) SCREEN#0 call plexInit to:init::@5 init::@5: scope:[init] from init - (byte*) PLEX_SCREEN_PTR#12 ? phi( init/(byte*) PLEX_SCREEN_PTR#2 ) - (byte*) PLEX_SCREEN_PTR#5 ? (byte*) PLEX_SCREEN_PTR#12 - (word) init::xp#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte/signed word/word/dword/signed dword~) init::$3 ? (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) init::sx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) PLEX_SCREEN_PTR#12 ← phi( init/(byte*) PLEX_SCREEN_PTR#2 ) + (byte*) PLEX_SCREEN_PTR#5 ← (byte*) PLEX_SCREEN_PTR#12 + (word) init::xp#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte/signed word/word/dword/signed dword~) init::$3 ← (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) init::sx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:init::@1 init::@1: scope:[init] from init::@1 init::@5 - (byte*) PLEX_SCREEN_PTR#28 ? phi( init::@1/(byte*) PLEX_SCREEN_PTR#28 init::@5/(byte*) PLEX_SCREEN_PTR#5 ) - (word) init::xp#2 ? phi( init::@1/(word) init::xp#1 init::@5/(word) init::xp#0 ) - (byte) init::sx#2 ? phi( init::@1/(byte) init::sx#1 init::@5/(byte) init::sx#0 ) - (byte*~) init::$4 ? (byte*) SPRITE#0 / (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte~) init::$5 ? ((byte)) (byte*~) init::$4 - *((byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ? (byte~) init::$5 - (byte~) init::$6 ? (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - *((word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ? (word) init::xp#2 - (word) init::xp#1 ? (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) init::sx#1 ? (byte) init::sx#2 + rangenext(0,init::$3) - (bool~) init::$7 ? (byte) init::sx#1 != rangelast(0,init::$3) + (byte*) PLEX_SCREEN_PTR#28 ← phi( init::@1/(byte*) PLEX_SCREEN_PTR#28 init::@5/(byte*) PLEX_SCREEN_PTR#5 ) + (word) init::xp#2 ← phi( init::@1/(word) init::xp#1 init::@5/(word) init::xp#0 ) + (byte) init::sx#2 ← phi( init::@1/(byte) init::sx#1 init::@5/(byte) init::sx#0 ) + (byte*~) init::$4 ← (byte*) SPRITE#0 / (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte~) init::$5 ← ((byte)) (byte*~) init::$4 + *((byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ← (byte~) init::$5 + (byte~) init::$6 ← (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + *((word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ← (word) init::xp#2 + (word) init::xp#1 ← (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) init::sx#1 ← (byte) init::sx#2 + rangenext(0,init::$3) + (bool~) init::$7 ← (byte) init::sx#1 != rangelast(0,init::$3) if((bool~) init::$7) goto init::@1 to:init::@2 init::@2: scope:[init] from init::@1 - (byte*) PLEX_SCREEN_PTR#24 ? phi( init::@1/(byte*) PLEX_SCREEN_PTR#28 ) - *((byte*) SPRITES_ENABLE#0) ? (byte/word/signed word/dword/signed dword) $ff - (byte) init::ss#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) PLEX_SCREEN_PTR#24 ← phi( init::@1/(byte*) PLEX_SCREEN_PTR#28 ) + *((byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) $ff + (byte) init::ss#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:init::@3 init::@3: scope:[init] from init::@2 init::@3 - (byte*) PLEX_SCREEN_PTR#20 ? phi( init::@2/(byte*) PLEX_SCREEN_PTR#24 init::@3/(byte*) PLEX_SCREEN_PTR#20 ) - (byte) init::ss#2 ? phi( init::@2/(byte) init::ss#0 init::@3/(byte) init::ss#1 ) - *((byte*) SPRITES_COLS#0 + (byte) init::ss#2) ? (byte) GREEN#0 - (byte) init::ss#1 ? (byte) init::ss#2 + rangenext(0,7) - (bool~) init::$8 ? (byte) init::ss#1 != rangelast(0,7) + (byte*) PLEX_SCREEN_PTR#20 ← phi( init::@2/(byte*) PLEX_SCREEN_PTR#24 init::@3/(byte*) PLEX_SCREEN_PTR#20 ) + (byte) init::ss#2 ← phi( init::@2/(byte) init::ss#0 init::@3/(byte) init::ss#1 ) + *((byte*) SPRITES_COLS#0 + (byte) init::ss#2) ← (byte) GREEN#0 + (byte) init::ss#1 ← (byte) init::ss#2 + rangenext(0,7) + (bool~) init::$8 ← (byte) init::ss#1 != rangelast(0,7) if((bool~) init::$8) goto init::@3 to:init::@return init::@return: scope:[init] from init::@3 - (byte*) PLEX_SCREEN_PTR#13 ? phi( init::@3/(byte*) PLEX_SCREEN_PTR#20 ) - (byte*) PLEX_SCREEN_PTR#6 ? (byte*) PLEX_SCREEN_PTR#13 + (byte*) PLEX_SCREEN_PTR#13 ← phi( init::@3/(byte*) PLEX_SCREEN_PTR#20 ) + (byte*) PLEX_SCREEN_PTR#6 ← (byte*) PLEX_SCREEN_PTR#13 return to:@return loop: scope:[loop] from main::@1 - (byte*) PLEX_SCREEN_PTR#47 ? phi( main::@1/(byte*) PLEX_SCREEN_PTR#3 ) - (byte) plex_free_next#32 ? phi( main::@1/(byte) plex_free_next#24 ) - (byte) plex_sprite_msb#34 ? phi( main::@1/(byte) plex_sprite_msb#26 ) - (byte) plex_sprite_idx#35 ? phi( main::@1/(byte) plex_sprite_idx#29 ) - (byte) plex_show_idx#35 ? phi( main::@1/(byte) plex_show_idx#29 ) - (byte) loop::sin_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) PLEX_SCREEN_PTR#47 ← phi( main::@1/(byte*) PLEX_SCREEN_PTR#3 ) + (byte) plex_free_next#32 ← phi( main::@1/(byte) plex_free_next#24 ) + (byte) plex_sprite_msb#34 ← phi( main::@1/(byte) plex_sprite_msb#26 ) + (byte) plex_sprite_idx#35 ← phi( main::@1/(byte) plex_sprite_idx#29 ) + (byte) plex_show_idx#35 ← phi( main::@1/(byte) plex_show_idx#29 ) + (byte) loop::sin_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:loop::@1 loop::@1: scope:[loop] from loop loop::@25 - (byte*) PLEX_SCREEN_PTR#46 ? phi( loop/(byte*) PLEX_SCREEN_PTR#47 loop::@25/(byte*) PLEX_SCREEN_PTR#48 ) - (byte) loop::sin_idx#8 ? phi( loop/(byte) loop::sin_idx#0 loop::@25/(byte) loop::sin_idx#9 ) - (byte) plex_free_next#28 ? phi( loop/(byte) plex_free_next#32 loop::@25/(byte) plex_free_next#33 ) - (byte) plex_sprite_msb#29 ? phi( loop/(byte) plex_sprite_msb#34 loop::@25/(byte) plex_sprite_msb#35 ) - (byte) plex_sprite_idx#31 ? phi( loop/(byte) plex_sprite_idx#35 loop::@25/(byte) plex_sprite_idx#36 ) - (byte) plex_show_idx#31 ? phi( loop/(byte) plex_show_idx#35 loop::@25/(byte) plex_show_idx#36 ) + (byte*) PLEX_SCREEN_PTR#46 ← phi( loop/(byte*) PLEX_SCREEN_PTR#47 loop::@25/(byte*) PLEX_SCREEN_PTR#48 ) + (byte) loop::sin_idx#8 ← phi( loop/(byte) loop::sin_idx#0 loop::@25/(byte) loop::sin_idx#9 ) + (byte) plex_free_next#28 ← phi( loop/(byte) plex_free_next#32 loop::@25/(byte) plex_free_next#33 ) + (byte) plex_sprite_msb#29 ← phi( loop/(byte) plex_sprite_msb#34 loop::@25/(byte) plex_sprite_msb#35 ) + (byte) plex_sprite_idx#31 ← phi( loop/(byte) plex_sprite_idx#35 loop::@25/(byte) plex_sprite_idx#36 ) + (byte) plex_show_idx#31 ← phi( loop/(byte) plex_show_idx#35 loop::@25/(byte) plex_show_idx#36 ) if(true) goto loop::@2 to:loop::@return loop::@2: scope:[loop] from loop::@1 - (byte*) PLEX_SCREEN_PTR#44 ? phi( loop::@1/(byte*) PLEX_SCREEN_PTR#46 ) - (byte) plex_free_next#48 ? phi( loop::@1/(byte) plex_free_next#28 ) - (byte) plex_sprite_msb#47 ? phi( loop::@1/(byte) plex_sprite_msb#29 ) - (byte) plex_sprite_idx#47 ? phi( loop::@1/(byte) plex_sprite_idx#31 ) - (byte) plex_show_idx#47 ? phi( loop::@1/(byte) plex_show_idx#31 ) - (byte) loop::sin_idx#6 ? phi( loop::@1/(byte) loop::sin_idx#8 ) + (byte*) PLEX_SCREEN_PTR#44 ← phi( loop::@1/(byte*) PLEX_SCREEN_PTR#46 ) + (byte) plex_free_next#48 ← phi( loop::@1/(byte) plex_free_next#28 ) + (byte) plex_sprite_msb#47 ← phi( loop::@1/(byte) plex_sprite_msb#29 ) + (byte) plex_sprite_idx#47 ← phi( loop::@1/(byte) plex_sprite_idx#31 ) + (byte) plex_show_idx#47 ← phi( loop::@1/(byte) plex_show_idx#31 ) + (byte) loop::sin_idx#6 ← phi( loop::@1/(byte) loop::sin_idx#8 ) to:loop::@4 loop::@4: scope:[loop] from loop::@2 loop::@5 - (byte*) PLEX_SCREEN_PTR#43 ? phi( loop::@2/(byte*) PLEX_SCREEN_PTR#44 loop::@5/(byte*) PLEX_SCREEN_PTR#45 ) - (byte) plex_free_next#45 ? phi( loop::@2/(byte) plex_free_next#48 loop::@5/(byte) plex_free_next#49 ) - (byte) plex_sprite_msb#45 ? phi( loop::@2/(byte) plex_sprite_msb#47 loop::@5/(byte) plex_sprite_msb#48 ) - (byte) plex_sprite_idx#45 ? phi( loop::@2/(byte) plex_sprite_idx#47 loop::@5/(byte) plex_sprite_idx#48 ) - (byte) plex_show_idx#45 ? phi( loop::@2/(byte) plex_show_idx#47 loop::@5/(byte) plex_show_idx#48 ) - (byte) loop::sin_idx#4 ? phi( loop::@2/(byte) loop::sin_idx#6 loop::@5/(byte) loop::sin_idx#7 ) - (bool~) loop::$0 ? *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff + (byte*) PLEX_SCREEN_PTR#43 ← phi( loop::@2/(byte*) PLEX_SCREEN_PTR#44 loop::@5/(byte*) PLEX_SCREEN_PTR#45 ) + (byte) plex_free_next#45 ← phi( loop::@2/(byte) plex_free_next#48 loop::@5/(byte) plex_free_next#49 ) + (byte) plex_sprite_msb#45 ← phi( loop::@2/(byte) plex_sprite_msb#47 loop::@5/(byte) plex_sprite_msb#48 ) + (byte) plex_sprite_idx#45 ← phi( loop::@2/(byte) plex_sprite_idx#47 loop::@5/(byte) plex_sprite_idx#48 ) + (byte) plex_show_idx#45 ← phi( loop::@2/(byte) plex_show_idx#47 loop::@5/(byte) plex_show_idx#48 ) + (byte) loop::sin_idx#4 ← phi( loop::@2/(byte) loop::sin_idx#6 loop::@5/(byte) loop::sin_idx#7 ) + (bool~) loop::$0 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff if((bool~) loop::$0) goto loop::@5 to:loop::@6 loop::@5: scope:[loop] from loop::@4 - (byte*) PLEX_SCREEN_PTR#45 ? phi( loop::@4/(byte*) PLEX_SCREEN_PTR#43 ) - (byte) plex_free_next#49 ? phi( loop::@4/(byte) plex_free_next#45 ) - (byte) plex_sprite_msb#48 ? phi( loop::@4/(byte) plex_sprite_msb#45 ) - (byte) plex_sprite_idx#48 ? phi( loop::@4/(byte) plex_sprite_idx#45 ) - (byte) plex_show_idx#48 ? phi( loop::@4/(byte) plex_show_idx#45 ) - (byte) loop::sin_idx#7 ? phi( loop::@4/(byte) loop::sin_idx#4 ) + (byte*) PLEX_SCREEN_PTR#45 ← phi( loop::@4/(byte*) PLEX_SCREEN_PTR#43 ) + (byte) plex_free_next#49 ← phi( loop::@4/(byte) plex_free_next#45 ) + (byte) plex_sprite_msb#48 ← phi( loop::@4/(byte) plex_sprite_msb#45 ) + (byte) plex_sprite_idx#48 ← phi( loop::@4/(byte) plex_sprite_idx#45 ) + (byte) plex_show_idx#48 ← phi( loop::@4/(byte) plex_show_idx#45 ) + (byte) loop::sin_idx#7 ← phi( loop::@4/(byte) loop::sin_idx#4 ) to:loop::@4 loop::@6: scope:[loop] from loop::@4 - (byte*) PLEX_SCREEN_PTR#42 ? phi( loop::@4/(byte*) PLEX_SCREEN_PTR#43 ) - (byte) plex_free_next#40 ? phi( loop::@4/(byte) plex_free_next#45 ) - (byte) plex_sprite_msb#42 ? phi( loop::@4/(byte) plex_sprite_msb#45 ) - (byte) plex_sprite_idx#42 ? phi( loop::@4/(byte) plex_sprite_idx#45 ) - (byte) plex_show_idx#42 ? phi( loop::@4/(byte) plex_show_idx#45 ) - (byte) loop::sin_idx#2 ? phi( loop::@4/(byte) loop::sin_idx#4 ) - *((byte*) BORDERCOL#0) ? ++ *((byte*) BORDERCOL#0) - (byte) loop::y_idx#0 ? (byte) loop::sin_idx#2 - (byte/signed word/word/dword/signed dword~) loop::$1 ? (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) loop::sy#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) PLEX_SCREEN_PTR#42 ← phi( loop::@4/(byte*) PLEX_SCREEN_PTR#43 ) + (byte) plex_free_next#40 ← phi( loop::@4/(byte) plex_free_next#45 ) + (byte) plex_sprite_msb#42 ← phi( loop::@4/(byte) plex_sprite_msb#45 ) + (byte) plex_sprite_idx#42 ← phi( loop::@4/(byte) plex_sprite_idx#45 ) + (byte) plex_show_idx#42 ← phi( loop::@4/(byte) plex_show_idx#45 ) + (byte) loop::sin_idx#2 ← phi( loop::@4/(byte) loop::sin_idx#4 ) + *((byte*) BORDERCOL#0) ← ++ *((byte*) BORDERCOL#0) + (byte) loop::y_idx#0 ← (byte) loop::sin_idx#2 + (byte/signed word/word/dword/signed dword~) loop::$1 ← (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) loop::sy#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:loop::@10 loop::@10: scope:[loop] from loop::@10 loop::@6 - (byte*) PLEX_SCREEN_PTR#41 ? phi( loop::@10/(byte*) PLEX_SCREEN_PTR#41 loop::@6/(byte*) PLEX_SCREEN_PTR#42 ) - (byte) plex_free_next#34 ? phi( loop::@10/(byte) plex_free_next#34 loop::@6/(byte) plex_free_next#40 ) - (byte) plex_sprite_msb#36 ? phi( loop::@10/(byte) plex_sprite_msb#36 loop::@6/(byte) plex_sprite_msb#42 ) - (byte) plex_sprite_idx#37 ? phi( loop::@10/(byte) plex_sprite_idx#37 loop::@6/(byte) plex_sprite_idx#42 ) - (byte) plex_show_idx#37 ? phi( loop::@10/(byte) plex_show_idx#37 loop::@6/(byte) plex_show_idx#42 ) - (byte) loop::sin_idx#5 ? phi( loop::@10/(byte) loop::sin_idx#5 loop::@6/(byte) loop::sin_idx#2 ) - (byte) loop::sy#2 ? phi( loop::@10/(byte) loop::sy#1 loop::@6/(byte) loop::sy#0 ) - (byte) loop::y_idx#2 ? phi( loop::@10/(byte) loop::y_idx#1 loop::@6/(byte) loop::y_idx#0 ) - *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ? *((byte*) YSIN#0 + (byte) loop::y_idx#2) - (byte) loop::y_idx#1 ? (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) loop::sy#1 ? (byte) loop::sy#2 + rangenext(0,loop::$1) - (bool~) loop::$2 ? (byte) loop::sy#1 != rangelast(0,loop::$1) + (byte*) PLEX_SCREEN_PTR#41 ← phi( loop::@10/(byte*) PLEX_SCREEN_PTR#41 loop::@6/(byte*) PLEX_SCREEN_PTR#42 ) + (byte) plex_free_next#34 ← phi( loop::@10/(byte) plex_free_next#34 loop::@6/(byte) plex_free_next#40 ) + (byte) plex_sprite_msb#36 ← phi( loop::@10/(byte) plex_sprite_msb#36 loop::@6/(byte) plex_sprite_msb#42 ) + (byte) plex_sprite_idx#37 ← phi( loop::@10/(byte) plex_sprite_idx#37 loop::@6/(byte) plex_sprite_idx#42 ) + (byte) plex_show_idx#37 ← phi( loop::@10/(byte) plex_show_idx#37 loop::@6/(byte) plex_show_idx#42 ) + (byte) loop::sin_idx#5 ← phi( loop::@10/(byte) loop::sin_idx#5 loop::@6/(byte) loop::sin_idx#2 ) + (byte) loop::sy#2 ← phi( loop::@10/(byte) loop::sy#1 loop::@6/(byte) loop::sy#0 ) + (byte) loop::y_idx#2 ← phi( loop::@10/(byte) loop::y_idx#1 loop::@6/(byte) loop::y_idx#0 ) + *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ← *((byte*) YSIN#0 + (byte) loop::y_idx#2) + (byte) loop::y_idx#1 ← (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) loop::sy#1 ← (byte) loop::sy#2 + rangenext(0,loop::$1) + (bool~) loop::$2 ← (byte) loop::sy#1 != rangelast(0,loop::$1) if((bool~) loop::$2) goto loop::@10 to:loop::@11 loop::@11: scope:[loop] from loop::@10 - (byte*) PLEX_SCREEN_PTR#40 ? phi( loop::@10/(byte*) PLEX_SCREEN_PTR#41 ) - (byte) plex_free_next#25 ? phi( loop::@10/(byte) plex_free_next#34 ) - (byte) plex_sprite_msb#27 ? phi( loop::@10/(byte) plex_sprite_msb#36 ) - (byte) plex_sprite_idx#30 ? phi( loop::@10/(byte) plex_sprite_idx#37 ) - (byte) plex_show_idx#30 ? phi( loop::@10/(byte) plex_show_idx#37 ) - (byte) loop::sin_idx#3 ? phi( loop::@10/(byte) loop::sin_idx#5 ) - (byte) loop::sin_idx#1 ? (byte) loop::sin_idx#3 + (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) BORDERCOL#0) ? ++ *((byte*) BORDERCOL#0) + (byte*) PLEX_SCREEN_PTR#40 ← phi( loop::@10/(byte*) PLEX_SCREEN_PTR#41 ) + (byte) plex_free_next#25 ← phi( loop::@10/(byte) plex_free_next#34 ) + (byte) plex_sprite_msb#27 ← phi( loop::@10/(byte) plex_sprite_msb#36 ) + (byte) plex_sprite_idx#30 ← phi( loop::@10/(byte) plex_sprite_idx#37 ) + (byte) plex_show_idx#30 ← phi( loop::@10/(byte) plex_show_idx#37 ) + (byte) loop::sin_idx#3 ← phi( loop::@10/(byte) loop::sin_idx#5 ) + (byte) loop::sin_idx#1 ← (byte) loop::sin_idx#3 + (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) BORDERCOL#0) ← ++ *((byte*) BORDERCOL#0) call plexSort to:loop::@30 loop::@30: scope:[loop] from loop::@11 - (byte) loop::sin_idx#21 ? phi( loop::@11/(byte) loop::sin_idx#1 ) - (byte*) PLEX_SCREEN_PTR#39 ? phi( loop::@11/(byte*) PLEX_SCREEN_PTR#40 ) - (byte) plex_free_next#16 ? phi( loop::@11/(byte) plex_free_next#1 ) - (byte) plex_sprite_msb#19 ? phi( loop::@11/(byte) plex_sprite_msb#2 ) - (byte) plex_sprite_idx#18 ? phi( loop::@11/(byte) plex_sprite_idx#2 ) - (byte) plex_show_idx#18 ? phi( loop::@11/(byte) plex_show_idx#2 ) - (byte) plex_show_idx#7 ? (byte) plex_show_idx#18 - (byte) plex_sprite_idx#7 ? (byte) plex_sprite_idx#18 - (byte) plex_sprite_msb#8 ? (byte) plex_sprite_msb#19 - (byte) plex_free_next#7 ? (byte) plex_free_next#16 - *((byte*) BORDERCOL#0) ? (byte) BLACK#0 + (byte) loop::sin_idx#21 ← phi( loop::@11/(byte) loop::sin_idx#1 ) + (byte*) PLEX_SCREEN_PTR#39 ← phi( loop::@11/(byte*) PLEX_SCREEN_PTR#40 ) + (byte) plex_free_next#16 ← phi( loop::@11/(byte) plex_free_next#1 ) + (byte) plex_sprite_msb#19 ← phi( loop::@11/(byte) plex_sprite_msb#2 ) + (byte) plex_sprite_idx#18 ← phi( loop::@11/(byte) plex_sprite_idx#2 ) + (byte) plex_show_idx#18 ← phi( loop::@11/(byte) plex_show_idx#2 ) + (byte) plex_show_idx#7 ← (byte) plex_show_idx#18 + (byte) plex_sprite_idx#7 ← (byte) plex_sprite_idx#18 + (byte) plex_sprite_msb#8 ← (byte) plex_sprite_msb#19 + (byte) plex_free_next#7 ← (byte) plex_free_next#16 + *((byte*) BORDERCOL#0) ← (byte) BLACK#0 to:loop::@12 loop::@12: scope:[loop] from loop::@13 loop::@30 - (byte) loop::sin_idx#19 ? phi( loop::@13/(byte) loop::sin_idx#20 loop::@30/(byte) loop::sin_idx#21 ) - (byte*) PLEX_SCREEN_PTR#37 ? phi( loop::@13/(byte*) PLEX_SCREEN_PTR#38 loop::@30/(byte*) PLEX_SCREEN_PTR#39 ) - (byte) plex_sprite_msb#52 ? phi( loop::@13/(byte) plex_sprite_msb#53 loop::@30/(byte) plex_sprite_msb#8 ) - (byte) plex_show_idx#52 ? phi( loop::@13/(byte) plex_show_idx#53 loop::@30/(byte) plex_show_idx#7 ) - (byte) plex_sprite_idx#52 ? phi( loop::@13/(byte) plex_sprite_idx#53 loop::@30/(byte) plex_sprite_idx#7 ) - (byte) plex_free_next#41 ? phi( loop::@13/(byte) plex_free_next#46 loop::@30/(byte) plex_free_next#7 ) - (byte~) loop::$4 ? *((byte*) D011#0) & (byte) VIC_RST8#0 - (bool~) loop::$5 ? (byte~) loop::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) loop::sin_idx#19 ← phi( loop::@13/(byte) loop::sin_idx#20 loop::@30/(byte) loop::sin_idx#21 ) + (byte*) PLEX_SCREEN_PTR#37 ← phi( loop::@13/(byte*) PLEX_SCREEN_PTR#38 loop::@30/(byte*) PLEX_SCREEN_PTR#39 ) + (byte) plex_sprite_msb#52 ← phi( loop::@13/(byte) plex_sprite_msb#53 loop::@30/(byte) plex_sprite_msb#8 ) + (byte) plex_show_idx#52 ← phi( loop::@13/(byte) plex_show_idx#53 loop::@30/(byte) plex_show_idx#7 ) + (byte) plex_sprite_idx#52 ← phi( loop::@13/(byte) plex_sprite_idx#53 loop::@30/(byte) plex_sprite_idx#7 ) + (byte) plex_free_next#41 ← phi( loop::@13/(byte) plex_free_next#46 loop::@30/(byte) plex_free_next#7 ) + (byte~) loop::$4 ← *((byte*) D011#0) & (byte) VIC_RST8#0 + (bool~) loop::$5 ← (byte~) loop::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) loop::$5) goto loop::@13 to:loop::@14 loop::@13: scope:[loop] from loop::@12 - (byte) loop::sin_idx#20 ? phi( loop::@12/(byte) loop::sin_idx#19 ) - (byte*) PLEX_SCREEN_PTR#38 ? phi( loop::@12/(byte*) PLEX_SCREEN_PTR#37 ) - (byte) plex_sprite_msb#53 ? phi( loop::@12/(byte) plex_sprite_msb#52 ) - (byte) plex_show_idx#53 ? phi( loop::@12/(byte) plex_show_idx#52 ) - (byte) plex_sprite_idx#53 ? phi( loop::@12/(byte) plex_sprite_idx#52 ) - (byte) plex_free_next#46 ? phi( loop::@12/(byte) plex_free_next#41 ) + (byte) loop::sin_idx#20 ← phi( loop::@12/(byte) loop::sin_idx#19 ) + (byte*) PLEX_SCREEN_PTR#38 ← phi( loop::@12/(byte*) PLEX_SCREEN_PTR#37 ) + (byte) plex_sprite_msb#53 ← phi( loop::@12/(byte) plex_sprite_msb#52 ) + (byte) plex_show_idx#53 ← phi( loop::@12/(byte) plex_show_idx#52 ) + (byte) plex_sprite_idx#53 ← phi( loop::@12/(byte) plex_sprite_idx#52 ) + (byte) plex_free_next#46 ← phi( loop::@12/(byte) plex_free_next#41 ) to:loop::@12 loop::@14: scope:[loop] from loop::@12 - (byte) loop::sin_idx#18 ? phi( loop::@12/(byte) loop::sin_idx#19 ) - (byte*) PLEX_SCREEN_PTR#35 ? phi( loop::@12/(byte*) PLEX_SCREEN_PTR#37 ) - (byte) plex_sprite_msb#51 ? phi( loop::@12/(byte) plex_sprite_msb#52 ) - (byte) plex_show_idx#51 ? phi( loop::@12/(byte) plex_show_idx#52 ) - (byte) plex_sprite_idx#51 ? phi( loop::@12/(byte) plex_sprite_idx#52 ) - (byte) plex_free_next#35 ? phi( loop::@12/(byte) plex_free_next#41 ) - (byte/signed word/word/dword/signed dword~) loop::$6 ? (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) loop::ss#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) loop::sin_idx#18 ← phi( loop::@12/(byte) loop::sin_idx#19 ) + (byte*) PLEX_SCREEN_PTR#35 ← phi( loop::@12/(byte*) PLEX_SCREEN_PTR#37 ) + (byte) plex_sprite_msb#51 ← phi( loop::@12/(byte) plex_sprite_msb#52 ) + (byte) plex_show_idx#51 ← phi( loop::@12/(byte) plex_show_idx#52 ) + (byte) plex_sprite_idx#51 ← phi( loop::@12/(byte) plex_sprite_idx#52 ) + (byte) plex_free_next#35 ← phi( loop::@12/(byte) plex_free_next#41 ) + (byte/signed word/word/dword/signed dword~) loop::$6 ← (byte) PLEX_COUNT#0 - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) loop::ss#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:loop::@18 loop::@18: scope:[loop] from loop::@14 loop::@31 - (byte) loop::sin_idx#17 ? phi( loop::@14/(byte) loop::sin_idx#18 loop::@31/(byte) loop::sin_idx#10 ) - (byte*) PLEX_SCREEN_PTR#34 ? phi( loop::@14/(byte*) PLEX_SCREEN_PTR#35 loop::@31/(byte*) PLEX_SCREEN_PTR#36 ) - (byte) loop::ss#9 ? phi( loop::@14/(byte) loop::ss#0 loop::@31/(byte) loop::ss#1 ) - (byte) plex_sprite_msb#50 ? phi( loop::@14/(byte) plex_sprite_msb#51 loop::@31/(byte) plex_sprite_msb#9 ) - (byte) plex_show_idx#50 ? phi( loop::@14/(byte) plex_show_idx#51 loop::@31/(byte) plex_show_idx#8 ) - (byte) plex_sprite_idx#50 ? phi( loop::@14/(byte) plex_sprite_idx#51 loop::@31/(byte) plex_sprite_idx#8 ) - (byte) plex_free_next#26 ? phi( loop::@14/(byte) plex_free_next#35 loop::@31/(byte) plex_free_next#8 ) - *((byte*) BORDERCOL#0) ? (byte) BLACK#0 + (byte) loop::sin_idx#17 ← phi( loop::@14/(byte) loop::sin_idx#18 loop::@31/(byte) loop::sin_idx#10 ) + (byte*) PLEX_SCREEN_PTR#34 ← phi( loop::@14/(byte*) PLEX_SCREEN_PTR#35 loop::@31/(byte*) PLEX_SCREEN_PTR#36 ) + (byte) loop::ss#9 ← phi( loop::@14/(byte) loop::ss#0 loop::@31/(byte) loop::ss#1 ) + (byte) plex_sprite_msb#50 ← phi( loop::@14/(byte) plex_sprite_msb#51 loop::@31/(byte) plex_sprite_msb#9 ) + (byte) plex_show_idx#50 ← phi( loop::@14/(byte) plex_show_idx#51 loop::@31/(byte) plex_show_idx#8 ) + (byte) plex_sprite_idx#50 ← phi( loop::@14/(byte) plex_sprite_idx#51 loop::@31/(byte) plex_sprite_idx#8 ) + (byte) plex_free_next#26 ← phi( loop::@14/(byte) plex_free_next#35 loop::@31/(byte) plex_free_next#8 ) + *((byte*) BORDERCOL#0) ← (byte) BLACK#0 to:loop::plexFreeNextYpos1 loop::plexFreeNextYpos1: scope:[loop] from loop::@18 - (byte) loop::sin_idx#16 ? phi( loop::@18/(byte) loop::sin_idx#17 ) - (byte*) PLEX_SCREEN_PTR#33 ? phi( loop::@18/(byte*) PLEX_SCREEN_PTR#34 ) - (byte) loop::ss#8 ? phi( loop::@18/(byte) loop::ss#9 ) - (byte) plex_sprite_msb#49 ? phi( loop::@18/(byte) plex_sprite_msb#50 ) - (byte) plex_show_idx#49 ? phi( loop::@18/(byte) plex_show_idx#50 ) - (byte) plex_sprite_idx#49 ? phi( loop::@18/(byte) plex_sprite_idx#50 ) - (byte) plex_free_next#17 ? phi( loop::@18/(byte) plex_free_next#26 ) - (byte) loop::plexFreeNextYpos1_return#0 ? *((byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) + (byte) loop::sin_idx#16 ← phi( loop::@18/(byte) loop::sin_idx#17 ) + (byte*) PLEX_SCREEN_PTR#33 ← phi( loop::@18/(byte*) PLEX_SCREEN_PTR#34 ) + (byte) loop::ss#8 ← phi( loop::@18/(byte) loop::ss#9 ) + (byte) plex_sprite_msb#49 ← phi( loop::@18/(byte) plex_sprite_msb#50 ) + (byte) plex_show_idx#49 ← phi( loop::@18/(byte) plex_show_idx#50 ) + (byte) plex_sprite_idx#49 ← phi( loop::@18/(byte) plex_sprite_idx#50 ) + (byte) plex_free_next#17 ← phi( loop::@18/(byte) plex_free_next#26 ) + (byte) loop::plexFreeNextYpos1_return#0 ← *((byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) to:loop::plexFreeNextYpos1_@return loop::plexFreeNextYpos1_@return: scope:[loop] from loop::plexFreeNextYpos1 - (byte) loop::sin_idx#15 ? phi( loop::plexFreeNextYpos1/(byte) loop::sin_idx#16 ) - (byte*) PLEX_SCREEN_PTR#32 ? phi( loop::plexFreeNextYpos1/(byte*) PLEX_SCREEN_PTR#33 ) - (byte) loop::ss#7 ? phi( loop::plexFreeNextYpos1/(byte) loop::ss#8 ) - (byte) plex_sprite_msb#46 ? phi( loop::plexFreeNextYpos1/(byte) plex_sprite_msb#49 ) - (byte) plex_free_next#47 ? phi( loop::plexFreeNextYpos1/(byte) plex_free_next#17 ) - (byte) plex_show_idx#46 ? phi( loop::plexFreeNextYpos1/(byte) plex_show_idx#49 ) - (byte) plex_sprite_idx#46 ? phi( loop::plexFreeNextYpos1/(byte) plex_sprite_idx#49 ) - (byte) loop::plexFreeNextYpos1_return#2 ? phi( loop::plexFreeNextYpos1/(byte) loop::plexFreeNextYpos1_return#0 ) - (byte) loop::plexFreeNextYpos1_return#1 ? (byte) loop::plexFreeNextYpos1_return#2 + (byte) loop::sin_idx#15 ← phi( loop::plexFreeNextYpos1/(byte) loop::sin_idx#16 ) + (byte*) PLEX_SCREEN_PTR#32 ← phi( loop::plexFreeNextYpos1/(byte*) PLEX_SCREEN_PTR#33 ) + (byte) loop::ss#7 ← phi( loop::plexFreeNextYpos1/(byte) loop::ss#8 ) + (byte) plex_sprite_msb#46 ← phi( loop::plexFreeNextYpos1/(byte) plex_sprite_msb#49 ) + (byte) plex_free_next#47 ← phi( loop::plexFreeNextYpos1/(byte) plex_free_next#17 ) + (byte) plex_show_idx#46 ← phi( loop::plexFreeNextYpos1/(byte) plex_show_idx#49 ) + (byte) plex_sprite_idx#46 ← phi( loop::plexFreeNextYpos1/(byte) plex_sprite_idx#49 ) + (byte) loop::plexFreeNextYpos1_return#2 ← phi( loop::plexFreeNextYpos1/(byte) loop::plexFreeNextYpos1_return#0 ) + (byte) loop::plexFreeNextYpos1_return#1 ← (byte) loop::plexFreeNextYpos1_return#2 to:loop::@29 loop::@29: scope:[loop] from loop::plexFreeNextYpos1_@return - (byte) loop::sin_idx#14 ? phi( loop::plexFreeNextYpos1_@return/(byte) loop::sin_idx#15 ) - (byte*) PLEX_SCREEN_PTR#31 ? phi( loop::plexFreeNextYpos1_@return/(byte*) PLEX_SCREEN_PTR#32 ) - (byte) loop::ss#6 ? phi( loop::plexFreeNextYpos1_@return/(byte) loop::ss#7 ) - (byte) plex_sprite_msb#44 ? phi( loop::plexFreeNextYpos1_@return/(byte) plex_sprite_msb#46 ) - (byte) plex_free_next#43 ? phi( loop::plexFreeNextYpos1_@return/(byte) plex_free_next#47 ) - (byte) plex_show_idx#44 ? phi( loop::plexFreeNextYpos1_@return/(byte) plex_show_idx#46 ) - (byte) plex_sprite_idx#44 ? phi( loop::plexFreeNextYpos1_@return/(byte) plex_sprite_idx#46 ) - (byte) loop::plexFreeNextYpos1_return#3 ? phi( loop::plexFreeNextYpos1_@return/(byte) loop::plexFreeNextYpos1_return#1 ) - (byte~) loop::$7 ? (byte) loop::plexFreeNextYpos1_return#3 - (byte) loop::rasterY#0 ? (byte~) loop::$7 + (byte) loop::sin_idx#14 ← phi( loop::plexFreeNextYpos1_@return/(byte) loop::sin_idx#15 ) + (byte*) PLEX_SCREEN_PTR#31 ← phi( loop::plexFreeNextYpos1_@return/(byte*) PLEX_SCREEN_PTR#32 ) + (byte) loop::ss#6 ← phi( loop::plexFreeNextYpos1_@return/(byte) loop::ss#7 ) + (byte) plex_sprite_msb#44 ← phi( loop::plexFreeNextYpos1_@return/(byte) plex_sprite_msb#46 ) + (byte) plex_free_next#43 ← phi( loop::plexFreeNextYpos1_@return/(byte) plex_free_next#47 ) + (byte) plex_show_idx#44 ← phi( loop::plexFreeNextYpos1_@return/(byte) plex_show_idx#46 ) + (byte) plex_sprite_idx#44 ← phi( loop::plexFreeNextYpos1_@return/(byte) plex_sprite_idx#46 ) + (byte) loop::plexFreeNextYpos1_return#3 ← phi( loop::plexFreeNextYpos1_@return/(byte) loop::plexFreeNextYpos1_return#1 ) + (byte~) loop::$7 ← (byte) loop::plexFreeNextYpos1_return#3 + (byte) loop::rasterY#0 ← (byte~) loop::$7 to:loop::@19 loop::@19: scope:[loop] from loop::@20 loop::@29 - (byte) loop::sin_idx#12 ? phi( loop::@20/(byte) loop::sin_idx#13 loop::@29/(byte) loop::sin_idx#14 ) - (byte*) PLEX_SCREEN_PTR#29 ? phi( loop::@20/(byte*) PLEX_SCREEN_PTR#30 loop::@29/(byte*) PLEX_SCREEN_PTR#31 ) - (byte) loop::ss#4 ? phi( loop::@20/(byte) loop::ss#5 loop::@29/(byte) loop::ss#6 ) - (byte) plex_sprite_msb#37 ? phi( loop::@20/(byte) plex_sprite_msb#43 loop::@29/(byte) plex_sprite_msb#44 ) - (byte) plex_free_next#36 ? phi( loop::@20/(byte) plex_free_next#42 loop::@29/(byte) plex_free_next#43 ) - (byte) plex_show_idx#38 ? phi( loop::@20/(byte) plex_show_idx#43 loop::@29/(byte) plex_show_idx#44 ) - (byte) plex_sprite_idx#38 ? phi( loop::@20/(byte) plex_sprite_idx#43 loop::@29/(byte) plex_sprite_idx#44 ) - (byte) loop::rasterY#1 ? phi( loop::@20/(byte) loop::rasterY#2 loop::@29/(byte) loop::rasterY#0 ) - (bool~) loop::$8 ? *((byte*) RASTER#0) < (byte) loop::rasterY#1 + (byte) loop::sin_idx#12 ← phi( loop::@20/(byte) loop::sin_idx#13 loop::@29/(byte) loop::sin_idx#14 ) + (byte*) PLEX_SCREEN_PTR#29 ← phi( loop::@20/(byte*) PLEX_SCREEN_PTR#30 loop::@29/(byte*) PLEX_SCREEN_PTR#31 ) + (byte) loop::ss#4 ← phi( loop::@20/(byte) loop::ss#5 loop::@29/(byte) loop::ss#6 ) + (byte) plex_sprite_msb#37 ← phi( loop::@20/(byte) plex_sprite_msb#43 loop::@29/(byte) plex_sprite_msb#44 ) + (byte) plex_free_next#36 ← phi( loop::@20/(byte) plex_free_next#42 loop::@29/(byte) plex_free_next#43 ) + (byte) plex_show_idx#38 ← phi( loop::@20/(byte) plex_show_idx#43 loop::@29/(byte) plex_show_idx#44 ) + (byte) plex_sprite_idx#38 ← phi( loop::@20/(byte) plex_sprite_idx#43 loop::@29/(byte) plex_sprite_idx#44 ) + (byte) loop::rasterY#1 ← phi( loop::@20/(byte) loop::rasterY#2 loop::@29/(byte) loop::rasterY#0 ) + (bool~) loop::$8 ← *((byte*) RASTER#0) < (byte) loop::rasterY#1 if((bool~) loop::$8) goto loop::@20 to:loop::@21 loop::@20: scope:[loop] from loop::@19 - (byte) loop::sin_idx#13 ? phi( loop::@19/(byte) loop::sin_idx#12 ) - (byte*) PLEX_SCREEN_PTR#30 ? phi( loop::@19/(byte*) PLEX_SCREEN_PTR#29 ) - (byte) loop::ss#5 ? phi( loop::@19/(byte) loop::ss#4 ) - (byte) plex_sprite_msb#43 ? phi( loop::@19/(byte) plex_sprite_msb#37 ) - (byte) plex_free_next#42 ? phi( loop::@19/(byte) plex_free_next#36 ) - (byte) plex_show_idx#43 ? phi( loop::@19/(byte) plex_show_idx#38 ) - (byte) plex_sprite_idx#43 ? phi( loop::@19/(byte) plex_sprite_idx#38 ) - (byte) loop::rasterY#2 ? phi( loop::@19/(byte) loop::rasterY#1 ) + (byte) loop::sin_idx#13 ← phi( loop::@19/(byte) loop::sin_idx#12 ) + (byte*) PLEX_SCREEN_PTR#30 ← phi( loop::@19/(byte*) PLEX_SCREEN_PTR#29 ) + (byte) loop::ss#5 ← phi( loop::@19/(byte) loop::ss#4 ) + (byte) plex_sprite_msb#43 ← phi( loop::@19/(byte) plex_sprite_msb#37 ) + (byte) plex_free_next#42 ← phi( loop::@19/(byte) plex_free_next#36 ) + (byte) plex_show_idx#43 ← phi( loop::@19/(byte) plex_show_idx#38 ) + (byte) plex_sprite_idx#43 ← phi( loop::@19/(byte) plex_sprite_idx#38 ) + (byte) loop::rasterY#2 ← phi( loop::@19/(byte) loop::rasterY#1 ) to:loop::@19 loop::@21: scope:[loop] from loop::@19 - (byte) loop::sin_idx#11 ? phi( loop::@19/(byte) loop::sin_idx#12 ) - (byte*) PLEX_SCREEN_PTR#26 ? phi( loop::@19/(byte*) PLEX_SCREEN_PTR#29 ) - (byte) loop::ss#3 ? phi( loop::@19/(byte) loop::ss#4 ) - (byte) plex_sprite_msb#28 ? phi( loop::@19/(byte) plex_sprite_msb#37 ) - (byte) plex_free_next#27 ? phi( loop::@19/(byte) plex_free_next#36 ) - (byte) plex_show_idx#23 ? phi( loop::@19/(byte) plex_show_idx#38 ) - (byte) plex_sprite_idx#23 ? phi( loop::@19/(byte) plex_sprite_idx#38 ) - *((byte*) BORDERCOL#0) ? ++ *((byte*) BORDERCOL#0) + (byte) loop::sin_idx#11 ← phi( loop::@19/(byte) loop::sin_idx#12 ) + (byte*) PLEX_SCREEN_PTR#26 ← phi( loop::@19/(byte*) PLEX_SCREEN_PTR#29 ) + (byte) loop::ss#3 ← phi( loop::@19/(byte) loop::ss#4 ) + (byte) plex_sprite_msb#28 ← phi( loop::@19/(byte) plex_sprite_msb#37 ) + (byte) plex_free_next#27 ← phi( loop::@19/(byte) plex_free_next#36 ) + (byte) plex_show_idx#23 ← phi( loop::@19/(byte) plex_show_idx#38 ) + (byte) plex_sprite_idx#23 ← phi( loop::@19/(byte) plex_sprite_idx#38 ) + *((byte*) BORDERCOL#0) ← ++ *((byte*) BORDERCOL#0) call plexShowSprite to:loop::@31 loop::@31: scope:[loop] from loop::@21 - (byte*) PLEX_SCREEN_PTR#36 ? phi( loop::@21/(byte*) PLEX_SCREEN_PTR#26 ) - (byte) loop::sin_idx#10 ? phi( loop::@21/(byte) loop::sin_idx#11 ) - (byte) loop::ss#2 ? phi( loop::@21/(byte) loop::ss#3 ) - (byte) plex_sprite_msb#20 ? phi( loop::@21/(byte) plex_sprite_msb#5 ) - (byte) plex_show_idx#19 ? phi( loop::@21/(byte) plex_show_idx#4 ) - (byte) plex_sprite_idx#19 ? phi( loop::@21/(byte) plex_sprite_idx#4 ) - (byte) plex_free_next#18 ? phi( loop::@21/(byte) plex_free_next#3 ) - (byte) plex_free_next#8 ? (byte) plex_free_next#18 - (byte) plex_sprite_idx#8 ? (byte) plex_sprite_idx#19 - (byte) plex_show_idx#8 ? (byte) plex_show_idx#19 - (byte) plex_sprite_msb#9 ? (byte) plex_sprite_msb#20 - (byte) loop::ss#1 ? (byte) loop::ss#2 + rangenext(0,loop::$6) - (bool~) loop::$10 ? (byte) loop::ss#1 != rangelast(0,loop::$6) + (byte*) PLEX_SCREEN_PTR#36 ← phi( loop::@21/(byte*) PLEX_SCREEN_PTR#26 ) + (byte) loop::sin_idx#10 ← phi( loop::@21/(byte) loop::sin_idx#11 ) + (byte) loop::ss#2 ← phi( loop::@21/(byte) loop::ss#3 ) + (byte) plex_sprite_msb#20 ← phi( loop::@21/(byte) plex_sprite_msb#5 ) + (byte) plex_show_idx#19 ← phi( loop::@21/(byte) plex_show_idx#4 ) + (byte) plex_sprite_idx#19 ← phi( loop::@21/(byte) plex_sprite_idx#4 ) + (byte) plex_free_next#18 ← phi( loop::@21/(byte) plex_free_next#3 ) + (byte) plex_free_next#8 ← (byte) plex_free_next#18 + (byte) plex_sprite_idx#8 ← (byte) plex_sprite_idx#19 + (byte) plex_show_idx#8 ← (byte) plex_show_idx#19 + (byte) plex_sprite_msb#9 ← (byte) plex_sprite_msb#20 + (byte) loop::ss#1 ← (byte) loop::ss#2 + rangenext(0,loop::$6) + (bool~) loop::$10 ← (byte) loop::ss#1 != rangelast(0,loop::$6) if((bool~) loop::$10) goto loop::@18 to:loop::@25 loop::@25: scope:[loop] from loop::@31 - (byte*) PLEX_SCREEN_PTR#48 ? phi( loop::@31/(byte*) PLEX_SCREEN_PTR#36 ) - (byte) loop::sin_idx#9 ? phi( loop::@31/(byte) loop::sin_idx#10 ) - (byte) plex_free_next#33 ? phi( loop::@31/(byte) plex_free_next#8 ) - (byte) plex_sprite_msb#35 ? phi( loop::@31/(byte) plex_sprite_msb#9 ) - (byte) plex_sprite_idx#36 ? phi( loop::@31/(byte) plex_sprite_idx#8 ) - (byte) plex_show_idx#36 ? phi( loop::@31/(byte) plex_show_idx#8 ) - *((byte*) BORDERCOL#0) ? (byte) BLACK#0 + (byte*) PLEX_SCREEN_PTR#48 ← phi( loop::@31/(byte*) PLEX_SCREEN_PTR#36 ) + (byte) loop::sin_idx#9 ← phi( loop::@31/(byte) loop::sin_idx#10 ) + (byte) plex_free_next#33 ← phi( loop::@31/(byte) plex_free_next#8 ) + (byte) plex_sprite_msb#35 ← phi( loop::@31/(byte) plex_sprite_msb#9 ) + (byte) plex_sprite_idx#36 ← phi( loop::@31/(byte) plex_sprite_idx#8 ) + (byte) plex_show_idx#36 ← phi( loop::@31/(byte) plex_show_idx#8 ) + *((byte*) BORDERCOL#0) ← (byte) BLACK#0 to:loop::@1 loop::@return: scope:[loop] from loop::@1 - (byte) plex_free_next#19 ? phi( loop::@1/(byte) plex_free_next#28 ) - (byte) plex_sprite_msb#21 ? phi( loop::@1/(byte) plex_sprite_msb#29 ) - (byte) plex_sprite_idx#20 ? phi( loop::@1/(byte) plex_sprite_idx#31 ) - (byte) plex_show_idx#20 ? phi( loop::@1/(byte) plex_show_idx#31 ) - (byte) plex_show_idx#9 ? (byte) plex_show_idx#20 - (byte) plex_sprite_idx#9 ? (byte) plex_sprite_idx#20 - (byte) plex_sprite_msb#10 ? (byte) plex_sprite_msb#21 - (byte) plex_free_next#9 ? (byte) plex_free_next#19 + (byte) plex_free_next#19 ← phi( loop::@1/(byte) plex_free_next#28 ) + (byte) plex_sprite_msb#21 ← phi( loop::@1/(byte) plex_sprite_msb#29 ) + (byte) plex_sprite_idx#20 ← phi( loop::@1/(byte) plex_sprite_idx#31 ) + (byte) plex_show_idx#20 ← phi( loop::@1/(byte) plex_show_idx#31 ) + (byte) plex_show_idx#9 ← (byte) plex_show_idx#20 + (byte) plex_sprite_idx#9 ← (byte) plex_sprite_idx#20 + (byte) plex_sprite_msb#10 ← (byte) plex_sprite_msb#21 + (byte) plex_free_next#9 ← (byte) plex_free_next#19 return to:@return @15: scope:[] from @12 - (byte) plex_free_next#29 ? phi( @12/(byte) plex_free_next#37 ) - (byte) plex_sprite_msb#30 ? phi( @12/(byte) plex_sprite_msb#38 ) - (byte) plex_sprite_idx#32 ? phi( @12/(byte) plex_sprite_idx#39 ) - (byte) plex_show_idx#32 ? phi( @12/(byte) plex_show_idx#39 ) - (byte*) PLEX_SCREEN_PTR#21 ? phi( @12/(byte*) PLEX_SCREEN_PTR#25 ) + (byte) plex_free_next#29 ← phi( @12/(byte) plex_free_next#37 ) + (byte) plex_sprite_msb#30 ← phi( @12/(byte) plex_sprite_msb#38 ) + (byte) plex_sprite_idx#32 ← phi( @12/(byte) plex_sprite_idx#39 ) + (byte) plex_show_idx#32 ← phi( @12/(byte) plex_show_idx#39 ) + (byte*) PLEX_SCREEN_PTR#21 ← phi( @12/(byte*) PLEX_SCREEN_PTR#25 ) call main to:@16 @16: scope:[] from @15 - (byte) plex_free_next#20 ? phi( @15/(byte) plex_free_next#6 ) - (byte) plex_sprite_msb#22 ? phi( @15/(byte) plex_sprite_msb#7 ) - (byte) plex_sprite_idx#21 ? phi( @15/(byte) plex_sprite_idx#6 ) - (byte) plex_show_idx#21 ? phi( @15/(byte) plex_show_idx#6 ) - (byte*) PLEX_SCREEN_PTR#14 ? phi( @15/(byte*) PLEX_SCREEN_PTR#4 ) - (byte*) PLEX_SCREEN_PTR#7 ? (byte*) PLEX_SCREEN_PTR#14 - (byte) plex_show_idx#10 ? (byte) plex_show_idx#21 - (byte) plex_sprite_idx#10 ? (byte) plex_sprite_idx#21 - (byte) plex_sprite_msb#11 ? (byte) plex_sprite_msb#22 - (byte) plex_free_next#10 ? (byte) plex_free_next#20 + (byte) plex_free_next#20 ← phi( @15/(byte) plex_free_next#6 ) + (byte) plex_sprite_msb#22 ← phi( @15/(byte) plex_sprite_msb#7 ) + (byte) plex_sprite_idx#21 ← phi( @15/(byte) plex_sprite_idx#6 ) + (byte) plex_show_idx#21 ← phi( @15/(byte) plex_show_idx#6 ) + (byte*) PLEX_SCREEN_PTR#14 ← phi( @15/(byte*) PLEX_SCREEN_PTR#4 ) + (byte*) PLEX_SCREEN_PTR#7 ← (byte*) PLEX_SCREEN_PTR#14 + (byte) plex_show_idx#10 ← (byte) plex_show_idx#21 + (byte) plex_sprite_idx#10 ← (byte) plex_sprite_idx#21 + (byte) plex_sprite_msb#11 ← (byte) plex_sprite_msb#22 + (byte) plex_free_next#10 ← (byte) plex_free_next#20 to:@end @end: scope:[] from @16 @@ -1348,8 +1348,8 @@ SYMBOL TABLE SSA (byte) plex_sprite_msb#8 (byte) plex_sprite_msb#9 -Inversing boolean not [112] (bool~) plexSort::$4 ? (byte) plexSort::nxt_y#0 >= *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2)) from [111] (bool~) plexSort::$3 ? (byte) plexSort::nxt_y#0 < *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2)) -Inversing boolean not [182] (bool~) plexShowSprite::$9 ? (byte) plex_sprite_msb#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [181] (bool~) plexShowSprite::$8 ? (byte) plex_sprite_msb#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [112] (bool~) plexSort::$4 ← (byte) plexSort::nxt_y#0 >= *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2)) from [111] (bool~) plexSort::$3 ← (byte) plexSort::nxt_y#0 < *((byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2)) +Inversing boolean not [182] (bool~) plexShowSprite::$9 ← (byte) plex_sprite_msb#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [181] (bool~) plexShowSprite::$8 ← (byte) plex_sprite_msb#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte*) plexInit::plexSetScreen1_screen#0 = (byte*) plexInit::screen#1 (byte*) plexInit::plexSetScreen1_screen#1 Alias (byte*) PLEX_SCREEN_PTR#1 = (byte*) plexInit::plexSetScreen1_$0#0 (byte*) PLEX_SCREEN_PTR#22 @@ -1587,7 +1587,7 @@ Simple Condition (bool~) loop::$5 [285] if((byte~) loop::$4!=(byte/signed byte/w Simple Condition (bool~) loop::$8 [301] if(*((byte*) RASTER#0)<(byte) loop::plexFreeNextYpos1_return#0) goto loop::@20 Simple Condition (bool~) loop::$10 [313] if((byte) loop::ss#1!=rangelast(0,loop::$6)) goto loop::@18 Successful SSA optimization Pass2ConditionalJumpSimplification -Rewriting && if()-condition to two if()s [126] (bool~) plexSort::$8 ? (bool~) plexSort::$6 && (bool~) plexSort::$7 +Rewriting && if()-condition to two if()s [126] (bool~) plexSort::$8 ← (bool~) plexSort::$6 && (bool~) plexSort::$7 Successful SSA optimization Pass2ConditionalAndOrRewriting Constant (const byte*) PROCPORT_DDR#0 = ((byte*))0 Constant (const byte) PROCPORT_DDR_MEMORY_MASK#0 = 7 @@ -1716,25 +1716,25 @@ Consolidated array index constant in assignment *(PLEX_SORTED_IDX#0+1 + plexSort Successful SSA optimization Pass2ConstantAdditionElimination if() condition always true - replacing block destination [71] if(true) goto loop::@2 Successful SSA optimization Pass2ConstantIfs -Inferred type updated to byte in [6] (byte/signed word/word/dword/signed dword~) plexSort::$2 ? (byte) plexSort::m#2 -Inferred type updated to byte in [13] (byte/signed word/word/dword/signed dword~) plexSort::$5 ? (byte) plexSort::s#3 +Inferred type updated to byte in [6] (byte/signed word/word/dword/signed dword~) plexSort::$2 ← (byte) plexSort::m#2 +Inferred type updated to byte in [13] (byte/signed word/word/dword/signed dword~) plexSort::$5 ← (byte) plexSort::s#3 Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars Removing unused block loop::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value plexInit::i#1 ? ++ plexInit::i#2 to ++ +Resolved ranged next value plexInit::i#1 ← ++ plexInit::i#2 to ++ Resolved ranged comparison value if(plexInit::i#1!=rangelast(0,plexInit::$1)) goto plexInit::@1 to (const byte/signed word/word/dword/signed dword) plexInit::$1+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value plexSort::m#1 ? ++ plexSort::m#2 to ++ +Resolved ranged next value plexSort::m#1 ← ++ plexSort::m#2 to ++ Resolved ranged comparison value if(plexSort::m#1!=rangelast(0,plexSort::$1)) goto plexSort::@1 to (const byte/signed word/word/dword/signed dword) plexSort::$1+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value plexSort::plexFreePrepare1_s#1 ? ++ plexSort::plexFreePrepare1_s#2 to ++ +Resolved ranged next value plexSort::plexFreePrepare1_s#1 ← ++ plexSort::plexFreePrepare1_s#2 to ++ Resolved ranged comparison value if(plexSort::plexFreePrepare1_s#1!=rangelast(0,7)) goto plexSort::plexFreePrepare1_@1 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value init::sx#1 ? ++ init::sx#2 to ++ +Resolved ranged next value init::sx#1 ← ++ init::sx#2 to ++ Resolved ranged comparison value if(init::sx#1!=rangelast(0,init::$3)) goto init::@1 to (const byte/signed word/word/dword/signed dword) init::$3+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value init::ss#1 ? ++ init::ss#2 to ++ +Resolved ranged next value init::ss#1 ← ++ init::ss#2 to ++ Resolved ranged comparison value if(init::ss#1!=rangelast(0,7)) goto init::@3 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value loop::sy#1 ? ++ loop::sy#2 to ++ +Resolved ranged next value loop::sy#1 ← ++ loop::sy#2 to ++ Resolved ranged comparison value if(loop::sy#1!=rangelast(0,loop::$1)) goto loop::@10 to (const byte/signed word/word/dword/signed dword) loop::$1+(byte/signed byte/word/signed word/dword/signed dword) 1 -Resolved ranged next value loop::ss#1 ? ++ loop::ss#6 to ++ +Resolved ranged next value loop::ss#1 ← ++ loop::ss#6 to ++ Resolved ranged comparison value if(loop::ss#1!=rangelast(0,loop::$6)) goto loop::@18 to (const byte/signed word/word/dword/signed dword) loop::$6+(byte/signed byte/word/signed word/dword/signed dword) 1 Culled Empty Block (label) @4 Culled Empty Block (label) plexInit::@3 @@ -1836,24 +1836,24 @@ Calls in [loop] to plexSort:23 plexShowSprite:32 Calls in [init] to plexInit:94 Created 16 initial phi equivalence classes -Not coalescing [15] loop::y_idx#4 ? loop::sin_idx#6 -Coalesced [36] loop::sin_idx#22 ? loop::sin_idx#1 -Coalesced [37] plex_free_next#50 ? plex_free_next#13 -Coalesced [38] plex_sprite_idx#54 ? plex_sprite_idx#15 -Coalesced [39] plex_show_idx#54 ? plex_show_idx#15 -Coalesced [40] plex_sprite_msb#54 ? plex_sprite_msb#16 -Coalesced [41] loop::ss#10 ? loop::ss#1 -Coalesced [42] loop::y_idx#3 ? loop::y_idx#1 -Coalesced [43] loop::sy#3 ? loop::sy#1 -Coalesced [67] plex_sprite_msb#55 ? plex_sprite_msb#25 -Not coalescing [74] plexSort::s#6 ? plexSort::m#2 -Coalesced [89] plexSort::plexFreePrepare1_s#3 ? plexSort::plexFreePrepare1_s#1 -Coalesced [90] plexSort::m#7 ? plexSort::m#1 -Coalesced [92] plexSort::s#5 ? plexSort::s#1 -Coalesced [108] init::ss#3 ? init::ss#1 -Coalesced [109] init::sx#3 ? init::sx#1 -Coalesced [110] init::xp#3 ? init::xp#1 -Coalesced [118] plexInit::i#3 ? plexInit::i#1 +Not coalescing [15] loop::y_idx#4 ← loop::sin_idx#6 +Coalesced [36] loop::sin_idx#22 ← loop::sin_idx#1 +Coalesced [37] plex_free_next#50 ← plex_free_next#13 +Coalesced [38] plex_sprite_idx#54 ← plex_sprite_idx#15 +Coalesced [39] plex_show_idx#54 ← plex_show_idx#15 +Coalesced [40] plex_sprite_msb#54 ← plex_sprite_msb#16 +Coalesced [41] loop::ss#10 ← loop::ss#1 +Coalesced [42] loop::y_idx#3 ← loop::y_idx#1 +Coalesced [43] loop::sy#3 ← loop::sy#1 +Coalesced [67] plex_sprite_msb#55 ← plex_sprite_msb#25 +Not coalescing [74] plexSort::s#6 ← plexSort::m#2 +Coalesced [89] plexSort::plexFreePrepare1_s#3 ← plexSort::plexFreePrepare1_s#1 +Coalesced [90] plexSort::m#7 ← plexSort::m#1 +Coalesced [92] plexSort::s#5 ← plexSort::s#1 +Coalesced [108] init::ss#3 ← init::ss#1 +Coalesced [109] init::sx#3 ← init::sx#1 +Coalesced [110] init::xp#3 ← init::xp#1 +Coalesced [118] plexInit::i#3 ← plexInit::i#1 Coalesced down to 15 phi equivalence classes Culled Empty Block (label) loop::@33 Culled Empty Block (label) loop::@32 @@ -1931,133 +1931,133 @@ loop: scope:[loop] from main::@1 [11] phi() to:loop::@1 loop::@1: scope:[loop] from loop loop::@10 - [12] (byte) loop::sin_idx#6 ? phi( loop/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@10/(byte) loop::sin_idx#1 ) + [12] (byte) loop::sin_idx#6 ← phi( loop/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@10/(byte) loop::sin_idx#1 ) to:loop::@2 loop::@2: scope:[loop] from loop::@1 loop::@2 [13] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto loop::@2 to:loop::@3 loop::@3: scope:[loop] from loop::@2 - [14] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) - [15] (byte~) loop::y_idx#4 ? (byte) loop::sin_idx#6 + [14] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) + [15] (byte~) loop::y_idx#4 ← (byte) loop::sin_idx#6 to:loop::@4 loop::@4: scope:[loop] from loop::@3 loop::@4 - [16] (byte) loop::sy#2 ? phi( loop::@4/(byte) loop::sy#1 loop::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [16] (byte) loop::y_idx#2 ? phi( loop::@4/(byte) loop::y_idx#1 loop::@3/(byte~) loop::y_idx#4 ) - [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ? *((const byte*) YSIN#0 + (byte) loop::y_idx#2) - [18] (byte) loop::y_idx#1 ? (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 - [19] (byte) loop::sy#1 ? ++ (byte) loop::sy#2 + [16] (byte) loop::sy#2 ← phi( loop::@4/(byte) loop::sy#1 loop::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [16] (byte) loop::y_idx#2 ← phi( loop::@4/(byte) loop::y_idx#1 loop::@3/(byte~) loop::y_idx#4 ) + [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ← *((const byte*) YSIN#0 + (byte) loop::y_idx#2) + [18] (byte) loop::y_idx#1 ← (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 + [19] (byte) loop::sy#1 ← ++ (byte) loop::sy#2 [20] if((byte) loop::sy#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@4 to:loop::@5 loop::@5: scope:[loop] from loop::@4 - [21] (byte) loop::sin_idx#1 ? (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [22] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) + [21] (byte) loop::sin_idx#1 ← (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) [23] call plexSort to:loop::@11 loop::@11: scope:[loop] from loop::@5 - [24] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 + [24] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 to:loop::@6 loop::@6: scope:[loop] from loop::@11 loop::@6 - [25] (byte~) loop::$4 ? *((const byte*) D011#0) & (const byte) VIC_RST8#0 + [25] (byte~) loop::$4 ← *((const byte*) D011#0) & (const byte) VIC_RST8#0 [26] if((byte~) loop::$4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto loop::@6 to:loop::@7 loop::@7: scope:[loop] from loop::@12 loop::@6 - [27] (byte) loop::ss#6 ? phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) loop::ss#1 ) - [27] (byte) plex_sprite_msb#44 ? phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 1 loop::@12/(byte) plex_sprite_msb#16 ) - [27] (byte) plex_show_idx#44 ? phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) plex_show_idx#15 ) - [27] (byte) plex_sprite_idx#44 ? phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) plex_sprite_idx#15 ) - [27] (byte) plex_free_next#17 ? phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) plex_free_next#13 ) - [28] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 + [27] (byte) loop::ss#6 ← phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) loop::ss#1 ) + [27] (byte) plex_sprite_msb#44 ← phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 1 loop::@12/(byte) plex_sprite_msb#16 ) + [27] (byte) plex_show_idx#44 ← phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) plex_show_idx#15 ) + [27] (byte) plex_sprite_idx#44 ← phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) plex_sprite_idx#15 ) + [27] (byte) plex_free_next#17 ← phi( loop::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@12/(byte) plex_free_next#13 ) + [28] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 to:loop::plexFreeNextYpos1 loop::plexFreeNextYpos1: scope:[loop] from loop::@7 - [29] (byte) loop::plexFreeNextYpos1_return#0 ? *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) + [29] (byte) loop::plexFreeNextYpos1_return#0 ← *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) to:loop::@8 loop::@8: scope:[loop] from loop::@8 loop::plexFreeNextYpos1 [30] if(*((const byte*) RASTER#0)<(byte) loop::plexFreeNextYpos1_return#0) goto loop::@8 to:loop::@9 loop::@9: scope:[loop] from loop::@8 - [31] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) + [31] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) [32] call plexShowSprite to:loop::@12 loop::@12: scope:[loop] from loop::@9 - [33] (byte) loop::ss#1 ? ++ (byte) loop::ss#6 + [33] (byte) loop::ss#1 ← ++ (byte) loop::ss#6 [34] if((byte) loop::ss#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@7 to:loop::@10 loop::@10: scope:[loop] from loop::@12 - [35] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 + [35] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 to:loop::@1 plexShowSprite: scope:[plexShowSprite] from loop::@9 - [36] (byte) plexShowSprite::plex_sprite_idx2#0 ? (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) - [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 + [36] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) + [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 to:plexShowSprite::plexFreeAdd1 plexShowSprite::plexFreeAdd1: scope:[plexShowSprite] from plexShowSprite - [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 - [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 - [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ? (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [42] (byte) plex_free_next#13 ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 + [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 + [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ← (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [42] (byte) plex_free_next#13 ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 to:plexShowSprite::@4 plexShowSprite::@4: scope:[plexShowSprite] from plexShowSprite::plexFreeAdd1 - [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ? *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) - [44] (byte) plexShowSprite::xpos_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 - [45] (byte~) plexShowSprite::$3 ? < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) - [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte~) plexShowSprite::$3 - [47] (byte~) plexShowSprite::$4 ? > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) + [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) + [44] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 + [45] (byte~) plexShowSprite::$3 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) + [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte~) plexShowSprite::$3 + [47] (byte~) plexShowSprite::$4 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [48] if((byte~) plexShowSprite::$4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@1 to:plexShowSprite::@3 plexShowSprite::@3: scope:[plexShowSprite] from plexShowSprite::@4 - [49] (byte/word/dword~) plexShowSprite::$10 ? (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 - [50] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 + [49] (byte/word/dword~) plexShowSprite::$10 ← (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 + [50] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 to:plexShowSprite::@2 plexShowSprite::@2: scope:[plexShowSprite] from plexShowSprite::@1 plexShowSprite::@3 - [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ? (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 - [52] (byte) plex_sprite_idx#15 ? (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [53] (byte) plex_show_idx#15 ? ++ (byte) plex_show_idx#44 - [54] (byte) plex_sprite_msb#25 ? (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ← (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 + [52] (byte) plex_sprite_idx#15 ← (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [53] (byte) plex_show_idx#15 ← ++ (byte) plex_show_idx#44 + [54] (byte) plex_sprite_msb#25 ← (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 [55] if((byte) plex_sprite_msb#25!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@5 to:plexShowSprite::@return plexShowSprite::@return: scope:[plexShowSprite] from plexShowSprite::@2 plexShowSprite::@5 - [56] (byte) plex_sprite_msb#16 ? phi( plexShowSprite::@5/(byte) plex_sprite_msb#25 plexShowSprite::@2/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [56] (byte) plex_sprite_msb#16 ← phi( plexShowSprite::@5/(byte) plex_sprite_msb#25 plexShowSprite::@2/(byte/signed byte/word/signed word/dword/signed dword) 1 ) [57] return to:@return plexShowSprite::@5: scope:[plexShowSprite] from plexShowSprite::@2 [58] phi() to:plexShowSprite::@return plexShowSprite::@1: scope:[plexShowSprite] from plexShowSprite::@4 - [59] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 + [59] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 to:plexShowSprite::@2 plexSort: scope:[plexSort] from loop::@5 [60] phi() to:plexSort::@1 plexSort::@1: scope:[plexSort] from plexSort plexSort::@2 - [61] (byte) plexSort::m#2 ? phi( plexSort/(byte/signed byte/word/signed word/dword/signed dword) 0 plexSort::@2/(byte) plexSort::m#1 ) - [62] (byte) plexSort::nxt_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) - [63] (byte) plexSort::nxt_y#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) + [61] (byte) plexSort::m#2 ← phi( plexSort/(byte/signed byte/word/signed word/dword/signed dword) 0 plexSort::@2/(byte) plexSort::m#1 ) + [62] (byte) plexSort::nxt_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) + [63] (byte) plexSort::nxt_y#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) [64] if((byte) plexSort::nxt_y#0>=*((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2))) goto plexSort::@2 to:plexSort::@6 plexSort::@6: scope:[plexSort] from plexSort::@1 - [65] (byte~) plexSort::s#6 ? (byte) plexSort::m#2 + [65] (byte~) plexSort::s#6 ← (byte) plexSort::m#2 to:plexSort::@3 plexSort::@3: scope:[plexSort] from plexSort::@5 plexSort::@6 - [66] (byte) plexSort::s#3 ? phi( plexSort::@5/(byte) plexSort::s#1 plexSort::@6/(byte~) plexSort::s#6 ) - [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) - [68] (byte) plexSort::s#1 ? -- (byte) plexSort::s#3 + [66] (byte) plexSort::s#3 ← phi( plexSort::@5/(byte) plexSort::s#1 plexSort::@6/(byte~) plexSort::s#6 ) + [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) + [68] (byte) plexSort::s#1 ← -- (byte) plexSort::s#3 [69] if((byte) plexSort::s#1!=(byte/word/signed word/dword/signed dword) $ff) goto plexSort::@5 to:plexSort::@4 plexSort::@4: scope:[plexSort] from plexSort::@3 plexSort::@5 - [70] (byte) plexSort::s#2 ? ++ (byte) plexSort::s#1 - [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ? (byte) plexSort::nxt_idx#0 + [70] (byte) plexSort::s#2 ← ++ (byte) plexSort::s#1 + [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ← (byte) plexSort::nxt_idx#0 to:plexSort::@2 plexSort::@2: scope:[plexSort] from plexSort::@1 plexSort::@4 - [72] (byte) plexSort::m#1 ? ++ (byte) plexSort::m#2 + [72] (byte) plexSort::m#1 ← ++ (byte) plexSort::m#2 [73] if((byte) plexSort::m#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexSort::@1 to:plexSort::plexFreePrepare1 plexSort::plexFreePrepare1: scope:[plexSort] from plexSort::@2 [74] phi() to:plexSort::plexFreePrepare1_@1 plexSort::plexFreePrepare1_@1: scope:[plexSort] from plexSort::plexFreePrepare1 plexSort::plexFreePrepare1_@1 - [75] (byte) plexSort::plexFreePrepare1_s#2 ? phi( plexSort::plexFreePrepare1/(byte/signed byte/word/signed word/dword/signed dword) 0 plexSort::plexFreePrepare1_@1/(byte) plexSort::plexFreePrepare1_s#1 ) - [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [77] (byte) plexSort::plexFreePrepare1_s#1 ? ++ (byte) plexSort::plexFreePrepare1_s#2 + [75] (byte) plexSort::plexFreePrepare1_s#2 ← phi( plexSort::plexFreePrepare1/(byte/signed byte/word/signed word/dword/signed dword) 0 plexSort::plexFreePrepare1_@1/(byte) plexSort::plexFreePrepare1_s#1 ) + [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [77] (byte) plexSort::plexFreePrepare1_s#1 ← ++ (byte) plexSort::plexFreePrepare1_s#2 [78] if((byte) plexSort::plexFreePrepare1_s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto plexSort::plexFreePrepare1_@1 to:plexSort::@return plexSort::@return: scope:[plexSort] from plexSort::plexFreePrepare1_@1 @@ -2067,26 +2067,26 @@ plexSort::@5: scope:[plexSort] from plexSort::@3 [80] if((byte) plexSort::nxt_y#0<*((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#1))) goto plexSort::@3 to:plexSort::@4 init: scope:[init] from main - [81] *((const byte*) D011#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [81] *((const byte*) D011#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [82] call plexInit to:init::@1 init::@1: scope:[init] from init init::@1 - [83] (word) init::xp#2 ? phi( init::@1/(word) init::xp#1 init/(byte/signed byte/word/signed word/dword/signed dword) $20 ) - [83] (byte) init::sx#2 ? phi( init::@1/(byte) init::sx#1 init/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ? ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 - [85] (byte~) init::$6 ? (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ? (word) init::xp#2 - [87] (word) init::xp#1 ? (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 - [88] (byte) init::sx#1 ? ++ (byte) init::sx#2 + [83] (word) init::xp#2 ← phi( init::@1/(word) init::xp#1 init/(byte/signed byte/word/signed word/dword/signed dword) $20 ) + [83] (byte) init::sx#2 ← phi( init::@1/(byte) init::sx#1 init/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 + [85] (byte~) init::$6 ← (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ← (word) init::xp#2 + [87] (word) init::xp#1 ← (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 + [88] (byte) init::sx#1 ← ++ (byte) init::sx#2 [89] if((byte) init::sx#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto init::@1 to:init::@2 init::@2: scope:[init] from init::@1 - [90] *((const byte*) SPRITES_ENABLE#0) ? (byte/word/signed word/dword/signed dword) $ff + [90] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) $ff to:init::@3 init::@3: scope:[init] from init::@2 init::@3 - [91] (byte) init::ss#2 ? phi( init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 init::@3/(byte) init::ss#1 ) - [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ? (const byte) GREEN#0 - [93] (byte) init::ss#1 ? ++ (byte) init::ss#2 + [91] (byte) init::ss#2 ← phi( init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 init::@3/(byte) init::ss#1 ) + [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ← (const byte) GREEN#0 + [93] (byte) init::ss#1 ← ++ (byte) init::ss#2 [94] if((byte) init::ss#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto init::@3 to:init::@return init::@return: scope:[init] from init::@3 @@ -2099,9 +2099,9 @@ plexInit::plexSetScreen1: scope:[plexInit] from plexInit [97] phi() to:plexInit::@1 plexInit::@1: scope:[plexInit] from plexInit::@1 plexInit::plexSetScreen1 - [98] (byte) plexInit::i#2 ? phi( plexInit::@1/(byte) plexInit::i#1 plexInit::plexSetScreen1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ? (byte) plexInit::i#2 - [100] (byte) plexInit::i#1 ? ++ (byte) plexInit::i#2 + [98] (byte) plexInit::i#2 ← phi( plexInit::@1/(byte) plexInit::i#1 plexInit::plexSetScreen1/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ← (byte) plexInit::i#2 + [100] (byte) plexInit::i#1 ← ++ (byte) plexInit::i#2 [101] if((byte) plexInit::i#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexInit::@1 to:plexInit::@return plexInit::@return: scope:[plexInit] from plexInit::@1 @@ -2477,9 +2477,9 @@ loop: { jmp b3 //SEG27 loop::@3 b3: - //SEG28 [14] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG28 [14] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG29 [15] (byte~) loop::y_idx#4 ? (byte) loop::sin_idx#6 -- vbuz1=vbuz2 + //SEG29 [15] (byte~) loop::y_idx#4 ← (byte) loop::sin_idx#6 -- vbuz1=vbuz2 lda sin_idx sta y_idx //SEG30 [16] phi from loop::@3 to loop::@4 [phi:loop::@3->loop::@4] @@ -2496,16 +2496,16 @@ loop: { jmp b4 //SEG36 loop::@4 b4: - //SEG37 [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ? *((const byte*) YSIN#0 + (byte) loop::y_idx#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz2 + //SEG37 [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ← *((const byte*) YSIN#0 + (byte) loop::y_idx#2) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz2 ldy y_idx lda YSIN,y ldy sy sta PLEX_YPOS,y - //SEG38 [18] (byte) loop::y_idx#1 ? (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 + //SEG38 [18] (byte) loop::y_idx#1 ← (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuz1=vbuz1_plus_vbuc1 lax y_idx axs #-[8] stx y_idx - //SEG39 [19] (byte) loop::sy#1 ? ++ (byte) loop::sy#2 -- vbuz1=_inc_vbuz1 + //SEG39 [19] (byte) loop::sy#1 ← ++ (byte) loop::sy#2 -- vbuz1=_inc_vbuz1 inc sy //SEG40 [20] if((byte) loop::sy#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@4 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-1+1 @@ -2514,9 +2514,9 @@ loop: { jmp b5 //SEG41 loop::@5 b5: - //SEG42 [21] (byte) loop::sin_idx#1 ? (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_plus_1 + //SEG42 [21] (byte) loop::sin_idx#1 ← (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_plus_1 inc sin_idx - //SEG43 [22] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG43 [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL //SEG44 [23] call plexSort //SEG45 [60] phi from loop::@5 to plexSort [phi:loop::@5->plexSort] @@ -2525,13 +2525,13 @@ loop: { jmp b11 //SEG46 loop::@11 b11: - //SEG47 [24] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG47 [24] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL jmp b6 //SEG48 loop::@6 b6: - //SEG49 [25] (byte~) loop::$4 ? *((const byte*) D011#0) & (const byte) VIC_RST8#0 -- vbuz1=_deref_pbuc1_band_vbuc2 + //SEG49 [25] (byte~) loop::$4 ← *((const byte*) D011#0) & (const byte) VIC_RST8#0 -- vbuz1=_deref_pbuc1_band_vbuc2 lda #VIC_RST8 and D011 sta _4 @@ -2568,13 +2568,13 @@ loop: { jmp b7 //SEG63 loop::@7 b7: - //SEG64 [28] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG64 [28] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL jmp plexFreeNextYpos1 //SEG65 loop::plexFreeNextYpos1 plexFreeNextYpos1: - //SEG66 [29] (byte) loop::plexFreeNextYpos1_return#0 ? *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG66 [29] (byte) loop::plexFreeNextYpos1_return#0 ← *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) -- vbuz1=pbuc1_derefidx_vbuz2 ldy plex_free_next lda PLEX_FREE_YPOS,y sta plexFreeNextYpos1_return @@ -2588,14 +2588,14 @@ loop: { jmp b9 //SEG69 loop::@9 b9: - //SEG70 [31] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG70 [31] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL //SEG71 [32] call plexShowSprite jsr plexShowSprite jmp b12 //SEG72 loop::@12 b12: - //SEG73 [33] (byte) loop::ss#1 ? ++ (byte) loop::ss#6 -- vbuz1=_inc_vbuz1 + //SEG73 [33] (byte) loop::ss#1 ← ++ (byte) loop::ss#6 -- vbuz1=_inc_vbuz1 inc ss //SEG74 [34] if((byte) loop::ss#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@7 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-1+1 @@ -2604,7 +2604,7 @@ loop: { jmp b10 //SEG75 loop::@10 b10: - //SEG76 [35] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG76 [35] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL //SEG77 [12] phi from loop::@10 to loop::@1 [phi:loop::@10->loop::@1] @@ -2625,61 +2625,61 @@ plexShowSprite: { .label plexFreeAdd1__0 = $16 .label plexFreeAdd1__1 = $17 .label xpos_idx = $18 - //SEG80 [36] (byte) plexShowSprite::plex_sprite_idx2#0 ? (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG80 [36] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda plex_sprite_idx asl sta plex_sprite_idx2 - //SEG81 [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- vbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 + //SEG81 [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- vbuz1=pbuc1_derefidx_pbuc2_derefidx_vbuz2 ldx plex_show_idx ldy PLEX_SORTED_IDX,x ldx PLEX_YPOS,y stx plexFreeAdd1_ypos - //SEG82 [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG82 [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 -- pbuc1_derefidx_vbuz1=vbuz2 lda plexFreeAdd1_ypos ldy plex_sprite_idx2 sta SPRITES_YPOS,y jmp plexFreeAdd1 //SEG83 plexShowSprite::plexFreeAdd1 plexFreeAdd1: - //SEG84 [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 + //SEG84 [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuz1=vbuz2_plus_vbuc1 lax plexFreeAdd1_ypos axs #-[$15] stx plexFreeAdd1__0 - //SEG85 [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG85 [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 -- pbuc1_derefidx_vbuz1=vbuz2 lda plexFreeAdd1__0 ldy plex_free_next sta PLEX_FREE_YPOS,y - //SEG86 [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ? (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG86 [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ← (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy plex_free_next iny sty plexFreeAdd1__1 - //SEG87 [42] (byte) plex_free_next#13 ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG87 [42] (byte) plex_free_next#13 ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and plexFreeAdd1__1 sta plex_free_next jmp b4 //SEG88 plexShowSprite::@4 b4: - //SEG89 [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ? *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_pbuc3_derefidx_vbuz2 + //SEG89 [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_pbuc3_derefidx_vbuz2 ldx plex_show_idx ldy PLEX_SORTED_IDX,x lda PLEX_PTR,y ldx plex_sprite_idx sta PLEX_SCREEN_PTR,x - //SEG90 [44] (byte) plexShowSprite::xpos_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=pbuc1_derefidx_vbuz2_rol_1 + //SEG90 [44] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=pbuc1_derefidx_vbuz2_rol_1 ldy plex_show_idx lda PLEX_SORTED_IDX,y asl sta xpos_idx - //SEG91 [45] (byte~) plexShowSprite::$3 ? < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuz1=_lo_pwuc1_derefidx_vbuz2 + //SEG91 [45] (byte~) plexShowSprite::$3 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuz1=_lo_pwuc1_derefidx_vbuz2 ldy xpos_idx lda PLEX_XPOS,y sta _3 - //SEG92 [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte~) plexShowSprite::$3 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG92 [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte~) plexShowSprite::$3 -- pbuc1_derefidx_vbuz1=vbuz2 lda _3 ldy plex_sprite_idx2 sta SPRITES_XPOS,y - //SEG93 [47] (byte~) plexShowSprite::$4 ? > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuz1=_hi_pwuc1_derefidx_vbuz2 + //SEG93 [47] (byte~) plexShowSprite::$4 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuz1=_hi_pwuc1_derefidx_vbuz2 ldy xpos_idx lda PLEX_XPOS+1,y sta _4 @@ -2690,28 +2690,28 @@ plexShowSprite: { jmp b3 //SEG95 plexShowSprite::@3 b3: - //SEG96 [49] (byte/word/dword~) plexShowSprite::$10 ? (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 -- vbuz1=vbuc1_bxor_vbuz2 + //SEG96 [49] (byte/word/dword~) plexShowSprite::$10 ← (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 -- vbuz1=vbuc1_bxor_vbuz2 lda plex_sprite_msb eor #$ff sta _10 - //SEG97 [50] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 -- _deref_pbuc1=_deref_pbuc1_band_vbuz1 + //SEG97 [50] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 -- _deref_pbuc1=_deref_pbuc1_band_vbuz1 lda SPRITES_XMSB and _10 sta SPRITES_XMSB jmp b2 //SEG98 plexShowSprite::@2 b2: - //SEG99 [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ? (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 + //SEG99 [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ← (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_1 ldy plex_sprite_idx iny sty _6 - //SEG100 [52] (byte) plex_sprite_idx#15 ? (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG100 [52] (byte) plex_sprite_idx#15 ← (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and _6 sta plex_sprite_idx - //SEG101 [53] (byte) plex_show_idx#15 ? ++ (byte) plex_show_idx#44 -- vbuz1=_inc_vbuz1 + //SEG101 [53] (byte) plex_show_idx#15 ← ++ (byte) plex_show_idx#44 -- vbuz1=_inc_vbuz1 inc plex_show_idx - //SEG102 [54] (byte) plex_sprite_msb#25 ? (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG102 [54] (byte) plex_sprite_msb#25 ← (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl plex_sprite_msb //SEG103 [55] if((byte) plex_sprite_msb#25!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@5 -- vbuz1_neq_0_then_la1 lda plex_sprite_msb @@ -2738,7 +2738,7 @@ plexShowSprite: { jmp breturn //SEG112 plexShowSprite::@1 b1: - //SEG113 [59] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 + //SEG113 [59] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 lda SPRITES_XMSB ora plex_sprite_msb sta SPRITES_XMSB @@ -2773,11 +2773,11 @@ plexSort: { jmp b1 //SEG119 plexSort::@1 b1: - //SEG120 [62] (byte) plexSort::nxt_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG120 [62] (byte) plexSort::nxt_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy m lda PLEX_SORTED_IDX+1,y sta nxt_idx - //SEG121 [63] (byte) plexSort::nxt_y#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG121 [63] (byte) plexSort::nxt_y#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy nxt_idx lda PLEX_YPOS,y sta nxt_y @@ -2790,7 +2790,7 @@ plexSort: { jmp b6 //SEG123 plexSort::@6 b6: - //SEG124 [65] (byte~) plexSort::s#6 ? (byte) plexSort::m#2 -- vbuz1=vbuz2 + //SEG124 [65] (byte~) plexSort::s#6 ← (byte) plexSort::m#2 -- vbuz1=vbuz2 lda m sta s //SEG125 [66] phi from plexSort::@5 plexSort::@6 to plexSort::@3 [phi:plexSort::@5/plexSort::@6->plexSort::@3] @@ -2800,11 +2800,11 @@ plexSort: { jmp b3 //SEG127 plexSort::@3 b3: - //SEG128 [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 + //SEG128 [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1 ldy s lda PLEX_SORTED_IDX,y sta PLEX_SORTED_IDX+1,y - //SEG129 [68] (byte) plexSort::s#1 ? -- (byte) plexSort::s#3 -- vbuz1=_dec_vbuz1 + //SEG129 [68] (byte) plexSort::s#1 ← -- (byte) plexSort::s#3 -- vbuz1=_dec_vbuz1 dec s //SEG130 [69] if((byte) plexSort::s#1!=(byte/word/signed word/dword/signed dword) $ff) goto plexSort::@5 -- vbuz1_neq_vbuc1_then_la1 lda #$ff @@ -2813,18 +2813,18 @@ plexSort: { jmp b4 //SEG131 plexSort::@4 b4: - //SEG132 [70] (byte) plexSort::s#2 ? ++ (byte) plexSort::s#1 -- vbuz1=_inc_vbuz2 + //SEG132 [70] (byte) plexSort::s#2 ← ++ (byte) plexSort::s#1 -- vbuz1=_inc_vbuz2 ldy s iny sty s_2 - //SEG133 [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ? (byte) plexSort::nxt_idx#0 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG133 [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ← (byte) plexSort::nxt_idx#0 -- pbuc1_derefidx_vbuz1=vbuz2 lda nxt_idx ldy s_2 sta PLEX_SORTED_IDX,y jmp b2 //SEG134 plexSort::@2 b2: - //SEG135 [72] (byte) plexSort::m#1 ? ++ (byte) plexSort::m#2 -- vbuz1=_inc_vbuz1 + //SEG135 [72] (byte) plexSort::m#1 ← ++ (byte) plexSort::m#2 -- vbuz1=_inc_vbuz1 inc m //SEG136 [73] if((byte) plexSort::m#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexSort::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-2+1 @@ -2847,11 +2847,11 @@ plexSort: { jmp plexFreePrepare1_b1 //SEG143 plexSort::plexFreePrepare1_@1 plexFreePrepare1_b1: - //SEG144 [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG144 [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy plexFreePrepare1_s sta PLEX_FREE_YPOS,y - //SEG145 [77] (byte) plexSort::plexFreePrepare1_s#1 ? ++ (byte) plexSort::plexFreePrepare1_s#2 -- vbuz1=_inc_vbuz1 + //SEG145 [77] (byte) plexSort::plexFreePrepare1_s#1 ← ++ (byte) plexSort::plexFreePrepare1_s#2 -- vbuz1=_inc_vbuz1 inc plexFreePrepare1_s //SEG146 [78] if((byte) plexSort::plexFreePrepare1_s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto plexSort::plexFreePrepare1_@1 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -2879,7 +2879,7 @@ init: { .label xp = $e .label sx = $d .label ss = $10 - //SEG152 [81] *((const byte*) D011#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG152 [81] *((const byte*) D011#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_DEN|VIC_RSEL|3 sta D011 //SEG153 [82] call plexInit @@ -2904,21 +2904,21 @@ init: { jmp b1 //SEG161 init::@1 b1: - //SEG162 [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ? ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG162 [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 -- pbuc1_derefidx_vbuz1=vbuc2 lda #$ff&SPRITE/$40 ldy sx sta PLEX_PTR,y - //SEG163 [85] (byte~) init::$6 ? (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG163 [85] (byte~) init::$6 ← (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda sx asl sta _6 - //SEG164 [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ? (word) init::xp#2 -- pwuc1_derefidx_vbuz1=vwuz2 + //SEG164 [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ← (word) init::xp#2 -- pwuc1_derefidx_vbuz1=vwuz2 ldy _6 lda xp sta PLEX_XPOS,y lda xp+1 sta PLEX_XPOS+1,y - //SEG165 [87] (word) init::xp#1 ? (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 -- vwuz1=vwuz1_plus_vbuc1 + //SEG165 [87] (word) init::xp#1 ← (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 -- vwuz1=vwuz1_plus_vbuc1 lda #9 clc adc xp @@ -2926,7 +2926,7 @@ init: { bcc !+ inc xp+1 !: - //SEG166 [88] (byte) init::sx#1 ? ++ (byte) init::sx#2 -- vbuz1=_inc_vbuz1 + //SEG166 [88] (byte) init::sx#1 ← ++ (byte) init::sx#2 -- vbuz1=_inc_vbuz1 inc sx //SEG167 [89] if((byte) init::sx#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto init::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-1+1 @@ -2935,7 +2935,7 @@ init: { jmp b2 //SEG168 init::@2 b2: - //SEG169 [90] *((const byte*) SPRITES_ENABLE#0) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 + //SEG169 [90] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 // Enable & initialize sprites lda #$ff sta SPRITES_ENABLE @@ -2951,11 +2951,11 @@ init: { jmp b3 //SEG174 init::@3 b3: - //SEG175 [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ? (const byte) GREEN#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG175 [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #GREEN ldy ss sta SPRITES_COLS,y - //SEG176 [93] (byte) init::ss#1 ? ++ (byte) init::ss#2 -- vbuz1=_inc_vbuz1 + //SEG176 [93] (byte) init::ss#1 ← ++ (byte) init::ss#2 -- vbuz1=_inc_vbuz1 inc ss //SEG177 [94] if((byte) init::ss#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto init::@3 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -2988,11 +2988,11 @@ plexInit: { jmp b1 //SEG187 plexInit::@1 b1: - //SEG188 [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ? (byte) plexInit::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG188 [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ← (byte) plexInit::i#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy i tya sta PLEX_SORTED_IDX,y - //SEG189 [100] (byte) plexInit::i#1 ? ++ (byte) plexInit::i#2 -- vbuz1=_inc_vbuz1 + //SEG189 [100] (byte) plexInit::i#1 ← ++ (byte) plexInit::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG190 [101] if((byte) plexInit::i#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexInit::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-1+1 @@ -3031,74 +3031,74 @@ plexInit: { REGISTER UPLIFT POTENTIAL REGISTERS Statement [13] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto loop::@2 [ loop::sin_idx#6 ] ( main:4::loop:9 [ loop::sin_idx#6 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ loop::sin_idx#6 loop::sin_idx#1 ] -Statement [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ? *((const byte*) YSIN#0 + (byte) loop::y_idx#2) [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ) always clobbers reg byte a +Statement [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ← *((const byte*) YSIN#0 + (byte) loop::y_idx#2) [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ loop::y_idx#2 loop::y_idx#1 loop::y_idx#4 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ loop::sy#2 loop::sy#1 ] -Statement [18] (byte) loop::y_idx#1 ? (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ) always clobbers reg byte a -Statement [24] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a -Statement [25] (byte~) loop::$4 ? *((const byte*) D011#0) & (const byte) VIC_RST8#0 [ loop::sin_idx#1 loop::$4 ] ( main:4::loop:9 [ loop::sin_idx#1 loop::$4 ] ) always clobbers reg byte a -Statement [28] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ) always clobbers reg byte a +Statement [18] (byte) loop::y_idx#1 ← (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ) always clobbers reg byte a +Statement [24] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a +Statement [25] (byte~) loop::$4 ← *((const byte*) D011#0) & (const byte) VIC_RST8#0 [ loop::sin_idx#1 loop::$4 ] ( main:4::loop:9 [ loop::sin_idx#1 loop::$4 ] ) always clobbers reg byte a +Statement [28] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ plex_free_next#17 plex_free_next#13 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ plex_sprite_idx#44 plex_sprite_idx#15 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ plex_show_idx#44 plex_show_idx#15 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ plex_sprite_msb#44 plex_sprite_msb#16 plex_sprite_msb#25 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ loop::ss#6 loop::ss#1 ] -Statement [35] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a -Statement [36] (byte) plexShowSprite::plex_sprite_idx2#0 ? (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a -Statement [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ? *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a +Statement [35] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a +Statement [36] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a +Statement [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:20 [ plexShowSprite::plex_sprite_idx2#0 ] -Statement [44] (byte) plexShowSprite::xpos_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ) always clobbers reg byte a -Statement [45] (byte~) plexShowSprite::$3 ? < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ) always clobbers reg byte a +Statement [44] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ) always clobbers reg byte a +Statement [45] (byte~) plexShowSprite::$3 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ plexShowSprite::xpos_idx#0 ] -Statement [47] (byte~) plexShowSprite::$4 ? > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ) always clobbers reg byte a -Statement [49] (byte/word/dword~) plexShowSprite::$10 ? (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ) always clobbers reg byte a -Statement [50] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a -Statement [59] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a -Statement [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) [ plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ) always clobbers reg byte a +Statement [47] (byte~) plexShowSprite::$4 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ) always clobbers reg byte a +Statement [49] (byte/word/dword~) plexShowSprite::$10 ← (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ) always clobbers reg byte a +Statement [50] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a +Statement [59] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a +Statement [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) [ plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:10 [ plexSort::m#2 plexSort::m#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:29 [ plexSort::nxt_idx#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ plexSort::nxt_y#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:11 [ plexSort::s#3 plexSort::s#1 plexSort::s#6 ] -Statement [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ? (byte) plexSort::nxt_idx#0 [ plexSort::m#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 ] ) always clobbers reg byte a -Statement [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ plexSort::plexFreePrepare1_s#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::plexFreePrepare1_s#2 ] ) always clobbers reg byte a +Statement [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ← (byte) plexSort::nxt_idx#0 [ plexSort::m#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 ] ) always clobbers reg byte a +Statement [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ plexSort::plexFreePrepare1_s#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::plexFreePrepare1_s#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:12 [ plexSort::plexFreePrepare1_s#2 plexSort::plexFreePrepare1_s#1 ] Statement [80] if((byte) plexSort::nxt_y#0<*((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#1))) goto plexSort::@3 [ plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#1 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#1 ] ) always clobbers reg byte a -Statement [81] *((const byte*) D011#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a -Statement [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ? ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a +Statement [81] *((const byte*) D011#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a +Statement [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:13 [ init::sx#2 init::sx#1 ] -Statement [85] (byte~) init::$6 ? (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ init::sx#2 init::xp#2 init::$6 ] ( main:4::init:7 [ init::sx#2 init::xp#2 init::$6 ] ) always clobbers reg byte a -Statement [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ? (word) init::xp#2 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a -Statement [87] (word) init::xp#1 ? (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 [ init::sx#2 init::xp#1 ] ( main:4::init:7 [ init::sx#2 init::xp#1 ] ) always clobbers reg byte a -Statement [90] *((const byte*) SPRITES_ENABLE#0) ? (byte/word/signed word/dword/signed dword) $ff [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a -Statement [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ? (const byte) GREEN#0 [ init::ss#2 ] ( main:4::init:7 [ init::ss#2 ] ) always clobbers reg byte a +Statement [85] (byte~) init::$6 ← (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ init::sx#2 init::xp#2 init::$6 ] ( main:4::init:7 [ init::sx#2 init::xp#2 init::$6 ] ) always clobbers reg byte a +Statement [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ← (word) init::xp#2 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a +Statement [87] (word) init::xp#1 ← (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 [ init::sx#2 init::xp#1 ] ( main:4::init:7 [ init::sx#2 init::xp#1 ] ) always clobbers reg byte a +Statement [90] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) $ff [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a +Statement [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ← (const byte) GREEN#0 [ init::ss#2 ] ( main:4::init:7 [ init::ss#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:16 [ init::ss#2 init::ss#1 ] Statement [13] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto loop::@2 [ loop::sin_idx#6 ] ( main:4::loop:9 [ loop::sin_idx#6 ] ) always clobbers reg byte a -Statement [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ? *((const byte*) YSIN#0 + (byte) loop::y_idx#2) [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ) always clobbers reg byte a -Statement [18] (byte) loop::y_idx#1 ? (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ) always clobbers reg byte a -Statement [24] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a -Statement [25] (byte~) loop::$4 ? *((const byte*) D011#0) & (const byte) VIC_RST8#0 [ loop::sin_idx#1 loop::$4 ] ( main:4::loop:9 [ loop::sin_idx#1 loop::$4 ] ) always clobbers reg byte a -Statement [28] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ) always clobbers reg byte a -Statement [35] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a -Statement [36] (byte) plexShowSprite::plex_sprite_idx2#0 ? (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a -Statement [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ? *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a -Statement [44] (byte) plexShowSprite::xpos_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ) always clobbers reg byte a -Statement [45] (byte~) plexShowSprite::$3 ? < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ) always clobbers reg byte a -Statement [47] (byte~) plexShowSprite::$4 ? > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ) always clobbers reg byte a -Statement [49] (byte/word/dword~) plexShowSprite::$10 ? (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ) always clobbers reg byte a -Statement [50] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a -Statement [59] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a +Statement [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ← *((const byte*) YSIN#0 + (byte) loop::y_idx#2) [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::y_idx#2 loop::sy#2 ] ) always clobbers reg byte a +Statement [18] (byte) loop::y_idx#1 ← (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#6 loop::sy#2 loop::y_idx#1 ] ) always clobbers reg byte a +Statement [24] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a +Statement [25] (byte~) loop::$4 ← *((const byte*) D011#0) & (const byte) VIC_RST8#0 [ loop::sin_idx#1 loop::$4 ] ( main:4::loop:9 [ loop::sin_idx#1 loop::$4 ] ) always clobbers reg byte a +Statement [28] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ( main:4::loop:9 [ loop::sin_idx#1 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 loop::ss#6 ] ) always clobbers reg byte a +Statement [35] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 [ loop::sin_idx#1 ] ( main:4::loop:9 [ loop::sin_idx#1 ] ) always clobbers reg byte a +Statement [36] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_free_next#17 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a +Statement [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 ] ) always clobbers reg byte a +Statement [44] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 ] ) always clobbers reg byte a +Statement [45] (byte~) plexShowSprite::$3 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::plex_sprite_idx2#0 plexShowSprite::xpos_idx#0 plexShowSprite::$3 ] ) always clobbers reg byte a +Statement [47] (byte~) plexShowSprite::$4 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$4 ] ) always clobbers reg byte a +Statement [49] (byte/word/dword~) plexShowSprite::$10 ← (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 plexShowSprite::$10 ] ) always clobbers reg byte a +Statement [50] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a +Statement [59] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 [ plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ( main:4::loop:9::plexShowSprite:32 [ loop::sin_idx#1 loop::ss#6 plex_sprite_idx#44 plex_show_idx#44 plex_sprite_msb#44 plex_free_next#13 ] ) always clobbers reg byte a Statement [64] if((byte) plexSort::nxt_y#0>=*((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::m#2))) goto plexSort::@2 [ plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 ] ) always clobbers reg byte a -Statement [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) [ plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ) always clobbers reg byte a -Statement [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ? (byte) plexSort::nxt_idx#0 [ plexSort::m#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 ] ) always clobbers reg byte a -Statement [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ plexSort::plexFreePrepare1_s#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::plexFreePrepare1_s#2 ] ) always clobbers reg byte a +Statement [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) [ plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#3 ] ) always clobbers reg byte a +Statement [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ← (byte) plexSort::nxt_idx#0 [ plexSort::m#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 ] ) always clobbers reg byte a +Statement [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ plexSort::plexFreePrepare1_s#2 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::plexFreePrepare1_s#2 ] ) always clobbers reg byte a Statement [80] if((byte) plexSort::nxt_y#0<*((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#1))) goto plexSort::@3 [ plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#1 ] ( main:4::loop:9::plexSort:23 [ loop::sin_idx#1 plexSort::m#2 plexSort::nxt_idx#0 plexSort::nxt_y#0 plexSort::s#1 ] ) always clobbers reg byte a -Statement [81] *((const byte*) D011#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a -Statement [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ? ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a -Statement [85] (byte~) init::$6 ? (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ init::sx#2 init::xp#2 init::$6 ] ( main:4::init:7 [ init::sx#2 init::xp#2 init::$6 ] ) always clobbers reg byte a -Statement [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ? (word) init::xp#2 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a -Statement [87] (word) init::xp#1 ? (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 [ init::sx#2 init::xp#1 ] ( main:4::init:7 [ init::sx#2 init::xp#1 ] ) always clobbers reg byte a -Statement [90] *((const byte*) SPRITES_ENABLE#0) ? (byte/word/signed word/dword/signed dword) $ff [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a -Statement [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ? (const byte) GREEN#0 [ init::ss#2 ] ( main:4::init:7 [ init::ss#2 ] ) always clobbers reg byte a +Statement [81] *((const byte*) D011#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a +Statement [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a +Statement [85] (byte~) init::$6 ← (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ init::sx#2 init::xp#2 init::$6 ] ( main:4::init:7 [ init::sx#2 init::xp#2 init::$6 ] ) always clobbers reg byte a +Statement [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ← (word) init::xp#2 [ init::sx#2 init::xp#2 ] ( main:4::init:7 [ init::sx#2 init::xp#2 ] ) always clobbers reg byte a +Statement [87] (word) init::xp#1 ← (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 [ init::sx#2 init::xp#1 ] ( main:4::init:7 [ init::sx#2 init::xp#1 ] ) always clobbers reg byte a +Statement [90] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) $ff [ ] ( main:4::init:7 [ ] ) always clobbers reg byte a +Statement [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ← (const byte) GREEN#0 [ init::ss#2 ] ( main:4::init:7 [ init::ss#2 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ loop::sin_idx#6 loop::sin_idx#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , Potential registers zp ZP_BYTE:3 [ loop::y_idx#2 loop::y_idx#1 loop::y_idx#4 ] : zp ZP_BYTE:3 , reg byte x , reg byte y , Potential registers zp ZP_BYTE:4 [ loop::sy#2 loop::sy#1 ] : zp ZP_BYTE:4 , reg byte x , reg byte y , @@ -3302,9 +3302,9 @@ loop: { jmp b3 //SEG27 loop::@3 b3: - //SEG28 [14] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG28 [14] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG29 [15] (byte~) loop::y_idx#4 ? (byte) loop::sin_idx#6 -- vbuxx=vbuz1 + //SEG29 [15] (byte~) loop::y_idx#4 ← (byte) loop::sin_idx#6 -- vbuxx=vbuz1 ldx sin_idx //SEG30 [16] phi from loop::@3 to loop::@4 [phi:loop::@3->loop::@4] b4_from_b3: @@ -3319,13 +3319,13 @@ loop: { jmp b4 //SEG36 loop::@4 b4: - //SEG37 [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ? *((const byte*) YSIN#0 + (byte) loop::y_idx#2) -- pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuxx + //SEG37 [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ← *((const byte*) YSIN#0 + (byte) loop::y_idx#2) -- pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuxx lda YSIN,x sta PLEX_YPOS,y - //SEG38 [18] (byte) loop::y_idx#1 ? (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuxx=vbuxx_plus_vbuc1 + //SEG38 [18] (byte) loop::y_idx#1 ← (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuxx=vbuxx_plus_vbuc1 txa axs #-[8] - //SEG39 [19] (byte) loop::sy#1 ? ++ (byte) loop::sy#2 -- vbuyy=_inc_vbuyy + //SEG39 [19] (byte) loop::sy#1 ← ++ (byte) loop::sy#2 -- vbuyy=_inc_vbuyy iny //SEG40 [20] if((byte) loop::sy#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@4 -- vbuyy_neq_vbuc1_then_la1 cpy #PLEX_COUNT-1+1 @@ -3333,9 +3333,9 @@ loop: { jmp b5 //SEG41 loop::@5 b5: - //SEG42 [21] (byte) loop::sin_idx#1 ? (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_plus_1 + //SEG42 [21] (byte) loop::sin_idx#1 ← (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_plus_1 inc sin_idx - //SEG43 [22] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG43 [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL //SEG44 [23] call plexSort //SEG45 [60] phi from loop::@5 to plexSort [phi:loop::@5->plexSort] @@ -3344,13 +3344,13 @@ loop: { jmp b11 //SEG46 loop::@11 b11: - //SEG47 [24] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG47 [24] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL jmp b6 //SEG48 loop::@6 b6: - //SEG49 [25] (byte~) loop::$4 ? *((const byte*) D011#0) & (const byte) VIC_RST8#0 -- vbuaa=_deref_pbuc1_band_vbuc2 + //SEG49 [25] (byte~) loop::$4 ← *((const byte*) D011#0) & (const byte) VIC_RST8#0 -- vbuaa=_deref_pbuc1_band_vbuc2 lda #VIC_RST8 and D011 //SEG50 [26] if((byte~) loop::$4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto loop::@6 -- vbuaa_neq_0_then_la1 @@ -3385,13 +3385,13 @@ loop: { jmp b7 //SEG63 loop::@7 b7: - //SEG64 [28] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG64 [28] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL jmp plexFreeNextYpos1 //SEG65 loop::plexFreeNextYpos1 plexFreeNextYpos1: - //SEG66 [29] (byte) loop::plexFreeNextYpos1_return#0 ? *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG66 [29] (byte) loop::plexFreeNextYpos1_return#0 ← *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) -- vbuz1=pbuc1_derefidx_vbuz2 ldy plex_free_next lda PLEX_FREE_YPOS,y sta plexFreeNextYpos1_return @@ -3405,14 +3405,14 @@ loop: { jmp b9 //SEG69 loop::@9 b9: - //SEG70 [31] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG70 [31] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL //SEG71 [32] call plexShowSprite jsr plexShowSprite jmp b12 //SEG72 loop::@12 b12: - //SEG73 [33] (byte) loop::ss#1 ? ++ (byte) loop::ss#6 -- vbuz1=_inc_vbuz1 + //SEG73 [33] (byte) loop::ss#1 ← ++ (byte) loop::ss#6 -- vbuz1=_inc_vbuz1 inc ss //SEG74 [34] if((byte) loop::ss#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@7 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-1+1 @@ -3421,7 +3421,7 @@ loop: { jmp b10 //SEG75 loop::@10 b10: - //SEG76 [35] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG76 [35] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL //SEG77 [12] phi from loop::@10 to loop::@1 [phi:loop::@10->loop::@1] @@ -3434,52 +3434,52 @@ loop: { // plexSort() prepares showing the sprites plexShowSprite: { .label plex_sprite_idx2 = $a - //SEG80 [36] (byte) plexShowSprite::plex_sprite_idx2#0 ? (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG80 [36] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda plex_sprite_idx asl sta plex_sprite_idx2 - //SEG81 [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- vbuaa=pbuc1_derefidx_pbuc2_derefidx_vbuz1 + //SEG81 [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- vbuaa=pbuc1_derefidx_pbuc2_derefidx_vbuz1 ldx plex_show_idx ldy PLEX_SORTED_IDX,x lda PLEX_YPOS,y - //SEG82 [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG82 [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 -- pbuc1_derefidx_vbuz1=vbuaa ldy plex_sprite_idx2 sta SPRITES_YPOS,y jmp plexFreeAdd1 //SEG83 plexShowSprite::plexFreeAdd1 plexFreeAdd1: - //SEG84 [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuaa=vbuaa_plus_vbuc1 + //SEG84 [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuaa=vbuaa_plus_vbuc1 clc adc #$15 - //SEG85 [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG85 [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 -- pbuc1_derefidx_vbuz1=vbuaa ldy plex_free_next sta PLEX_FREE_YPOS,y - //SEG86 [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ? (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG86 [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ← (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx plex_free_next inx - //SEG87 [42] (byte) plex_free_next#13 ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG87 [42] (byte) plex_free_next#13 ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax plex_free_next jmp b4 //SEG88 plexShowSprite::@4 b4: - //SEG89 [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ? *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_pbuc3_derefidx_vbuz2 + //SEG89 [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_pbuc3_derefidx_vbuz2 ldx plex_show_idx ldy PLEX_SORTED_IDX,x lda PLEX_PTR,y ldx plex_sprite_idx sta PLEX_SCREEN_PTR,x - //SEG90 [44] (byte) plexShowSprite::xpos_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=pbuc1_derefidx_vbuz1_rol_1 + //SEG90 [44] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=pbuc1_derefidx_vbuz1_rol_1 ldx plex_show_idx lda PLEX_SORTED_IDX,x asl tax - //SEG91 [45] (byte~) plexShowSprite::$3 ? < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_lo_pwuc1_derefidx_vbuxx + //SEG91 [45] (byte~) plexShowSprite::$3 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_lo_pwuc1_derefidx_vbuxx lda PLEX_XPOS,x - //SEG92 [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte~) plexShowSprite::$3 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG92 [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte~) plexShowSprite::$3 -- pbuc1_derefidx_vbuz1=vbuaa ldy plex_sprite_idx2 sta SPRITES_XPOS,y - //SEG93 [47] (byte~) plexShowSprite::$4 ? > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_hi_pwuc1_derefidx_vbuxx + //SEG93 [47] (byte~) plexShowSprite::$4 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_hi_pwuc1_derefidx_vbuxx lda PLEX_XPOS+1,x //SEG94 [48] if((byte~) plexShowSprite::$4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@1 -- vbuaa_neq_0_then_la1 cmp #0 @@ -3487,24 +3487,24 @@ plexShowSprite: { jmp b3 //SEG95 plexShowSprite::@3 b3: - //SEG96 [49] (byte/word/dword~) plexShowSprite::$10 ? (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 -- vbuaa=vbuc1_bxor_vbuz1 + //SEG96 [49] (byte/word/dword~) plexShowSprite::$10 ← (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 -- vbuaa=vbuc1_bxor_vbuz1 lda plex_sprite_msb eor #$ff - //SEG97 [50] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa + //SEG97 [50] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa and SPRITES_XMSB sta SPRITES_XMSB jmp b2 //SEG98 plexShowSprite::@2 b2: - //SEG99 [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ? (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG99 [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ← (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx plex_sprite_idx inx - //SEG100 [52] (byte) plex_sprite_idx#15 ? (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG100 [52] (byte) plex_sprite_idx#15 ← (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax plex_sprite_idx - //SEG101 [53] (byte) plex_show_idx#15 ? ++ (byte) plex_show_idx#44 -- vbuz1=_inc_vbuz1 + //SEG101 [53] (byte) plex_show_idx#15 ← ++ (byte) plex_show_idx#44 -- vbuz1=_inc_vbuz1 inc plex_show_idx - //SEG102 [54] (byte) plex_sprite_msb#25 ? (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG102 [54] (byte) plex_sprite_msb#25 ← (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl plex_sprite_msb //SEG103 [55] if((byte) plex_sprite_msb#25!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@5 -- vbuz1_neq_0_then_la1 lda plex_sprite_msb @@ -3531,7 +3531,7 @@ plexShowSprite: { jmp breturn //SEG112 plexShowSprite::@1 b1: - //SEG113 [59] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 + //SEG113 [59] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 lda SPRITES_XMSB ora plex_sprite_msb sta SPRITES_XMSB @@ -3563,11 +3563,11 @@ plexSort: { jmp b1 //SEG119 plexSort::@1 b1: - //SEG120 [62] (byte) plexSort::nxt_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG120 [62] (byte) plexSort::nxt_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy m lda PLEX_SORTED_IDX+1,y sta nxt_idx - //SEG121 [63] (byte) plexSort::nxt_y#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG121 [63] (byte) plexSort::nxt_y#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy nxt_idx lda PLEX_YPOS,y sta nxt_y @@ -3580,7 +3580,7 @@ plexSort: { jmp b6 //SEG123 plexSort::@6 b6: - //SEG124 [65] (byte~) plexSort::s#6 ? (byte) plexSort::m#2 -- vbuxx=vbuz1 + //SEG124 [65] (byte~) plexSort::s#6 ← (byte) plexSort::m#2 -- vbuxx=vbuz1 ldx m //SEG125 [66] phi from plexSort::@5 plexSort::@6 to plexSort::@3 [phi:plexSort::@5/plexSort::@6->plexSort::@3] b3_from_b5: @@ -3589,10 +3589,10 @@ plexSort: { jmp b3 //SEG127 plexSort::@3 b3: - //SEG128 [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG128 [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda PLEX_SORTED_IDX,x sta PLEX_SORTED_IDX+1,x - //SEG129 [68] (byte) plexSort::s#1 ? -- (byte) plexSort::s#3 -- vbuxx=_dec_vbuxx + //SEG129 [68] (byte) plexSort::s#1 ← -- (byte) plexSort::s#3 -- vbuxx=_dec_vbuxx dex //SEG130 [69] if((byte) plexSort::s#1!=(byte/word/signed word/dword/signed dword) $ff) goto plexSort::@5 -- vbuxx_neq_vbuc1_then_la1 cpx #$ff @@ -3600,15 +3600,15 @@ plexSort: { jmp b4 //SEG131 plexSort::@4 b4: - //SEG132 [70] (byte) plexSort::s#2 ? ++ (byte) plexSort::s#1 -- vbuxx=_inc_vbuxx + //SEG132 [70] (byte) plexSort::s#2 ← ++ (byte) plexSort::s#1 -- vbuxx=_inc_vbuxx inx - //SEG133 [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ? (byte) plexSort::nxt_idx#0 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG133 [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ← (byte) plexSort::nxt_idx#0 -- pbuc1_derefidx_vbuxx=vbuz1 lda nxt_idx sta PLEX_SORTED_IDX,x jmp b2 //SEG134 plexSort::@2 b2: - //SEG135 [72] (byte) plexSort::m#1 ? ++ (byte) plexSort::m#2 -- vbuz1=_inc_vbuz1 + //SEG135 [72] (byte) plexSort::m#1 ← ++ (byte) plexSort::m#2 -- vbuz1=_inc_vbuz1 inc m //SEG136 [73] if((byte) plexSort::m#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexSort::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-2+1 @@ -3630,10 +3630,10 @@ plexSort: { jmp plexFreePrepare1_b1 //SEG143 plexSort::plexFreePrepare1_@1 plexFreePrepare1_b1: - //SEG144 [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG144 [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #0 sta PLEX_FREE_YPOS,x - //SEG145 [77] (byte) plexSort::plexFreePrepare1_s#1 ? ++ (byte) plexSort::plexFreePrepare1_s#2 -- vbuxx=_inc_vbuxx + //SEG145 [77] (byte) plexSort::plexFreePrepare1_s#1 ← ++ (byte) plexSort::plexFreePrepare1_s#2 -- vbuxx=_inc_vbuxx inx //SEG146 [78] if((byte) plexSort::plexFreePrepare1_s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto plexSort::plexFreePrepare1_@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -3656,7 +3656,7 @@ plexSort: { // Initialize the program init: { .label xp = 8 - //SEG152 [81] *((const byte*) D011#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG152 [81] *((const byte*) D011#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_DEN|VIC_RSEL|3 sta D011 //SEG153 [82] call plexInit @@ -3680,19 +3680,19 @@ init: { jmp b1 //SEG161 init::@1 b1: - //SEG162 [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ? ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG162 [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 -- pbuc1_derefidx_vbuxx=vbuc2 lda #$ff&SPRITE/$40 sta PLEX_PTR,x - //SEG163 [85] (byte~) init::$6 ? (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 + //SEG163 [85] (byte~) init::$6 ← (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 txa asl - //SEG164 [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ? (word) init::xp#2 -- pwuc1_derefidx_vbuaa=vwuz1 + //SEG164 [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ← (word) init::xp#2 -- pwuc1_derefidx_vbuaa=vwuz1 tay lda xp sta PLEX_XPOS,y lda xp+1 sta PLEX_XPOS+1,y - //SEG165 [87] (word) init::xp#1 ? (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 -- vwuz1=vwuz1_plus_vbuc1 + //SEG165 [87] (word) init::xp#1 ← (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 -- vwuz1=vwuz1_plus_vbuc1 lda #9 clc adc xp @@ -3700,7 +3700,7 @@ init: { bcc !+ inc xp+1 !: - //SEG166 [88] (byte) init::sx#1 ? ++ (byte) init::sx#2 -- vbuxx=_inc_vbuxx + //SEG166 [88] (byte) init::sx#1 ← ++ (byte) init::sx#2 -- vbuxx=_inc_vbuxx inx //SEG167 [89] if((byte) init::sx#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto init::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #PLEX_COUNT-1+1 @@ -3708,7 +3708,7 @@ init: { jmp b2 //SEG168 init::@2 b2: - //SEG169 [90] *((const byte*) SPRITES_ENABLE#0) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 + //SEG169 [90] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 // Enable & initialize sprites lda #$ff sta SPRITES_ENABLE @@ -3723,10 +3723,10 @@ init: { jmp b3 //SEG174 init::@3 b3: - //SEG175 [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ? (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG175 [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #GREEN sta SPRITES_COLS,x - //SEG176 [93] (byte) init::ss#1 ? ++ (byte) init::ss#2 -- vbuxx=_inc_vbuxx + //SEG176 [93] (byte) init::ss#1 ← ++ (byte) init::ss#2 -- vbuxx=_inc_vbuxx inx //SEG177 [94] if((byte) init::ss#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto init::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -3756,10 +3756,10 @@ plexInit: { jmp b1 //SEG187 plexInit::@1 b1: - //SEG188 [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ? (byte) plexInit::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG188 [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ← (byte) plexInit::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta PLEX_SORTED_IDX,x - //SEG189 [100] (byte) plexInit::i#1 ? ++ (byte) plexInit::i#2 -- vbuxx=_inc_vbuxx + //SEG189 [100] (byte) plexInit::i#1 ← ++ (byte) plexInit::i#2 -- vbuxx=_inc_vbuxx inx //SEG190 [101] if((byte) plexInit::i#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexInit::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #PLEX_COUNT-1+1 @@ -4272,9 +4272,9 @@ loop: { cmp RASTER bne b2 //SEG27 loop::@3 - //SEG28 [14] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG28 [14] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG29 [15] (byte~) loop::y_idx#4 ? (byte) loop::sin_idx#6 -- vbuxx=vbuz1 + //SEG29 [15] (byte~) loop::y_idx#4 ← (byte) loop::sin_idx#6 -- vbuxx=vbuz1 ldx sin_idx //SEG30 [16] phi from loop::@3 to loop::@4 [phi:loop::@3->loop::@4] //SEG31 [16] phi (byte) loop::sy#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:loop::@3->loop::@4#0] -- vbuyy=vbuc1 @@ -4285,32 +4285,32 @@ loop: { //SEG35 [16] phi (byte) loop::y_idx#2 = (byte) loop::y_idx#1 [phi:loop::@4->loop::@4#1] -- register_copy //SEG36 loop::@4 b4: - //SEG37 [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ? *((const byte*) YSIN#0 + (byte) loop::y_idx#2) -- pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuxx + //SEG37 [17] *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) loop::sy#2) ← *((const byte*) YSIN#0 + (byte) loop::y_idx#2) -- pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuxx lda YSIN,x sta PLEX_YPOS,y - //SEG38 [18] (byte) loop::y_idx#1 ? (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuxx=vbuxx_plus_vbuc1 + //SEG38 [18] (byte) loop::y_idx#1 ← (byte) loop::y_idx#2 + (byte/signed byte/word/signed word/dword/signed dword) 8 -- vbuxx=vbuxx_plus_vbuc1 txa axs #-[8] - //SEG39 [19] (byte) loop::sy#1 ? ++ (byte) loop::sy#2 -- vbuyy=_inc_vbuyy + //SEG39 [19] (byte) loop::sy#1 ← ++ (byte) loop::sy#2 -- vbuyy=_inc_vbuyy iny //SEG40 [20] if((byte) loop::sy#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@4 -- vbuyy_neq_vbuc1_then_la1 cpy #PLEX_COUNT-1+1 bne b4 //SEG41 loop::@5 - //SEG42 [21] (byte) loop::sin_idx#1 ? (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_plus_1 + //SEG42 [21] (byte) loop::sin_idx#1 ← (byte) loop::sin_idx#6 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_plus_1 inc sin_idx - //SEG43 [22] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG43 [22] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL //SEG44 [23] call plexSort //SEG45 [60] phi from loop::@5 to plexSort [phi:loop::@5->plexSort] jsr plexSort //SEG46 loop::@11 - //SEG47 [24] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG47 [24] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL //SEG48 loop::@6 b6: - //SEG49 [25] (byte~) loop::$4 ? *((const byte*) D011#0) & (const byte) VIC_RST8#0 -- vbuaa=_deref_pbuc1_band_vbuc2 + //SEG49 [25] (byte~) loop::$4 ← *((const byte*) D011#0) & (const byte) VIC_RST8#0 -- vbuaa=_deref_pbuc1_band_vbuc2 lda #VIC_RST8 and D011 //SEG50 [26] if((byte~) loop::$4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto loop::@6 -- vbuaa_neq_0_then_la1 @@ -4339,11 +4339,11 @@ loop: { //SEG62 [27] phi (byte) plex_free_next#17 = (byte) plex_free_next#13 [phi:loop::@12->loop::@7#4] -- register_copy //SEG63 loop::@7 b7: - //SEG64 [28] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG64 [28] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL //SEG65 loop::plexFreeNextYpos1 - //SEG66 [29] (byte) loop::plexFreeNextYpos1_return#0 ? *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG66 [29] (byte) loop::plexFreeNextYpos1_return#0 ← *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) -- vbuz1=pbuc1_derefidx_vbuz2 ldy plex_free_next lda PLEX_FREE_YPOS,y sta plexFreeNextYpos1_return @@ -4354,19 +4354,19 @@ loop: { cmp plexFreeNextYpos1_return bcc b8 //SEG69 loop::@9 - //SEG70 [31] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG70 [31] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL //SEG71 [32] call plexShowSprite jsr plexShowSprite //SEG72 loop::@12 - //SEG73 [33] (byte) loop::ss#1 ? ++ (byte) loop::ss#6 -- vbuz1=_inc_vbuz1 + //SEG73 [33] (byte) loop::ss#1 ← ++ (byte) loop::ss#6 -- vbuz1=_inc_vbuz1 inc ss //SEG74 [34] if((byte) loop::ss#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto loop::@7 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-1+1 cmp ss bne b7 //SEG75 loop::@10 - //SEG76 [35] *((const byte*) BORDERCOL#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG76 [35] *((const byte*) BORDERCOL#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BORDERCOL //SEG77 [12] phi from loop::@10 to loop::@1 [phi:loop::@10->loop::@1] @@ -4378,70 +4378,70 @@ loop: { // plexSort() prepares showing the sprites plexShowSprite: { .label plex_sprite_idx2 = $a - //SEG80 [36] (byte) plexShowSprite::plex_sprite_idx2#0 ? (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG80 [36] (byte) plexShowSprite::plex_sprite_idx2#0 ← (byte) plex_sprite_idx#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda plex_sprite_idx asl sta plex_sprite_idx2 - //SEG81 [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- vbuaa=pbuc1_derefidx_pbuc2_derefidx_vbuz1 + //SEG81 [37] (byte) plexShowSprite::plexFreeAdd1_ypos#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- vbuaa=pbuc1_derefidx_pbuc2_derefidx_vbuz1 ldx plex_show_idx ldy PLEX_SORTED_IDX,x lda PLEX_YPOS,y - //SEG82 [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG82 [38] *((const byte*) SPRITES_YPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 -- pbuc1_derefidx_vbuz1=vbuaa ldy plex_sprite_idx2 sta SPRITES_YPOS,y //SEG83 plexShowSprite::plexFreeAdd1 - //SEG84 [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ? (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuaa=vbuaa_plus_vbuc1 + //SEG84 [39] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 ← (byte) plexShowSprite::plexFreeAdd1_ypos#0 + (byte/signed byte/word/signed word/dword/signed dword) $15 -- vbuaa=vbuaa_plus_vbuc1 clc adc #$15 - //SEG85 [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG85 [40] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plex_free_next#17) ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$0#0 -- pbuc1_derefidx_vbuz1=vbuaa ldy plex_free_next sta PLEX_FREE_YPOS,y - //SEG86 [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ? (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG86 [41] (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 ← (byte) plex_free_next#17 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx plex_free_next inx - //SEG87 [42] (byte) plex_free_next#13 ? (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG87 [42] (byte) plex_free_next#13 ← (byte/signed word/word/dword/signed dword) plexShowSprite::plexFreeAdd1_$1#0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax plex_free_next //SEG88 plexShowSprite::@4 - //SEG89 [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ? *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_pbuc3_derefidx_vbuz2 + //SEG89 [43] *((const byte*) PLEX_SCREEN_PTR#1 + (byte) plex_sprite_idx#44) ← *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44)) -- pbuc1_derefidx_vbuz1=pbuc2_derefidx_pbuc3_derefidx_vbuz2 ldx plex_show_idx ldy PLEX_SORTED_IDX,x lda PLEX_PTR,y ldx plex_sprite_idx sta PLEX_SCREEN_PTR,x - //SEG90 [44] (byte) plexShowSprite::xpos_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=pbuc1_derefidx_vbuz1_rol_1 + //SEG90 [44] (byte) plexShowSprite::xpos_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plex_show_idx#44) << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=pbuc1_derefidx_vbuz1_rol_1 ldx plex_show_idx lda PLEX_SORTED_IDX,x asl tax - //SEG91 [45] (byte~) plexShowSprite::$3 ? < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_lo_pwuc1_derefidx_vbuxx + //SEG91 [45] (byte~) plexShowSprite::$3 ← < *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_lo_pwuc1_derefidx_vbuxx lda PLEX_XPOS,x - //SEG92 [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ? (byte~) plexShowSprite::$3 -- pbuc1_derefidx_vbuz1=vbuaa + //SEG92 [46] *((const byte*) SPRITES_XPOS#0 + (byte) plexShowSprite::plex_sprite_idx2#0) ← (byte~) plexShowSprite::$3 -- pbuc1_derefidx_vbuz1=vbuaa ldy plex_sprite_idx2 sta SPRITES_XPOS,y - //SEG93 [47] (byte~) plexShowSprite::$4 ? > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_hi_pwuc1_derefidx_vbuxx + //SEG93 [47] (byte~) plexShowSprite::$4 ← > *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte) plexShowSprite::xpos_idx#0) -- vbuaa=_hi_pwuc1_derefidx_vbuxx lda PLEX_XPOS+1,x //SEG94 [48] if((byte~) plexShowSprite::$4!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@1 -- vbuaa_neq_0_then_la1 cmp #0 bne b1 //SEG95 plexShowSprite::@3 - //SEG96 [49] (byte/word/dword~) plexShowSprite::$10 ? (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 -- vbuaa=vbuc1_bxor_vbuz1 + //SEG96 [49] (byte/word/dword~) plexShowSprite::$10 ← (byte/word/signed word/dword/signed dword) $ff ^ (byte) plex_sprite_msb#44 -- vbuaa=vbuc1_bxor_vbuz1 lda plex_sprite_msb eor #$ff - //SEG97 [50] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa + //SEG97 [50] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) plexShowSprite::$10 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa and SPRITES_XMSB sta SPRITES_XMSB //SEG98 plexShowSprite::@2 b2: - //SEG99 [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ? (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 + //SEG99 [51] (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 ← (byte) plex_sprite_idx#44 + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_plus_1 ldx plex_sprite_idx inx - //SEG100 [52] (byte) plex_sprite_idx#15 ? (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG100 [52] (byte) plex_sprite_idx#15 ← (byte/signed word/word/dword/signed dword~) plexShowSprite::$6 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax plex_sprite_idx - //SEG101 [53] (byte) plex_show_idx#15 ? ++ (byte) plex_show_idx#44 -- vbuz1=_inc_vbuz1 + //SEG101 [53] (byte) plex_show_idx#15 ← ++ (byte) plex_show_idx#44 -- vbuz1=_inc_vbuz1 inc plex_show_idx - //SEG102 [54] (byte) plex_sprite_msb#25 ? (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG102 [54] (byte) plex_sprite_msb#25 ← (byte) plex_sprite_msb#44 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl plex_sprite_msb //SEG103 [55] if((byte) plex_sprite_msb#25!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto plexShowSprite::@5 -- vbuz1_neq_0_then_la1 lda plex_sprite_msb @@ -4461,7 +4461,7 @@ plexShowSprite: { //SEG111 [56] phi (byte) plex_sprite_msb#16 = (byte) plex_sprite_msb#25 [phi:plexShowSprite::@5->plexShowSprite::@return#0] -- register_copy //SEG112 plexShowSprite::@1 b1: - //SEG113 [59] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 + //SEG113 [59] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte) plex_sprite_msb#44 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 lda SPRITES_XMSB ora plex_sprite_msb sta SPRITES_XMSB @@ -4489,11 +4489,11 @@ plexSort: { //SEG118 [61] phi (byte) plexSort::m#2 = (byte) plexSort::m#1 [phi:plexSort::@2->plexSort::@1#0] -- register_copy //SEG119 plexSort::@1 b1: - //SEG120 [62] (byte) plexSort::nxt_idx#0 ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG120 [62] (byte) plexSort::nxt_idx#0 ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::m#2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy m lda PLEX_SORTED_IDX+1,y sta nxt_idx - //SEG121 [63] (byte) plexSort::nxt_y#0 ? *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG121 [63] (byte) plexSort::nxt_y#0 ← *((const byte[PLEX_COUNT#0]) PLEX_YPOS#0 + (byte) plexSort::nxt_idx#0) -- vbuz1=pbuc1_derefidx_vbuz2 tay lda PLEX_YPOS,y sta nxt_y @@ -4503,29 +4503,29 @@ plexSort: { cmp PLEX_YPOS,y bcs b2 //SEG123 plexSort::@6 - //SEG124 [65] (byte~) plexSort::s#6 ? (byte) plexSort::m#2 -- vbuxx=vbuz1 + //SEG124 [65] (byte~) plexSort::s#6 ← (byte) plexSort::m#2 -- vbuxx=vbuz1 //SEG125 [66] phi from plexSort::@5 plexSort::@6 to plexSort::@3 [phi:plexSort::@5/plexSort::@6->plexSort::@3] //SEG126 [66] phi (byte) plexSort::s#3 = (byte) plexSort::s#1 [phi:plexSort::@5/plexSort::@6->plexSort::@3#0] -- register_copy //SEG127 plexSort::@3 b3: - //SEG128 [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ? *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx + //SEG128 [67] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0+(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) plexSort::s#3) ← *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#3) -- pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx lda PLEX_SORTED_IDX,x sta PLEX_SORTED_IDX+1,x - //SEG129 [68] (byte) plexSort::s#1 ? -- (byte) plexSort::s#3 -- vbuxx=_dec_vbuxx + //SEG129 [68] (byte) plexSort::s#1 ← -- (byte) plexSort::s#3 -- vbuxx=_dec_vbuxx dex //SEG130 [69] if((byte) plexSort::s#1!=(byte/word/signed word/dword/signed dword) $ff) goto plexSort::@5 -- vbuxx_neq_vbuc1_then_la1 cpx #$ff bne b5 //SEG131 plexSort::@4 b4: - //SEG132 [70] (byte) plexSort::s#2 ? ++ (byte) plexSort::s#1 -- vbuxx=_inc_vbuxx + //SEG132 [70] (byte) plexSort::s#2 ← ++ (byte) plexSort::s#1 -- vbuxx=_inc_vbuxx inx - //SEG133 [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ? (byte) plexSort::nxt_idx#0 -- pbuc1_derefidx_vbuxx=vbuz1 + //SEG133 [71] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexSort::s#2) ← (byte) plexSort::nxt_idx#0 -- pbuc1_derefidx_vbuxx=vbuz1 lda nxt_idx sta PLEX_SORTED_IDX,x //SEG134 plexSort::@2 b2: - //SEG135 [72] (byte) plexSort::m#1 ? ++ (byte) plexSort::m#2 -- vbuz1=_inc_vbuz1 + //SEG135 [72] (byte) plexSort::m#1 ← ++ (byte) plexSort::m#2 -- vbuz1=_inc_vbuz1 inc m //SEG136 [73] if((byte) plexSort::m#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 2+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexSort::@1 -- vbuz1_neq_vbuc1_then_la1 lda #PLEX_COUNT-2+1 @@ -4540,10 +4540,10 @@ plexSort: { //SEG142 [75] phi (byte) plexSort::plexFreePrepare1_s#2 = (byte) plexSort::plexFreePrepare1_s#1 [phi:plexSort::plexFreePrepare1_@1->plexSort::plexFreePrepare1_@1#0] -- register_copy //SEG143 plexSort::plexFreePrepare1_@1 plexFreePrepare1_b1: - //SEG144 [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG144 [76] *((const byte[8]) PLEX_FREE_YPOS#0 + (byte) plexSort::plexFreePrepare1_s#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #0 sta PLEX_FREE_YPOS,x - //SEG145 [77] (byte) plexSort::plexFreePrepare1_s#1 ? ++ (byte) plexSort::plexFreePrepare1_s#2 -- vbuxx=_inc_vbuxx + //SEG145 [77] (byte) plexSort::plexFreePrepare1_s#1 ← ++ (byte) plexSort::plexFreePrepare1_s#2 -- vbuxx=_inc_vbuxx inx //SEG146 [78] if((byte) plexSort::plexFreePrepare1_s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto plexSort::plexFreePrepare1_@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -4564,7 +4564,7 @@ plexSort: { // Initialize the program init: { .label xp = 8 - //SEG152 [81] *((const byte*) D011#0) ? (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG152 [81] *((const byte*) D011#0) ← (const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_DEN|VIC_RSEL|3 sta D011 //SEG153 [82] call plexInit @@ -4583,19 +4583,19 @@ init: { //SEG160 [83] phi (byte) init::sx#2 = (byte) init::sx#1 [phi:init::@1->init::@1#1] -- register_copy //SEG161 init::@1 b1: - //SEG162 [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ? ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG162 [84] *((const byte[PLEX_COUNT#0]) PLEX_PTR#0 + (byte) init::sx#2) ← ((byte))(const byte*) SPRITE#0/(byte/signed byte/word/signed word/dword/signed dword) $40 -- pbuc1_derefidx_vbuxx=vbuc2 lda #$ff&SPRITE/$40 sta PLEX_PTR,x - //SEG163 [85] (byte~) init::$6 ? (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 + //SEG163 [85] (byte~) init::$6 ← (byte) init::sx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_rol_1 txa asl - //SEG164 [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ? (word) init::xp#2 -- pwuc1_derefidx_vbuaa=vwuz1 + //SEG164 [86] *((const word[PLEX_COUNT#0]) PLEX_XPOS#0 + (byte~) init::$6) ← (word) init::xp#2 -- pwuc1_derefidx_vbuaa=vwuz1 tay lda xp sta PLEX_XPOS,y lda xp+1 sta PLEX_XPOS+1,y - //SEG165 [87] (word) init::xp#1 ? (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 -- vwuz1=vwuz1_plus_vbuc1 + //SEG165 [87] (word) init::xp#1 ← (word) init::xp#2 + (byte/signed byte/word/signed word/dword/signed dword) 9 -- vwuz1=vwuz1_plus_vbuc1 lda #9 clc adc xp @@ -4603,13 +4603,13 @@ init: { bcc !+ inc xp+1 !: - //SEG166 [88] (byte) init::sx#1 ? ++ (byte) init::sx#2 -- vbuxx=_inc_vbuxx + //SEG166 [88] (byte) init::sx#1 ← ++ (byte) init::sx#2 -- vbuxx=_inc_vbuxx inx //SEG167 [89] if((byte) init::sx#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto init::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #PLEX_COUNT-1+1 bne b1 //SEG168 init::@2 - //SEG169 [90] *((const byte*) SPRITES_ENABLE#0) ? (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 + //SEG169 [90] *((const byte*) SPRITES_ENABLE#0) ← (byte/word/signed word/dword/signed dword) $ff -- _deref_pbuc1=vbuc2 // Enable & initialize sprites lda #$ff sta SPRITES_ENABLE @@ -4620,10 +4620,10 @@ init: { //SEG173 [91] phi (byte) init::ss#2 = (byte) init::ss#1 [phi:init::@3->init::@3#0] -- register_copy //SEG174 init::@3 b3: - //SEG175 [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ? (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG175 [92] *((const byte*) SPRITES_COLS#0 + (byte) init::ss#2) ← (const byte) GREEN#0 -- pbuc1_derefidx_vbuxx=vbuc2 lda #GREEN sta SPRITES_COLS,x - //SEG176 [93] (byte) init::ss#1 ? ++ (byte) init::ss#2 -- vbuxx=_inc_vbuxx + //SEG176 [93] (byte) init::ss#1 ← ++ (byte) init::ss#2 -- vbuxx=_inc_vbuxx inx //SEG177 [94] if((byte) init::ss#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto init::@3 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -4644,10 +4644,10 @@ plexInit: { //SEG186 [98] phi (byte) plexInit::i#2 = (byte) plexInit::i#1 [phi:plexInit::@1->plexInit::@1#0] -- register_copy //SEG187 plexInit::@1 b1: - //SEG188 [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ? (byte) plexInit::i#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG188 [99] *((const byte[PLEX_COUNT#0]) PLEX_SORTED_IDX#0 + (byte) plexInit::i#2) ← (byte) plexInit::i#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta PLEX_SORTED_IDX,x - //SEG189 [100] (byte) plexInit::i#1 ? ++ (byte) plexInit::i#2 -- vbuxx=_inc_vbuxx + //SEG189 [100] (byte) plexInit::i#1 ← ++ (byte) plexInit::i#2 -- vbuxx=_inc_vbuxx inx //SEG190 [101] if((byte) plexInit::i#1!=(const byte) PLEX_COUNT#0-(byte/signed byte/word/signed word/dword/signed dword) 1+(byte/signed byte/word/signed word/dword/signed dword) 1) goto plexInit::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #PLEX_COUNT-1+1 diff --git a/src/test/ref/examples/scrolllogo/scrolllogo.log b/src/test/ref/examples/scrolllogo/scrolllogo.log index 0a924fc96..89b1948b1 100644 --- a/src/test/ref/examples/scrolllogo/scrolllogo.log +++ b/src/test/ref/examples/scrolllogo/scrolllogo.log @@ -1,903 +1,903 @@ Identified constant variable (byte*) SCREEN Identified constant variable (byte*) LOGO -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx -Inlined call (byte~) main::$0 ? call toD018 (byte*) SCREEN (byte*) LOGO +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) main::$0 ← call toD018 (byte*) SCREEN (byte*) LOGO CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @4 - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@9 divr16u: scope:[divr16u] from div32u16u div32u16u::@2 - (word) divr16u::divisor#6 ? phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) - (word) divr16u::dividend#5 ? phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) - (word) divr16u::rem#10 ? phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#6 ← phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) + (word) divr16u::dividend#5 ← phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) + (word) divr16u::rem#10 ← phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#4 ? phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) - (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - (word~) divr16u::$0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#4 ← phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) + (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + (word~) divr16u::$0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#2 ? phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#4 ? phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#2 ← phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#4 ← phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#5 ? phi( divr16u::@1/(word) divr16u::divisor#4 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#7 ? phi( divr16u::@1/(word) divr16u::dividend#3 ) - (word) divr16u::rem#7 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#5 ← phi( divr16u::@1/(word) divr16u::divisor#4 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#7 ← phi( divr16u::@1/(word) divr16u::dividend#3 ) + (word) divr16u::rem#7 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#7 ? phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#6 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) - (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#7 ← phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#6 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) + (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#8 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#3 ? phi( divr16u::@2/(word) divr16u::divisor#2 ) - (word) divr16u::rem#8 ? phi( divr16u::@2/(word) divr16u::rem#6 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#8 - (word) divr16u::divisor#3 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#8 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#3 ← phi( divr16u::@2/(word) divr16u::divisor#2 ) + (word) divr16u::rem#8 ← phi( divr16u::@2/(word) divr16u::rem#6 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#8 - (word) divr16u::divisor#3 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#9 ? phi( divr16u::@3/(word) divr16u::rem#11 ) - (word) rem16u#1 ? (word) divr16u::rem#9 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#9 ← phi( divr16u::@3/(word) divr16u::rem#11 ) + (word) rem16u#1 ← (word) divr16u::rem#9 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#11 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#4 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#4 - (word) rem16u#2 ? (word) rem16u#11 + (word) rem16u#11 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#4 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#4 + (word) rem16u#2 ← (word) rem16u#11 return to:@return div32u16u: scope:[div32u16u] from sin16s_gen2 - (word) rem16u#20 ? phi( sin16s_gen2/(word) rem16u#21 ) - (word) div32u16u::divisor#1 ? phi( sin16s_gen2/(word) div32u16u::divisor#0 ) - (dword) div32u16u::dividend#1 ? phi( sin16s_gen2/(dword) div32u16u::dividend#0 ) - (word~) div32u16u::$0 ? > (dword) div32u16u::dividend#1 - (word) divr16u::dividend#1 ? (word~) div32u16u::$0 - (word) divr16u::divisor#0 ? (word) div32u16u::divisor#1 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#20 ← phi( sin16s_gen2/(word) rem16u#21 ) + (word) div32u16u::divisor#1 ← phi( sin16s_gen2/(word) div32u16u::divisor#0 ) + (dword) div32u16u::dividend#1 ← phi( sin16s_gen2/(dword) div32u16u::dividend#0 ) + (word~) div32u16u::$0 ← > (dword) div32u16u::dividend#1 + (word) divr16u::dividend#1 ← (word~) div32u16u::$0 + (word) divr16u::divisor#0 ← (word) div32u16u::divisor#1 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u - (word) div32u16u::divisor#2 ? phi( div32u16u/(word) div32u16u::divisor#1 ) - (dword) div32u16u::dividend#2 ? phi( div32u16u/(dword) div32u16u::dividend#1 ) - (word) rem16u#12 ? phi( div32u16u/(word) rem16u#2 ) - (word) divr16u::return#5 ? phi( div32u16u/(word) divr16u::return#2 ) - (word~) div32u16u::$1 ? (word) divr16u::return#5 - (word) rem16u#3 ? (word) rem16u#12 - (word) div32u16u::quotient_hi#0 ? (word~) div32u16u::$1 - (word~) div32u16u::$2 ? < (dword) div32u16u::dividend#2 - (word) divr16u::dividend#2 ? (word~) div32u16u::$2 - (word) divr16u::divisor#1 ? (word) div32u16u::divisor#2 - (word) divr16u::rem#4 ? (word) rem16u#3 + (word) div32u16u::divisor#2 ← phi( div32u16u/(word) div32u16u::divisor#1 ) + (dword) div32u16u::dividend#2 ← phi( div32u16u/(dword) div32u16u::dividend#1 ) + (word) rem16u#12 ← phi( div32u16u/(word) rem16u#2 ) + (word) divr16u::return#5 ← phi( div32u16u/(word) divr16u::return#2 ) + (word~) div32u16u::$1 ← (word) divr16u::return#5 + (word) rem16u#3 ← (word) rem16u#12 + (word) div32u16u::quotient_hi#0 ← (word~) div32u16u::$1 + (word~) div32u16u::$2 ← < (dword) div32u16u::dividend#2 + (word) divr16u::dividend#2 ← (word~) div32u16u::$2 + (word) divr16u::divisor#1 ← (word) div32u16u::divisor#2 + (word) divr16u::rem#4 ← (word) rem16u#3 call divr16u - (word) divr16u::return#3 ? (word) divr16u::return#1 + (word) divr16u::return#3 ← (word) divr16u::return#1 to:div32u16u::@3 div32u16u::@3: scope:[div32u16u] from div32u16u::@2 - (word) div32u16u::quotient_hi#1 ? phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) - (word) rem16u#13 ? phi( div32u16u::@2/(word) rem16u#2 ) - (word) divr16u::return#6 ? phi( div32u16u::@2/(word) divr16u::return#3 ) - (word~) div32u16u::$3 ? (word) divr16u::return#6 - (word) rem16u#4 ? (word) rem16u#13 - (word) div32u16u::quotient_lo#0 ? (word~) div32u16u::$3 - (dword) div32u16u::quotient#0 ? { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } - (dword) div32u16u::return#0 ? (dword) div32u16u::quotient#0 + (word) div32u16u::quotient_hi#1 ← phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) + (word) rem16u#13 ← phi( div32u16u::@2/(word) rem16u#2 ) + (word) divr16u::return#6 ← phi( div32u16u::@2/(word) divr16u::return#3 ) + (word~) div32u16u::$3 ← (word) divr16u::return#6 + (word) rem16u#4 ← (word) rem16u#13 + (word) div32u16u::quotient_lo#0 ← (word~) div32u16u::$3 + (dword) div32u16u::quotient#0 ← { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } + (dword) div32u16u::return#0 ← (dword) div32u16u::quotient#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@3 - (word) rem16u#14 ? phi( div32u16u::@3/(word) rem16u#4 ) - (dword) div32u16u::return#3 ? phi( div32u16u::@3/(dword) div32u16u::return#0 ) - (dword) div32u16u::return#1 ? (dword) div32u16u::return#3 - (word) rem16u#5 ? (word) rem16u#14 + (word) rem16u#14 ← phi( div32u16u::@3/(word) rem16u#4 ) + (dword) div32u16u::return#3 ← phi( div32u16u::@3/(dword) div32u16u::return#0 ) + (dword) div32u16u::return#1 ← (dword) div32u16u::return#3 + (word) rem16u#5 ← (word) rem16u#14 return to:@return @9: scope:[] from @6 - (word) rem16u#36 ? phi( @6/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#36 ← phi( @6/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@10 @10: scope:[] from @9 - (word) rem16u#34 ? phi( @9/(word) rem16u#36 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#34 ← phi( @9/(word) rem16u#36 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@17 mul16u: scope:[mul16u] from mul16s mulu16_sel - (word) mul16u::a#6 ? phi( mul16s/(word) mul16u::a#1 mulu16_sel/(word) mul16u::a#2 ) - (word) mul16u::b#2 ? phi( mul16s/(word) mul16u::b#0 mulu16_sel/(word) mul16u::b#1 ) - (dword) mul16u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 + (word) mul16u::a#6 ← phi( mul16s/(word) mul16u::a#1 mulu16_sel/(word) mul16u::a#2 ) + (word) mul16u::b#2 ← phi( mul16s/(word) mul16u::b#0 mulu16_sel/(word) mul16u::b#1 ) + (dword) mul16u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@4 - (dword) mul16u::mb#5 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) - (dword) mul16u::res#4 ? phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) - (word) mul16u::a#3 ? phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) - (bool~) mul16u::$0 ? (word) mul16u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#5 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) + (dword) mul16u::res#4 ← phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) + (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) + (bool~) mul16u::$0 ← (word) mul16u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul16u::$0) goto mul16u::@2 to:mul16u::@3 mul16u::@2: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#5 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::mb#4 ? phi( mul16u::@1/(dword) mul16u::mb#5 ) - (word) mul16u::a#4 ? phi( mul16u::@1/(word) mul16u::a#3 ) - (byte/word~) mul16u::$1 ? (word) mul16u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16u::$3 ? ! (bool~) mul16u::$2 + (dword) mul16u::res#5 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::mb#4 ← phi( mul16u::@1/(dword) mul16u::mb#5 ) + (word) mul16u::a#4 ← phi( mul16u::@1/(word) mul16u::a#3 ) + (byte/word~) mul16u::$1 ← (word) mul16u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16u::$3 ← ! (bool~) mul16u::$2 if((bool~) mul16u::$3) goto mul16u::@4 to:mul16u::@7 mul16u::@3: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#2 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::return#0 ? (dword) mul16u::res#2 + (dword) mul16u::res#2 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::return#0 ← (dword) mul16u::res#2 to:mul16u::@return mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7 - (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) - (dword) mul16u::mb#2 ? phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) - (word) mul16u::a#5 ? phi( mul16u::@2/(word) mul16u::a#4 mul16u::@7/(word) mul16u::a#7 ) - (word~) mul16u::$5 ? (word) mul16u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul16u::a#0 ? (word~) mul16u::$5 - (dword~) mul16u::$6 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (dword) mul16u::mb#1 ? (dword~) mul16u::$6 + (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) + (dword) mul16u::mb#2 ← phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) + (word) mul16u::a#5 ← phi( mul16u::@2/(word) mul16u::a#4 mul16u::@7/(word) mul16u::a#7 ) + (word~) mul16u::$5 ← (word) mul16u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul16u::a#0 ← (word~) mul16u::$5 + (dword~) mul16u::$6 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) mul16u::mb#1 ← (dword~) mul16u::$6 to:mul16u::@1 mul16u::@7: scope:[mul16u] from mul16u::@2 - (word) mul16u::a#7 ? phi( mul16u::@2/(word) mul16u::a#4 ) - (dword) mul16u::mb#3 ? phi( mul16u::@2/(dword) mul16u::mb#4 ) - (dword) mul16u::res#3 ? phi( mul16u::@2/(dword) mul16u::res#5 ) - (dword~) mul16u::$4 ? (dword) mul16u::res#3 + (dword) mul16u::mb#3 - (dword) mul16u::res#1 ? (dword~) mul16u::$4 + (word) mul16u::a#7 ← phi( mul16u::@2/(word) mul16u::a#4 ) + (dword) mul16u::mb#3 ← phi( mul16u::@2/(dword) mul16u::mb#4 ) + (dword) mul16u::res#3 ← phi( mul16u::@2/(dword) mul16u::res#5 ) + (dword~) mul16u::$4 ← (dword) mul16u::res#3 + (dword) mul16u::mb#3 + (dword) mul16u::res#1 ← (dword~) mul16u::$4 to:mul16u::@4 mul16u::@return: scope:[mul16u] from mul16u::@3 - (dword) mul16u::return#4 ? phi( mul16u::@3/(dword) mul16u::return#0 ) - (dword) mul16u::return#1 ? (dword) mul16u::return#4 + (dword) mul16u::return#4 ← phi( mul16u::@3/(dword) mul16u::return#0 ) + (dword) mul16u::return#1 ← (dword) mul16u::return#4 return to:@return mul16s: scope:[mul16s] from sin16s_gen2::@4 - (signed word) mul16s::b#1 ? phi( sin16s_gen2::@4/(signed word) mul16s::b#0 ) - (signed word) mul16s::a#1 ? phi( sin16s_gen2::@4/(signed word) mul16s::a#0 ) - (word~) mul16s::$0 ? ((word)) (signed word) mul16s::a#1 - (word~) mul16s::$1 ? ((word)) (signed word) mul16s::b#1 - (word) mul16u::a#1 ? (word~) mul16s::$0 - (word) mul16u::b#0 ? (word~) mul16s::$1 + (signed word) mul16s::b#1 ← phi( sin16s_gen2::@4/(signed word) mul16s::b#0 ) + (signed word) mul16s::a#1 ← phi( sin16s_gen2::@4/(signed word) mul16s::a#0 ) + (word~) mul16s::$0 ← ((word)) (signed word) mul16s::a#1 + (word~) mul16s::$1 ← ((word)) (signed word) mul16s::b#1 + (word) mul16u::a#1 ← (word~) mul16s::$0 + (word) mul16u::b#0 ← (word~) mul16s::$1 call mul16u - (dword) mul16u::return#2 ? (dword) mul16u::return#1 + (dword) mul16u::return#2 ← (dword) mul16u::return#1 to:mul16s::@6 mul16s::@6: scope:[mul16s] from mul16s - (signed word) mul16s::b#4 ? phi( mul16s/(signed word) mul16s::b#1 ) - (signed word) mul16s::a#2 ? phi( mul16s/(signed word) mul16s::a#1 ) - (dword) mul16u::return#5 ? phi( mul16s/(dword) mul16u::return#2 ) - (dword~) mul16s::$2 ? (dword) mul16u::return#5 - (dword) mul16s::m#0 ? (dword~) mul16s::$2 - (bool~) mul16s::$3 ? (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16s::$4 ? ! (bool~) mul16s::$3 + (signed word) mul16s::b#4 ← phi( mul16s/(signed word) mul16s::b#1 ) + (signed word) mul16s::a#2 ← phi( mul16s/(signed word) mul16s::a#1 ) + (dword) mul16u::return#5 ← phi( mul16s/(dword) mul16u::return#2 ) + (dword~) mul16s::$2 ← (dword) mul16u::return#5 + (dword) mul16s::m#0 ← (dword~) mul16s::$2 + (bool~) mul16s::$3 ← (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16s::$4 ← ! (bool~) mul16s::$3 if((bool~) mul16s::$4) goto mul16s::@1 to:mul16s::@3 mul16s::@1: scope:[mul16s] from mul16s::@3 mul16s::@6 - (signed word) mul16s::a#4 ? phi( mul16s::@3/(signed word) mul16s::a#5 mul16s::@6/(signed word) mul16s::a#2 ) - (dword) mul16s::m#6 ? phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) - (signed word) mul16s::b#2 ? phi( mul16s::@3/(signed word) mul16s::b#3 mul16s::@6/(signed word) mul16s::b#4 ) - (bool~) mul16s::$5 ? (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16s::$6 ? ! (bool~) mul16s::$5 + (signed word) mul16s::a#4 ← phi( mul16s::@3/(signed word) mul16s::a#5 mul16s::@6/(signed word) mul16s::a#2 ) + (dword) mul16s::m#6 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) + (signed word) mul16s::b#2 ← phi( mul16s::@3/(signed word) mul16s::b#3 mul16s::@6/(signed word) mul16s::b#4 ) + (bool~) mul16s::$5 ← (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16s::$6 ← ! (bool~) mul16s::$5 if((bool~) mul16s::$6) goto mul16s::@2 to:mul16s::@4 mul16s::@3: scope:[mul16s] from mul16s::@6 - (signed word) mul16s::a#5 ? phi( mul16s::@6/(signed word) mul16s::a#2 ) - (signed word) mul16s::b#3 ? phi( mul16s::@6/(signed word) mul16s::b#4 ) - (dword) mul16s::m#3 ? phi( mul16s::@6/(dword) mul16s::m#0 ) - (word~) mul16s::$9 ? > (dword) mul16s::m#3 - (word~) mul16s::$10 ? ((word)) (signed word) mul16s::b#3 - (word~) mul16s::$11 ? (word~) mul16s::$9 - (word~) mul16s::$10 - (word~) mul16s::$16 ? (word~) mul16s::$11 - (dword) mul16s::m#1 ? (dword) mul16s::m#3 hi= (word~) mul16s::$16 + (signed word) mul16s::a#5 ← phi( mul16s::@6/(signed word) mul16s::a#2 ) + (signed word) mul16s::b#3 ← phi( mul16s::@6/(signed word) mul16s::b#4 ) + (dword) mul16s::m#3 ← phi( mul16s::@6/(dword) mul16s::m#0 ) + (word~) mul16s::$9 ← > (dword) mul16s::m#3 + (word~) mul16s::$10 ← ((word)) (signed word) mul16s::b#3 + (word~) mul16s::$11 ← (word~) mul16s::$9 - (word~) mul16s::$10 + (word~) mul16s::$16 ← (word~) mul16s::$11 + (dword) mul16s::m#1 ← (dword) mul16s::m#3 hi= (word~) mul16s::$16 to:mul16s::@1 mul16s::@2: scope:[mul16s] from mul16s::@1 mul16s::@4 - (dword) mul16s::m#4 ? phi( mul16s::@1/(dword) mul16s::m#6 mul16s::@4/(dword) mul16s::m#2 ) - (signed dword~) mul16s::$7 ? ((signed dword)) (dword) mul16s::m#4 - (signed dword) mul16s::return#0 ? (signed dword~) mul16s::$7 + (dword) mul16s::m#4 ← phi( mul16s::@1/(dword) mul16s::m#6 mul16s::@4/(dword) mul16s::m#2 ) + (signed dword~) mul16s::$7 ← ((signed dword)) (dword) mul16s::m#4 + (signed dword) mul16s::return#0 ← (signed dword~) mul16s::$7 to:mul16s::@return mul16s::@4: scope:[mul16s] from mul16s::@1 - (signed word) mul16s::a#3 ? phi( mul16s::@1/(signed word) mul16s::a#4 ) - (dword) mul16s::m#5 ? phi( mul16s::@1/(dword) mul16s::m#6 ) - (word~) mul16s::$13 ? > (dword) mul16s::m#5 - (word~) mul16s::$14 ? ((word)) (signed word) mul16s::a#3 - (word~) mul16s::$15 ? (word~) mul16s::$13 - (word~) mul16s::$14 - (word~) mul16s::$17 ? (word~) mul16s::$15 - (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 + (signed word) mul16s::a#3 ← phi( mul16s::@1/(signed word) mul16s::a#4 ) + (dword) mul16s::m#5 ← phi( mul16s::@1/(dword) mul16s::m#6 ) + (word~) mul16s::$13 ← > (dword) mul16s::m#5 + (word~) mul16s::$14 ← ((word)) (signed word) mul16s::a#3 + (word~) mul16s::$15 ← (word~) mul16s::$13 - (word~) mul16s::$14 + (word~) mul16s::$17 ← (word~) mul16s::$15 + (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 to:mul16s::@2 mul16s::@return: scope:[mul16s] from mul16s::@2 - (signed dword) mul16s::return#3 ? phi( mul16s::@2/(signed dword) mul16s::return#0 ) - (signed dword) mul16s::return#1 ? (signed dword) mul16s::return#3 + (signed dword) mul16s::return#3 ← phi( mul16s::@2/(signed dword) mul16s::return#0 ) + (signed dword) mul16s::return#1 ← (signed dword) mul16s::return#3 return to:@return @17: scope:[] from @10 - (word) rem16u#32 ? phi( @10/(word) rem16u#34 ) - (dword) PI2_u4f28#0 ? (dword/signed dword) $6487ed51 - (dword) PI_u4f28#0 ? (dword/signed dword) $3243f6a9 - (dword) PI_HALF_u4f28#0 ? (dword/signed dword) $1921fb54 - (word) PI2_u4f12#0 ? (word/signed word/dword/signed dword) $6488 - (word) PI_u4f12#0 ? (word/signed word/dword/signed dword) $3244 - (word) PI_HALF_u4f12#0 ? (word/signed word/dword/signed dword) $1922 + (word) rem16u#32 ← phi( @10/(word) rem16u#34 ) + (dword) PI2_u4f28#0 ← (dword/signed dword) $6487ed51 + (dword) PI_u4f28#0 ← (dword/signed dword) $3243f6a9 + (dword) PI_HALF_u4f28#0 ← (dword/signed dword) $1921fb54 + (word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) $6488 + (word) PI_u4f12#0 ← (word/signed word/dword/signed dword) $3244 + (word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) $1922 to:@25 sin16s_gen2: scope:[sin16s_gen2] from main::@2 - (signed word*) sin16s_gen2::sintab#6 ? phi( main::@2/(signed word*) sin16s_gen2::sintab#1 ) - (word) rem16u#21 ? phi( main::@2/(word) rem16u#23 ) - (word) sin16s_gen2::wavelength#1 ? phi( main::@2/(word) sin16s_gen2::wavelength#0 ) - (signed word) sin16s_gen2::min#1 ? phi( main::@2/(signed word) sin16s_gen2::min#0 ) - (signed word) sin16s_gen2::max#1 ? phi( main::@2/(signed word) sin16s_gen2::max#0 ) - (signed word~) sin16s_gen2::$0 ? (signed word) sin16s_gen2::max#1 - (signed word) sin16s_gen2::min#1 - (signed word) sin16s_gen2::ampl#0 ? (signed word~) sin16s_gen2::$0 - (signed word~) sin16s_gen2::$1 ? (signed word) sin16s_gen2::ampl#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed word~) sin16s_gen2::$2 ? (signed word) sin16s_gen2::min#1 + (signed word~) sin16s_gen2::$1 - (signed word) sin16s_gen2::offs#0 ? (signed word~) sin16s_gen2::$2 - (dword) div32u16u::dividend#0 ? (dword) PI2_u4f28#0 - (word) div32u16u::divisor#0 ? (word) sin16s_gen2::wavelength#1 + (signed word*) sin16s_gen2::sintab#6 ← phi( main::@2/(signed word*) sin16s_gen2::sintab#1 ) + (word) rem16u#21 ← phi( main::@2/(word) rem16u#23 ) + (word) sin16s_gen2::wavelength#1 ← phi( main::@2/(word) sin16s_gen2::wavelength#0 ) + (signed word) sin16s_gen2::min#1 ← phi( main::@2/(signed word) sin16s_gen2::min#0 ) + (signed word) sin16s_gen2::max#1 ← phi( main::@2/(signed word) sin16s_gen2::max#0 ) + (signed word~) sin16s_gen2::$0 ← (signed word) sin16s_gen2::max#1 - (signed word) sin16s_gen2::min#1 + (signed word) sin16s_gen2::ampl#0 ← (signed word~) sin16s_gen2::$0 + (signed word~) sin16s_gen2::$1 ← (signed word) sin16s_gen2::ampl#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (signed word~) sin16s_gen2::$2 ← (signed word) sin16s_gen2::min#1 + (signed word~) sin16s_gen2::$1 + (signed word) sin16s_gen2::offs#0 ← (signed word~) sin16s_gen2::$2 + (dword) div32u16u::dividend#0 ← (dword) PI2_u4f28#0 + (word) div32u16u::divisor#0 ← (word) sin16s_gen2::wavelength#1 call div32u16u - (dword) div32u16u::return#2 ? (dword) div32u16u::return#1 + (dword) div32u16u::return#2 ← (dword) div32u16u::return#1 to:sin16s_gen2::@3 sin16s_gen2::@3: scope:[sin16s_gen2] from sin16s_gen2 - (word) sin16s_gen2::wavelength#5 ? phi( sin16s_gen2/(word) sin16s_gen2::wavelength#1 ) - (signed word*) sin16s_gen2::sintab#5 ? phi( sin16s_gen2/(signed word*) sin16s_gen2::sintab#6 ) - (signed word) sin16s_gen2::offs#4 ? phi( sin16s_gen2/(signed word) sin16s_gen2::offs#0 ) - (signed word) sin16s_gen2::ampl#3 ? phi( sin16s_gen2/(signed word) sin16s_gen2::ampl#0 ) - (word) rem16u#15 ? phi( sin16s_gen2/(word) rem16u#5 ) - (dword) div32u16u::return#4 ? phi( sin16s_gen2/(dword) div32u16u::return#2 ) - (dword~) sin16s_gen2::$3 ? (dword) div32u16u::return#4 - (word) rem16u#6 ? (word) rem16u#15 - (dword) sin16s_gen2::step#0 ? (dword~) sin16s_gen2::$3 - (dword) sin16s_gen2::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin16s_gen2::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen2::wavelength#5 ← phi( sin16s_gen2/(word) sin16s_gen2::wavelength#1 ) + (signed word*) sin16s_gen2::sintab#5 ← phi( sin16s_gen2/(signed word*) sin16s_gen2::sintab#6 ) + (signed word) sin16s_gen2::offs#4 ← phi( sin16s_gen2/(signed word) sin16s_gen2::offs#0 ) + (signed word) sin16s_gen2::ampl#3 ← phi( sin16s_gen2/(signed word) sin16s_gen2::ampl#0 ) + (word) rem16u#15 ← phi( sin16s_gen2/(word) rem16u#5 ) + (dword) div32u16u::return#4 ← phi( sin16s_gen2/(dword) div32u16u::return#2 ) + (dword~) sin16s_gen2::$3 ← (dword) div32u16u::return#4 + (word) rem16u#6 ← (word) rem16u#15 + (dword) sin16s_gen2::step#0 ← (dword~) sin16s_gen2::$3 + (dword) sin16s_gen2::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen2::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin16s_gen2::@1 sin16s_gen2::@1: scope:[sin16s_gen2] from sin16s_gen2::@3 sin16s_gen2::@5 - (word) rem16u#29 ? phi( sin16s_gen2::@3/(word) rem16u#6 sin16s_gen2::@5/(word) rem16u#22 ) - (word) sin16s_gen2::wavelength#4 ? phi( sin16s_gen2::@3/(word) sin16s_gen2::wavelength#5 sin16s_gen2::@5/(word) sin16s_gen2::wavelength#2 ) - (word) sin16s_gen2::i#4 ? phi( sin16s_gen2::@3/(word) sin16s_gen2::i#0 sin16s_gen2::@5/(word) sin16s_gen2::i#1 ) - (dword) sin16s_gen2::step#3 ? phi( sin16s_gen2::@3/(dword) sin16s_gen2::step#0 sin16s_gen2::@5/(dword) sin16s_gen2::step#1 ) - (signed word*) sin16s_gen2::sintab#4 ? phi( sin16s_gen2::@3/(signed word*) sin16s_gen2::sintab#5 sin16s_gen2::@5/(signed word*) sin16s_gen2::sintab#0 ) - (signed word) sin16s_gen2::offs#3 ? phi( sin16s_gen2::@3/(signed word) sin16s_gen2::offs#4 sin16s_gen2::@5/(signed word) sin16s_gen2::offs#1 ) - (signed word) sin16s_gen2::ampl#2 ? phi( sin16s_gen2::@3/(signed word) sin16s_gen2::ampl#3 sin16s_gen2::@5/(signed word) sin16s_gen2::ampl#4 ) - (dword) sin16s_gen2::x#2 ? phi( sin16s_gen2::@3/(dword) sin16s_gen2::x#0 sin16s_gen2::@5/(dword) sin16s_gen2::x#1 ) - (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 + (word) rem16u#29 ← phi( sin16s_gen2::@3/(word) rem16u#6 sin16s_gen2::@5/(word) rem16u#22 ) + (word) sin16s_gen2::wavelength#4 ← phi( sin16s_gen2::@3/(word) sin16s_gen2::wavelength#5 sin16s_gen2::@5/(word) sin16s_gen2::wavelength#2 ) + (word) sin16s_gen2::i#4 ← phi( sin16s_gen2::@3/(word) sin16s_gen2::i#0 sin16s_gen2::@5/(word) sin16s_gen2::i#1 ) + (dword) sin16s_gen2::step#3 ← phi( sin16s_gen2::@3/(dword) sin16s_gen2::step#0 sin16s_gen2::@5/(dword) sin16s_gen2::step#1 ) + (signed word*) sin16s_gen2::sintab#4 ← phi( sin16s_gen2::@3/(signed word*) sin16s_gen2::sintab#5 sin16s_gen2::@5/(signed word*) sin16s_gen2::sintab#0 ) + (signed word) sin16s_gen2::offs#3 ← phi( sin16s_gen2::@3/(signed word) sin16s_gen2::offs#4 sin16s_gen2::@5/(signed word) sin16s_gen2::offs#1 ) + (signed word) sin16s_gen2::ampl#2 ← phi( sin16s_gen2::@3/(signed word) sin16s_gen2::ampl#3 sin16s_gen2::@5/(signed word) sin16s_gen2::ampl#4 ) + (dword) sin16s_gen2::x#2 ← phi( sin16s_gen2::@3/(dword) sin16s_gen2::x#0 sin16s_gen2::@5/(dword) sin16s_gen2::x#1 ) + (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 call sin16s - (signed word) sin16s::return#0 ? (signed word) sin16s::return#2 + (signed word) sin16s::return#0 ← (signed word) sin16s::return#2 to:sin16s_gen2::@4 sin16s_gen2::@4: scope:[sin16s_gen2] from sin16s_gen2::@1 - (word) rem16u#26 ? phi( sin16s_gen2::@1/(word) rem16u#29 ) - (word) sin16s_gen2::wavelength#3 ? phi( sin16s_gen2::@1/(word) sin16s_gen2::wavelength#4 ) - (word) sin16s_gen2::i#3 ? phi( sin16s_gen2::@1/(word) sin16s_gen2::i#4 ) - (dword) sin16s_gen2::step#2 ? phi( sin16s_gen2::@1/(dword) sin16s_gen2::step#3 ) - (dword) sin16s_gen2::x#4 ? phi( sin16s_gen2::@1/(dword) sin16s_gen2::x#2 ) - (signed word*) sin16s_gen2::sintab#3 ? phi( sin16s_gen2::@1/(signed word*) sin16s_gen2::sintab#4 ) - (signed word) sin16s_gen2::offs#2 ? phi( sin16s_gen2::@1/(signed word) sin16s_gen2::offs#3 ) - (signed word) sin16s_gen2::ampl#1 ? phi( sin16s_gen2::@1/(signed word) sin16s_gen2::ampl#2 ) - (signed word) sin16s::return#3 ? phi( sin16s_gen2::@1/(signed word) sin16s::return#0 ) - (signed word~) sin16s_gen2::$4 ? (signed word) sin16s::return#3 - (signed word) mul16s::a#0 ? (signed word~) sin16s_gen2::$4 - (signed word) mul16s::b#0 ? (signed word) sin16s_gen2::ampl#1 + (word) rem16u#26 ← phi( sin16s_gen2::@1/(word) rem16u#29 ) + (word) sin16s_gen2::wavelength#3 ← phi( sin16s_gen2::@1/(word) sin16s_gen2::wavelength#4 ) + (word) sin16s_gen2::i#3 ← phi( sin16s_gen2::@1/(word) sin16s_gen2::i#4 ) + (dword) sin16s_gen2::step#2 ← phi( sin16s_gen2::@1/(dword) sin16s_gen2::step#3 ) + (dword) sin16s_gen2::x#4 ← phi( sin16s_gen2::@1/(dword) sin16s_gen2::x#2 ) + (signed word*) sin16s_gen2::sintab#3 ← phi( sin16s_gen2::@1/(signed word*) sin16s_gen2::sintab#4 ) + (signed word) sin16s_gen2::offs#2 ← phi( sin16s_gen2::@1/(signed word) sin16s_gen2::offs#3 ) + (signed word) sin16s_gen2::ampl#1 ← phi( sin16s_gen2::@1/(signed word) sin16s_gen2::ampl#2 ) + (signed word) sin16s::return#3 ← phi( sin16s_gen2::@1/(signed word) sin16s::return#0 ) + (signed word~) sin16s_gen2::$4 ← (signed word) sin16s::return#3 + (signed word) mul16s::a#0 ← (signed word~) sin16s_gen2::$4 + (signed word) mul16s::b#0 ← (signed word) sin16s_gen2::ampl#1 call mul16s - (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#1 + (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#1 to:sin16s_gen2::@5 sin16s_gen2::@5: scope:[sin16s_gen2] from sin16s_gen2::@4 - (signed word) sin16s_gen2::ampl#4 ? phi( sin16s_gen2::@4/(signed word) sin16s_gen2::ampl#1 ) - (word) rem16u#22 ? phi( sin16s_gen2::@4/(word) rem16u#26 ) - (word) sin16s_gen2::wavelength#2 ? phi( sin16s_gen2::@4/(word) sin16s_gen2::wavelength#3 ) - (word) sin16s_gen2::i#2 ? phi( sin16s_gen2::@4/(word) sin16s_gen2::i#3 ) - (dword) sin16s_gen2::step#1 ? phi( sin16s_gen2::@4/(dword) sin16s_gen2::step#2 ) - (dword) sin16s_gen2::x#3 ? phi( sin16s_gen2::@4/(dword) sin16s_gen2::x#4 ) - (signed word*) sin16s_gen2::sintab#2 ? phi( sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#3 ) - (signed word) sin16s_gen2::offs#1 ? phi( sin16s_gen2::@4/(signed word) sin16s_gen2::offs#2 ) - (signed dword) mul16s::return#4 ? phi( sin16s_gen2::@4/(signed dword) mul16s::return#2 ) - (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#4 - (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 - (signed word~) sin16s_gen2::$7 ? ((signed word)) (word~) sin16s_gen2::$6 - (signed word~) sin16s_gen2::$8 ? (signed word) sin16s_gen2::offs#1 + (signed word~) sin16s_gen2::$7 - *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 - (signed word*~) sin16s_gen2::$9 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) sin16s_gen2::sintab#0 ? (signed word*~) sin16s_gen2::$9 - (dword~) sin16s_gen2::$10 ? (dword) sin16s_gen2::x#3 + (dword) sin16s_gen2::step#1 - (dword) sin16s_gen2::x#1 ? (dword~) sin16s_gen2::$10 - (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 - (bool~) sin16s_gen2::$11 ? (word) sin16s_gen2::i#1 < (word) sin16s_gen2::wavelength#2 + (signed word) sin16s_gen2::ampl#4 ← phi( sin16s_gen2::@4/(signed word) sin16s_gen2::ampl#1 ) + (word) rem16u#22 ← phi( sin16s_gen2::@4/(word) rem16u#26 ) + (word) sin16s_gen2::wavelength#2 ← phi( sin16s_gen2::@4/(word) sin16s_gen2::wavelength#3 ) + (word) sin16s_gen2::i#2 ← phi( sin16s_gen2::@4/(word) sin16s_gen2::i#3 ) + (dword) sin16s_gen2::step#1 ← phi( sin16s_gen2::@4/(dword) sin16s_gen2::step#2 ) + (dword) sin16s_gen2::x#3 ← phi( sin16s_gen2::@4/(dword) sin16s_gen2::x#4 ) + (signed word*) sin16s_gen2::sintab#2 ← phi( sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#3 ) + (signed word) sin16s_gen2::offs#1 ← phi( sin16s_gen2::@4/(signed word) sin16s_gen2::offs#2 ) + (signed dword) mul16s::return#4 ← phi( sin16s_gen2::@4/(signed dword) mul16s::return#2 ) + (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#4 + (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 + (signed word~) sin16s_gen2::$7 ← ((signed word)) (word~) sin16s_gen2::$6 + (signed word~) sin16s_gen2::$8 ← (signed word) sin16s_gen2::offs#1 + (signed word~) sin16s_gen2::$7 + *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 + (signed word*~) sin16s_gen2::$9 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) sin16s_gen2::sintab#0 ← (signed word*~) sin16s_gen2::$9 + (dword~) sin16s_gen2::$10 ← (dword) sin16s_gen2::x#3 + (dword) sin16s_gen2::step#1 + (dword) sin16s_gen2::x#1 ← (dword~) sin16s_gen2::$10 + (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 + (bool~) sin16s_gen2::$11 ← (word) sin16s_gen2::i#1 < (word) sin16s_gen2::wavelength#2 if((bool~) sin16s_gen2::$11) goto sin16s_gen2::@1 to:sin16s_gen2::@return sin16s_gen2::@return: scope:[sin16s_gen2] from sin16s_gen2::@5 - (word) rem16u#16 ? phi( sin16s_gen2::@5/(word) rem16u#22 ) - (word) rem16u#7 ? (word) rem16u#16 + (word) rem16u#16 ← phi( sin16s_gen2::@5/(word) rem16u#22 ) + (word) rem16u#7 ← (word) rem16u#16 return to:@return sin16s: scope:[sin16s] from sin16s_gen2::@1 - (dword) sin16s::x#3 ? phi( sin16s_gen2::@1/(dword) sin16s::x#0 ) - (byte) sin16s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 - (bool~) sin16s::$1 ? ! (bool~) sin16s::$0 + (dword) sin16s::x#3 ← phi( sin16s_gen2::@1/(dword) sin16s::x#0 ) + (byte) sin16s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 + (bool~) sin16s::$1 ← ! (bool~) sin16s::$0 if((bool~) sin16s::$1) goto sin16s::@1 to:sin16s::@4 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - (byte) sin16s::isUpper#8 ? phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) - (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) - (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 - (bool~) sin16s::$3 ? ! (bool~) sin16s::$2 + (byte) sin16s::isUpper#8 ← phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) + (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) + (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 + (bool~) sin16s::$3 ← ! (bool~) sin16s::$2 if((bool~) sin16s::$3) goto sin16s::@2 to:sin16s::@5 sin16s::@4: scope:[sin16s] from sin16s - (dword) sin16s::x#5 ? phi( sin16s/(dword) sin16s::x#3 ) - (dword~) sin16s::$18 ? (dword) sin16s::x#5 - (dword) PI_u4f28#0 - (dword) sin16s::x#1 ? (dword~) sin16s::$18 - (byte) sin16s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) sin16s::x#5 ← phi( sin16s/(dword) sin16s::x#3 ) + (dword~) sin16s::$18 ← (dword) sin16s::x#5 - (dword) PI_u4f28#0 + (dword) sin16s::x#1 ← (dword~) sin16s::$18 + (byte) sin16s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin16s::@1 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - (byte) sin16s::isUpper#7 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) - (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) sin16s::$5 ? > (dword~) sin16s::$4 - (word) sin16s::x1#0 ? (word~) sin16s::$5 - (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 - (byte) mulu16_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#7 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) + (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) sin16s::$5 ← > (dword~) sin16s::$4 + (word) sin16s::x1#0 ← (word~) sin16s::$5 + (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 + (byte) mulu16_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#6 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@2 - (byte) sin16s::isUpper#6 ? phi( sin16s::@2/(byte) sin16s::isUpper#7 ) - (word) sin16s::x1#1 ? phi( sin16s::@2/(word) sin16s::x1#0 ) - (word) mulu16_sel::return#7 ? phi( sin16s::@2/(word) mulu16_sel::return#0 ) - (word~) sin16s::$6 ? (word) mulu16_sel::return#7 - (word) sin16s::x2#0 ? (word~) sin16s::$6 - (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - (word) mulu16_sel::v2#1 ? (word) sin16s::x1#1 - (byte) mulu16_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#6 ← phi( sin16s::@2/(byte) sin16s::isUpper#7 ) + (word) sin16s::x1#1 ← phi( sin16s::@2/(word) sin16s::x1#0 ) + (word) mulu16_sel::return#7 ← phi( sin16s::@2/(word) mulu16_sel::return#0 ) + (word~) sin16s::$6 ← (word) mulu16_sel::return#7 + (word) sin16s::x2#0 ← (word~) sin16s::$6 + (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + (word) mulu16_sel::v2#1 ← (word) sin16s::x1#1 + (byte) mulu16_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#6 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - (byte) sin16s::isUpper#5 ? phi( sin16s::@8/(byte) sin16s::isUpper#6 ) - (word) sin16s::x1#4 ? phi( sin16s::@8/(word) sin16s::x1#1 ) - (word) mulu16_sel::return#8 ? phi( sin16s::@8/(word) mulu16_sel::return#1 ) - (word~) sin16s::$7 ? (word) mulu16_sel::return#8 - (word) sin16s::x3#0 ? (word~) sin16s::$7 - (word/signed word/dword/signed dword~) sin16s::$8 ? (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 - (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 - (word) mulu16_sel::v2#2 ? (word/signed word/dword/signed dword~) sin16s::$8 - (byte) mulu16_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#5 ← phi( sin16s::@8/(byte) sin16s::isUpper#6 ) + (word) sin16s::x1#4 ← phi( sin16s::@8/(word) sin16s::x1#1 ) + (word) mulu16_sel::return#8 ← phi( sin16s::@8/(word) mulu16_sel::return#1 ) + (word~) sin16s::$7 ← (word) mulu16_sel::return#8 + (word) sin16s::x3#0 ← (word~) sin16s::$7 + (word/signed word/dword/signed dword~) sin16s::$8 ← (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 + (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 + (word) mulu16_sel::v2#2 ← (word/signed word/dword/signed dword~) sin16s::$8 + (byte) mulu16_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#6 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - (byte) sin16s::isUpper#4 ? phi( sin16s::@9/(byte) sin16s::isUpper#5 ) - (word) sin16s::x3#1 ? phi( sin16s::@9/(word) sin16s::x3#0 ) - (word) sin16s::x1#2 ? phi( sin16s::@9/(word) sin16s::x1#4 ) - (word) mulu16_sel::return#9 ? phi( sin16s::@9/(word) mulu16_sel::return#2 ) - (word~) sin16s::$9 ? (word) mulu16_sel::return#9 - (word) sin16s::x3_6#0 ? (word~) sin16s::$9 - (word~) sin16s::$10 ? (word) sin16s::x1#2 - (word) sin16s::x3_6#0 - (word) sin16s::usinx#0 ? (word~) sin16s::$10 - (word) mulu16_sel::v1#3 ? (word) sin16s::x3#1 - (word) mulu16_sel::v2#3 ? (word) sin16s::x1#2 - (byte) mulu16_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#4 ← phi( sin16s::@9/(byte) sin16s::isUpper#5 ) + (word) sin16s::x3#1 ← phi( sin16s::@9/(word) sin16s::x3#0 ) + (word) sin16s::x1#2 ← phi( sin16s::@9/(word) sin16s::x1#4 ) + (word) mulu16_sel::return#9 ← phi( sin16s::@9/(word) mulu16_sel::return#2 ) + (word~) sin16s::$9 ← (word) mulu16_sel::return#9 + (word) sin16s::x3_6#0 ← (word~) sin16s::$9 + (word~) sin16s::$10 ← (word) sin16s::x1#2 - (word) sin16s::x3_6#0 + (word) sin16s::usinx#0 ← (word~) sin16s::$10 + (word) mulu16_sel::v1#3 ← (word) sin16s::x3#1 + (word) mulu16_sel::v2#3 ← (word) sin16s::x1#2 + (byte) mulu16_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#3 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#3 ← (word) mulu16_sel::return#6 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - (byte) sin16s::isUpper#3 ? phi( sin16s::@10/(byte) sin16s::isUpper#4 ) - (word) sin16s::usinx#4 ? phi( sin16s::@10/(word) sin16s::usinx#0 ) - (word) sin16s::x1#3 ? phi( sin16s::@10/(word) sin16s::x1#2 ) - (word) mulu16_sel::return#10 ? phi( sin16s::@10/(word) mulu16_sel::return#3 ) - (word~) sin16s::$11 ? (word) mulu16_sel::return#10 - (word) sin16s::x4#0 ? (word~) sin16s::$11 - (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - (word) mulu16_sel::v2#4 ? (word) sin16s::x1#3 - (byte) mulu16_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#3 ← phi( sin16s::@10/(byte) sin16s::isUpper#4 ) + (word) sin16s::usinx#4 ← phi( sin16s::@10/(word) sin16s::usinx#0 ) + (word) sin16s::x1#3 ← phi( sin16s::@10/(word) sin16s::x1#2 ) + (word) mulu16_sel::return#10 ← phi( sin16s::@10/(word) mulu16_sel::return#3 ) + (word~) sin16s::$11 ← (word) mulu16_sel::return#10 + (word) sin16s::x4#0 ← (word~) sin16s::$11 + (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + (word) mulu16_sel::v2#4 ← (word) sin16s::x1#3 + (byte) mulu16_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#4 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#4 ← (word) mulu16_sel::return#6 to:sin16s::@12 sin16s::@12: scope:[sin16s] from sin16s::@11 - (byte) sin16s::isUpper#2 ? phi( sin16s::@11/(byte) sin16s::isUpper#3 ) - (word) sin16s::usinx#2 ? phi( sin16s::@11/(word) sin16s::usinx#4 ) - (word) mulu16_sel::return#11 ? phi( sin16s::@11/(word) mulu16_sel::return#4 ) - (word~) sin16s::$12 ? (word) mulu16_sel::return#11 - (word) sin16s::x5#0 ? (word~) sin16s::$12 - (word~) sin16s::$13 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) sin16s::x5_128#0 ? (word~) sin16s::$13 - (word~) sin16s::$14 ? (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 - (word) sin16s::usinx#1 ? (word~) sin16s::$14 - (signed word~) sin16s::$15 ? ((signed word)) (word) sin16s::usinx#1 - (signed word) sin16s::sinx#0 ? (signed word~) sin16s::$15 - (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$17 ? ! (bool~) sin16s::$16 + (byte) sin16s::isUpper#2 ← phi( sin16s::@11/(byte) sin16s::isUpper#3 ) + (word) sin16s::usinx#2 ← phi( sin16s::@11/(word) sin16s::usinx#4 ) + (word) mulu16_sel::return#11 ← phi( sin16s::@11/(word) mulu16_sel::return#4 ) + (word~) sin16s::$12 ← (word) mulu16_sel::return#11 + (word) sin16s::x5#0 ← (word~) sin16s::$12 + (word~) sin16s::$13 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) sin16s::x5_128#0 ← (word~) sin16s::$13 + (word~) sin16s::$14 ← (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 + (word) sin16s::usinx#1 ← (word~) sin16s::$14 + (signed word~) sin16s::$15 ← ((signed word)) (word) sin16s::usinx#1 + (signed word) sin16s::sinx#0 ← (signed word~) sin16s::$15 + (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$17 ← ! (bool~) sin16s::$16 if((bool~) sin16s::$17) goto sin16s::@3 to:sin16s::@6 sin16s::@5: scope:[sin16s] from sin16s::@1 - (byte) sin16s::isUpper#9 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 ) - (dword) sin16s::x#7 ? phi( sin16s::@1/(dword) sin16s::x#4 ) - (dword~) sin16s::$19 ? (dword) PI_u4f28#0 - (dword) sin16s::x#7 - (dword) sin16s::x#2 ? (dword~) sin16s::$19 + (byte) sin16s::isUpper#9 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 ) + (dword) sin16s::x#7 ← phi( sin16s::@1/(dword) sin16s::x#4 ) + (dword~) sin16s::$19 ← (dword) PI_u4f28#0 - (dword) sin16s::x#7 + (dword) sin16s::x#2 ← (dword~) sin16s::$19 to:sin16s::@2 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - (signed word) sin16s::sinx#2 ? phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) - (signed word) sin16s::return#1 ? (signed word) sin16s::sinx#2 + (signed word) sin16s::sinx#2 ← phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) + (signed word) sin16s::return#1 ← (signed word) sin16s::sinx#2 to:sin16s::@return sin16s::@6: scope:[sin16s] from sin16s::@12 - (word) sin16s::usinx#3 ? phi( sin16s::@12/(word) sin16s::usinx#1 ) - (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#3 - (signed word~) sin16s::$21 ? - (signed word~) sin16s::$20 - (signed word) sin16s::sinx#1 ? (signed word~) sin16s::$21 + (word) sin16s::usinx#3 ← phi( sin16s::@12/(word) sin16s::usinx#1 ) + (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#3 + (signed word~) sin16s::$21 ← - (signed word~) sin16s::$20 + (signed word) sin16s::sinx#1 ← (signed word~) sin16s::$21 to:sin16s::@3 sin16s::@return: scope:[sin16s] from sin16s::@3 - (signed word) sin16s::return#4 ? phi( sin16s::@3/(signed word) sin16s::return#1 ) - (signed word) sin16s::return#2 ? (signed word) sin16s::return#4 + (signed word) sin16s::return#4 ← phi( sin16s::@3/(signed word) sin16s::return#1 ) + (signed word) sin16s::return#2 ← (signed word) sin16s::return#4 return to:@return mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@11 sin16s::@2 sin16s::@8 sin16s::@9 - (byte) mulu16_sel::select#6 ? phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) - (word) mulu16_sel::v2#5 ? phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) - (word) mulu16_sel::v1#5 ? phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) - (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 - (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + (byte) mulu16_sel::select#6 ← phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) + (word) mulu16_sel::v2#5 ← phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) + (word) mulu16_sel::v1#5 ← phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) + (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 + (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 call mul16u - (dword) mul16u::return#3 ? (dword) mul16u::return#1 + (dword) mul16u::return#3 ← (dword) mul16u::return#1 to:mulu16_sel::@2 mulu16_sel::@2: scope:[mulu16_sel] from mulu16_sel - (byte) mulu16_sel::select#5 ? phi( mulu16_sel/(byte) mulu16_sel::select#6 ) - (dword) mul16u::return#6 ? phi( mulu16_sel/(dword) mul16u::return#3 ) - (dword~) mulu16_sel::$0 ? (dword) mul16u::return#6 - (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - (word~) mulu16_sel::$2 ? > (dword~) mulu16_sel::$1 - (word) mulu16_sel::return#5 ? (word~) mulu16_sel::$2 + (byte) mulu16_sel::select#5 ← phi( mulu16_sel/(byte) mulu16_sel::select#6 ) + (dword) mul16u::return#6 ← phi( mulu16_sel/(dword) mul16u::return#3 ) + (dword~) mulu16_sel::$0 ← (dword) mul16u::return#6 + (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + (word~) mulu16_sel::$2 ← > (dword~) mulu16_sel::$1 + (word) mulu16_sel::return#5 ← (word~) mulu16_sel::$2 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@2 - (word) mulu16_sel::return#12 ? phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) - (word) mulu16_sel::return#6 ? (word) mulu16_sel::return#12 + (word) mulu16_sel::return#12 ← phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) + (word) mulu16_sel::return#6 ← (word) mulu16_sel::return#12 return to:@return fill: scope:[fill] from main::@3 main::@4 - (byte) fill::val#3 ? phi( main::@3/(byte) fill::val#0 main::@4/(byte) fill::val#1 ) - (word) fill::size#2 ? phi( main::@3/(word) fill::size#0 main::@4/(word) fill::size#1 ) - (byte*) fill::start#2 ? phi( main::@3/(byte*) fill::start#0 main::@4/(byte*) fill::start#1 ) - (byte*~) fill::$0 ? (byte*) fill::start#2 + (word) fill::size#2 - (byte*) fill::end#0 ? (byte*~) fill::$0 - (byte*) fill::addr#0 ? (byte*) fill::start#2 + (byte) fill::val#3 ← phi( main::@3/(byte) fill::val#0 main::@4/(byte) fill::val#1 ) + (word) fill::size#2 ← phi( main::@3/(word) fill::size#0 main::@4/(word) fill::size#1 ) + (byte*) fill::start#2 ← phi( main::@3/(byte*) fill::start#0 main::@4/(byte*) fill::start#1 ) + (byte*~) fill::$0 ← (byte*) fill::start#2 + (word) fill::size#2 + (byte*) fill::end#0 ← (byte*~) fill::$0 + (byte*) fill::addr#0 ← (byte*) fill::start#2 to:fill::@1 fill::@1: scope:[fill] from fill fill::@1 - (byte*) fill::end#1 ? phi( fill/(byte*) fill::end#0 fill::@1/(byte*) fill::end#1 ) - (byte*) fill::addr#2 ? phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) - (byte) fill::val#2 ? phi( fill/(byte) fill::val#3 fill::@1/(byte) fill::val#2 ) - *((byte*) fill::addr#2) ? (byte) fill::val#2 - (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 - (bool~) fill::$1 ? (byte*) fill::addr#1 != (byte*) fill::end#1 + (byte*) fill::end#1 ← phi( fill/(byte*) fill::end#0 fill::@1/(byte*) fill::end#1 ) + (byte*) fill::addr#2 ← phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) + (byte) fill::val#2 ← phi( fill/(byte) fill::val#3 fill::@1/(byte) fill::val#2 ) + *((byte*) fill::addr#2) ← (byte) fill::val#2 + (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 + (bool~) fill::$1 ← (byte*) fill::addr#1 != (byte*) fill::end#1 if((bool~) fill::$1) goto fill::@1 to:fill::@return fill::@return: scope:[fill] from fill::@1 return to:@return @25: scope:[] from @17 - (word) rem16u#31 ? phi( @17/(word) rem16u#32 ) - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) LOGO#0 ? ((byte*)) (word/signed word/dword/signed dword) $2000 - (byte/word/signed word/dword/signed dword~) $0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 * (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte/signed word/word/dword/signed dword~) $1 ? (byte/word/signed word/dword/signed dword~) $0 * (byte/signed byte/word/signed word/dword/signed dword) 8 + (word) rem16u#31 ← phi( @17/(word) rem16u#32 ) + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) LOGO#0 ← ((byte*)) (word/signed word/dword/signed dword) $2000 + (byte/word/signed word/dword/signed dword~) $0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 * (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte/signed word/word/dword/signed dword~) $1 ← (byte/word/signed word/dword/signed dword~) $0 * (byte/signed byte/word/signed word/dword/signed dword) 8 kickasm(location (byte*) LOGO#0) {{ .var logoPic = LoadPicture("logo.png", List().add($444444, $808080, $000000, $ffffff)) .for (var y=0; y<6 ; y++) .for (var x=0;x<40; x++) .for(var cp=0; cp<8; cp++) .byte logoPic.getMulticolorByte(x,cp+y*8) }} - (word) XSIN_SIZE#0 ? (word/signed word/dword/signed dword) $200 - (signed word[XSIN_SIZE#0]) xsin#0 ? { fill( XSIN_SIZE#0, 0) } + (word) XSIN_SIZE#0 ← (word/signed word/dword/signed dword) $200 + (signed word[XSIN_SIZE#0]) xsin#0 ← { fill( XSIN_SIZE#0, 0) } to:@26 main: scope:[main] from @28 - (word) xsin_idx#28 ? phi( @28/(word) xsin_idx#16 ) - (word) rem16u#39 ? phi( @28/(word) rem16u#25 ) + (word) xsin_idx#28 ← phi( @28/(word) xsin_idx#16 ) + (word) rem16u#39 ← phi( @28/(word) rem16u#25 ) asm { sei } - *((byte*) BORDERCOL#0) ? (byte) WHITE#0 - *((byte*) BGCOL2#0) ? (byte) DARK_GREY#0 - *((byte*) BGCOL#0) ? *((byte*) BGCOL2#0) - *((byte*) BGCOL3#0) ? (byte) BLACK#0 - (byte*) main::toD0181_screen#0 ? (byte*) SCREEN#0 - (byte*) main::toD0181_gfx#0 ? (byte*) LOGO#0 + *((byte*) BORDERCOL#0) ← (byte) WHITE#0 + *((byte*) BGCOL2#0) ← (byte) DARK_GREY#0 + *((byte*) BGCOL#0) ← *((byte*) BGCOL2#0) + *((byte*) BGCOL3#0) ← (byte) BLACK#0 + (byte*) main::toD0181_screen#0 ← (byte*) SCREEN#0 + (byte*) main::toD0181_gfx#0 ← (byte*) LOGO#0 to:main::toD0181 main::toD0181: scope:[main] from main - (word) xsin_idx#27 ? phi( main/(word) xsin_idx#28 ) - (word) rem16u#38 ? phi( main/(word) rem16u#39 ) - (byte*) main::toD0181_gfx#1 ? phi( main/(byte*) main::toD0181_gfx#0 ) - (byte*) main::toD0181_screen#1 ? phi( main/(byte*) main::toD0181_screen#0 ) - (word) main::toD0181_$0#0 ? ((word)) (byte*) main::toD0181_screen#1 - (word) main::toD0181_$1#0 ? (word) main::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff - (word) main::toD0181_$2#0 ? (word) main::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) main::toD0181_$3#0 ? > (word) main::toD0181_$2#0 - (word) main::toD0181_$4#0 ? ((word)) (byte*) main::toD0181_gfx#1 - (byte) main::toD0181_$5#0 ? > (word) main::toD0181_$4#0 - (byte) main::toD0181_$6#0 ? (byte) main::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) main::toD0181_$7#0 ? (byte) main::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) main::toD0181_$8#0 ? (byte) main::toD0181_$3#0 | (byte) main::toD0181_$7#0 - (byte) main::toD0181_return#0 ? (byte) main::toD0181_$8#0 + (word) xsin_idx#27 ← phi( main/(word) xsin_idx#28 ) + (word) rem16u#38 ← phi( main/(word) rem16u#39 ) + (byte*) main::toD0181_gfx#1 ← phi( main/(byte*) main::toD0181_gfx#0 ) + (byte*) main::toD0181_screen#1 ← phi( main/(byte*) main::toD0181_screen#0 ) + (word) main::toD0181_$0#0 ← ((word)) (byte*) main::toD0181_screen#1 + (word) main::toD0181_$1#0 ← (word) main::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff + (word) main::toD0181_$2#0 ← (word) main::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) main::toD0181_$3#0 ← > (word) main::toD0181_$2#0 + (word) main::toD0181_$4#0 ← ((word)) (byte*) main::toD0181_gfx#1 + (byte) main::toD0181_$5#0 ← > (word) main::toD0181_$4#0 + (byte) main::toD0181_$6#0 ← (byte) main::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) main::toD0181_$7#0 ← (byte) main::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) main::toD0181_$8#0 ← (byte) main::toD0181_$3#0 | (byte) main::toD0181_$7#0 + (byte) main::toD0181_return#0 ← (byte) main::toD0181_$8#0 to:main::toD0181_@return main::toD0181_@return: scope:[main] from main::toD0181 - (word) xsin_idx#26 ? phi( main::toD0181/(word) xsin_idx#27 ) - (word) rem16u#37 ? phi( main::toD0181/(word) rem16u#38 ) - (byte) main::toD0181_return#2 ? phi( main::toD0181/(byte) main::toD0181_return#0 ) - (byte) main::toD0181_return#1 ? (byte) main::toD0181_return#2 + (word) xsin_idx#26 ← phi( main::toD0181/(word) xsin_idx#27 ) + (word) rem16u#37 ← phi( main::toD0181/(word) rem16u#38 ) + (byte) main::toD0181_return#2 ← phi( main::toD0181/(byte) main::toD0181_return#0 ) + (byte) main::toD0181_return#1 ← (byte) main::toD0181_return#2 to:main::@3 main::@3: scope:[main] from main::toD0181_@return - (word) xsin_idx#25 ? phi( main::toD0181_@return/(word) xsin_idx#26 ) - (word) rem16u#35 ? phi( main::toD0181_@return/(word) rem16u#37 ) - (byte) main::toD0181_return#3 ? phi( main::toD0181_@return/(byte) main::toD0181_return#1 ) - (byte~) main::$0 ? (byte) main::toD0181_return#3 - *((byte*) D018#0) ? (byte~) main::$0 - *((byte*) D016#0) ? (byte) VIC_MCM#0 - (byte*) fill::start#0 ? (byte*) SCREEN#0 - (word) fill::size#0 ? (word/signed word/dword/signed dword) $3e8 - (byte) fill::val#0 ? (byte) BLACK#0 + (word) xsin_idx#25 ← phi( main::toD0181_@return/(word) xsin_idx#26 ) + (word) rem16u#35 ← phi( main::toD0181_@return/(word) rem16u#37 ) + (byte) main::toD0181_return#3 ← phi( main::toD0181_@return/(byte) main::toD0181_return#1 ) + (byte~) main::$0 ← (byte) main::toD0181_return#3 + *((byte*) D018#0) ← (byte~) main::$0 + *((byte*) D016#0) ← (byte) VIC_MCM#0 + (byte*) fill::start#0 ← (byte*) SCREEN#0 + (word) fill::size#0 ← (word/signed word/dword/signed dword) $3e8 + (byte) fill::val#0 ← (byte) BLACK#0 call fill to:main::@4 main::@4: scope:[main] from main::@3 - (word) xsin_idx#24 ? phi( main::@3/(word) xsin_idx#25 ) - (word) rem16u#33 ? phi( main::@3/(word) rem16u#35 ) - (byte/word/dword~) main::$2 ? (byte) WHITE#0 | (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) fill::start#1 ? (byte*) COLS#0 - (word) fill::size#1 ? (word/signed word/dword/signed dword) $3e8 - (byte) fill::val#1 ? (byte/word/dword~) main::$2 + (word) xsin_idx#24 ← phi( main::@3/(word) xsin_idx#25 ) + (word) rem16u#33 ← phi( main::@3/(word) rem16u#35 ) + (byte/word/dword~) main::$2 ← (byte) WHITE#0 | (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) fill::start#1 ← (byte*) COLS#0 + (word) fill::size#1 ← (word/signed word/dword/signed dword) $3e8 + (byte) fill::val#1 ← (byte/word/dword~) main::$2 call fill to:main::@5 main::@5: scope:[main] from main::@4 - (word) xsin_idx#23 ? phi( main::@4/(word) xsin_idx#24 ) - (word) rem16u#30 ? phi( main::@4/(word) rem16u#33 ) - (byte) main::ch#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) xsin_idx#23 ← phi( main::@4/(word) xsin_idx#24 ) + (word) rem16u#30 ← phi( main::@4/(word) rem16u#33 ) + (byte) main::ch#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main::@1 main::@5 - (word) xsin_idx#22 ? phi( main::@1/(word) xsin_idx#22 main::@5/(word) xsin_idx#23 ) - (word) rem16u#27 ? phi( main::@1/(word) rem16u#27 main::@5/(word) rem16u#30 ) - (byte) main::ch#2 ? phi( main::@1/(byte) main::ch#1 main::@5/(byte) main::ch#0 ) - *((byte*) SCREEN#0 + (byte) main::ch#2) ? (byte) main::ch#2 - (byte) main::ch#1 ? (byte) main::ch#2 + rangenext(0,$ef) - (bool~) main::$7 ? (byte) main::ch#1 != rangelast(0,$ef) + (word) xsin_idx#22 ← phi( main::@1/(word) xsin_idx#22 main::@5/(word) xsin_idx#23 ) + (word) rem16u#27 ← phi( main::@1/(word) rem16u#27 main::@5/(word) rem16u#30 ) + (byte) main::ch#2 ← phi( main::@1/(byte) main::ch#1 main::@5/(byte) main::ch#0 ) + *((byte*) SCREEN#0 + (byte) main::ch#2) ← (byte) main::ch#2 + (byte) main::ch#1 ← (byte) main::ch#2 + rangenext(0,$ef) + (bool~) main::$7 ← (byte) main::ch#1 != rangelast(0,$ef) if((bool~) main::$7) goto main::@1 to:main::@2 main::@2: scope:[main] from main::@1 - (word) xsin_idx#17 ? phi( main::@1/(word) xsin_idx#22 ) - (word) rem16u#23 ? phi( main::@1/(word) rem16u#27 ) - (signed word/signed dword~) main::$4 ? - (word/signed word/dword/signed dword) $140 - (signed word*) sin16s_gen2::sintab#1 ? (signed word[XSIN_SIZE#0]) xsin#0 - (word) sin16s_gen2::wavelength#0 ? (word) XSIN_SIZE#0 - (signed word) sin16s_gen2::min#0 ? (signed word/signed dword~) main::$4 - (signed word) sin16s_gen2::max#0 ? (word/signed word/dword/signed dword) $140 + (word) xsin_idx#17 ← phi( main::@1/(word) xsin_idx#22 ) + (word) rem16u#23 ← phi( main::@1/(word) rem16u#27 ) + (signed word/signed dword~) main::$4 ← - (word/signed word/dword/signed dword) $140 + (signed word*) sin16s_gen2::sintab#1 ← (signed word[XSIN_SIZE#0]) xsin#0 + (word) sin16s_gen2::wavelength#0 ← (word) XSIN_SIZE#0 + (signed word) sin16s_gen2::min#0 ← (signed word/signed dword~) main::$4 + (signed word) sin16s_gen2::max#0 ← (word/signed word/dword/signed dword) $140 call sin16s_gen2 to:main::@6 main::@6: scope:[main] from main::@2 - (word) xsin_idx#13 ? phi( main::@2/(word) xsin_idx#17 ) - (word) rem16u#17 ? phi( main::@2/(word) rem16u#7 ) - (word) rem16u#8 ? (word) rem16u#17 + (word) xsin_idx#13 ← phi( main::@2/(word) xsin_idx#17 ) + (word) rem16u#17 ← phi( main::@2/(word) rem16u#7 ) + (word) rem16u#8 ← (word) rem16u#17 call loop to:main::@7 main::@7: scope:[main] from main::@6 - (word) rem16u#24 ? phi( main::@6/(word) rem16u#8 ) - (word) xsin_idx#7 ? phi( main::@6/(word) xsin_idx#5 ) - (word) xsin_idx#0 ? (word) xsin_idx#7 + (word) rem16u#24 ← phi( main::@6/(word) rem16u#8 ) + (word) xsin_idx#7 ← phi( main::@6/(word) xsin_idx#5 ) + (word) xsin_idx#0 ← (word) xsin_idx#7 to:main::@return main::@return: scope:[main] from main::@7 - (word) xsin_idx#8 ? phi( main::@7/(word) xsin_idx#0 ) - (word) rem16u#18 ? phi( main::@7/(word) rem16u#24 ) - (word) rem16u#9 ? (word) rem16u#18 - (word) xsin_idx#1 ? (word) xsin_idx#8 + (word) xsin_idx#8 ← phi( main::@7/(word) xsin_idx#0 ) + (word) rem16u#18 ← phi( main::@7/(word) rem16u#24 ) + (word) rem16u#9 ← (word) rem16u#18 + (word) xsin_idx#1 ← (word) xsin_idx#8 return to:@return @26: scope:[] from @25 - (word) rem16u#28 ? phi( @25/(word) rem16u#31 ) - (word) xsin_idx#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#28 ← phi( @25/(word) rem16u#31 ) + (word) xsin_idx#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@28 loop: scope:[loop] from main::@6 - (word) xsin_idx#18 ? phi( main::@6/(word) xsin_idx#13 ) + (word) xsin_idx#18 ← phi( main::@6/(word) xsin_idx#13 ) to:loop::@1 loop::@1: scope:[loop] from loop loop::@11 - (word) xsin_idx#15 ? phi( loop/(word) xsin_idx#18 loop::@11/(word) xsin_idx#19 ) + (word) xsin_idx#15 ← phi( loop/(word) xsin_idx#18 loop::@11/(word) xsin_idx#19 ) if(true) goto loop::@2 to:loop::@return loop::@2: scope:[loop] from loop::@1 - (word) xsin_idx#20 ? phi( loop::@1/(word) xsin_idx#15 ) + (word) xsin_idx#20 ← phi( loop::@1/(word) xsin_idx#15 ) to:loop::@4 loop::@4: scope:[loop] from loop::@2 loop::@5 - (word) xsin_idx#14 ? phi( loop::@2/(word) xsin_idx#20 loop::@5/(word) xsin_idx#21 ) - (bool~) loop::$0 ? *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff + (word) xsin_idx#14 ← phi( loop::@2/(word) xsin_idx#20 loop::@5/(word) xsin_idx#21 ) + (bool~) loop::$0 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff if((bool~) loop::$0) goto loop::@5 to:loop::@6 loop::@5: scope:[loop] from loop::@4 - (word) xsin_idx#21 ? phi( loop::@4/(word) xsin_idx#14 ) + (word) xsin_idx#21 ← phi( loop::@4/(word) xsin_idx#14 ) to:loop::@4 loop::@6: scope:[loop] from loop::@4 - (word) xsin_idx#9 ? phi( loop::@4/(word) xsin_idx#14 ) - *((byte*) BORDERCOL#0) ? ++ *((byte*) BORDERCOL#0) - (signed word*~) loop::$1 ? (signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#9 - (signed word) loop::xpos#0 ? *((signed word*~) loop::$1) - (signed word) render_logo::xpos#0 ? (signed word) loop::xpos#0 + (word) xsin_idx#9 ← phi( loop::@4/(word) xsin_idx#14 ) + *((byte*) BORDERCOL#0) ← ++ *((byte*) BORDERCOL#0) + (signed word*~) loop::$1 ← (signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#9 + (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) + (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 call render_logo to:loop::@15 loop::@15: scope:[loop] from loop::@6 - (word) xsin_idx#10 ? phi( loop::@6/(word) xsin_idx#9 ) - (word) xsin_idx#3 ? (word) xsin_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (word/signed dword/dword~) loop::$3 ? (word) XSIN_SIZE#0 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool~) loop::$4 ? (word) xsin_idx#3 == (word/signed dword/dword~) loop::$3 - (bool~) loop::$5 ? ! (bool~) loop::$4 + (word) xsin_idx#10 ← phi( loop::@6/(word) xsin_idx#9 ) + (word) xsin_idx#3 ← (word) xsin_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (word/signed dword/dword~) loop::$3 ← (word) XSIN_SIZE#0 * (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool~) loop::$4 ← (word) xsin_idx#3 == (word/signed dword/dword~) loop::$3 + (bool~) loop::$5 ← ! (bool~) loop::$4 if((bool~) loop::$5) goto loop::@11 to:loop::@10 loop::@11: scope:[loop] from loop::@10 loop::@15 - (word) xsin_idx#19 ? phi( loop::@10/(word) xsin_idx#4 loop::@15/(word) xsin_idx#3 ) - *((byte*) BORDERCOL#0) ? -- *((byte*) BORDERCOL#0) + (word) xsin_idx#19 ← phi( loop::@10/(word) xsin_idx#4 loop::@15/(word) xsin_idx#3 ) + *((byte*) BORDERCOL#0) ← -- *((byte*) BORDERCOL#0) to:loop::@1 loop::@10: scope:[loop] from loop::@15 - (word) xsin_idx#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) xsin_idx#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:loop::@11 loop::@return: scope:[loop] from loop::@1 - (word) xsin_idx#11 ? phi( loop::@1/(word) xsin_idx#15 ) - (word) xsin_idx#5 ? (word) xsin_idx#11 + (word) xsin_idx#11 ← phi( loop::@1/(word) xsin_idx#15 ) + (word) xsin_idx#5 ← (word) xsin_idx#11 return to:@return render_logo: scope:[render_logo] from loop::@6 - (signed word) render_logo::xpos#1 ? phi( loop::@6/(signed word) render_logo::xpos#0 ) - (byte) render_logo::logo_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) render_logo::screen_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte~) render_logo::$0 ? ((byte)) (signed word) render_logo::xpos#1 - (byte~) render_logo::$1 ? (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) render_logo::$2 ? (byte) VIC_MCM#0 | (byte~) render_logo::$1 - *((byte*) D016#0) ? (byte~) render_logo::$2 - (signed word~) render_logo::$3 ? (signed word) render_logo::xpos#1 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - (signed byte~) render_logo::$4 ? ((signed byte)) (signed word~) render_logo::$3 - (signed byte) render_logo::x_char#0 ? (signed byte~) render_logo::$4 - (byte) render_logo::line#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) render_logo::$5 ? (signed word) render_logo::xpos#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) render_logo::xpos#1 ← phi( loop::@6/(signed word) render_logo::xpos#0 ) + (byte) render_logo::logo_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::screen_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#1 + (byte~) render_logo::$1 ← (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) render_logo::$2 ← (byte) VIC_MCM#0 | (byte~) render_logo::$1 + *((byte*) D016#0) ← (byte~) render_logo::$2 + (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#1 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + (signed byte~) render_logo::$4 ← ((signed byte)) (signed word~) render_logo::$3 + (signed byte) render_logo::x_char#0 ← (signed byte~) render_logo::$4 + (byte) render_logo::line#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) render_logo::$5 ← (signed word) render_logo::xpos#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) render_logo::$5) goto render_logo::@1 to:render_logo::@3 render_logo::@1: scope:[render_logo] from render_logo - (signed byte) render_logo::x_char#1 ? phi( render_logo/(signed byte) render_logo::x_char#0 ) - (signed byte~) render_logo::$17 ? - (signed byte) render_logo::x_char#1 - (byte~) render_logo::$18 ? ((byte)) (signed byte~) render_logo::$17 - (byte) render_logo::logo_idx#1 ? (byte~) render_logo::$18 - (byte) render_logo::screen_idx#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) render_logo::x_char#1 ← phi( render_logo/(signed byte) render_logo::x_char#0 ) + (signed byte~) render_logo::$17 ← - (signed byte) render_logo::x_char#1 + (byte~) render_logo::$18 ← ((byte)) (signed byte~) render_logo::$17 + (byte) render_logo::logo_idx#1 ← (byte~) render_logo::$18 + (byte) render_logo::screen_idx#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@21 render_logo::@3: scope:[render_logo] from render_logo - (signed byte) render_logo::x_char#2 ? phi( render_logo/(signed byte) render_logo::x_char#0 ) - (byte~) render_logo::$6 ? ((byte)) (signed byte) render_logo::x_char#2 - (byte) render_logo::logo_start#0 ? (byte~) render_logo::$6 - (byte) render_logo::screen_idx#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) render_logo::x_char#2 ← phi( render_logo/(signed byte) render_logo::x_char#0 ) + (byte~) render_logo::$6 ← ((byte)) (signed byte) render_logo::x_char#2 + (byte) render_logo::logo_start#0 ← (byte~) render_logo::$6 + (byte) render_logo::screen_idx#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@4 render_logo::@4: scope:[render_logo] from render_logo::@3 render_logo::@8 - (byte) render_logo::logo_start#1 ? phi( render_logo::@3/(byte) render_logo::logo_start#0 render_logo::@8/(byte) render_logo::logo_start#2 ) - (byte) render_logo::screen_idx#7 ? phi( render_logo::@3/(byte) render_logo::screen_idx#2 render_logo::@8/(byte) render_logo::screen_idx#3 ) - (bool~) render_logo::$7 ? (byte) render_logo::screen_idx#7 != (byte) render_logo::logo_start#1 + (byte) render_logo::logo_start#1 ← phi( render_logo::@3/(byte) render_logo::logo_start#0 render_logo::@8/(byte) render_logo::logo_start#2 ) + (byte) render_logo::screen_idx#7 ← phi( render_logo::@3/(byte) render_logo::screen_idx#2 render_logo::@8/(byte) render_logo::screen_idx#3 ) + (bool~) render_logo::$7 ← (byte) render_logo::screen_idx#7 != (byte) render_logo::logo_start#1 if((bool~) render_logo::$7) goto render_logo::@5 to:render_logo::@6 render_logo::@5: scope:[render_logo] from render_logo::@4 - (byte) render_logo::logo_start#4 ? phi( render_logo::@4/(byte) render_logo::logo_start#1 ) - (byte) render_logo::screen_idx#18 ? phi( render_logo::@4/(byte) render_logo::screen_idx#7 ) - (byte) render_logo::line#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::logo_start#4 ← phi( render_logo::@4/(byte) render_logo::logo_start#1 ) + (byte) render_logo::screen_idx#18 ← phi( render_logo::@4/(byte) render_logo::screen_idx#7 ) + (byte) render_logo::line#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@7 render_logo::@6: scope:[render_logo] from render_logo::@4 - (byte) render_logo::screen_idx#19 ? phi( render_logo::@4/(byte) render_logo::screen_idx#7 ) - (byte) render_logo::logo_idx#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::screen_idx#19 ← phi( render_logo::@4/(byte) render_logo::screen_idx#7 ) + (byte) render_logo::logo_idx#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@12 render_logo::@7: scope:[render_logo] from render_logo::@5 render_logo::@7 - (byte) render_logo::logo_start#3 ? phi( render_logo::@5/(byte) render_logo::logo_start#4 render_logo::@7/(byte) render_logo::logo_start#3 ) - (byte) render_logo::screen_idx#8 ? phi( render_logo::@5/(byte) render_logo::screen_idx#18 render_logo::@7/(byte) render_logo::screen_idx#8 ) - (byte) render_logo::line#9 ? phi( render_logo::@5/(byte) render_logo::line#1 render_logo::@7/(byte) render_logo::line#2 ) - (byte/signed word/word/dword/signed dword~) render_logo::$8 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#9 - (byte*~) render_logo::$9 ? (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$8 - *((byte*~) render_logo::$9 + (byte) render_logo::screen_idx#8) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) render_logo::line#2 ? (byte) render_logo::line#9 + rangenext(0,5) - (bool~) render_logo::$10 ? (byte) render_logo::line#2 != rangelast(0,5) + (byte) render_logo::logo_start#3 ← phi( render_logo::@5/(byte) render_logo::logo_start#4 render_logo::@7/(byte) render_logo::logo_start#3 ) + (byte) render_logo::screen_idx#8 ← phi( render_logo::@5/(byte) render_logo::screen_idx#18 render_logo::@7/(byte) render_logo::screen_idx#8 ) + (byte) render_logo::line#9 ← phi( render_logo::@5/(byte) render_logo::line#1 render_logo::@7/(byte) render_logo::line#2 ) + (byte/signed word/word/dword/signed dword~) render_logo::$8 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#9 + (byte*~) render_logo::$9 ← (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$8 + *((byte*~) render_logo::$9 + (byte) render_logo::screen_idx#8) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::line#2 ← (byte) render_logo::line#9 + rangenext(0,5) + (bool~) render_logo::$10 ← (byte) render_logo::line#2 != rangelast(0,5) unroll if((bool~) render_logo::$10) goto render_logo::@7 to:render_logo::@8 render_logo::@8: scope:[render_logo] from render_logo::@7 - (byte) render_logo::logo_start#2 ? phi( render_logo::@7/(byte) render_logo::logo_start#3 ) - (byte) render_logo::screen_idx#9 ? phi( render_logo::@7/(byte) render_logo::screen_idx#8 ) - (byte) render_logo::screen_idx#3 ? ++ (byte) render_logo::screen_idx#9 + (byte) render_logo::logo_start#2 ← phi( render_logo::@7/(byte) render_logo::logo_start#3 ) + (byte) render_logo::screen_idx#9 ← phi( render_logo::@7/(byte) render_logo::screen_idx#8 ) + (byte) render_logo::screen_idx#3 ← ++ (byte) render_logo::screen_idx#9 to:render_logo::@4 render_logo::@12: scope:[render_logo] from render_logo::@16 render_logo::@6 - (byte) render_logo::logo_idx#12 ? phi( render_logo::@16/(byte) render_logo::logo_idx#3 render_logo::@6/(byte) render_logo::logo_idx#2 ) - (byte) render_logo::screen_idx#10 ? phi( render_logo::@16/(byte) render_logo::screen_idx#4 render_logo::@6/(byte) render_logo::screen_idx#19 ) - (bool~) render_logo::$11 ? (byte) render_logo::screen_idx#10 != (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) render_logo::logo_idx#12 ← phi( render_logo::@16/(byte) render_logo::logo_idx#3 render_logo::@6/(byte) render_logo::logo_idx#2 ) + (byte) render_logo::screen_idx#10 ← phi( render_logo::@16/(byte) render_logo::screen_idx#4 render_logo::@6/(byte) render_logo::screen_idx#19 ) + (bool~) render_logo::$11 ← (byte) render_logo::screen_idx#10 != (byte/signed byte/word/signed word/dword/signed dword) $28 if((bool~) render_logo::$11) goto render_logo::@13 to:render_logo::@return render_logo::@13: scope:[render_logo] from render_logo::@12 - (byte) render_logo::screen_idx#20 ? phi( render_logo::@12/(byte) render_logo::screen_idx#10 ) - (byte) render_logo::logo_idx#10 ? phi( render_logo::@12/(byte) render_logo::logo_idx#12 ) - (byte) render_logo::line#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::screen_idx#20 ← phi( render_logo::@12/(byte) render_logo::screen_idx#10 ) + (byte) render_logo::logo_idx#10 ← phi( render_logo::@12/(byte) render_logo::logo_idx#12 ) + (byte) render_logo::line#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@15 render_logo::@15: scope:[render_logo] from render_logo::@13 render_logo::@15 - (byte) render_logo::screen_idx#11 ? phi( render_logo::@13/(byte) render_logo::screen_idx#20 render_logo::@15/(byte) render_logo::screen_idx#11 ) - (byte) render_logo::logo_idx#5 ? phi( render_logo::@13/(byte) render_logo::logo_idx#10 render_logo::@15/(byte) render_logo::logo_idx#5 ) - (byte) render_logo::line#10 ? phi( render_logo::@13/(byte) render_logo::line#3 render_logo::@15/(byte) render_logo::line#4 ) - (byte/signed word/word/dword/signed dword~) render_logo::$12 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#10 - (byte*~) render_logo::$13 ? (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$12 - (byte/signed word/word/dword/signed dword~) render_logo::$14 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#10 - (byte/signed word/word/dword/signed dword~) render_logo::$15 ? (byte) render_logo::logo_idx#5 + (byte/signed word/word/dword/signed dword~) render_logo::$14 - *((byte*~) render_logo::$13 + (byte) render_logo::screen_idx#11) ? (byte/signed word/word/dword/signed dword~) render_logo::$15 - (byte) render_logo::line#4 ? (byte) render_logo::line#10 + rangenext(0,5) - (bool~) render_logo::$16 ? (byte) render_logo::line#4 != rangelast(0,5) + (byte) render_logo::screen_idx#11 ← phi( render_logo::@13/(byte) render_logo::screen_idx#20 render_logo::@15/(byte) render_logo::screen_idx#11 ) + (byte) render_logo::logo_idx#5 ← phi( render_logo::@13/(byte) render_logo::logo_idx#10 render_logo::@15/(byte) render_logo::logo_idx#5 ) + (byte) render_logo::line#10 ← phi( render_logo::@13/(byte) render_logo::line#3 render_logo::@15/(byte) render_logo::line#4 ) + (byte/signed word/word/dword/signed dword~) render_logo::$12 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#10 + (byte*~) render_logo::$13 ← (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$12 + (byte/signed word/word/dword/signed dword~) render_logo::$14 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#10 + (byte/signed word/word/dword/signed dword~) render_logo::$15 ← (byte) render_logo::logo_idx#5 + (byte/signed word/word/dword/signed dword~) render_logo::$14 + *((byte*~) render_logo::$13 + (byte) render_logo::screen_idx#11) ← (byte/signed word/word/dword/signed dword~) render_logo::$15 + (byte) render_logo::line#4 ← (byte) render_logo::line#10 + rangenext(0,5) + (bool~) render_logo::$16 ← (byte) render_logo::line#4 != rangelast(0,5) unroll if((bool~) render_logo::$16) goto render_logo::@15 to:render_logo::@16 render_logo::@16: scope:[render_logo] from render_logo::@15 - (byte) render_logo::logo_idx#6 ? phi( render_logo::@15/(byte) render_logo::logo_idx#5 ) - (byte) render_logo::screen_idx#12 ? phi( render_logo::@15/(byte) render_logo::screen_idx#11 ) - (byte) render_logo::screen_idx#4 ? ++ (byte) render_logo::screen_idx#12 - (byte) render_logo::logo_idx#3 ? ++ (byte) render_logo::logo_idx#6 + (byte) render_logo::logo_idx#6 ← phi( render_logo::@15/(byte) render_logo::logo_idx#5 ) + (byte) render_logo::screen_idx#12 ← phi( render_logo::@15/(byte) render_logo::screen_idx#11 ) + (byte) render_logo::screen_idx#4 ← ++ (byte) render_logo::screen_idx#12 + (byte) render_logo::logo_idx#3 ← ++ (byte) render_logo::logo_idx#6 to:render_logo::@12 render_logo::@21: scope:[render_logo] from render_logo::@1 render_logo::@25 - (byte) render_logo::screen_idx#22 ? phi( render_logo::@1/(byte) render_logo::screen_idx#1 render_logo::@25/(byte) render_logo::screen_idx#5 ) - (byte) render_logo::logo_idx#7 ? phi( render_logo::@1/(byte) render_logo::logo_idx#1 render_logo::@25/(byte) render_logo::logo_idx#4 ) - (bool~) render_logo::$19 ? (byte) render_logo::logo_idx#7 != (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) render_logo::screen_idx#22 ← phi( render_logo::@1/(byte) render_logo::screen_idx#1 render_logo::@25/(byte) render_logo::screen_idx#5 ) + (byte) render_logo::logo_idx#7 ← phi( render_logo::@1/(byte) render_logo::logo_idx#1 render_logo::@25/(byte) render_logo::logo_idx#4 ) + (bool~) render_logo::$19 ← (byte) render_logo::logo_idx#7 != (byte/signed byte/word/signed word/dword/signed dword) $28 if((bool~) render_logo::$19) goto render_logo::@22 to:render_logo::@29 render_logo::@22: scope:[render_logo] from render_logo::@21 - (byte) render_logo::screen_idx#21 ? phi( render_logo::@21/(byte) render_logo::screen_idx#22 ) - (byte) render_logo::logo_idx#11 ? phi( render_logo::@21/(byte) render_logo::logo_idx#7 ) - (byte) render_logo::line#5 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::screen_idx#21 ← phi( render_logo::@21/(byte) render_logo::screen_idx#22 ) + (byte) render_logo::logo_idx#11 ← phi( render_logo::@21/(byte) render_logo::logo_idx#7 ) + (byte) render_logo::line#5 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@24 render_logo::@24: scope:[render_logo] from render_logo::@22 render_logo::@24 - (byte) render_logo::screen_idx#13 ? phi( render_logo::@22/(byte) render_logo::screen_idx#21 render_logo::@24/(byte) render_logo::screen_idx#13 ) - (byte) render_logo::logo_idx#8 ? phi( render_logo::@22/(byte) render_logo::logo_idx#11 render_logo::@24/(byte) render_logo::logo_idx#8 ) - (byte) render_logo::line#11 ? phi( render_logo::@22/(byte) render_logo::line#5 render_logo::@24/(byte) render_logo::line#6 ) - (byte/signed word/word/dword/signed dword~) render_logo::$20 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#11 - (byte*~) render_logo::$21 ? (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$20 - (byte/signed word/word/dword/signed dword~) render_logo::$22 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#11 - (byte/signed word/word/dword/signed dword~) render_logo::$23 ? (byte) render_logo::logo_idx#8 + (byte/signed word/word/dword/signed dword~) render_logo::$22 - *((byte*~) render_logo::$21 + (byte) render_logo::screen_idx#13) ? (byte/signed word/word/dword/signed dword~) render_logo::$23 - (byte) render_logo::line#6 ? (byte) render_logo::line#11 + rangenext(0,5) - (bool~) render_logo::$24 ? (byte) render_logo::line#6 != rangelast(0,5) + (byte) render_logo::screen_idx#13 ← phi( render_logo::@22/(byte) render_logo::screen_idx#21 render_logo::@24/(byte) render_logo::screen_idx#13 ) + (byte) render_logo::logo_idx#8 ← phi( render_logo::@22/(byte) render_logo::logo_idx#11 render_logo::@24/(byte) render_logo::logo_idx#8 ) + (byte) render_logo::line#11 ← phi( render_logo::@22/(byte) render_logo::line#5 render_logo::@24/(byte) render_logo::line#6 ) + (byte/signed word/word/dword/signed dword~) render_logo::$20 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#11 + (byte*~) render_logo::$21 ← (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$20 + (byte/signed word/word/dword/signed dword~) render_logo::$22 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#11 + (byte/signed word/word/dword/signed dword~) render_logo::$23 ← (byte) render_logo::logo_idx#8 + (byte/signed word/word/dword/signed dword~) render_logo::$22 + *((byte*~) render_logo::$21 + (byte) render_logo::screen_idx#13) ← (byte/signed word/word/dword/signed dword~) render_logo::$23 + (byte) render_logo::line#6 ← (byte) render_logo::line#11 + rangenext(0,5) + (bool~) render_logo::$24 ← (byte) render_logo::line#6 != rangelast(0,5) unroll if((bool~) render_logo::$24) goto render_logo::@24 to:render_logo::@25 render_logo::@25: scope:[render_logo] from render_logo::@24 - (byte) render_logo::logo_idx#9 ? phi( render_logo::@24/(byte) render_logo::logo_idx#8 ) - (byte) render_logo::screen_idx#14 ? phi( render_logo::@24/(byte) render_logo::screen_idx#13 ) - (byte) render_logo::screen_idx#5 ? ++ (byte) render_logo::screen_idx#14 - (byte) render_logo::logo_idx#4 ? ++ (byte) render_logo::logo_idx#9 + (byte) render_logo::logo_idx#9 ← phi( render_logo::@24/(byte) render_logo::logo_idx#8 ) + (byte) render_logo::screen_idx#14 ← phi( render_logo::@24/(byte) render_logo::screen_idx#13 ) + (byte) render_logo::screen_idx#5 ← ++ (byte) render_logo::screen_idx#14 + (byte) render_logo::logo_idx#4 ← ++ (byte) render_logo::logo_idx#9 to:render_logo::@21 render_logo::@29: scope:[render_logo] from render_logo::@21 render_logo::@33 - (byte) render_logo::screen_idx#15 ? phi( render_logo::@21/(byte) render_logo::screen_idx#22 render_logo::@33/(byte) render_logo::screen_idx#6 ) - (bool~) render_logo::$25 ? (byte) render_logo::screen_idx#15 != (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) render_logo::screen_idx#15 ← phi( render_logo::@21/(byte) render_logo::screen_idx#22 render_logo::@33/(byte) render_logo::screen_idx#6 ) + (bool~) render_logo::$25 ← (byte) render_logo::screen_idx#15 != (byte/signed byte/word/signed word/dword/signed dword) $28 if((bool~) render_logo::$25) goto render_logo::@30 to:render_logo::@return render_logo::@30: scope:[render_logo] from render_logo::@29 - (byte) render_logo::screen_idx#23 ? phi( render_logo::@29/(byte) render_logo::screen_idx#15 ) - (byte) render_logo::line#7 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::screen_idx#23 ← phi( render_logo::@29/(byte) render_logo::screen_idx#15 ) + (byte) render_logo::line#7 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@32 render_logo::@32: scope:[render_logo] from render_logo::@30 render_logo::@32 - (byte) render_logo::screen_idx#16 ? phi( render_logo::@30/(byte) render_logo::screen_idx#23 render_logo::@32/(byte) render_logo::screen_idx#16 ) - (byte) render_logo::line#12 ? phi( render_logo::@30/(byte) render_logo::line#7 render_logo::@32/(byte) render_logo::line#8 ) - (byte/signed word/word/dword/signed dword~) render_logo::$26 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#12 - (byte*~) render_logo::$27 ? (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$26 - *((byte*~) render_logo::$27 + (byte) render_logo::screen_idx#16) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) render_logo::line#8 ? (byte) render_logo::line#12 + rangenext(0,5) - (bool~) render_logo::$28 ? (byte) render_logo::line#8 != rangelast(0,5) + (byte) render_logo::screen_idx#16 ← phi( render_logo::@30/(byte) render_logo::screen_idx#23 render_logo::@32/(byte) render_logo::screen_idx#16 ) + (byte) render_logo::line#12 ← phi( render_logo::@30/(byte) render_logo::line#7 render_logo::@32/(byte) render_logo::line#8 ) + (byte/signed word/word/dword/signed dword~) render_logo::$26 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte) render_logo::line#12 + (byte*~) render_logo::$27 ← (byte*) SCREEN#0 + (byte/signed word/word/dword/signed dword~) render_logo::$26 + *((byte*~) render_logo::$27 + (byte) render_logo::screen_idx#16) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) render_logo::line#8 ← (byte) render_logo::line#12 + rangenext(0,5) + (bool~) render_logo::$28 ← (byte) render_logo::line#8 != rangelast(0,5) unroll if((bool~) render_logo::$28) goto render_logo::@32 to:render_logo::@33 render_logo::@33: scope:[render_logo] from render_logo::@32 - (byte) render_logo::screen_idx#17 ? phi( render_logo::@32/(byte) render_logo::screen_idx#16 ) - (byte) render_logo::screen_idx#6 ? ++ (byte) render_logo::screen_idx#17 + (byte) render_logo::screen_idx#17 ← phi( render_logo::@32/(byte) render_logo::screen_idx#16 ) + (byte) render_logo::screen_idx#6 ← ++ (byte) render_logo::screen_idx#17 to:render_logo::@29 render_logo::@return: scope:[render_logo] from render_logo::@12 render_logo::@29 return to:@return @28: scope:[] from @26 - (word) xsin_idx#16 ? phi( @26/(word) xsin_idx#2 ) - (word) rem16u#25 ? phi( @26/(word) rem16u#28 ) + (word) xsin_idx#16 ← phi( @26/(word) xsin_idx#2 ) + (word) rem16u#25 ← phi( @26/(word) rem16u#28 ) call main to:@29 @29: scope:[] from @28 - (word) xsin_idx#12 ? phi( @28/(word) xsin_idx#1 ) - (word) rem16u#19 ? phi( @28/(word) rem16u#9 ) - (word) rem16u#10 ? (word) rem16u#19 - (word) xsin_idx#6 ? (word) xsin_idx#12 + (word) xsin_idx#12 ← phi( @28/(word) xsin_idx#1 ) + (word) rem16u#19 ← phi( @28/(word) rem16u#9 ) + (word) rem16u#10 ← (word) rem16u#19 + (word) xsin_idx#6 ← (word) xsin_idx#12 to:@end @end: scope:[] from @29 @@ -1784,15 +1784,15 @@ SYMBOL TABLE SSA (word) xsin_idx#8 (word) xsin_idx#9 -Inversing boolean not [90] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [89] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [98] (bool~) divr16u::$9 ? (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [97] (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 -Inversing boolean not [158] (bool~) mul16u::$3 ? (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [157] (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [184] (bool~) mul16s::$4 ? (signed word) mul16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [183] (bool~) mul16s::$3 ? (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [188] (bool~) mul16s::$6 ? (signed word) mul16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [187] (bool~) mul16s::$5 ? (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [260] (bool~) sin16s::$1 ? (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [259] (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 -Inversing boolean not [264] (bool~) sin16s::$3 ? (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [263] (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 -Inversing boolean not [324] (bool~) sin16s::$17 ? (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [323] (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [447] (bool~) loop::$5 ? (word) xsin_idx#3 != (word/signed dword/dword~) loop::$3 from [446] (bool~) loop::$4 ? (word) xsin_idx#3 == (word/signed dword/dword~) loop::$3 +Inversing boolean not [90] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [89] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [98] (bool~) divr16u::$9 ← (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [97] (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 +Inversing boolean not [158] (bool~) mul16u::$3 ← (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [157] (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [184] (bool~) mul16s::$4 ← (signed word) mul16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [183] (bool~) mul16s::$3 ← (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [188] (bool~) mul16s::$6 ← (signed word) mul16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [187] (bool~) mul16s::$5 ← (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [260] (bool~) sin16s::$1 ← (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [259] (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 +Inversing boolean not [264] (bool~) sin16s::$3 ← (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [263] (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 +Inversing boolean not [324] (bool~) sin16s::$17 ← (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [323] (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [447] (bool~) loop::$5 ← (word) xsin_idx#3 != (word/signed dword/dword~) loop::$3 from [446] (bool~) loop::$4 ← (word) xsin_idx#3 == (word/signed dword/dword~) loop::$3 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#7 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#8 @@ -2183,16 +2183,16 @@ Successful SSA optimization Pass2ConstantIdentification if() condition always true - replacing block destination [44] if((const signed word) mul16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@2 if() condition always true - replacing block destination [150] if(true) goto loop::@2 Successful SSA optimization Pass2ConstantIfs -Fixing inline constructor with div32u16u::$4 ? div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 +Fixing inline constructor with div32u16u::$4 ← div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 Successful SSA optimization Pass2FixInlineConstructors Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (word) mul16u::a#1 ? ((word)) (signed word) mul16s::a#0 -Eliminating Noop Cast (word~) mul16s::$14 ? ((word)) (signed word) mul16s::a#0 -Eliminating Noop Cast (signed word~) sin16s_gen2::$7 ? ((signed word)) (word~) sin16s_gen2::$6 -Eliminating Noop Cast (signed word) sin16s::sinx#0 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (byte) render_logo::logo_idx#1 ? ((byte)) (signed byte~) render_logo::$17 -Eliminating Noop Cast (byte) render_logo::logo_start#0 ? ((byte)) (signed byte) render_logo::x_char#0 +Eliminating Noop Cast (word) mul16u::a#1 ← ((word)) (signed word) mul16s::a#0 +Eliminating Noop Cast (word~) mul16s::$14 ← ((word)) (signed word) mul16s::a#0 +Eliminating Noop Cast (signed word~) sin16s_gen2::$7 ← ((signed word)) (word~) sin16s_gen2::$6 +Eliminating Noop Cast (signed word) sin16s::sinx#0 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (byte) render_logo::logo_idx#1 ← ((byte)) (signed byte~) render_logo::$17 +Eliminating Noop Cast (byte) render_logo::logo_start#0 ← ((byte)) (signed byte) render_logo::x_char#0 Successful SSA optimization Pass2NopCastElimination Eliminating variable (word~) mul16s::$13 from unused block mul16s::@4 Eliminating variable (word~) mul16s::$17 from unused block mul16s::@4 @@ -2201,17 +2201,17 @@ Removing PHI-reference to removed block (mul16s::@4) in block mul16s::@2 Removing unused block mul16s::@4 Removing unused block loop::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value main::ch#1 ? ++ main::ch#2 to ++ +Resolved ranged next value main::ch#1 ← ++ main::ch#2 to ++ Resolved ranged comparison value if(main::ch#1!=rangelast(0,$ef)) goto main::@1 to (byte/word/signed word/dword/signed dword) $f0 -Resolved ranged next value render_logo::line#2 ? ++ render_logo::line#9 to ++ +Resolved ranged next value render_logo::line#2 ← ++ render_logo::line#9 to ++ Resolved ranged comparison value unroll if(render_logo::line#2!=rangelast(0,5)) goto render_logo::@7 to (byte/signed byte/word/signed word/dword/signed dword) 6 -Resolved ranged next value render_logo::line#4 ? ++ render_logo::line#10 to ++ +Resolved ranged next value render_logo::line#4 ← ++ render_logo::line#10 to ++ Resolved ranged comparison value unroll if(render_logo::line#4!=rangelast(0,5)) goto render_logo::@15 to (byte/signed byte/word/signed word/dword/signed dword) 6 -Resolved ranged next value render_logo::line#6 ? ++ render_logo::line#11 to ++ +Resolved ranged next value render_logo::line#6 ← ++ render_logo::line#11 to ++ Resolved ranged comparison value unroll if(render_logo::line#6!=rangelast(0,5)) goto render_logo::@24 to (byte/signed byte/word/signed word/dword/signed dword) 6 -Resolved ranged next value render_logo::line#8 ? ++ render_logo::line#12 to ++ +Resolved ranged next value render_logo::line#8 ← ++ render_logo::line#12 to ++ Resolved ranged comparison value unroll if(render_logo::line#8!=rangelast(0,5)) goto render_logo::@32 to (byte/signed byte/word/signed word/dword/signed dword) 6 Culled Empty Block (label) @4 Culled Empty Block (label) @6 @@ -2841,60 +2841,60 @@ Calls in [mulu16_sel] to mul16u:222 Calls in [div32u16u] to divr16u:229 divr16u:234 Created 38 initial phi equivalence classes -Coalesced [25] main::ch#3 ? main::ch#1 -Coalesced [39] xsin_idx#29 ? xsin_idx#19 -Coalesced [40] xsin_idx#30 ? xsin_idx#3 -Coalesced [50] render_logo::screen_idx#26 ? render_logo::screen_idx#18 -Coalesced [68] render_logo::screen_idx#25 ? render_logo::screen_idx#4 -Coalesced [69] render_logo::logo_idx#13 ? render_logo::logo_idx#3 -Coalesced [77] render_logo::screen_idx#24 ? render_logo::screen_idx#3 -Coalesced [82] render_logo::screen_idx#28 ? render_logo::screen_idx#21 -Coalesced [92] render_logo::screen_idx#29 ? render_logo::screen_idx#6 -Coalesced [107] render_logo::logo_idx#15 ? render_logo::logo_idx#4 -Coalesced [108] render_logo::screen_idx#27 ? render_logo::screen_idx#5 -Coalesced [129] sin16s_gen2::x#5 ? sin16s_gen2::x#1 -Coalesced [130] sin16s_gen2::sintab#7 ? sin16s_gen2::sintab#0 -Coalesced [131] sin16s_gen2::i#5 ? sin16s_gen2::i#1 -Coalesced [140] mul16s::m#7 ? mul16s::m#1 -Coalesced [144] mul16s::m#8 ? mul16s::m#0 -Coalesced [147] mul16u::a#10 ? mul16u::a#6 -Coalesced [148] mul16u::mb#6 ? mul16u::mb#0 -Coalesced [155] mul16u::res#9 ? mul16u::res#1 -Coalesced [159] mul16u::a#11 ? mul16u::a#0 -Coalesced [160] mul16u::res#7 ? mul16u::res#6 -Coalesced [161] mul16u::mb#7 ? mul16u::mb#1 -Coalesced (already) [162] mul16u::res#8 ? mul16u::res#2 -Coalesced [165] sin16s::x#9 ? sin16s::x#1 -Coalesced [169] sin16s::x#11 ? sin16s::x#2 -Coalesced [175] mulu16_sel::v1#8 ? mulu16_sel::v1#0 -Coalesced [176] mulu16_sel::v2#8 ? mulu16_sel::v2#0 -Coalesced [182] mulu16_sel::v1#9 ? mulu16_sel::v1#1 -Coalesced [183] mulu16_sel::v2#9 ? mulu16_sel::v2#1 -Coalesced [188] mulu16_sel::v1#10 ? mulu16_sel::v1#2 -Coalesced [195] mulu16_sel::v1#6 ? mulu16_sel::v1#3 -Coalesced [196] mulu16_sel::v2#6 ? mulu16_sel::v2#3 -Coalesced [202] mulu16_sel::v1#7 ? mulu16_sel::v1#4 -Coalesced [203] mulu16_sel::v2#7 ? mulu16_sel::v2#4 -Coalesced [211] sin16s::return#6 ? sin16s::sinx#1 -Coalesced [215] sin16s::x#10 ? sin16s::x#4 -Coalesced [216] sin16s::x#8 ? sin16s::x#0 -Coalesced [220] mul16u::b#3 ? mul16u::b#1 -Coalesced [221] mul16u::a#9 ? mul16u::a#2 -Coalesced [233] divr16u::rem#12 ? divr16u::rem#4 -Coalesced [240] divr16u::rem#13 ? divr16u::rem#10 -Coalesced [241] divr16u::dividend#9 ? divr16u::dividend#5 -Coalesced [248] divr16u::rem#16 ? divr16u::rem#1 -Coalesced [255] divr16u::rem#18 ? divr16u::rem#2 -Coalesced [256] divr16u::return#8 ? divr16u::quotient#2 -Coalesced [262] divr16u::rem#14 ? divr16u::rem#11 -Coalesced [263] divr16u::dividend#10 ? divr16u::dividend#0 -Coalesced [264] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [265] divr16u::i#7 ? divr16u::i#1 -Coalesced [266] divr16u::rem#17 ? divr16u::rem#6 -Coalesced [267] divr16u::return#7 ? divr16u::quotient#1 -Coalesced [268] divr16u::rem#15 ? divr16u::rem#0 -Coalesced [271] fill::addr#3 ? fill::addr#0 -Coalesced [277] fill::addr#4 ? fill::addr#1 +Coalesced [25] main::ch#3 ← main::ch#1 +Coalesced [39] xsin_idx#29 ← xsin_idx#19 +Coalesced [40] xsin_idx#30 ← xsin_idx#3 +Coalesced [50] render_logo::screen_idx#26 ← render_logo::screen_idx#18 +Coalesced [68] render_logo::screen_idx#25 ← render_logo::screen_idx#4 +Coalesced [69] render_logo::logo_idx#13 ← render_logo::logo_idx#3 +Coalesced [77] render_logo::screen_idx#24 ← render_logo::screen_idx#3 +Coalesced [82] render_logo::screen_idx#28 ← render_logo::screen_idx#21 +Coalesced [92] render_logo::screen_idx#29 ← render_logo::screen_idx#6 +Coalesced [107] render_logo::logo_idx#15 ← render_logo::logo_idx#4 +Coalesced [108] render_logo::screen_idx#27 ← render_logo::screen_idx#5 +Coalesced [129] sin16s_gen2::x#5 ← sin16s_gen2::x#1 +Coalesced [130] sin16s_gen2::sintab#7 ← sin16s_gen2::sintab#0 +Coalesced [131] sin16s_gen2::i#5 ← sin16s_gen2::i#1 +Coalesced [140] mul16s::m#7 ← mul16s::m#1 +Coalesced [144] mul16s::m#8 ← mul16s::m#0 +Coalesced [147] mul16u::a#10 ← mul16u::a#6 +Coalesced [148] mul16u::mb#6 ← mul16u::mb#0 +Coalesced [155] mul16u::res#9 ← mul16u::res#1 +Coalesced [159] mul16u::a#11 ← mul16u::a#0 +Coalesced [160] mul16u::res#7 ← mul16u::res#6 +Coalesced [161] mul16u::mb#7 ← mul16u::mb#1 +Coalesced (already) [162] mul16u::res#8 ← mul16u::res#2 +Coalesced [165] sin16s::x#9 ← sin16s::x#1 +Coalesced [169] sin16s::x#11 ← sin16s::x#2 +Coalesced [175] mulu16_sel::v1#8 ← mulu16_sel::v1#0 +Coalesced [176] mulu16_sel::v2#8 ← mulu16_sel::v2#0 +Coalesced [182] mulu16_sel::v1#9 ← mulu16_sel::v1#1 +Coalesced [183] mulu16_sel::v2#9 ← mulu16_sel::v2#1 +Coalesced [188] mulu16_sel::v1#10 ← mulu16_sel::v1#2 +Coalesced [195] mulu16_sel::v1#6 ← mulu16_sel::v1#3 +Coalesced [196] mulu16_sel::v2#6 ← mulu16_sel::v2#3 +Coalesced [202] mulu16_sel::v1#7 ← mulu16_sel::v1#4 +Coalesced [203] mulu16_sel::v2#7 ← mulu16_sel::v2#4 +Coalesced [211] sin16s::return#6 ← sin16s::sinx#1 +Coalesced [215] sin16s::x#10 ← sin16s::x#4 +Coalesced [216] sin16s::x#8 ← sin16s::x#0 +Coalesced [220] mul16u::b#3 ← mul16u::b#1 +Coalesced [221] mul16u::a#9 ← mul16u::a#2 +Coalesced [233] divr16u::rem#12 ← divr16u::rem#4 +Coalesced [240] divr16u::rem#13 ← divr16u::rem#10 +Coalesced [241] divr16u::dividend#9 ← divr16u::dividend#5 +Coalesced [248] divr16u::rem#16 ← divr16u::rem#1 +Coalesced [255] divr16u::rem#18 ← divr16u::rem#2 +Coalesced [256] divr16u::return#8 ← divr16u::quotient#2 +Coalesced [262] divr16u::rem#14 ← divr16u::rem#11 +Coalesced [263] divr16u::dividend#10 ← divr16u::dividend#0 +Coalesced [264] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [265] divr16u::i#7 ← divr16u::i#1 +Coalesced [266] divr16u::rem#17 ← divr16u::rem#6 +Coalesced [267] divr16u::return#7 ← divr16u::quotient#1 +Coalesced [268] divr16u::rem#15 ← divr16u::rem#0 +Coalesced [271] fill::addr#3 ← fill::addr#0 +Coalesced [277] fill::addr#4 ← fill::addr#1 Coalesced down to 26 phi equivalence classes Culled Empty Block (label) main::@8 Culled Empty Block (label) loop::@10 @@ -2976,17 +2976,17 @@ FINAL CONTROL FLOW GRAPH [4] phi() main: scope:[main] from @2 asm { sei } - [6] *((const byte*) BORDERCOL#0) ? (const byte) WHITE#0 - [7] *((const byte*) BGCOL2#0) ? (const byte) DARK_GREY#0 - [8] *((const byte*) BGCOL#0) ? *((const byte*) BGCOL2#0) - [9] *((const byte*) BGCOL3#0) ? (const byte) BLACK#0 + [6] *((const byte*) BORDERCOL#0) ← (const byte) WHITE#0 + [7] *((const byte*) BGCOL2#0) ← (const byte) DARK_GREY#0 + [8] *((const byte*) BGCOL#0) ← *((const byte*) BGCOL2#0) + [9] *((const byte*) BGCOL3#0) ← (const byte) BLACK#0 to:main::toD0181 main::toD0181: scope:[main] from main [10] phi() to:main::@3 main::@3: scope:[main] from main::toD0181 - [11] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 - [12] *((const byte*) D016#0) ? (const byte) VIC_MCM#0 + [11] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 + [12] *((const byte*) D016#0) ← (const byte) VIC_MCM#0 [13] call fill to:main::@4 main::@4: scope:[main] from main::@3 @@ -2994,9 +2994,9 @@ main::@4: scope:[main] from main::@3 [15] call fill to:main::@1 main::@1: scope:[main] from main::@1 main::@4 - [16] (byte) main::ch#2 ? phi( main::@1/(byte) main::ch#1 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ? (byte) main::ch#2 - [18] (byte) main::ch#1 ? ++ (byte) main::ch#2 + [16] (byte) main::ch#2 ← phi( main::@1/(byte) main::ch#1 main::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ← (byte) main::ch#2 + [18] (byte) main::ch#1 ← ++ (byte) main::ch#2 [19] if((byte) main::ch#1!=(byte/word/signed word/dword/signed dword) $f0) goto main::@1 to:main::@2 main::@2: scope:[main] from main::@1 @@ -3014,326 +3014,326 @@ loop: scope:[loop] from main::@5 [25] phi() to:loop::@1 loop::@1: scope:[loop] from loop loop::@4 - [26] (word) xsin_idx#11 ? phi( loop/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@4/(word) xsin_idx#19 ) + [26] (word) xsin_idx#11 ← phi( loop/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@4/(word) xsin_idx#19 ) to:loop::@2 loop::@2: scope:[loop] from loop::@1 loop::@2 [27] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto loop::@2 to:loop::@3 loop::@3: scope:[loop] from loop::@2 - [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) - [29] (signed word*~) loop::$1 ? (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 - [30] (signed word) loop::xpos#0 ? *((signed word*~) loop::$1) - [31] (signed word) render_logo::xpos#0 ? (signed word) loop::xpos#0 + [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) + [29] (signed word*~) loop::$1 ← (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 + [30] (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) + [31] (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 [32] call render_logo to:loop::@5 loop::@5: scope:[loop] from loop::@3 - [33] (word) xsin_idx#3 ? (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [33] (word) xsin_idx#3 ← (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 [34] if((word) xsin_idx#3!=(const word) XSIN_SIZE#0*(byte/signed byte/word/signed word/dword/signed dword) 2) goto loop::@6 to:loop::@4 loop::@4: scope:[loop] from loop::@5 loop::@6 - [35] (word) xsin_idx#19 ? phi( loop::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@6/(word) xsin_idx#3 ) - [36] *((const byte*) BORDERCOL#0) ? -- *((const byte*) BORDERCOL#0) + [35] (word) xsin_idx#19 ← phi( loop::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 loop::@6/(word) xsin_idx#3 ) + [36] *((const byte*) BORDERCOL#0) ← -- *((const byte*) BORDERCOL#0) to:loop::@1 loop::@6: scope:[loop] from loop::@5 [37] phi() to:loop::@4 render_logo: scope:[render_logo] from loop::@3 - [38] (byte~) render_logo::$0 ? ((byte)) (signed word) render_logo::xpos#0 - [39] (byte~) render_logo::$1 ? (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [40] (byte~) render_logo::$2 ? (const byte) VIC_MCM#0 | (byte~) render_logo::$1 - [41] *((const byte*) D016#0) ? (byte~) render_logo::$2 - [42] (signed word~) render_logo::$3 ? (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - [43] (signed byte) render_logo::x_char#0 ? ((signed byte)) (signed word~) render_logo::$3 + [38] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 + [39] (byte~) render_logo::$1 ← (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [40] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 + [41] *((const byte*) D016#0) ← (byte~) render_logo::$2 + [42] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + [43] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 [44] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 to:render_logo::@2 render_logo::@2: scope:[render_logo] from render_logo render_logo::@4 - [45] (byte) render_logo::screen_idx#18 ? phi( render_logo/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@4/(byte) render_logo::screen_idx#3 ) + [45] (byte) render_logo::screen_idx#18 ← phi( render_logo/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@4/(byte) render_logo::screen_idx#3 ) [46] if((byte) render_logo::screen_idx#18!=(byte)(signed byte) render_logo::x_char#0) goto render_logo::@3 to:render_logo::@5 render_logo::@5: scope:[render_logo] from render_logo::@2 render_logo::@7 - [47] (byte) render_logo::logo_idx#10 ? phi( render_logo::@7/(byte) render_logo::logo_idx#3 render_logo::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [47] (byte) render_logo::screen_idx#10 ? phi( render_logo::@7/(byte) render_logo::screen_idx#4 render_logo::@2/(byte) render_logo::screen_idx#18 ) + [47] (byte) render_logo::logo_idx#10 ← phi( render_logo::@7/(byte) render_logo::logo_idx#3 render_logo::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [47] (byte) render_logo::screen_idx#10 ← phi( render_logo::@7/(byte) render_logo::screen_idx#4 render_logo::@2/(byte) render_logo::screen_idx#18 ) [48] if((byte) render_logo::screen_idx#10!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render_logo::@6 to:render_logo::@return render_logo::@return: scope:[render_logo] from render_logo::@11 render_logo::@5 [49] return to:@return render_logo::@6: scope:[render_logo] from render_logo::@5 - [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 - [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$15 + [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 + [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$15 to:render_logo::@15_1 render_logo::@15_1: scope:[render_logo] from render_logo::@6 - [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 - [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$34 + [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$34 to:render_logo::@15_2 render_logo::@15_2: scope:[render_logo] from render_logo::@15_1 - [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 - [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$38 + [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$38 to:render_logo::@15_3 render_logo::@15_3: scope:[render_logo] from render_logo::@15_2 - [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 - [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$42 + [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$42 to:render_logo::@15_4 render_logo::@15_4: scope:[render_logo] from render_logo::@15_3 - [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 - [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$46 + [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$46 to:render_logo::@15_5 render_logo::@15_5: scope:[render_logo] from render_logo::@15_4 - [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 - [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$50 + [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$50 to:render_logo::@7 render_logo::@7: scope:[render_logo] from render_logo::@15_5 - [62] (byte) render_logo::screen_idx#4 ? ++ (byte) render_logo::screen_idx#10 - [63] (byte) render_logo::logo_idx#3 ? ++ (byte) render_logo::logo_idx#10 + [62] (byte) render_logo::screen_idx#4 ← ++ (byte) render_logo::screen_idx#10 + [63] (byte) render_logo::logo_idx#3 ← ++ (byte) render_logo::logo_idx#10 to:render_logo::@5 render_logo::@3: scope:[render_logo] from render_logo::@2 - [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@7_1 render_logo::@7_1: scope:[render_logo] from render_logo::@3 - [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@7_2 render_logo::@7_2: scope:[render_logo] from render_logo::@7_1 - [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@7_3 render_logo::@7_3: scope:[render_logo] from render_logo::@7_2 - [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@7_4 render_logo::@7_4: scope:[render_logo] from render_logo::@7_3 - [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@7_5 render_logo::@7_5: scope:[render_logo] from render_logo::@7_4 - [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@4 render_logo::@4: scope:[render_logo] from render_logo::@7_5 - [70] (byte) render_logo::screen_idx#3 ? ++ (byte) render_logo::screen_idx#18 + [70] (byte) render_logo::screen_idx#3 ← ++ (byte) render_logo::screen_idx#18 to:render_logo::@2 render_logo::@1: scope:[render_logo] from render_logo - [71] (signed byte~) render_logo::$17 ? - (signed byte) render_logo::x_char#0 - [72] (byte~) render_logo::logo_idx#14 ? (byte)(signed byte~) render_logo::$17 + [71] (signed byte~) render_logo::$17 ← - (signed byte) render_logo::x_char#0 + [72] (byte~) render_logo::logo_idx#14 ← (byte)(signed byte~) render_logo::$17 to:render_logo::@8 render_logo::@8: scope:[render_logo] from render_logo::@1 render_logo::@10 - [73] (byte) render_logo::screen_idx#21 ? phi( render_logo::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@10/(byte) render_logo::screen_idx#5 ) - [73] (byte) render_logo::logo_idx#11 ? phi( render_logo::@1/(byte~) render_logo::logo_idx#14 render_logo::@10/(byte) render_logo::logo_idx#4 ) + [73] (byte) render_logo::screen_idx#21 ← phi( render_logo::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render_logo::@10/(byte) render_logo::screen_idx#5 ) + [73] (byte) render_logo::logo_idx#11 ← phi( render_logo::@1/(byte~) render_logo::logo_idx#14 render_logo::@10/(byte) render_logo::logo_idx#4 ) [74] if((byte) render_logo::logo_idx#11!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render_logo::@9 to:render_logo::@11 render_logo::@11: scope:[render_logo] from render_logo::@13 render_logo::@8 - [75] (byte) render_logo::screen_idx#15 ? phi( render_logo::@8/(byte) render_logo::screen_idx#21 render_logo::@13/(byte) render_logo::screen_idx#6 ) + [75] (byte) render_logo::screen_idx#15 ← phi( render_logo::@8/(byte) render_logo::screen_idx#21 render_logo::@13/(byte) render_logo::screen_idx#6 ) [76] if((byte) render_logo::screen_idx#15!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render_logo::@12 to:render_logo::@return render_logo::@12: scope:[render_logo] from render_logo::@11 - [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@32_1 render_logo::@32_1: scope:[render_logo] from render_logo::@12 - [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@32_2 render_logo::@32_2: scope:[render_logo] from render_logo::@32_1 - [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@32_3 render_logo::@32_3: scope:[render_logo] from render_logo::@32_2 - [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@32_4 render_logo::@32_4: scope:[render_logo] from render_logo::@32_3 - [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@32_5 render_logo::@32_5: scope:[render_logo] from render_logo::@32_4 - [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_logo::@13 render_logo::@13: scope:[render_logo] from render_logo::@32_5 - [83] (byte) render_logo::screen_idx#6 ? ++ (byte) render_logo::screen_idx#15 + [83] (byte) render_logo::screen_idx#6 ← ++ (byte) render_logo::screen_idx#15 to:render_logo::@11 render_logo::@9: scope:[render_logo] from render_logo::@8 - [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 - [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$23 + [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 + [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$23 to:render_logo::@24_1 render_logo::@24_1: scope:[render_logo] from render_logo::@9 - [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 - [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$80 + [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$80 to:render_logo::@24_2 render_logo::@24_2: scope:[render_logo] from render_logo::@24_1 - [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 - [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$84 + [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$84 to:render_logo::@24_3 render_logo::@24_3: scope:[render_logo] from render_logo::@24_2 - [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 - [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$88 + [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$88 to:render_logo::@24_4 render_logo::@24_4: scope:[render_logo] from render_logo::@24_3 - [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 - [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$92 + [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$92 to:render_logo::@24_5 render_logo::@24_5: scope:[render_logo] from render_logo::@24_4 - [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 - [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$96 + [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$96 to:render_logo::@10 render_logo::@10: scope:[render_logo] from render_logo::@24_5 - [96] (byte) render_logo::screen_idx#5 ? ++ (byte) render_logo::screen_idx#21 - [97] (byte) render_logo::logo_idx#4 ? ++ (byte) render_logo::logo_idx#11 + [96] (byte) render_logo::screen_idx#5 ← ++ (byte) render_logo::screen_idx#21 + [97] (byte) render_logo::logo_idx#4 ← ++ (byte) render_logo::logo_idx#11 to:render_logo::@8 sin16s_gen2: scope:[sin16s_gen2] from main::@2 [98] phi() [99] call div32u16u - [100] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + [100] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 to:sin16s_gen2::@2 sin16s_gen2::@2: scope:[sin16s_gen2] from sin16s_gen2 - [101] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 + [101] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 to:sin16s_gen2::@1 sin16s_gen2::@1: scope:[sin16s_gen2] from sin16s_gen2::@2 sin16s_gen2::@4 - [102] (word) sin16s_gen2::i#2 ? phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(word) sin16s_gen2::i#1 ) - [102] (signed word*) sin16s_gen2::sintab#2 ? phi( sin16s_gen2::@2/(const signed word[XSIN_SIZE#0]) xsin#0 sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#0 ) - [102] (dword) sin16s_gen2::x#2 ? phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(dword) sin16s_gen2::x#1 ) - [103] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 + [102] (word) sin16s_gen2::i#2 ← phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(word) sin16s_gen2::i#1 ) + [102] (signed word*) sin16s_gen2::sintab#2 ← phi( sin16s_gen2::@2/(const signed word[XSIN_SIZE#0]) xsin#0 sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#0 ) + [102] (dword) sin16s_gen2::x#2 ← phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(dword) sin16s_gen2::x#1 ) + [103] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [104] call sin16s - [105] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + [105] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 to:sin16s_gen2::@3 sin16s_gen2::@3: scope:[sin16s_gen2] from sin16s_gen2::@1 - [106] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 + [106] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [107] call mul16s - [108] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + [108] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 to:sin16s_gen2::@4 sin16s_gen2::@4: scope:[sin16s_gen2] from sin16s_gen2::@3 - [109] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 - [110] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 - [111] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 - [112] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 - [113] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [114] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 - [115] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 + [109] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 + [110] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 + [111] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 + [112] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 + [113] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [114] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 + [115] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 [116] if((word) sin16s_gen2::i#1<(const word) XSIN_SIZE#0) goto sin16s_gen2::@1 to:sin16s_gen2::@return sin16s_gen2::@return: scope:[sin16s_gen2] from sin16s_gen2::@4 [117] return to:@return mul16s: scope:[mul16s] from sin16s_gen2::@3 - [118] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 + [118] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [119] call mul16u - [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 to:mul16s::@4 mul16s::@4: scope:[mul16s] from mul16s - [121] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + [121] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [122] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 to:mul16s::@3 mul16s::@3: scope:[mul16s] from mul16s::@4 - [123] (word~) mul16s::$9 ? > (dword) mul16s::m#0 - [124] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 - [125] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 + [123] (word~) mul16s::$9 ← > (dword) mul16s::m#0 + [124] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 + [125] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 to:mul16s::@1 mul16s::@1: scope:[mul16s] from mul16s::@3 mul16s::@4 - [126] (dword) mul16s::m#4 ? phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@4/(dword) mul16s::m#0 ) + [126] (dword) mul16s::m#4 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@4/(dword) mul16s::m#0 ) to:mul16s::@2 mul16s::@2: scope:[mul16s] from mul16s::@1 - [127] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 + [127] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 to:mul16s::@return mul16s::@return: scope:[mul16s] from mul16s::@2 [128] return to:@return mul16u: scope:[mul16u] from mul16s mulu16_sel - [129] (word) mul16u::a#6 ? phi( mul16s/(word~) mul16u::a#8 mulu16_sel/(word) mul16u::a#2 ) - [129] (word) mul16u::b#2 ? phi( mul16s/((word))(const signed word) sin16s_gen2::ampl#0 mulu16_sel/(word) mul16u::b#1 ) - [130] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 + [129] (word) mul16u::a#6 ← phi( mul16s/(word~) mul16u::a#8 mulu16_sel/(word) mul16u::a#2 ) + [129] (word) mul16u::b#2 ← phi( mul16s/((word))(const signed word) sin16s_gen2::ampl#0 mulu16_sel/(word) mul16u::b#1 ) + [130] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@3 - [131] (dword) mul16u::mb#2 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) - [131] (dword) mul16u::res#2 ? phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) - [131] (word) mul16u::a#3 ? phi( mul16u/(word) mul16u::a#6 mul16u::@3/(word) mul16u::a#0 ) + [131] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) + [131] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) + [131] (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@3/(word) mul16u::a#0 ) [132] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 to:mul16u::@return mul16u::@return: scope:[mul16u] from mul16u::@1 [133] return to:@return mul16u::@2: scope:[mul16u] from mul16u::@1 - [134] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [134] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [135] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 to:mul16u::@4 mul16u::@4: scope:[mul16u] from mul16u::@2 - [136] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 + [136] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 to:mul16u::@3 mul16u::@3: scope:[mul16u] from mul16u::@2 mul16u::@4 - [137] (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) - [138] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [139] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [137] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) + [138] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [139] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul16u::@1 sin16s: scope:[sin16s] from sin16s_gen2::@1 [140] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 to:sin16s::@4 sin16s::@4: scope:[sin16s] from sin16s - [141] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 + [141] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 to:sin16s::@1 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - [142] (byte) sin16s::isUpper#2 ? phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [142] (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) + [142] (byte) sin16s::isUpper#2 ← phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [142] (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) [143] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 to:sin16s::@5 sin16s::@5: scope:[sin16s] from sin16s::@1 - [144] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 + [144] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 to:sin16s::@2 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - [145] (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - [146] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [147] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 - [148] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - [149] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 + [145] (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + [146] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [147] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 + [148] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + [149] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [150] call mulu16_sel - [151] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + [151] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 to:sin16s::@7 sin16s::@7: scope:[sin16s] from sin16s::@2 - [152] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 - [153] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - [154] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 + [152] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 + [153] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + [154] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [155] call mulu16_sel - [156] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 + [156] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@7 - [157] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - [158] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + [157] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + [158] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [159] call mulu16_sel - [160] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + [160] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - [161] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - [162] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 - [163] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - [164] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 + [161] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + [162] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 + [163] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + [164] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [165] call mulu16_sel - [166] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 + [166] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - [167] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - [168] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - [169] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 + [167] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + [168] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + [169] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [170] call mulu16_sel - [171] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + [171] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - [172] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - [173] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [174] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 + [172] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + [173] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [174] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [175] if((byte) sin16s::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16s::@12 to:sin16s::@6 sin16s::@6: scope:[sin16s] from sin16s::@11 - [176] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 + [176] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 to:sin16s::@3 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - [177] (signed word) sin16s::return#1 ? phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) + [177] (signed word) sin16s::return#1 ← phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) to:sin16s::@return sin16s::@return: scope:[sin16s] from sin16s::@3 [178] return to:@return sin16s::@12: scope:[sin16s] from sin16s::@11 - [179] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + [179] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 to:sin16s::@3 mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@2 sin16s::@7 sin16s::@8 sin16s::@9 - [180] (byte) mulu16_sel::select#5 ? phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [180] (word) mulu16_sel::v2#5 ? phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) - [180] (word) mulu16_sel::v1#5 ? phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) - [181] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 - [182] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + [180] (byte) mulu16_sel::select#5 ← phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [180] (word) mulu16_sel::v2#5 ← phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) + [180] (word) mulu16_sel::v1#5 ← phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) + [181] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 + [182] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [183] call mul16u - [184] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + [184] (dword) mul16u::return#3 ← (dword) mul16u::res#2 to:mulu16_sel::@1 mulu16_sel::@1: scope:[mulu16_sel] from mulu16_sel - [185] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 - [186] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - [187] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 + [185] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 + [186] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + [187] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@1 [188] return @@ -3341,69 +3341,69 @@ mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@1 div32u16u: scope:[div32u16u] from sin16s_gen2 [189] phi() [190] call divr16u - [191] (word) divr16u::return#2 ? (word) divr16u::return#0 + [191] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div32u16u::@1 div32u16u::@1: scope:[div32u16u] from div32u16u - [192] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 - [193] (word) divr16u::rem#4 ? (word) rem16u#1 + [192] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 + [193] (word) divr16u::rem#4 ← (word) rem16u#1 [194] call divr16u - [195] (word) divr16u::return#3 ? (word) divr16u::return#0 + [195] (word) divr16u::return#3 ← (word) divr16u::return#0 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u::@1 - [196] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - [197] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 + [196] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + [197] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@2 [198] return to:@return divr16u: scope:[divr16u] from div32u16u div32u16u::@1 - [199] (word) divr16u::dividend#5 ? phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) - [199] (word) divr16u::rem#10 ? phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) + [199] (word) divr16u::dividend#5 ← phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) + [199] (word) divr16u::rem#10 ← phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [200] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [200] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [200] (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) - [200] (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - [201] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [202] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - [203] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [200] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [200] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [200] (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) + [200] (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + [201] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [202] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + [203] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [204] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [205] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [205] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [206] (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [207] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [208] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [206] (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [207] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [208] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [209] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [210] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [211] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 + [210] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [211] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [212] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [212] (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - [213] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [212] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [212] (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + [213] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [214] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [215] (word) rem16u#1 ? (word) divr16u::rem#11 + [215] (word) rem16u#1 ← (word) divr16u::rem#11 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [216] return to:@return fill: scope:[fill] from main::@3 main::@4 - [217] (byte) fill::val#3 ? phi( main::@3/(const byte) BLACK#0 main::@4/(const byte) WHITE#0|(byte/signed byte/word/signed word/dword/signed dword) 8 ) - [217] (byte*) fill::addr#0 ? phi( main::@3/(const byte*) SCREEN#0 main::@4/(const byte*) COLS#0 ) - [218] (byte*) fill::end#0 ? (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 + [217] (byte) fill::val#3 ← phi( main::@3/(const byte) BLACK#0 main::@4/(const byte) WHITE#0|(byte/signed byte/word/signed word/dword/signed dword) 8 ) + [217] (byte*) fill::addr#0 ← phi( main::@3/(const byte*) SCREEN#0 main::@4/(const byte*) COLS#0 ) + [218] (byte*) fill::end#0 ← (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 to:fill::@1 fill::@1: scope:[fill] from fill fill::@1 - [219] (byte*) fill::addr#2 ? phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) - [220] *((byte*) fill::addr#2) ? (byte) fill::val#3 - [221] (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 + [219] (byte*) fill::addr#2 ← phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) + [220] *((byte*) fill::addr#2) ← (byte) fill::val#3 + [221] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 [222] if((byte*) fill::addr#1!=(byte*) fill::end#0) goto fill::@1 to:fill::@return fill::@return: scope:[fill] from fill::@1 @@ -4056,16 +4056,16 @@ main: { .label ch = 2 //SEG12 asm { sei } sei - //SEG13 [6] *((const byte*) BORDERCOL#0) ? (const byte) WHITE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) BORDERCOL#0) ← (const byte) WHITE#0 -- _deref_pbuc1=vbuc2 lda #WHITE sta BORDERCOL - //SEG14 [7] *((const byte*) BGCOL2#0) ? (const byte) DARK_GREY#0 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) BGCOL2#0) ← (const byte) DARK_GREY#0 -- _deref_pbuc1=vbuc2 lda #DARK_GREY sta BGCOL2 - //SEG15 [8] *((const byte*) BGCOL#0) ? *((const byte*) BGCOL2#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG15 [8] *((const byte*) BGCOL#0) ← *((const byte*) BGCOL2#0) -- _deref_pbuc1=_deref_pbuc2 lda BGCOL2 sta BGCOL - //SEG16 [9] *((const byte*) BGCOL3#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG16 [9] *((const byte*) BGCOL3#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL3 //SEG17 [10] phi from main to main::toD0181 [phi:main->main::toD0181] @@ -4076,10 +4076,10 @@ main: { jmp b3 //SEG19 main::@3 b3: - //SEG20 [11] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG20 [11] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 - //SEG21 [12] *((const byte*) D016#0) ? (const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG21 [12] *((const byte*) D016#0) ← (const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM sta D016 //SEG22 [13] call fill @@ -4123,11 +4123,11 @@ main: { jmp b1 //SEG36 main::@1 b1: - //SEG37 [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ? (byte) main::ch#2 -- pbuc1_derefidx_vbuz1=vbuz1 + //SEG37 [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ← (byte) main::ch#2 -- pbuc1_derefidx_vbuz1=vbuz1 ldy ch tya sta SCREEN,y - //SEG38 [18] (byte) main::ch#1 ? ++ (byte) main::ch#2 -- vbuz1=_inc_vbuz1 + //SEG38 [18] (byte) main::ch#1 ← ++ (byte) main::ch#2 -- vbuz1=_inc_vbuz1 inc ch //SEG39 [19] if((byte) main::ch#1!=(byte/word/signed word/dword/signed dword) $f0) goto main::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$f0 @@ -4182,9 +4182,9 @@ loop: { jmp b3 //SEG56 loop::@3 b3: - //SEG57 [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG57 [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG58 [29] (signed word*~) loop::$1 ? (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 -- pwsz1=pwsc1_plus_vwuz2 + //SEG58 [29] (signed word*~) loop::$1 ← (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 -- pwsz1=pwsc1_plus_vwuz2 lda xsin_idx clc adc #xsin sta _1+1 - //SEG59 [30] (signed word) loop::xpos#0 ? *((signed word*~) loop::$1) -- vwsz1=_deref_pwsz2 + //SEG59 [30] (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) -- vwsz1=_deref_pwsz2 ldy #0 lda (_1),y sta xpos iny lda (_1),y sta xpos+1 - //SEG60 [31] (signed word) render_logo::xpos#0 ? (signed word) loop::xpos#0 -- vwsz1=vwsz2 + //SEG60 [31] (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 -- vwsz1=vwsz2 lda xpos sta render_logo.xpos lda xpos+1 @@ -4209,7 +4209,7 @@ loop: { jmp b5 //SEG62 loop::@5 b5: - //SEG63 [33] (word) xsin_idx#3 ? (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vwuz1=vwuz1_plus_2 + //SEG63 [33] (word) xsin_idx#3 ← (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vwuz1=vwuz1_plus_2 lda xsin_idx clc adc #2 @@ -4234,7 +4234,7 @@ loop: { jmp b4 //SEG67 loop::@4 b4: - //SEG68 [36] *((const byte*) BORDERCOL#0) ? -- *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_dec__deref_pbuc1 + //SEG68 [36] *((const byte*) BORDERCOL#0) ← -- *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_dec__deref_pbuc1 dec BORDERCOL //SEG69 [26] phi from loop::@4 to loop::@1 [phi:loop::@4->loop::@1] b1_from_b4: @@ -4281,21 +4281,21 @@ render_logo: { .label _92 = $4e .label _96 = $4f .label logo_idx_14 = 7 - //SEG76 [38] (byte~) render_logo::$0 ? ((byte)) (signed word) render_logo::xpos#0 -- vbuz1=_byte_vwsz2 + //SEG76 [38] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 -- vbuz1=_byte_vwsz2 lda xpos sta _0 - //SEG77 [39] (byte~) render_logo::$1 ? (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG77 [39] (byte~) render_logo::$1 ← (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and _0 sta _1 - //SEG78 [40] (byte~) render_logo::$2 ? (const byte) VIC_MCM#0 | (byte~) render_logo::$1 -- vbuz1=vbuc1_bor_vbuz2 + //SEG78 [40] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 -- vbuz1=vbuc1_bor_vbuz2 lda #VIC_MCM ora _1 sta _2 - //SEG79 [41] *((const byte*) D016#0) ? (byte~) render_logo::$2 -- _deref_pbuc1=vbuz1 + //SEG79 [41] *((const byte*) D016#0) ← (byte~) render_logo::$2 -- _deref_pbuc1=vbuz1 lda _2 sta D016 - //SEG80 [42] (signed word~) render_logo::$3 ? (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwsz1=vwsz2_ror_3 + //SEG80 [42] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwsz1=vwsz2_ror_3 lda xpos+1 cmp #$80 ror @@ -4311,7 +4311,7 @@ render_logo: { cmp #$80 ror _3+1 ror _3 - //SEG81 [43] (signed byte) render_logo::x_char#0 ? ((signed byte)) (signed word~) render_logo::$3 -- vbsz1=_sbyte_vwsz2 + //SEG81 [43] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 -- vbsz1=_sbyte_vwsz2 lda _3 sta x_char //SEG82 [44] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 -- vwsz1_lt_0_then_la1 @@ -4349,74 +4349,74 @@ render_logo: { rts //SEG94 render_logo::@6 b6: - //SEG95 [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuz2_plus_0 + //SEG95 [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuz2_plus_0 lda logo_idx sta _15 - //SEG96 [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$15 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG96 [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$15 -- pbuc1_derefidx_vbuz1=vbuz2 lda _15 ldy screen_idx sta SCREEN,y jmp b15_1 //SEG97 render_logo::@15_1 b15_1: - //SEG98 [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_vbuc1 + //SEG98 [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx axs #-[$28*1] stx _34 - //SEG99 [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$34 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG99 [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$34 -- pbuc1_derefidx_vbuz1=vbuz2 lda _34 ldy screen_idx sta SCREEN+$28*1,y jmp b15_2 //SEG100 render_logo::@15_2 b15_2: - //SEG101 [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_plus_vbuc1 + //SEG101 [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx axs #-[$28*2] stx _38 - //SEG102 [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$38 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG102 [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$38 -- pbuc1_derefidx_vbuz1=vbuz2 lda _38 ldy screen_idx sta SCREEN+$28*2,y jmp b15_3 //SEG103 render_logo::@15_3 b15_3: - //SEG104 [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 + //SEG104 [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx axs #-[$28*3] stx _42 - //SEG105 [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$42 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG105 [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$42 -- pbuc1_derefidx_vbuz1=vbuz2 lda _42 ldy screen_idx sta SCREEN+$28*3,y jmp b15_4 //SEG106 render_logo::@15_4 b15_4: - //SEG107 [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_plus_vbuc1 + //SEG107 [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx axs #-[$28*4] stx _46 - //SEG108 [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$46 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG108 [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$46 -- pbuc1_derefidx_vbuz1=vbuz2 lda _46 ldy screen_idx sta SCREEN+$28*4,y jmp b15_5 //SEG109 render_logo::@15_5 b15_5: - //SEG110 [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuz1=vbuz2_plus_vbuc1 + //SEG110 [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx axs #-[$28*5] stx _50 - //SEG111 [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$50 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG111 [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$50 -- pbuc1_derefidx_vbuz1=vbuz2 lda _50 ldy screen_idx sta SCREEN+$28*5,y jmp b7 //SEG112 render_logo::@7 b7: - //SEG113 [62] (byte) render_logo::screen_idx#4 ? ++ (byte) render_logo::screen_idx#10 -- vbuz1=_inc_vbuz1 + //SEG113 [62] (byte) render_logo::screen_idx#4 ← ++ (byte) render_logo::screen_idx#10 -- vbuz1=_inc_vbuz1 inc screen_idx - //SEG114 [63] (byte) render_logo::logo_idx#3 ? ++ (byte) render_logo::logo_idx#10 -- vbuz1=_inc_vbuz1 + //SEG114 [63] (byte) render_logo::logo_idx#3 ← ++ (byte) render_logo::logo_idx#10 -- vbuz1=_inc_vbuz1 inc logo_idx //SEG115 [47] phi from render_logo::@7 to render_logo::@5 [phi:render_logo::@7->render_logo::@5] b5_from_b7: @@ -4425,49 +4425,49 @@ render_logo: { jmp b5 //SEG118 render_logo::@3 b3: - //SEG119 [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG119 [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx sta SCREEN,y jmp b7_1 //SEG120 render_logo::@7_1 b7_1: - //SEG121 [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG121 [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx sta SCREEN+$28*1,y jmp b7_2 //SEG122 render_logo::@7_2 b7_2: - //SEG123 [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG123 [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx sta SCREEN+$28*2,y jmp b7_3 //SEG124 render_logo::@7_3 b7_3: - //SEG125 [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG125 [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx sta SCREEN+$28*3,y jmp b7_4 //SEG126 render_logo::@7_4 b7_4: - //SEG127 [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG127 [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx sta SCREEN+$28*4,y jmp b7_5 //SEG128 render_logo::@7_5 b7_5: - //SEG129 [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG129 [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx sta SCREEN+$28*5,y jmp b4 //SEG130 render_logo::@4 b4: - //SEG131 [70] (byte) render_logo::screen_idx#3 ? ++ (byte) render_logo::screen_idx#18 -- vbuz1=_inc_vbuz1 + //SEG131 [70] (byte) render_logo::screen_idx#3 ← ++ (byte) render_logo::screen_idx#18 -- vbuz1=_inc_vbuz1 inc screen_idx //SEG132 [45] phi from render_logo::@4 to render_logo::@2 [phi:render_logo::@4->render_logo::@2] b2_from_b4: @@ -4475,13 +4475,13 @@ render_logo: { jmp b2 //SEG134 render_logo::@1 b1: - //SEG135 [71] (signed byte~) render_logo::$17 ? - (signed byte) render_logo::x_char#0 -- vbsz1=_neg_vbsz2 + //SEG135 [71] (signed byte~) render_logo::$17 ← - (signed byte) render_logo::x_char#0 -- vbsz1=_neg_vbsz2 lda x_char eor #$ff clc adc #1 sta _17 - //SEG136 [72] (byte~) render_logo::logo_idx#14 ? (byte)(signed byte~) render_logo::$17 -- vbuz1=vbuz2 + //SEG136 [72] (byte~) render_logo::logo_idx#14 ← (byte)(signed byte~) render_logo::$17 -- vbuz1=vbuz2 lda _17 sta logo_idx_14 //SEG137 [73] phi from render_logo::@1 to render_logo::@8 [phi:render_logo::@1->render_logo::@8] @@ -4511,121 +4511,121 @@ render_logo: { jmp breturn //SEG146 render_logo::@12 b12: - //SEG147 [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG147 [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx_15 sta SCREEN,y jmp b32_1 //SEG148 render_logo::@32_1 b32_1: - //SEG149 [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG149 [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx_15 sta SCREEN+$28*1,y jmp b32_2 //SEG150 render_logo::@32_2 b32_2: - //SEG151 [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG151 [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx_15 sta SCREEN+$28*2,y jmp b32_3 //SEG152 render_logo::@32_3 b32_3: - //SEG153 [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG153 [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx_15 sta SCREEN+$28*3,y jmp b32_4 //SEG154 render_logo::@32_4 b32_4: - //SEG155 [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG155 [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx_15 sta SCREEN+$28*4,y jmp b32_5 //SEG156 render_logo::@32_5 b32_5: - //SEG157 [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG157 [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #0 ldy screen_idx_15 sta SCREEN+$28*5,y jmp b13 //SEG158 render_logo::@13 b13: - //SEG159 [83] (byte) render_logo::screen_idx#6 ? ++ (byte) render_logo::screen_idx#15 -- vbuz1=_inc_vbuz1 + //SEG159 [83] (byte) render_logo::screen_idx#6 ← ++ (byte) render_logo::screen_idx#15 -- vbuz1=_inc_vbuz1 inc screen_idx_6 jmp b11_from_b13 //SEG160 render_logo::@9 b9: - //SEG161 [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuz2_plus_0 + //SEG161 [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuz1=vbuz2_plus_0 lda logo_idx_11 sta _23 - //SEG162 [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$23 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG162 [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$23 -- pbuc1_derefidx_vbuz1=vbuz2 lda _23 ldy screen_idx_21 sta SCREEN,y jmp b24_1 //SEG163 render_logo::@24_1 b24_1: - //SEG164 [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_vbuc1 + //SEG164 [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx_11 axs #-[$28*1] stx _80 - //SEG165 [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$80 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG165 [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$80 -- pbuc1_derefidx_vbuz1=vbuz2 lda _80 ldy screen_idx_21 sta SCREEN+$28*1,y jmp b24_2 //SEG166 render_logo::@24_2 b24_2: - //SEG167 [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_plus_vbuc1 + //SEG167 [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx_11 axs #-[$28*2] stx _84 - //SEG168 [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$84 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG168 [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$84 -- pbuc1_derefidx_vbuz1=vbuz2 lda _84 ldy screen_idx_21 sta SCREEN+$28*2,y jmp b24_3 //SEG169 render_logo::@24_3 b24_3: - //SEG170 [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 + //SEG170 [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx_11 axs #-[$28*3] stx _88 - //SEG171 [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$88 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG171 [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$88 -- pbuc1_derefidx_vbuz1=vbuz2 lda _88 ldy screen_idx_21 sta SCREEN+$28*3,y jmp b24_4 //SEG172 render_logo::@24_4 b24_4: - //SEG173 [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_plus_vbuc1 + //SEG173 [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx_11 axs #-[$28*4] stx _92 - //SEG174 [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$92 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG174 [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$92 -- pbuc1_derefidx_vbuz1=vbuz2 lda _92 ldy screen_idx_21 sta SCREEN+$28*4,y jmp b24_5 //SEG175 render_logo::@24_5 b24_5: - //SEG176 [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuz1=vbuz2_plus_vbuc1 + //SEG176 [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuz1=vbuz2_plus_vbuc1 lax logo_idx_11 axs #-[$28*5] stx _96 - //SEG177 [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$96 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG177 [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$96 -- pbuc1_derefidx_vbuz1=vbuz2 lda _96 ldy screen_idx_21 sta SCREEN+$28*5,y jmp b10 //SEG178 render_logo::@10 b10: - //SEG179 [96] (byte) render_logo::screen_idx#5 ? ++ (byte) render_logo::screen_idx#21 -- vbuz1=_inc_vbuz1 + //SEG179 [96] (byte) render_logo::screen_idx#5 ← ++ (byte) render_logo::screen_idx#21 -- vbuz1=_inc_vbuz1 inc screen_idx_5 - //SEG180 [97] (byte) render_logo::logo_idx#4 ? ++ (byte) render_logo::logo_idx#11 -- vbuz1=_inc_vbuz1 + //SEG180 [97] (byte) render_logo::logo_idx#4 ← ++ (byte) render_logo::logo_idx#11 -- vbuz1=_inc_vbuz1 inc logo_idx_4 //SEG181 [73] phi from render_logo::@10 to render_logo::@8 [phi:render_logo::@10->render_logo::@8] b8_from_b10: @@ -4654,7 +4654,7 @@ sin16s_gen2: { //SEG186 [189] phi from sin16s_gen2 to div32u16u [phi:sin16s_gen2->div32u16u] div32u16u_from_sin16s_gen2: jsr div32u16u - //SEG187 [100] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 -- vduz1=vduz2 + //SEG187 [100] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 -- vduz1=vduz2 lda div32u16u.return sta div32u16u.return_2 lda div32u16u.return+1 @@ -4666,7 +4666,7 @@ sin16s_gen2: { jmp b2 //SEG188 sin16s_gen2::@2 b2: - //SEG189 [101] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 -- vduz1=vduz2 + //SEG189 [101] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 -- vduz1=vduz2 lda div32u16u.return_2 sta step lda div32u16u.return_2+1 @@ -4704,7 +4704,7 @@ sin16s_gen2: { jmp b1 //SEG198 sin16s_gen2::@1 b1: - //SEG199 [103] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 -- vduz1=vduz2 + //SEG199 [103] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -4715,7 +4715,7 @@ sin16s_gen2: { sta sin16s.x+3 //SEG200 [104] call sin16s jsr sin16s - //SEG201 [105] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 -- vwsz1=vwsz2 + //SEG201 [105] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 -- vwsz1=vwsz2 lda sin16s.return_1 sta sin16s.return lda sin16s.return_1+1 @@ -4723,14 +4723,14 @@ sin16s_gen2: { jmp b3 //SEG202 sin16s_gen2::@3 b3: - //SEG203 [106] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 -- vwsz1=vwsz2 + //SEG203 [106] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 -- vwsz1=vwsz2 lda sin16s.return sta mul16s.a lda sin16s.return+1 sta mul16s.a+1 //SEG204 [107] call mul16s jsr mul16s - //SEG205 [108] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 -- vdsz1=vdsz2 + //SEG205 [108] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 -- vdsz1=vdsz2 lda mul16s.return sta mul16s.return_2 lda mul16s.return+1 @@ -4742,7 +4742,7 @@ sin16s_gen2: { jmp b4 //SEG206 sin16s_gen2::@4 b4: - //SEG207 [109] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 -- vdsz1=vdsz2 + //SEG207 [109] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 -- vdsz1=vdsz2 lda mul16s.return_2 sta _5 lda mul16s.return_2+1 @@ -4751,12 +4751,12 @@ sin16s_gen2: { sta _5+2 lda mul16s.return_2+3 sta _5+3 - //SEG208 [110] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 + //SEG208 [110] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 lda _5+2 sta _6 lda _5+3 sta _6+1 - //SEG209 [111] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz2 + //SEG209 [111] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz2 lda _6 clc adc #offs sta _8+1 - //SEG210 [112] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 + //SEG210 [112] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 ldy #0 lda _8 sta (sintab),y iny lda _8+1 sta (sintab),y - //SEG211 [113] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG211 [113] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -4779,7 +4779,7 @@ sin16s_gen2: { bcc !+ inc sintab+1 !: - //SEG212 [114] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG212 [114] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -4793,7 +4793,7 @@ sin16s_gen2: { lda x+3 adc step+3 sta x+3 - //SEG213 [115] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 + //SEG213 [115] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4824,7 +4824,7 @@ mul16s: { .label return = $70 .label a = $5a .label return_2 = $5c - //SEG218 [118] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG218 [118] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -4839,7 +4839,7 @@ mul16s: { lda #>sin16s_gen2.ampl sta mul16u.b+1 jsr mul16u - //SEG223 [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG223 [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return lda mul16u.res+1 @@ -4851,7 +4851,7 @@ mul16s: { jmp b4 //SEG224 mul16s::@4 b4: - //SEG225 [121] (dword) mul16s::m#0 ? (dword) mul16u::return#2 -- vduz1=vduz2 + //SEG225 [121] (dword) mul16s::m#0 ← (dword) mul16u::return#2 -- vduz1=vduz2 lda mul16u.return sta m lda mul16u.return+1 @@ -4866,12 +4866,12 @@ mul16s: { jmp b3 //SEG227 mul16s::@3 b3: - //SEG228 [123] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG228 [123] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG229 [124] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz2_minus_vwuc1 + //SEG229 [124] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz2_minus_vwuc1 lda _9 sec sbc #sin16s_gen2.ampl sta _16+1 - //SEG230 [125] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG230 [125] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -4894,7 +4894,7 @@ mul16s: { jmp b2 //SEG234 mul16s::@2 b2: - //SEG235 [127] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz2 + //SEG235 [127] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz2 lda m sta return lda m+1 @@ -4920,7 +4920,7 @@ mul16u: { .label return = $68 .label b = $15 .label return_3 = $95 - //SEG239 [130] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG239 [130] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -4954,7 +4954,7 @@ mul16u: { rts //SEG248 mul16u::@2 b2: - //SEG249 [134] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 + //SEG249 [134] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 lda a and #1 sta _1 @@ -4965,7 +4965,7 @@ mul16u: { jmp b4 //SEG251 mul16u::@4 b4: - //SEG252 [136] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG252 [136] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -4986,11 +4986,11 @@ mul16u: { jmp b3 //SEG255 mul16u::@3 b3: - //SEG256 [138] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG256 [138] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG257 [139] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG257 [139] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -5044,7 +5044,7 @@ sin16s: { jmp b4 //SEG264 sin16s::@4 b4: - //SEG265 [141] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG265 [141] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG280 [147] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG281 [148] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG281 [148] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG282 [149] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG282 [149] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -5156,7 +5156,7 @@ sin16s: { //SEG286 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG287 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG288 [151] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG288 [151] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return lda mulu16_sel.return_12+1 @@ -5164,17 +5164,17 @@ sin16s: { jmp b7 //SEG289 sin16s::@7 b7: - //SEG290 [152] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG290 [152] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG291 [153] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 -- vwuz1=vwuz2 + //SEG291 [153] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 -- vwuz1=vwuz2 lda x2 sta mulu16_sel.v1 lda x2+1 sta mulu16_sel.v1+1 - //SEG292 [154] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG292 [154] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -5188,7 +5188,7 @@ sin16s: { //SEG296 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG297 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG298 [156] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG298 [156] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_1 lda mulu16_sel.return_12+1 @@ -5196,12 +5196,12 @@ sin16s: { jmp b8 //SEG299 sin16s::@8 b8: - //SEG300 [157] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 -- vwuz1=vwuz2 + //SEG300 [157] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 -- vwuz1=vwuz2 lda mulu16_sel.return_1 sta x3 lda mulu16_sel.return_1+1 sta x3+1 - //SEG301 [158] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG301 [158] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 @@ -5219,7 +5219,7 @@ sin16s: { sta mulu16_sel.v2+1 //SEG306 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG307 [160] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG307 [160] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_2 lda mulu16_sel.return_12+1 @@ -5227,12 +5227,12 @@ sin16s: { jmp b9 //SEG308 sin16s::@9 b9: - //SEG309 [161] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 -- vwuz1=vwuz2 + //SEG309 [161] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 -- vwuz1=vwuz2 lda mulu16_sel.return_2 sta x3_6 lda mulu16_sel.return_2+1 sta x3_6+1 - //SEG310 [162] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG310 [162] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -5240,12 +5240,12 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG311 [163] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG311 [163] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 sta mulu16_sel.v1+1 - //SEG312 [164] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG312 [164] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -5259,7 +5259,7 @@ sin16s: { //SEG316 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG317 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG318 [166] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG318 [166] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_10 lda mulu16_sel.return_12+1 @@ -5267,17 +5267,17 @@ sin16s: { jmp b10 //SEG319 sin16s::@10 b10: - //SEG320 [167] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 -- vwuz1=vwuz2 + //SEG320 [167] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 -- vwuz1=vwuz2 lda mulu16_sel.return_10 sta x4 lda mulu16_sel.return_10+1 sta x4+1 - //SEG321 [168] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 -- vwuz1=vwuz2 + //SEG321 [168] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 -- vwuz1=vwuz2 lda x4 sta mulu16_sel.v1 lda x4+1 sta mulu16_sel.v1+1 - //SEG322 [169] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG322 [169] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -5291,7 +5291,7 @@ sin16s: { //SEG326 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG327 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG328 [171] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG328 [171] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_11 lda mulu16_sel.return_12+1 @@ -5299,12 +5299,12 @@ sin16s: { jmp b11 //SEG329 sin16s::@11 b11: - //SEG330 [172] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 -- vwuz1=vwuz2 + //SEG330 [172] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 -- vwuz1=vwuz2 lda mulu16_sel.return_11 sta x5 lda mulu16_sel.return_11+1 sta x5+1 - //SEG331 [173] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 + //SEG331 [173] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 lda x5+1 sta x5_128+1 lda x5 @@ -5315,7 +5315,7 @@ sin16s: { ror x5_128 dey bne !- - //SEG332 [174] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG332 [174] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 lda usinx clc adc x5_128 @@ -5330,7 +5330,7 @@ sin16s: { jmp b6 //SEG334 sin16s::@6 b6: - //SEG335 [176] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 + //SEG335 [176] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 sec lda usinx_1 eor #$ff @@ -5354,7 +5354,7 @@ sin16s: { rts //SEG341 sin16s::@12 b12: - //SEG342 [179] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 + //SEG342 [179] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 lda usinx_1 sta return_5 lda usinx_1+1 @@ -5377,12 +5377,12 @@ mulu16_sel: { .label return_11 = $8d .label select = $2c .label return_12 = $a1 - //SEG344 [181] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG344 [181] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG345 [182] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 + //SEG345 [182] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 lda v2 sta mul16u.b lda v2+1 @@ -5393,7 +5393,7 @@ mulu16_sel: { //SEG348 [129] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mulu16_sel->mul16u#0] -- register_copy //SEG349 [129] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mulu16_sel->mul16u#1] -- register_copy jsr mul16u - //SEG350 [184] (dword) mul16u::return#3 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG350 [184] (dword) mul16u::return#3 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return_3 lda mul16u.res+1 @@ -5405,7 +5405,7 @@ mulu16_sel: { jmp b1 //SEG351 mulu16_sel::@1 b1: - //SEG352 [185] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 -- vduz1=vduz2 + //SEG352 [185] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 -- vduz1=vduz2 lda mul16u.return_3 sta _0 lda mul16u.return_3+1 @@ -5414,7 +5414,7 @@ mulu16_sel: { sta _0+2 lda mul16u.return_3+3 sta _0+3 - //SEG353 [186] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 + //SEG353 [186] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -5433,7 +5433,7 @@ mulu16_sel: { dex bne !- !e: - //SEG354 [187] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG354 [187] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return_12 lda _1+3 @@ -5466,7 +5466,7 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG362 [191] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG362 [191] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -5474,12 +5474,12 @@ div32u16u: { jmp b1 //SEG363 div32u16u::@1 b1: - //SEG364 [192] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG364 [192] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta quotient_hi lda divr16u.return_2+1 sta quotient_hi+1 - //SEG365 [193] (word) divr16u::rem#4 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG365 [193] (word) divr16u::rem#4 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta divr16u.rem lda rem16u+1 @@ -5494,7 +5494,7 @@ div32u16u: { sta divr16u.dividend+1 //SEG369 [199] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG370 [195] (word) divr16u::return#3 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG370 [195] (word) divr16u::return#3 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_3 lda divr16u.return+1 @@ -5502,12 +5502,12 @@ div32u16u: { jmp b2 //SEG371 div32u16u::@2 b2: - //SEG372 [196] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG372 [196] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return_3 sta quotient_lo lda divr16u.return_3+1 sta quotient_lo+1 - //SEG373 [197] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG373 [197] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -5560,13 +5560,13 @@ divr16u: { jmp b1 //SEG387 divr16u::@1 b1: - //SEG388 [201] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG388 [201] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG389 [202] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 + //SEG389 [202] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG390 [203] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG390 [203] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -5577,7 +5577,7 @@ divr16u: { jmp b4 //SEG392 divr16u::@4 b4: - //SEG393 [205] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG393 [205] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -5588,10 +5588,10 @@ divr16u: { jmp b2 //SEG396 divr16u::@2 b2: - //SEG397 [207] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG397 [207] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG398 [208] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG398 [208] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG399 [209] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -5606,12 +5606,12 @@ divr16u: { jmp b5 //SEG400 divr16u::@5 b5: - //SEG401 [210] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG401 [210] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG402 [211] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG402 [211] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #> (byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::xpos#0 render_logo::$3 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$3 ] ) always clobbers reg byte a -Statement [43] (signed byte) render_logo::x_char#0 ? ((signed byte)) (signed word~) render_logo::$3 [ render_logo::xpos#0 render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::x_char#0 ] ) always clobbers reg byte a +Statement [38] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 [ render_logo::xpos#0 render_logo::$0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$0 ] ) always clobbers reg byte a +Statement [40] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 [ render_logo::xpos#0 render_logo::$2 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$2 ] ) always clobbers reg byte a +Statement [42] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::xpos#0 render_logo::$3 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$3 ] ) always clobbers reg byte a +Statement [43] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 [ render_logo::xpos#0 render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::x_char#0 ] ) always clobbers reg byte a Statement [44] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 [ render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:66 [ render_logo::x_char#0 ] -Statement [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ render_logo::screen_idx#10 render_logo::screen_idx#4 render_logo::screen_idx#18 render_logo::screen_idx#3 ] -Statement [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [71] (signed byte~) render_logo::$17 ? - (signed byte) render_logo::x_char#0 [ render_logo::$17 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::$17 ] ) always clobbers reg byte a -Statement [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [71] (signed byte~) render_logo::$17 ← - (signed byte) render_logo::x_char#0 [ render_logo::$17 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::$17 ] ) always clobbers reg byte a +Statement [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ render_logo::screen_idx#15 render_logo::screen_idx#21 render_logo::screen_idx#5 render_logo::screen_idx#6 ] -Statement [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [100] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [101] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a -Statement [103] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [105] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [106] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a -Statement [108] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a -Statement [109] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a -Statement [110] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a -Statement [111] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a -Statement [112] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y -Statement [113] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a -Statement [114] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [100] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [101] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a +Statement [103] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [105] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [106] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a +Statement [108] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a +Statement [109] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a +Statement [110] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a +Statement [111] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a +Statement [112] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y +Statement [113] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [114] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a Statement [116] if((word) sin16s_gen2::i#1<(const word) XSIN_SIZE#0) goto sin16s_gen2::@1 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ) always clobbers reg byte a -Statement [118] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a -Statement [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a -Statement [121] (dword) mul16s::m#0 ? (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a +Statement [118] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a +Statement [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a +Statement [121] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a Statement [122] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 ] ) always clobbers reg byte a -Statement [123] (word~) mul16s::$9 ? > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a -Statement [124] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a -Statement [125] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a -Statement [127] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a -Statement [130] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [123] (word~) mul16s::$9 ← > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a +Statement [124] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a +Statement [125] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a +Statement [127] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a +Statement [130] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ sin16s::isUpper#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:44 [ mulu16_sel::select#5 ] Statement [132] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [134] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [136] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [134] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [136] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a Statement [140] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [141] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [141] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [143] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [144] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [146] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [144] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [146] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:33 [ sin16s::isUpper#2 ] -Statement [147] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [148] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [149] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [151] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [152] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [153] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [154] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [156] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [157] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [158] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [160] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [161] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [162] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [163] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [164] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [166] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [167] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [168] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [169] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [171] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [172] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [173] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [174] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [176] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [179] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [181] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [182] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [184] (dword) mul16u::return#3 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a -Statement [185] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [186] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [187] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [191] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [192] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [193] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [195] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [196] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [197] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [202] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [147] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [148] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [149] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [151] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [152] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [153] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [154] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [156] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [157] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [158] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [160] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [161] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [162] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [163] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [164] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [166] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [167] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [168] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [169] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [171] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [172] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [173] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [174] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [176] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [179] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [181] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [182] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [184] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a +Statement [185] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [186] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [187] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [191] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [192] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [193] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [195] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [196] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [197] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [202] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:51 [ divr16u::i#2 divr16u::i#1 ] -Statement [205] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [205] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [209] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [211] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [215] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [218] (byte*) fill::end#0 ? (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 [ fill::addr#0 fill::val#3 fill::end#0 ] ( main:3::fill:13 [ fill::addr#0 fill::val#3 fill::end#0 ] main:3::fill:15 [ fill::addr#0 fill::val#3 fill::end#0 ] ) always clobbers reg byte a +Statement [211] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [215] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [218] (byte*) fill::end#0 ← (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 [ fill::addr#0 fill::val#3 fill::end#0 ] ( main:3::fill:13 [ fill::addr#0 fill::val#3 fill::end#0 ] main:3::fill:15 [ fill::addr#0 fill::val#3 fill::end#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ fill::val#3 ] -Statement [220] *((byte*) fill::addr#2) ? (byte) fill::val#3 [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#2 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#2 ] ) always clobbers reg byte a reg byte y +Statement [220] *((byte*) fill::addr#2) ← (byte) fill::val#3 [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#2 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:52 [ fill::val#3 ] Statement [222] if((byte*) fill::addr#1!=(byte*) fill::end#0) goto fill::@1 [ fill::val#3 fill::end#0 fill::addr#1 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#1 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#1 ] ) always clobbers reg byte a -Statement [6] *((const byte*) BORDERCOL#0) ? (const byte) WHITE#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) BGCOL2#0) ? (const byte) DARK_GREY#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [8] *((const byte*) BGCOL#0) ? *((const byte*) BGCOL2#0) [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [9] *((const byte*) BGCOL3#0) ? (const byte) BLACK#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [11] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [12] *((const byte*) D016#0) ? (const byte) VIC_MCM#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) BORDERCOL#0) ← (const byte) WHITE#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) BGCOL2#0) ← (const byte) DARK_GREY#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [8] *((const byte*) BGCOL#0) ← *((const byte*) BGCOL2#0) [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [9] *((const byte*) BGCOL3#0) ← (const byte) BLACK#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [11] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [12] *((const byte*) D016#0) ← (const byte) VIC_MCM#0 [ ] ( main:3 [ ] ) always clobbers reg byte a Statement [27] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto loop::@2 [ xsin_idx#11 ] ( main:3::loop:23 [ xsin_idx#11 ] ) always clobbers reg byte a -Statement [29] (signed word*~) loop::$1 ? (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 [ xsin_idx#11 loop::$1 ] ( main:3::loop:23 [ xsin_idx#11 loop::$1 ] ) always clobbers reg byte a -Statement [30] (signed word) loop::xpos#0 ? *((signed word*~) loop::$1) [ xsin_idx#11 loop::xpos#0 ] ( main:3::loop:23 [ xsin_idx#11 loop::xpos#0 ] ) always clobbers reg byte a reg byte y -Statement [31] (signed word) render_logo::xpos#0 ? (signed word) loop::xpos#0 [ xsin_idx#11 render_logo::xpos#0 ] ( main:3::loop:23 [ xsin_idx#11 render_logo::xpos#0 ] ) always clobbers reg byte a -Statement [33] (word) xsin_idx#3 ? (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ xsin_idx#3 ] ( main:3::loop:23 [ xsin_idx#3 ] ) always clobbers reg byte a +Statement [29] (signed word*~) loop::$1 ← (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 [ xsin_idx#11 loop::$1 ] ( main:3::loop:23 [ xsin_idx#11 loop::$1 ] ) always clobbers reg byte a +Statement [30] (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) [ xsin_idx#11 loop::xpos#0 ] ( main:3::loop:23 [ xsin_idx#11 loop::xpos#0 ] ) always clobbers reg byte a reg byte y +Statement [31] (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 [ xsin_idx#11 render_logo::xpos#0 ] ( main:3::loop:23 [ xsin_idx#11 render_logo::xpos#0 ] ) always clobbers reg byte a +Statement [33] (word) xsin_idx#3 ← (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ xsin_idx#3 ] ( main:3::loop:23 [ xsin_idx#3 ] ) always clobbers reg byte a Statement [34] if((word) xsin_idx#3!=(const word) XSIN_SIZE#0*(byte/signed byte/word/signed word/dword/signed dword) 2) goto loop::@6 [ xsin_idx#3 ] ( main:3::loop:23 [ xsin_idx#3 ] ) always clobbers reg byte a -Statement [38] (byte~) render_logo::$0 ? ((byte)) (signed word) render_logo::xpos#0 [ render_logo::xpos#0 render_logo::$0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$0 ] ) always clobbers reg byte a -Statement [40] (byte~) render_logo::$2 ? (const byte) VIC_MCM#0 | (byte~) render_logo::$1 [ render_logo::xpos#0 render_logo::$2 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$2 ] ) always clobbers reg byte a -Statement [42] (signed word~) render_logo::$3 ? (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::xpos#0 render_logo::$3 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$3 ] ) always clobbers reg byte a -Statement [43] (signed byte) render_logo::x_char#0 ? ((signed byte)) (signed word~) render_logo::$3 [ render_logo::xpos#0 render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::x_char#0 ] ) always clobbers reg byte a +Statement [38] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 [ render_logo::xpos#0 render_logo::$0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$0 ] ) always clobbers reg byte a +Statement [40] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 [ render_logo::xpos#0 render_logo::$2 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$2 ] ) always clobbers reg byte a +Statement [42] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ render_logo::xpos#0 render_logo::$3 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::$3 ] ) always clobbers reg byte a +Statement [43] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 [ render_logo::xpos#0 render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::xpos#0 render_logo::x_char#0 ] ) always clobbers reg byte a Statement [44] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 [ render_logo::x_char#0 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 ] ) always clobbers reg byte a -Statement [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a -Statement [71] (signed byte~) render_logo::$17 ? - (signed byte) render_logo::x_char#0 [ render_logo::$17 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::$17 ] ) always clobbers reg byte a -Statement [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a -Statement [100] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [101] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a -Statement [103] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [105] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [106] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a -Statement [108] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a -Statement [109] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a -Statement [110] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a -Statement [111] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a -Statement [112] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y -Statement [113] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a -Statement [114] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::x_char#0 render_logo::screen_idx#18 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::x_char#0 render_logo::screen_idx#18 ] ) always clobbers reg byte a +Statement [71] (signed byte~) render_logo::$17 ← - (signed byte) render_logo::x_char#0 [ render_logo::$17 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::$17 ] ) always clobbers reg byte a +Statement [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ render_logo::screen_idx#15 ] ( main:3::loop:23::render_logo:32 [ xsin_idx#11 render_logo::screen_idx#15 ] ) always clobbers reg byte a +Statement [100] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [101] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a +Statement [103] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [105] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [106] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a +Statement [108] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a +Statement [109] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a +Statement [110] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a +Statement [111] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a +Statement [112] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y +Statement [113] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [114] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a Statement [116] if((word) sin16s_gen2::i#1<(const word) XSIN_SIZE#0) goto sin16s_gen2::@1 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ) always clobbers reg byte a -Statement [118] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a -Statement [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a -Statement [121] (dword) mul16s::m#0 ? (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a +Statement [118] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a +Statement [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a +Statement [121] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a Statement [122] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 ] ) always clobbers reg byte a -Statement [123] (word~) mul16s::$9 ? > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a -Statement [124] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a -Statement [125] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a -Statement [127] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a -Statement [130] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [123] (word~) mul16s::$9 ← > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a +Statement [124] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a +Statement [125] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a +Statement [127] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:107 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a +Statement [130] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a Statement [132] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [134] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [136] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [134] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [136] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:107::mul16u:119 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170::mul16u:183 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a Statement [140] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [141] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [141] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [143] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [144] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [146] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y -Statement [147] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [148] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [149] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [151] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [152] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [153] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [154] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [156] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [157] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [158] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [160] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [161] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [162] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [163] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [164] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [166] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [167] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [168] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [169] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [171] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [172] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [173] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [174] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [176] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [179] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [181] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [182] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [184] (dword) mul16u::return#3 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a -Statement [185] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [186] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [187] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [191] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [192] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [193] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [195] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [196] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [197] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [202] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [205] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [144] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [146] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [147] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [148] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [149] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [151] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [152] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [153] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [154] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [156] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [157] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [158] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [160] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [161] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [162] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [163] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [164] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [166] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [167] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [168] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [169] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [171] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [172] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [173] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [174] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [176] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [179] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:104 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [181] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [182] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [184] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a +Statement [185] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [186] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [187] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:150 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:159 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:165 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:104::mulu16_sel:170 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [191] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [192] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [193] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [195] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [196] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [197] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:99 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [202] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [205] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [209] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [211] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [215] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [218] (byte*) fill::end#0 ? (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 [ fill::addr#0 fill::val#3 fill::end#0 ] ( main:3::fill:13 [ fill::addr#0 fill::val#3 fill::end#0 ] main:3::fill:15 [ fill::addr#0 fill::val#3 fill::end#0 ] ) always clobbers reg byte a -Statement [220] *((byte*) fill::addr#2) ? (byte) fill::val#3 [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#2 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#2 ] ) always clobbers reg byte a reg byte y +Statement [211] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [215] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:99::divr16u:190 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:99::divr16u:194 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [218] (byte*) fill::end#0 ← (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 [ fill::addr#0 fill::val#3 fill::end#0 ] ( main:3::fill:13 [ fill::addr#0 fill::val#3 fill::end#0 ] main:3::fill:15 [ fill::addr#0 fill::val#3 fill::end#0 ] ) always clobbers reg byte a +Statement [220] *((byte*) fill::addr#2) ← (byte) fill::val#3 [ fill::val#3 fill::end#0 fill::addr#2 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#2 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#2 ] ) always clobbers reg byte a reg byte y Statement [222] if((byte*) fill::addr#1!=(byte*) fill::end#0) goto fill::@1 [ fill::val#3 fill::end#0 fill::addr#1 ] ( main:3::fill:13 [ fill::val#3 fill::end#0 fill::addr#1 ] main:3::fill:15 [ fill::val#3 fill::end#0 fill::addr#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ main::ch#2 main::ch#1 ] : zp ZP_BYTE:2 , reg byte a , reg byte x , reg byte y , Potential registers zp ZP_WORD:3 [ xsin_idx#11 xsin_idx#19 xsin_idx#3 ] : zp ZP_WORD:3 , @@ -6198,16 +6198,16 @@ main: { .const toD0181_return = (>(SCREEN&$3fff)<<2)|(>LOGO)>>2&$f //SEG12 asm { sei } sei - //SEG13 [6] *((const byte*) BORDERCOL#0) ? (const byte) WHITE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) BORDERCOL#0) ← (const byte) WHITE#0 -- _deref_pbuc1=vbuc2 lda #WHITE sta BORDERCOL - //SEG14 [7] *((const byte*) BGCOL2#0) ? (const byte) DARK_GREY#0 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) BGCOL2#0) ← (const byte) DARK_GREY#0 -- _deref_pbuc1=vbuc2 lda #DARK_GREY sta BGCOL2 - //SEG15 [8] *((const byte*) BGCOL#0) ? *((const byte*) BGCOL2#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG15 [8] *((const byte*) BGCOL#0) ← *((const byte*) BGCOL2#0) -- _deref_pbuc1=_deref_pbuc2 lda BGCOL2 sta BGCOL - //SEG16 [9] *((const byte*) BGCOL3#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG16 [9] *((const byte*) BGCOL3#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL3 //SEG17 [10] phi from main to main::toD0181 [phi:main->main::toD0181] @@ -6218,10 +6218,10 @@ main: { jmp b3 //SEG19 main::@3 b3: - //SEG20 [11] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG20 [11] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 - //SEG21 [12] *((const byte*) D016#0) ? (const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG21 [12] *((const byte*) D016#0) ← (const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM sta D016 //SEG22 [13] call fill @@ -6262,10 +6262,10 @@ main: { jmp b1 //SEG36 main::@1 b1: - //SEG37 [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ? (byte) main::ch#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG37 [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ← (byte) main::ch#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta SCREEN,x - //SEG38 [18] (byte) main::ch#1 ? ++ (byte) main::ch#2 -- vbuxx=_inc_vbuxx + //SEG38 [18] (byte) main::ch#1 ← ++ (byte) main::ch#2 -- vbuxx=_inc_vbuxx inx //SEG39 [19] if((byte) main::ch#1!=(byte/word/signed word/dword/signed dword) $f0) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$f0 @@ -6319,9 +6319,9 @@ loop: { jmp b3 //SEG56 loop::@3 b3: - //SEG57 [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG57 [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG58 [29] (signed word*~) loop::$1 ? (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 -- pwsz1=pwsc1_plus_vwuz2 + //SEG58 [29] (signed word*~) loop::$1 ← (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 -- pwsz1=pwsc1_plus_vwuz2 lda xsin_idx clc adc #xsin sta _1+1 - //SEG59 [30] (signed word) loop::xpos#0 ? *((signed word*~) loop::$1) -- vwsz1=_deref_pwsz1 + //SEG59 [30] (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) -- vwsz1=_deref_pwsz1 ldy #0 lda (xpos),y tax @@ -6337,13 +6337,13 @@ loop: { lda (xpos),y stx xpos sta xpos+1 - //SEG60 [31] (signed word) render_logo::xpos#0 ? (signed word) loop::xpos#0 + //SEG60 [31] (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 //SEG61 [32] call render_logo jsr render_logo jmp b5 //SEG62 loop::@5 b5: - //SEG63 [33] (word) xsin_idx#3 ? (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vwuz1=vwuz1_plus_2 + //SEG63 [33] (word) xsin_idx#3 ← (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vwuz1=vwuz1_plus_2 lda xsin_idx clc adc #2 @@ -6368,7 +6368,7 @@ loop: { jmp b4 //SEG67 loop::@4 b4: - //SEG68 [36] *((const byte*) BORDERCOL#0) ? -- *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_dec__deref_pbuc1 + //SEG68 [36] *((const byte*) BORDERCOL#0) ← -- *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_dec__deref_pbuc1 dec BORDERCOL //SEG69 [26] phi from loop::@4 to loop::@1 [phi:loop::@4->loop::@1] b1_from_b4: @@ -6391,15 +6391,15 @@ render_logo: { .label xpos = 9 .label x_char = 4 .label logo_idx = 4 - //SEG76 [38] (byte~) render_logo::$0 ? ((byte)) (signed word) render_logo::xpos#0 -- vbuaa=_byte_vwsz1 + //SEG76 [38] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 -- vbuaa=_byte_vwsz1 lda xpos - //SEG77 [39] (byte~) render_logo::$1 ? (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuaa_band_vbuc1 + //SEG77 [39] (byte~) render_logo::$1 ← (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuaa_band_vbuc1 and #7 - //SEG78 [40] (byte~) render_logo::$2 ? (const byte) VIC_MCM#0 | (byte~) render_logo::$1 -- vbuaa=vbuc1_bor_vbuaa + //SEG78 [40] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 -- vbuaa=vbuc1_bor_vbuaa ora #VIC_MCM - //SEG79 [41] *((const byte*) D016#0) ? (byte~) render_logo::$2 -- _deref_pbuc1=vbuaa + //SEG79 [41] *((const byte*) D016#0) ← (byte~) render_logo::$2 -- _deref_pbuc1=vbuaa sta D016 - //SEG80 [42] (signed word~) render_logo::$3 ? (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwsz1=vwsz2_ror_3 + //SEG80 [42] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwsz1=vwsz2_ror_3 lda xpos+1 cmp #$80 ror @@ -6415,7 +6415,7 @@ render_logo: { cmp #$80 ror _3+1 ror _3 - //SEG81 [43] (signed byte) render_logo::x_char#0 ? ((signed byte)) (signed word~) render_logo::$3 -- vbsz1=_sbyte_vwsz2 + //SEG81 [43] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 -- vbsz1=_sbyte_vwsz2 lda _3 sta x_char //SEG82 [44] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 -- vwsz1_lt_0_then_la1 @@ -6450,61 +6450,61 @@ render_logo: { rts //SEG94 render_logo::@6 b6: - //SEG95 [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 + //SEG95 [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 lda logo_idx - //SEG96 [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$15 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG96 [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$15 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN,y jmp b15_1 //SEG97 render_logo::@15_1 b15_1: - //SEG98 [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 + //SEG98 [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*1 clc adc logo_idx - //SEG99 [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$34 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG99 [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$34 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*1,y jmp b15_2 //SEG100 render_logo::@15_2 b15_2: - //SEG101 [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 + //SEG101 [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*2 clc adc logo_idx - //SEG102 [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$38 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG102 [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$38 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*2,y jmp b15_3 //SEG103 render_logo::@15_3 b15_3: - //SEG104 [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 + //SEG104 [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*3 clc adc logo_idx - //SEG105 [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$42 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG105 [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$42 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*3,y jmp b15_4 //SEG106 render_logo::@15_4 b15_4: - //SEG107 [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 + //SEG107 [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*4 clc adc logo_idx - //SEG108 [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$46 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG108 [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$46 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*4,y jmp b15_5 //SEG109 render_logo::@15_5 b15_5: - //SEG110 [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 + //SEG110 [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*5 clc adc logo_idx - //SEG111 [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$50 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG111 [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$50 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*5,y jmp b7 //SEG112 render_logo::@7 b7: - //SEG113 [62] (byte) render_logo::screen_idx#4 ? ++ (byte) render_logo::screen_idx#10 -- vbuyy=_inc_vbuyy + //SEG113 [62] (byte) render_logo::screen_idx#4 ← ++ (byte) render_logo::screen_idx#10 -- vbuyy=_inc_vbuyy iny - //SEG114 [63] (byte) render_logo::logo_idx#3 ? ++ (byte) render_logo::logo_idx#10 -- vbuz1=_inc_vbuz1 + //SEG114 [63] (byte) render_logo::logo_idx#3 ← ++ (byte) render_logo::logo_idx#10 -- vbuz1=_inc_vbuz1 inc logo_idx //SEG115 [47] phi from render_logo::@7 to render_logo::@5 [phi:render_logo::@7->render_logo::@5] b5_from_b7: @@ -6513,43 +6513,43 @@ render_logo: { jmp b5 //SEG118 render_logo::@3 b3: - //SEG119 [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG119 [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN,y jmp b7_1 //SEG120 render_logo::@7_1 b7_1: - //SEG121 [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG121 [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*1,y jmp b7_2 //SEG122 render_logo::@7_2 b7_2: - //SEG123 [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG123 [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*2,y jmp b7_3 //SEG124 render_logo::@7_3 b7_3: - //SEG125 [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG125 [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*3,y jmp b7_4 //SEG126 render_logo::@7_4 b7_4: - //SEG127 [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG127 [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*4,y jmp b7_5 //SEG128 render_logo::@7_5 b7_5: - //SEG129 [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG129 [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*5,y jmp b4 //SEG130 render_logo::@4 b4: - //SEG131 [70] (byte) render_logo::screen_idx#3 ? ++ (byte) render_logo::screen_idx#18 -- vbuyy=_inc_vbuyy + //SEG131 [70] (byte) render_logo::screen_idx#3 ← ++ (byte) render_logo::screen_idx#18 -- vbuyy=_inc_vbuyy iny //SEG132 [45] phi from render_logo::@4 to render_logo::@2 [phi:render_logo::@4->render_logo::@2] b2_from_b4: @@ -6557,12 +6557,12 @@ render_logo: { jmp b2 //SEG134 render_logo::@1 b1: - //SEG135 [71] (signed byte~) render_logo::$17 ? - (signed byte) render_logo::x_char#0 -- vbsaa=_neg_vbsz1 + //SEG135 [71] (signed byte~) render_logo::$17 ← - (signed byte) render_logo::x_char#0 -- vbsaa=_neg_vbsz1 lda x_char eor #$ff clc adc #1 - //SEG136 [72] (byte~) render_logo::logo_idx#14 ? (byte)(signed byte~) render_logo::$17 -- vbuz1=vbuaa + //SEG136 [72] (byte~) render_logo::logo_idx#14 ← (byte)(signed byte~) render_logo::$17 -- vbuz1=vbuaa sta logo_idx //SEG137 [73] phi from render_logo::@1 to render_logo::@8 [phi:render_logo::@1->render_logo::@8] b8_from_b1: @@ -6589,102 +6589,102 @@ render_logo: { jmp breturn //SEG146 render_logo::@12 b12: - //SEG147 [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG147 [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN,y jmp b32_1 //SEG148 render_logo::@32_1 b32_1: - //SEG149 [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG149 [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*1,y jmp b32_2 //SEG150 render_logo::@32_2 b32_2: - //SEG151 [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG151 [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*2,y jmp b32_3 //SEG152 render_logo::@32_3 b32_3: - //SEG153 [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG153 [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*3,y jmp b32_4 //SEG154 render_logo::@32_4 b32_4: - //SEG155 [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG155 [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*4,y jmp b32_5 //SEG156 render_logo::@32_5 b32_5: - //SEG157 [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG157 [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN+$28*5,y jmp b13 //SEG158 render_logo::@13 b13: - //SEG159 [83] (byte) render_logo::screen_idx#6 ? ++ (byte) render_logo::screen_idx#15 -- vbuyy=_inc_vbuyy + //SEG159 [83] (byte) render_logo::screen_idx#6 ← ++ (byte) render_logo::screen_idx#15 -- vbuyy=_inc_vbuyy iny jmp b11_from_b13 //SEG160 render_logo::@9 b9: - //SEG161 [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 + //SEG161 [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 lda logo_idx - //SEG162 [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$23 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG162 [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$23 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN,y jmp b24_1 //SEG163 render_logo::@24_1 b24_1: - //SEG164 [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 + //SEG164 [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*1 clc adc logo_idx - //SEG165 [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$80 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG165 [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$80 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*1,y jmp b24_2 //SEG166 render_logo::@24_2 b24_2: - //SEG167 [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 + //SEG167 [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*2 clc adc logo_idx - //SEG168 [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$84 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG168 [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$84 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*2,y jmp b24_3 //SEG169 render_logo::@24_3 b24_3: - //SEG170 [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 + //SEG170 [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*3 clc adc logo_idx - //SEG171 [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$88 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG171 [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$88 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*3,y jmp b24_4 //SEG172 render_logo::@24_4 b24_4: - //SEG173 [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 + //SEG173 [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*4 clc adc logo_idx - //SEG174 [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$92 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG174 [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$92 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*4,y jmp b24_5 //SEG175 render_logo::@24_5 b24_5: - //SEG176 [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 + //SEG176 [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*5 clc adc logo_idx - //SEG177 [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$96 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG177 [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$96 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*5,y jmp b10 //SEG178 render_logo::@10 b10: - //SEG179 [96] (byte) render_logo::screen_idx#5 ? ++ (byte) render_logo::screen_idx#21 -- vbuyy=_inc_vbuyy + //SEG179 [96] (byte) render_logo::screen_idx#5 ← ++ (byte) render_logo::screen_idx#21 -- vbuyy=_inc_vbuyy iny - //SEG180 [97] (byte) render_logo::logo_idx#4 ? ++ (byte) render_logo::logo_idx#11 -- vbuz1=_inc_vbuz1 + //SEG180 [97] (byte) render_logo::logo_idx#4 ← ++ (byte) render_logo::logo_idx#11 -- vbuz1=_inc_vbuz1 inc logo_idx //SEG181 [73] phi from render_logo::@10 to render_logo::@8 [phi:render_logo::@10->render_logo::@8] b8_from_b10: @@ -6713,11 +6713,11 @@ sin16s_gen2: { //SEG186 [189] phi from sin16s_gen2 to div32u16u [phi:sin16s_gen2->div32u16u] div32u16u_from_sin16s_gen2: jsr div32u16u - //SEG187 [100] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG187 [100] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 jmp b2 //SEG188 sin16s_gen2::@2 b2: - //SEG189 [101] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 + //SEG189 [101] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 //SEG190 [102] phi from sin16s_gen2::@2 to sin16s_gen2::@1 [phi:sin16s_gen2::@2->sin16s_gen2::@1] b1_from_b2: //SEG191 [102] phi (word) sin16s_gen2::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen2::@2->sin16s_gen2::@1#0] -- vwuz1=vbuc1 @@ -6747,7 +6747,7 @@ sin16s_gen2: { jmp b1 //SEG198 sin16s_gen2::@1 b1: - //SEG199 [103] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 -- vduz1=vduz2 + //SEG199 [103] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -6758,24 +6758,24 @@ sin16s_gen2: { sta sin16s.x+3 //SEG200 [104] call sin16s jsr sin16s - //SEG201 [105] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG201 [105] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 jmp b3 //SEG202 sin16s_gen2::@3 b3: - //SEG203 [106] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 + //SEG203 [106] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 //SEG204 [107] call mul16s jsr mul16s - //SEG205 [108] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + //SEG205 [108] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 jmp b4 //SEG206 sin16s_gen2::@4 b4: - //SEG207 [109] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 - //SEG208 [110] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 + //SEG207 [109] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 + //SEG208 [110] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 lda _5+2 sta _6 lda _5+3 sta _6+1 - //SEG209 [111] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 + //SEG209 [111] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 clc lda _8 adc #offs sta _8+1 - //SEG210 [112] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 + //SEG210 [112] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 ldy #0 lda _8 sta (sintab),y iny lda _8+1 sta (sintab),y - //SEG211 [113] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG211 [113] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -6798,7 +6798,7 @@ sin16s_gen2: { bcc !+ inc sintab+1 !: - //SEG212 [114] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG212 [114] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -6812,7 +6812,7 @@ sin16s_gen2: { lda x+3 adc step+3 sta x+3 - //SEG213 [115] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 + //SEG213 [115] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -6842,7 +6842,7 @@ mul16s: { .label m = $b .label return = $b .label a = $17 - //SEG218 [118] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG218 [118] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -6857,23 +6857,23 @@ mul16s: { lda #>sin16s_gen2.ampl sta mul16u.b+1 jsr mul16u - //SEG223 [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG223 [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 jmp b4 //SEG224 mul16s::@4 b4: - //SEG225 [121] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + //SEG225 [121] (dword) mul16s::m#0 ← (dword) mul16u::return#2 //SEG226 [122] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b1_from_b4 jmp b3 //SEG227 mul16s::@3 b3: - //SEG228 [123] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG228 [123] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG229 [124] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG229 [124] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 lda _16 sec sbc #sin16s_gen2.ampl sta _16+1 - //SEG230 [125] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG230 [125] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -6896,7 +6896,7 @@ mul16s: { jmp b2 //SEG234 mul16s::@2 b2: - //SEG235 [127] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG235 [127] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 jmp breturn //SEG236 mul16s::@return breturn: @@ -6912,7 +6912,7 @@ mul16u: { .label res = $b .label return = $b .label b = $f - //SEG239 [130] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG239 [130] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -6946,7 +6946,7 @@ mul16u: { rts //SEG248 mul16u::@2 b2: - //SEG249 [134] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG249 [134] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG250 [135] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 @@ -6955,7 +6955,7 @@ mul16u: { jmp b4 //SEG251 mul16u::@4 b4: - //SEG252 [136] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG252 [136] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -6976,11 +6976,11 @@ mul16u: { jmp b3 //SEG255 mul16u::@3 b3: - //SEG256 [138] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG256 [138] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG257 [139] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG257 [139] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -7031,7 +7031,7 @@ sin16s: { jmp b4 //SEG264 sin16s::@4 b4: - //SEG265 [141] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG265 [141] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG280 [147] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG281 [148] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG281 [148] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG282 [149] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG282 [149] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -7134,17 +7134,17 @@ sin16s: { //SEG286 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG287 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG288 [151] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG288 [151] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 jmp b7 //SEG289 sin16s::@7 b7: - //SEG290 [152] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG290 [152] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG291 [153] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG292 [154] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG291 [153] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG292 [154] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -7157,7 +7157,7 @@ sin16s: { //SEG296 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG297 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG298 [156] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG298 [156] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 @@ -7165,8 +7165,8 @@ sin16s: { jmp b8 //SEG299 sin16s::@8 b8: - //SEG300 [157] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG301 [158] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG300 [157] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG301 [158] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG302 [159] call mulu16_sel //SEG303 [180] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] mulu16_sel_from_b8: @@ -7179,12 +7179,12 @@ sin16s: { sta mulu16_sel.v2+1 //SEG306 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG307 [160] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG307 [160] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 jmp b9 //SEG308 sin16s::@9 b9: - //SEG309 [161] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG310 [162] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG309 [161] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG310 [162] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -7192,8 +7192,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG311 [163] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG312 [164] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG311 [163] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG312 [164] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -7206,7 +7206,7 @@ sin16s: { //SEG316 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG317 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG318 [166] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG318 [166] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 @@ -7214,9 +7214,9 @@ sin16s: { jmp b10 //SEG319 sin16s::@10 b10: - //SEG320 [167] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG321 [168] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG322 [169] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG320 [167] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG321 [168] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG322 [169] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -7229,19 +7229,19 @@ sin16s: { //SEG326 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG327 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG328 [171] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG328 [171] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 jmp b11 //SEG329 sin16s::@11 b11: - //SEG330 [172] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG331 [173] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG330 [172] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG331 [173] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG332 [174] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG332 [174] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -7256,7 +7256,7 @@ sin16s: { jmp b6 //SEG334 sin16s::@6 b6: - //SEG335 [176] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG335 [176] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -7280,7 +7280,7 @@ sin16s: { rts //SEG341 sin16s::@12 b12: - //SEG342 [179] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG342 [179] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 jmp b3_from_b12 } //SEG343 mulu16_sel @@ -7295,24 +7295,24 @@ mulu16_sel: { .label return = $f .label return_1 = $19 .label return_10 = $19 - //SEG344 [181] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG344 [181] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG345 [182] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + //SEG345 [182] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 //SEG346 [183] call mul16u //SEG347 [129] phi from mulu16_sel to mul16u [phi:mulu16_sel->mul16u] mul16u_from_mulu16_sel: //SEG348 [129] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mulu16_sel->mul16u#0] -- register_copy //SEG349 [129] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mulu16_sel->mul16u#1] -- register_copy jsr mul16u - //SEG350 [184] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + //SEG350 [184] (dword) mul16u::return#3 ← (dword) mul16u::res#2 jmp b1 //SEG351 mulu16_sel::@1 b1: - //SEG352 [185] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 - //SEG353 [186] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG352 [185] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 + //SEG353 [186] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -7323,7 +7323,7 @@ mulu16_sel: { dex bne !- !e: - //SEG354 [187] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG354 [187] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -7355,16 +7355,16 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG362 [191] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG362 [191] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG363 div32u16u::@1 b1: - //SEG364 [192] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG364 [192] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG365 [193] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG365 [193] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG366 [194] call divr16u //SEG367 [199] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] divr16u_from_b1: @@ -7375,12 +7375,12 @@ div32u16u: { sta divr16u.dividend+1 //SEG369 [199] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG370 [195] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG370 [195] (word) divr16u::return#3 ← (word) divr16u::return#0 jmp b2 //SEG371 div32u16u::@2 b2: - //SEG372 [196] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG373 [197] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG372 [196] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG373 [197] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -7427,12 +7427,12 @@ divr16u: { jmp b1 //SEG387 divr16u::@1 b1: - //SEG388 [201] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG388 [201] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG389 [202] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG389 [202] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG390 [203] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG390 [203] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG391 [204] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -7440,7 +7440,7 @@ divr16u: { jmp b4 //SEG392 divr16u::@4 b4: - //SEG393 [205] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG393 [205] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -7451,10 +7451,10 @@ divr16u: { jmp b2 //SEG396 divr16u::@2 b2: - //SEG397 [207] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG397 [207] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG398 [208] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG398 [208] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG399 [209] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -7469,12 +7469,12 @@ divr16u: { jmp b5 //SEG400 divr16u::@5 b5: - //SEG401 [210] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG401 [210] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG402 [211] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG402 [211] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #(SCREEN&$3fff)<<2)|(>LOGO)>>2&$f //SEG12 asm { sei } sei - //SEG13 [6] *((const byte*) BORDERCOL#0) ? (const byte) WHITE#0 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) BORDERCOL#0) ← (const byte) WHITE#0 -- _deref_pbuc1=vbuc2 lda #WHITE sta BORDERCOL - //SEG14 [7] *((const byte*) BGCOL2#0) ? (const byte) DARK_GREY#0 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) BGCOL2#0) ← (const byte) DARK_GREY#0 -- _deref_pbuc1=vbuc2 lda #DARK_GREY sta BGCOL2 - //SEG15 [8] *((const byte*) BGCOL#0) ? *((const byte*) BGCOL2#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG15 [8] *((const byte*) BGCOL#0) ← *((const byte*) BGCOL2#0) -- _deref_pbuc1=_deref_pbuc2 sta BGCOL - //SEG16 [9] *((const byte*) BGCOL3#0) ? (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 + //SEG16 [9] *((const byte*) BGCOL3#0) ← (const byte) BLACK#0 -- _deref_pbuc1=vbuc2 lda #BLACK sta BGCOL3 //SEG17 [10] phi from main to main::toD0181 [phi:main->main::toD0181] //SEG18 main::toD0181 //SEG19 main::@3 - //SEG20 [11] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG20 [11] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 - //SEG21 [12] *((const byte*) D016#0) ? (const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 + //SEG21 [12] *((const byte*) D016#0) ← (const byte) VIC_MCM#0 -- _deref_pbuc1=vbuc2 lda #VIC_MCM sta D016 //SEG22 [13] call fill @@ -8406,10 +8406,10 @@ main: { //SEG35 [16] phi (byte) main::ch#2 = (byte) main::ch#1 [phi:main::@1->main::@1#0] -- register_copy //SEG36 main::@1 b1: - //SEG37 [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ? (byte) main::ch#2 -- pbuc1_derefidx_vbuxx=vbuxx + //SEG37 [17] *((const byte*) SCREEN#0 + (byte) main::ch#2) ← (byte) main::ch#2 -- pbuc1_derefidx_vbuxx=vbuxx txa sta SCREEN,x - //SEG38 [18] (byte) main::ch#1 ? ++ (byte) main::ch#2 -- vbuxx=_inc_vbuxx + //SEG38 [18] (byte) main::ch#1 ← ++ (byte) main::ch#2 -- vbuxx=_inc_vbuxx inx //SEG39 [19] if((byte) main::ch#1!=(byte/word/signed word/dword/signed dword) $f0) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$f0 @@ -8447,9 +8447,9 @@ loop: { cmp RASTER bne b2 //SEG56 loop::@3 - //SEG57 [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG57 [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL - //SEG58 [29] (signed word*~) loop::$1 ? (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 -- pwsz1=pwsc1_plus_vwuz2 + //SEG58 [29] (signed word*~) loop::$1 ← (const signed word[XSIN_SIZE#0]) xsin#0 + (word) xsin_idx#11 -- pwsz1=pwsc1_plus_vwuz2 lda xsin_idx clc adc #xsin sta _1+1 - //SEG59 [30] (signed word) loop::xpos#0 ? *((signed word*~) loop::$1) -- vwsz1=_deref_pwsz1 + //SEG59 [30] (signed word) loop::xpos#0 ← *((signed word*~) loop::$1) -- vwsz1=_deref_pwsz1 ldy #0 lda (xpos),y tax @@ -8465,11 +8465,11 @@ loop: { lda (xpos),y stx xpos sta xpos+1 - //SEG60 [31] (signed word) render_logo::xpos#0 ? (signed word) loop::xpos#0 + //SEG60 [31] (signed word) render_logo::xpos#0 ← (signed word) loop::xpos#0 //SEG61 [32] call render_logo jsr render_logo //SEG62 loop::@5 - //SEG63 [33] (word) xsin_idx#3 ? (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vwuz1=vwuz1_plus_2 + //SEG63 [33] (word) xsin_idx#3 ← (word) xsin_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vwuz1=vwuz1_plus_2 lda xsin_idx clc adc #2 @@ -8491,7 +8491,7 @@ loop: { sta xsin_idx+1 //SEG67 loop::@4 b4: - //SEG68 [36] *((const byte*) BORDERCOL#0) ? -- *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_dec__deref_pbuc1 + //SEG68 [36] *((const byte*) BORDERCOL#0) ← -- *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_dec__deref_pbuc1 dec BORDERCOL //SEG69 [26] phi from loop::@4 to loop::@1 [phi:loop::@4->loop::@1] //SEG70 [26] phi (word) xsin_idx#11 = (word) xsin_idx#19 [phi:loop::@4->loop::@1#0] -- register_copy @@ -8508,15 +8508,15 @@ render_logo: { .label xpos = 9 .label x_char = 4 .label logo_idx = 4 - //SEG76 [38] (byte~) render_logo::$0 ? ((byte)) (signed word) render_logo::xpos#0 -- vbuaa=_byte_vwsz1 + //SEG76 [38] (byte~) render_logo::$0 ← ((byte)) (signed word) render_logo::xpos#0 -- vbuaa=_byte_vwsz1 lda xpos - //SEG77 [39] (byte~) render_logo::$1 ? (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuaa_band_vbuc1 + //SEG77 [39] (byte~) render_logo::$1 ← (byte~) render_logo::$0 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuaa_band_vbuc1 and #7 - //SEG78 [40] (byte~) render_logo::$2 ? (const byte) VIC_MCM#0 | (byte~) render_logo::$1 -- vbuaa=vbuc1_bor_vbuaa + //SEG78 [40] (byte~) render_logo::$2 ← (const byte) VIC_MCM#0 | (byte~) render_logo::$1 -- vbuaa=vbuc1_bor_vbuaa ora #VIC_MCM - //SEG79 [41] *((const byte*) D016#0) ? (byte~) render_logo::$2 -- _deref_pbuc1=vbuaa + //SEG79 [41] *((const byte*) D016#0) ← (byte~) render_logo::$2 -- _deref_pbuc1=vbuaa sta D016 - //SEG80 [42] (signed word~) render_logo::$3 ? (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwsz1=vwsz2_ror_3 + //SEG80 [42] (signed word~) render_logo::$3 ← (signed word) render_logo::xpos#0 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwsz1=vwsz2_ror_3 lda xpos+1 cmp #$80 ror @@ -8532,7 +8532,7 @@ render_logo: { cmp #$80 ror _3+1 ror _3 - //SEG81 [43] (signed byte) render_logo::x_char#0 ? ((signed byte)) (signed word~) render_logo::$3 -- vbsz1=_sbyte_vwsz2 + //SEG81 [43] (signed byte) render_logo::x_char#0 ← ((signed byte)) (signed word~) render_logo::$3 -- vbsz1=_sbyte_vwsz2 lda _3 sta x_char //SEG82 [44] if((signed word) render_logo::xpos#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto render_logo::@1 -- vwsz1_lt_0_then_la1 @@ -8561,49 +8561,49 @@ render_logo: { rts //SEG94 render_logo::@6 b6: - //SEG95 [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 + //SEG95 [50] (byte/signed word/word/dword/signed dword~) render_logo::$15 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 lda logo_idx - //SEG96 [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$15 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG96 [51] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$15 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN,y //SEG97 render_logo::@15_1 - //SEG98 [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 + //SEG98 [52] (byte/signed word/word/dword/signed dword~) render_logo::$34 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*1 clc adc logo_idx - //SEG99 [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$34 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG99 [53] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$34 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*1,y //SEG100 render_logo::@15_2 - //SEG101 [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 + //SEG101 [54] (byte/signed word/word/dword/signed dword~) render_logo::$38 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*2 clc adc logo_idx - //SEG102 [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$38 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG102 [55] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$38 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*2,y //SEG103 render_logo::@15_3 - //SEG104 [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 + //SEG104 [56] (byte/signed word/word/dword/signed dword~) render_logo::$42 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*3 clc adc logo_idx - //SEG105 [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$42 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG105 [57] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$42 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*3,y //SEG106 render_logo::@15_4 - //SEG107 [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 + //SEG107 [58] (byte/signed word/word/dword/signed dword~) render_logo::$46 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*4 clc adc logo_idx - //SEG108 [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$46 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG108 [59] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$46 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*4,y //SEG109 render_logo::@15_5 - //SEG110 [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ? (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 + //SEG110 [60] (byte/signed word/word/dword/signed dword~) render_logo::$50 ← (byte) render_logo::logo_idx#10 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*5 clc adc logo_idx - //SEG111 [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ? (byte/signed word/word/dword/signed dword~) render_logo::$50 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG111 [61] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#10) ← (byte/signed word/word/dword/signed dword~) render_logo::$50 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*5,y //SEG112 render_logo::@7 - //SEG113 [62] (byte) render_logo::screen_idx#4 ? ++ (byte) render_logo::screen_idx#10 -- vbuyy=_inc_vbuyy + //SEG113 [62] (byte) render_logo::screen_idx#4 ← ++ (byte) render_logo::screen_idx#10 -- vbuyy=_inc_vbuyy iny - //SEG114 [63] (byte) render_logo::logo_idx#3 ? ++ (byte) render_logo::logo_idx#10 -- vbuz1=_inc_vbuz1 + //SEG114 [63] (byte) render_logo::logo_idx#3 ← ++ (byte) render_logo::logo_idx#10 -- vbuz1=_inc_vbuz1 inc logo_idx //SEG115 [47] phi from render_logo::@7 to render_logo::@5 [phi:render_logo::@7->render_logo::@5] //SEG116 [47] phi (byte) render_logo::logo_idx#10 = (byte) render_logo::logo_idx#3 [phi:render_logo::@7->render_logo::@5#0] -- register_copy @@ -8611,38 +8611,38 @@ render_logo: { jmp b5 //SEG118 render_logo::@3 b3: - //SEG119 [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG119 [64] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN,y //SEG120 render_logo::@7_1 - //SEG121 [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG121 [65] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*1,y //SEG122 render_logo::@7_2 - //SEG123 [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG123 [66] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*2,y //SEG124 render_logo::@7_3 - //SEG125 [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG125 [67] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*3,y //SEG126 render_logo::@7_4 - //SEG127 [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG127 [68] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*4,y //SEG128 render_logo::@7_5 - //SEG129 [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG129 [69] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#18) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*5,y //SEG130 render_logo::@4 - //SEG131 [70] (byte) render_logo::screen_idx#3 ? ++ (byte) render_logo::screen_idx#18 -- vbuyy=_inc_vbuyy + //SEG131 [70] (byte) render_logo::screen_idx#3 ← ++ (byte) render_logo::screen_idx#18 -- vbuyy=_inc_vbuyy iny //SEG132 [45] phi from render_logo::@4 to render_logo::@2 [phi:render_logo::@4->render_logo::@2] //SEG133 [45] phi (byte) render_logo::screen_idx#18 = (byte) render_logo::screen_idx#3 [phi:render_logo::@4->render_logo::@2#0] -- register_copy jmp b2 //SEG134 render_logo::@1 b1: - //SEG135 [71] (signed byte~) render_logo::$17 ? - (signed byte) render_logo::x_char#0 -- vbsaa=_neg_vbsz1 + //SEG135 [71] (signed byte~) render_logo::$17 ← - (signed byte) render_logo::x_char#0 -- vbsaa=_neg_vbsz1 lda x_char eor #$ff clc adc #1 - //SEG136 [72] (byte~) render_logo::logo_idx#14 ? (byte)(signed byte~) render_logo::$17 -- vbuz1=vbuaa + //SEG136 [72] (byte~) render_logo::logo_idx#14 ← (byte)(signed byte~) render_logo::$17 -- vbuz1=vbuaa sta logo_idx //SEG137 [73] phi from render_logo::@1 to render_logo::@8 [phi:render_logo::@1->render_logo::@8] //SEG138 [73] phi (byte) render_logo::screen_idx#21 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:render_logo::@1->render_logo::@8#0] -- vbuyy=vbuc1 @@ -8664,73 +8664,73 @@ render_logo: { rts //SEG146 render_logo::@12 b12: - //SEG147 [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG147 [77] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 lda #0 sta SCREEN,y //SEG148 render_logo::@32_1 - //SEG149 [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG149 [78] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*1,y //SEG150 render_logo::@32_2 - //SEG151 [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG151 [79] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*2,y //SEG152 render_logo::@32_3 - //SEG153 [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG153 [80] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*3,y //SEG154 render_logo::@32_4 - //SEG155 [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG155 [81] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*4,y //SEG156 render_logo::@32_5 - //SEG157 [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 + //SEG157 [82] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#15) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- pbuc1_derefidx_vbuyy=vbuc2 sta SCREEN+$28*5,y //SEG158 render_logo::@13 - //SEG159 [83] (byte) render_logo::screen_idx#6 ? ++ (byte) render_logo::screen_idx#15 -- vbuyy=_inc_vbuyy + //SEG159 [83] (byte) render_logo::screen_idx#6 ← ++ (byte) render_logo::screen_idx#15 -- vbuyy=_inc_vbuyy iny jmp b11 //SEG160 render_logo::@9 b9: - //SEG161 [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 + //SEG161 [84] (byte/signed word/word/dword/signed dword~) render_logo::$23 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) 0 -- vbuaa=vbuz1_plus_0 lda logo_idx - //SEG162 [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$23 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG162 [85] *((const byte*) SCREEN#0 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$23 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN,y //SEG163 render_logo::@24_1 - //SEG164 [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 + //SEG164 [86] (byte/signed word/word/dword/signed dword~) render_logo::$80 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*1 clc adc logo_idx - //SEG165 [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$80 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG165 [87] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$80 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*1,y //SEG166 render_logo::@24_2 - //SEG167 [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 + //SEG167 [88] (byte/signed word/word/dword/signed dword~) render_logo::$84 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*2 clc adc logo_idx - //SEG168 [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$84 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG168 [89] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$84 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*2,y //SEG169 render_logo::@24_3 - //SEG170 [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 + //SEG170 [90] (byte/signed word/word/dword/signed dword~) render_logo::$88 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*3 clc adc logo_idx - //SEG171 [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$88 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG171 [91] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$88 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*3,y //SEG172 render_logo::@24_4 - //SEG173 [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 + //SEG173 [92] (byte/signed word/word/dword/signed dword~) render_logo::$92 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*4 clc adc logo_idx - //SEG174 [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$92 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG174 [93] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$92 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*4,y //SEG175 render_logo::@24_5 - //SEG176 [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ? (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 + //SEG176 [94] (byte/signed word/word/dword/signed dword~) render_logo::$96 ← (byte) render_logo::logo_idx#11 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 -- vbuaa=vbuz1_plus_vbuc1 lda #$28*5 clc adc logo_idx - //SEG177 [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ? (byte/signed word/word/dword/signed dword~) render_logo::$96 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG177 [95] *((const byte*) SCREEN#0+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) render_logo::screen_idx#21) ← (byte/signed word/word/dword/signed dword~) render_logo::$96 -- pbuc1_derefidx_vbuyy=vbuaa sta SCREEN+$28*5,y //SEG178 render_logo::@10 - //SEG179 [96] (byte) render_logo::screen_idx#5 ? ++ (byte) render_logo::screen_idx#21 -- vbuyy=_inc_vbuyy + //SEG179 [96] (byte) render_logo::screen_idx#5 ← ++ (byte) render_logo::screen_idx#21 -- vbuyy=_inc_vbuyy iny - //SEG180 [97] (byte) render_logo::logo_idx#4 ? ++ (byte) render_logo::logo_idx#11 -- vbuz1=_inc_vbuz1 + //SEG180 [97] (byte) render_logo::logo_idx#4 ← ++ (byte) render_logo::logo_idx#11 -- vbuz1=_inc_vbuz1 inc logo_idx //SEG181 [73] phi from render_logo::@10 to render_logo::@8 [phi:render_logo::@10->render_logo::@8] //SEG182 [73] phi (byte) render_logo::screen_idx#21 = (byte) render_logo::screen_idx#5 [phi:render_logo::@10->render_logo::@8#0] -- register_copy @@ -8757,9 +8757,9 @@ sin16s_gen2: { //SEG185 [99] call div32u16u //SEG186 [189] phi from sin16s_gen2 to div32u16u [phi:sin16s_gen2->div32u16u] jsr div32u16u - //SEG187 [100] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG187 [100] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 //SEG188 sin16s_gen2::@2 - //SEG189 [101] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 + //SEG189 [101] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 //SEG190 [102] phi from sin16s_gen2::@2 to sin16s_gen2::@1 [phi:sin16s_gen2::@2->sin16s_gen2::@1] //SEG191 [102] phi (word) sin16s_gen2::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen2::@2->sin16s_gen2::@1#0] -- vwuz1=vbuc1 lda #0 @@ -8783,7 +8783,7 @@ sin16s_gen2: { //SEG197 [102] phi (dword) sin16s_gen2::x#2 = (dword) sin16s_gen2::x#1 [phi:sin16s_gen2::@4->sin16s_gen2::@1#2] -- register_copy //SEG198 sin16s_gen2::@1 b1: - //SEG199 [103] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 -- vduz1=vduz2 + //SEG199 [103] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -8794,20 +8794,20 @@ sin16s_gen2: { sta sin16s.x+3 //SEG200 [104] call sin16s jsr sin16s - //SEG201 [105] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG201 [105] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 //SEG202 sin16s_gen2::@3 - //SEG203 [106] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 + //SEG203 [106] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 //SEG204 [107] call mul16s jsr mul16s - //SEG205 [108] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + //SEG205 [108] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 //SEG206 sin16s_gen2::@4 - //SEG207 [109] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 - //SEG208 [110] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 + //SEG207 [109] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 + //SEG208 [110] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 lda _5+2 sta _6 lda _5+3 sta _6+1 - //SEG209 [111] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 + //SEG209 [111] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 clc lda _8 adc #offs sta _8+1 - //SEG210 [112] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 + //SEG210 [112] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 ldy #0 lda _8 sta (sintab),y iny lda _8+1 sta (sintab),y - //SEG211 [113] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG211 [113] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -8830,7 +8830,7 @@ sin16s_gen2: { bcc !+ inc sintab+1 !: - //SEG212 [114] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG212 [114] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -8844,7 +8844,7 @@ sin16s_gen2: { lda x+3 adc step+3 sta x+3 - //SEG213 [115] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 + //SEG213 [115] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -8872,7 +8872,7 @@ mul16s: { .label m = $b .label return = $b .label a = $17 - //SEG218 [118] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG218 [118] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -8886,19 +8886,19 @@ mul16s: { lda #>sin16s_gen2.ampl sta mul16u.b+1 jsr mul16u - //SEG223 [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG223 [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 //SEG224 mul16s::@4 - //SEG225 [121] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + //SEG225 [121] (dword) mul16s::m#0 ← (dword) mul16u::return#2 //SEG226 [122] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b2 //SEG227 mul16s::@3 - //SEG228 [123] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG228 [123] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG229 [124] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG229 [124] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 lda _16 sec sbc #sin16s_gen2.ampl sta _16+1 - //SEG230 [125] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG230 [125] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -8916,7 +8916,7 @@ mul16s: { //SEG233 mul16s::@1 //SEG234 mul16s::@2 b2: - //SEG235 [127] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG235 [127] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 //SEG236 mul16s::@return //SEG237 [128] return rts @@ -8930,7 +8930,7 @@ mul16u: { .label res = $b .label return = $b .label b = $f - //SEG239 [130] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG239 [130] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -8958,14 +8958,14 @@ mul16u: { rts //SEG248 mul16u::@2 b2: - //SEG249 [134] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG249 [134] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG250 [135] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG251 mul16u::@4 - //SEG252 [136] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG252 [136] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -8983,11 +8983,11 @@ mul16u: { //SEG254 [137] phi (dword) mul16u::res#6 = (dword) mul16u::res#2 [phi:mul16u::@2/mul16u::@4->mul16u::@3#0] -- register_copy //SEG255 mul16u::@3 b3: - //SEG256 [138] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG256 [138] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG257 [139] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG257 [139] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -9035,7 +9035,7 @@ sin16s: { bcc b4 !: //SEG264 sin16s::@4 - //SEG265 [141] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG265 [141] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc #sin16s::@2#0] -- register_copy //SEG278 sin16s::@2 b2: - //SEG279 [146] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 + //SEG279 [146] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 ldy #3 !: asl _4 @@ -9108,17 +9108,17 @@ sin16s: { rol _4+3 dey bne !- - //SEG280 [147] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG280 [147] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG281 [148] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG281 [148] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG282 [149] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG282 [149] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -9130,15 +9130,15 @@ sin16s: { //SEG286 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG287 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG288 [151] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG288 [151] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 //SEG289 sin16s::@7 - //SEG290 [152] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG290 [152] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG291 [153] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG292 [154] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG291 [153] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG292 [154] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -9150,14 +9150,14 @@ sin16s: { //SEG296 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG297 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG298 [156] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG298 [156] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 sta mulu16_sel.return_1+1 //SEG299 sin16s::@8 - //SEG300 [157] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG301 [158] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG300 [157] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG301 [158] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG302 [159] call mulu16_sel //SEG303 [180] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] //SEG304 [180] phi (byte) mulu16_sel::select#5 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:sin16s::@8->mulu16_sel#0] -- vbuxx=vbuc1 @@ -9169,10 +9169,10 @@ sin16s: { sta mulu16_sel.v2+1 //SEG306 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG307 [160] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG307 [160] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 //SEG308 sin16s::@9 - //SEG309 [161] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG310 [162] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG309 [161] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG310 [162] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -9180,8 +9180,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG311 [163] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG312 [164] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG311 [163] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG312 [164] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -9193,15 +9193,15 @@ sin16s: { //SEG316 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG317 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG318 [166] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG318 [166] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 sta mulu16_sel.return_10+1 //SEG319 sin16s::@10 - //SEG320 [167] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG321 [168] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG322 [169] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG320 [167] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG321 [168] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG322 [169] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -9213,17 +9213,17 @@ sin16s: { //SEG326 [180] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG327 [180] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG328 [171] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG328 [171] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 //SEG329 sin16s::@11 - //SEG330 [172] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG331 [173] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG330 [172] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG331 [173] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG332 [174] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG332 [174] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -9236,7 +9236,7 @@ sin16s: { cmp #0 beq b3 //SEG334 sin16s::@6 - //SEG335 [176] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG335 [176] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -9254,7 +9254,7 @@ sin16s: { //SEG340 [178] return rts //SEG341 sin16s::@12 - //SEG342 [179] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG342 [179] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 } //SEG343 mulu16_sel // Calculate val*val for two unsigned word values - the result is 16 selected bits of the 32-bit result. @@ -9268,21 +9268,21 @@ mulu16_sel: { .label return = $f .label return_1 = $19 .label return_10 = $19 - //SEG344 [181] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG344 [181] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG345 [182] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + //SEG345 [182] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 //SEG346 [183] call mul16u //SEG347 [129] phi from mulu16_sel to mul16u [phi:mulu16_sel->mul16u] //SEG348 [129] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mulu16_sel->mul16u#0] -- register_copy //SEG349 [129] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mulu16_sel->mul16u#1] -- register_copy jsr mul16u - //SEG350 [184] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + //SEG350 [184] (dword) mul16u::return#3 ← (dword) mul16u::res#2 //SEG351 mulu16_sel::@1 - //SEG352 [185] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 - //SEG353 [186] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG352 [185] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 + //SEG353 [186] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -9293,7 +9293,7 @@ mulu16_sel: { dex bne !- !e: - //SEG354 [187] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG354 [187] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -9321,14 +9321,14 @@ div32u16u: { sta divr16u.rem sta divr16u.rem+1 jsr divr16u - //SEG362 [191] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG362 [191] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG363 div32u16u::@1 - //SEG364 [192] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG364 [192] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG365 [193] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG365 [193] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG366 [194] call divr16u //SEG367 [199] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] //SEG368 [199] phi (word) divr16u::dividend#5 = <(const dword) PI2_u4f28#0 [phi:div32u16u::@1->divr16u#0] -- vwuz1=vwuc1 @@ -9338,10 +9338,10 @@ div32u16u: { sta divr16u.dividend+1 //SEG369 [199] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG370 [195] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG370 [195] (word) divr16u::return#3 ← (word) divr16u::return#0 //SEG371 div32u16u::@2 - //SEG372 [196] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG373 [197] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG372 [196] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG373 [197] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -9381,18 +9381,18 @@ divr16u: { //SEG386 [200] phi (word) divr16u::rem#5 = (word) divr16u::rem#11 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG387 divr16u::@1 b1: - //SEG388 [201] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG388 [201] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG389 [202] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG389 [202] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG390 [203] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG390 [203] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG391 [204] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG392 divr16u::@4 - //SEG393 [205] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG393 [205] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -9400,10 +9400,10 @@ divr16u: { //SEG395 [206] phi (word) divr16u::rem#6 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG396 divr16u::@2 b2: - //SEG397 [207] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG397 [207] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG398 [208] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG398 [208] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG399 [209] if((word) divr16u::rem#6<(const word) XSIN_SIZE#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -9416,12 +9416,12 @@ divr16u: { bcc b3 !: //SEG400 divr16u::@5 - //SEG401 [210] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG401 [210] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG402 [211] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG402 [211] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) XSIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #divr16u::@3#1] -- register_copy //SEG406 divr16u::@3 b3: - //SEG407 [213] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG407 [213] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG408 [214] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG409 divr16u::@6 - //SEG410 [215] (word) rem16u#1 ? (word) divr16u::rem#11 + //SEG410 [215] (word) rem16u#1 ← (word) divr16u::rem#11 //SEG411 divr16u::@return //SEG412 [216] return rts @@ -9451,7 +9451,7 @@ divr16u: { fill: { .label end = 9 .label addr = 2 - //SEG414 [218] (byte*) fill::end#0 ? (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 + //SEG414 [218] (byte*) fill::end#0 ← (byte*) fill::addr#0 + (word/signed word/dword/signed dword) $3e8 -- pbuz1=pbuz2_plus_vwuc1 lda addr clc adc #<$3e8 @@ -9463,11 +9463,11 @@ fill: { //SEG416 [219] phi (byte*) fill::addr#2 = (byte*) fill::addr#0 [phi:fill/fill::@1->fill::@1#0] -- register_copy //SEG417 fill::@1 b1: - //SEG418 [220] *((byte*) fill::addr#2) ? (byte) fill::val#3 -- _deref_pbuz1=vbuxx + //SEG418 [220] *((byte*) fill::addr#2) ← (byte) fill::val#3 -- _deref_pbuz1=vbuxx txa ldy #0 sta (addr),y - //SEG419 [221] (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 + //SEG419 [221] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 inc addr bne !+ inc addr+1 diff --git a/src/test/ref/examples/sinplotter/sine-plotter.log b/src/test/ref/examples/sinplotter/sine-plotter.log index 99d708d68..a9b0ffece 100644 --- a/src/test/ref/examples/sinplotter/sine-plotter.log +++ b/src/test/ref/examples/sinplotter/sine-plotter.log @@ -1,931 +1,931 @@ Identified constant variable (byte*) SCREEN Identified constant variable (byte*) BITMAP Identified constant variable (signed word*) sin2 -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx Inlined call call vicSelectGfxBank (byte*) SCREEN -Inlined call (byte~) main::$4 ? call toD018 (byte*) SCREEN (byte*) BITMAP +Inlined call (byte~) main::$4 ← call toD018 (byte*) SCREEN (byte*) BITMAP CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @4 - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@9 divr16u: scope:[divr16u] from div32u16u div32u16u::@2 - (word) divr16u::divisor#6 ? phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) - (word) divr16u::dividend#5 ? phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) - (word) divr16u::rem#10 ? phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#6 ← phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) + (word) divr16u::dividend#5 ← phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) + (word) divr16u::rem#10 ← phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#4 ? phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) - (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - (word~) divr16u::$0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#4 ← phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) + (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + (word~) divr16u::$0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#2 ? phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#4 ? phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#2 ← phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#4 ← phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#5 ? phi( divr16u::@1/(word) divr16u::divisor#4 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#7 ? phi( divr16u::@1/(word) divr16u::dividend#3 ) - (word) divr16u::rem#7 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#5 ← phi( divr16u::@1/(word) divr16u::divisor#4 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#7 ← phi( divr16u::@1/(word) divr16u::dividend#3 ) + (word) divr16u::rem#7 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#7 ? phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#6 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) - (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#7 ← phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#6 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) + (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#8 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#3 ? phi( divr16u::@2/(word) divr16u::divisor#2 ) - (word) divr16u::rem#8 ? phi( divr16u::@2/(word) divr16u::rem#6 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#8 - (word) divr16u::divisor#3 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#8 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#3 ← phi( divr16u::@2/(word) divr16u::divisor#2 ) + (word) divr16u::rem#8 ← phi( divr16u::@2/(word) divr16u::rem#6 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#8 - (word) divr16u::divisor#3 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#9 ? phi( divr16u::@3/(word) divr16u::rem#11 ) - (word) rem16u#1 ? (word) divr16u::rem#9 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#9 ← phi( divr16u::@3/(word) divr16u::rem#11 ) + (word) rem16u#1 ← (word) divr16u::rem#9 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#11 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#4 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#4 - (word) rem16u#2 ? (word) rem16u#11 + (word) rem16u#11 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#4 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#4 + (word) rem16u#2 ← (word) rem16u#11 return to:@return div32u16u: scope:[div32u16u] from sin16s_gen2 - (word) rem16u#20 ? phi( sin16s_gen2/(word) rem16u#21 ) - (word) div32u16u::divisor#1 ? phi( sin16s_gen2/(word) div32u16u::divisor#0 ) - (dword) div32u16u::dividend#1 ? phi( sin16s_gen2/(dword) div32u16u::dividend#0 ) - (word~) div32u16u::$0 ? > (dword) div32u16u::dividend#1 - (word) divr16u::dividend#1 ? (word~) div32u16u::$0 - (word) divr16u::divisor#0 ? (word) div32u16u::divisor#1 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#20 ← phi( sin16s_gen2/(word) rem16u#21 ) + (word) div32u16u::divisor#1 ← phi( sin16s_gen2/(word) div32u16u::divisor#0 ) + (dword) div32u16u::dividend#1 ← phi( sin16s_gen2/(dword) div32u16u::dividend#0 ) + (word~) div32u16u::$0 ← > (dword) div32u16u::dividend#1 + (word) divr16u::dividend#1 ← (word~) div32u16u::$0 + (word) divr16u::divisor#0 ← (word) div32u16u::divisor#1 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u - (word) div32u16u::divisor#2 ? phi( div32u16u/(word) div32u16u::divisor#1 ) - (dword) div32u16u::dividend#2 ? phi( div32u16u/(dword) div32u16u::dividend#1 ) - (word) rem16u#12 ? phi( div32u16u/(word) rem16u#2 ) - (word) divr16u::return#5 ? phi( div32u16u/(word) divr16u::return#2 ) - (word~) div32u16u::$1 ? (word) divr16u::return#5 - (word) rem16u#3 ? (word) rem16u#12 - (word) div32u16u::quotient_hi#0 ? (word~) div32u16u::$1 - (word~) div32u16u::$2 ? < (dword) div32u16u::dividend#2 - (word) divr16u::dividend#2 ? (word~) div32u16u::$2 - (word) divr16u::divisor#1 ? (word) div32u16u::divisor#2 - (word) divr16u::rem#4 ? (word) rem16u#3 + (word) div32u16u::divisor#2 ← phi( div32u16u/(word) div32u16u::divisor#1 ) + (dword) div32u16u::dividend#2 ← phi( div32u16u/(dword) div32u16u::dividend#1 ) + (word) rem16u#12 ← phi( div32u16u/(word) rem16u#2 ) + (word) divr16u::return#5 ← phi( div32u16u/(word) divr16u::return#2 ) + (word~) div32u16u::$1 ← (word) divr16u::return#5 + (word) rem16u#3 ← (word) rem16u#12 + (word) div32u16u::quotient_hi#0 ← (word~) div32u16u::$1 + (word~) div32u16u::$2 ← < (dword) div32u16u::dividend#2 + (word) divr16u::dividend#2 ← (word~) div32u16u::$2 + (word) divr16u::divisor#1 ← (word) div32u16u::divisor#2 + (word) divr16u::rem#4 ← (word) rem16u#3 call divr16u - (word) divr16u::return#3 ? (word) divr16u::return#1 + (word) divr16u::return#3 ← (word) divr16u::return#1 to:div32u16u::@3 div32u16u::@3: scope:[div32u16u] from div32u16u::@2 - (word) div32u16u::quotient_hi#1 ? phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) - (word) rem16u#13 ? phi( div32u16u::@2/(word) rem16u#2 ) - (word) divr16u::return#6 ? phi( div32u16u::@2/(word) divr16u::return#3 ) - (word~) div32u16u::$3 ? (word) divr16u::return#6 - (word) rem16u#4 ? (word) rem16u#13 - (word) div32u16u::quotient_lo#0 ? (word~) div32u16u::$3 - (dword) div32u16u::quotient#0 ? { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } - (dword) div32u16u::return#0 ? (dword) div32u16u::quotient#0 + (word) div32u16u::quotient_hi#1 ← phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) + (word) rem16u#13 ← phi( div32u16u::@2/(word) rem16u#2 ) + (word) divr16u::return#6 ← phi( div32u16u::@2/(word) divr16u::return#3 ) + (word~) div32u16u::$3 ← (word) divr16u::return#6 + (word) rem16u#4 ← (word) rem16u#13 + (word) div32u16u::quotient_lo#0 ← (word~) div32u16u::$3 + (dword) div32u16u::quotient#0 ← { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } + (dword) div32u16u::return#0 ← (dword) div32u16u::quotient#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@3 - (word) rem16u#14 ? phi( div32u16u::@3/(word) rem16u#4 ) - (dword) div32u16u::return#3 ? phi( div32u16u::@3/(dword) div32u16u::return#0 ) - (dword) div32u16u::return#1 ? (dword) div32u16u::return#3 - (word) rem16u#5 ? (word) rem16u#14 + (word) rem16u#14 ← phi( div32u16u::@3/(word) rem16u#4 ) + (dword) div32u16u::return#3 ← phi( div32u16u::@3/(dword) div32u16u::return#0 ) + (dword) div32u16u::return#1 ← (dword) div32u16u::return#3 + (word) rem16u#5 ← (word) rem16u#14 return to:@return @9: scope:[] from @6 - (word) rem16u#38 ? phi( @6/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#38 ← phi( @6/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@10 @10: scope:[] from @9 - (word) rem16u#36 ? phi( @9/(word) rem16u#38 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#36 ← phi( @9/(word) rem16u#38 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@17 mul16u: scope:[mul16u] from mul16s mulu16_sel - (word) mul16u::a#6 ? phi( mul16s/(word) mul16u::a#1 mulu16_sel/(word) mul16u::a#2 ) - (word) mul16u::b#2 ? phi( mul16s/(word) mul16u::b#0 mulu16_sel/(word) mul16u::b#1 ) - (dword) mul16u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 + (word) mul16u::a#6 ← phi( mul16s/(word) mul16u::a#1 mulu16_sel/(word) mul16u::a#2 ) + (word) mul16u::b#2 ← phi( mul16s/(word) mul16u::b#0 mulu16_sel/(word) mul16u::b#1 ) + (dword) mul16u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@4 - (dword) mul16u::mb#5 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) - (dword) mul16u::res#4 ? phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) - (word) mul16u::a#3 ? phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) - (bool~) mul16u::$0 ? (word) mul16u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#5 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) + (dword) mul16u::res#4 ← phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) + (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) + (bool~) mul16u::$0 ← (word) mul16u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul16u::$0) goto mul16u::@2 to:mul16u::@3 mul16u::@2: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#5 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::mb#4 ? phi( mul16u::@1/(dword) mul16u::mb#5 ) - (word) mul16u::a#4 ? phi( mul16u::@1/(word) mul16u::a#3 ) - (byte/word~) mul16u::$1 ? (word) mul16u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16u::$3 ? ! (bool~) mul16u::$2 + (dword) mul16u::res#5 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::mb#4 ← phi( mul16u::@1/(dword) mul16u::mb#5 ) + (word) mul16u::a#4 ← phi( mul16u::@1/(word) mul16u::a#3 ) + (byte/word~) mul16u::$1 ← (word) mul16u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16u::$3 ← ! (bool~) mul16u::$2 if((bool~) mul16u::$3) goto mul16u::@4 to:mul16u::@7 mul16u::@3: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#2 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::return#0 ? (dword) mul16u::res#2 + (dword) mul16u::res#2 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::return#0 ← (dword) mul16u::res#2 to:mul16u::@return mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7 - (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) - (dword) mul16u::mb#2 ? phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) - (word) mul16u::a#5 ? phi( mul16u::@2/(word) mul16u::a#4 mul16u::@7/(word) mul16u::a#7 ) - (word~) mul16u::$5 ? (word) mul16u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul16u::a#0 ? (word~) mul16u::$5 - (dword~) mul16u::$6 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (dword) mul16u::mb#1 ? (dword~) mul16u::$6 + (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) + (dword) mul16u::mb#2 ← phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) + (word) mul16u::a#5 ← phi( mul16u::@2/(word) mul16u::a#4 mul16u::@7/(word) mul16u::a#7 ) + (word~) mul16u::$5 ← (word) mul16u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul16u::a#0 ← (word~) mul16u::$5 + (dword~) mul16u::$6 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) mul16u::mb#1 ← (dword~) mul16u::$6 to:mul16u::@1 mul16u::@7: scope:[mul16u] from mul16u::@2 - (word) mul16u::a#7 ? phi( mul16u::@2/(word) mul16u::a#4 ) - (dword) mul16u::mb#3 ? phi( mul16u::@2/(dword) mul16u::mb#4 ) - (dword) mul16u::res#3 ? phi( mul16u::@2/(dword) mul16u::res#5 ) - (dword~) mul16u::$4 ? (dword) mul16u::res#3 + (dword) mul16u::mb#3 - (dword) mul16u::res#1 ? (dword~) mul16u::$4 + (word) mul16u::a#7 ← phi( mul16u::@2/(word) mul16u::a#4 ) + (dword) mul16u::mb#3 ← phi( mul16u::@2/(dword) mul16u::mb#4 ) + (dword) mul16u::res#3 ← phi( mul16u::@2/(dword) mul16u::res#5 ) + (dword~) mul16u::$4 ← (dword) mul16u::res#3 + (dword) mul16u::mb#3 + (dword) mul16u::res#1 ← (dword~) mul16u::$4 to:mul16u::@4 mul16u::@return: scope:[mul16u] from mul16u::@3 - (dword) mul16u::return#4 ? phi( mul16u::@3/(dword) mul16u::return#0 ) - (dword) mul16u::return#1 ? (dword) mul16u::return#4 + (dword) mul16u::return#4 ← phi( mul16u::@3/(dword) mul16u::return#0 ) + (dword) mul16u::return#1 ← (dword) mul16u::return#4 return to:@return mul16s: scope:[mul16s] from sin16s_gen2::@4 - (signed word) mul16s::b#1 ? phi( sin16s_gen2::@4/(signed word) mul16s::b#0 ) - (signed word) mul16s::a#1 ? phi( sin16s_gen2::@4/(signed word) mul16s::a#0 ) - (word~) mul16s::$0 ? ((word)) (signed word) mul16s::a#1 - (word~) mul16s::$1 ? ((word)) (signed word) mul16s::b#1 - (word) mul16u::a#1 ? (word~) mul16s::$0 - (word) mul16u::b#0 ? (word~) mul16s::$1 + (signed word) mul16s::b#1 ← phi( sin16s_gen2::@4/(signed word) mul16s::b#0 ) + (signed word) mul16s::a#1 ← phi( sin16s_gen2::@4/(signed word) mul16s::a#0 ) + (word~) mul16s::$0 ← ((word)) (signed word) mul16s::a#1 + (word~) mul16s::$1 ← ((word)) (signed word) mul16s::b#1 + (word) mul16u::a#1 ← (word~) mul16s::$0 + (word) mul16u::b#0 ← (word~) mul16s::$1 call mul16u - (dword) mul16u::return#2 ? (dword) mul16u::return#1 + (dword) mul16u::return#2 ← (dword) mul16u::return#1 to:mul16s::@6 mul16s::@6: scope:[mul16s] from mul16s - (signed word) mul16s::b#4 ? phi( mul16s/(signed word) mul16s::b#1 ) - (signed word) mul16s::a#2 ? phi( mul16s/(signed word) mul16s::a#1 ) - (dword) mul16u::return#5 ? phi( mul16s/(dword) mul16u::return#2 ) - (dword~) mul16s::$2 ? (dword) mul16u::return#5 - (dword) mul16s::m#0 ? (dword~) mul16s::$2 - (bool~) mul16s::$3 ? (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16s::$4 ? ! (bool~) mul16s::$3 + (signed word) mul16s::b#4 ← phi( mul16s/(signed word) mul16s::b#1 ) + (signed word) mul16s::a#2 ← phi( mul16s/(signed word) mul16s::a#1 ) + (dword) mul16u::return#5 ← phi( mul16s/(dword) mul16u::return#2 ) + (dword~) mul16s::$2 ← (dword) mul16u::return#5 + (dword) mul16s::m#0 ← (dword~) mul16s::$2 + (bool~) mul16s::$3 ← (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16s::$4 ← ! (bool~) mul16s::$3 if((bool~) mul16s::$4) goto mul16s::@1 to:mul16s::@3 mul16s::@1: scope:[mul16s] from mul16s::@3 mul16s::@6 - (signed word) mul16s::a#4 ? phi( mul16s::@3/(signed word) mul16s::a#5 mul16s::@6/(signed word) mul16s::a#2 ) - (dword) mul16s::m#6 ? phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) - (signed word) mul16s::b#2 ? phi( mul16s::@3/(signed word) mul16s::b#3 mul16s::@6/(signed word) mul16s::b#4 ) - (bool~) mul16s::$5 ? (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16s::$6 ? ! (bool~) mul16s::$5 + (signed word) mul16s::a#4 ← phi( mul16s::@3/(signed word) mul16s::a#5 mul16s::@6/(signed word) mul16s::a#2 ) + (dword) mul16s::m#6 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) + (signed word) mul16s::b#2 ← phi( mul16s::@3/(signed word) mul16s::b#3 mul16s::@6/(signed word) mul16s::b#4 ) + (bool~) mul16s::$5 ← (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16s::$6 ← ! (bool~) mul16s::$5 if((bool~) mul16s::$6) goto mul16s::@2 to:mul16s::@4 mul16s::@3: scope:[mul16s] from mul16s::@6 - (signed word) mul16s::a#5 ? phi( mul16s::@6/(signed word) mul16s::a#2 ) - (signed word) mul16s::b#3 ? phi( mul16s::@6/(signed word) mul16s::b#4 ) - (dword) mul16s::m#3 ? phi( mul16s::@6/(dword) mul16s::m#0 ) - (word~) mul16s::$9 ? > (dword) mul16s::m#3 - (word~) mul16s::$10 ? ((word)) (signed word) mul16s::b#3 - (word~) mul16s::$11 ? (word~) mul16s::$9 - (word~) mul16s::$10 - (word~) mul16s::$16 ? (word~) mul16s::$11 - (dword) mul16s::m#1 ? (dword) mul16s::m#3 hi= (word~) mul16s::$16 + (signed word) mul16s::a#5 ← phi( mul16s::@6/(signed word) mul16s::a#2 ) + (signed word) mul16s::b#3 ← phi( mul16s::@6/(signed word) mul16s::b#4 ) + (dword) mul16s::m#3 ← phi( mul16s::@6/(dword) mul16s::m#0 ) + (word~) mul16s::$9 ← > (dword) mul16s::m#3 + (word~) mul16s::$10 ← ((word)) (signed word) mul16s::b#3 + (word~) mul16s::$11 ← (word~) mul16s::$9 - (word~) mul16s::$10 + (word~) mul16s::$16 ← (word~) mul16s::$11 + (dword) mul16s::m#1 ← (dword) mul16s::m#3 hi= (word~) mul16s::$16 to:mul16s::@1 mul16s::@2: scope:[mul16s] from mul16s::@1 mul16s::@4 - (dword) mul16s::m#4 ? phi( mul16s::@1/(dword) mul16s::m#6 mul16s::@4/(dword) mul16s::m#2 ) - (signed dword~) mul16s::$7 ? ((signed dword)) (dword) mul16s::m#4 - (signed dword) mul16s::return#0 ? (signed dword~) mul16s::$7 + (dword) mul16s::m#4 ← phi( mul16s::@1/(dword) mul16s::m#6 mul16s::@4/(dword) mul16s::m#2 ) + (signed dword~) mul16s::$7 ← ((signed dword)) (dword) mul16s::m#4 + (signed dword) mul16s::return#0 ← (signed dword~) mul16s::$7 to:mul16s::@return mul16s::@4: scope:[mul16s] from mul16s::@1 - (signed word) mul16s::a#3 ? phi( mul16s::@1/(signed word) mul16s::a#4 ) - (dword) mul16s::m#5 ? phi( mul16s::@1/(dword) mul16s::m#6 ) - (word~) mul16s::$13 ? > (dword) mul16s::m#5 - (word~) mul16s::$14 ? ((word)) (signed word) mul16s::a#3 - (word~) mul16s::$15 ? (word~) mul16s::$13 - (word~) mul16s::$14 - (word~) mul16s::$17 ? (word~) mul16s::$15 - (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 + (signed word) mul16s::a#3 ← phi( mul16s::@1/(signed word) mul16s::a#4 ) + (dword) mul16s::m#5 ← phi( mul16s::@1/(dword) mul16s::m#6 ) + (word~) mul16s::$13 ← > (dword) mul16s::m#5 + (word~) mul16s::$14 ← ((word)) (signed word) mul16s::a#3 + (word~) mul16s::$15 ← (word~) mul16s::$13 - (word~) mul16s::$14 + (word~) mul16s::$17 ← (word~) mul16s::$15 + (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 to:mul16s::@2 mul16s::@return: scope:[mul16s] from mul16s::@2 - (signed dword) mul16s::return#3 ? phi( mul16s::@2/(signed dword) mul16s::return#0 ) - (signed dword) mul16s::return#1 ? (signed dword) mul16s::return#3 + (signed dword) mul16s::return#3 ← phi( mul16s::@2/(signed dword) mul16s::return#0 ) + (signed dword) mul16s::return#1 ← (signed dword) mul16s::return#3 return to:@return @17: scope:[] from @10 - (word) rem16u#34 ? phi( @10/(word) rem16u#36 ) - (dword) PI2_u4f28#0 ? (dword/signed dword) $6487ed51 - (dword) PI_u4f28#0 ? (dword/signed dword) $3243f6a9 - (dword) PI_HALF_u4f28#0 ? (dword/signed dword) $1921fb54 - (word) PI2_u4f12#0 ? (word/signed word/dword/signed dword) $6488 - (word) PI_u4f12#0 ? (word/signed word/dword/signed dword) $3244 - (word) PI_HALF_u4f12#0 ? (word/signed word/dword/signed dword) $1922 + (word) rem16u#34 ← phi( @10/(word) rem16u#36 ) + (dword) PI2_u4f28#0 ← (dword/signed dword) $6487ed51 + (dword) PI_u4f28#0 ← (dword/signed dword) $3243f6a9 + (dword) PI_HALF_u4f28#0 ← (dword/signed dword) $1921fb54 + (word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) $6488 + (word) PI_u4f12#0 ← (word/signed word/dword/signed dword) $3244 + (word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) $1922 to:@26 sin16s_gen2: scope:[sin16s_gen2] from main::@11 - (signed word*) sin16s_gen2::sintab#6 ? phi( main::@11/(signed word*) sin16s_gen2::sintab#1 ) - (word) rem16u#21 ? phi( main::@11/(word) rem16u#23 ) - (word) sin16s_gen2::wavelength#1 ? phi( main::@11/(word) sin16s_gen2::wavelength#0 ) - (signed word) sin16s_gen2::min#1 ? phi( main::@11/(signed word) sin16s_gen2::min#0 ) - (signed word) sin16s_gen2::max#1 ? phi( main::@11/(signed word) sin16s_gen2::max#0 ) - (signed word~) sin16s_gen2::$0 ? (signed word) sin16s_gen2::max#1 - (signed word) sin16s_gen2::min#1 - (signed word) sin16s_gen2::ampl#0 ? (signed word~) sin16s_gen2::$0 - (signed word~) sin16s_gen2::$1 ? (signed word) sin16s_gen2::ampl#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed word~) sin16s_gen2::$2 ? (signed word) sin16s_gen2::min#1 + (signed word~) sin16s_gen2::$1 - (signed word) sin16s_gen2::offs#0 ? (signed word~) sin16s_gen2::$2 - (dword) div32u16u::dividend#0 ? (dword) PI2_u4f28#0 - (word) div32u16u::divisor#0 ? (word) sin16s_gen2::wavelength#1 + (signed word*) sin16s_gen2::sintab#6 ← phi( main::@11/(signed word*) sin16s_gen2::sintab#1 ) + (word) rem16u#21 ← phi( main::@11/(word) rem16u#23 ) + (word) sin16s_gen2::wavelength#1 ← phi( main::@11/(word) sin16s_gen2::wavelength#0 ) + (signed word) sin16s_gen2::min#1 ← phi( main::@11/(signed word) sin16s_gen2::min#0 ) + (signed word) sin16s_gen2::max#1 ← phi( main::@11/(signed word) sin16s_gen2::max#0 ) + (signed word~) sin16s_gen2::$0 ← (signed word) sin16s_gen2::max#1 - (signed word) sin16s_gen2::min#1 + (signed word) sin16s_gen2::ampl#0 ← (signed word~) sin16s_gen2::$0 + (signed word~) sin16s_gen2::$1 ← (signed word) sin16s_gen2::ampl#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (signed word~) sin16s_gen2::$2 ← (signed word) sin16s_gen2::min#1 + (signed word~) sin16s_gen2::$1 + (signed word) sin16s_gen2::offs#0 ← (signed word~) sin16s_gen2::$2 + (dword) div32u16u::dividend#0 ← (dword) PI2_u4f28#0 + (word) div32u16u::divisor#0 ← (word) sin16s_gen2::wavelength#1 call div32u16u - (dword) div32u16u::return#2 ? (dword) div32u16u::return#1 + (dword) div32u16u::return#2 ← (dword) div32u16u::return#1 to:sin16s_gen2::@3 sin16s_gen2::@3: scope:[sin16s_gen2] from sin16s_gen2 - (word) sin16s_gen2::wavelength#5 ? phi( sin16s_gen2/(word) sin16s_gen2::wavelength#1 ) - (signed word*) sin16s_gen2::sintab#5 ? phi( sin16s_gen2/(signed word*) sin16s_gen2::sintab#6 ) - (signed word) sin16s_gen2::offs#4 ? phi( sin16s_gen2/(signed word) sin16s_gen2::offs#0 ) - (signed word) sin16s_gen2::ampl#3 ? phi( sin16s_gen2/(signed word) sin16s_gen2::ampl#0 ) - (word) rem16u#15 ? phi( sin16s_gen2/(word) rem16u#5 ) - (dword) div32u16u::return#4 ? phi( sin16s_gen2/(dword) div32u16u::return#2 ) - (dword~) sin16s_gen2::$3 ? (dword) div32u16u::return#4 - (word) rem16u#6 ? (word) rem16u#15 - (dword) sin16s_gen2::step#0 ? (dword~) sin16s_gen2::$3 - (dword) sin16s_gen2::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin16s_gen2::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen2::wavelength#5 ← phi( sin16s_gen2/(word) sin16s_gen2::wavelength#1 ) + (signed word*) sin16s_gen2::sintab#5 ← phi( sin16s_gen2/(signed word*) sin16s_gen2::sintab#6 ) + (signed word) sin16s_gen2::offs#4 ← phi( sin16s_gen2/(signed word) sin16s_gen2::offs#0 ) + (signed word) sin16s_gen2::ampl#3 ← phi( sin16s_gen2/(signed word) sin16s_gen2::ampl#0 ) + (word) rem16u#15 ← phi( sin16s_gen2/(word) rem16u#5 ) + (dword) div32u16u::return#4 ← phi( sin16s_gen2/(dword) div32u16u::return#2 ) + (dword~) sin16s_gen2::$3 ← (dword) div32u16u::return#4 + (word) rem16u#6 ← (word) rem16u#15 + (dword) sin16s_gen2::step#0 ← (dword~) sin16s_gen2::$3 + (dword) sin16s_gen2::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen2::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin16s_gen2::@1 sin16s_gen2::@1: scope:[sin16s_gen2] from sin16s_gen2::@3 sin16s_gen2::@5 - (word) rem16u#31 ? phi( sin16s_gen2::@3/(word) rem16u#6 sin16s_gen2::@5/(word) rem16u#22 ) - (word) sin16s_gen2::wavelength#4 ? phi( sin16s_gen2::@3/(word) sin16s_gen2::wavelength#5 sin16s_gen2::@5/(word) sin16s_gen2::wavelength#2 ) - (word) sin16s_gen2::i#4 ? phi( sin16s_gen2::@3/(word) sin16s_gen2::i#0 sin16s_gen2::@5/(word) sin16s_gen2::i#1 ) - (dword) sin16s_gen2::step#3 ? phi( sin16s_gen2::@3/(dword) sin16s_gen2::step#0 sin16s_gen2::@5/(dword) sin16s_gen2::step#1 ) - (signed word*) sin16s_gen2::sintab#4 ? phi( sin16s_gen2::@3/(signed word*) sin16s_gen2::sintab#5 sin16s_gen2::@5/(signed word*) sin16s_gen2::sintab#0 ) - (signed word) sin16s_gen2::offs#3 ? phi( sin16s_gen2::@3/(signed word) sin16s_gen2::offs#4 sin16s_gen2::@5/(signed word) sin16s_gen2::offs#1 ) - (signed word) sin16s_gen2::ampl#2 ? phi( sin16s_gen2::@3/(signed word) sin16s_gen2::ampl#3 sin16s_gen2::@5/(signed word) sin16s_gen2::ampl#4 ) - (dword) sin16s_gen2::x#2 ? phi( sin16s_gen2::@3/(dword) sin16s_gen2::x#0 sin16s_gen2::@5/(dword) sin16s_gen2::x#1 ) - (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 + (word) rem16u#31 ← phi( sin16s_gen2::@3/(word) rem16u#6 sin16s_gen2::@5/(word) rem16u#22 ) + (word) sin16s_gen2::wavelength#4 ← phi( sin16s_gen2::@3/(word) sin16s_gen2::wavelength#5 sin16s_gen2::@5/(word) sin16s_gen2::wavelength#2 ) + (word) sin16s_gen2::i#4 ← phi( sin16s_gen2::@3/(word) sin16s_gen2::i#0 sin16s_gen2::@5/(word) sin16s_gen2::i#1 ) + (dword) sin16s_gen2::step#3 ← phi( sin16s_gen2::@3/(dword) sin16s_gen2::step#0 sin16s_gen2::@5/(dword) sin16s_gen2::step#1 ) + (signed word*) sin16s_gen2::sintab#4 ← phi( sin16s_gen2::@3/(signed word*) sin16s_gen2::sintab#5 sin16s_gen2::@5/(signed word*) sin16s_gen2::sintab#0 ) + (signed word) sin16s_gen2::offs#3 ← phi( sin16s_gen2::@3/(signed word) sin16s_gen2::offs#4 sin16s_gen2::@5/(signed word) sin16s_gen2::offs#1 ) + (signed word) sin16s_gen2::ampl#2 ← phi( sin16s_gen2::@3/(signed word) sin16s_gen2::ampl#3 sin16s_gen2::@5/(signed word) sin16s_gen2::ampl#4 ) + (dword) sin16s_gen2::x#2 ← phi( sin16s_gen2::@3/(dword) sin16s_gen2::x#0 sin16s_gen2::@5/(dword) sin16s_gen2::x#1 ) + (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 call sin16s - (signed word) sin16s::return#0 ? (signed word) sin16s::return#2 + (signed word) sin16s::return#0 ← (signed word) sin16s::return#2 to:sin16s_gen2::@4 sin16s_gen2::@4: scope:[sin16s_gen2] from sin16s_gen2::@1 - (word) rem16u#26 ? phi( sin16s_gen2::@1/(word) rem16u#31 ) - (word) sin16s_gen2::wavelength#3 ? phi( sin16s_gen2::@1/(word) sin16s_gen2::wavelength#4 ) - (word) sin16s_gen2::i#3 ? phi( sin16s_gen2::@1/(word) sin16s_gen2::i#4 ) - (dword) sin16s_gen2::step#2 ? phi( sin16s_gen2::@1/(dword) sin16s_gen2::step#3 ) - (dword) sin16s_gen2::x#4 ? phi( sin16s_gen2::@1/(dword) sin16s_gen2::x#2 ) - (signed word*) sin16s_gen2::sintab#3 ? phi( sin16s_gen2::@1/(signed word*) sin16s_gen2::sintab#4 ) - (signed word) sin16s_gen2::offs#2 ? phi( sin16s_gen2::@1/(signed word) sin16s_gen2::offs#3 ) - (signed word) sin16s_gen2::ampl#1 ? phi( sin16s_gen2::@1/(signed word) sin16s_gen2::ampl#2 ) - (signed word) sin16s::return#3 ? phi( sin16s_gen2::@1/(signed word) sin16s::return#0 ) - (signed word~) sin16s_gen2::$4 ? (signed word) sin16s::return#3 - (signed word) mul16s::a#0 ? (signed word~) sin16s_gen2::$4 - (signed word) mul16s::b#0 ? (signed word) sin16s_gen2::ampl#1 + (word) rem16u#26 ← phi( sin16s_gen2::@1/(word) rem16u#31 ) + (word) sin16s_gen2::wavelength#3 ← phi( sin16s_gen2::@1/(word) sin16s_gen2::wavelength#4 ) + (word) sin16s_gen2::i#3 ← phi( sin16s_gen2::@1/(word) sin16s_gen2::i#4 ) + (dword) sin16s_gen2::step#2 ← phi( sin16s_gen2::@1/(dword) sin16s_gen2::step#3 ) + (dword) sin16s_gen2::x#4 ← phi( sin16s_gen2::@1/(dword) sin16s_gen2::x#2 ) + (signed word*) sin16s_gen2::sintab#3 ← phi( sin16s_gen2::@1/(signed word*) sin16s_gen2::sintab#4 ) + (signed word) sin16s_gen2::offs#2 ← phi( sin16s_gen2::@1/(signed word) sin16s_gen2::offs#3 ) + (signed word) sin16s_gen2::ampl#1 ← phi( sin16s_gen2::@1/(signed word) sin16s_gen2::ampl#2 ) + (signed word) sin16s::return#3 ← phi( sin16s_gen2::@1/(signed word) sin16s::return#0 ) + (signed word~) sin16s_gen2::$4 ← (signed word) sin16s::return#3 + (signed word) mul16s::a#0 ← (signed word~) sin16s_gen2::$4 + (signed word) mul16s::b#0 ← (signed word) sin16s_gen2::ampl#1 call mul16s - (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#1 + (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#1 to:sin16s_gen2::@5 sin16s_gen2::@5: scope:[sin16s_gen2] from sin16s_gen2::@4 - (signed word) sin16s_gen2::ampl#4 ? phi( sin16s_gen2::@4/(signed word) sin16s_gen2::ampl#1 ) - (word) rem16u#22 ? phi( sin16s_gen2::@4/(word) rem16u#26 ) - (word) sin16s_gen2::wavelength#2 ? phi( sin16s_gen2::@4/(word) sin16s_gen2::wavelength#3 ) - (word) sin16s_gen2::i#2 ? phi( sin16s_gen2::@4/(word) sin16s_gen2::i#3 ) - (dword) sin16s_gen2::step#1 ? phi( sin16s_gen2::@4/(dword) sin16s_gen2::step#2 ) - (dword) sin16s_gen2::x#3 ? phi( sin16s_gen2::@4/(dword) sin16s_gen2::x#4 ) - (signed word*) sin16s_gen2::sintab#2 ? phi( sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#3 ) - (signed word) sin16s_gen2::offs#1 ? phi( sin16s_gen2::@4/(signed word) sin16s_gen2::offs#2 ) - (signed dword) mul16s::return#4 ? phi( sin16s_gen2::@4/(signed dword) mul16s::return#2 ) - (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#4 - (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 - (signed word~) sin16s_gen2::$7 ? ((signed word)) (word~) sin16s_gen2::$6 - (signed word~) sin16s_gen2::$8 ? (signed word) sin16s_gen2::offs#1 + (signed word~) sin16s_gen2::$7 - *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 - (signed word*~) sin16s_gen2::$9 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) sin16s_gen2::sintab#0 ? (signed word*~) sin16s_gen2::$9 - (dword~) sin16s_gen2::$10 ? (dword) sin16s_gen2::x#3 + (dword) sin16s_gen2::step#1 - (dword) sin16s_gen2::x#1 ? (dword~) sin16s_gen2::$10 - (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 - (bool~) sin16s_gen2::$11 ? (word) sin16s_gen2::i#1 < (word) sin16s_gen2::wavelength#2 + (signed word) sin16s_gen2::ampl#4 ← phi( sin16s_gen2::@4/(signed word) sin16s_gen2::ampl#1 ) + (word) rem16u#22 ← phi( sin16s_gen2::@4/(word) rem16u#26 ) + (word) sin16s_gen2::wavelength#2 ← phi( sin16s_gen2::@4/(word) sin16s_gen2::wavelength#3 ) + (word) sin16s_gen2::i#2 ← phi( sin16s_gen2::@4/(word) sin16s_gen2::i#3 ) + (dword) sin16s_gen2::step#1 ← phi( sin16s_gen2::@4/(dword) sin16s_gen2::step#2 ) + (dword) sin16s_gen2::x#3 ← phi( sin16s_gen2::@4/(dword) sin16s_gen2::x#4 ) + (signed word*) sin16s_gen2::sintab#2 ← phi( sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#3 ) + (signed word) sin16s_gen2::offs#1 ← phi( sin16s_gen2::@4/(signed word) sin16s_gen2::offs#2 ) + (signed dword) mul16s::return#4 ← phi( sin16s_gen2::@4/(signed dword) mul16s::return#2 ) + (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#4 + (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 + (signed word~) sin16s_gen2::$7 ← ((signed word)) (word~) sin16s_gen2::$6 + (signed word~) sin16s_gen2::$8 ← (signed word) sin16s_gen2::offs#1 + (signed word~) sin16s_gen2::$7 + *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 + (signed word*~) sin16s_gen2::$9 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) sin16s_gen2::sintab#0 ← (signed word*~) sin16s_gen2::$9 + (dword~) sin16s_gen2::$10 ← (dword) sin16s_gen2::x#3 + (dword) sin16s_gen2::step#1 + (dword) sin16s_gen2::x#1 ← (dword~) sin16s_gen2::$10 + (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 + (bool~) sin16s_gen2::$11 ← (word) sin16s_gen2::i#1 < (word) sin16s_gen2::wavelength#2 if((bool~) sin16s_gen2::$11) goto sin16s_gen2::@1 to:sin16s_gen2::@return sin16s_gen2::@return: scope:[sin16s_gen2] from sin16s_gen2::@5 - (word) rem16u#16 ? phi( sin16s_gen2::@5/(word) rem16u#22 ) - (word) rem16u#7 ? (word) rem16u#16 + (word) rem16u#16 ← phi( sin16s_gen2::@5/(word) rem16u#22 ) + (word) rem16u#7 ← (word) rem16u#16 return to:@return sin16s: scope:[sin16s] from sin16s_gen2::@1 - (dword) sin16s::x#3 ? phi( sin16s_gen2::@1/(dword) sin16s::x#0 ) - (byte) sin16s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 - (bool~) sin16s::$1 ? ! (bool~) sin16s::$0 + (dword) sin16s::x#3 ← phi( sin16s_gen2::@1/(dword) sin16s::x#0 ) + (byte) sin16s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 + (bool~) sin16s::$1 ← ! (bool~) sin16s::$0 if((bool~) sin16s::$1) goto sin16s::@1 to:sin16s::@4 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - (byte) sin16s::isUpper#8 ? phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) - (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) - (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 - (bool~) sin16s::$3 ? ! (bool~) sin16s::$2 + (byte) sin16s::isUpper#8 ← phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) + (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) + (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 + (bool~) sin16s::$3 ← ! (bool~) sin16s::$2 if((bool~) sin16s::$3) goto sin16s::@2 to:sin16s::@5 sin16s::@4: scope:[sin16s] from sin16s - (dword) sin16s::x#5 ? phi( sin16s/(dword) sin16s::x#3 ) - (dword~) sin16s::$18 ? (dword) sin16s::x#5 - (dword) PI_u4f28#0 - (dword) sin16s::x#1 ? (dword~) sin16s::$18 - (byte) sin16s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) sin16s::x#5 ← phi( sin16s/(dword) sin16s::x#3 ) + (dword~) sin16s::$18 ← (dword) sin16s::x#5 - (dword) PI_u4f28#0 + (dword) sin16s::x#1 ← (dword~) sin16s::$18 + (byte) sin16s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin16s::@1 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - (byte) sin16s::isUpper#7 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) - (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) sin16s::$5 ? > (dword~) sin16s::$4 - (word) sin16s::x1#0 ? (word~) sin16s::$5 - (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 - (byte) mulu16_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#7 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) + (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) sin16s::$5 ← > (dword~) sin16s::$4 + (word) sin16s::x1#0 ← (word~) sin16s::$5 + (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 + (byte) mulu16_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#6 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@2 - (byte) sin16s::isUpper#6 ? phi( sin16s::@2/(byte) sin16s::isUpper#7 ) - (word) sin16s::x1#1 ? phi( sin16s::@2/(word) sin16s::x1#0 ) - (word) mulu16_sel::return#7 ? phi( sin16s::@2/(word) mulu16_sel::return#0 ) - (word~) sin16s::$6 ? (word) mulu16_sel::return#7 - (word) sin16s::x2#0 ? (word~) sin16s::$6 - (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - (word) mulu16_sel::v2#1 ? (word) sin16s::x1#1 - (byte) mulu16_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#6 ← phi( sin16s::@2/(byte) sin16s::isUpper#7 ) + (word) sin16s::x1#1 ← phi( sin16s::@2/(word) sin16s::x1#0 ) + (word) mulu16_sel::return#7 ← phi( sin16s::@2/(word) mulu16_sel::return#0 ) + (word~) sin16s::$6 ← (word) mulu16_sel::return#7 + (word) sin16s::x2#0 ← (word~) sin16s::$6 + (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + (word) mulu16_sel::v2#1 ← (word) sin16s::x1#1 + (byte) mulu16_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#6 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - (byte) sin16s::isUpper#5 ? phi( sin16s::@8/(byte) sin16s::isUpper#6 ) - (word) sin16s::x1#4 ? phi( sin16s::@8/(word) sin16s::x1#1 ) - (word) mulu16_sel::return#8 ? phi( sin16s::@8/(word) mulu16_sel::return#1 ) - (word~) sin16s::$7 ? (word) mulu16_sel::return#8 - (word) sin16s::x3#0 ? (word~) sin16s::$7 - (word/signed word/dword/signed dword~) sin16s::$8 ? (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 - (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 - (word) mulu16_sel::v2#2 ? (word/signed word/dword/signed dword~) sin16s::$8 - (byte) mulu16_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#5 ← phi( sin16s::@8/(byte) sin16s::isUpper#6 ) + (word) sin16s::x1#4 ← phi( sin16s::@8/(word) sin16s::x1#1 ) + (word) mulu16_sel::return#8 ← phi( sin16s::@8/(word) mulu16_sel::return#1 ) + (word~) sin16s::$7 ← (word) mulu16_sel::return#8 + (word) sin16s::x3#0 ← (word~) sin16s::$7 + (word/signed word/dword/signed dword~) sin16s::$8 ← (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 + (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 + (word) mulu16_sel::v2#2 ← (word/signed word/dword/signed dword~) sin16s::$8 + (byte) mulu16_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#6 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - (byte) sin16s::isUpper#4 ? phi( sin16s::@9/(byte) sin16s::isUpper#5 ) - (word) sin16s::x3#1 ? phi( sin16s::@9/(word) sin16s::x3#0 ) - (word) sin16s::x1#2 ? phi( sin16s::@9/(word) sin16s::x1#4 ) - (word) mulu16_sel::return#9 ? phi( sin16s::@9/(word) mulu16_sel::return#2 ) - (word~) sin16s::$9 ? (word) mulu16_sel::return#9 - (word) sin16s::x3_6#0 ? (word~) sin16s::$9 - (word~) sin16s::$10 ? (word) sin16s::x1#2 - (word) sin16s::x3_6#0 - (word) sin16s::usinx#0 ? (word~) sin16s::$10 - (word) mulu16_sel::v1#3 ? (word) sin16s::x3#1 - (word) mulu16_sel::v2#3 ? (word) sin16s::x1#2 - (byte) mulu16_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#4 ← phi( sin16s::@9/(byte) sin16s::isUpper#5 ) + (word) sin16s::x3#1 ← phi( sin16s::@9/(word) sin16s::x3#0 ) + (word) sin16s::x1#2 ← phi( sin16s::@9/(word) sin16s::x1#4 ) + (word) mulu16_sel::return#9 ← phi( sin16s::@9/(word) mulu16_sel::return#2 ) + (word~) sin16s::$9 ← (word) mulu16_sel::return#9 + (word) sin16s::x3_6#0 ← (word~) sin16s::$9 + (word~) sin16s::$10 ← (word) sin16s::x1#2 - (word) sin16s::x3_6#0 + (word) sin16s::usinx#0 ← (word~) sin16s::$10 + (word) mulu16_sel::v1#3 ← (word) sin16s::x3#1 + (word) mulu16_sel::v2#3 ← (word) sin16s::x1#2 + (byte) mulu16_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#3 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#3 ← (word) mulu16_sel::return#6 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - (byte) sin16s::isUpper#3 ? phi( sin16s::@10/(byte) sin16s::isUpper#4 ) - (word) sin16s::usinx#4 ? phi( sin16s::@10/(word) sin16s::usinx#0 ) - (word) sin16s::x1#3 ? phi( sin16s::@10/(word) sin16s::x1#2 ) - (word) mulu16_sel::return#10 ? phi( sin16s::@10/(word) mulu16_sel::return#3 ) - (word~) sin16s::$11 ? (word) mulu16_sel::return#10 - (word) sin16s::x4#0 ? (word~) sin16s::$11 - (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - (word) mulu16_sel::v2#4 ? (word) sin16s::x1#3 - (byte) mulu16_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#3 ← phi( sin16s::@10/(byte) sin16s::isUpper#4 ) + (word) sin16s::usinx#4 ← phi( sin16s::@10/(word) sin16s::usinx#0 ) + (word) sin16s::x1#3 ← phi( sin16s::@10/(word) sin16s::x1#2 ) + (word) mulu16_sel::return#10 ← phi( sin16s::@10/(word) mulu16_sel::return#3 ) + (word~) sin16s::$11 ← (word) mulu16_sel::return#10 + (word) sin16s::x4#0 ← (word~) sin16s::$11 + (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + (word) mulu16_sel::v2#4 ← (word) sin16s::x1#3 + (byte) mulu16_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#4 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#4 ← (word) mulu16_sel::return#6 to:sin16s::@12 sin16s::@12: scope:[sin16s] from sin16s::@11 - (byte) sin16s::isUpper#2 ? phi( sin16s::@11/(byte) sin16s::isUpper#3 ) - (word) sin16s::usinx#2 ? phi( sin16s::@11/(word) sin16s::usinx#4 ) - (word) mulu16_sel::return#11 ? phi( sin16s::@11/(word) mulu16_sel::return#4 ) - (word~) sin16s::$12 ? (word) mulu16_sel::return#11 - (word) sin16s::x5#0 ? (word~) sin16s::$12 - (word~) sin16s::$13 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) sin16s::x5_128#0 ? (word~) sin16s::$13 - (word~) sin16s::$14 ? (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 - (word) sin16s::usinx#1 ? (word~) sin16s::$14 - (signed word~) sin16s::$15 ? ((signed word)) (word) sin16s::usinx#1 - (signed word) sin16s::sinx#0 ? (signed word~) sin16s::$15 - (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$17 ? ! (bool~) sin16s::$16 + (byte) sin16s::isUpper#2 ← phi( sin16s::@11/(byte) sin16s::isUpper#3 ) + (word) sin16s::usinx#2 ← phi( sin16s::@11/(word) sin16s::usinx#4 ) + (word) mulu16_sel::return#11 ← phi( sin16s::@11/(word) mulu16_sel::return#4 ) + (word~) sin16s::$12 ← (word) mulu16_sel::return#11 + (word) sin16s::x5#0 ← (word~) sin16s::$12 + (word~) sin16s::$13 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) sin16s::x5_128#0 ← (word~) sin16s::$13 + (word~) sin16s::$14 ← (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 + (word) sin16s::usinx#1 ← (word~) sin16s::$14 + (signed word~) sin16s::$15 ← ((signed word)) (word) sin16s::usinx#1 + (signed word) sin16s::sinx#0 ← (signed word~) sin16s::$15 + (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$17 ← ! (bool~) sin16s::$16 if((bool~) sin16s::$17) goto sin16s::@3 to:sin16s::@6 sin16s::@5: scope:[sin16s] from sin16s::@1 - (byte) sin16s::isUpper#9 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 ) - (dword) sin16s::x#7 ? phi( sin16s::@1/(dword) sin16s::x#4 ) - (dword~) sin16s::$19 ? (dword) PI_u4f28#0 - (dword) sin16s::x#7 - (dword) sin16s::x#2 ? (dword~) sin16s::$19 + (byte) sin16s::isUpper#9 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 ) + (dword) sin16s::x#7 ← phi( sin16s::@1/(dword) sin16s::x#4 ) + (dword~) sin16s::$19 ← (dword) PI_u4f28#0 - (dword) sin16s::x#7 + (dword) sin16s::x#2 ← (dword~) sin16s::$19 to:sin16s::@2 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - (signed word) sin16s::sinx#2 ? phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) - (signed word) sin16s::return#1 ? (signed word) sin16s::sinx#2 + (signed word) sin16s::sinx#2 ← phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) + (signed word) sin16s::return#1 ← (signed word) sin16s::sinx#2 to:sin16s::@return sin16s::@6: scope:[sin16s] from sin16s::@12 - (word) sin16s::usinx#3 ? phi( sin16s::@12/(word) sin16s::usinx#1 ) - (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#3 - (signed word~) sin16s::$21 ? - (signed word~) sin16s::$20 - (signed word) sin16s::sinx#1 ? (signed word~) sin16s::$21 + (word) sin16s::usinx#3 ← phi( sin16s::@12/(word) sin16s::usinx#1 ) + (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#3 + (signed word~) sin16s::$21 ← - (signed word~) sin16s::$20 + (signed word) sin16s::sinx#1 ← (signed word~) sin16s::$21 to:sin16s::@3 sin16s::@return: scope:[sin16s] from sin16s::@3 - (signed word) sin16s::return#4 ? phi( sin16s::@3/(signed word) sin16s::return#1 ) - (signed word) sin16s::return#2 ? (signed word) sin16s::return#4 + (signed word) sin16s::return#4 ← phi( sin16s::@3/(signed word) sin16s::return#1 ) + (signed word) sin16s::return#2 ← (signed word) sin16s::return#4 return to:@return mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@11 sin16s::@2 sin16s::@8 sin16s::@9 - (byte) mulu16_sel::select#6 ? phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) - (word) mulu16_sel::v2#5 ? phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) - (word) mulu16_sel::v1#5 ? phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) - (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 - (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + (byte) mulu16_sel::select#6 ← phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) + (word) mulu16_sel::v2#5 ← phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) + (word) mulu16_sel::v1#5 ← phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) + (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 + (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 call mul16u - (dword) mul16u::return#3 ? (dword) mul16u::return#1 + (dword) mul16u::return#3 ← (dword) mul16u::return#1 to:mulu16_sel::@2 mulu16_sel::@2: scope:[mulu16_sel] from mulu16_sel - (byte) mulu16_sel::select#5 ? phi( mulu16_sel/(byte) mulu16_sel::select#6 ) - (dword) mul16u::return#6 ? phi( mulu16_sel/(dword) mul16u::return#3 ) - (dword~) mulu16_sel::$0 ? (dword) mul16u::return#6 - (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - (word~) mulu16_sel::$2 ? > (dword~) mulu16_sel::$1 - (word) mulu16_sel::return#5 ? (word~) mulu16_sel::$2 + (byte) mulu16_sel::select#5 ← phi( mulu16_sel/(byte) mulu16_sel::select#6 ) + (dword) mul16u::return#6 ← phi( mulu16_sel/(dword) mul16u::return#3 ) + (dword~) mulu16_sel::$0 ← (dword) mul16u::return#6 + (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + (word~) mulu16_sel::$2 ← > (dword~) mulu16_sel::$1 + (word) mulu16_sel::return#5 ← (word~) mulu16_sel::$2 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@2 - (word) mulu16_sel::return#12 ? phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) - (word) mulu16_sel::return#6 ? (word) mulu16_sel::return#12 + (word) mulu16_sel::return#12 ← phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) + (word) mulu16_sel::return#6 ← (word) mulu16_sel::return#12 return to:@return fill: scope:[fill] from main::@8 - (byte) fill::val#2 ? phi( main::@8/(byte) fill::val#0 ) - (word) fill::size#1 ? phi( main::@8/(word) fill::size#0 ) - (byte*) fill::start#1 ? phi( main::@8/(byte*) fill::start#0 ) - (byte*~) fill::$0 ? (byte*) fill::start#1 + (word) fill::size#1 - (byte*) fill::end#0 ? (byte*~) fill::$0 - (byte*) fill::addr#0 ? (byte*) fill::start#1 + (byte) fill::val#2 ← phi( main::@8/(byte) fill::val#0 ) + (word) fill::size#1 ← phi( main::@8/(word) fill::size#0 ) + (byte*) fill::start#1 ← phi( main::@8/(byte*) fill::start#0 ) + (byte*~) fill::$0 ← (byte*) fill::start#1 + (word) fill::size#1 + (byte*) fill::end#0 ← (byte*~) fill::$0 + (byte*) fill::addr#0 ← (byte*) fill::start#1 to:fill::@1 fill::@1: scope:[fill] from fill fill::@1 - (byte*) fill::end#1 ? phi( fill/(byte*) fill::end#0 fill::@1/(byte*) fill::end#1 ) - (byte*) fill::addr#2 ? phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) - (byte) fill::val#1 ? phi( fill/(byte) fill::val#2 fill::@1/(byte) fill::val#1 ) - *((byte*) fill::addr#2) ? (byte) fill::val#1 - (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 - (bool~) fill::$1 ? (byte*) fill::addr#1 != (byte*) fill::end#1 + (byte*) fill::end#1 ← phi( fill/(byte*) fill::end#0 fill::@1/(byte*) fill::end#1 ) + (byte*) fill::addr#2 ← phi( fill/(byte*) fill::addr#0 fill::@1/(byte*) fill::addr#1 ) + (byte) fill::val#1 ← phi( fill/(byte) fill::val#2 fill::@1/(byte) fill::val#1 ) + *((byte*) fill::addr#2) ← (byte) fill::val#1 + (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 + (bool~) fill::$1 ← (byte*) fill::addr#1 != (byte*) fill::end#1 if((bool~) fill::$1) goto fill::@1 to:fill::@return fill::@return: scope:[fill] from fill::@1 return to:@return @26: scope:[] from @17 - (word) rem16u#32 ? phi( @17/(word) rem16u#34 ) - (byte[$100]) bitmap_plot_ylo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_yhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_bit#0 ? { fill( $100, 0) } + (word) rem16u#32 ← phi( @17/(word) rem16u#34 ) + (byte[$100]) bitmap_plot_ylo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_yhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_bit#0 ← { fill( $100, 0) } to:@29 bitmap_init: scope:[bitmap_init] from main::@9 - (byte*) bitmap_init::bitmap#5 ? phi( main::@9/(byte*) bitmap_init::bitmap#0 ) - (byte) bitmap_init::bits#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) bitmap_init::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::bitmap#5 ← phi( main::@9/(byte*) bitmap_init::bitmap#0 ) + (byte) bitmap_init::bits#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) bitmap_init::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - (byte*) bitmap_init::bitmap#3 ? phi( bitmap_init/(byte*) bitmap_init::bitmap#5 bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) - (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_init::$0 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_init::$1 ? ! (bool~) bitmap_init::$0 + (byte*) bitmap_init::bitmap#3 ← phi( bitmap_init/(byte*) bitmap_init::bitmap#5 bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) + (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_init::$0 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_init::$1 ← ! (bool~) bitmap_init::$0 if((bool~) bitmap_init::$1) goto bitmap_init::@2 to:bitmap_init::@3 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@3 - (byte*) bitmap_init::bitmap#2 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) - (byte) bitmap_init::bits#4 ? phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) - (byte) bitmap_init::x#3 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) - (byte) bitmap_init::x#1 ? (byte) bitmap_init::x#3 + rangenext(0,$ff) - (bool~) bitmap_init::$2 ? (byte) bitmap_init::x#1 != rangelast(0,$ff) + (byte*) bitmap_init::bitmap#2 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) + (byte) bitmap_init::bits#4 ← phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) + (byte) bitmap_init::x#3 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) + (byte) bitmap_init::x#1 ← (byte) bitmap_init::x#3 + rangenext(0,$ff) + (bool~) bitmap_init::$2 ← (byte) bitmap_init::x#1 != rangelast(0,$ff) if((bool~) bitmap_init::$2) goto bitmap_init::@1 to:bitmap_init::@4 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@1 - (byte*) bitmap_init::bitmap#4 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 ) - (byte) bitmap_init::x#4 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) - (byte) bitmap_init::bits#2 ? (byte/word/signed word/dword/signed dword) $80 + (byte*) bitmap_init::bitmap#4 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 ) + (byte) bitmap_init::x#4 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) + (byte) bitmap_init::bits#2 ← (byte/word/signed word/dword/signed dword) $80 to:bitmap_init::@2 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@2 - (byte*) bitmap_init::bitmap#1 ? phi( bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) - (byte*) bitmap_init::yoffs#0 ? (byte*) bitmap_init::bitmap#1 - (byte) bitmap_init::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::bitmap#1 ← phi( bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) + (byte*) bitmap_init::yoffs#0 ← (byte*) bitmap_init::bitmap#1 + (byte) bitmap_init::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@4 bitmap_init::@6 - (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) - (byte) bitmap_init::y#2 ? phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) - (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 - (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 - *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 - (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 - *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 - (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$8 ? (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$9 ? ! (bool~) bitmap_init::$8 + (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) + (byte) bitmap_init::y#2 ← phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) + (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 + (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 + *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 + (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 + *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 + (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$8 ← (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$9 ← ! (bool~) bitmap_init::$8 if((bool~) bitmap_init::$9) goto bitmap_init::@6 to:bitmap_init::@7 bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@5 bitmap_init::@7 - (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) - (byte) bitmap_init::y#3 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) - (byte) bitmap_init::y#1 ? (byte) bitmap_init::y#3 + rangenext(0,$ff) - (bool~) bitmap_init::$12 ? (byte) bitmap_init::y#1 != rangelast(0,$ff) + (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) + (byte) bitmap_init::y#3 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) + (byte) bitmap_init::y#1 ← (byte) bitmap_init::y#3 + rangenext(0,$ff) + (bool~) bitmap_init::$12 ← (byte) bitmap_init::y#1 != rangelast(0,$ff) if((bool~) bitmap_init::$12) goto bitmap_init::@5 to:bitmap_init::@return bitmap_init::@7: scope:[bitmap_init] from bitmap_init::@5 - (byte) bitmap_init::y#4 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) - (byte*) bitmap_init::yoffs#3 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) - (word/signed word/dword/signed dword~) bitmap_init::$10 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*~) bitmap_init::$11 ? (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$10 - (byte*) bitmap_init::yoffs#1 ? (byte*~) bitmap_init::$11 + (byte) bitmap_init::y#4 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) + (byte*) bitmap_init::yoffs#3 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) + (word/signed word/dword/signed dword~) bitmap_init::$10 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*~) bitmap_init::$11 ← (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$10 + (byte*) bitmap_init::yoffs#1 ← (byte*~) bitmap_init::$11 to:bitmap_init::@6 bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@6 return to:@return bitmap_clear: scope:[bitmap_clear] from main::@10 - (byte*~) bitmap_clear::$0 ? ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_ylo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } - (byte*) bitmap_clear::bitmap#0 ? (byte*~) bitmap_clear::$0 - (byte) bitmap_clear::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) bitmap_clear::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_ylo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } + (byte*) bitmap_clear::bitmap#0 ← (byte*~) bitmap_clear::$0 + (byte) bitmap_clear::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) - (byte) bitmap_clear::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) + (byte) bitmap_clear::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - (byte) bitmap_clear::y#3 ? phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - (byte) bitmap_clear::x#1 ? (byte) bitmap_clear::x#2 + rangenext(0,$c7) - (bool~) bitmap_clear::$1 ? (byte) bitmap_clear::x#1 != rangelast(0,$c7) + (byte) bitmap_clear::y#3 ← phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + (byte) bitmap_clear::x#1 ← (byte) bitmap_clear::x#2 + rangenext(0,$c7) + (bool~) bitmap_clear::$1 ← (byte) bitmap_clear::x#1 != rangelast(0,$c7) if((bool~) bitmap_clear::$1) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - (byte*) bitmap_clear::bitmap#4 ? phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - (byte) bitmap_clear::y#2 ? phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::y#1 ? (byte) bitmap_clear::y#2 + rangenext(0,$27) - (bool~) bitmap_clear::$2 ? (byte) bitmap_clear::y#1 != rangelast(0,$27) + (byte*) bitmap_clear::bitmap#4 ← phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + (byte) bitmap_clear::y#2 ← phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::y#1 ← (byte) bitmap_clear::y#2 + rangenext(0,$27) + (bool~) bitmap_clear::$2 ← (byte) bitmap_clear::y#1 != rangelast(0,$27) if((bool~) bitmap_clear::$2) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 return to:@return bitmap_plot: scope:[bitmap_plot] from render_sine::@5 render_sine::@7 - (word) bitmap_plot::x#2 ? phi( render_sine::@5/(word) bitmap_plot::x#0 render_sine::@7/(word) bitmap_plot::x#1 ) - (byte) bitmap_plot::y#2 ? phi( render_sine::@5/(byte) bitmap_plot::y#0 render_sine::@7/(byte) bitmap_plot::y#1 ) - (byte*~) bitmap_plot::$0 ? ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) } - (byte*) bitmap_plot::plotter#0 ? (byte*~) bitmap_plot::$0 - (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 - (byte*) bitmap_plot::plotter#1 ? (byte*) bitmap_plot::plotter#0 + (word~) bitmap_plot::$1 - (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#2 - *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) + (word) bitmap_plot::x#2 ← phi( render_sine::@5/(word) bitmap_plot::x#0 render_sine::@7/(word) bitmap_plot::x#1 ) + (byte) bitmap_plot::y#2 ← phi( render_sine::@5/(byte) bitmap_plot::y#0 render_sine::@7/(byte) bitmap_plot::y#1 ) + (byte*~) bitmap_plot::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) } + (byte*) bitmap_plot::plotter#0 ← (byte*~) bitmap_plot::$0 + (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 + (byte*) bitmap_plot::plotter#1 ← (byte*) bitmap_plot::plotter#0 + (word~) bitmap_plot::$1 + (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#2 + *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot return to:@return @29: scope:[] from @26 - (word) rem16u#30 ? phi( @26/(word) rem16u#32 ) - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) BITMAP#0 ? ((byte*)) (word/signed word/dword/signed dword) $2000 - (word) SIN_SIZE#0 ? (word/signed word/dword/signed dword) $200 - (signed word[$200]) sin#0 ? { fill( $200, 0) } - (signed word*) sin2#0 ? ((signed word*)) (word/signed word/dword/signed dword) $1400 + (word) rem16u#30 ← phi( @26/(word) rem16u#32 ) + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) BITMAP#0 ← ((byte*)) (word/signed word/dword/signed dword) $2000 + (word) SIN_SIZE#0 ← (word/signed word/dword/signed dword) $200 + (signed word[$200]) sin#0 ← { fill( $200, 0) } + (signed word*) sin2#0 ← ((signed word*)) (word/signed word/dword/signed dword) $1400 kickasm(location (signed word*) sin2#0) {{ .for(var i=0; i<512; i++) { .word sin(toRadians([i*360]/512))*320 } }} to:@32 main: scope:[main] from @32 - (word) rem16u#45 ? phi( @32/(word) rem16u#25 ) + (word) rem16u#45 ← phi( @32/(word) rem16u#25 ) asm { sei } - *((byte*) PROCPORT_DDR#0) ? (byte) PROCPORT_DDR_MEMORY_MASK#0 - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_IO#0 - (byte~) main::$0 ? (byte) VIC_BMM#0 | (byte) VIC_DEN#0 - (byte~) main::$1 ? (byte~) main::$0 | (byte) VIC_RSEL#0 - (byte/word/dword~) main::$2 ? (byte~) main::$1 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) D011#0) ? (byte/word/dword~) main::$2 - (byte*) main::vicSelectGfxBank1_gfx#0 ? (byte*) SCREEN#0 + *((byte*) PROCPORT_DDR#0) ← (byte) PROCPORT_DDR_MEMORY_MASK#0 + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0 + (byte~) main::$0 ← (byte) VIC_BMM#0 | (byte) VIC_DEN#0 + (byte~) main::$1 ← (byte~) main::$0 | (byte) VIC_RSEL#0 + (byte/word/dword~) main::$2 ← (byte~) main::$1 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) D011#0) ← (byte/word/dword~) main::$2 + (byte*) main::vicSelectGfxBank1_gfx#0 ← (byte*) SCREEN#0 to:main::vicSelectGfxBank1 main::vicSelectGfxBank1: scope:[main] from main - (word) rem16u#44 ? phi( main/(word) rem16u#45 ) - (byte*) main::vicSelectGfxBank1_gfx#1 ? phi( main/(byte*) main::vicSelectGfxBank1_gfx#0 ) - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ? (byte*) main::vicSelectGfxBank1_gfx#1 + (word) rem16u#44 ← phi( main/(word) rem16u#45 ) + (byte*) main::vicSelectGfxBank1_gfx#1 ← phi( main/(byte*) main::vicSelectGfxBank1_gfx#0 ) + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ← (byte*) main::vicSelectGfxBank1_gfx#1 to:main::vicSelectGfxBank1_toDd001 main::vicSelectGfxBank1_toDd001: scope:[main] from main::vicSelectGfxBank1 - (word) rem16u#43 ? phi( main::vicSelectGfxBank1/(word) rem16u#44 ) - (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 ? phi( main::vicSelectGfxBank1/(byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ) - (word) main::vicSelectGfxBank1_toDd001_$0#0 ? ((word)) (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 - (byte) main::vicSelectGfxBank1_toDd001_$1#0 ? > (word) main::vicSelectGfxBank1_toDd001_$0#0 - (byte) main::vicSelectGfxBank1_toDd001_$2#0 ? (byte) main::vicSelectGfxBank1_toDd001_$1#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte) main::vicSelectGfxBank1_toDd001_$2#0 - (byte) main::vicSelectGfxBank1_toDd001_return#0 ? (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 + (word) rem16u#43 ← phi( main::vicSelectGfxBank1/(word) rem16u#44 ) + (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 ← phi( main::vicSelectGfxBank1/(byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ) + (word) main::vicSelectGfxBank1_toDd001_$0#0 ← ((word)) (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 + (byte) main::vicSelectGfxBank1_toDd001_$1#0 ← > (word) main::vicSelectGfxBank1_toDd001_$0#0 + (byte) main::vicSelectGfxBank1_toDd001_$2#0 ← (byte) main::vicSelectGfxBank1_toDd001_$1#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte) main::vicSelectGfxBank1_toDd001_$2#0 + (byte) main::vicSelectGfxBank1_toDd001_return#0 ← (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 to:main::vicSelectGfxBank1_toDd001_@return main::vicSelectGfxBank1_toDd001_@return: scope:[main] from main::vicSelectGfxBank1_toDd001 - (word) rem16u#42 ? phi( main::vicSelectGfxBank1_toDd001/(word) rem16u#43 ) - (byte) main::vicSelectGfxBank1_toDd001_return#2 ? phi( main::vicSelectGfxBank1_toDd001/(byte) main::vicSelectGfxBank1_toDd001_return#0 ) - (byte) main::vicSelectGfxBank1_toDd001_return#1 ? (byte) main::vicSelectGfxBank1_toDd001_return#2 + (word) rem16u#42 ← phi( main::vicSelectGfxBank1_toDd001/(word) rem16u#43 ) + (byte) main::vicSelectGfxBank1_toDd001_return#2 ← phi( main::vicSelectGfxBank1_toDd001/(byte) main::vicSelectGfxBank1_toDd001_return#0 ) + (byte) main::vicSelectGfxBank1_toDd001_return#1 ← (byte) main::vicSelectGfxBank1_toDd001_return#2 to:main::vicSelectGfxBank1_@1 main::vicSelectGfxBank1_@1: scope:[main] from main::vicSelectGfxBank1_toDd001_@return - (word) rem16u#41 ? phi( main::vicSelectGfxBank1_toDd001_@return/(word) rem16u#42 ) - (byte) main::vicSelectGfxBank1_toDd001_return#3 ? phi( main::vicSelectGfxBank1_toDd001_@return/(byte) main::vicSelectGfxBank1_toDd001_return#1 ) - (byte) main::vicSelectGfxBank1_$0#0 ? (byte) main::vicSelectGfxBank1_toDd001_return#3 - *((byte*) CIA2_PORT_A#0) ? (byte) main::vicSelectGfxBank1_$0#0 + (word) rem16u#41 ← phi( main::vicSelectGfxBank1_toDd001_@return/(word) rem16u#42 ) + (byte) main::vicSelectGfxBank1_toDd001_return#3 ← phi( main::vicSelectGfxBank1_toDd001_@return/(byte) main::vicSelectGfxBank1_toDd001_return#1 ) + (byte) main::vicSelectGfxBank1_$0#0 ← (byte) main::vicSelectGfxBank1_toDd001_return#3 + *((byte*) CIA2_PORT_A#0) ← (byte) main::vicSelectGfxBank1_$0#0 to:main::@7 main::@7: scope:[main] from main::vicSelectGfxBank1_@1 - (word) rem16u#40 ? phi( main::vicSelectGfxBank1_@1/(word) rem16u#41 ) - *((byte*) D016#0) ? (byte) VIC_CSEL#0 - (byte*) main::toD0181_screen#0 ? (byte*) SCREEN#0 - (byte*) main::toD0181_gfx#0 ? (byte*) BITMAP#0 + (word) rem16u#40 ← phi( main::vicSelectGfxBank1_@1/(word) rem16u#41 ) + *((byte*) D016#0) ← (byte) VIC_CSEL#0 + (byte*) main::toD0181_screen#0 ← (byte*) SCREEN#0 + (byte*) main::toD0181_gfx#0 ← (byte*) BITMAP#0 to:main::toD0181 main::toD0181: scope:[main] from main::@7 - (word) rem16u#39 ? phi( main::@7/(word) rem16u#40 ) - (byte*) main::toD0181_gfx#1 ? phi( main::@7/(byte*) main::toD0181_gfx#0 ) - (byte*) main::toD0181_screen#1 ? phi( main::@7/(byte*) main::toD0181_screen#0 ) - (word) main::toD0181_$0#0 ? ((word)) (byte*) main::toD0181_screen#1 - (word) main::toD0181_$1#0 ? (word) main::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff - (word) main::toD0181_$2#0 ? (word) main::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) main::toD0181_$3#0 ? > (word) main::toD0181_$2#0 - (word) main::toD0181_$4#0 ? ((word)) (byte*) main::toD0181_gfx#1 - (byte) main::toD0181_$5#0 ? > (word) main::toD0181_$4#0 - (byte) main::toD0181_$6#0 ? (byte) main::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) main::toD0181_$7#0 ? (byte) main::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) main::toD0181_$8#0 ? (byte) main::toD0181_$3#0 | (byte) main::toD0181_$7#0 - (byte) main::toD0181_return#0 ? (byte) main::toD0181_$8#0 + (word) rem16u#39 ← phi( main::@7/(word) rem16u#40 ) + (byte*) main::toD0181_gfx#1 ← phi( main::@7/(byte*) main::toD0181_gfx#0 ) + (byte*) main::toD0181_screen#1 ← phi( main::@7/(byte*) main::toD0181_screen#0 ) + (word) main::toD0181_$0#0 ← ((word)) (byte*) main::toD0181_screen#1 + (word) main::toD0181_$1#0 ← (word) main::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff + (word) main::toD0181_$2#0 ← (word) main::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) main::toD0181_$3#0 ← > (word) main::toD0181_$2#0 + (word) main::toD0181_$4#0 ← ((word)) (byte*) main::toD0181_gfx#1 + (byte) main::toD0181_$5#0 ← > (word) main::toD0181_$4#0 + (byte) main::toD0181_$6#0 ← (byte) main::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) main::toD0181_$7#0 ← (byte) main::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) main::toD0181_$8#0 ← (byte) main::toD0181_$3#0 | (byte) main::toD0181_$7#0 + (byte) main::toD0181_return#0 ← (byte) main::toD0181_$8#0 to:main::toD0181_@return main::toD0181_@return: scope:[main] from main::toD0181 - (word) rem16u#37 ? phi( main::toD0181/(word) rem16u#39 ) - (byte) main::toD0181_return#2 ? phi( main::toD0181/(byte) main::toD0181_return#0 ) - (byte) main::toD0181_return#1 ? (byte) main::toD0181_return#2 + (word) rem16u#37 ← phi( main::toD0181/(word) rem16u#39 ) + (byte) main::toD0181_return#2 ← phi( main::toD0181/(byte) main::toD0181_return#0 ) + (byte) main::toD0181_return#1 ← (byte) main::toD0181_return#2 to:main::@8 main::@8: scope:[main] from main::toD0181_@return - (word) rem16u#35 ? phi( main::toD0181_@return/(word) rem16u#37 ) - (byte) main::toD0181_return#3 ? phi( main::toD0181_@return/(byte) main::toD0181_return#1 ) - (byte~) main::$4 ? (byte) main::toD0181_return#3 - *((byte*) D018#0) ? (byte~) main::$4 - (byte*) fill::start#0 ? (byte*) SCREEN#0 - (word) fill::size#0 ? (word/signed word/dword/signed dword) $3e8 - (byte) fill::val#0 ? (byte) WHITE#0 + (word) rem16u#35 ← phi( main::toD0181_@return/(word) rem16u#37 ) + (byte) main::toD0181_return#3 ← phi( main::toD0181_@return/(byte) main::toD0181_return#1 ) + (byte~) main::$4 ← (byte) main::toD0181_return#3 + *((byte*) D018#0) ← (byte~) main::$4 + (byte*) fill::start#0 ← (byte*) SCREEN#0 + (word) fill::size#0 ← (word/signed word/dword/signed dword) $3e8 + (byte) fill::val#0 ← (byte) WHITE#0 call fill to:main::@9 main::@9: scope:[main] from main::@8 - (word) rem16u#33 ? phi( main::@8/(word) rem16u#35 ) - (byte*) bitmap_init::bitmap#0 ? (byte*) BITMAP#0 + (word) rem16u#33 ← phi( main::@8/(word) rem16u#35 ) + (byte*) bitmap_init::bitmap#0 ← (byte*) BITMAP#0 call bitmap_init to:main::@10 main::@10: scope:[main] from main::@9 - (word) rem16u#27 ? phi( main::@9/(word) rem16u#33 ) + (word) rem16u#27 ← phi( main::@9/(word) rem16u#33 ) call bitmap_clear to:main::@11 main::@11: scope:[main] from main::@10 - (word) rem16u#23 ? phi( main::@10/(word) rem16u#27 ) - (signed word/signed dword~) main::$8 ? - (word/signed word/dword/signed dword) $140 - (signed word*) sin16s_gen2::sintab#1 ? (signed word[$200]) sin#0 - (word) sin16s_gen2::wavelength#0 ? (word) SIN_SIZE#0 - (signed word) sin16s_gen2::min#0 ? (signed word/signed dword~) main::$8 - (signed word) sin16s_gen2::max#0 ? (word/signed word/dword/signed dword) $140 + (word) rem16u#23 ← phi( main::@10/(word) rem16u#27 ) + (signed word/signed dword~) main::$8 ← - (word/signed word/dword/signed dword) $140 + (signed word*) sin16s_gen2::sintab#1 ← (signed word[$200]) sin#0 + (word) sin16s_gen2::wavelength#0 ← (word) SIN_SIZE#0 + (signed word) sin16s_gen2::min#0 ← (signed word/signed dword~) main::$8 + (signed word) sin16s_gen2::max#0 ← (word/signed word/dword/signed dword) $140 call sin16s_gen2 to:main::@12 main::@12: scope:[main] from main::@11 - (word) rem16u#17 ? phi( main::@11/(word) rem16u#7 ) - (word) rem16u#8 ? (word) rem16u#17 + (word) rem16u#17 ← phi( main::@11/(word) rem16u#7 ) + (word) rem16u#8 ← (word) rem16u#17 call render_sine to:main::@13 main::@13: scope:[main] from main::@12 - (word) rem16u#28 ? phi( main::@12/(word) rem16u#8 ) + (word) rem16u#28 ← phi( main::@12/(word) rem16u#8 ) to:main::@1 main::@1: scope:[main] from main::@13 main::@2 - (word) rem16u#24 ? phi( main::@13/(word) rem16u#28 main::@2/(word) rem16u#29 ) + (word) rem16u#24 ← phi( main::@13/(word) rem16u#28 main::@2/(word) rem16u#29 ) if(true) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (word) rem16u#29 ? phi( main::@1/(word) rem16u#24 ) - *((byte*) BGCOL#0) ? ++ *((byte*) BGCOL#0) + (word) rem16u#29 ← phi( main::@1/(word) rem16u#24 ) + *((byte*) BGCOL#0) ← ++ *((byte*) BGCOL#0) to:main::@1 main::@return: scope:[main] from main::@1 - (word) rem16u#18 ? phi( main::@1/(word) rem16u#24 ) - (word) rem16u#9 ? (word) rem16u#18 + (word) rem16u#18 ← phi( main::@1/(word) rem16u#24 ) + (word) rem16u#9 ← (word) rem16u#18 return to:@return render_sine: scope:[render_sine] from main::@12 - (word) render_sine::xpos#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) render_sine::sin_idx#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) render_sine::xpos#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) render_sine::sin_idx#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_sine::@1 render_sine::@1: scope:[render_sine] from render_sine render_sine::@2 - (word) render_sine::xpos#6 ? phi( render_sine/(word) render_sine::xpos#0 render_sine::@2/(word) render_sine::xpos#8 ) - (word) render_sine::sin_idx#2 ? phi( render_sine/(word) render_sine::sin_idx#0 render_sine::@2/(word) render_sine::sin_idx#1 ) - (word~) render_sine::$0 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed word*~) render_sine::$1 ? (signed word[$200]) sin#0 + (word~) render_sine::$0 - (signed word) render_sine::sin_val#0 ? *((signed word*~) render_sine::$1) - (signed word) wrap_y::y#0 ? (signed word) render_sine::sin_val#0 + (word) render_sine::xpos#6 ← phi( render_sine/(word) render_sine::xpos#0 render_sine::@2/(word) render_sine::xpos#8 ) + (word) render_sine::sin_idx#2 ← phi( render_sine/(word) render_sine::sin_idx#0 render_sine::@2/(word) render_sine::sin_idx#1 ) + (word~) render_sine::$0 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (signed word*~) render_sine::$1 ← (signed word[$200]) sin#0 + (word~) render_sine::$0 + (signed word) render_sine::sin_val#0 ← *((signed word*~) render_sine::$1) + (signed word) wrap_y::y#0 ← (signed word) render_sine::sin_val#0 call wrap_y - (byte) wrap_y::return#0 ? (byte) wrap_y::return#3 + (byte) wrap_y::return#0 ← (byte) wrap_y::return#3 to:render_sine::@5 render_sine::@5: scope:[render_sine] from render_sine::@1 - (word) render_sine::sin_idx#5 ? phi( render_sine::@1/(word) render_sine::sin_idx#2 ) - (word) render_sine::xpos#3 ? phi( render_sine::@1/(word) render_sine::xpos#6 ) - (byte) wrap_y::return#4 ? phi( render_sine::@1/(byte) wrap_y::return#0 ) - (byte~) render_sine::$2 ? (byte) wrap_y::return#4 - (byte) render_sine::ypos#0 ? (byte~) render_sine::$2 - (word) bitmap_plot::x#0 ? (word) render_sine::xpos#3 - (byte) bitmap_plot::y#0 ? (byte) render_sine::ypos#0 + (word) render_sine::sin_idx#5 ← phi( render_sine::@1/(word) render_sine::sin_idx#2 ) + (word) render_sine::xpos#3 ← phi( render_sine::@1/(word) render_sine::xpos#6 ) + (byte) wrap_y::return#4 ← phi( render_sine::@1/(byte) wrap_y::return#0 ) + (byte~) render_sine::$2 ← (byte) wrap_y::return#4 + (byte) render_sine::ypos#0 ← (byte~) render_sine::$2 + (word) bitmap_plot::x#0 ← (word) render_sine::xpos#3 + (byte) bitmap_plot::y#0 ← (byte) render_sine::ypos#0 call bitmap_plot to:render_sine::@6 render_sine::@6: scope:[render_sine] from render_sine::@5 - (word) render_sine::xpos#7 ? phi( render_sine::@5/(word) render_sine::xpos#3 ) - (word) render_sine::sin_idx#3 ? phi( render_sine::@5/(word) render_sine::sin_idx#5 ) - (word~) render_sine::$4 ? (word) render_sine::sin_idx#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed word*~) render_sine::$5 ? (signed word*) sin2#0 + (word~) render_sine::$4 - (signed word) render_sine::sin2_val#0 ? *((signed word*~) render_sine::$5) - (signed word/signed dword~) render_sine::$6 ? (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a - (signed word) wrap_y::y#1 ? (signed word/signed dword~) render_sine::$6 + (word) render_sine::xpos#7 ← phi( render_sine::@5/(word) render_sine::xpos#3 ) + (word) render_sine::sin_idx#3 ← phi( render_sine::@5/(word) render_sine::sin_idx#5 ) + (word~) render_sine::$4 ← (word) render_sine::sin_idx#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (signed word*~) render_sine::$5 ← (signed word*) sin2#0 + (word~) render_sine::$4 + (signed word) render_sine::sin2_val#0 ← *((signed word*~) render_sine::$5) + (signed word/signed dword~) render_sine::$6 ← (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a + (signed word) wrap_y::y#1 ← (signed word/signed dword~) render_sine::$6 call wrap_y - (byte) wrap_y::return#1 ? (byte) wrap_y::return#3 + (byte) wrap_y::return#1 ← (byte) wrap_y::return#3 to:render_sine::@7 render_sine::@7: scope:[render_sine] from render_sine::@6 - (word) render_sine::sin_idx#8 ? phi( render_sine::@6/(word) render_sine::sin_idx#3 ) - (word) render_sine::xpos#4 ? phi( render_sine::@6/(word) render_sine::xpos#7 ) - (byte) wrap_y::return#5 ? phi( render_sine::@6/(byte) wrap_y::return#1 ) - (byte~) render_sine::$7 ? (byte) wrap_y::return#5 - (byte) render_sine::ypos2#0 ? (byte~) render_sine::$7 - (word) bitmap_plot::x#1 ? (word) render_sine::xpos#4 - (byte) bitmap_plot::y#1 ? (byte) render_sine::ypos2#0 + (word) render_sine::sin_idx#8 ← phi( render_sine::@6/(word) render_sine::sin_idx#3 ) + (word) render_sine::xpos#4 ← phi( render_sine::@6/(word) render_sine::xpos#7 ) + (byte) wrap_y::return#5 ← phi( render_sine::@6/(byte) wrap_y::return#1 ) + (byte~) render_sine::$7 ← (byte) wrap_y::return#5 + (byte) render_sine::ypos2#0 ← (byte~) render_sine::$7 + (word) bitmap_plot::x#1 ← (word) render_sine::xpos#4 + (byte) bitmap_plot::y#1 ← (byte) render_sine::ypos2#0 call bitmap_plot to:render_sine::@8 render_sine::@8: scope:[render_sine] from render_sine::@7 - (word) render_sine::sin_idx#7 ? phi( render_sine::@7/(word) render_sine::sin_idx#8 ) - (word) render_sine::xpos#5 ? phi( render_sine::@7/(word) render_sine::xpos#4 ) - (word) render_sine::xpos#1 ? ++ (word) render_sine::xpos#5 - (bool~) render_sine::$9 ? (word) render_sine::xpos#1 == (word/signed word/dword/signed dword) $140 - (bool~) render_sine::$10 ? ! (bool~) render_sine::$9 + (word) render_sine::sin_idx#7 ← phi( render_sine::@7/(word) render_sine::sin_idx#8 ) + (word) render_sine::xpos#5 ← phi( render_sine::@7/(word) render_sine::xpos#4 ) + (word) render_sine::xpos#1 ← ++ (word) render_sine::xpos#5 + (bool~) render_sine::$9 ← (word) render_sine::xpos#1 == (word/signed word/dword/signed dword) $140 + (bool~) render_sine::$10 ← ! (bool~) render_sine::$9 if((bool~) render_sine::$10) goto render_sine::@2 to:render_sine::@3 render_sine::@2: scope:[render_sine] from render_sine::@3 render_sine::@8 - (word) render_sine::xpos#8 ? phi( render_sine::@3/(word) render_sine::xpos#2 render_sine::@8/(word) render_sine::xpos#1 ) - (word) render_sine::sin_idx#4 ? phi( render_sine::@3/(word) render_sine::sin_idx#6 render_sine::@8/(word) render_sine::sin_idx#7 ) - (word) render_sine::sin_idx#1 ? ++ (word) render_sine::sin_idx#4 - (bool~) render_sine::$11 ? (word) render_sine::sin_idx#1 < (word) SIN_SIZE#0 + (word) render_sine::xpos#8 ← phi( render_sine::@3/(word) render_sine::xpos#2 render_sine::@8/(word) render_sine::xpos#1 ) + (word) render_sine::sin_idx#4 ← phi( render_sine::@3/(word) render_sine::sin_idx#6 render_sine::@8/(word) render_sine::sin_idx#7 ) + (word) render_sine::sin_idx#1 ← ++ (word) render_sine::sin_idx#4 + (bool~) render_sine::$11 ← (word) render_sine::sin_idx#1 < (word) SIN_SIZE#0 if((bool~) render_sine::$11) goto render_sine::@1 to:render_sine::@return render_sine::@3: scope:[render_sine] from render_sine::@8 - (word) render_sine::sin_idx#6 ? phi( render_sine::@8/(word) render_sine::sin_idx#7 ) - (word) render_sine::xpos#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) render_sine::sin_idx#6 ← phi( render_sine::@8/(word) render_sine::sin_idx#7 ) + (word) render_sine::xpos#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render_sine::@2 render_sine::@return: scope:[render_sine] from render_sine::@2 return to:@return wrap_y: scope:[wrap_y] from render_sine::@1 render_sine::@6 - (signed word) wrap_y::y#9 ? phi( render_sine::@1/(signed word) wrap_y::y#0 render_sine::@6/(signed word) wrap_y::y#1 ) + (signed word) wrap_y::y#9 ← phi( render_sine::@1/(signed word) wrap_y::y#0 render_sine::@6/(signed word) wrap_y::y#1 ) to:wrap_y::@1 wrap_y::@1: scope:[wrap_y] from wrap_y wrap_y::@2 - (signed word) wrap_y::y#4 ? phi( wrap_y/(signed word) wrap_y::y#9 wrap_y::@2/(signed word) wrap_y::y#2 ) - (bool~) wrap_y::$1 ? (signed word) wrap_y::y#4 >= (byte/word/signed word/dword/signed dword) $c8 + (signed word) wrap_y::y#4 ← phi( wrap_y/(signed word) wrap_y::y#9 wrap_y::@2/(signed word) wrap_y::y#2 ) + (bool~) wrap_y::$1 ← (signed word) wrap_y::y#4 >= (byte/word/signed word/dword/signed dword) $c8 if((bool~) wrap_y::$1) goto wrap_y::@2 to:wrap_y::@7 wrap_y::@2: scope:[wrap_y] from wrap_y::@1 - (signed word) wrap_y::y#5 ? phi( wrap_y::@1/(signed word) wrap_y::y#4 ) - (signed word) wrap_y::y#2 ? (signed word) wrap_y::y#5 - (byte/word/signed word/dword/signed dword) $c8 + (signed word) wrap_y::y#5 ← phi( wrap_y::@1/(signed word) wrap_y::y#4 ) + (signed word) wrap_y::y#2 ← (signed word) wrap_y::y#5 - (byte/word/signed word/dword/signed dword) $c8 to:wrap_y::@1 wrap_y::@7: scope:[wrap_y] from wrap_y::@1 wrap_y::@8 - (signed word) wrap_y::y#6 ? phi( wrap_y::@1/(signed word) wrap_y::y#4 wrap_y::@8/(signed word) wrap_y::y#3 ) - (bool~) wrap_y::$2 ? (signed word) wrap_y::y#6 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) wrap_y::y#6 ← phi( wrap_y::@1/(signed word) wrap_y::y#4 wrap_y::@8/(signed word) wrap_y::y#3 ) + (bool~) wrap_y::$2 ← (signed word) wrap_y::y#6 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) wrap_y::$2) goto wrap_y::@8 to:wrap_y::@9 wrap_y::@8: scope:[wrap_y] from wrap_y::@7 - (signed word) wrap_y::y#7 ? phi( wrap_y::@7/(signed word) wrap_y::y#6 ) - (signed word) wrap_y::y#3 ? (signed word) wrap_y::y#7 + (byte/word/signed word/dword/signed dword) $c8 + (signed word) wrap_y::y#7 ← phi( wrap_y::@7/(signed word) wrap_y::y#6 ) + (signed word) wrap_y::y#3 ← (signed word) wrap_y::y#7 + (byte/word/signed word/dword/signed dword) $c8 to:wrap_y::@7 wrap_y::@9: scope:[wrap_y] from wrap_y::@7 - (signed word) wrap_y::y#8 ? phi( wrap_y::@7/(signed word) wrap_y::y#6 ) - (byte~) wrap_y::$0 ? ((byte)) (signed word) wrap_y::y#8 - (byte) wrap_y::return#2 ? (byte~) wrap_y::$0 + (signed word) wrap_y::y#8 ← phi( wrap_y::@7/(signed word) wrap_y::y#6 ) + (byte~) wrap_y::$0 ← ((byte)) (signed word) wrap_y::y#8 + (byte) wrap_y::return#2 ← (byte~) wrap_y::$0 to:wrap_y::@return wrap_y::@return: scope:[wrap_y] from wrap_y::@9 - (byte) wrap_y::return#6 ? phi( wrap_y::@9/(byte) wrap_y::return#2 ) - (byte) wrap_y::return#3 ? (byte) wrap_y::return#6 + (byte) wrap_y::return#6 ← phi( wrap_y::@9/(byte) wrap_y::return#2 ) + (byte) wrap_y::return#3 ← (byte) wrap_y::return#6 return to:@return @32: scope:[] from @29 - (word) rem16u#25 ? phi( @29/(word) rem16u#30 ) + (word) rem16u#25 ← phi( @29/(word) rem16u#30 ) call main to:@33 @33: scope:[] from @32 - (word) rem16u#19 ? phi( @32/(word) rem16u#9 ) - (word) rem16u#10 ? (word) rem16u#19 + (word) rem16u#19 ← phi( @32/(word) rem16u#9 ) + (word) rem16u#10 ← (word) rem16u#19 to:@end @end: scope:[] from @33 @@ -1851,17 +1851,17 @@ SYMBOL TABLE SSA (signed word) wrap_y::y#8 (signed word) wrap_y::y#9 -Inversing boolean not [90] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [89] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [98] (bool~) divr16u::$9 ? (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [97] (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 -Inversing boolean not [158] (bool~) mul16u::$3 ? (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [157] (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [184] (bool~) mul16s::$4 ? (signed word) mul16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [183] (bool~) mul16s::$3 ? (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [188] (bool~) mul16s::$6 ? (signed word) mul16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [187] (bool~) mul16s::$5 ? (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [260] (bool~) sin16s::$1 ? (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [259] (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 -Inversing boolean not [264] (bool~) sin16s::$3 ? (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [263] (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 -Inversing boolean not [324] (bool~) sin16s::$17 ? (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [323] (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [372] (bool~) bitmap_init::$1 ? (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [371] (bool~) bitmap_init::$0 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [392] (bool~) bitmap_init::$9 ? (byte~) bitmap_init::$7 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [391] (bool~) bitmap_init::$8 ? (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [536] (bool~) render_sine::$10 ? (word) render_sine::xpos#1 != (word/signed word/dword/signed dword) $140 from [535] (bool~) render_sine::$9 ? (word) render_sine::xpos#1 == (word/signed word/dword/signed dword) $140 +Inversing boolean not [90] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [89] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [98] (bool~) divr16u::$9 ← (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [97] (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 +Inversing boolean not [158] (bool~) mul16u::$3 ← (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [157] (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [184] (bool~) mul16s::$4 ← (signed word) mul16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [183] (bool~) mul16s::$3 ← (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [188] (bool~) mul16s::$6 ← (signed word) mul16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [187] (bool~) mul16s::$5 ← (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [260] (bool~) sin16s::$1 ← (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [259] (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 +Inversing boolean not [264] (bool~) sin16s::$3 ← (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [263] (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 +Inversing boolean not [324] (bool~) sin16s::$17 ← (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [323] (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [372] (bool~) bitmap_init::$1 ← (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [371] (bool~) bitmap_init::$0 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [392] (bool~) bitmap_init::$9 ← (byte~) bitmap_init::$7 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [391] (bool~) bitmap_init::$8 ← (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [536] (bool~) render_sine::$10 ← (word) render_sine::xpos#1 != (word/signed word/dword/signed dword) $140 from [535] (bool~) render_sine::$9 ← (word) render_sine::xpos#1 == (word/signed word/dword/signed dword) $140 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#7 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#8 @@ -2244,18 +2244,18 @@ Successful SSA optimization Pass2ConstantAdditionElimination if() condition always true - replacing block destination [44] if((const signed word) mul16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@2 if() condition always true - replacing block destination [182] if(true) goto main::@2 Successful SSA optimization Pass2ConstantIfs -Fixing inline constructor with bitmap_clear::$3 ? *(bitmap_plot_yhi#0+0) w= *(bitmap_plot_ylo#0+0) -Fixing inline constructor with bitmap_plot::$3 ? *(bitmap_plot_yhi#0 + bitmap_plot::y#2) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#2) -Fixing inline constructor with div32u16u::$4 ? div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 +Fixing inline constructor with bitmap_clear::$3 ← *(bitmap_plot_yhi#0+0) w= *(bitmap_plot_ylo#0+0) +Fixing inline constructor with bitmap_plot::$3 ← *(bitmap_plot_yhi#0 + bitmap_plot::y#2) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#2) +Fixing inline constructor with div32u16u::$4 ← div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 Successful SSA optimization Pass2FixInlineConstructors Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (word) mul16u::a#1 ? ((word)) (signed word) mul16s::a#0 -Eliminating Noop Cast (word~) mul16s::$14 ? ((word)) (signed word) mul16s::a#0 -Eliminating Noop Cast (signed word~) sin16s_gen2::$7 ? ((signed word)) (word~) sin16s_gen2::$6 -Eliminating Noop Cast (signed word) sin16s::sinx#0 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ? ((byte*)) (word~) bitmap_clear::$3 -Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$3 +Eliminating Noop Cast (word) mul16u::a#1 ← ((word)) (signed word) mul16s::a#0 +Eliminating Noop Cast (word~) mul16s::$14 ← ((word)) (signed word) mul16s::a#0 +Eliminating Noop Cast (signed word~) sin16s_gen2::$7 ← ((signed word)) (word~) sin16s_gen2::$6 +Eliminating Noop Cast (signed word) sin16s::sinx#0 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ← ((byte*)) (word~) bitmap_clear::$3 +Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$3 Successful SSA optimization Pass2NopCastElimination Eliminating variable (word~) mul16s::$13 from unused block mul16s::@4 Eliminating variable (word~) mul16s::$17 from unused block mul16s::@4 @@ -2264,15 +2264,15 @@ Removing PHI-reference to removed block (mul16s::@4) in block mul16s::@2 Removing unused block mul16s::@4 Removing unused block main::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value bitmap_init::x#1 ? ++ bitmap_init::x#2 to ++ +Resolved ranged next value bitmap_init::x#1 ← ++ bitmap_init::x#2 to ++ Resolved ranged comparison value if(bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_init::y#1 ? ++ bitmap_init::y#2 to ++ +Resolved ranged next value bitmap_init::y#1 ← ++ bitmap_init::y#2 to ++ Resolved ranged comparison value if(bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_clear::x#1 ? ++ bitmap_clear::x#2 to ++ +Resolved ranged next value bitmap_clear::x#1 ← ++ bitmap_clear::x#2 to ++ Resolved ranged comparison value if(bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value bitmap_clear::y#1 ? ++ bitmap_clear::y#4 to ++ +Resolved ranged next value bitmap_clear::y#1 ← ++ bitmap_clear::y#4 to ++ Resolved ranged comparison value if(bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 to (byte/signed byte/word/signed word/dword/signed dword) $28 Culled Empty Block (label) @4 Culled Empty Block (label) @6 @@ -2428,73 +2428,73 @@ Calls in [mulu16_sel] to mul16u:196 Calls in [div32u16u] to divr16u:203 divr16u:208 Created 45 initial phi equivalence classes -Coalesced [31] wrap_y::y#10 ? wrap_y::y#0 -Coalesced [37] bitmap_plot::y#3 ? bitmap_plot::y#0 -Coalesced [38] bitmap_plot::x#3 ? bitmap_plot::x#0 -Coalesced [44] wrap_y::y#11 ? wrap_y::y#1 -Coalesced [50] bitmap_plot::y#4 ? bitmap_plot::y#1 -Coalesced [51] bitmap_plot::x#4 ? bitmap_plot::x#1 -Coalesced [60] render_sine::sin_idx#9 ? render_sine::sin_idx#1 -Coalesced [61] render_sine::xpos#9 ? render_sine::xpos#8 -Coalesced [62] render_sine::xpos#10 ? render_sine::xpos#1 -Coalesced [71] wrap_y::y#12 ? wrap_y::y#9 -Coalesced [74] wrap_y::y#14 ? wrap_y::y#4 -Coalesced [80] wrap_y::y#15 ? wrap_y::y#3 -Coalesced [82] wrap_y::y#13 ? wrap_y::y#2 -Coalesced [103] sin16s_gen2::x#5 ? sin16s_gen2::x#1 -Coalesced [104] sin16s_gen2::sintab#7 ? sin16s_gen2::sintab#0 -Coalesced [105] sin16s_gen2::i#5 ? sin16s_gen2::i#1 -Coalesced [114] mul16s::m#7 ? mul16s::m#1 -Coalesced [118] mul16s::m#8 ? mul16s::m#0 -Coalesced [121] mul16u::a#10 ? mul16u::a#6 -Coalesced [122] mul16u::mb#6 ? mul16u::mb#0 -Coalesced [129] mul16u::res#9 ? mul16u::res#1 -Coalesced [133] mul16u::a#11 ? mul16u::a#0 -Coalesced [134] mul16u::res#7 ? mul16u::res#6 -Coalesced [135] mul16u::mb#7 ? mul16u::mb#1 -Coalesced (already) [136] mul16u::res#8 ? mul16u::res#2 -Coalesced [139] sin16s::x#9 ? sin16s::x#1 -Coalesced [143] sin16s::x#11 ? sin16s::x#2 -Coalesced [149] mulu16_sel::v1#8 ? mulu16_sel::v1#0 -Coalesced [150] mulu16_sel::v2#8 ? mulu16_sel::v2#0 -Coalesced [156] mulu16_sel::v1#9 ? mulu16_sel::v1#1 -Coalesced [157] mulu16_sel::v2#9 ? mulu16_sel::v2#1 -Coalesced [162] mulu16_sel::v1#10 ? mulu16_sel::v1#2 -Coalesced [169] mulu16_sel::v1#6 ? mulu16_sel::v1#3 -Coalesced [170] mulu16_sel::v2#6 ? mulu16_sel::v2#3 -Coalesced [176] mulu16_sel::v1#7 ? mulu16_sel::v1#4 -Coalesced [177] mulu16_sel::v2#7 ? mulu16_sel::v2#4 -Coalesced [185] sin16s::return#6 ? sin16s::sinx#1 -Coalesced [189] sin16s::x#10 ? sin16s::x#4 -Coalesced [190] sin16s::x#8 ? sin16s::x#0 -Coalesced [194] mul16u::b#3 ? mul16u::b#1 -Coalesced [195] mul16u::a#9 ? mul16u::a#2 -Coalesced [207] divr16u::rem#12 ? divr16u::rem#4 -Coalesced [214] divr16u::rem#13 ? divr16u::rem#10 -Coalesced [215] divr16u::dividend#9 ? divr16u::dividend#5 -Coalesced [222] divr16u::rem#16 ? divr16u::rem#1 -Coalesced [229] divr16u::rem#18 ? divr16u::rem#2 -Coalesced [230] divr16u::return#8 ? divr16u::quotient#2 -Coalesced [236] divr16u::rem#14 ? divr16u::rem#11 -Coalesced [237] divr16u::dividend#10 ? divr16u::dividend#0 -Coalesced [238] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [239] divr16u::i#7 ? divr16u::i#1 -Coalesced [240] divr16u::rem#17 ? divr16u::rem#6 -Coalesced [241] divr16u::return#7 ? divr16u::quotient#1 -Coalesced [242] divr16u::rem#15 ? divr16u::rem#0 -Coalesced [246] bitmap_clear::bitmap#7 ? bitmap_clear::bitmap#3 -Coalesced [255] bitmap_clear::bitmap#6 ? bitmap_clear::bitmap#1 -Coalesced [256] bitmap_clear::y#5 ? bitmap_clear::y#1 -Coalesced (already) [257] bitmap_clear::bitmap#8 ? bitmap_clear::bitmap#1 -Coalesced [258] bitmap_clear::x#3 ? bitmap_clear::x#1 -Coalesced [278] bitmap_init::yoffs#7 ? bitmap_init::yoffs#1 -Coalesced [283] bitmap_init::y#5 ? bitmap_init::y#1 -Coalesced [284] bitmap_init::yoffs#5 ? bitmap_init::yoffs#4 -Coalesced (already) [285] bitmap_init::yoffs#6 ? bitmap_init::yoffs#2 -Coalesced [286] bitmap_init::bits#5 ? bitmap_init::bits#4 -Coalesced [287] bitmap_init::x#5 ? bitmap_init::x#1 -Coalesced [288] bitmap_init::bits#6 ? bitmap_init::bits#1 -Coalesced [295] fill::addr#3 ? fill::addr#1 +Coalesced [31] wrap_y::y#10 ← wrap_y::y#0 +Coalesced [37] bitmap_plot::y#3 ← bitmap_plot::y#0 +Coalesced [38] bitmap_plot::x#3 ← bitmap_plot::x#0 +Coalesced [44] wrap_y::y#11 ← wrap_y::y#1 +Coalesced [50] bitmap_plot::y#4 ← bitmap_plot::y#1 +Coalesced [51] bitmap_plot::x#4 ← bitmap_plot::x#1 +Coalesced [60] render_sine::sin_idx#9 ← render_sine::sin_idx#1 +Coalesced [61] render_sine::xpos#9 ← render_sine::xpos#8 +Coalesced [62] render_sine::xpos#10 ← render_sine::xpos#1 +Coalesced [71] wrap_y::y#12 ← wrap_y::y#9 +Coalesced [74] wrap_y::y#14 ← wrap_y::y#4 +Coalesced [80] wrap_y::y#15 ← wrap_y::y#3 +Coalesced [82] wrap_y::y#13 ← wrap_y::y#2 +Coalesced [103] sin16s_gen2::x#5 ← sin16s_gen2::x#1 +Coalesced [104] sin16s_gen2::sintab#7 ← sin16s_gen2::sintab#0 +Coalesced [105] sin16s_gen2::i#5 ← sin16s_gen2::i#1 +Coalesced [114] mul16s::m#7 ← mul16s::m#1 +Coalesced [118] mul16s::m#8 ← mul16s::m#0 +Coalesced [121] mul16u::a#10 ← mul16u::a#6 +Coalesced [122] mul16u::mb#6 ← mul16u::mb#0 +Coalesced [129] mul16u::res#9 ← mul16u::res#1 +Coalesced [133] mul16u::a#11 ← mul16u::a#0 +Coalesced [134] mul16u::res#7 ← mul16u::res#6 +Coalesced [135] mul16u::mb#7 ← mul16u::mb#1 +Coalesced (already) [136] mul16u::res#8 ← mul16u::res#2 +Coalesced [139] sin16s::x#9 ← sin16s::x#1 +Coalesced [143] sin16s::x#11 ← sin16s::x#2 +Coalesced [149] mulu16_sel::v1#8 ← mulu16_sel::v1#0 +Coalesced [150] mulu16_sel::v2#8 ← mulu16_sel::v2#0 +Coalesced [156] mulu16_sel::v1#9 ← mulu16_sel::v1#1 +Coalesced [157] mulu16_sel::v2#9 ← mulu16_sel::v2#1 +Coalesced [162] mulu16_sel::v1#10 ← mulu16_sel::v1#2 +Coalesced [169] mulu16_sel::v1#6 ← mulu16_sel::v1#3 +Coalesced [170] mulu16_sel::v2#6 ← mulu16_sel::v2#3 +Coalesced [176] mulu16_sel::v1#7 ← mulu16_sel::v1#4 +Coalesced [177] mulu16_sel::v2#7 ← mulu16_sel::v2#4 +Coalesced [185] sin16s::return#6 ← sin16s::sinx#1 +Coalesced [189] sin16s::x#10 ← sin16s::x#4 +Coalesced [190] sin16s::x#8 ← sin16s::x#0 +Coalesced [194] mul16u::b#3 ← mul16u::b#1 +Coalesced [195] mul16u::a#9 ← mul16u::a#2 +Coalesced [207] divr16u::rem#12 ← divr16u::rem#4 +Coalesced [214] divr16u::rem#13 ← divr16u::rem#10 +Coalesced [215] divr16u::dividend#9 ← divr16u::dividend#5 +Coalesced [222] divr16u::rem#16 ← divr16u::rem#1 +Coalesced [229] divr16u::rem#18 ← divr16u::rem#2 +Coalesced [230] divr16u::return#8 ← divr16u::quotient#2 +Coalesced [236] divr16u::rem#14 ← divr16u::rem#11 +Coalesced [237] divr16u::dividend#10 ← divr16u::dividend#0 +Coalesced [238] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [239] divr16u::i#7 ← divr16u::i#1 +Coalesced [240] divr16u::rem#17 ← divr16u::rem#6 +Coalesced [241] divr16u::return#7 ← divr16u::quotient#1 +Coalesced [242] divr16u::rem#15 ← divr16u::rem#0 +Coalesced [246] bitmap_clear::bitmap#7 ← bitmap_clear::bitmap#3 +Coalesced [255] bitmap_clear::bitmap#6 ← bitmap_clear::bitmap#1 +Coalesced [256] bitmap_clear::y#5 ← bitmap_clear::y#1 +Coalesced (already) [257] bitmap_clear::bitmap#8 ← bitmap_clear::bitmap#1 +Coalesced [258] bitmap_clear::x#3 ← bitmap_clear::x#1 +Coalesced [278] bitmap_init::yoffs#7 ← bitmap_init::yoffs#1 +Coalesced [283] bitmap_init::y#5 ← bitmap_init::y#1 +Coalesced [284] bitmap_init::yoffs#5 ← bitmap_init::yoffs#4 +Coalesced (already) [285] bitmap_init::yoffs#6 ← bitmap_init::yoffs#2 +Coalesced [286] bitmap_init::bits#5 ← bitmap_init::bits#4 +Coalesced [287] bitmap_init::x#5 ← bitmap_init::x#1 +Coalesced [288] bitmap_init::bits#6 ← bitmap_init::bits#1 +Coalesced [295] fill::addr#3 ← fill::addr#1 Coalesced down to 31 phi equivalence classes Culled Empty Block (label) render_sine::@3 Culled Empty Block (label) render_sine::@9 @@ -2585,27 +2585,27 @@ FINAL CONTROL FLOW GRAPH [4] phi() main: scope:[main] from @2 asm { sei } - [6] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 - [7] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 - [8] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [6] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 + [7] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 + [8] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 to:main::vicSelectGfxBank1 main::vicSelectGfxBank1: scope:[main] from main - [9] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 + [9] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 to:main::vicSelectGfxBank1_toDd001 main::vicSelectGfxBank1_toDd001: scope:[main] from main::vicSelectGfxBank1 [10] phi() to:main::vicSelectGfxBank1_@1 main::vicSelectGfxBank1_@1: scope:[main] from main::vicSelectGfxBank1_toDd001 - [11] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 + [11] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 to:main::@2 main::@2: scope:[main] from main::vicSelectGfxBank1_@1 - [12] *((const byte*) D016#0) ? (const byte) VIC_CSEL#0 + [12] *((const byte*) D016#0) ← (const byte) VIC_CSEL#0 to:main::toD0181 main::toD0181: scope:[main] from main::@2 [13] phi() to:main::@3 main::@3: scope:[main] from main::toD0181 - [14] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 + [14] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [15] call fill to:main::@4 main::@4: scope:[main] from main::@3 @@ -2625,48 +2625,48 @@ main::@7: scope:[main] from main::@6 [23] call render_sine to:main::@1 main::@1: scope:[main] from main::@1 main::@7 - [24] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) + [24] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) to:main::@1 render_sine: scope:[render_sine] from main::@7 [25] phi() to:render_sine::@1 render_sine::@1: scope:[render_sine] from render_sine render_sine::@2 - [26] (word) render_sine::xpos#3 ? phi( render_sine/(byte/signed byte/word/signed word/dword/signed dword) 0 render_sine::@2/(word) render_sine::xpos#8 ) - [26] (word) render_sine::sin_idx#2 ? phi( render_sine/(byte/signed byte/word/signed word/dword/signed dword) 0 render_sine::@2/(word) render_sine::sin_idx#1 ) - [27] (word~) render_sine::$0 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [28] (signed word*~) render_sine::$1 ? (const signed word[$200]) sin#0 + (word~) render_sine::$0 - [29] (signed word) render_sine::sin_val#0 ? *((signed word*~) render_sine::$1) - [30] (signed word) wrap_y::y#0 ? (signed word) render_sine::sin_val#0 + [26] (word) render_sine::xpos#3 ← phi( render_sine/(byte/signed byte/word/signed word/dword/signed dword) 0 render_sine::@2/(word) render_sine::xpos#8 ) + [26] (word) render_sine::sin_idx#2 ← phi( render_sine/(byte/signed byte/word/signed word/dword/signed dword) 0 render_sine::@2/(word) render_sine::sin_idx#1 ) + [27] (word~) render_sine::$0 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [28] (signed word*~) render_sine::$1 ← (const signed word[$200]) sin#0 + (word~) render_sine::$0 + [29] (signed word) render_sine::sin_val#0 ← *((signed word*~) render_sine::$1) + [30] (signed word) wrap_y::y#0 ← (signed word) render_sine::sin_val#0 [31] call wrap_y - [32] (byte) wrap_y::return#0 ? (byte) wrap_y::return#2 + [32] (byte) wrap_y::return#0 ← (byte) wrap_y::return#2 to:render_sine::@3 render_sine::@3: scope:[render_sine] from render_sine::@1 - [33] (byte) render_sine::ypos#0 ? (byte) wrap_y::return#0 - [34] (word) bitmap_plot::x#0 ? (word) render_sine::xpos#3 - [35] (byte) bitmap_plot::y#0 ? (byte) render_sine::ypos#0 + [33] (byte) render_sine::ypos#0 ← (byte) wrap_y::return#0 + [34] (word) bitmap_plot::x#0 ← (word) render_sine::xpos#3 + [35] (byte) bitmap_plot::y#0 ← (byte) render_sine::ypos#0 [36] call bitmap_plot to:render_sine::@4 render_sine::@4: scope:[render_sine] from render_sine::@3 - [37] (word~) render_sine::$4 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [38] (signed word*~) render_sine::$5 ? (const signed word*) sin2#0 + (word~) render_sine::$4 - [39] (signed word) render_sine::sin2_val#0 ? *((signed word*~) render_sine::$5) - [40] (signed word) wrap_y::y#1 ? (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a + [37] (word~) render_sine::$4 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [38] (signed word*~) render_sine::$5 ← (const signed word*) sin2#0 + (word~) render_sine::$4 + [39] (signed word) render_sine::sin2_val#0 ← *((signed word*~) render_sine::$5) + [40] (signed word) wrap_y::y#1 ← (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a [41] call wrap_y - [42] (byte) wrap_y::return#1 ? (byte) wrap_y::return#2 + [42] (byte) wrap_y::return#1 ← (byte) wrap_y::return#2 to:render_sine::@5 render_sine::@5: scope:[render_sine] from render_sine::@4 - [43] (byte) render_sine::ypos2#0 ? (byte) wrap_y::return#1 - [44] (word) bitmap_plot::x#1 ? (word) render_sine::xpos#3 - [45] (byte) bitmap_plot::y#1 ? (byte) render_sine::ypos2#0 + [43] (byte) render_sine::ypos2#0 ← (byte) wrap_y::return#1 + [44] (word) bitmap_plot::x#1 ← (word) render_sine::xpos#3 + [45] (byte) bitmap_plot::y#1 ← (byte) render_sine::ypos2#0 [46] call bitmap_plot to:render_sine::@6 render_sine::@6: scope:[render_sine] from render_sine::@5 - [47] (word) render_sine::xpos#1 ? ++ (word) render_sine::xpos#3 + [47] (word) render_sine::xpos#1 ← ++ (word) render_sine::xpos#3 [48] if((word) render_sine::xpos#1!=(word/signed word/dword/signed dword) $140) goto render_sine::@7 to:render_sine::@2 render_sine::@2: scope:[render_sine] from render_sine::@6 render_sine::@7 - [49] (word) render_sine::xpos#8 ? phi( render_sine::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 render_sine::@7/(word) render_sine::xpos#1 ) - [50] (word) render_sine::sin_idx#1 ? ++ (word) render_sine::sin_idx#2 + [49] (word) render_sine::xpos#8 ← phi( render_sine::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 render_sine::@7/(word) render_sine::xpos#1 ) + [50] (word) render_sine::sin_idx#1 ← ++ (word) render_sine::sin_idx#2 [51] if((word) render_sine::sin_idx#1<(const word) SIN_SIZE#0) goto render_sine::@1 to:render_sine::@return render_sine::@return: scope:[render_sine] from render_sine::@2 @@ -2676,205 +2676,205 @@ render_sine::@7: scope:[render_sine] from render_sine::@6 [53] phi() to:render_sine::@2 bitmap_plot: scope:[bitmap_plot] from render_sine::@3 render_sine::@5 - [54] (word) bitmap_plot::x#2 ? phi( render_sine::@3/(word) bitmap_plot::x#0 render_sine::@5/(word) bitmap_plot::x#1 ) - [54] (byte) bitmap_plot::y#2 ? phi( render_sine::@3/(byte) bitmap_plot::y#0 render_sine::@5/(byte) bitmap_plot::y#1 ) - [55] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) - [56] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 - [57] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 - [58] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#2 - [59] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) + [54] (word) bitmap_plot::x#2 ← phi( render_sine::@3/(word) bitmap_plot::x#0 render_sine::@5/(word) bitmap_plot::x#1 ) + [54] (byte) bitmap_plot::y#2 ← phi( render_sine::@3/(byte) bitmap_plot::y#0 render_sine::@5/(byte) bitmap_plot::y#1 ) + [55] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) + [56] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 + [57] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 + [58] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#2 + [59] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot [60] return to:@return wrap_y: scope:[wrap_y] from render_sine::@1 render_sine::@4 - [61] (signed word) wrap_y::y#9 ? phi( render_sine::@1/(signed word) wrap_y::y#0 render_sine::@4/(signed word) wrap_y::y#1 ) + [61] (signed word) wrap_y::y#9 ← phi( render_sine::@1/(signed word) wrap_y::y#0 render_sine::@4/(signed word) wrap_y::y#1 ) to:wrap_y::@1 wrap_y::@1: scope:[wrap_y] from wrap_y wrap_y::@2 - [62] (signed word) wrap_y::y#4 ? phi( wrap_y/(signed word) wrap_y::y#9 wrap_y::@2/(signed word) wrap_y::y#2 ) + [62] (signed word) wrap_y::y#4 ← phi( wrap_y/(signed word) wrap_y::y#9 wrap_y::@2/(signed word) wrap_y::y#2 ) [63] if((signed word) wrap_y::y#4>=(byte/word/signed word/dword/signed dword) $c8) goto wrap_y::@2 to:wrap_y::@3 wrap_y::@3: scope:[wrap_y] from wrap_y::@1 wrap_y::@4 - [64] (signed word) wrap_y::y#6 ? phi( wrap_y::@1/(signed word) wrap_y::y#4 wrap_y::@4/(signed word) wrap_y::y#3 ) + [64] (signed word) wrap_y::y#6 ← phi( wrap_y::@1/(signed word) wrap_y::y#4 wrap_y::@4/(signed word) wrap_y::y#3 ) [65] if((signed word) wrap_y::y#6<(byte/signed byte/word/signed word/dword/signed dword) 0) goto wrap_y::@4 to:wrap_y::@5 wrap_y::@5: scope:[wrap_y] from wrap_y::@3 - [66] (byte) wrap_y::return#2 ? ((byte)) (signed word) wrap_y::y#6 + [66] (byte) wrap_y::return#2 ← ((byte)) (signed word) wrap_y::y#6 to:wrap_y::@return wrap_y::@return: scope:[wrap_y] from wrap_y::@5 [67] return to:@return wrap_y::@4: scope:[wrap_y] from wrap_y::@3 - [68] (signed word) wrap_y::y#3 ? (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 + [68] (signed word) wrap_y::y#3 ← (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 to:wrap_y::@3 wrap_y::@2: scope:[wrap_y] from wrap_y::@1 - [69] (signed word) wrap_y::y#2 ? (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 + [69] (signed word) wrap_y::y#2 ← (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 to:wrap_y::@1 sin16s_gen2: scope:[sin16s_gen2] from main::@6 [70] phi() [71] call div32u16u - [72] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + [72] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 to:sin16s_gen2::@2 sin16s_gen2::@2: scope:[sin16s_gen2] from sin16s_gen2 - [73] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 + [73] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 to:sin16s_gen2::@1 sin16s_gen2::@1: scope:[sin16s_gen2] from sin16s_gen2::@2 sin16s_gen2::@4 - [74] (word) sin16s_gen2::i#2 ? phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(word) sin16s_gen2::i#1 ) - [74] (signed word*) sin16s_gen2::sintab#2 ? phi( sin16s_gen2::@2/(const signed word[$200]) sin#0 sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#0 ) - [74] (dword) sin16s_gen2::x#2 ? phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(dword) sin16s_gen2::x#1 ) - [75] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 + [74] (word) sin16s_gen2::i#2 ← phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(word) sin16s_gen2::i#1 ) + [74] (signed word*) sin16s_gen2::sintab#2 ← phi( sin16s_gen2::@2/(const signed word[$200]) sin#0 sin16s_gen2::@4/(signed word*) sin16s_gen2::sintab#0 ) + [74] (dword) sin16s_gen2::x#2 ← phi( sin16s_gen2::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen2::@4/(dword) sin16s_gen2::x#1 ) + [75] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [76] call sin16s - [77] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + [77] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 to:sin16s_gen2::@3 sin16s_gen2::@3: scope:[sin16s_gen2] from sin16s_gen2::@1 - [78] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 + [78] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [79] call mul16s - [80] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + [80] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 to:sin16s_gen2::@4 sin16s_gen2::@4: scope:[sin16s_gen2] from sin16s_gen2::@3 - [81] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 - [82] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 - [83] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 - [84] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 - [85] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [86] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 - [87] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 + [81] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 + [82] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 + [83] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 + [84] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 + [85] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [86] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 + [87] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 [88] if((word) sin16s_gen2::i#1<(const word) SIN_SIZE#0) goto sin16s_gen2::@1 to:sin16s_gen2::@return sin16s_gen2::@return: scope:[sin16s_gen2] from sin16s_gen2::@4 [89] return to:@return mul16s: scope:[mul16s] from sin16s_gen2::@3 - [90] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 + [90] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [91] call mul16u - [92] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + [92] (dword) mul16u::return#2 ← (dword) mul16u::res#2 to:mul16s::@4 mul16s::@4: scope:[mul16s] from mul16s - [93] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + [93] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [94] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 to:mul16s::@3 mul16s::@3: scope:[mul16s] from mul16s::@4 - [95] (word~) mul16s::$9 ? > (dword) mul16s::m#0 - [96] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 - [97] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 + [95] (word~) mul16s::$9 ← > (dword) mul16s::m#0 + [96] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 + [97] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 to:mul16s::@1 mul16s::@1: scope:[mul16s] from mul16s::@3 mul16s::@4 - [98] (dword) mul16s::m#4 ? phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@4/(dword) mul16s::m#0 ) + [98] (dword) mul16s::m#4 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@4/(dword) mul16s::m#0 ) to:mul16s::@2 mul16s::@2: scope:[mul16s] from mul16s::@1 - [99] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 + [99] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 to:mul16s::@return mul16s::@return: scope:[mul16s] from mul16s::@2 [100] return to:@return mul16u: scope:[mul16u] from mul16s mulu16_sel - [101] (word) mul16u::a#6 ? phi( mul16s/(word~) mul16u::a#8 mulu16_sel/(word) mul16u::a#2 ) - [101] (word) mul16u::b#2 ? phi( mul16s/((word))(const signed word) sin16s_gen2::ampl#0 mulu16_sel/(word) mul16u::b#1 ) - [102] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 + [101] (word) mul16u::a#6 ← phi( mul16s/(word~) mul16u::a#8 mulu16_sel/(word) mul16u::a#2 ) + [101] (word) mul16u::b#2 ← phi( mul16s/((word))(const signed word) sin16s_gen2::ampl#0 mulu16_sel/(word) mul16u::b#1 ) + [102] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@3 - [103] (dword) mul16u::mb#2 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) - [103] (dword) mul16u::res#2 ? phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) - [103] (word) mul16u::a#3 ? phi( mul16u/(word) mul16u::a#6 mul16u::@3/(word) mul16u::a#0 ) + [103] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) + [103] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) + [103] (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@3/(word) mul16u::a#0 ) [104] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 to:mul16u::@return mul16u::@return: scope:[mul16u] from mul16u::@1 [105] return to:@return mul16u::@2: scope:[mul16u] from mul16u::@1 - [106] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [106] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [107] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 to:mul16u::@4 mul16u::@4: scope:[mul16u] from mul16u::@2 - [108] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 + [108] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 to:mul16u::@3 mul16u::@3: scope:[mul16u] from mul16u::@2 mul16u::@4 - [109] (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) - [110] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [111] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [109] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) + [110] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [111] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul16u::@1 sin16s: scope:[sin16s] from sin16s_gen2::@1 [112] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 to:sin16s::@4 sin16s::@4: scope:[sin16s] from sin16s - [113] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 + [113] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 to:sin16s::@1 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - [114] (byte) sin16s::isUpper#2 ? phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [114] (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) + [114] (byte) sin16s::isUpper#2 ← phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [114] (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) [115] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 to:sin16s::@5 sin16s::@5: scope:[sin16s] from sin16s::@1 - [116] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 + [116] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 to:sin16s::@2 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - [117] (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - [118] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [119] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 - [120] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - [121] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 + [117] (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + [118] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [119] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 + [120] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + [121] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [122] call mulu16_sel - [123] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + [123] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 to:sin16s::@7 sin16s::@7: scope:[sin16s] from sin16s::@2 - [124] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 - [125] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - [126] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 + [124] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 + [125] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + [126] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [127] call mulu16_sel - [128] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 + [128] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@7 - [129] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - [130] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + [129] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + [130] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [131] call mulu16_sel - [132] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + [132] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - [133] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - [134] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 - [135] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - [136] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 + [133] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + [134] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 + [135] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + [136] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [137] call mulu16_sel - [138] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 + [138] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - [139] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - [140] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - [141] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 + [139] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + [140] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + [141] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [142] call mulu16_sel - [143] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + [143] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - [144] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - [145] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [146] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 + [144] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + [145] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [146] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [147] if((byte) sin16s::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16s::@12 to:sin16s::@6 sin16s::@6: scope:[sin16s] from sin16s::@11 - [148] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 + [148] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 to:sin16s::@3 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - [149] (signed word) sin16s::return#1 ? phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) + [149] (signed word) sin16s::return#1 ← phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) to:sin16s::@return sin16s::@return: scope:[sin16s] from sin16s::@3 [150] return to:@return sin16s::@12: scope:[sin16s] from sin16s::@11 - [151] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + [151] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 to:sin16s::@3 mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@2 sin16s::@7 sin16s::@8 sin16s::@9 - [152] (byte) mulu16_sel::select#5 ? phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [152] (word) mulu16_sel::v2#5 ? phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) - [152] (word) mulu16_sel::v1#5 ? phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) - [153] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 - [154] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + [152] (byte) mulu16_sel::select#5 ← phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [152] (word) mulu16_sel::v2#5 ← phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) + [152] (word) mulu16_sel::v1#5 ← phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) + [153] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 + [154] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [155] call mul16u - [156] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + [156] (dword) mul16u::return#3 ← (dword) mul16u::res#2 to:mulu16_sel::@1 mulu16_sel::@1: scope:[mulu16_sel] from mulu16_sel - [157] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 - [158] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - [159] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 + [157] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 + [158] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + [159] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@1 [160] return @@ -2882,78 +2882,78 @@ mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@1 div32u16u: scope:[div32u16u] from sin16s_gen2 [161] phi() [162] call divr16u - [163] (word) divr16u::return#2 ? (word) divr16u::return#0 + [163] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div32u16u::@1 div32u16u::@1: scope:[div32u16u] from div32u16u - [164] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 - [165] (word) divr16u::rem#4 ? (word) rem16u#1 + [164] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 + [165] (word) divr16u::rem#4 ← (word) rem16u#1 [166] call divr16u - [167] (word) divr16u::return#3 ? (word) divr16u::return#0 + [167] (word) divr16u::return#3 ← (word) divr16u::return#0 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u::@1 - [168] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - [169] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 + [168] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + [169] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@2 [170] return to:@return divr16u: scope:[divr16u] from div32u16u div32u16u::@1 - [171] (word) divr16u::dividend#5 ? phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) - [171] (word) divr16u::rem#10 ? phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) + [171] (word) divr16u::dividend#5 ← phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) + [171] (word) divr16u::rem#10 ← phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [172] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [172] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [172] (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) - [172] (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - [173] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [174] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - [175] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [172] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [172] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [172] (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) + [172] (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + [173] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [174] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + [175] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [176] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [177] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [177] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [178] (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [179] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [180] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [178] (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [179] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [180] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [181] if((word) divr16u::rem#6<(const word) SIN_SIZE#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [182] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [183] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) SIN_SIZE#0 + [182] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [183] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) SIN_SIZE#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [184] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [184] (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - [185] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [184] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [184] (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + [185] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [186] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [187] (word) rem16u#1 ? (word) divr16u::rem#11 + [187] (word) rem16u#1 ← (word) divr16u::rem#11 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [188] return to:@return bitmap_clear: scope:[bitmap_clear] from main::@5 - [189] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) - [190] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + [189] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) + [190] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - [191] (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - [191] (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) + [191] (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + [191] (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - [192] (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - [192] (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - [193] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [194] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - [195] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 + [192] (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + [192] (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + [193] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [194] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + [195] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 [196] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - [197] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 + [197] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 [198] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 @@ -2963,35 +2963,35 @@ bitmap_init: scope:[bitmap_init] from main::@4 [200] phi() to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - [201] (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - [201] (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - [202] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - [203] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [201] (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + [201] (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + [202] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + [203] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [204] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 to:bitmap_init::@2 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@6 - [205] (byte) bitmap_init::bits#4 ? phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) - [206] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 + [205] (byte) bitmap_init::bits#4 ← phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) + [206] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 [207] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 to:bitmap_init::@3 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@2 bitmap_init::@4 - [208] (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@2/(const byte*) BITMAP#0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) - [208] (byte) bitmap_init::y#2 ? phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) - [209] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [210] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 - [211] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 - [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 - [213] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 - [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 - [215] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [208] (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@2/(const byte*) BITMAP#0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) + [208] (byte) bitmap_init::y#2 ← phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) + [209] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [210] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 + [211] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 + [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 + [213] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 + [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 + [215] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [216] if((byte~) bitmap_init::$7!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@3 - [217] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 + [217] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 to:bitmap_init::@4 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@3 bitmap_init::@5 - [218] (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) - [219] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 + [218] (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) + [219] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 [220] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 to:bitmap_init::@return bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@4 @@ -3004,9 +3004,9 @@ fill: scope:[fill] from main::@3 [223] phi() to:fill::@1 fill::@1: scope:[fill] from fill fill::@1 - [224] (byte*) fill::addr#2 ? phi( fill/(const byte*) SCREEN#0 fill::@1/(byte*) fill::addr#1 ) - [225] *((byte*) fill::addr#2) ? (const byte) WHITE#0 - [226] (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 + [224] (byte*) fill::addr#2 ← phi( fill/(const byte*) SCREEN#0 fill::@1/(byte*) fill::addr#1 ) + [225] *((byte*) fill::addr#2) ← (const byte) WHITE#0 + [226] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 [227] if((byte*) fill::addr#1!=(const byte*) fill::end#0) goto fill::@1 to:fill::@return fill::@return: scope:[fill] from fill::@1 @@ -3719,21 +3719,21 @@ main: { .const toD0181_return = (>(SCREEN&$3fff)<<2)|(>BITMAP)>>2&$f //SEG12 asm { sei } sei - //SEG13 [6] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG14 [7] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG15 [8] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG15 [8] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 jmp vicSelectGfxBank1 //SEG16 main::vicSelectGfxBank1 vicSelectGfxBank1: - //SEG17 [9] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG17 [9] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG18 [10] phi from main::vicSelectGfxBank1 to main::vicSelectGfxBank1_toDd001 [phi:main::vicSelectGfxBank1->main::vicSelectGfxBank1_toDd001] @@ -3744,13 +3744,13 @@ main: { jmp vicSelectGfxBank1_b1 //SEG20 main::vicSelectGfxBank1_@1 vicSelectGfxBank1_b1: - //SEG21 [11] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG21 [11] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A jmp b2 //SEG22 main::@2 b2: - //SEG23 [12] *((const byte*) D016#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG23 [12] *((const byte*) D016#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta D016 //SEG24 [13] phi from main::@2 to main::toD0181 [phi:main::@2->main::toD0181] @@ -3761,7 +3761,7 @@ main: { jmp b3 //SEG26 main::@3 b3: - //SEG27 [14] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG27 [14] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 //SEG28 [15] call fill @@ -3805,7 +3805,7 @@ main: { jmp b1 //SEG45 main::@1 b1: - //SEG46 [24] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG46 [24] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BGCOL jmp b1 } @@ -3841,14 +3841,14 @@ render_sine: { jmp b1 //SEG54 render_sine::@1 b1: - //SEG55 [27] (word~) render_sine::$0 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 + //SEG55 [27] (word~) render_sine::$0 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 lda sin_idx asl sta _0 lda sin_idx+1 rol sta _0+1 - //SEG56 [28] (signed word*~) render_sine::$1 ? (const signed word[$200]) sin#0 + (word~) render_sine::$0 -- pwsz1=pwsc1_plus_vwuz2 + //SEG56 [28] (signed word*~) render_sine::$1 ← (const signed word[$200]) sin#0 + (word~) render_sine::$0 -- pwsz1=pwsc1_plus_vwuz2 lda _0 clc adc #sin sta _1+1 - //SEG57 [29] (signed word) render_sine::sin_val#0 ? *((signed word*~) render_sine::$1) -- vwsz1=_deref_pwsz2 + //SEG57 [29] (signed word) render_sine::sin_val#0 ← *((signed word*~) render_sine::$1) -- vwsz1=_deref_pwsz2 ldy #0 lda (_1),y sta sin_val iny lda (_1),y sta sin_val+1 - //SEG58 [30] (signed word) wrap_y::y#0 ? (signed word) render_sine::sin_val#0 -- vwsz1=vwsz2 + //SEG58 [30] (signed word) wrap_y::y#0 ← (signed word) render_sine::sin_val#0 -- vwsz1=vwsz2 lda sin_val sta wrap_y.y lda sin_val+1 @@ -3873,21 +3873,21 @@ render_sine: { wrap_y_from_b1: //SEG61 [61] phi (signed word) wrap_y::y#9 = (signed word) wrap_y::y#0 [phi:render_sine::@1->wrap_y#0] -- register_copy jsr wrap_y - //SEG62 [32] (byte) wrap_y::return#0 ? (byte) wrap_y::return#2 -- vbuz1=vbuz2 + //SEG62 [32] (byte) wrap_y::return#0 ← (byte) wrap_y::return#2 -- vbuz1=vbuz2 lda wrap_y.return_2 sta wrap_y.return jmp b3 //SEG63 render_sine::@3 b3: - //SEG64 [33] (byte) render_sine::ypos#0 ? (byte) wrap_y::return#0 -- vbuz1=vbuz2 + //SEG64 [33] (byte) render_sine::ypos#0 ← (byte) wrap_y::return#0 -- vbuz1=vbuz2 lda wrap_y.return sta ypos - //SEG65 [34] (word) bitmap_plot::x#0 ? (word) render_sine::xpos#3 -- vwuz1=vwuz2 + //SEG65 [34] (word) bitmap_plot::x#0 ← (word) render_sine::xpos#3 -- vwuz1=vwuz2 lda xpos sta bitmap_plot.x lda xpos+1 sta bitmap_plot.x+1 - //SEG66 [35] (byte) bitmap_plot::y#0 ? (byte) render_sine::ypos#0 -- vbuz1=vbuz2 + //SEG66 [35] (byte) bitmap_plot::y#0 ← (byte) render_sine::ypos#0 -- vbuz1=vbuz2 lda ypos sta bitmap_plot.y //SEG67 [36] call bitmap_plot @@ -3899,14 +3899,14 @@ render_sine: { jmp b4 //SEG71 render_sine::@4 b4: - //SEG72 [37] (word~) render_sine::$4 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 + //SEG72 [37] (word~) render_sine::$4 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 lda sin_idx asl sta _4 lda sin_idx+1 rol sta _4+1 - //SEG73 [38] (signed word*~) render_sine::$5 ? (const signed word*) sin2#0 + (word~) render_sine::$4 -- pwsz1=pwsc1_plus_vwuz2 + //SEG73 [38] (signed word*~) render_sine::$5 ← (const signed word*) sin2#0 + (word~) render_sine::$4 -- pwsz1=pwsc1_plus_vwuz2 lda _4 clc adc #sin2 sta _5+1 - //SEG74 [39] (signed word) render_sine::sin2_val#0 ? *((signed word*~) render_sine::$5) -- vwsz1=_deref_pwsz2 + //SEG74 [39] (signed word) render_sine::sin2_val#0 ← *((signed word*~) render_sine::$5) -- vwsz1=_deref_pwsz2 ldy #0 lda (_5),y sta sin2_val iny lda (_5),y sta sin2_val+1 - //SEG75 [40] (signed word) wrap_y::y#1 ? (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwsz1=vwsz2_plus_vbsc1 + //SEG75 [40] (signed word) wrap_y::y#1 ← (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwsz1=vwsz2_plus_vbsc1 lda #$a sta $fe ora #$7f @@ -3941,21 +3941,21 @@ render_sine: { wrap_y_from_b4: //SEG78 [61] phi (signed word) wrap_y::y#9 = (signed word) wrap_y::y#1 [phi:render_sine::@4->wrap_y#0] -- register_copy jsr wrap_y - //SEG79 [42] (byte) wrap_y::return#1 ? (byte) wrap_y::return#2 -- vbuz1=vbuz2 + //SEG79 [42] (byte) wrap_y::return#1 ← (byte) wrap_y::return#2 -- vbuz1=vbuz2 lda wrap_y.return_2 sta wrap_y.return_1 jmp b5 //SEG80 render_sine::@5 b5: - //SEG81 [43] (byte) render_sine::ypos2#0 ? (byte) wrap_y::return#1 -- vbuz1=vbuz2 + //SEG81 [43] (byte) render_sine::ypos2#0 ← (byte) wrap_y::return#1 -- vbuz1=vbuz2 lda wrap_y.return_1 sta ypos2 - //SEG82 [44] (word) bitmap_plot::x#1 ? (word) render_sine::xpos#3 -- vwuz1=vwuz2 + //SEG82 [44] (word) bitmap_plot::x#1 ← (word) render_sine::xpos#3 -- vwuz1=vwuz2 lda xpos sta bitmap_plot.x lda xpos+1 sta bitmap_plot.x+1 - //SEG83 [45] (byte) bitmap_plot::y#1 ? (byte) render_sine::ypos2#0 -- vbuz1=vbuz2 + //SEG83 [45] (byte) bitmap_plot::y#1 ← (byte) render_sine::ypos2#0 -- vbuz1=vbuz2 lda ypos2 sta bitmap_plot.y //SEG84 [46] call bitmap_plot @@ -3967,7 +3967,7 @@ render_sine: { jmp b6 //SEG88 render_sine::@6 b6: - //SEG89 [47] (word) render_sine::xpos#1 ? ++ (word) render_sine::xpos#3 -- vwuz1=_inc_vwuz1 + //SEG89 [47] (word) render_sine::xpos#1 ← ++ (word) render_sine::xpos#3 -- vwuz1=_inc_vwuz1 inc xpos bne !+ inc xpos+1 @@ -3989,7 +3989,7 @@ render_sine: { jmp b2 //SEG93 render_sine::@2 b2: - //SEG94 [50] (word) render_sine::sin_idx#1 ? ++ (word) render_sine::sin_idx#2 -- vwuz1=_inc_vwuz1 + //SEG94 [50] (word) render_sine::sin_idx#1 ← ++ (word) render_sine::sin_idx#2 -- vwuz1=_inc_vwuz1 inc sin_idx bne !+ inc sin_idx+1 @@ -4028,20 +4028,20 @@ bitmap_plot: { .label x = 7 .label y = 6 .label _3 = $51 - //SEG103 [55] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG103 [55] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy y lda bitmap_plot_yhi,y sta _3+1 lda bitmap_plot_ylo,y sta _3 - //SEG104 [56] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 + //SEG104 [56] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 lda x and #<$fff8 sta _1 lda x+1 and #>$fff8 sta _1+1 - //SEG105 [57] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz2_plus_vwuz3 + //SEG105 [57] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz2_plus_vwuz3 lda _3 clc adc _1 @@ -4049,10 +4049,10 @@ bitmap_plot: { lda _3+1 adc _1+1 sta plotter+1 - //SEG106 [58] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#2 -- vbuz1=_lo_vwuz2 + //SEG106 [58] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#2 -- vbuz1=_lo_vwuz2 lda x sta _2 - //SEG107 [59] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuz2 + //SEG107 [59] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuz2 ldy #0 lda (plotter),y ldy _2 @@ -4101,7 +4101,7 @@ wrap_y: { jmp b5 //SEG119 wrap_y::@5 b5: - //SEG120 [66] (byte) wrap_y::return#2 ? ((byte)) (signed word) wrap_y::y#6 -- vbuz1=_byte_vwsz2 + //SEG120 [66] (byte) wrap_y::return#2 ← ((byte)) (signed word) wrap_y::y#6 -- vbuz1=_byte_vwsz2 lda y sta return_2 jmp breturn @@ -4111,7 +4111,7 @@ wrap_y: { rts //SEG123 wrap_y::@4 b4: - //SEG124 [68] (signed word) wrap_y::y#3 ? (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_plus_vwuc1 + //SEG124 [68] (signed word) wrap_y::y#3 ← (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_plus_vwuc1 clc lda y adc #<$c8 @@ -4122,7 +4122,7 @@ wrap_y: { jmp b3_from_b4 //SEG125 wrap_y::@2 b2: - //SEG126 [69] (signed word) wrap_y::y#2 ? (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_minus_vbuc1 + //SEG126 [69] (signed word) wrap_y::y#2 ← (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_minus_vbuc1 sec lda y sbc #$c8 @@ -4153,7 +4153,7 @@ sin16s_gen2: { //SEG129 [161] phi from sin16s_gen2 to div32u16u [phi:sin16s_gen2->div32u16u] div32u16u_from_sin16s_gen2: jsr div32u16u - //SEG130 [72] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 -- vduz1=vduz2 + //SEG130 [72] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 -- vduz1=vduz2 lda div32u16u.return sta div32u16u.return_2 lda div32u16u.return+1 @@ -4165,7 +4165,7 @@ sin16s_gen2: { jmp b2 //SEG131 sin16s_gen2::@2 b2: - //SEG132 [73] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 -- vduz1=vduz2 + //SEG132 [73] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 -- vduz1=vduz2 lda div32u16u.return_2 sta step lda div32u16u.return_2+1 @@ -4203,7 +4203,7 @@ sin16s_gen2: { jmp b1 //SEG141 sin16s_gen2::@1 b1: - //SEG142 [75] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 -- vduz1=vduz2 + //SEG142 [75] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -4214,7 +4214,7 @@ sin16s_gen2: { sta sin16s.x+3 //SEG143 [76] call sin16s jsr sin16s - //SEG144 [77] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 -- vwsz1=vwsz2 + //SEG144 [77] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 -- vwsz1=vwsz2 lda sin16s.return_1 sta sin16s.return lda sin16s.return_1+1 @@ -4222,14 +4222,14 @@ sin16s_gen2: { jmp b3 //SEG145 sin16s_gen2::@3 b3: - //SEG146 [78] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 -- vwsz1=vwsz2 + //SEG146 [78] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 -- vwsz1=vwsz2 lda sin16s.return sta mul16s.a lda sin16s.return+1 sta mul16s.a+1 //SEG147 [79] call mul16s jsr mul16s - //SEG148 [80] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 -- vdsz1=vdsz2 + //SEG148 [80] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 -- vdsz1=vdsz2 lda mul16s.return sta mul16s.return_2 lda mul16s.return+1 @@ -4241,7 +4241,7 @@ sin16s_gen2: { jmp b4 //SEG149 sin16s_gen2::@4 b4: - //SEG150 [81] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 -- vdsz1=vdsz2 + //SEG150 [81] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 -- vdsz1=vdsz2 lda mul16s.return_2 sta _5 lda mul16s.return_2+1 @@ -4250,12 +4250,12 @@ sin16s_gen2: { sta _5+2 lda mul16s.return_2+3 sta _5+3 - //SEG151 [82] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 + //SEG151 [82] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 lda _5+2 sta _6 lda _5+3 sta _6+1 - //SEG152 [83] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz2 + //SEG152 [83] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz2 lda _6 clc adc #offs sta _8+1 - //SEG153 [84] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 + //SEG153 [84] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 ldy #0 lda _8 sta (sintab),y iny lda _8+1 sta (sintab),y - //SEG154 [85] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG154 [85] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -4278,7 +4278,7 @@ sin16s_gen2: { bcc !+ inc sintab+1 !: - //SEG155 [86] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG155 [86] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -4292,7 +4292,7 @@ sin16s_gen2: { lda x+3 adc step+3 sta x+3 - //SEG156 [87] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 + //SEG156 [87] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4323,7 +4323,7 @@ mul16s: { .label return = $79 .label a = $63 .label return_2 = $65 - //SEG161 [90] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG161 [90] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -4338,7 +4338,7 @@ mul16s: { lda #>sin16s_gen2.ampl sta mul16u.b+1 jsr mul16u - //SEG166 [92] (dword) mul16u::return#2 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG166 [92] (dword) mul16u::return#2 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return lda mul16u.res+1 @@ -4350,7 +4350,7 @@ mul16s: { jmp b4 //SEG167 mul16s::@4 b4: - //SEG168 [93] (dword) mul16s::m#0 ? (dword) mul16u::return#2 -- vduz1=vduz2 + //SEG168 [93] (dword) mul16s::m#0 ← (dword) mul16u::return#2 -- vduz1=vduz2 lda mul16u.return sta m lda mul16u.return+1 @@ -4365,12 +4365,12 @@ mul16s: { jmp b3 //SEG170 mul16s::@3 b3: - //SEG171 [95] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG171 [95] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG172 [96] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz2_minus_vwuc1 + //SEG172 [96] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz2_minus_vwuc1 lda _9 sec sbc #sin16s_gen2.ampl sta _16+1 - //SEG173 [97] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG173 [97] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -4393,7 +4393,7 @@ mul16s: { jmp b2 //SEG177 mul16s::@2 b2: - //SEG178 [99] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz2 + //SEG178 [99] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz2 lda m sta return lda m+1 @@ -4419,7 +4419,7 @@ mul16u: { .label return = $71 .label b = $17 .label return_3 = $9e - //SEG182 [102] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG182 [102] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -4453,7 +4453,7 @@ mul16u: { rts //SEG191 mul16u::@2 b2: - //SEG192 [106] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 + //SEG192 [106] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 lda a and #1 sta _1 @@ -4464,7 +4464,7 @@ mul16u: { jmp b4 //SEG194 mul16u::@4 b4: - //SEG195 [108] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG195 [108] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -4485,11 +4485,11 @@ mul16u: { jmp b3 //SEG198 mul16u::@3 b3: - //SEG199 [110] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG199 [110] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG200 [111] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG200 [111] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -4543,7 +4543,7 @@ sin16s: { jmp b4 //SEG207 sin16s::@4 b4: - //SEG208 [113] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG208 [113] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG223 [119] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG224 [120] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG224 [120] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG225 [121] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG225 [121] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4655,7 +4655,7 @@ sin16s: { //SEG229 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG230 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG231 [123] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG231 [123] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return lda mulu16_sel.return_12+1 @@ -4663,17 +4663,17 @@ sin16s: { jmp b7 //SEG232 sin16s::@7 b7: - //SEG233 [124] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG233 [124] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG234 [125] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 -- vwuz1=vwuz2 + //SEG234 [125] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 -- vwuz1=vwuz2 lda x2 sta mulu16_sel.v1 lda x2+1 sta mulu16_sel.v1+1 - //SEG235 [126] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG235 [126] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4687,7 +4687,7 @@ sin16s: { //SEG239 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG240 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG241 [128] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG241 [128] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_1 lda mulu16_sel.return_12+1 @@ -4695,12 +4695,12 @@ sin16s: { jmp b8 //SEG242 sin16s::@8 b8: - //SEG243 [129] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 -- vwuz1=vwuz2 + //SEG243 [129] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 -- vwuz1=vwuz2 lda mulu16_sel.return_1 sta x3 lda mulu16_sel.return_1+1 sta x3+1 - //SEG244 [130] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG244 [130] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 @@ -4718,7 +4718,7 @@ sin16s: { sta mulu16_sel.v2+1 //SEG249 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG250 [132] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG250 [132] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_2 lda mulu16_sel.return_12+1 @@ -4726,12 +4726,12 @@ sin16s: { jmp b9 //SEG251 sin16s::@9 b9: - //SEG252 [133] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 -- vwuz1=vwuz2 + //SEG252 [133] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 -- vwuz1=vwuz2 lda mulu16_sel.return_2 sta x3_6 lda mulu16_sel.return_2+1 sta x3_6+1 - //SEG253 [134] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG253 [134] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -4739,12 +4739,12 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG254 [135] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG254 [135] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 sta mulu16_sel.v1+1 - //SEG255 [136] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG255 [136] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4758,7 +4758,7 @@ sin16s: { //SEG259 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG260 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG261 [138] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG261 [138] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_10 lda mulu16_sel.return_12+1 @@ -4766,17 +4766,17 @@ sin16s: { jmp b10 //SEG262 sin16s::@10 b10: - //SEG263 [139] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 -- vwuz1=vwuz2 + //SEG263 [139] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 -- vwuz1=vwuz2 lda mulu16_sel.return_10 sta x4 lda mulu16_sel.return_10+1 sta x4+1 - //SEG264 [140] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 -- vwuz1=vwuz2 + //SEG264 [140] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 -- vwuz1=vwuz2 lda x4 sta mulu16_sel.v1 lda x4+1 sta mulu16_sel.v1+1 - //SEG265 [141] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG265 [141] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4790,7 +4790,7 @@ sin16s: { //SEG269 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG270 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG271 [143] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG271 [143] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_11 lda mulu16_sel.return_12+1 @@ -4798,12 +4798,12 @@ sin16s: { jmp b11 //SEG272 sin16s::@11 b11: - //SEG273 [144] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 -- vwuz1=vwuz2 + //SEG273 [144] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 -- vwuz1=vwuz2 lda mulu16_sel.return_11 sta x5 lda mulu16_sel.return_11+1 sta x5+1 - //SEG274 [145] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 + //SEG274 [145] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 lda x5+1 sta x5_128+1 lda x5 @@ -4814,7 +4814,7 @@ sin16s: { ror x5_128 dey bne !- - //SEG275 [146] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG275 [146] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 lda usinx clc adc x5_128 @@ -4829,7 +4829,7 @@ sin16s: { jmp b6 //SEG277 sin16s::@6 b6: - //SEG278 [148] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 + //SEG278 [148] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 sec lda usinx_1 eor #$ff @@ -4853,7 +4853,7 @@ sin16s: { rts //SEG284 sin16s::@12 b12: - //SEG285 [151] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 + //SEG285 [151] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 lda usinx_1 sta return_5 lda usinx_1+1 @@ -4876,12 +4876,12 @@ mulu16_sel: { .label return_11 = $96 .label select = $2e .label return_12 = $aa - //SEG287 [153] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG287 [153] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG288 [154] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 + //SEG288 [154] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 lda v2 sta mul16u.b lda v2+1 @@ -4892,7 +4892,7 @@ mulu16_sel: { //SEG291 [101] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mulu16_sel->mul16u#0] -- register_copy //SEG292 [101] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mulu16_sel->mul16u#1] -- register_copy jsr mul16u - //SEG293 [156] (dword) mul16u::return#3 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG293 [156] (dword) mul16u::return#3 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return_3 lda mul16u.res+1 @@ -4904,7 +4904,7 @@ mulu16_sel: { jmp b1 //SEG294 mulu16_sel::@1 b1: - //SEG295 [157] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 -- vduz1=vduz2 + //SEG295 [157] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 -- vduz1=vduz2 lda mul16u.return_3 sta _0 lda mul16u.return_3+1 @@ -4913,7 +4913,7 @@ mulu16_sel: { sta _0+2 lda mul16u.return_3+3 sta _0+3 - //SEG296 [158] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 + //SEG296 [158] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -4932,7 +4932,7 @@ mulu16_sel: { dex bne !- !e: - //SEG297 [159] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG297 [159] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return_12 lda _1+3 @@ -4965,7 +4965,7 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG305 [163] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG305 [163] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -4973,12 +4973,12 @@ div32u16u: { jmp b1 //SEG306 div32u16u::@1 b1: - //SEG307 [164] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG307 [164] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta quotient_hi lda divr16u.return_2+1 sta quotient_hi+1 - //SEG308 [165] (word) divr16u::rem#4 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG308 [165] (word) divr16u::rem#4 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta divr16u.rem lda rem16u+1 @@ -4993,7 +4993,7 @@ div32u16u: { sta divr16u.dividend+1 //SEG312 [171] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG313 [167] (word) divr16u::return#3 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG313 [167] (word) divr16u::return#3 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_3 lda divr16u.return+1 @@ -5001,12 +5001,12 @@ div32u16u: { jmp b2 //SEG314 div32u16u::@2 b2: - //SEG315 [168] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG315 [168] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return_3 sta quotient_lo lda divr16u.return_3+1 sta quotient_lo+1 - //SEG316 [169] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG316 [169] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -5059,13 +5059,13 @@ divr16u: { jmp b1 //SEG330 divr16u::@1 b1: - //SEG331 [173] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG331 [173] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG332 [174] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 + //SEG332 [174] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG333 [175] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG333 [175] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -5076,7 +5076,7 @@ divr16u: { jmp b4 //SEG335 divr16u::@4 b4: - //SEG336 [177] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG336 [177] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -5087,10 +5087,10 @@ divr16u: { jmp b2 //SEG339 divr16u::@2 b2: - //SEG340 [179] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG340 [179] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG341 [180] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG341 [180] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG342 [181] if((word) divr16u::rem#6<(const word) SIN_SIZE#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -5105,12 +5105,12 @@ divr16u: { jmp b5 //SEG343 divr16u::@5 b5: - //SEG344 [182] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG344 [182] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG345 [183] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) SIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG345 [183] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) SIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG391 [203] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr bits //SEG392 [204] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuz1_neq_0_then_la1 lda bits @@ -5267,7 +5267,7 @@ bitmap_init: { jmp b2 //SEG395 bitmap_init::@2 b2: - //SEG396 [206] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 + //SEG396 [206] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG397 [207] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuz1_neq_0_then_la1 lda x @@ -5291,29 +5291,29 @@ bitmap_init: { jmp b3 //SEG404 bitmap_init::@3 b3: - //SEG405 [209] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG405 [209] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _3 - //SEG406 [210] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 + //SEG406 [210] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 lda yoffs sta _4 - //SEG407 [211] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuz1=vbuz2_bor_vbuz3 + //SEG407 [211] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuz1=vbuz2_bor_vbuz3 lda _3 ora _4 sta _5 - //SEG408 [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG408 [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuz1=vbuz2 lda _5 ldy y sta bitmap_plot_ylo,y - //SEG409 [213] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 + //SEG409 [213] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 lda yoffs+1 sta _6 - //SEG410 [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG410 [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuz1=vbuz2 lda _6 ldy y sta bitmap_plot_yhi,y - //SEG411 [215] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG411 [215] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _7 @@ -5324,7 +5324,7 @@ bitmap_init: { jmp b5 //SEG413 bitmap_init::@5 b5: - //SEG414 [217] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG414 [217] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -5339,7 +5339,7 @@ bitmap_init: { jmp b4 //SEG417 bitmap_init::@4 b4: - //SEG418 [219] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 + //SEG418 [219] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 inc y //SEG419 [220] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuz1_neq_0_then_la1 lda y @@ -5380,11 +5380,11 @@ fill: { jmp b1 //SEG431 fill::@1 b1: - //SEG432 [225] *((byte*) fill::addr#2) ? (const byte) WHITE#0 -- _deref_pbuz1=vbuc1 + //SEG432 [225] *((byte*) fill::addr#2) ← (const byte) WHITE#0 -- _deref_pbuz1=vbuc1 lda #WHITE ldy #0 sta (addr),y - //SEG433 [226] (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 + //SEG433 [226] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 inc addr bne !+ inc addr+1 @@ -5416,232 +5416,232 @@ fill: { REGISTER UPLIFT POTENTIAL REGISTERS Equivalence Class zp ZP_BYTE:191 [ bitmap_init::$4 ] has ALU potential. -Statement [6] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [8] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [9] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [11] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [12] *((const byte*) D016#0) ? (const byte) VIC_CSEL#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [14] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [27] (word~) render_sine::$0 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ) always clobbers reg byte a -Statement [28] (signed word*~) render_sine::$1 ? (const signed word[$200]) sin#0 + (word~) render_sine::$0 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ) always clobbers reg byte a -Statement [29] (signed word) render_sine::sin_val#0 ? *((signed word*~) render_sine::$1) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ) always clobbers reg byte a reg byte y -Statement [30] (signed word) wrap_y::y#0 ? (signed word) render_sine::sin_val#0 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ) always clobbers reg byte a -Statement [34] (word) bitmap_plot::x#0 ? (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [8] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [9] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [11] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [12] *((const byte*) D016#0) ← (const byte) VIC_CSEL#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [14] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [27] (word~) render_sine::$0 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ) always clobbers reg byte a +Statement [28] (signed word*~) render_sine::$1 ← (const signed word[$200]) sin#0 + (word~) render_sine::$0 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ) always clobbers reg byte a +Statement [29] (signed word) render_sine::sin_val#0 ← *((signed word*~) render_sine::$1) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ) always clobbers reg byte a reg byte y +Statement [30] (signed word) wrap_y::y#0 ← (signed word) render_sine::sin_val#0 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ) always clobbers reg byte a +Statement [34] (word) bitmap_plot::x#0 ← (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:72 [ render_sine::ypos#0 ] -Statement [37] (word~) render_sine::$4 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ) always clobbers reg byte a -Statement [38] (signed word*~) render_sine::$5 ? (const signed word*) sin2#0 + (word~) render_sine::$4 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ) always clobbers reg byte a -Statement [39] (signed word) render_sine::sin2_val#0 ? *((signed word*~) render_sine::$5) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ) always clobbers reg byte a reg byte y -Statement [40] (signed word) wrap_y::y#1 ? (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ) always clobbers reg byte a -Statement [44] (word) bitmap_plot::x#1 ? (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ) always clobbers reg byte a +Statement [37] (word~) render_sine::$4 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ) always clobbers reg byte a +Statement [38] (signed word*~) render_sine::$5 ← (const signed word*) sin2#0 + (word~) render_sine::$4 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ) always clobbers reg byte a +Statement [39] (signed word) render_sine::sin2_val#0 ← *((signed word*~) render_sine::$5) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ) always clobbers reg byte a reg byte y +Statement [40] (signed word) wrap_y::y#1 ← (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ) always clobbers reg byte a +Statement [44] (word) bitmap_plot::x#1 ← (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:80 [ render_sine::ypos2#0 ] Statement [48] if((word) render_sine::xpos#1!=(word/signed word/dword/signed dword) $140) goto render_sine::@7 [ render_sine::sin_idx#2 render_sine::xpos#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#1 ] ) always clobbers reg byte a Statement [51] if((word) render_sine::sin_idx#1<(const word) SIN_SIZE#0) goto render_sine::@1 [ render_sine::sin_idx#1 render_sine::xpos#8 ] ( main:3::render_sine:23 [ render_sine::sin_idx#1 render_sine::xpos#8 ] ) always clobbers reg byte a -Statement [55] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) [ bitmap_plot::x#2 bitmap_plot::$3 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] ) always clobbers reg byte a -Statement [56] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a -Statement [57] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#2 bitmap_plot::plotter#1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] ) always clobbers reg byte a -Statement [58] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#2 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a -Statement [59] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 ] ) always clobbers reg byte a reg byte y +Statement [55] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) [ bitmap_plot::x#2 bitmap_plot::$3 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] ) always clobbers reg byte a +Statement [56] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a +Statement [57] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#2 bitmap_plot::plotter#1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] ) always clobbers reg byte a +Statement [58] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#2 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a +Statement [59] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 ] ) always clobbers reg byte a reg byte y Statement [63] if((signed word) wrap_y::y#4>=(byte/word/signed word/dword/signed dword) $c8) goto wrap_y::@2 [ wrap_y::y#4 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#4 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#4 ] ) always clobbers reg byte a Statement [65] if((signed word) wrap_y::y#6<(byte/signed byte/word/signed word/dword/signed dword) 0) goto wrap_y::@4 [ wrap_y::y#6 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#6 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#6 ] ) always clobbers reg byte a -Statement [66] (byte) wrap_y::return#2 ? ((byte)) (signed word) wrap_y::y#6 [ wrap_y::return#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] ) always clobbers reg byte a -Statement [68] (signed word) wrap_y::y#3 ? (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#3 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] ) always clobbers reg byte a -Statement [69] (signed word) wrap_y::y#2 ? (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] ) always clobbers reg byte a -Statement [72] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [73] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a -Statement [75] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [77] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [78] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a -Statement [80] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a -Statement [81] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a -Statement [82] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a -Statement [83] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a -Statement [84] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y -Statement [85] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a -Statement [86] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [66] (byte) wrap_y::return#2 ← ((byte)) (signed word) wrap_y::y#6 [ wrap_y::return#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] ) always clobbers reg byte a +Statement [68] (signed word) wrap_y::y#3 ← (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#3 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] ) always clobbers reg byte a +Statement [69] (signed word) wrap_y::y#2 ← (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] ) always clobbers reg byte a +Statement [72] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [73] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a +Statement [75] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [77] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [78] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a +Statement [80] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a +Statement [81] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a +Statement [82] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a +Statement [83] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a +Statement [84] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y +Statement [85] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [86] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a Statement [88] if((word) sin16s_gen2::i#1<(const word) SIN_SIZE#0) goto sin16s_gen2::@1 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ) always clobbers reg byte a -Statement [90] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a -Statement [92] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a -Statement [93] (dword) mul16s::m#0 ? (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a +Statement [90] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a +Statement [92] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a +Statement [93] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a Statement [94] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 ] ) always clobbers reg byte a -Statement [95] (word~) mul16s::$9 ? > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a -Statement [96] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a -Statement [97] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a -Statement [99] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a -Statement [102] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [95] (word~) mul16s::$9 ← > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a +Statement [96] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a +Statement [97] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a +Statement [99] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a +Statement [102] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:35 [ sin16s::isUpper#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:46 [ mulu16_sel::select#5 ] Statement [104] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [106] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [108] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [106] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [108] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a Statement [112] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [113] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [113] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [115] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [116] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [118] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [116] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [118] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:35 [ sin16s::isUpper#2 ] -Statement [119] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [120] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [121] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [123] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [124] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [125] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [126] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [128] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [129] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [130] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [132] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [133] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [134] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [135] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [136] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [138] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [139] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [140] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [141] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [143] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [144] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [145] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [146] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [148] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [151] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [153] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [154] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [156] (dword) mul16u::return#3 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a -Statement [157] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [158] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [159] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [163] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [164] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [165] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [167] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [168] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [169] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [174] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [119] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [120] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [121] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [123] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [124] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [125] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [126] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [128] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [129] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [130] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [132] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [133] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [134] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [135] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [136] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [138] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [139] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [140] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [141] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [143] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [144] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [145] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [146] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [148] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [151] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [153] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [154] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [156] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a +Statement [157] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [158] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [159] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [163] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [164] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [165] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [167] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [168] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [169] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [174] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:53 [ divr16u::i#2 divr16u::i#1 ] -Statement [177] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [177] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [181] if((word) divr16u::rem#6<(const word) SIN_SIZE#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [183] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) SIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [187] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [189] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:3::bitmap_clear:19 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [190] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:3::bitmap_clear:19 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [193] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:3::bitmap_clear:19 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [183] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) SIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [187] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [189] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:3::bitmap_clear:19 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [190] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:3::bitmap_clear:19 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [193] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:3::bitmap_clear:19 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:54 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:54 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:57 [ bitmap_clear::x#2 bitmap_clear::x#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:57 [ bitmap_clear::x#2 bitmap_clear::x#1 ] -Statement [217] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [217] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:60 [ bitmap_init::y#2 bitmap_init::y#1 ] -Statement [225] *((byte*) fill::addr#2) ? (const byte) WHITE#0 [ fill::addr#2 ] ( main:3::fill:15 [ fill::addr#2 ] ) always clobbers reg byte a reg byte y +Statement [225] *((byte*) fill::addr#2) ← (const byte) WHITE#0 [ fill::addr#2 ] ( main:3::fill:15 [ fill::addr#2 ] ) always clobbers reg byte a reg byte y Statement [227] if((byte*) fill::addr#1!=(const byte*) fill::end#0) goto fill::@1 [ fill::addr#1 ] ( main:3::fill:15 [ fill::addr#1 ] ) always clobbers reg byte a -Statement [6] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [8] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [9] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [11] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [12] *((const byte*) D016#0) ? (const byte) VIC_CSEL#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [14] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a -Statement [27] (word~) render_sine::$0 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ) always clobbers reg byte a -Statement [28] (signed word*~) render_sine::$1 ? (const signed word[$200]) sin#0 + (word~) render_sine::$0 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ) always clobbers reg byte a -Statement [29] (signed word) render_sine::sin_val#0 ? *((signed word*~) render_sine::$1) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ) always clobbers reg byte a reg byte y -Statement [30] (signed word) wrap_y::y#0 ? (signed word) render_sine::sin_val#0 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ) always clobbers reg byte a -Statement [34] (word) bitmap_plot::x#0 ? (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ) always clobbers reg byte a -Statement [37] (word~) render_sine::$4 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ) always clobbers reg byte a -Statement [38] (signed word*~) render_sine::$5 ? (const signed word*) sin2#0 + (word~) render_sine::$4 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ) always clobbers reg byte a -Statement [39] (signed word) render_sine::sin2_val#0 ? *((signed word*~) render_sine::$5) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ) always clobbers reg byte a reg byte y -Statement [40] (signed word) wrap_y::y#1 ? (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ) always clobbers reg byte a -Statement [44] (word) bitmap_plot::x#1 ? (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [8] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [9] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [11] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [12] *((const byte*) D016#0) ← (const byte) VIC_CSEL#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [14] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [ ] ( main:3 [ ] ) always clobbers reg byte a +Statement [27] (word~) render_sine::$0 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$0 ] ) always clobbers reg byte a +Statement [28] (signed word*~) render_sine::$1 ← (const signed word[$200]) sin#0 + (word~) render_sine::$0 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$1 ] ) always clobbers reg byte a +Statement [29] (signed word) render_sine::sin_val#0 ← *((signed word*~) render_sine::$1) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin_val#0 ] ) always clobbers reg byte a reg byte y +Statement [30] (signed word) wrap_y::y#0 ← (signed word) render_sine::sin_val#0 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#0 ] ) always clobbers reg byte a +Statement [34] (word) bitmap_plot::x#0 ← (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos#0 bitmap_plot::x#0 ] ) always clobbers reg byte a +Statement [37] (word~) render_sine::$4 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$4 ] ) always clobbers reg byte a +Statement [38] (signed word*~) render_sine::$5 ← (const signed word*) sin2#0 + (word~) render_sine::$4 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::$5 ] ) always clobbers reg byte a +Statement [39] (signed word) render_sine::sin2_val#0 ← *((signed word*~) render_sine::$5) [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::sin2_val#0 ] ) always clobbers reg byte a reg byte y +Statement [40] (signed word) wrap_y::y#1 ← (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#1 ] ) always clobbers reg byte a +Statement [44] (word) bitmap_plot::x#1 ← (word) render_sine::xpos#3 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#3 render_sine::ypos2#0 bitmap_plot::x#1 ] ) always clobbers reg byte a Statement [48] if((word) render_sine::xpos#1!=(word/signed word/dword/signed dword) $140) goto render_sine::@7 [ render_sine::sin_idx#2 render_sine::xpos#1 ] ( main:3::render_sine:23 [ render_sine::sin_idx#2 render_sine::xpos#1 ] ) always clobbers reg byte a Statement [51] if((word) render_sine::sin_idx#1<(const word) SIN_SIZE#0) goto render_sine::@1 [ render_sine::sin_idx#1 render_sine::xpos#8 ] ( main:3::render_sine:23 [ render_sine::sin_idx#1 render_sine::xpos#8 ] ) always clobbers reg byte a -Statement [55] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) [ bitmap_plot::x#2 bitmap_plot::$3 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] ) always clobbers reg byte a -Statement [56] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a -Statement [57] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#2 bitmap_plot::plotter#1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] ) always clobbers reg byte a -Statement [58] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#2 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a -Statement [59] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 ] ) always clobbers reg byte a reg byte y +Statement [55] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) [ bitmap_plot::x#2 bitmap_plot::$3 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 ] ) always clobbers reg byte a +Statement [56] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a +Statement [57] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#2 bitmap_plot::plotter#1 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::x#2 bitmap_plot::plotter#1 ] ) always clobbers reg byte a +Statement [58] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#2 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a +Statement [59] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:3::render_sine:23::bitmap_plot:36 [ render_sine::sin_idx#2 render_sine::xpos#3 ] main:3::render_sine:23::bitmap_plot:46 [ render_sine::sin_idx#2 render_sine::xpos#3 ] ) always clobbers reg byte a reg byte y Statement [63] if((signed word) wrap_y::y#4>=(byte/word/signed word/dword/signed dword) $c8) goto wrap_y::@2 [ wrap_y::y#4 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#4 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#4 ] ) always clobbers reg byte a Statement [65] if((signed word) wrap_y::y#6<(byte/signed byte/word/signed word/dword/signed dword) 0) goto wrap_y::@4 [ wrap_y::y#6 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#6 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#6 ] ) always clobbers reg byte a -Statement [66] (byte) wrap_y::return#2 ? ((byte)) (signed word) wrap_y::y#6 [ wrap_y::return#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] ) always clobbers reg byte a -Statement [68] (signed word) wrap_y::y#3 ? (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#3 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] ) always clobbers reg byte a -Statement [69] (signed word) wrap_y::y#2 ? (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] ) always clobbers reg byte a -Statement [72] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [73] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a -Statement [75] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [77] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [78] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a -Statement [80] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a -Statement [81] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a -Statement [82] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a -Statement [83] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a -Statement [84] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y -Statement [85] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a -Statement [86] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [66] (byte) wrap_y::return#2 ← ((byte)) (signed word) wrap_y::y#6 [ wrap_y::return#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::return#2 ] ) always clobbers reg byte a +Statement [68] (signed word) wrap_y::y#3 ← (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#3 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#3 ] ) always clobbers reg byte a +Statement [69] (signed word) wrap_y::y#2 ← (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 [ wrap_y::y#2 ] ( main:3::render_sine:23::wrap_y:31 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] main:3::render_sine:23::wrap_y:41 [ render_sine::sin_idx#2 render_sine::xpos#3 wrap_y::y#2 ] ) always clobbers reg byte a +Statement [72] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:3::sin16s_gen2:21 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [73] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen2::step#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 ] ) always clobbers reg byte a +Statement [75] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [77] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [78] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 ] ) always clobbers reg byte a +Statement [80] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#2 ] ) always clobbers reg byte a +Statement [81] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$5 ] ) always clobbers reg byte a +Statement [82] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$6 ] ) always clobbers reg byte a +Statement [83] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s_gen2::$8 ] ) always clobbers reg byte a +Statement [84] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 ] ) always clobbers reg byte a reg byte y +Statement [85] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::i#2 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a +Statement [86] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::i#2 sin16s_gen2::x#1 sin16s_gen2::sintab#0 ] ) always clobbers reg byte a Statement [88] if((word) sin16s_gen2::i#1<(const word) SIN_SIZE#0) goto sin16s_gen2::@1 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ( main:3::sin16s_gen2:21 [ sin16s_gen2::step#0 sin16s_gen2::x#1 sin16s_gen2::sintab#0 sin16s_gen2::i#1 ] ) always clobbers reg byte a -Statement [90] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a -Statement [92] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a -Statement [93] (dword) mul16s::m#0 ? (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a +Statement [90] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16u::a#8 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#8 ] ) always clobbers reg byte a +Statement [92] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16u::return#2 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::return#2 ] ) always clobbers reg byte a +Statement [93] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16s::m#0 ] ) always clobbers reg byte a Statement [94] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::m#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 ] ) always clobbers reg byte a -Statement [95] (word~) mul16s::$9 ? > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a -Statement [96] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a -Statement [97] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a -Statement [99] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a -Statement [102] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [95] (word~) mul16s::$9 ← > (dword) mul16s::m#0 [ mul16s::m#0 mul16s::$9 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a +Statement [96] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 [ mul16s::m#0 mul16s::$16 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a +Statement [97] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::m#1 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::m#1 ] ) always clobbers reg byte a +Statement [99] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:3::sin16s_gen2:21::mul16s:79 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::return#0 ] ) always clobbers reg byte a +Statement [102] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a Statement [104] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [106] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [108] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [106] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [108] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:3::sin16s_gen2:21::mul16s:79::mul16u:91 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 mul16s::a#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142::mul16u:155 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a Statement [112] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [113] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [113] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [115] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [116] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [118] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y -Statement [119] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [120] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [121] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [123] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [124] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [125] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [126] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [128] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [129] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [130] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [132] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [133] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [134] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [135] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [136] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [138] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [139] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [140] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [141] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [143] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [144] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [145] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [146] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [148] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [151] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [153] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [154] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a -Statement [156] (dword) mul16u::return#3 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a -Statement [157] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [158] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [159] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [163] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [164] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [165] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [167] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [168] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [169] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [174] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [177] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [116] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [118] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [119] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [120] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [121] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [123] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [124] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [125] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [126] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [128] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [129] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [130] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [132] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [133] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [134] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [135] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [136] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [138] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [139] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [140] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [141] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [143] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [144] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [145] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [146] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [148] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [151] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:3::sin16s_gen2:21::sin16s:76 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [153] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 [ mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::a#2 mulu16_sel::v2#5 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [154] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 [ mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mul16u::b#1 mul16u::a#2 mulu16_sel::select#5 ] ) always clobbers reg byte a +Statement [156] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#3 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#3 ] ) always clobbers reg byte a +Statement [157] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [158] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [159] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:122 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:127 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:131 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:137 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:3::sin16s_gen2:21::sin16s:76::mulu16_sel:142 [ sin16s_gen2::step#0 sin16s_gen2::x#2 sin16s_gen2::sintab#2 sin16s_gen2::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [163] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [164] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [165] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [167] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [168] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [169] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:3::sin16s_gen2:21::div32u16u:71 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [174] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [177] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [181] if((word) divr16u::rem#6<(const word) SIN_SIZE#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [183] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) SIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [187] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [189] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:3::bitmap_clear:19 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [190] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:3::bitmap_clear:19 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [193] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:3::bitmap_clear:19 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y -Statement [209] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ) always clobbers reg byte a -Statement [215] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ) always clobbers reg byte a -Statement [217] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a -Statement [225] *((byte*) fill::addr#2) ? (const byte) WHITE#0 [ fill::addr#2 ] ( main:3::fill:15 [ fill::addr#2 ] ) always clobbers reg byte a reg byte y +Statement [183] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) SIN_SIZE#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [187] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:3::sin16s_gen2:21::div32u16u:71::divr16u:162 [ divr16u::return#0 rem16u#1 ] main:3::sin16s_gen2:21::div32u16u:71::divr16u:166 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [189] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:3::bitmap_clear:19 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [190] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:3::bitmap_clear:19 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [193] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:3::bitmap_clear:19 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [209] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ) always clobbers reg byte a +Statement [215] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ) always clobbers reg byte a +Statement [217] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:3::bitmap_init:17 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [225] *((byte*) fill::addr#2) ← (const byte) WHITE#0 [ fill::addr#2 ] ( main:3::fill:15 [ fill::addr#2 ] ) always clobbers reg byte a reg byte y Statement [227] if((byte*) fill::addr#1!=(const byte*) fill::end#0) goto fill::@1 [ fill::addr#1 ] ( main:3::fill:15 [ fill::addr#1 ] ) always clobbers reg byte a Potential registers zp ZP_WORD:2 [ render_sine::sin_idx#2 render_sine::sin_idx#1 ] : zp ZP_WORD:2 , Potential registers zp ZP_WORD:4 [ render_sine::xpos#3 render_sine::xpos#8 render_sine::xpos#1 ] : zp ZP_WORD:4 , @@ -5916,21 +5916,21 @@ main: { .const toD0181_return = (>(SCREEN&$3fff)<<2)|(>BITMAP)>>2&$f //SEG12 asm { sei } sei - //SEG13 [6] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG14 [7] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG15 [8] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG15 [8] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 jmp vicSelectGfxBank1 //SEG16 main::vicSelectGfxBank1 vicSelectGfxBank1: - //SEG17 [9] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG17 [9] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG18 [10] phi from main::vicSelectGfxBank1 to main::vicSelectGfxBank1_toDd001 [phi:main::vicSelectGfxBank1->main::vicSelectGfxBank1_toDd001] @@ -5941,13 +5941,13 @@ main: { jmp vicSelectGfxBank1_b1 //SEG20 main::vicSelectGfxBank1_@1 vicSelectGfxBank1_b1: - //SEG21 [11] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG21 [11] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A jmp b2 //SEG22 main::@2 b2: - //SEG23 [12] *((const byte*) D016#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG23 [12] *((const byte*) D016#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta D016 //SEG24 [13] phi from main::@2 to main::toD0181 [phi:main::@2->main::toD0181] @@ -5958,7 +5958,7 @@ main: { jmp b3 //SEG26 main::@3 b3: - //SEG27 [14] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG27 [14] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 //SEG28 [15] call fill @@ -6002,7 +6002,7 @@ main: { jmp b1 //SEG45 main::@1 b1: - //SEG46 [24] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG46 [24] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BGCOL jmp b1 } @@ -6036,14 +6036,14 @@ render_sine: { jmp b1 //SEG54 render_sine::@1 b1: - //SEG55 [27] (word~) render_sine::$0 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 + //SEG55 [27] (word~) render_sine::$0 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 lda sin_idx asl sta _0 lda sin_idx+1 rol sta _0+1 - //SEG56 [28] (signed word*~) render_sine::$1 ? (const signed word[$200]) sin#0 + (word~) render_sine::$0 -- pwsz1=pwsc1_plus_vwuz1 + //SEG56 [28] (signed word*~) render_sine::$1 ← (const signed word[$200]) sin#0 + (word~) render_sine::$0 -- pwsz1=pwsc1_plus_vwuz1 clc lda _1 adc #sin sta _1+1 - //SEG57 [29] (signed word) render_sine::sin_val#0 ? *((signed word*~) render_sine::$1) -- vwsz1=_deref_pwsz1 + //SEG57 [29] (signed word) render_sine::sin_val#0 ← *((signed word*~) render_sine::$1) -- vwsz1=_deref_pwsz1 ldy #0 lda (sin_val),y tax @@ -6059,20 +6059,20 @@ render_sine: { lda (sin_val),y stx sin_val sta sin_val+1 - //SEG58 [30] (signed word) wrap_y::y#0 ? (signed word) render_sine::sin_val#0 + //SEG58 [30] (signed word) wrap_y::y#0 ← (signed word) render_sine::sin_val#0 //SEG59 [31] call wrap_y //SEG60 [61] phi from render_sine::@1 to wrap_y [phi:render_sine::@1->wrap_y] wrap_y_from_b1: //SEG61 [61] phi (signed word) wrap_y::y#9 = (signed word) wrap_y::y#0 [phi:render_sine::@1->wrap_y#0] -- register_copy jsr wrap_y - //SEG62 [32] (byte) wrap_y::return#0 ? (byte) wrap_y::return#2 + //SEG62 [32] (byte) wrap_y::return#0 ← (byte) wrap_y::return#2 jmp b3 //SEG63 render_sine::@3 b3: - //SEG64 [33] (byte) render_sine::ypos#0 ? (byte) wrap_y::return#0 -- vbuxx=vbuaa + //SEG64 [33] (byte) render_sine::ypos#0 ← (byte) wrap_y::return#0 -- vbuxx=vbuaa tax - //SEG65 [34] (word) bitmap_plot::x#0 ? (word) render_sine::xpos#3 - //SEG66 [35] (byte) bitmap_plot::y#0 ? (byte) render_sine::ypos#0 + //SEG65 [34] (word) bitmap_plot::x#0 ← (word) render_sine::xpos#3 + //SEG66 [35] (byte) bitmap_plot::y#0 ← (byte) render_sine::ypos#0 //SEG67 [36] call bitmap_plot //SEG68 [54] phi from render_sine::@3 to bitmap_plot [phi:render_sine::@3->bitmap_plot] bitmap_plot_from_b3: @@ -6082,14 +6082,14 @@ render_sine: { jmp b4 //SEG71 render_sine::@4 b4: - //SEG72 [37] (word~) render_sine::$4 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 + //SEG72 [37] (word~) render_sine::$4 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 lda sin_idx asl sta _4 lda sin_idx+1 rol sta _4+1 - //SEG73 [38] (signed word*~) render_sine::$5 ? (const signed word*) sin2#0 + (word~) render_sine::$4 -- pwsz1=pwsc1_plus_vwuz1 + //SEG73 [38] (signed word*~) render_sine::$5 ← (const signed word*) sin2#0 + (word~) render_sine::$4 -- pwsz1=pwsc1_plus_vwuz1 clc lda _5 adc #sin2 sta _5+1 - //SEG74 [39] (signed word) render_sine::sin2_val#0 ? *((signed word*~) render_sine::$5) -- vwsz1=_deref_pwsz1 + //SEG74 [39] (signed word) render_sine::sin2_val#0 ← *((signed word*~) render_sine::$5) -- vwsz1=_deref_pwsz1 ldy #0 lda (sin2_val),y tax @@ -6105,7 +6105,7 @@ render_sine: { lda (sin2_val),y stx sin2_val sta sin2_val+1 - //SEG75 [40] (signed word) wrap_y::y#1 ? (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwsz1=vwsz1_plus_vbsc1 + //SEG75 [40] (signed word) wrap_y::y#1 ← (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwsz1=vwsz1_plus_vbsc1 lda #$a sta $fe ora #$7f @@ -6125,14 +6125,14 @@ render_sine: { wrap_y_from_b4: //SEG78 [61] phi (signed word) wrap_y::y#9 = (signed word) wrap_y::y#1 [phi:render_sine::@4->wrap_y#0] -- register_copy jsr wrap_y - //SEG79 [42] (byte) wrap_y::return#1 ? (byte) wrap_y::return#2 + //SEG79 [42] (byte) wrap_y::return#1 ← (byte) wrap_y::return#2 jmp b5 //SEG80 render_sine::@5 b5: - //SEG81 [43] (byte) render_sine::ypos2#0 ? (byte) wrap_y::return#1 -- vbuxx=vbuaa + //SEG81 [43] (byte) render_sine::ypos2#0 ← (byte) wrap_y::return#1 -- vbuxx=vbuaa tax - //SEG82 [44] (word) bitmap_plot::x#1 ? (word) render_sine::xpos#3 - //SEG83 [45] (byte) bitmap_plot::y#1 ? (byte) render_sine::ypos2#0 + //SEG82 [44] (word) bitmap_plot::x#1 ← (word) render_sine::xpos#3 + //SEG83 [45] (byte) bitmap_plot::y#1 ← (byte) render_sine::ypos2#0 //SEG84 [46] call bitmap_plot //SEG85 [54] phi from render_sine::@5 to bitmap_plot [phi:render_sine::@5->bitmap_plot] bitmap_plot_from_b5: @@ -6142,7 +6142,7 @@ render_sine: { jmp b6 //SEG88 render_sine::@6 b6: - //SEG89 [47] (word) render_sine::xpos#1 ? ++ (word) render_sine::xpos#3 -- vwuz1=_inc_vwuz1 + //SEG89 [47] (word) render_sine::xpos#1 ← ++ (word) render_sine::xpos#3 -- vwuz1=_inc_vwuz1 inc xpos bne !+ inc xpos+1 @@ -6164,7 +6164,7 @@ render_sine: { jmp b2 //SEG93 render_sine::@2 b2: - //SEG94 [50] (word) render_sine::sin_idx#1 ? ++ (word) render_sine::sin_idx#2 -- vwuz1=_inc_vwuz1 + //SEG94 [50] (word) render_sine::sin_idx#1 ← ++ (word) render_sine::sin_idx#2 -- vwuz1=_inc_vwuz1 inc sin_idx bne !+ inc sin_idx+1 @@ -6201,19 +6201,19 @@ bitmap_plot: { .label plotter = 6 .label x = 4 .label _3 = 6 - //SEG103 [55] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG103 [55] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_yhi,x sta _3+1 lda bitmap_plot_ylo,x sta _3 - //SEG104 [56] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 + //SEG104 [56] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 lda x and #<$fff8 sta _1 lda x+1 and #>$fff8 sta _1+1 - //SEG105 [57] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 + //SEG105 [57] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 lda plotter clc adc _1 @@ -6221,9 +6221,9 @@ bitmap_plot: { lda plotter+1 adc _1+1 sta plotter+1 - //SEG106 [58] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#2 -- vbuaa=_lo_vwuz1 + //SEG106 [58] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#2 -- vbuaa=_lo_vwuz1 lda x - //SEG107 [59] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa + //SEG107 [59] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa tay lda bitmap_plot_bit,y ldy #0 @@ -6269,7 +6269,7 @@ wrap_y: { jmp b5 //SEG119 wrap_y::@5 b5: - //SEG120 [66] (byte) wrap_y::return#2 ? ((byte)) (signed word) wrap_y::y#6 -- vbuaa=_byte_vwsz1 + //SEG120 [66] (byte) wrap_y::return#2 ← ((byte)) (signed word) wrap_y::y#6 -- vbuaa=_byte_vwsz1 lda y jmp breturn //SEG121 wrap_y::@return @@ -6278,7 +6278,7 @@ wrap_y: { rts //SEG123 wrap_y::@4 b4: - //SEG124 [68] (signed word) wrap_y::y#3 ? (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_plus_vwuc1 + //SEG124 [68] (signed word) wrap_y::y#3 ← (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_plus_vwuc1 clc lda y adc #<$c8 @@ -6289,7 +6289,7 @@ wrap_y: { jmp b3_from_b4 //SEG125 wrap_y::@2 b2: - //SEG126 [69] (signed word) wrap_y::y#2 ? (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_minus_vbuc1 + //SEG126 [69] (signed word) wrap_y::y#2 ← (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_minus_vbuc1 sec lda y sbc #$c8 @@ -6320,11 +6320,11 @@ sin16s_gen2: { //SEG129 [161] phi from sin16s_gen2 to div32u16u [phi:sin16s_gen2->div32u16u] div32u16u_from_sin16s_gen2: jsr div32u16u - //SEG130 [72] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG130 [72] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 jmp b2 //SEG131 sin16s_gen2::@2 b2: - //SEG132 [73] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 + //SEG132 [73] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 //SEG133 [74] phi from sin16s_gen2::@2 to sin16s_gen2::@1 [phi:sin16s_gen2::@2->sin16s_gen2::@1] b1_from_b2: //SEG134 [74] phi (word) sin16s_gen2::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen2::@2->sin16s_gen2::@1#0] -- vwuz1=vbuc1 @@ -6354,7 +6354,7 @@ sin16s_gen2: { jmp b1 //SEG141 sin16s_gen2::@1 b1: - //SEG142 [75] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 -- vduz1=vduz2 + //SEG142 [75] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -6365,24 +6365,24 @@ sin16s_gen2: { sta sin16s.x+3 //SEG143 [76] call sin16s jsr sin16s - //SEG144 [77] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG144 [77] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 jmp b3 //SEG145 sin16s_gen2::@3 b3: - //SEG146 [78] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 + //SEG146 [78] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 //SEG147 [79] call mul16s jsr mul16s - //SEG148 [80] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + //SEG148 [80] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 jmp b4 //SEG149 sin16s_gen2::@4 b4: - //SEG150 [81] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 - //SEG151 [82] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 + //SEG150 [81] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 + //SEG151 [82] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 lda _5+2 sta _6 lda _5+3 sta _6+1 - //SEG152 [83] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 + //SEG152 [83] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 clc lda _8 adc #offs sta _8+1 - //SEG153 [84] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 + //SEG153 [84] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 ldy #0 lda _8 sta (sintab),y iny lda _8+1 sta (sintab),y - //SEG154 [85] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG154 [85] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -6405,7 +6405,7 @@ sin16s_gen2: { bcc !+ inc sintab+1 !: - //SEG155 [86] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG155 [86] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -6419,7 +6419,7 @@ sin16s_gen2: { lda x+3 adc step+3 sta x+3 - //SEG156 [87] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 + //SEG156 [87] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -6449,7 +6449,7 @@ mul16s: { .label m = $c .label return = $c .label a = $17 - //SEG161 [90] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG161 [90] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -6464,23 +6464,23 @@ mul16s: { lda #>sin16s_gen2.ampl sta mul16u.b+1 jsr mul16u - //SEG166 [92] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG166 [92] (dword) mul16u::return#2 ← (dword) mul16u::res#2 jmp b4 //SEG167 mul16s::@4 b4: - //SEG168 [93] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + //SEG168 [93] (dword) mul16s::m#0 ← (dword) mul16u::return#2 //SEG169 [94] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b1_from_b4 jmp b3 //SEG170 mul16s::@3 b3: - //SEG171 [95] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG171 [95] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG172 [96] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG172 [96] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 lda _16 sec sbc #sin16s_gen2.ampl sta _16+1 - //SEG173 [97] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG173 [97] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -6503,7 +6503,7 @@ mul16s: { jmp b2 //SEG177 mul16s::@2 b2: - //SEG178 [99] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG178 [99] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 jmp breturn //SEG179 mul16s::@return breturn: @@ -6519,7 +6519,7 @@ mul16u: { .label res = $c .label return = $c .label b = 6 - //SEG182 [102] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG182 [102] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -6553,7 +6553,7 @@ mul16u: { rts //SEG191 mul16u::@2 b2: - //SEG192 [106] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG192 [106] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG193 [107] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 @@ -6562,7 +6562,7 @@ mul16u: { jmp b4 //SEG194 mul16u::@4 b4: - //SEG195 [108] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG195 [108] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -6583,11 +6583,11 @@ mul16u: { jmp b3 //SEG198 mul16u::@3 b3: - //SEG199 [110] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG199 [110] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG200 [111] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG200 [111] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -6638,7 +6638,7 @@ sin16s: { jmp b4 //SEG207 sin16s::@4 b4: - //SEG208 [113] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG208 [113] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG223 [119] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG224 [120] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG224 [120] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG225 [121] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG225 [121] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6741,17 +6741,17 @@ sin16s: { //SEG229 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG230 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG231 [123] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG231 [123] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 jmp b7 //SEG232 sin16s::@7 b7: - //SEG233 [124] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG233 [124] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG234 [125] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG235 [126] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG234 [125] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG235 [126] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6764,7 +6764,7 @@ sin16s: { //SEG239 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG240 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG241 [128] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG241 [128] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 @@ -6772,8 +6772,8 @@ sin16s: { jmp b8 //SEG242 sin16s::@8 b8: - //SEG243 [129] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG244 [130] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG243 [129] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG244 [130] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG245 [131] call mulu16_sel //SEG246 [152] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] mulu16_sel_from_b8: @@ -6786,12 +6786,12 @@ sin16s: { sta mulu16_sel.v2+1 //SEG249 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG250 [132] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG250 [132] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 jmp b9 //SEG251 sin16s::@9 b9: - //SEG252 [133] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG253 [134] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG252 [133] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG253 [134] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -6799,8 +6799,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG254 [135] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG255 [136] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG254 [135] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG255 [136] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6813,7 +6813,7 @@ sin16s: { //SEG259 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG260 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG261 [138] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG261 [138] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 @@ -6821,9 +6821,9 @@ sin16s: { jmp b10 //SEG262 sin16s::@10 b10: - //SEG263 [139] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG264 [140] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG265 [141] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG263 [139] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG264 [140] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG265 [141] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6836,19 +6836,19 @@ sin16s: { //SEG269 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG270 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG271 [143] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG271 [143] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 jmp b11 //SEG272 sin16s::@11 b11: - //SEG273 [144] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG274 [145] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG273 [144] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG274 [145] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG275 [146] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG275 [146] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -6863,7 +6863,7 @@ sin16s: { jmp b6 //SEG277 sin16s::@6 b6: - //SEG278 [148] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG278 [148] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -6887,7 +6887,7 @@ sin16s: { rts //SEG284 sin16s::@12 b12: - //SEG285 [151] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG285 [151] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 jmp b3_from_b12 } //SEG286 mulu16_sel @@ -6902,24 +6902,24 @@ mulu16_sel: { .label return = 6 .label return_1 = $19 .label return_10 = $19 - //SEG287 [153] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG287 [153] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG288 [154] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + //SEG288 [154] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 //SEG289 [155] call mul16u //SEG290 [101] phi from mulu16_sel to mul16u [phi:mulu16_sel->mul16u] mul16u_from_mulu16_sel: //SEG291 [101] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mulu16_sel->mul16u#0] -- register_copy //SEG292 [101] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mulu16_sel->mul16u#1] -- register_copy jsr mul16u - //SEG293 [156] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + //SEG293 [156] (dword) mul16u::return#3 ← (dword) mul16u::res#2 jmp b1 //SEG294 mulu16_sel::@1 b1: - //SEG295 [157] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 - //SEG296 [158] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG295 [157] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 + //SEG296 [158] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -6930,7 +6930,7 @@ mulu16_sel: { dex bne !- !e: - //SEG297 [159] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG297 [159] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -6962,16 +6962,16 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG305 [163] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG305 [163] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG306 div32u16u::@1 b1: - //SEG307 [164] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG307 [164] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG308 [165] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG308 [165] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG309 [166] call divr16u //SEG310 [171] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] divr16u_from_b1: @@ -6982,12 +6982,12 @@ div32u16u: { sta divr16u.dividend+1 //SEG312 [171] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG313 [167] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG313 [167] (word) divr16u::return#3 ← (word) divr16u::return#0 jmp b2 //SEG314 div32u16u::@2 b2: - //SEG315 [168] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG316 [169] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG315 [168] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG316 [169] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -7034,12 +7034,12 @@ divr16u: { jmp b1 //SEG330 divr16u::@1 b1: - //SEG331 [173] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG331 [173] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG332 [174] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG332 [174] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG333 [175] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG333 [175] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG334 [176] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -7047,7 +7047,7 @@ divr16u: { jmp b4 //SEG335 divr16u::@4 b4: - //SEG336 [177] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG336 [177] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -7058,10 +7058,10 @@ divr16u: { jmp b2 //SEG339 divr16u::@2 b2: - //SEG340 [179] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG340 [179] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG341 [180] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG341 [180] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG342 [181] if((word) divr16u::rem#6<(const word) SIN_SIZE#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -7076,12 +7076,12 @@ divr16u: { jmp b5 //SEG343 divr16u::@5 b5: - //SEG344 [182] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG344 [182] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG345 [183] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) SIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG345 [183] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) SIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #bitmap_clear::@1] b1_from_bitmap_clear: //SEG360 [191] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 @@ -7151,16 +7151,16 @@ bitmap_clear: { jmp b2 //SEG372 bitmap_clear::@2 b2: - //SEG373 [193] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG373 [193] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG374 [194] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG374 [194] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG375 [195] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG375 [195] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG376 [196] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 @@ -7168,7 +7168,7 @@ bitmap_clear: { jmp b3 //SEG377 bitmap_clear::@3 b3: - //SEG378 [197] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG378 [197] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG379 [198] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -7199,9 +7199,9 @@ bitmap_init: { jmp b1 //SEG389 bitmap_init::@1 b1: - //SEG390 [202] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG390 [202] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_bit,x - //SEG391 [203] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 + //SEG391 [203] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 lsr //SEG392 [204] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuaa_neq_0_then_la1 cmp #0 @@ -7213,7 +7213,7 @@ bitmap_init: { jmp b2 //SEG395 bitmap_init::@2 b2: - //SEG396 [206] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG396 [206] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG397 [207] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -7235,20 +7235,20 @@ bitmap_init: { jmp b3 //SEG404 bitmap_init::@3 b3: - //SEG405 [209] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG405 [209] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _3 - //SEG406 [210] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG406 [210] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG407 [211] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa + //SEG407 [211] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa ora _3 - //SEG408 [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG408 [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG409 [213] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG409 [213] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG410 [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG410 [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG411 [215] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG411 [215] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG412 [216] if((byte~) bitmap_init::$7!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 @@ -7257,7 +7257,7 @@ bitmap_init: { jmp b5 //SEG413 bitmap_init::@5 b5: - //SEG414 [217] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG414 [217] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -7272,7 +7272,7 @@ bitmap_init: { jmp b4 //SEG417 bitmap_init::@4 b4: - //SEG418 [219] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG418 [219] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG419 [220] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -7312,11 +7312,11 @@ fill: { jmp b1 //SEG431 fill::@1 b1: - //SEG432 [225] *((byte*) fill::addr#2) ? (const byte) WHITE#0 -- _deref_pbuz1=vbuc1 + //SEG432 [225] *((byte*) fill::addr#2) ← (const byte) WHITE#0 -- _deref_pbuz1=vbuc1 lda #WHITE ldy #0 sta (addr),y - //SEG433 [226] (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 + //SEG433 [226] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 inc addr bne !+ inc addr+1 @@ -8194,35 +8194,35 @@ main: { .const toD0181_return = (>(SCREEN&$3fff)<<2)|(>BITMAP)>>2&$f //SEG12 asm { sei } sei - //SEG13 [6] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG14 [7] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG14 [7] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG15 [8] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG15 [8] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 //SEG16 main::vicSelectGfxBank1 - //SEG17 [9] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG17 [9] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG18 [10] phi from main::vicSelectGfxBank1 to main::vicSelectGfxBank1_toDd001 [phi:main::vicSelectGfxBank1->main::vicSelectGfxBank1_toDd001] //SEG19 main::vicSelectGfxBank1_toDd001 //SEG20 main::vicSelectGfxBank1_@1 - //SEG21 [11] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG21 [11] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A //SEG22 main::@2 - //SEG23 [12] *((const byte*) D016#0) ? (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 + //SEG23 [12] *((const byte*) D016#0) ← (const byte) VIC_CSEL#0 -- _deref_pbuc1=vbuc2 lda #VIC_CSEL sta D016 //SEG24 [13] phi from main::@2 to main::toD0181 [phi:main::@2->main::toD0181] //SEG25 main::toD0181 //SEG26 main::@3 - //SEG27 [14] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG27 [14] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 //SEG28 [15] call fill @@ -8249,7 +8249,7 @@ main: { jsr render_sine //SEG45 main::@1 b1: - //SEG46 [24] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG46 [24] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BGCOL jmp b1 } @@ -8276,14 +8276,14 @@ render_sine: { //SEG53 [26] phi (word) render_sine::sin_idx#2 = (word) render_sine::sin_idx#1 [phi:render_sine::@2->render_sine::@1#1] -- register_copy //SEG54 render_sine::@1 b1: - //SEG55 [27] (word~) render_sine::$0 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 + //SEG55 [27] (word~) render_sine::$0 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 lda sin_idx asl sta _0 lda sin_idx+1 rol sta _0+1 - //SEG56 [28] (signed word*~) render_sine::$1 ? (const signed word[$200]) sin#0 + (word~) render_sine::$0 -- pwsz1=pwsc1_plus_vwuz1 + //SEG56 [28] (signed word*~) render_sine::$1 ← (const signed word[$200]) sin#0 + (word~) render_sine::$0 -- pwsz1=pwsc1_plus_vwuz1 clc lda _1 adc #sin sta _1+1 - //SEG57 [29] (signed word) render_sine::sin_val#0 ? *((signed word*~) render_sine::$1) -- vwsz1=_deref_pwsz1 + //SEG57 [29] (signed word) render_sine::sin_val#0 ← *((signed word*~) render_sine::$1) -- vwsz1=_deref_pwsz1 ldy #0 lda (sin_val),y tax @@ -8299,31 +8299,31 @@ render_sine: { lda (sin_val),y stx sin_val sta sin_val+1 - //SEG58 [30] (signed word) wrap_y::y#0 ? (signed word) render_sine::sin_val#0 + //SEG58 [30] (signed word) wrap_y::y#0 ← (signed word) render_sine::sin_val#0 //SEG59 [31] call wrap_y //SEG60 [61] phi from render_sine::@1 to wrap_y [phi:render_sine::@1->wrap_y] //SEG61 [61] phi (signed word) wrap_y::y#9 = (signed word) wrap_y::y#0 [phi:render_sine::@1->wrap_y#0] -- register_copy jsr wrap_y - //SEG62 [32] (byte) wrap_y::return#0 ? (byte) wrap_y::return#2 + //SEG62 [32] (byte) wrap_y::return#0 ← (byte) wrap_y::return#2 //SEG63 render_sine::@3 - //SEG64 [33] (byte) render_sine::ypos#0 ? (byte) wrap_y::return#0 -- vbuxx=vbuaa + //SEG64 [33] (byte) render_sine::ypos#0 ← (byte) wrap_y::return#0 -- vbuxx=vbuaa tax - //SEG65 [34] (word) bitmap_plot::x#0 ? (word) render_sine::xpos#3 - //SEG66 [35] (byte) bitmap_plot::y#0 ? (byte) render_sine::ypos#0 + //SEG65 [34] (word) bitmap_plot::x#0 ← (word) render_sine::xpos#3 + //SEG66 [35] (byte) bitmap_plot::y#0 ← (byte) render_sine::ypos#0 //SEG67 [36] call bitmap_plot //SEG68 [54] phi from render_sine::@3 to bitmap_plot [phi:render_sine::@3->bitmap_plot] //SEG69 [54] phi (word) bitmap_plot::x#2 = (word) bitmap_plot::x#0 [phi:render_sine::@3->bitmap_plot#0] -- register_copy //SEG70 [54] phi (byte) bitmap_plot::y#2 = (byte) bitmap_plot::y#0 [phi:render_sine::@3->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG71 render_sine::@4 - //SEG72 [37] (word~) render_sine::$4 ? (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 + //SEG72 [37] (word~) render_sine::$4 ← (word) render_sine::sin_idx#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 lda sin_idx asl sta _4 lda sin_idx+1 rol sta _4+1 - //SEG73 [38] (signed word*~) render_sine::$5 ? (const signed word*) sin2#0 + (word~) render_sine::$4 -- pwsz1=pwsc1_plus_vwuz1 + //SEG73 [38] (signed word*~) render_sine::$5 ← (const signed word*) sin2#0 + (word~) render_sine::$4 -- pwsz1=pwsc1_plus_vwuz1 clc lda _5 adc #sin2 sta _5+1 - //SEG74 [39] (signed word) render_sine::sin2_val#0 ? *((signed word*~) render_sine::$5) -- vwsz1=_deref_pwsz1 + //SEG74 [39] (signed word) render_sine::sin2_val#0 ← *((signed word*~) render_sine::$5) -- vwsz1=_deref_pwsz1 ldy #0 lda (sin2_val),y tax @@ -8339,7 +8339,7 @@ render_sine: { lda (sin2_val),y stx sin2_val sta sin2_val+1 - //SEG75 [40] (signed word) wrap_y::y#1 ? (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwsz1=vwsz1_plus_vbsc1 + //SEG75 [40] (signed word) wrap_y::y#1 ← (signed word) render_sine::sin2_val#0 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwsz1=vwsz1_plus_vbsc1 lda #$a sta $fe ora #$7f @@ -8358,19 +8358,19 @@ render_sine: { //SEG77 [61] phi from render_sine::@4 to wrap_y [phi:render_sine::@4->wrap_y] //SEG78 [61] phi (signed word) wrap_y::y#9 = (signed word) wrap_y::y#1 [phi:render_sine::@4->wrap_y#0] -- register_copy jsr wrap_y - //SEG79 [42] (byte) wrap_y::return#1 ? (byte) wrap_y::return#2 + //SEG79 [42] (byte) wrap_y::return#1 ← (byte) wrap_y::return#2 //SEG80 render_sine::@5 - //SEG81 [43] (byte) render_sine::ypos2#0 ? (byte) wrap_y::return#1 -- vbuxx=vbuaa + //SEG81 [43] (byte) render_sine::ypos2#0 ← (byte) wrap_y::return#1 -- vbuxx=vbuaa tax - //SEG82 [44] (word) bitmap_plot::x#1 ? (word) render_sine::xpos#3 - //SEG83 [45] (byte) bitmap_plot::y#1 ? (byte) render_sine::ypos2#0 + //SEG82 [44] (word) bitmap_plot::x#1 ← (word) render_sine::xpos#3 + //SEG83 [45] (byte) bitmap_plot::y#1 ← (byte) render_sine::ypos2#0 //SEG84 [46] call bitmap_plot //SEG85 [54] phi from render_sine::@5 to bitmap_plot [phi:render_sine::@5->bitmap_plot] //SEG86 [54] phi (word) bitmap_plot::x#2 = (word) bitmap_plot::x#1 [phi:render_sine::@5->bitmap_plot#0] -- register_copy //SEG87 [54] phi (byte) bitmap_plot::y#2 = (byte) bitmap_plot::y#1 [phi:render_sine::@5->bitmap_plot#1] -- register_copy jsr bitmap_plot //SEG88 render_sine::@6 - //SEG89 [47] (word) render_sine::xpos#1 ? ++ (word) render_sine::xpos#3 -- vwuz1=_inc_vwuz1 + //SEG89 [47] (word) render_sine::xpos#1 ← ++ (word) render_sine::xpos#3 -- vwuz1=_inc_vwuz1 inc xpos bne !+ inc xpos+1 @@ -8389,7 +8389,7 @@ render_sine: { sta xpos+1 //SEG93 render_sine::@2 b2: - //SEG94 [50] (word) render_sine::sin_idx#1 ? ++ (word) render_sine::sin_idx#2 -- vwuz1=_inc_vwuz1 + //SEG94 [50] (word) render_sine::sin_idx#1 ← ++ (word) render_sine::sin_idx#2 -- vwuz1=_inc_vwuz1 inc sin_idx bne !+ inc sin_idx+1 @@ -8423,19 +8423,19 @@ bitmap_plot: { .label plotter = 6 .label x = 4 .label _3 = 6 - //SEG103 [55] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx + //SEG103 [55] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#2) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#2) -- vwuz1=pbuc1_derefidx_vbuxx_word_pbuc2_derefidx_vbuxx lda bitmap_plot_yhi,x sta _3+1 lda bitmap_plot_ylo,x sta _3 - //SEG104 [56] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 + //SEG104 [56] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#2 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 lda x and #<$fff8 sta _1 lda x+1 and #>$fff8 sta _1+1 - //SEG105 [57] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 + //SEG105 [57] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 lda plotter clc adc _1 @@ -8443,9 +8443,9 @@ bitmap_plot: { lda plotter+1 adc _1+1 sta plotter+1 - //SEG106 [58] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#2 -- vbuaa=_lo_vwuz1 + //SEG106 [58] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#2 -- vbuaa=_lo_vwuz1 lda x - //SEG107 [59] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa + //SEG107 [59] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa tay lda bitmap_plot_bit,y ldy #0 @@ -8480,14 +8480,14 @@ wrap_y: { lda y+1 bmi b4 //SEG119 wrap_y::@5 - //SEG120 [66] (byte) wrap_y::return#2 ? ((byte)) (signed word) wrap_y::y#6 -- vbuaa=_byte_vwsz1 + //SEG120 [66] (byte) wrap_y::return#2 ← ((byte)) (signed word) wrap_y::y#6 -- vbuaa=_byte_vwsz1 lda y //SEG121 wrap_y::@return //SEG122 [67] return rts //SEG123 wrap_y::@4 b4: - //SEG124 [68] (signed word) wrap_y::y#3 ? (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_plus_vwuc1 + //SEG124 [68] (signed word) wrap_y::y#3 ← (signed word) wrap_y::y#6 + (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_plus_vwuc1 clc lda y adc #<$c8 @@ -8498,7 +8498,7 @@ wrap_y: { jmp b3 //SEG125 wrap_y::@2 b2: - //SEG126 [69] (signed word) wrap_y::y#2 ? (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_minus_vbuc1 + //SEG126 [69] (signed word) wrap_y::y#2 ← (signed word) wrap_y::y#4 - (byte/word/signed word/dword/signed dword) $c8 -- vwsz1=vwsz1_minus_vbuc1 sec lda y sbc #$c8 @@ -8528,9 +8528,9 @@ sin16s_gen2: { //SEG128 [71] call div32u16u //SEG129 [161] phi from sin16s_gen2 to div32u16u [phi:sin16s_gen2->div32u16u] jsr div32u16u - //SEG130 [72] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG130 [72] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 //SEG131 sin16s_gen2::@2 - //SEG132 [73] (dword) sin16s_gen2::step#0 ? (dword) div32u16u::return#2 + //SEG132 [73] (dword) sin16s_gen2::step#0 ← (dword) div32u16u::return#2 //SEG133 [74] phi from sin16s_gen2::@2 to sin16s_gen2::@1 [phi:sin16s_gen2::@2->sin16s_gen2::@1] //SEG134 [74] phi (word) sin16s_gen2::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen2::@2->sin16s_gen2::@1#0] -- vwuz1=vbuc1 lda #0 @@ -8554,7 +8554,7 @@ sin16s_gen2: { //SEG140 [74] phi (dword) sin16s_gen2::x#2 = (dword) sin16s_gen2::x#1 [phi:sin16s_gen2::@4->sin16s_gen2::@1#2] -- register_copy //SEG141 sin16s_gen2::@1 b1: - //SEG142 [75] (dword) sin16s::x#0 ? (dword) sin16s_gen2::x#2 -- vduz1=vduz2 + //SEG142 [75] (dword) sin16s::x#0 ← (dword) sin16s_gen2::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -8565,20 +8565,20 @@ sin16s_gen2: { sta sin16s.x+3 //SEG143 [76] call sin16s jsr sin16s - //SEG144 [77] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG144 [77] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 //SEG145 sin16s_gen2::@3 - //SEG146 [78] (signed word) mul16s::a#0 ? (signed word) sin16s::return#0 + //SEG146 [78] (signed word) mul16s::a#0 ← (signed word) sin16s::return#0 //SEG147 [79] call mul16s jsr mul16s - //SEG148 [80] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + //SEG148 [80] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 //SEG149 sin16s_gen2::@4 - //SEG150 [81] (signed dword~) sin16s_gen2::$5 ? (signed dword) mul16s::return#2 - //SEG151 [82] (word~) sin16s_gen2::$6 ? > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 + //SEG150 [81] (signed dword~) sin16s_gen2::$5 ← (signed dword) mul16s::return#2 + //SEG151 [82] (word~) sin16s_gen2::$6 ← > (signed dword~) sin16s_gen2::$5 -- vwuz1=_hi_vdsz2 lda _5+2 sta _6 lda _5+3 sta _6+1 - //SEG152 [83] (signed word~) sin16s_gen2::$8 ? (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 + //SEG152 [83] (signed word~) sin16s_gen2::$8 ← (const signed word) sin16s_gen2::offs#0 + (signed word)(word~) sin16s_gen2::$6 -- vwsz1=vwsc1_plus_vwsz1 clc lda _8 adc #offs sta _8+1 - //SEG153 [84] *((signed word*) sin16s_gen2::sintab#2) ? (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 + //SEG153 [84] *((signed word*) sin16s_gen2::sintab#2) ← (signed word~) sin16s_gen2::$8 -- _deref_pwsz1=vwsz2 ldy #0 lda _8 sta (sintab),y iny lda _8+1 sta (sintab),y - //SEG154 [85] (signed word*) sin16s_gen2::sintab#0 ? (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG154 [85] (signed word*) sin16s_gen2::sintab#0 ← (signed word*) sin16s_gen2::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -8601,7 +8601,7 @@ sin16s_gen2: { bcc !+ inc sintab+1 !: - //SEG155 [86] (dword) sin16s_gen2::x#1 ? (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG155 [86] (dword) sin16s_gen2::x#1 ← (dword) sin16s_gen2::x#2 + (dword) sin16s_gen2::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -8615,7 +8615,7 @@ sin16s_gen2: { lda x+3 adc step+3 sta x+3 - //SEG156 [87] (word) sin16s_gen2::i#1 ? ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 + //SEG156 [87] (word) sin16s_gen2::i#1 ← ++ (word) sin16s_gen2::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -8643,7 +8643,7 @@ mul16s: { .label m = $c .label return = $c .label a = $17 - //SEG161 [90] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG161 [90] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -8657,19 +8657,19 @@ mul16s: { lda #>sin16s_gen2.ampl sta mul16u.b+1 jsr mul16u - //SEG166 [92] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG166 [92] (dword) mul16u::return#2 ← (dword) mul16u::res#2 //SEG167 mul16s::@4 - //SEG168 [93] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + //SEG168 [93] (dword) mul16s::m#0 ← (dword) mul16u::return#2 //SEG169 [94] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b2 //SEG170 mul16s::@3 - //SEG171 [95] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG171 [95] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG172 [96] (word~) mul16s::$16 ? (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG172 [96] (word~) mul16s::$16 ← (word~) mul16s::$9 - ((word))(const signed word) sin16s_gen2::ampl#0 -- vwuz1=vwuz1_minus_vwuc1 lda _16 sec sbc #sin16s_gen2.ampl sta _16+1 - //SEG173 [97] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG173 [97] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -8687,7 +8687,7 @@ mul16s: { //SEG176 mul16s::@1 //SEG177 mul16s::@2 b2: - //SEG178 [99] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG178 [99] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 //SEG179 mul16s::@return //SEG180 [100] return rts @@ -8701,7 +8701,7 @@ mul16u: { .label res = $c .label return = $c .label b = 6 - //SEG182 [102] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG182 [102] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -8729,14 +8729,14 @@ mul16u: { rts //SEG191 mul16u::@2 b2: - //SEG192 [106] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG192 [106] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG193 [107] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG194 mul16u::@4 - //SEG195 [108] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG195 [108] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -8754,11 +8754,11 @@ mul16u: { //SEG197 [109] phi (dword) mul16u::res#6 = (dword) mul16u::res#2 [phi:mul16u::@2/mul16u::@4->mul16u::@3#0] -- register_copy //SEG198 mul16u::@3 b3: - //SEG199 [110] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG199 [110] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG200 [111] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG200 [111] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -8806,7 +8806,7 @@ sin16s: { bcc b4 !: //SEG207 sin16s::@4 - //SEG208 [113] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG208 [113] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc #sin16s::@2#0] -- register_copy //SEG221 sin16s::@2 b2: - //SEG222 [118] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 + //SEG222 [118] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 ldy #3 !: asl _4 @@ -8879,17 +8879,17 @@ sin16s: { rol _4+3 dey bne !- - //SEG223 [119] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG223 [119] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG224 [120] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG224 [120] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG225 [121] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG225 [121] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8901,15 +8901,15 @@ sin16s: { //SEG229 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG230 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG231 [123] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG231 [123] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 //SEG232 sin16s::@7 - //SEG233 [124] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG233 [124] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG234 [125] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG235 [126] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG234 [125] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG235 [126] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8921,14 +8921,14 @@ sin16s: { //SEG239 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG240 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG241 [128] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG241 [128] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 sta mulu16_sel.return_1+1 //SEG242 sin16s::@8 - //SEG243 [129] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG244 [130] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG243 [129] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG244 [130] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG245 [131] call mulu16_sel //SEG246 [152] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] //SEG247 [152] phi (byte) mulu16_sel::select#5 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:sin16s::@8->mulu16_sel#0] -- vbuxx=vbuc1 @@ -8940,10 +8940,10 @@ sin16s: { sta mulu16_sel.v2+1 //SEG249 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG250 [132] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG250 [132] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 //SEG251 sin16s::@9 - //SEG252 [133] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG253 [134] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG252 [133] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG253 [134] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -8951,8 +8951,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG254 [135] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG255 [136] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG254 [135] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG255 [136] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8964,15 +8964,15 @@ sin16s: { //SEG259 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG260 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG261 [138] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG261 [138] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 sta mulu16_sel.return_10+1 //SEG262 sin16s::@10 - //SEG263 [139] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG264 [140] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG265 [141] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG263 [139] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG264 [140] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG265 [141] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8984,17 +8984,17 @@ sin16s: { //SEG269 [152] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG270 [152] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG271 [143] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG271 [143] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 //SEG272 sin16s::@11 - //SEG273 [144] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG274 [145] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG273 [144] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG274 [145] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG275 [146] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG275 [146] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -9007,7 +9007,7 @@ sin16s: { cmp #0 beq b3 //SEG277 sin16s::@6 - //SEG278 [148] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG278 [148] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -9025,7 +9025,7 @@ sin16s: { //SEG283 [150] return rts //SEG284 sin16s::@12 - //SEG285 [151] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG285 [151] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 } //SEG286 mulu16_sel // Calculate val*val for two unsigned word values - the result is 16 selected bits of the 32-bit result. @@ -9039,21 +9039,21 @@ mulu16_sel: { .label return = 6 .label return_1 = $19 .label return_10 = $19 - //SEG287 [153] (word) mul16u::a#2 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG287 [153] (word) mul16u::a#2 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG288 [154] (word) mul16u::b#1 ? (word) mulu16_sel::v2#5 + //SEG288 [154] (word) mul16u::b#1 ← (word) mulu16_sel::v2#5 //SEG289 [155] call mul16u //SEG290 [101] phi from mulu16_sel to mul16u [phi:mulu16_sel->mul16u] //SEG291 [101] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mulu16_sel->mul16u#0] -- register_copy //SEG292 [101] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mulu16_sel->mul16u#1] -- register_copy jsr mul16u - //SEG293 [156] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + //SEG293 [156] (dword) mul16u::return#3 ← (dword) mul16u::res#2 //SEG294 mulu16_sel::@1 - //SEG295 [157] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#3 - //SEG296 [158] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG295 [157] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#3 + //SEG296 [158] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -9064,7 +9064,7 @@ mulu16_sel: { dex bne !- !e: - //SEG297 [159] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG297 [159] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -9092,14 +9092,14 @@ div32u16u: { sta divr16u.rem sta divr16u.rem+1 jsr divr16u - //SEG305 [163] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG305 [163] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG306 div32u16u::@1 - //SEG307 [164] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG307 [164] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG308 [165] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG308 [165] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG309 [166] call divr16u //SEG310 [171] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] //SEG311 [171] phi (word) divr16u::dividend#5 = <(const dword) PI2_u4f28#0 [phi:div32u16u::@1->divr16u#0] -- vwuz1=vwuc1 @@ -9109,10 +9109,10 @@ div32u16u: { sta divr16u.dividend+1 //SEG312 [171] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG313 [167] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG313 [167] (word) divr16u::return#3 ← (word) divr16u::return#0 //SEG314 div32u16u::@2 - //SEG315 [168] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG316 [169] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG315 [168] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG316 [169] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -9152,18 +9152,18 @@ divr16u: { //SEG329 [172] phi (word) divr16u::rem#5 = (word) divr16u::rem#11 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG330 divr16u::@1 b1: - //SEG331 [173] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG331 [173] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG332 [174] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG332 [174] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG333 [175] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG333 [175] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG334 [176] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG335 divr16u::@4 - //SEG336 [177] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG336 [177] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -9171,10 +9171,10 @@ divr16u: { //SEG338 [178] phi (word) divr16u::rem#6 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG339 divr16u::@2 b2: - //SEG340 [179] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG340 [179] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG341 [180] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG341 [180] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG342 [181] if((word) divr16u::rem#6<(const word) SIN_SIZE#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -9187,12 +9187,12 @@ divr16u: { bcc b3 !: //SEG343 divr16u::@5 - //SEG344 [182] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG344 [182] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG345 [183] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) SIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG345 [183] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) SIN_SIZE#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #divr16u::@3#1] -- register_copy //SEG349 divr16u::@3 b3: - //SEG350 [185] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG350 [185] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG351 [186] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG352 divr16u::@6 - //SEG353 [187] (word) rem16u#1 ? (word) divr16u::rem#11 + //SEG353 [187] (word) rem16u#1 ← (word) divr16u::rem#11 //SEG354 divr16u::@return //SEG355 [188] return rts @@ -9222,12 +9222,12 @@ bitmap_clear: { .label bitmap = 2 .label y = $16 .label _3 = 2 - //SEG357 [189] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG357 [189] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_ylo sta _3 lda bitmap_plot_yhi sta _3+1 - //SEG358 [190] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG358 [190] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG359 [191] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] //SEG360 [191] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 lda #0 @@ -9247,22 +9247,22 @@ bitmap_clear: { //SEG371 [192] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy //SEG372 bitmap_clear::@2 b2: - //SEG373 [193] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG373 [193] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (bitmap),y - //SEG374 [194] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG374 [194] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG375 [195] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG375 [195] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG376 [196] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 bne b2 //SEG377 bitmap_clear::@3 - //SEG378 [197] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG378 [197] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG379 [198] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -9287,9 +9287,9 @@ bitmap_init: { //SEG388 [201] phi (byte) bitmap_init::bits#3 = (byte) bitmap_init::bits#4 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy //SEG389 bitmap_init::@1 b1: - //SEG390 [202] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG390 [202] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_bit,x - //SEG391 [203] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 + //SEG391 [203] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 lsr //SEG392 [204] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuaa_neq_0_then_la1 cmp #0 @@ -9299,7 +9299,7 @@ bitmap_init: { lda #$80 //SEG395 bitmap_init::@2 b2: - //SEG396 [206] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG396 [206] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG397 [207] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -9317,27 +9317,27 @@ bitmap_init: { //SEG403 [208] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy //SEG404 bitmap_init::@3 b3: - //SEG405 [209] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG405 [209] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _3 - //SEG406 [210] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG406 [210] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG407 [211] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa + //SEG407 [211] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa ora _3 - //SEG408 [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG408 [212] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG409 [213] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG409 [213] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG410 [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG410 [214] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG411 [215] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG411 [215] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG412 [216] if((byte~) bitmap_init::$7!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 cmp #7 bne b4 //SEG413 bitmap_init::@5 - //SEG414 [217] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG414 [217] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -9349,7 +9349,7 @@ bitmap_init: { //SEG416 [218] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy //SEG417 bitmap_init::@4 b4: - //SEG418 [219] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG418 [219] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG419 [220] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -9378,11 +9378,11 @@ fill: { //SEG430 [224] phi (byte*) fill::addr#2 = (byte*) fill::addr#1 [phi:fill::@1->fill::@1#0] -- register_copy //SEG431 fill::@1 b1: - //SEG432 [225] *((byte*) fill::addr#2) ? (const byte) WHITE#0 -- _deref_pbuz1=vbuc1 + //SEG432 [225] *((byte*) fill::addr#2) ← (const byte) WHITE#0 -- _deref_pbuz1=vbuc1 lda #WHITE ldy #0 sta (addr),y - //SEG433 [226] (byte*) fill::addr#1 ? ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 + //SEG433 [226] (byte*) fill::addr#1 ← ++ (byte*) fill::addr#2 -- pbuz1=_inc_pbuz1 inc addr bne !+ inc addr+1 diff --git a/src/test/ref/keyboard-glitch.log b/src/test/ref/keyboard-glitch.log index 66f84a8ca..3f4a93948 100644 --- a/src/test/ref/keyboard-glitch.log +++ b/src/test/ref/keyboard-glitch.log @@ -1,205 +1,205 @@ Identified constant variable (byte*) SCREEN -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte) KEY_DEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_RETURN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_CRSR_RIGHT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_F7#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) KEY_F1#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_F3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) KEY_F5#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) KEY_CRSR_DOWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) KEY_3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) KEY_W#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) KEY_A#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) KEY_4#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) KEY_Z#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) KEY_S#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) KEY_E#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) KEY_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) KEY_5#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) KEY_R#0 ? (byte/signed byte/word/signed word/dword/signed dword) $11 - (byte) KEY_D#0 ? (byte/signed byte/word/signed word/dword/signed dword) $12 - (byte) KEY_6#0 ? (byte/signed byte/word/signed word/dword/signed dword) $13 - (byte) KEY_C#0 ? (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte) KEY_F#0 ? (byte/signed byte/word/signed word/dword/signed dword) $15 - (byte) KEY_T#0 ? (byte/signed byte/word/signed word/dword/signed dword) $16 - (byte) KEY_X#0 ? (byte/signed byte/word/signed word/dword/signed dword) $17 - (byte) KEY_7#0 ? (byte/signed byte/word/signed word/dword/signed dword) $18 - (byte) KEY_Y#0 ? (byte/signed byte/word/signed word/dword/signed dword) $19 - (byte) KEY_G#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1a - (byte) KEY_8#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1b - (byte) KEY_B#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1c - (byte) KEY_H#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1d - (byte) KEY_U#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1e - (byte) KEY_V#0 ? (byte/signed byte/word/signed word/dword/signed dword) $1f - (byte) KEY_9#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) KEY_I#0 ? (byte/signed byte/word/signed word/dword/signed dword) $21 - (byte) KEY_J#0 ? (byte/signed byte/word/signed word/dword/signed dword) $22 - (byte) KEY_0#0 ? (byte/signed byte/word/signed word/dword/signed dword) $23 - (byte) KEY_M#0 ? (byte/signed byte/word/signed word/dword/signed dword) $24 - (byte) KEY_K#0 ? (byte/signed byte/word/signed word/dword/signed dword) $25 - (byte) KEY_O#0 ? (byte/signed byte/word/signed word/dword/signed dword) $26 - (byte) KEY_N#0 ? (byte/signed byte/word/signed word/dword/signed dword) $27 - (byte) KEY_PLUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte) KEY_P#0 ? (byte/signed byte/word/signed word/dword/signed dword) $29 - (byte) KEY_L#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2a - (byte) KEY_MINUS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2b - (byte) KEY_DOT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2c - (byte) KEY_COLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2d - (byte) KEY_AT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2e - (byte) KEY_COMMA#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2f - (byte) KEY_POUND#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) KEY_ASTERISK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) KEY_SEMICOLON#0 ? (byte/signed byte/word/signed word/dword/signed dword) $32 - (byte) KEY_HOME#0 ? (byte/signed byte/word/signed word/dword/signed dword) $33 - (byte) KEY_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $34 - (byte) KEY_EQUALS#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) KEY_ARROW_UP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) KEY_SLASH#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte) KEY_1#0 ? (byte/signed byte/word/signed word/dword/signed dword) $38 - (byte) KEY_ARROW_LEFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) $39 - (byte) KEY_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3a - (byte) KEY_2#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3b - (byte) KEY_SPACE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3c - (byte) KEY_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3d - (byte) KEY_Q#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3e - (byte) KEY_RUNSTOP#0 ? (byte/signed byte/word/signed word/dword/signed dword) $3f - (byte[]) keyboard_char_keycodes#0 ? { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } - (byte[8]) keyboard_matrix_row_bitmask#0 ? { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } - (byte[8]) keyboard_matrix_col_bitmask#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } + (byte) KEY_DEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_RETURN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_CRSR_RIGHT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_F7#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) KEY_F1#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_F3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) KEY_F5#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) KEY_CRSR_DOWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) KEY_3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) KEY_W#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) KEY_A#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) KEY_4#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) KEY_Z#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) KEY_S#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) KEY_E#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) KEY_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) KEY_5#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) KEY_R#0 ← (byte/signed byte/word/signed word/dword/signed dword) $11 + (byte) KEY_D#0 ← (byte/signed byte/word/signed word/dword/signed dword) $12 + (byte) KEY_6#0 ← (byte/signed byte/word/signed word/dword/signed dword) $13 + (byte) KEY_C#0 ← (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte) KEY_F#0 ← (byte/signed byte/word/signed word/dword/signed dword) $15 + (byte) KEY_T#0 ← (byte/signed byte/word/signed word/dword/signed dword) $16 + (byte) KEY_X#0 ← (byte/signed byte/word/signed word/dword/signed dword) $17 + (byte) KEY_7#0 ← (byte/signed byte/word/signed word/dword/signed dword) $18 + (byte) KEY_Y#0 ← (byte/signed byte/word/signed word/dword/signed dword) $19 + (byte) KEY_G#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1a + (byte) KEY_8#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1b + (byte) KEY_B#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1c + (byte) KEY_H#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1d + (byte) KEY_U#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1e + (byte) KEY_V#0 ← (byte/signed byte/word/signed word/dword/signed dword) $1f + (byte) KEY_9#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) KEY_I#0 ← (byte/signed byte/word/signed word/dword/signed dword) $21 + (byte) KEY_J#0 ← (byte/signed byte/word/signed word/dword/signed dword) $22 + (byte) KEY_0#0 ← (byte/signed byte/word/signed word/dword/signed dword) $23 + (byte) KEY_M#0 ← (byte/signed byte/word/signed word/dword/signed dword) $24 + (byte) KEY_K#0 ← (byte/signed byte/word/signed word/dword/signed dword) $25 + (byte) KEY_O#0 ← (byte/signed byte/word/signed word/dword/signed dword) $26 + (byte) KEY_N#0 ← (byte/signed byte/word/signed word/dword/signed dword) $27 + (byte) KEY_PLUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte) KEY_P#0 ← (byte/signed byte/word/signed word/dword/signed dword) $29 + (byte) KEY_L#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2a + (byte) KEY_MINUS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2b + (byte) KEY_DOT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2c + (byte) KEY_COLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2d + (byte) KEY_AT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2e + (byte) KEY_COMMA#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2f + (byte) KEY_POUND#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) KEY_ASTERISK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) KEY_SEMICOLON#0 ← (byte/signed byte/word/signed word/dword/signed dword) $32 + (byte) KEY_HOME#0 ← (byte/signed byte/word/signed word/dword/signed dword) $33 + (byte) KEY_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $34 + (byte) KEY_EQUALS#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) KEY_ARROW_UP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) KEY_SLASH#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte) KEY_1#0 ← (byte/signed byte/word/signed word/dword/signed dword) $38 + (byte) KEY_ARROW_LEFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) $39 + (byte) KEY_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3a + (byte) KEY_2#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3b + (byte) KEY_SPACE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3c + (byte) KEY_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3d + (byte) KEY_Q#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3e + (byte) KEY_RUNSTOP#0 ← (byte/signed byte/word/signed word/dword/signed dword) $3f + (byte[]) keyboard_char_keycodes#0 ← { (byte) KEY_AT#0, (byte) KEY_A#0, (byte) KEY_B#0, (byte) KEY_C#0, (byte) KEY_D#0, (byte) KEY_E#0, (byte) KEY_F#0, (byte) KEY_G#0, (byte) KEY_H#0, (byte) KEY_I#0, (byte) KEY_J#0, (byte) KEY_K#0, (byte) KEY_L#0, (byte) KEY_M#0, (byte) KEY_N#0, (byte) KEY_O#0, (byte) KEY_P#0, (byte) KEY_Q#0, (byte) KEY_R#0, (byte) KEY_S#0, (byte) KEY_T#0, (byte) KEY_U#0, (byte) KEY_V#0, (byte) KEY_W#0, (byte) KEY_X#0, (byte) KEY_Y#0, (byte) KEY_Z#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_POUND#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ARROW_UP#0, (byte) KEY_ARROW_LEFT#0, (byte) KEY_SPACE#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_ASTERISK#0, (byte) KEY_PLUS#0, (byte) KEY_COMMA#0, (byte) KEY_MINUS#0, (byte) KEY_DOT#0, (byte) KEY_SLASH#0, (byte) KEY_0#0, (byte) KEY_1#0, (byte) KEY_2#0, (byte) KEY_3#0, (byte) KEY_4#0, (byte) KEY_5#0, (byte) KEY_6#0, (byte) KEY_7#0, (byte) KEY_8#0, (byte) KEY_9#0, (byte) KEY_COLON#0, (byte) KEY_SEMICOLON#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte) KEY_EQUALS#0, (byte/signed byte/word/signed word/dword/signed dword) $3f, (byte/signed byte/word/signed word/dword/signed dword) $3f } + (byte[8]) keyboard_matrix_row_bitmask#0 ← { (byte/word/signed word/dword/signed dword) $fe, (byte/word/signed word/dword/signed dword) $fd, (byte/word/signed word/dword/signed dword) $fb, (byte/word/signed word/dword/signed dword) $f7, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $bf, (byte/signed byte/word/signed word/dword/signed dword) $7f } + (byte[8]) keyboard_matrix_col_bitmask#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $10, (byte/signed byte/word/signed word/dword/signed dword) $20, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/word/signed word/dword/signed dword) $80 } to:@8 keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed - (byte) keyboard_matrix_read::rowid#1 ? phi( keyboard_key_pressed/(byte) keyboard_matrix_read::rowid#0 ) - *((byte*) CIA1_PORT_A#0) ? *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) - (byte~) keyboard_matrix_read::$0 ? ~ *((byte*) CIA1_PORT_B#0) - (byte) keyboard_matrix_read::row_pressed_bits#0 ? (byte~) keyboard_matrix_read::$0 - (byte) keyboard_matrix_read::return#0 ? (byte) keyboard_matrix_read::row_pressed_bits#0 + (byte) keyboard_matrix_read::rowid#1 ← phi( keyboard_key_pressed/(byte) keyboard_matrix_read::rowid#0 ) + *((byte*) CIA1_PORT_A#0) ← *((byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#1) + (byte~) keyboard_matrix_read::$0 ← ~ *((byte*) CIA1_PORT_B#0) + (byte) keyboard_matrix_read::row_pressed_bits#0 ← (byte~) keyboard_matrix_read::$0 + (byte) keyboard_matrix_read::return#0 ← (byte) keyboard_matrix_read::row_pressed_bits#0 to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read - (byte) keyboard_matrix_read::return#3 ? phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) - (byte) keyboard_matrix_read::return#1 ? (byte) keyboard_matrix_read::return#3 + (byte) keyboard_matrix_read::return#3 ← phi( keyboard_matrix_read/(byte) keyboard_matrix_read::return#0 ) + (byte) keyboard_matrix_read::return#1 ← (byte) keyboard_matrix_read::return#3 return to:@return keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@2 menu::@4 menu::@5 pressed::@2 - (byte) keyboard_key_pressed::key#4 ? phi( menu::@2/(byte) keyboard_key_pressed::key#0 menu::@4/(byte) keyboard_key_pressed::key#1 menu::@5/(byte) keyboard_key_pressed::key#2 pressed::@2/(byte) keyboard_key_pressed::key#3 ) - (byte~) keyboard_key_pressed::$0 ? (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) keyboard_key_pressed::colidx#0 ? (byte~) keyboard_key_pressed::$0 - (byte~) keyboard_key_pressed::$1 ? (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) keyboard_key_pressed::rowidx#0 ? (byte~) keyboard_key_pressed::$1 - (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 + (byte) keyboard_key_pressed::key#4 ← phi( menu::@2/(byte) keyboard_key_pressed::key#0 menu::@4/(byte) keyboard_key_pressed::key#1 menu::@5/(byte) keyboard_key_pressed::key#2 pressed::@2/(byte) keyboard_key_pressed::key#3 ) + (byte~) keyboard_key_pressed::$0 ← (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) keyboard_key_pressed::colidx#0 ← (byte~) keyboard_key_pressed::$0 + (byte~) keyboard_key_pressed::$1 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) keyboard_key_pressed::rowidx#0 ← (byte~) keyboard_key_pressed::$1 + (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 call keyboard_matrix_read - (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#1 + (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#1 to:keyboard_key_pressed::@2 keyboard_key_pressed::@2: scope:[keyboard_key_pressed] from keyboard_key_pressed - (byte) keyboard_key_pressed::colidx#1 ? phi( keyboard_key_pressed/(byte) keyboard_key_pressed::colidx#0 ) - (byte) keyboard_matrix_read::return#4 ? phi( keyboard_key_pressed/(byte) keyboard_matrix_read::return#2 ) - (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#4 - (byte~) keyboard_key_pressed::$3 ? (byte~) keyboard_key_pressed::$2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#1) - (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$3 + (byte) keyboard_key_pressed::colidx#1 ← phi( keyboard_key_pressed/(byte) keyboard_key_pressed::colidx#0 ) + (byte) keyboard_matrix_read::return#4 ← phi( keyboard_key_pressed/(byte) keyboard_matrix_read::return#2 ) + (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#4 + (byte~) keyboard_key_pressed::$3 ← (byte~) keyboard_key_pressed::$2 & *((byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#1) + (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$3 to:keyboard_key_pressed::@return keyboard_key_pressed::@return: scope:[keyboard_key_pressed] from keyboard_key_pressed::@2 - (byte) keyboard_key_pressed::return#6 ? phi( keyboard_key_pressed::@2/(byte) keyboard_key_pressed::return#0 ) - (byte) keyboard_key_pressed::return#1 ? (byte) keyboard_key_pressed::return#6 + (byte) keyboard_key_pressed::return#6 ← phi( keyboard_key_pressed::@2/(byte) keyboard_key_pressed::return#0 ) + (byte) keyboard_key_pressed::return#1 ← (byte) keyboard_key_pressed::return#6 return to:@return @8: scope:[] from @4 - (byte[8]) keyboard_events#0 ? { fill( 8, 0) } - (byte) keyboard_events_size#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) keyboard_modifiers#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) KEY_MODIFIER_LSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) KEY_MODIFIER_RSHIFT#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) KEY_MODIFIER_CTRL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) KEY_MODIFIER_COMMODORE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte~) $0 ? (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 - (byte) KEY_MODIFIER_SHIFT#0 ? (byte~) $0 - (byte[8]) keyboard_scan_values#0 ? { fill( 8, 0) } + (byte[8]) keyboard_events#0 ← { fill( 8, 0) } + (byte) keyboard_events_size#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) keyboard_modifiers#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) KEY_MODIFIER_LSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) KEY_MODIFIER_RSHIFT#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) KEY_MODIFIER_CTRL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) KEY_MODIFIER_COMMODORE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte~) $0 ← (byte) KEY_MODIFIER_LSHIFT#0 | (byte) KEY_MODIFIER_RSHIFT#0 + (byte) KEY_MODIFIER_SHIFT#0 ← (byte~) $0 + (byte[8]) keyboard_scan_values#0 ← { fill( 8, 0) } to:@12 main: scope:[main] from @14 - *((byte*) BORDERCOL#0) ? (byte) GREEN#0 + *((byte*) BORDERCOL#0) ← (byte) GREEN#0 to:main::@1 main::@1: scope:[main] from main main::@7 if(true) goto main::@2 @@ -213,7 +213,7 @@ main::@return: scope:[main] from main::@1 return to:@return @12: scope:[] from @8 - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 to:@14 menu: scope:[menu] from main::@2 to:menu::@1 @@ -221,27 +221,27 @@ menu::@1: scope:[menu] from menu menu::@6 if(true) goto menu::@2 to:menu::@return menu::@2: scope:[menu] from menu::@1 - (byte) keyboard_key_pressed::key#0 ? (byte) KEY_C#0 + (byte) keyboard_key_pressed::key#0 ← (byte) KEY_C#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#1 to:menu::@16 menu::@16: scope:[menu] from menu::@2 - (byte) keyboard_key_pressed::return#7 ? phi( menu::@2/(byte) keyboard_key_pressed::return#2 ) - (byte~) menu::$0 ? (byte) keyboard_key_pressed::return#7 - (bool~) menu::$1 ? (byte~) menu::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$2 ? ! (bool~) menu::$1 + (byte) keyboard_key_pressed::return#7 ← phi( menu::@2/(byte) keyboard_key_pressed::return#2 ) + (byte~) menu::$0 ← (byte) keyboard_key_pressed::return#7 + (bool~) menu::$1 ← (byte~) menu::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$2 ← ! (bool~) menu::$1 if((bool~) menu::$2) goto menu::@4 to:menu::@9 menu::@4: scope:[menu] from menu::@16 - (byte) keyboard_key_pressed::key#1 ? (byte) KEY_I#0 + (byte) keyboard_key_pressed::key#1 ← (byte) KEY_I#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#3 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#1 to:menu::@17 menu::@17: scope:[menu] from menu::@4 - (byte) keyboard_key_pressed::return#8 ? phi( menu::@4/(byte) keyboard_key_pressed::return#3 ) - (byte~) menu::$4 ? (byte) keyboard_key_pressed::return#8 - (bool~) menu::$5 ? (byte~) menu::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$6 ? ! (bool~) menu::$5 + (byte) keyboard_key_pressed::return#8 ← phi( menu::@4/(byte) keyboard_key_pressed::return#3 ) + (byte~) menu::$4 ← (byte) keyboard_key_pressed::return#8 + (bool~) menu::$5 ← (byte~) menu::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$6 ← ! (bool~) menu::$5 if((bool~) menu::$6) goto menu::@5 to:menu::@11 menu::@9: scope:[menu] from menu::@16 @@ -253,44 +253,44 @@ menu::@return: scope:[menu] from menu::@1 menu::@11 menu::@13 menu::@18 return to:@return menu::@5: scope:[menu] from menu::@17 - (byte) keyboard_key_pressed::key#2 ? (byte) KEY_E#0 + (byte) keyboard_key_pressed::key#2 ← (byte) KEY_E#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#4 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#1 to:menu::@19 menu::@19: scope:[menu] from menu::@5 - (byte) keyboard_key_pressed::return#9 ? phi( menu::@5/(byte) keyboard_key_pressed::return#4 ) - (byte~) menu::$7 ? (byte) keyboard_key_pressed::return#9 - (bool~) menu::$8 ? (byte~) menu::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) menu::$9 ? ! (bool~) menu::$8 + (byte) keyboard_key_pressed::return#9 ← phi( menu::@5/(byte) keyboard_key_pressed::return#4 ) + (byte~) menu::$7 ← (byte) keyboard_key_pressed::return#9 + (bool~) menu::$8 ← (byte~) menu::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) menu::$9 ← ! (bool~) menu::$8 if((bool~) menu::$9) goto menu::@6 to:menu::@13 menu::@11: scope:[menu] from menu::@17 - *((byte*) BORDERCOL#0) ? (byte) RED#0 + *((byte*) BORDERCOL#0) ← (byte) RED#0 asm { sei } to:menu::@return menu::@6: scope:[menu] from menu::@19 - *((byte*) SCREEN#0) ? ++ *((byte*) SCREEN#0) + *((byte*) SCREEN#0) ← ++ *((byte*) SCREEN#0) to:menu::@1 menu::@13: scope:[menu] from menu::@19 - *((byte*) BORDERCOL#0) ? (byte) GREEN#0 + *((byte*) BORDERCOL#0) ← (byte) GREEN#0 asm { cli } to:menu::@return pressed: scope:[pressed] from menu::@9 - *((byte*) BGCOL#0) ? ++ *((byte*) BGCOL#0) + *((byte*) BGCOL#0) ← ++ *((byte*) BGCOL#0) to:pressed::@1 pressed::@1: scope:[pressed] from pressed pressed::@4 if(true) goto pressed::@2 to:pressed::@return pressed::@2: scope:[pressed] from pressed::@1 - (byte) keyboard_key_pressed::key#3 ? (byte) KEY_SPACE#0 + (byte) keyboard_key_pressed::key#3 ← (byte) KEY_SPACE#0 call keyboard_key_pressed - (byte) keyboard_key_pressed::return#5 ? (byte) keyboard_key_pressed::return#1 + (byte) keyboard_key_pressed::return#5 ← (byte) keyboard_key_pressed::return#1 to:pressed::@10 pressed::@10: scope:[pressed] from pressed::@2 - (byte) keyboard_key_pressed::return#10 ? phi( pressed::@2/(byte) keyboard_key_pressed::return#5 ) - (byte~) pressed::$0 ? (byte) keyboard_key_pressed::return#10 - (bool~) pressed::$1 ? (byte~) pressed::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) pressed::$2 ? ! (bool~) pressed::$1 + (byte) keyboard_key_pressed::return#10 ← phi( pressed::@2/(byte) keyboard_key_pressed::return#5 ) + (byte~) pressed::$0 ← (byte) keyboard_key_pressed::return#10 + (bool~) pressed::$1 ← (byte~) pressed::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) pressed::$2 ← ! (bool~) pressed::$1 if((bool~) pressed::$2) goto pressed::@4 to:pressed::@return pressed::@4: scope:[pressed] from pressed::@10 @@ -713,10 +713,10 @@ Culled Empty Block (label) menu::@18 Culled Empty Block (label) pressed::@4 Culled Empty Block (label) @15 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [191] (bool~) menu::$2 ? (byte~) menu::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [190] (bool~) menu::$1 ? (byte~) menu::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [199] (bool~) menu::$6 ? (byte~) menu::$4 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [198] (bool~) menu::$5 ? (byte~) menu::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [209] (bool~) menu::$9 ? (byte~) menu::$7 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [208] (bool~) menu::$8 ? (byte~) menu::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [224] (bool~) pressed::$2 ? (byte~) pressed::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [223] (bool~) pressed::$1 ? (byte~) pressed::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [191] (bool~) menu::$2 ← (byte~) menu::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [190] (bool~) menu::$1 ← (byte~) menu::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [199] (bool~) menu::$6 ← (byte~) menu::$4 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [198] (bool~) menu::$5 ← (byte~) menu::$4 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [209] (bool~) menu::$9 ← (byte~) menu::$7 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [208] (bool~) menu::$8 ← (byte~) menu::$7 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [224] (bool~) pressed::$2 ← (byte~) pressed::$0 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [223] (bool~) pressed::$1 ← (byte~) pressed::$0 != (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte) keyboard_matrix_read::return#0 = (byte) keyboard_matrix_read::row_pressed_bits#0 (byte~) keyboard_matrix_read::$0 (byte) keyboard_matrix_read::return#3 (byte) keyboard_matrix_read::return#1 Alias (byte) keyboard_key_pressed::colidx#0 = (byte~) keyboard_key_pressed::$0 (byte) keyboard_key_pressed::colidx#1 @@ -978,7 +978,7 @@ FINAL CONTROL FLOW GRAPH @end: scope:[] from @1 [3] phi() main: scope:[main] from @1 - [4] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 + [4] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 to:main::@1 main::@1: scope:[main] from main main::@1 [5] phi() @@ -990,10 +990,10 @@ menu: scope:[menu] from main::@1 menu::@1: scope:[menu] from menu menu::@4 [8] phi() [9] call keyboard_key_pressed - [10] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 + [10] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 to:menu::@8 menu::@8: scope:[menu] from menu::@1 - [11] (byte~) menu::$0 ? (byte) keyboard_key_pressed::return#2 + [11] (byte~) menu::$0 ← (byte) keyboard_key_pressed::return#2 [12] if((byte~) menu::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@2 to:menu::@5 menu::@5: scope:[menu] from menu::@8 @@ -1006,64 +1006,64 @@ menu::@return: scope:[menu] from menu::@5 menu::@6 menu::@7 menu::@2: scope:[menu] from menu::@8 [16] phi() [17] call keyboard_key_pressed - [18] (byte) keyboard_key_pressed::return#3 ? (byte) keyboard_key_pressed::return#0 + [18] (byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#0 to:menu::@9 menu::@9: scope:[menu] from menu::@2 - [19] (byte~) menu::$4 ? (byte) keyboard_key_pressed::return#3 + [19] (byte~) menu::$4 ← (byte) keyboard_key_pressed::return#3 [20] if((byte~) menu::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@3 to:menu::@6 menu::@6: scope:[menu] from menu::@9 - [21] *((const byte*) BORDERCOL#0) ? (const byte) RED#0 + [21] *((const byte*) BORDERCOL#0) ← (const byte) RED#0 asm { sei } to:menu::@return menu::@3: scope:[menu] from menu::@9 [23] phi() [24] call keyboard_key_pressed - [25] (byte) keyboard_key_pressed::return#4 ? (byte) keyboard_key_pressed::return#0 + [25] (byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#0 to:menu::@10 menu::@10: scope:[menu] from menu::@3 - [26] (byte~) menu::$7 ? (byte) keyboard_key_pressed::return#4 + [26] (byte~) menu::$7 ← (byte) keyboard_key_pressed::return#4 [27] if((byte~) menu::$7==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 to:menu::@7 menu::@7: scope:[menu] from menu::@10 - [28] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 + [28] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 asm { cli } to:menu::@return menu::@4: scope:[menu] from menu::@10 - [30] *((const byte*) SCREEN#0) ? ++ *((const byte*) SCREEN#0) + [30] *((const byte*) SCREEN#0) ← ++ *((const byte*) SCREEN#0) to:menu::@1 keyboard_key_pressed: scope:[keyboard_key_pressed] from menu::@1 menu::@2 menu::@3 pressed::@1 - [31] (byte) keyboard_key_pressed::key#4 ? phi( menu::@1/(const byte) KEY_C#0 menu::@2/(const byte) KEY_I#0 menu::@3/(const byte) KEY_E#0 pressed::@1/(const byte) KEY_SPACE#0 ) - [32] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [33] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 - [34] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 + [31] (byte) keyboard_key_pressed::key#4 ← phi( menu::@1/(const byte) KEY_C#0 menu::@2/(const byte) KEY_I#0 menu::@3/(const byte) KEY_E#0 pressed::@1/(const byte) KEY_SPACE#0 ) + [32] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [33] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 + [34] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 [35] call keyboard_matrix_read - [36] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + [36] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 to:keyboard_key_pressed::@1 keyboard_key_pressed::@1: scope:[keyboard_key_pressed] from keyboard_key_pressed - [37] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 - [38] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) + [37] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 + [38] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) to:keyboard_key_pressed::@return keyboard_key_pressed::@return: scope:[keyboard_key_pressed] from keyboard_key_pressed::@1 [39] return to:@return keyboard_matrix_read: scope:[keyboard_matrix_read] from keyboard_key_pressed - [40] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) - [41] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) + [40] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) + [41] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) to:keyboard_matrix_read::@return keyboard_matrix_read::@return: scope:[keyboard_matrix_read] from keyboard_matrix_read [42] return to:@return pressed: scope:[pressed] from menu::@5 - [43] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) + [43] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) to:pressed::@1 pressed::@1: scope:[pressed] from pressed pressed::@2 [44] phi() [45] call keyboard_key_pressed - [46] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 + [46] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 to:pressed::@2 pressed::@2: scope:[pressed] from pressed::@1 - [47] (byte~) pressed::$0 ? (byte) keyboard_key_pressed::return#10 + [47] (byte~) pressed::$0 ← (byte) keyboard_key_pressed::return#10 [48] if((byte~) pressed::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto pressed::@1 to:pressed::@return pressed::@return: scope:[pressed] from pressed::@2 @@ -1352,7 +1352,7 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BORDERCOL //SEG11 [5] phi from main main::@1 to main::@1 [phi:main/main::@1->main::@1] @@ -1385,13 +1385,13 @@ menu: { lda #KEY_C sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG21 [10] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG21 [10] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_2 jmp b8 //SEG22 menu::@8 b8: - //SEG23 [11] (byte~) menu::$0 ? (byte) keyboard_key_pressed::return#2 -- vbuz1=vbuz2 + //SEG23 [11] (byte~) menu::$0 ← (byte) keyboard_key_pressed::return#2 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_2 sta _0 //SEG24 [12] if((byte~) menu::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@2 -- vbuz1_eq_0_then_la1 @@ -1422,13 +1422,13 @@ menu: { lda #KEY_I sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG35 [18] (byte) keyboard_key_pressed::return#3 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG35 [18] (byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_3 jmp b9 //SEG36 menu::@9 b9: - //SEG37 [19] (byte~) menu::$4 ? (byte) keyboard_key_pressed::return#3 -- vbuz1=vbuz2 + //SEG37 [19] (byte~) menu::$4 ← (byte) keyboard_key_pressed::return#3 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_3 sta _4 //SEG38 [20] if((byte~) menu::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@3 -- vbuz1_eq_0_then_la1 @@ -1438,7 +1438,7 @@ menu: { jmp b6 //SEG39 menu::@6 b6: - //SEG40 [21] *((const byte*) BORDERCOL#0) ? (const byte) RED#0 -- _deref_pbuc1=vbuc2 + //SEG40 [21] *((const byte*) BORDERCOL#0) ← (const byte) RED#0 -- _deref_pbuc1=vbuc2 lda #RED sta BORDERCOL //SEG41 asm { sei } @@ -1456,13 +1456,13 @@ menu: { lda #KEY_E sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG47 [25] (byte) keyboard_key_pressed::return#4 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG47 [25] (byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_4 jmp b10 //SEG48 menu::@10 b10: - //SEG49 [26] (byte~) menu::$7 ? (byte) keyboard_key_pressed::return#4 -- vbuz1=vbuz2 + //SEG49 [26] (byte~) menu::$7 ← (byte) keyboard_key_pressed::return#4 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_4 sta _7 //SEG50 [27] if((byte~) menu::$7==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 -- vbuz1_eq_0_then_la1 @@ -1472,7 +1472,7 @@ menu: { jmp b7 //SEG51 menu::@7 b7: - //SEG52 [28] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG52 [28] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BORDERCOL //SEG53 asm { cli } @@ -1480,7 +1480,7 @@ menu: { jmp breturn //SEG54 menu::@4 b4: - //SEG55 [30] *((const byte*) SCREEN#0) ? ++ *((const byte*) SCREEN#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG55 [30] *((const byte*) SCREEN#0) ← ++ *((const byte*) SCREEN#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc SCREEN jmp b1_from_b4 } @@ -1500,31 +1500,31 @@ keyboard_key_pressed: { .label return_4 = 7 .label key = 2 .label return_10 = $10 - //SEG57 [32] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG57 [32] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and key sta colidx - //SEG58 [33] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 + //SEG58 [33] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuz1=vbuz2_ror_3 lda key lsr lsr lsr sta rowidx - //SEG59 [34] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 -- vbuz1=vbuz2 + //SEG59 [34] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuz1=vbuz2 lda rowidx sta keyboard_matrix_read.rowid //SEG60 [35] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG61 [36] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 + //SEG61 [36] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 -- vbuz1=vbuz2 lda keyboard_matrix_read.return sta keyboard_matrix_read.return_2 jmp b1 //SEG62 keyboard_key_pressed::@1 b1: - //SEG63 [37] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 + //SEG63 [37] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 -- vbuz1=vbuz2 lda keyboard_matrix_read.return_2 sta _2 - //SEG64 [38] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 + //SEG64 [38] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuz1=vbuz2_band_pbuc1_derefidx_vbuz3 lda _2 ldy colidx and keyboard_matrix_col_bitmask,y @@ -1546,11 +1546,11 @@ keyboard_matrix_read: { .label return = $f .label rowid = $b .label return_2 = $c - //SEG68 [40] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 + //SEG68 [40] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuz1 ldy rowid lda keyboard_matrix_row_bitmask,y sta CIA1_PORT_A - //SEG69 [41] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 + //SEG69 [41] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuz1=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff sta return @@ -1563,7 +1563,7 @@ keyboard_matrix_read: { //SEG72 pressed pressed: { .label _0 = $11 - //SEG73 [43] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG73 [43] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BGCOL //SEG74 [44] phi from pressed pressed::@2 to pressed::@1 [phi:pressed/pressed::@2->pressed::@1] b1_from_pressed: @@ -1578,13 +1578,13 @@ pressed: { lda #KEY_SPACE sta keyboard_key_pressed.key jsr keyboard_key_pressed - //SEG79 [46] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 + //SEG79 [46] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 -- vbuz1=vbuz2 lda keyboard_key_pressed.return sta keyboard_key_pressed.return_10 jmp b2 //SEG80 pressed::@2 b2: - //SEG81 [47] (byte~) pressed::$0 ? (byte) keyboard_key_pressed::return#10 -- vbuz1=vbuz2 + //SEG81 [47] (byte~) pressed::$0 ← (byte) keyboard_key_pressed::return#10 -- vbuz1=vbuz2 lda keyboard_key_pressed.return_10 sta _0 //SEG82 [48] if((byte~) pressed::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto pressed::@1 -- vbuz1_eq_0_then_la1 @@ -1603,19 +1603,19 @@ pressed: { keyboard_matrix_col_bitmask: .byte 1, 2, 4, 8, $10, $20, $40, $80 REGISTER UPLIFT POTENTIAL REGISTERS -Statement [4] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [21] *((const byte*) BORDERCOL#0) ? (const byte) RED#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a -Statement [28] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a -Statement [33] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:6::keyboard_key_pressed:9 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:17 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:24 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a +Statement [4] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [21] *((const byte*) BORDERCOL#0) ← (const byte) RED#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a +Statement [28] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a +Statement [33] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:6::keyboard_key_pressed:9 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:17 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:24 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ keyboard_key_pressed::colidx#0 ] -Statement [40] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a -Statement [41] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a -Statement [4] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [21] *((const byte*) BORDERCOL#0) ? (const byte) RED#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a -Statement [28] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a -Statement [33] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:6::keyboard_key_pressed:9 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:17 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:24 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a -Statement [40] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a -Statement [41] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [40] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a +Statement [41] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a +Statement [4] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [21] *((const byte*) BORDERCOL#0) ← (const byte) RED#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a +Statement [28] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 [ ] ( main:2::menu:6 [ ] ) always clobbers reg byte a +Statement [33] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ( main:2::menu:6::keyboard_key_pressed:9 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:17 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::keyboard_key_pressed:24 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45 [ keyboard_key_pressed::colidx#0 keyboard_key_pressed::rowidx#0 ] ) always clobbers reg byte a +Statement [40] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) [ ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 ] ) always clobbers reg byte a +Statement [41] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) [ keyboard_matrix_read::return#0 ] ( main:2::menu:6::keyboard_key_pressed:9::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:17::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::keyboard_key_pressed:24::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] main:2::menu:6::pressed:14::keyboard_key_pressed:45::keyboard_matrix_read:35 [ keyboard_key_pressed::colidx#0 keyboard_matrix_read::return#0 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ keyboard_key_pressed::key#4 ] : zp ZP_BYTE:2 , reg byte a , reg byte x , reg byte y , Potential registers zp ZP_BYTE:3 [ keyboard_key_pressed::return#2 ] : zp ZP_BYTE:3 , reg byte a , reg byte x , reg byte y , Potential registers zp ZP_BYTE:4 [ menu::$0 ] : zp ZP_BYTE:4 , reg byte a , reg byte x , reg byte y , @@ -1702,7 +1702,7 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BORDERCOL //SEG11 [5] phi from main main::@1 to main::@1 [phi:main/main::@1->main::@1] @@ -1731,11 +1731,11 @@ menu: { //SEG20 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_C#0 [phi:menu::@1->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_C jsr keyboard_key_pressed - //SEG21 [10] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 + //SEG21 [10] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 jmp b8 //SEG22 menu::@8 b8: - //SEG23 [11] (byte~) menu::$0 ? (byte) keyboard_key_pressed::return#2 + //SEG23 [11] (byte~) menu::$0 ← (byte) keyboard_key_pressed::return#2 //SEG24 [12] if((byte~) menu::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2_from_b8 @@ -1762,18 +1762,18 @@ menu: { //SEG34 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_I#0 [phi:menu::@2->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_I jsr keyboard_key_pressed - //SEG35 [18] (byte) keyboard_key_pressed::return#3 ? (byte) keyboard_key_pressed::return#0 + //SEG35 [18] (byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#0 jmp b9 //SEG36 menu::@9 b9: - //SEG37 [19] (byte~) menu::$4 ? (byte) keyboard_key_pressed::return#3 + //SEG37 [19] (byte~) menu::$4 ← (byte) keyboard_key_pressed::return#3 //SEG38 [20] if((byte~) menu::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3_from_b9 jmp b6 //SEG39 menu::@6 b6: - //SEG40 [21] *((const byte*) BORDERCOL#0) ? (const byte) RED#0 -- _deref_pbuc1=vbuc2 + //SEG40 [21] *((const byte*) BORDERCOL#0) ← (const byte) RED#0 -- _deref_pbuc1=vbuc2 lda #RED sta BORDERCOL //SEG41 asm { sei } @@ -1790,18 +1790,18 @@ menu: { //SEG46 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_E#0 [phi:menu::@3->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_E jsr keyboard_key_pressed - //SEG47 [25] (byte) keyboard_key_pressed::return#4 ? (byte) keyboard_key_pressed::return#0 + //SEG47 [25] (byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#0 jmp b10 //SEG48 menu::@10 b10: - //SEG49 [26] (byte~) menu::$7 ? (byte) keyboard_key_pressed::return#4 + //SEG49 [26] (byte~) menu::$7 ← (byte) keyboard_key_pressed::return#4 //SEG50 [27] if((byte~) menu::$7==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 -- vbuaa_eq_0_then_la1 cmp #0 beq b4 jmp b7 //SEG51 menu::@7 b7: - //SEG52 [28] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG52 [28] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BORDERCOL //SEG53 asm { cli } @@ -1809,7 +1809,7 @@ menu: { jmp breturn //SEG54 menu::@4 b4: - //SEG55 [30] *((const byte*) SCREEN#0) ? ++ *((const byte*) SCREEN#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG55 [30] *((const byte*) SCREEN#0) ← ++ *((const byte*) SCREEN#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc SCREEN jmp b1_from_b4 } @@ -1820,25 +1820,25 @@ menu: { // Returns zero if the key is not pressed and a non-zero value if the key is currently pressed // keyboard_key_pressed(byte register(X) key) keyboard_key_pressed: { - //SEG57 [32] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuyy=vbuxx_band_vbuc1 + //SEG57 [32] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuyy=vbuxx_band_vbuc1 txa and #7 tay - //SEG58 [33] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_ror_3 + //SEG58 [33] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_ror_3 txa lsr lsr lsr - //SEG59 [34] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 -- vbuxx=vbuaa + //SEG59 [34] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuxx=vbuaa tax //SEG60 [35] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG61 [36] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG61 [36] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 jmp b1 //SEG62 keyboard_key_pressed::@1 b1: - //SEG63 [37] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 - //SEG64 [38] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy + //SEG63 [37] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 + //SEG64 [38] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy and keyboard_matrix_col_bitmask,y jmp breturn //SEG65 keyboard_key_pressed::@return @@ -1854,10 +1854,10 @@ keyboard_key_pressed: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(X) rowid) keyboard_matrix_read: { - //SEG68 [40] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + //SEG68 [40] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx lda keyboard_matrix_row_bitmask,x sta CIA1_PORT_A - //SEG69 [41] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG69 [41] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff jmp breturn @@ -1868,7 +1868,7 @@ keyboard_matrix_read: { } //SEG72 pressed pressed: { - //SEG73 [43] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG73 [43] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BGCOL //SEG74 [44] phi from pressed pressed::@2 to pressed::@1 [phi:pressed/pressed::@2->pressed::@1] b1_from_pressed: @@ -1882,11 +1882,11 @@ pressed: { //SEG78 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_SPACE#0 [phi:pressed::@1->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_SPACE jsr keyboard_key_pressed - //SEG79 [46] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 + //SEG79 [46] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 jmp b2 //SEG80 pressed::@2 b2: - //SEG81 [47] (byte~) pressed::$0 ? (byte) keyboard_key_pressed::return#10 + //SEG81 [47] (byte~) pressed::$0 ← (byte) keyboard_key_pressed::return#10 //SEG82 [48] if((byte~) pressed::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto pressed::@1 -- vbuaa_eq_0_then_la1 cmp #0 beq b1_from_b2 @@ -2243,7 +2243,7 @@ Score: 2851 //SEG8 @end //SEG9 main main: { - //SEG10 [4] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BORDERCOL //SEG11 [5] phi from main main::@1 to main::@1 [phi:main/main::@1->main::@1] @@ -2264,9 +2264,9 @@ menu: { //SEG20 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_C#0 [phi:menu::@1->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_C jsr keyboard_key_pressed - //SEG21 [10] (byte) keyboard_key_pressed::return#2 ? (byte) keyboard_key_pressed::return#0 + //SEG21 [10] (byte) keyboard_key_pressed::return#2 ← (byte) keyboard_key_pressed::return#0 //SEG22 menu::@8 - //SEG23 [11] (byte~) menu::$0 ? (byte) keyboard_key_pressed::return#2 + //SEG23 [11] (byte~) menu::$0 ← (byte) keyboard_key_pressed::return#2 //SEG24 [12] if((byte~) menu::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 @@ -2285,14 +2285,14 @@ menu: { //SEG34 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_I#0 [phi:menu::@2->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_I jsr keyboard_key_pressed - //SEG35 [18] (byte) keyboard_key_pressed::return#3 ? (byte) keyboard_key_pressed::return#0 + //SEG35 [18] (byte) keyboard_key_pressed::return#3 ← (byte) keyboard_key_pressed::return#0 //SEG36 menu::@9 - //SEG37 [19] (byte~) menu::$4 ? (byte) keyboard_key_pressed::return#3 + //SEG37 [19] (byte~) menu::$4 ← (byte) keyboard_key_pressed::return#3 //SEG38 [20] if((byte~) menu::$4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG39 menu::@6 - //SEG40 [21] *((const byte*) BORDERCOL#0) ? (const byte) RED#0 -- _deref_pbuc1=vbuc2 + //SEG40 [21] *((const byte*) BORDERCOL#0) ← (const byte) RED#0 -- _deref_pbuc1=vbuc2 lda #RED sta BORDERCOL //SEG41 asm { sei } @@ -2306,14 +2306,14 @@ menu: { //SEG46 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_E#0 [phi:menu::@3->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_E jsr keyboard_key_pressed - //SEG47 [25] (byte) keyboard_key_pressed::return#4 ? (byte) keyboard_key_pressed::return#0 + //SEG47 [25] (byte) keyboard_key_pressed::return#4 ← (byte) keyboard_key_pressed::return#0 //SEG48 menu::@10 - //SEG49 [26] (byte~) menu::$7 ? (byte) keyboard_key_pressed::return#4 + //SEG49 [26] (byte~) menu::$7 ← (byte) keyboard_key_pressed::return#4 //SEG50 [27] if((byte~) menu::$7==(byte/signed byte/word/signed word/dword/signed dword) 0) goto menu::@4 -- vbuaa_eq_0_then_la1 cmp #0 beq b4 //SEG51 menu::@7 - //SEG52 [28] *((const byte*) BORDERCOL#0) ? (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 + //SEG52 [28] *((const byte*) BORDERCOL#0) ← (const byte) GREEN#0 -- _deref_pbuc1=vbuc2 lda #GREEN sta BORDERCOL //SEG53 asm { cli } @@ -2321,7 +2321,7 @@ menu: { rts //SEG54 menu::@4 b4: - //SEG55 [30] *((const byte*) SCREEN#0) ? ++ *((const byte*) SCREEN#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG55 [30] *((const byte*) SCREEN#0) ← ++ *((const byte*) SCREEN#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc SCREEN jmp b1 } @@ -2332,23 +2332,23 @@ menu: { // Returns zero if the key is not pressed and a non-zero value if the key is currently pressed // keyboard_key_pressed(byte register(X) key) keyboard_key_pressed: { - //SEG57 [32] (byte) keyboard_key_pressed::colidx#0 ? (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuyy=vbuxx_band_vbuc1 + //SEG57 [32] (byte) keyboard_key_pressed::colidx#0 ← (byte) keyboard_key_pressed::key#4 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuyy=vbuxx_band_vbuc1 txa and #7 tay - //SEG58 [33] (byte) keyboard_key_pressed::rowidx#0 ? (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_ror_3 + //SEG58 [33] (byte) keyboard_key_pressed::rowidx#0 ← (byte) keyboard_key_pressed::key#4 >> (byte/signed byte/word/signed word/dword/signed dword) 3 -- vbuaa=vbuxx_ror_3 txa lsr lsr lsr - //SEG59 [34] (byte) keyboard_matrix_read::rowid#0 ? (byte) keyboard_key_pressed::rowidx#0 -- vbuxx=vbuaa + //SEG59 [34] (byte) keyboard_matrix_read::rowid#0 ← (byte) keyboard_key_pressed::rowidx#0 -- vbuxx=vbuaa tax //SEG60 [35] call keyboard_matrix_read jsr keyboard_matrix_read - //SEG61 [36] (byte) keyboard_matrix_read::return#2 ? (byte) keyboard_matrix_read::return#0 + //SEG61 [36] (byte) keyboard_matrix_read::return#2 ← (byte) keyboard_matrix_read::return#0 //SEG62 keyboard_key_pressed::@1 - //SEG63 [37] (byte~) keyboard_key_pressed::$2 ? (byte) keyboard_matrix_read::return#2 - //SEG64 [38] (byte) keyboard_key_pressed::return#0 ? (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy + //SEG63 [37] (byte~) keyboard_key_pressed::$2 ← (byte) keyboard_matrix_read::return#2 + //SEG64 [38] (byte) keyboard_key_pressed::return#0 ← (byte~) keyboard_key_pressed::$2 & *((const byte[8]) keyboard_matrix_col_bitmask#0 + (byte) keyboard_key_pressed::colidx#0) -- vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy and keyboard_matrix_col_bitmask,y //SEG65 keyboard_key_pressed::@return //SEG66 [39] return @@ -2362,10 +2362,10 @@ keyboard_key_pressed: { // leading to erroneous readings. You must disable kill the normal interrupt or sei/cli around calls to the keyboard matrix reader. // keyboard_matrix_read(byte register(X) rowid) keyboard_matrix_read: { - //SEG68 [40] *((const byte*) CIA1_PORT_A#0) ? *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx + //SEG68 [40] *((const byte*) CIA1_PORT_A#0) ← *((const byte[8]) keyboard_matrix_row_bitmask#0 + (byte) keyboard_matrix_read::rowid#0) -- _deref_pbuc1=pbuc2_derefidx_vbuxx lda keyboard_matrix_row_bitmask,x sta CIA1_PORT_A - //SEG69 [41] (byte) keyboard_matrix_read::return#0 ? ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 + //SEG69 [41] (byte) keyboard_matrix_read::return#0 ← ~ *((const byte*) CIA1_PORT_B#0) -- vbuaa=_bnot__deref_pbuc1 lda CIA1_PORT_B eor #$ff //SEG70 keyboard_matrix_read::@return @@ -2374,7 +2374,7 @@ keyboard_matrix_read: { } //SEG72 pressed pressed: { - //SEG73 [43] *((const byte*) BGCOL#0) ? ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG73 [43] *((const byte*) BGCOL#0) ← ++ *((const byte*) BGCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BGCOL //SEG74 [44] phi from pressed pressed::@2 to pressed::@1 [phi:pressed/pressed::@2->pressed::@1] //SEG75 pressed::@1 @@ -2384,9 +2384,9 @@ pressed: { //SEG78 [31] phi (byte) keyboard_key_pressed::key#4 = (const byte) KEY_SPACE#0 [phi:pressed::@1->keyboard_key_pressed#0] -- vbuxx=vbuc1 ldx #KEY_SPACE jsr keyboard_key_pressed - //SEG79 [46] (byte) keyboard_key_pressed::return#10 ? (byte) keyboard_key_pressed::return#0 + //SEG79 [46] (byte) keyboard_key_pressed::return#10 ← (byte) keyboard_key_pressed::return#0 //SEG80 pressed::@2 - //SEG81 [47] (byte~) pressed::$0 ? (byte) keyboard_key_pressed::return#10 + //SEG81 [47] (byte~) pressed::$0 ← (byte) keyboard_key_pressed::return#10 //SEG82 [48] if((byte~) pressed::$0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto pressed::@1 -- vbuaa_eq_0_then_la1 cmp #0 beq b1 diff --git a/src/test/ref/line-anim.log b/src/test/ref/line-anim.log index af9998a33..4e5cefec3 100644 --- a/src/test/ref/line-anim.log +++ b/src/test/ref/line-anim.log @@ -1,832 +1,832 @@ Identified constant variable (byte*) BITMAP Identified constant variable (byte*) SCREEN -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx Inlined call call vicSelectGfxBank (byte*) SCREEN -Inlined call (byte~) main::$4 ? call toD018 (byte*) SCREEN (byte*) BITMAP -Inlined call (word~) point_init::$7 ? call abs16s (signed word) point_init::x_diff -Inlined call (word~) point_init::$8 ? call abs16s (signed word) point_init::y_diff +Inlined call (byte~) main::$4 ← call toD018 (byte*) SCREEN (byte*) BITMAP +Inlined call (word~) point_init::$7 ← call abs16s (signed word) point_init::x_diff +Inlined call (word~) point_init::$8 ← call abs16s (signed word) point_init::y_diff CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@4 @4: scope:[] from @begin - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @4 - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@9 divr16u: scope:[divr16u] from divr16s::@4 - (word) divr16u::divisor#5 ? phi( divr16s::@4/(word) divr16u::divisor#0 ) - (word) divr16u::dividend#4 ? phi( divr16s::@4/(word) divr16u::dividend#1 ) - (word) divr16u::rem#9 ? phi( divr16s::@4/(word) divr16u::rem#3 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#5 ← phi( divr16s::@4/(word) divr16u::divisor#0 ) + (word) divr16u::dividend#4 ← phi( divr16s::@4/(word) divr16u::dividend#1 ) + (word) divr16u::rem#9 ← phi( divr16s::@4/(word) divr16u::rem#3 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#3 ? phi( divr16u/(word) divr16u::divisor#5 divr16u::@3/(word) divr16u::divisor#6 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#2 ? phi( divr16u/(word) divr16u::dividend#4 divr16u::@3/(word) divr16u::dividend#5 ) - (word) divr16u::rem#4 ? phi( divr16u/(word) divr16u::rem#9 divr16u::@3/(word) divr16u::rem#10 ) - (word~) divr16u::$0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#3 ← phi( divr16u/(word) divr16u::divisor#5 divr16u::@3/(word) divr16u::divisor#6 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#2 ← phi( divr16u/(word) divr16u::dividend#4 divr16u::@3/(word) divr16u::dividend#5 ) + (word) divr16u::rem#4 ← phi( divr16u/(word) divr16u::rem#9 divr16u::@3/(word) divr16u::rem#10 ) + (word~) divr16u::$0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#1 ? phi( divr16u::@1/(word) divr16u::divisor#3 divr16u::@4/(word) divr16u::divisor#4 ) - (word) divr16u::rem#5 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#3 ? phi( divr16u::@1/(word) divr16u::dividend#2 divr16u::@4/(word) divr16u::dividend#6 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#5 >= (word) divr16u::divisor#1 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#1 ← phi( divr16u::@1/(word) divr16u::divisor#3 divr16u::@4/(word) divr16u::divisor#4 ) + (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#3 ← phi( divr16u::@1/(word) divr16u::dividend#2 divr16u::@4/(word) divr16u::dividend#6 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#5 >= (word) divr16u::divisor#1 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#4 ? phi( divr16u::@1/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#6 ? phi( divr16u::@1/(word) divr16u::dividend#2 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#4 ← phi( divr16u::@1/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#6 ← phi( divr16u::@1/(word) divr16u::dividend#2 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#6 ? phi( divr16u::@2/(word) divr16u::divisor#1 divr16u::@5/(word) divr16u::divisor#2 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#5 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#7 ) - (word) divr16u::rem#10 ? phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#6 ← phi( divr16u::@2/(word) divr16u::divisor#1 divr16u::@5/(word) divr16u::divisor#2 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#5 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#7 ) + (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#7 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#2 ? phi( divr16u::@2/(word) divr16u::divisor#1 ) - (word) divr16u::rem#7 ? phi( divr16u::@2/(word) divr16u::rem#5 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#7 - (word) divr16u::divisor#2 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#7 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#2 ← phi( divr16u::@2/(word) divr16u::divisor#1 ) + (word) divr16u::rem#7 ← phi( divr16u::@2/(word) divr16u::rem#5 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#7 - (word) divr16u::divisor#2 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#8 ? phi( divr16u::@3/(word) divr16u::rem#10 ) - (word) rem16u#1 ? (word) divr16u::rem#8 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#8 ← phi( divr16u::@3/(word) divr16u::rem#10 ) + (word) rem16u#1 ← (word) divr16u::rem#8 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#10 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#3 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#3 - (word) rem16u#2 ? (word) rem16u#10 + (word) rem16u#10 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#3 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#3 + (word) rem16u#2 ← (word) rem16u#10 return to:@return @9: scope:[] from @6 - (word) rem16u#49 ? phi( @6/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#49 ← phi( @6/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@10 @10: scope:[] from @9 - (word) rem16u#43 ? phi( @9/(word) rem16u#49 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#43 ← phi( @9/(word) rem16u#49 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@12 divr16s: scope:[divr16s] from point_init::@8 - (word) rem16u#50 ? phi( point_init::@8/(word) rem16u#23 ) - (signed word) divr16s::divisor#6 ? phi( point_init::@8/(signed word) divr16s::divisor#0 ) - (signed word) divr16s::rem#1 ? phi( point_init::@8/(signed word) divr16s::rem#0 ) - (signed word) divr16s::dividend#1 ? phi( point_init::@8/(signed word) divr16s::dividend#0 ) - (byte) divr16s::neg#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) divr16s::dividendu#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) divr16s::remu#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$0 ? (signed word) divr16s::dividend#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$1 ? (signed word) divr16s::rem#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$2 ? (bool~) divr16s::$0 || (bool~) divr16s::$1 + (word) rem16u#50 ← phi( point_init::@8/(word) rem16u#23 ) + (signed word) divr16s::divisor#6 ← phi( point_init::@8/(signed word) divr16s::divisor#0 ) + (signed word) divr16s::rem#1 ← phi( point_init::@8/(signed word) divr16s::rem#0 ) + (signed word) divr16s::dividend#1 ← phi( point_init::@8/(signed word) divr16s::dividend#0 ) + (byte) divr16s::neg#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16s::dividendu#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16s::remu#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$0 ← (signed word) divr16s::dividend#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$1 ← (signed word) divr16s::rem#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$2 ← (bool~) divr16s::$0 || (bool~) divr16s::$1 if((bool~) divr16s::$2) goto divr16s::@1 to:divr16s::@7 divr16s::@1: scope:[divr16s] from divr16s - (word) rem16u#41 ? phi( divr16s/(word) rem16u#50 ) - (signed word) divr16s::divisor#4 ? phi( divr16s/(signed word) divr16s::divisor#6 ) - (signed word) divr16s::rem#2 ? phi( divr16s/(signed word) divr16s::rem#1 ) - (signed word) divr16s::dividend#2 ? phi( divr16s/(signed word) divr16s::dividend#1 ) - (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#2 - (word~) divr16s::$9 ? ((word)) (signed word~) divr16s::$8 - (word) divr16s::dividendu#1 ? (word~) divr16s::$9 - (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#2 - (word~) divr16s::$11 ? ((word)) (signed word~) divr16s::$10 - (word) divr16s::remu#1 ? (word~) divr16s::$11 - (byte) divr16s::neg#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) rem16u#41 ← phi( divr16s/(word) rem16u#50 ) + (signed word) divr16s::divisor#4 ← phi( divr16s/(signed word) divr16s::divisor#6 ) + (signed word) divr16s::rem#2 ← phi( divr16s/(signed word) divr16s::rem#1 ) + (signed word) divr16s::dividend#2 ← phi( divr16s/(signed word) divr16s::dividend#1 ) + (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#2 + (word~) divr16s::$9 ← ((word)) (signed word~) divr16s::$8 + (word) divr16s::dividendu#1 ← (word~) divr16s::$9 + (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#2 + (word~) divr16s::$11 ← ((word)) (signed word~) divr16s::$10 + (word) divr16s::remu#1 ← (word~) divr16s::$11 + (byte) divr16s::neg#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16s::@2 divr16s::@7: scope:[divr16s] from divr16s - (word) rem16u#42 ? phi( divr16s/(word) rem16u#50 ) - (byte) divr16s::neg#7 ? phi( divr16s/(byte) divr16s::neg#0 ) - (signed word) divr16s::divisor#5 ? phi( divr16s/(signed word) divr16s::divisor#6 ) - (signed word) divr16s::rem#3 ? phi( divr16s/(signed word) divr16s::rem#1 ) - (signed word) divr16s::dividend#3 ? phi( divr16s/(signed word) divr16s::dividend#1 ) - (word~) divr16s::$6 ? ((word)) (signed word) divr16s::dividend#3 - (word) divr16s::dividendu#2 ? (word~) divr16s::$6 - (word~) divr16s::$7 ? ((word)) (signed word) divr16s::rem#3 - (word) divr16s::remu#2 ? (word~) divr16s::$7 + (word) rem16u#42 ← phi( divr16s/(word) rem16u#50 ) + (byte) divr16s::neg#7 ← phi( divr16s/(byte) divr16s::neg#0 ) + (signed word) divr16s::divisor#5 ← phi( divr16s/(signed word) divr16s::divisor#6 ) + (signed word) divr16s::rem#3 ← phi( divr16s/(signed word) divr16s::rem#1 ) + (signed word) divr16s::dividend#3 ← phi( divr16s/(signed word) divr16s::dividend#1 ) + (word~) divr16s::$6 ← ((word)) (signed word) divr16s::dividend#3 + (word) divr16s::dividendu#2 ← (word~) divr16s::$6 + (word~) divr16s::$7 ← ((word)) (signed word) divr16s::rem#3 + (word) divr16s::remu#2 ← (word~) divr16s::$7 to:divr16s::@2 divr16s::@2: scope:[divr16s] from divr16s::@1 divr16s::@7 - (word) rem16u#35 ? phi( divr16s::@1/(word) rem16u#41 divr16s::@7/(word) rem16u#42 ) - (word) divr16s::remu#6 ? phi( divr16s::@1/(word) divr16s::remu#1 divr16s::@7/(word) divr16s::remu#2 ) - (word) divr16s::dividendu#6 ? phi( divr16s::@1/(word) divr16s::dividendu#1 divr16s::@7/(word) divr16s::dividendu#2 ) - (byte) divr16s::neg#5 ? phi( divr16s::@1/(byte) divr16s::neg#1 divr16s::@7/(byte) divr16s::neg#7 ) - (signed word) divr16s::divisor#1 ? phi( divr16s::@1/(signed word) divr16s::divisor#4 divr16s::@7/(signed word) divr16s::divisor#5 ) - (word) divr16s::divisoru#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$3 ? (signed word) divr16s::divisor#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#35 ← phi( divr16s::@1/(word) rem16u#41 divr16s::@7/(word) rem16u#42 ) + (word) divr16s::remu#6 ← phi( divr16s::@1/(word) divr16s::remu#1 divr16s::@7/(word) divr16s::remu#2 ) + (word) divr16s::dividendu#6 ← phi( divr16s::@1/(word) divr16s::dividendu#1 divr16s::@7/(word) divr16s::dividendu#2 ) + (byte) divr16s::neg#5 ← phi( divr16s::@1/(byte) divr16s::neg#1 divr16s::@7/(byte) divr16s::neg#7 ) + (signed word) divr16s::divisor#1 ← phi( divr16s::@1/(signed word) divr16s::divisor#4 divr16s::@7/(signed word) divr16s::divisor#5 ) + (word) divr16s::divisoru#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$3 ← (signed word) divr16s::divisor#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) divr16s::$3) goto divr16s::@3 to:divr16s::@9 divr16s::@3: scope:[divr16s] from divr16s::@2 - (word) rem16u#26 ? phi( divr16s::@2/(word) rem16u#35 ) - (word) divr16s::remu#4 ? phi( divr16s::@2/(word) divr16s::remu#6 ) - (word) divr16s::dividendu#4 ? phi( divr16s::@2/(word) divr16s::dividendu#6 ) - (byte) divr16s::neg#3 ? phi( divr16s::@2/(byte) divr16s::neg#5 ) - (signed word) divr16s::divisor#2 ? phi( divr16s::@2/(signed word) divr16s::divisor#1 ) - (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#2 - (word~) divr16s::$14 ? ((word)) (signed word~) divr16s::$13 - (word) divr16s::divisoru#1 ? (word~) divr16s::$14 - (byte/word/dword~) divr16s::$15 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) divr16s::neg#2 ? (byte/word/dword~) divr16s::$15 + (word) rem16u#26 ← phi( divr16s::@2/(word) rem16u#35 ) + (word) divr16s::remu#4 ← phi( divr16s::@2/(word) divr16s::remu#6 ) + (word) divr16s::dividendu#4 ← phi( divr16s::@2/(word) divr16s::dividendu#6 ) + (byte) divr16s::neg#3 ← phi( divr16s::@2/(byte) divr16s::neg#5 ) + (signed word) divr16s::divisor#2 ← phi( divr16s::@2/(signed word) divr16s::divisor#1 ) + (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#2 + (word~) divr16s::$14 ← ((word)) (signed word~) divr16s::$13 + (word) divr16s::divisoru#1 ← (word~) divr16s::$14 + (byte/word/dword~) divr16s::$15 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) divr16s::neg#2 ← (byte/word/dword~) divr16s::$15 to:divr16s::@4 divr16s::@9: scope:[divr16s] from divr16s::@2 - (byte) divr16s::neg#8 ? phi( divr16s::@2/(byte) divr16s::neg#5 ) - (word) rem16u#27 ? phi( divr16s::@2/(word) rem16u#35 ) - (word) divr16s::remu#5 ? phi( divr16s::@2/(word) divr16s::remu#6 ) - (word) divr16s::dividendu#5 ? phi( divr16s::@2/(word) divr16s::dividendu#6 ) - (signed word) divr16s::divisor#3 ? phi( divr16s::@2/(signed word) divr16s::divisor#1 ) - (word~) divr16s::$12 ? ((word)) (signed word) divr16s::divisor#3 - (word) divr16s::divisoru#2 ? (word~) divr16s::$12 + (byte) divr16s::neg#8 ← phi( divr16s::@2/(byte) divr16s::neg#5 ) + (word) rem16u#27 ← phi( divr16s::@2/(word) rem16u#35 ) + (word) divr16s::remu#5 ← phi( divr16s::@2/(word) divr16s::remu#6 ) + (word) divr16s::dividendu#5 ← phi( divr16s::@2/(word) divr16s::dividendu#6 ) + (signed word) divr16s::divisor#3 ← phi( divr16s::@2/(signed word) divr16s::divisor#1 ) + (word~) divr16s::$12 ← ((word)) (signed word) divr16s::divisor#3 + (word) divr16s::divisoru#2 ← (word~) divr16s::$12 to:divr16s::@4 divr16s::@4: scope:[divr16s] from divr16s::@3 divr16s::@9 - (byte) divr16s::neg#6 ? phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@9/(byte) divr16s::neg#8 ) - (word) rem16u#20 ? phi( divr16s::@3/(word) rem16u#26 divr16s::@9/(word) rem16u#27 ) - (word) divr16s::remu#3 ? phi( divr16s::@3/(word) divr16s::remu#4 divr16s::@9/(word) divr16s::remu#5 ) - (word) divr16s::divisoru#3 ? phi( divr16s::@3/(word) divr16s::divisoru#1 divr16s::@9/(word) divr16s::divisoru#2 ) - (word) divr16s::dividendu#3 ? phi( divr16s::@3/(word) divr16s::dividendu#4 divr16s::@9/(word) divr16s::dividendu#5 ) - (word) divr16u::dividend#1 ? (word) divr16s::dividendu#3 - (word) divr16u::divisor#0 ? (word) divr16s::divisoru#3 - (word) divr16u::rem#3 ? (word) divr16s::remu#3 + (byte) divr16s::neg#6 ← phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@9/(byte) divr16s::neg#8 ) + (word) rem16u#20 ← phi( divr16s::@3/(word) rem16u#26 divr16s::@9/(word) rem16u#27 ) + (word) divr16s::remu#3 ← phi( divr16s::@3/(word) divr16s::remu#4 divr16s::@9/(word) divr16s::remu#5 ) + (word) divr16s::divisoru#3 ← phi( divr16s::@3/(word) divr16s::divisoru#1 divr16s::@9/(word) divr16s::divisoru#2 ) + (word) divr16s::dividendu#3 ← phi( divr16s::@3/(word) divr16s::dividendu#4 divr16s::@9/(word) divr16s::dividendu#5 ) + (word) divr16u::dividend#1 ← (word) divr16s::dividendu#3 + (word) divr16u::divisor#0 ← (word) divr16s::divisoru#3 + (word) divr16u::rem#3 ← (word) divr16s::remu#3 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:divr16s::@15 divr16s::@15: scope:[divr16s] from divr16s::@4 - (byte) divr16s::neg#4 ? phi( divr16s::@4/(byte) divr16s::neg#6 ) - (word) rem16u#11 ? phi( divr16s::@4/(word) rem16u#2 ) - (word) divr16u::return#4 ? phi( divr16s::@4/(word) divr16u::return#2 ) - (word~) divr16s::$4 ? (word) divr16u::return#4 - (word) rem16u#3 ? (word) rem16u#11 - (word) divr16s::resultu#0 ? (word~) divr16s::$4 - (bool~) divr16s::$5 ? (byte) divr16s::neg#4 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16s::neg#4 ← phi( divr16s::@4/(byte) divr16s::neg#6 ) + (word) rem16u#11 ← phi( divr16s::@4/(word) rem16u#2 ) + (word) divr16u::return#4 ← phi( divr16s::@4/(word) divr16u::return#2 ) + (word~) divr16s::$4 ← (word) divr16u::return#4 + (word) rem16u#3 ← (word) rem16u#11 + (word) divr16s::resultu#0 ← (word~) divr16s::$4 + (bool~) divr16s::$5 ← (byte) divr16s::neg#4 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) divr16s::$5) goto divr16s::@5 to:divr16s::@11 divr16s::@5: scope:[divr16s] from divr16s::@15 - (word) divr16s::resultu#1 ? phi( divr16s::@15/(word) divr16s::resultu#0 ) - (word) rem16u#12 ? phi( divr16s::@15/(word) rem16u#3 ) - (signed word~) divr16s::$20 ? ((signed word)) (word) rem16u#12 - (signed word) rem16s#1 ? (signed word~) divr16s::$20 - (signed word~) divr16s::$21 ? ((signed word)) (word) divr16s::resultu#1 - (signed word) divr16s::return#0 ? (signed word~) divr16s::$21 + (word) divr16s::resultu#1 ← phi( divr16s::@15/(word) divr16s::resultu#0 ) + (word) rem16u#12 ← phi( divr16s::@15/(word) rem16u#3 ) + (signed word~) divr16s::$20 ← ((signed word)) (word) rem16u#12 + (signed word) rem16s#1 ← (signed word~) divr16s::$20 + (signed word~) divr16s::$21 ← ((signed word)) (word) divr16s::resultu#1 + (signed word) divr16s::return#0 ← (signed word~) divr16s::$21 to:divr16s::@return divr16s::@11: scope:[divr16s] from divr16s::@15 - (word) divr16s::resultu#2 ? phi( divr16s::@15/(word) divr16s::resultu#0 ) - (word) rem16u#13 ? phi( divr16s::@15/(word) rem16u#3 ) - (signed word~) divr16s::$16 ? ((signed word)) (word) rem16u#13 - (signed word~) divr16s::$17 ? - (signed word~) divr16s::$16 - (signed word) rem16s#2 ? (signed word~) divr16s::$17 - (signed word~) divr16s::$18 ? ((signed word)) (word) divr16s::resultu#2 - (signed word~) divr16s::$19 ? - (signed word~) divr16s::$18 - (signed word) divr16s::return#1 ? (signed word~) divr16s::$19 + (word) divr16s::resultu#2 ← phi( divr16s::@15/(word) divr16s::resultu#0 ) + (word) rem16u#13 ← phi( divr16s::@15/(word) rem16u#3 ) + (signed word~) divr16s::$16 ← ((signed word)) (word) rem16u#13 + (signed word~) divr16s::$17 ← - (signed word~) divr16s::$16 + (signed word) rem16s#2 ← (signed word~) divr16s::$17 + (signed word~) divr16s::$18 ← ((signed word)) (word) divr16s::resultu#2 + (signed word~) divr16s::$19 ← - (signed word~) divr16s::$18 + (signed word) divr16s::return#1 ← (signed word~) divr16s::$19 to:divr16s::@return divr16s::@return: scope:[divr16s] from divr16s::@11 divr16s::@5 - (signed word) rem16s#9 ? phi( divr16s::@11/(signed word) rem16s#2 divr16s::@5/(signed word) rem16s#1 ) - (word) rem16u#14 ? phi( divr16s::@11/(word) rem16u#13 divr16s::@5/(word) rem16u#12 ) - (signed word) divr16s::return#4 ? phi( divr16s::@11/(signed word) divr16s::return#1 divr16s::@5/(signed word) divr16s::return#0 ) - (signed word) divr16s::return#2 ? (signed word) divr16s::return#4 - (word) rem16u#4 ? (word) rem16u#14 - (signed word) rem16s#3 ? (signed word) rem16s#9 + (signed word) rem16s#9 ← phi( divr16s::@11/(signed word) rem16s#2 divr16s::@5/(signed word) rem16s#1 ) + (word) rem16u#14 ← phi( divr16s::@11/(word) rem16u#13 divr16s::@5/(word) rem16u#12 ) + (signed word) divr16s::return#4 ← phi( divr16s::@11/(signed word) divr16s::return#1 divr16s::@5/(signed word) divr16s::return#0 ) + (signed word) divr16s::return#2 ← (signed word) divr16s::return#4 + (word) rem16u#4 ← (word) rem16u#14 + (signed word) rem16s#3 ← (signed word) rem16s#9 return to:@return @12: scope:[] from @10 - (signed word) rem16s#31 ? phi( @10/(signed word) rem16s#0 ) - (word) rem16u#40 ? phi( @10/(word) rem16u#43 ) - (byte*) BITMAP#0 ? ((byte*)) (word/dword/signed dword) $a000 - (byte*) SCREEN#0 ? ((byte*)) (word/dword/signed dword) $8800 - (byte) SIZE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) DELAY#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (word[4]) x_start#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $1e, (byte/signed byte/word/signed word/dword/signed dword) $1e } - (byte[4]) y_start#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14 } - (word[4]) x_end#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $14 } - (byte[4]) y_end#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14 } - (word[4]) x_cur#0 ? { fill( 4, 0) } - (word[4]) y_cur#0 ? { fill( 4, 0) } - (signed byte[4]) x_add#0 ? { fill( 4, 0) } - (signed byte[4]) y_add#0 ? { fill( 4, 0) } - (byte[4]) delay#0 ? { fill( 4, 0) } - (byte[4]) frame#0 ? { fill( 4, 0) } + (signed word) rem16s#31 ← phi( @10/(signed word) rem16s#0 ) + (word) rem16u#40 ← phi( @10/(word) rem16u#43 ) + (byte*) BITMAP#0 ← ((byte*)) (word/dword/signed dword) $a000 + (byte*) SCREEN#0 ← ((byte*)) (word/dword/signed dword) $8800 + (byte) SIZE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) DELAY#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (word[4]) x_start#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $1e, (byte/signed byte/word/signed word/dword/signed dword) $1e } + (byte[4]) y_start#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14 } + (word[4]) x_end#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $14 } + (byte[4]) y_end#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $14, (byte/signed byte/word/signed word/dword/signed dword) $a, (byte/signed byte/word/signed word/dword/signed dword) $14 } + (word[4]) x_cur#0 ← { fill( 4, 0) } + (word[4]) y_cur#0 ← { fill( 4, 0) } + (signed byte[4]) x_add#0 ← { fill( 4, 0) } + (signed byte[4]) y_add#0 ← { fill( 4, 0) } + (byte[4]) delay#0 ← { fill( 4, 0) } + (byte[4]) frame#0 ← { fill( 4, 0) } to:@16 main: scope:[main] from @19 - (signed word) rem16s#52 ? phi( @19/(signed word) rem16s#19 ) - (word) rem16u#66 ? phi( @19/(word) rem16u#25 ) + (signed word) rem16s#52 ← phi( @19/(signed word) rem16s#19 ) + (word) rem16u#66 ← phi( @19/(word) rem16u#25 ) asm { sei } - *((byte*) PROCPORT_DDR#0) ? (byte) PROCPORT_DDR_MEMORY_MASK#0 - *((byte*) PROCPORT#0) ? (byte) PROCPORT_RAM_IO#0 - (byte~) main::$0 ? (byte) VIC_BMM#0 | (byte) VIC_DEN#0 - (byte~) main::$1 ? (byte~) main::$0 | (byte) VIC_RSEL#0 - (byte/word/dword~) main::$2 ? (byte~) main::$1 | (byte/signed byte/word/signed word/dword/signed dword) 3 - *((byte*) D011#0) ? (byte/word/dword~) main::$2 - (byte*) main::vicSelectGfxBank1_gfx#0 ? (byte*) SCREEN#0 + *((byte*) PROCPORT_DDR#0) ← (byte) PROCPORT_DDR_MEMORY_MASK#0 + *((byte*) PROCPORT#0) ← (byte) PROCPORT_RAM_IO#0 + (byte~) main::$0 ← (byte) VIC_BMM#0 | (byte) VIC_DEN#0 + (byte~) main::$1 ← (byte~) main::$0 | (byte) VIC_RSEL#0 + (byte/word/dword~) main::$2 ← (byte~) main::$1 | (byte/signed byte/word/signed word/dword/signed dword) 3 + *((byte*) D011#0) ← (byte/word/dword~) main::$2 + (byte*) main::vicSelectGfxBank1_gfx#0 ← (byte*) SCREEN#0 to:main::vicSelectGfxBank1 main::vicSelectGfxBank1: scope:[main] from main - (signed word) rem16s#51 ? phi( main/(signed word) rem16s#52 ) - (word) rem16u#65 ? phi( main/(word) rem16u#66 ) - (byte*) main::vicSelectGfxBank1_gfx#1 ? phi( main/(byte*) main::vicSelectGfxBank1_gfx#0 ) - *((byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ? (byte*) main::vicSelectGfxBank1_gfx#1 + (signed word) rem16s#51 ← phi( main/(signed word) rem16s#52 ) + (word) rem16u#65 ← phi( main/(word) rem16u#66 ) + (byte*) main::vicSelectGfxBank1_gfx#1 ← phi( main/(byte*) main::vicSelectGfxBank1_gfx#0 ) + *((byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ← (byte*) main::vicSelectGfxBank1_gfx#1 to:main::vicSelectGfxBank1_toDd001 main::vicSelectGfxBank1_toDd001: scope:[main] from main::vicSelectGfxBank1 - (signed word) rem16s#50 ? phi( main::vicSelectGfxBank1/(signed word) rem16s#51 ) - (word) rem16u#64 ? phi( main::vicSelectGfxBank1/(word) rem16u#65 ) - (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 ? phi( main::vicSelectGfxBank1/(byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ) - (word) main::vicSelectGfxBank1_toDd001_$0#0 ? ((word)) (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 - (byte) main::vicSelectGfxBank1_toDd001_$1#0 ? > (word) main::vicSelectGfxBank1_toDd001_$0#0 - (byte) main::vicSelectGfxBank1_toDd001_$2#0 ? (byte) main::vicSelectGfxBank1_toDd001_$1#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte) main::vicSelectGfxBank1_toDd001_$2#0 - (byte) main::vicSelectGfxBank1_toDd001_return#0 ? (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 + (signed word) rem16s#50 ← phi( main::vicSelectGfxBank1/(signed word) rem16s#51 ) + (word) rem16u#64 ← phi( main::vicSelectGfxBank1/(word) rem16u#65 ) + (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 ← phi( main::vicSelectGfxBank1/(byte*) main::vicSelectGfxBank1_toDd001_gfx#0 ) + (word) main::vicSelectGfxBank1_toDd001_$0#0 ← ((word)) (byte*) main::vicSelectGfxBank1_toDd001_gfx#1 + (byte) main::vicSelectGfxBank1_toDd001_$1#0 ← > (word) main::vicSelectGfxBank1_toDd001_$0#0 + (byte) main::vicSelectGfxBank1_toDd001_$2#0 ← (byte) main::vicSelectGfxBank1_toDd001_$1#0 >> (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 ^ (byte) main::vicSelectGfxBank1_toDd001_$2#0 + (byte) main::vicSelectGfxBank1_toDd001_return#0 ← (byte/word/dword) main::vicSelectGfxBank1_toDd001_$3#0 to:main::vicSelectGfxBank1_toDd001_@return main::vicSelectGfxBank1_toDd001_@return: scope:[main] from main::vicSelectGfxBank1_toDd001 - (signed word) rem16s#48 ? phi( main::vicSelectGfxBank1_toDd001/(signed word) rem16s#50 ) - (word) rem16u#62 ? phi( main::vicSelectGfxBank1_toDd001/(word) rem16u#64 ) - (byte) main::vicSelectGfxBank1_toDd001_return#2 ? phi( main::vicSelectGfxBank1_toDd001/(byte) main::vicSelectGfxBank1_toDd001_return#0 ) - (byte) main::vicSelectGfxBank1_toDd001_return#1 ? (byte) main::vicSelectGfxBank1_toDd001_return#2 + (signed word) rem16s#48 ← phi( main::vicSelectGfxBank1_toDd001/(signed word) rem16s#50 ) + (word) rem16u#62 ← phi( main::vicSelectGfxBank1_toDd001/(word) rem16u#64 ) + (byte) main::vicSelectGfxBank1_toDd001_return#2 ← phi( main::vicSelectGfxBank1_toDd001/(byte) main::vicSelectGfxBank1_toDd001_return#0 ) + (byte) main::vicSelectGfxBank1_toDd001_return#1 ← (byte) main::vicSelectGfxBank1_toDd001_return#2 to:main::vicSelectGfxBank1_@1 main::vicSelectGfxBank1_@1: scope:[main] from main::vicSelectGfxBank1_toDd001_@return - (signed word) rem16s#46 ? phi( main::vicSelectGfxBank1_toDd001_@return/(signed word) rem16s#48 ) - (word) rem16u#60 ? phi( main::vicSelectGfxBank1_toDd001_@return/(word) rem16u#62 ) - (byte) main::vicSelectGfxBank1_toDd001_return#3 ? phi( main::vicSelectGfxBank1_toDd001_@return/(byte) main::vicSelectGfxBank1_toDd001_return#1 ) - (byte) main::vicSelectGfxBank1_$0#0 ? (byte) main::vicSelectGfxBank1_toDd001_return#3 - *((byte*) CIA2_PORT_A#0) ? (byte) main::vicSelectGfxBank1_$0#0 + (signed word) rem16s#46 ← phi( main::vicSelectGfxBank1_toDd001_@return/(signed word) rem16s#48 ) + (word) rem16u#60 ← phi( main::vicSelectGfxBank1_toDd001_@return/(word) rem16u#62 ) + (byte) main::vicSelectGfxBank1_toDd001_return#3 ← phi( main::vicSelectGfxBank1_toDd001_@return/(byte) main::vicSelectGfxBank1_toDd001_return#1 ) + (byte) main::vicSelectGfxBank1_$0#0 ← (byte) main::vicSelectGfxBank1_toDd001_return#3 + *((byte*) CIA2_PORT_A#0) ← (byte) main::vicSelectGfxBank1_$0#0 to:main::@15 main::@15: scope:[main] from main::vicSelectGfxBank1_@1 - (signed word) rem16s#43 ? phi( main::vicSelectGfxBank1_@1/(signed word) rem16s#46 ) - (word) rem16u#57 ? phi( main::vicSelectGfxBank1_@1/(word) rem16u#60 ) - (byte*) main::toD0181_screen#0 ? (byte*) SCREEN#0 - (byte*) main::toD0181_gfx#0 ? (byte*) BITMAP#0 + (signed word) rem16s#43 ← phi( main::vicSelectGfxBank1_@1/(signed word) rem16s#46 ) + (word) rem16u#57 ← phi( main::vicSelectGfxBank1_@1/(word) rem16u#60 ) + (byte*) main::toD0181_screen#0 ← (byte*) SCREEN#0 + (byte*) main::toD0181_gfx#0 ← (byte*) BITMAP#0 to:main::toD0181 main::toD0181: scope:[main] from main::@15 - (signed word) rem16s#41 ? phi( main::@15/(signed word) rem16s#43 ) - (word) rem16u#55 ? phi( main::@15/(word) rem16u#57 ) - (byte*) main::toD0181_gfx#1 ? phi( main::@15/(byte*) main::toD0181_gfx#0 ) - (byte*) main::toD0181_screen#1 ? phi( main::@15/(byte*) main::toD0181_screen#0 ) - (word) main::toD0181_$0#0 ? ((word)) (byte*) main::toD0181_screen#1 - (word) main::toD0181_$1#0 ? (word) main::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff - (word) main::toD0181_$2#0 ? (word) main::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) main::toD0181_$3#0 ? > (word) main::toD0181_$2#0 - (word) main::toD0181_$4#0 ? ((word)) (byte*) main::toD0181_gfx#1 - (byte) main::toD0181_$5#0 ? > (word) main::toD0181_$4#0 - (byte) main::toD0181_$6#0 ? (byte) main::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) main::toD0181_$7#0 ? (byte) main::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) main::toD0181_$8#0 ? (byte) main::toD0181_$3#0 | (byte) main::toD0181_$7#0 - (byte) main::toD0181_return#0 ? (byte) main::toD0181_$8#0 + (signed word) rem16s#41 ← phi( main::@15/(signed word) rem16s#43 ) + (word) rem16u#55 ← phi( main::@15/(word) rem16u#57 ) + (byte*) main::toD0181_gfx#1 ← phi( main::@15/(byte*) main::toD0181_gfx#0 ) + (byte*) main::toD0181_screen#1 ← phi( main::@15/(byte*) main::toD0181_screen#0 ) + (word) main::toD0181_$0#0 ← ((word)) (byte*) main::toD0181_screen#1 + (word) main::toD0181_$1#0 ← (word) main::toD0181_$0#0 & (word/signed word/dword/signed dword) $3fff + (word) main::toD0181_$2#0 ← (word) main::toD0181_$1#0 << (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) main::toD0181_$3#0 ← > (word) main::toD0181_$2#0 + (word) main::toD0181_$4#0 ← ((word)) (byte*) main::toD0181_gfx#1 + (byte) main::toD0181_$5#0 ← > (word) main::toD0181_$4#0 + (byte) main::toD0181_$6#0 ← (byte) main::toD0181_$5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) main::toD0181_$7#0 ← (byte) main::toD0181_$6#0 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) main::toD0181_$8#0 ← (byte) main::toD0181_$3#0 | (byte) main::toD0181_$7#0 + (byte) main::toD0181_return#0 ← (byte) main::toD0181_$8#0 to:main::toD0181_@return main::toD0181_@return: scope:[main] from main::toD0181 - (signed word) rem16s#39 ? phi( main::toD0181/(signed word) rem16s#41 ) - (word) rem16u#53 ? phi( main::toD0181/(word) rem16u#55 ) - (byte) main::toD0181_return#2 ? phi( main::toD0181/(byte) main::toD0181_return#0 ) - (byte) main::toD0181_return#1 ? (byte) main::toD0181_return#2 + (signed word) rem16s#39 ← phi( main::toD0181/(signed word) rem16s#41 ) + (word) rem16u#53 ← phi( main::toD0181/(word) rem16u#55 ) + (byte) main::toD0181_return#2 ← phi( main::toD0181/(byte) main::toD0181_return#0 ) + (byte) main::toD0181_return#1 ← (byte) main::toD0181_return#2 to:main::@16 main::@16: scope:[main] from main::toD0181_@return - (signed word) rem16s#37 ? phi( main::toD0181_@return/(signed word) rem16s#39 ) - (word) rem16u#51 ? phi( main::toD0181_@return/(word) rem16u#53 ) - (byte) main::toD0181_return#3 ? phi( main::toD0181_@return/(byte) main::toD0181_return#1 ) - (byte~) main::$4 ? (byte) main::toD0181_return#3 - *((byte*) D018#0) ? (byte~) main::$4 - (byte*) bitmap_init::bitmap#0 ? (byte*) BITMAP#0 + (signed word) rem16s#37 ← phi( main::toD0181_@return/(signed word) rem16s#39 ) + (word) rem16u#51 ← phi( main::toD0181_@return/(word) rem16u#53 ) + (byte) main::toD0181_return#3 ← phi( main::toD0181_@return/(byte) main::toD0181_return#1 ) + (byte~) main::$4 ← (byte) main::toD0181_return#3 + *((byte*) D018#0) ← (byte~) main::$4 + (byte*) bitmap_init::bitmap#0 ← (byte*) BITMAP#0 call bitmap_init to:main::@17 main::@17: scope:[main] from main::@16 - (signed word) rem16s#32 ? phi( main::@16/(signed word) rem16s#37 ) - (word) rem16u#44 ? phi( main::@16/(word) rem16u#51 ) + (signed word) rem16s#32 ← phi( main::@16/(signed word) rem16s#37 ) + (word) rem16u#44 ← phi( main::@16/(word) rem16u#51 ) call bitmap_clear to:main::@18 main::@18: scope:[main] from main::@17 - (signed word) rem16s#27 ? phi( main::@17/(signed word) rem16s#32 ) - (word) rem16u#36 ? phi( main::@17/(word) rem16u#44 ) - (byte*) screen_fill::screen#0 ? (byte*) SCREEN#0 - (byte) screen_fill::ch#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 + (signed word) rem16s#27 ← phi( main::@17/(signed word) rem16s#32 ) + (word) rem16u#36 ← phi( main::@17/(word) rem16u#44 ) + (byte*) screen_fill::screen#0 ← (byte*) SCREEN#0 + (byte) screen_fill::ch#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 call screen_fill to:main::@19 main::@19: scope:[main] from main::@18 - (signed word) rem16s#20 ? phi( main::@18/(signed word) rem16s#27 ) - (word) rem16u#28 ? phi( main::@18/(word) rem16u#36 ) - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) rem16s#20 ← phi( main::@18/(signed word) rem16s#27 ) + (word) rem16u#28 ← phi( main::@18/(word) rem16u#36 ) + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main::@19 main::@21 - (signed word) rem16s#15 ? phi( main::@19/(signed word) rem16s#20 main::@21/(signed word) rem16s#21 ) - (word) rem16u#21 ? phi( main::@19/(word) rem16u#28 main::@21/(word) rem16u#29 ) - (byte) main::i#2 ? phi( main::@19/(byte) main::i#0 main::@21/(byte) main::i#1 ) - (byte) point_init::point_idx#0 ? (byte) main::i#2 + (signed word) rem16s#15 ← phi( main::@19/(signed word) rem16s#20 main::@21/(signed word) rem16s#21 ) + (word) rem16u#21 ← phi( main::@19/(word) rem16u#28 main::@21/(word) rem16u#29 ) + (byte) main::i#2 ← phi( main::@19/(byte) main::i#0 main::@21/(byte) main::i#1 ) + (byte) point_init::point_idx#0 ← (byte) main::i#2 call point_init to:main::@20 main::@20: scope:[main] from main::@1 - (byte) main::i#3 ? phi( main::@1/(byte) main::i#2 ) - (signed word) rem16s#10 ? phi( main::@1/(signed word) rem16s#7 ) - (word) rem16u#15 ? phi( main::@1/(word) rem16u#8 ) - (word) rem16u#5 ? (word) rem16u#15 - (signed word) rem16s#4 ? (signed word) rem16s#10 - (byte~) main::$9 ? (byte) main::i#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) bitmap_plot::x#0 ? *((word[4]) x_start#0 + (byte) main::i#3) - (byte) bitmap_plot::y#0 ? *((byte[4]) y_start#0 + (byte~) main::$9) + (byte) main::i#3 ← phi( main::@1/(byte) main::i#2 ) + (signed word) rem16s#10 ← phi( main::@1/(signed word) rem16s#7 ) + (word) rem16u#15 ← phi( main::@1/(word) rem16u#8 ) + (word) rem16u#5 ← (word) rem16u#15 + (signed word) rem16s#4 ← (signed word) rem16s#10 + (byte~) main::$9 ← (byte) main::i#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) bitmap_plot::x#0 ← *((word[4]) x_start#0 + (byte) main::i#3) + (byte) bitmap_plot::y#0 ← *((byte[4]) y_start#0 + (byte~) main::$9) call bitmap_plot to:main::@21 main::@21: scope:[main] from main::@20 - (signed word) rem16s#21 ? phi( main::@20/(signed word) rem16s#4 ) - (word) rem16u#29 ? phi( main::@20/(word) rem16u#5 ) - (byte) main::i#4 ? phi( main::@20/(byte) main::i#3 ) - (byte) main::i#1 ? (byte) main::i#4 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool~) main::$11 ? (byte) main::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 8 + (signed word) rem16s#21 ← phi( main::@20/(signed word) rem16s#4 ) + (word) rem16u#29 ← phi( main::@20/(word) rem16u#5 ) + (byte) main::i#4 ← phi( main::@20/(byte) main::i#3 ) + (byte) main::i#1 ← (byte) main::i#4 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool~) main::$11 ← (byte) main::i#1 != (byte/signed byte/word/signed word/dword/signed dword) 8 if((bool~) main::$11) goto main::@1 to:main::@3 main::@3: scope:[main] from main::@21 main::@8 - (signed word) rem16s#16 ? phi( main::@21/(signed word) rem16s#21 main::@8/(signed word) rem16s#22 ) - (word) rem16u#22 ? phi( main::@21/(word) rem16u#29 main::@8/(word) rem16u#30 ) + (signed word) rem16s#16 ← phi( main::@21/(signed word) rem16s#21 main::@8/(signed word) rem16s#22 ) + (word) rem16u#22 ← phi( main::@21/(word) rem16u#29 main::@8/(word) rem16u#30 ) if(true) goto main::@4 to:main::@return main::@4: scope:[main] from main::@3 - (signed word) rem16s#33 ? phi( main::@3/(signed word) rem16s#16 ) - (word) rem16u#45 ? phi( main::@3/(word) rem16u#22 ) + (signed word) rem16s#33 ← phi( main::@3/(signed word) rem16s#16 ) + (word) rem16u#45 ← phi( main::@3/(word) rem16u#22 ) to:main::@6 main::@6: scope:[main] from main::@4 main::@7 - (signed word) rem16s#28 ? phi( main::@4/(signed word) rem16s#33 main::@7/(signed word) rem16s#34 ) - (word) rem16u#37 ? phi( main::@4/(word) rem16u#45 main::@7/(word) rem16u#46 ) - (bool~) main::$12 ? *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff + (signed word) rem16s#28 ← phi( main::@4/(signed word) rem16s#33 main::@7/(signed word) rem16s#34 ) + (word) rem16u#37 ← phi( main::@4/(word) rem16u#45 main::@7/(word) rem16u#46 ) + (bool~) main::$12 ← *((byte*) RASTER#0) != (byte/word/signed word/dword/signed dword) $ff if((bool~) main::$12) goto main::@7 to:main::@8 main::@7: scope:[main] from main::@6 - (signed word) rem16s#34 ? phi( main::@6/(signed word) rem16s#28 ) - (word) rem16u#46 ? phi( main::@6/(word) rem16u#37 ) + (signed word) rem16s#34 ← phi( main::@6/(signed word) rem16s#28 ) + (word) rem16u#46 ← phi( main::@6/(word) rem16u#37 ) to:main::@6 main::@8: scope:[main] from main::@6 - (signed word) rem16s#22 ? phi( main::@6/(signed word) rem16s#28 ) - (word) rem16u#30 ? phi( main::@6/(word) rem16u#37 ) - *((byte*) BORDERCOL#0) ? ++ *((byte*) BORDERCOL#0) + (signed word) rem16s#22 ← phi( main::@6/(signed word) rem16s#28 ) + (word) rem16u#30 ← phi( main::@6/(word) rem16u#37 ) + *((byte*) BORDERCOL#0) ← ++ *((byte*) BORDERCOL#0) to:main::@3 main::@return: scope:[main] from main::@3 - (signed word) rem16s#11 ? phi( main::@3/(signed word) rem16s#16 ) - (word) rem16u#16 ? phi( main::@3/(word) rem16u#22 ) - (word) rem16u#6 ? (word) rem16u#16 - (signed word) rem16s#5 ? (signed word) rem16s#11 + (signed word) rem16s#11 ← phi( main::@3/(signed word) rem16s#16 ) + (word) rem16u#16 ← phi( main::@3/(word) rem16u#22 ) + (word) rem16u#6 ← (word) rem16u#16 + (signed word) rem16s#5 ← (signed word) rem16s#11 return to:@return point_init: scope:[point_init] from main::@1 - (signed word) rem16s#49 ? phi( main::@1/(signed word) rem16s#15 ) - (word) rem16u#63 ? phi( main::@1/(word) rem16u#21 ) - (byte) point_init::point_idx#1 ? phi( main::@1/(byte) point_init::point_idx#0 ) - (byte~) point_init::$0 ? (byte) point_init::point_idx#1 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) point_init::point_idx1#0 ? (byte~) point_init::$0 - (signed word~) point_init::$1 ? ((signed word)) *((word[4]) x_end#0 + (byte) point_init::point_idx#1) - (signed word~) point_init::$2 ? ((signed word)) *((word[4]) x_start#0 + (byte) point_init::point_idx#1) - (signed word~) point_init::$3 ? (signed word~) point_init::$1 - (signed word~) point_init::$2 - (signed word) point_init::x_diff#0 ? (signed word~) point_init::$3 - (signed word~) point_init::$4 ? ((signed word)) *((byte[4]) y_end#0 + (byte) point_init::point_idx1#0) - (signed word~) point_init::$5 ? ((signed word)) *((byte[4]) y_start#0 + (byte) point_init::point_idx1#0) - (signed word~) point_init::$6 ? (signed word~) point_init::$4 - (signed word~) point_init::$5 - (signed word) point_init::y_diff#0 ? (signed word~) point_init::$6 - (signed word) point_init::abs16s1_w#0 ? (signed word) point_init::x_diff#0 + (signed word) rem16s#49 ← phi( main::@1/(signed word) rem16s#15 ) + (word) rem16u#63 ← phi( main::@1/(word) rem16u#21 ) + (byte) point_init::point_idx#1 ← phi( main::@1/(byte) point_init::point_idx#0 ) + (byte~) point_init::$0 ← (byte) point_init::point_idx#1 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) point_init::point_idx1#0 ← (byte~) point_init::$0 + (signed word~) point_init::$1 ← ((signed word)) *((word[4]) x_end#0 + (byte) point_init::point_idx#1) + (signed word~) point_init::$2 ← ((signed word)) *((word[4]) x_start#0 + (byte) point_init::point_idx#1) + (signed word~) point_init::$3 ← (signed word~) point_init::$1 - (signed word~) point_init::$2 + (signed word) point_init::x_diff#0 ← (signed word~) point_init::$3 + (signed word~) point_init::$4 ← ((signed word)) *((byte[4]) y_end#0 + (byte) point_init::point_idx1#0) + (signed word~) point_init::$5 ← ((signed word)) *((byte[4]) y_start#0 + (byte) point_init::point_idx1#0) + (signed word~) point_init::$6 ← (signed word~) point_init::$4 - (signed word~) point_init::$5 + (signed word) point_init::y_diff#0 ← (signed word~) point_init::$6 + (signed word) point_init::abs16s1_w#0 ← (signed word) point_init::x_diff#0 to:point_init::abs16s1 point_init::abs16s1: scope:[point_init] from point_init - (signed word) rem16s#47 ? phi( point_init/(signed word) rem16s#49 ) - (word) rem16u#61 ? phi( point_init/(word) rem16u#63 ) - (byte) point_init::point_idx1#16 ? phi( point_init/(byte) point_init::point_idx1#0 ) - (byte) point_init::point_idx#17 ? phi( point_init/(byte) point_init::point_idx#1 ) - (signed word) point_init::x_diff#14 ? phi( point_init/(signed word) point_init::x_diff#0 ) - (signed word) point_init::y_diff#9 ? phi( point_init/(signed word) point_init::y_diff#0 ) - (signed word) point_init::abs16s1_w#1 ? phi( point_init/(signed word) point_init::abs16s1_w#0 ) - (bool) point_init::abs16s1_$0#0 ? (signed word) point_init::abs16s1_w#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) rem16s#47 ← phi( point_init/(signed word) rem16s#49 ) + (word) rem16u#61 ← phi( point_init/(word) rem16u#63 ) + (byte) point_init::point_idx1#16 ← phi( point_init/(byte) point_init::point_idx1#0 ) + (byte) point_init::point_idx#17 ← phi( point_init/(byte) point_init::point_idx#1 ) + (signed word) point_init::x_diff#14 ← phi( point_init/(signed word) point_init::x_diff#0 ) + (signed word) point_init::y_diff#9 ← phi( point_init/(signed word) point_init::y_diff#0 ) + (signed word) point_init::abs16s1_w#1 ← phi( point_init/(signed word) point_init::abs16s1_w#0 ) + (bool) point_init::abs16s1_$0#0 ← (signed word) point_init::abs16s1_w#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool) point_init::abs16s1_$0#0) goto point_init::abs16s1_@1 to:point_init::abs16s1_@3 point_init::abs16s1_@1: scope:[point_init] from point_init::abs16s1 - (signed word) rem16s#44 ? phi( point_init::abs16s1/(signed word) rem16s#47 ) - (word) rem16u#58 ? phi( point_init::abs16s1/(word) rem16u#61 ) - (byte) point_init::point_idx1#14 ? phi( point_init::abs16s1/(byte) point_init::point_idx1#16 ) - (byte) point_init::point_idx#15 ? phi( point_init::abs16s1/(byte) point_init::point_idx#17 ) - (signed word) point_init::x_diff#12 ? phi( point_init::abs16s1/(signed word) point_init::x_diff#14 ) - (signed word) point_init::y_diff#6 ? phi( point_init::abs16s1/(signed word) point_init::y_diff#9 ) - (signed word) point_init::abs16s1_w#2 ? phi( point_init::abs16s1/(signed word) point_init::abs16s1_w#1 ) - (signed word) point_init::abs16s1_$2#0 ? - (signed word) point_init::abs16s1_w#2 - (word) point_init::abs16s1_$3#0 ? ((word)) (signed word) point_init::abs16s1_$2#0 - (word) point_init::abs16s1_return#0 ? (word) point_init::abs16s1_$3#0 + (signed word) rem16s#44 ← phi( point_init::abs16s1/(signed word) rem16s#47 ) + (word) rem16u#58 ← phi( point_init::abs16s1/(word) rem16u#61 ) + (byte) point_init::point_idx1#14 ← phi( point_init::abs16s1/(byte) point_init::point_idx1#16 ) + (byte) point_init::point_idx#15 ← phi( point_init::abs16s1/(byte) point_init::point_idx#17 ) + (signed word) point_init::x_diff#12 ← phi( point_init::abs16s1/(signed word) point_init::x_diff#14 ) + (signed word) point_init::y_diff#6 ← phi( point_init::abs16s1/(signed word) point_init::y_diff#9 ) + (signed word) point_init::abs16s1_w#2 ← phi( point_init::abs16s1/(signed word) point_init::abs16s1_w#1 ) + (signed word) point_init::abs16s1_$2#0 ← - (signed word) point_init::abs16s1_w#2 + (word) point_init::abs16s1_$3#0 ← ((word)) (signed word) point_init::abs16s1_$2#0 + (word) point_init::abs16s1_return#0 ← (word) point_init::abs16s1_$3#0 to:point_init::abs16s1_@return point_init::abs16s1_@3: scope:[point_init] from point_init::abs16s1 - (signed word) rem16s#45 ? phi( point_init::abs16s1/(signed word) rem16s#47 ) - (word) rem16u#59 ? phi( point_init::abs16s1/(word) rem16u#61 ) - (byte) point_init::point_idx1#15 ? phi( point_init::abs16s1/(byte) point_init::point_idx1#16 ) - (byte) point_init::point_idx#16 ? phi( point_init::abs16s1/(byte) point_init::point_idx#17 ) - (signed word) point_init::x_diff#13 ? phi( point_init::abs16s1/(signed word) point_init::x_diff#14 ) - (signed word) point_init::y_diff#7 ? phi( point_init::abs16s1/(signed word) point_init::y_diff#9 ) - (signed word) point_init::abs16s1_w#3 ? phi( point_init::abs16s1/(signed word) point_init::abs16s1_w#1 ) - (word) point_init::abs16s1_$1#0 ? ((word)) (signed word) point_init::abs16s1_w#3 - (word) point_init::abs16s1_return#1 ? (word) point_init::abs16s1_$1#0 + (signed word) rem16s#45 ← phi( point_init::abs16s1/(signed word) rem16s#47 ) + (word) rem16u#59 ← phi( point_init::abs16s1/(word) rem16u#61 ) + (byte) point_init::point_idx1#15 ← phi( point_init::abs16s1/(byte) point_init::point_idx1#16 ) + (byte) point_init::point_idx#16 ← phi( point_init::abs16s1/(byte) point_init::point_idx#17 ) + (signed word) point_init::x_diff#13 ← phi( point_init::abs16s1/(signed word) point_init::x_diff#14 ) + (signed word) point_init::y_diff#7 ← phi( point_init::abs16s1/(signed word) point_init::y_diff#9 ) + (signed word) point_init::abs16s1_w#3 ← phi( point_init::abs16s1/(signed word) point_init::abs16s1_w#1 ) + (word) point_init::abs16s1_$1#0 ← ((word)) (signed word) point_init::abs16s1_w#3 + (word) point_init::abs16s1_return#1 ← (word) point_init::abs16s1_$1#0 to:point_init::abs16s1_@return point_init::abs16s1_@return: scope:[point_init] from point_init::abs16s1_@1 point_init::abs16s1_@3 - (signed word) rem16s#42 ? phi( point_init::abs16s1_@1/(signed word) rem16s#44 point_init::abs16s1_@3/(signed word) rem16s#45 ) - (word) rem16u#56 ? phi( point_init::abs16s1_@1/(word) rem16u#58 point_init::abs16s1_@3/(word) rem16u#59 ) - (byte) point_init::point_idx1#13 ? phi( point_init::abs16s1_@1/(byte) point_init::point_idx1#14 point_init::abs16s1_@3/(byte) point_init::point_idx1#15 ) - (byte) point_init::point_idx#14 ? phi( point_init::abs16s1_@1/(byte) point_init::point_idx#15 point_init::abs16s1_@3/(byte) point_init::point_idx#16 ) - (signed word) point_init::x_diff#11 ? phi( point_init::abs16s1_@1/(signed word) point_init::x_diff#12 point_init::abs16s1_@3/(signed word) point_init::x_diff#13 ) - (signed word) point_init::y_diff#3 ? phi( point_init::abs16s1_@1/(signed word) point_init::y_diff#6 point_init::abs16s1_@3/(signed word) point_init::y_diff#7 ) - (word) point_init::abs16s1_return#3 ? phi( point_init::abs16s1_@1/(word) point_init::abs16s1_return#0 point_init::abs16s1_@3/(word) point_init::abs16s1_return#1 ) - (word) point_init::abs16s1_return#2 ? (word) point_init::abs16s1_return#3 + (signed word) rem16s#42 ← phi( point_init::abs16s1_@1/(signed word) rem16s#44 point_init::abs16s1_@3/(signed word) rem16s#45 ) + (word) rem16u#56 ← phi( point_init::abs16s1_@1/(word) rem16u#58 point_init::abs16s1_@3/(word) rem16u#59 ) + (byte) point_init::point_idx1#13 ← phi( point_init::abs16s1_@1/(byte) point_init::point_idx1#14 point_init::abs16s1_@3/(byte) point_init::point_idx1#15 ) + (byte) point_init::point_idx#14 ← phi( point_init::abs16s1_@1/(byte) point_init::point_idx#15 point_init::abs16s1_@3/(byte) point_init::point_idx#16 ) + (signed word) point_init::x_diff#11 ← phi( point_init::abs16s1_@1/(signed word) point_init::x_diff#12 point_init::abs16s1_@3/(signed word) point_init::x_diff#13 ) + (signed word) point_init::y_diff#3 ← phi( point_init::abs16s1_@1/(signed word) point_init::y_diff#6 point_init::abs16s1_@3/(signed word) point_init::y_diff#7 ) + (word) point_init::abs16s1_return#3 ← phi( point_init::abs16s1_@1/(word) point_init::abs16s1_return#0 point_init::abs16s1_@3/(word) point_init::abs16s1_return#1 ) + (word) point_init::abs16s1_return#2 ← (word) point_init::abs16s1_return#3 to:point_init::@9 point_init::@9: scope:[point_init] from point_init::abs16s1_@return - (signed word) rem16s#40 ? phi( point_init::abs16s1_@return/(signed word) rem16s#42 ) - (word) rem16u#54 ? phi( point_init::abs16s1_@return/(word) rem16u#56 ) - (byte) point_init::point_idx1#12 ? phi( point_init::abs16s1_@return/(byte) point_init::point_idx1#13 ) - (byte) point_init::point_idx#13 ? phi( point_init::abs16s1_@return/(byte) point_init::point_idx#14 ) - (signed word) point_init::x_diff#10 ? phi( point_init::abs16s1_@return/(signed word) point_init::x_diff#11 ) - (signed word) point_init::y_diff#1 ? phi( point_init::abs16s1_@return/(signed word) point_init::y_diff#3 ) - (word) point_init::abs16s1_return#4 ? phi( point_init::abs16s1_@return/(word) point_init::abs16s1_return#2 ) - (word~) point_init::$7 ? (word) point_init::abs16s1_return#4 - (signed word) point_init::abs16s2_w#0 ? (signed word) point_init::y_diff#1 + (signed word) rem16s#40 ← phi( point_init::abs16s1_@return/(signed word) rem16s#42 ) + (word) rem16u#54 ← phi( point_init::abs16s1_@return/(word) rem16u#56 ) + (byte) point_init::point_idx1#12 ← phi( point_init::abs16s1_@return/(byte) point_init::point_idx1#13 ) + (byte) point_init::point_idx#13 ← phi( point_init::abs16s1_@return/(byte) point_init::point_idx#14 ) + (signed word) point_init::x_diff#10 ← phi( point_init::abs16s1_@return/(signed word) point_init::x_diff#11 ) + (signed word) point_init::y_diff#1 ← phi( point_init::abs16s1_@return/(signed word) point_init::y_diff#3 ) + (word) point_init::abs16s1_return#4 ← phi( point_init::abs16s1_@return/(word) point_init::abs16s1_return#2 ) + (word~) point_init::$7 ← (word) point_init::abs16s1_return#4 + (signed word) point_init::abs16s2_w#0 ← (signed word) point_init::y_diff#1 to:point_init::abs16s2 point_init::abs16s2: scope:[point_init] from point_init::@9 - (signed word) point_init::y_diff#14 ? phi( point_init::@9/(signed word) point_init::y_diff#1 ) - (signed word) rem16s#38 ? phi( point_init::@9/(signed word) rem16s#40 ) - (word) rem16u#52 ? phi( point_init::@9/(word) rem16u#54 ) - (byte) point_init::point_idx1#11 ? phi( point_init::@9/(byte) point_init::point_idx1#12 ) - (byte) point_init::point_idx#12 ? phi( point_init::@9/(byte) point_init::point_idx#13 ) - (signed word) point_init::x_diff#9 ? phi( point_init::@9/(signed word) point_init::x_diff#10 ) - (signed word) point_init::abs16s2_w#1 ? phi( point_init::@9/(signed word) point_init::abs16s2_w#0 ) - (bool) point_init::abs16s2_$0#0 ? (signed word) point_init::abs16s2_w#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) point_init::y_diff#14 ← phi( point_init::@9/(signed word) point_init::y_diff#1 ) + (signed word) rem16s#38 ← phi( point_init::@9/(signed word) rem16s#40 ) + (word) rem16u#52 ← phi( point_init::@9/(word) rem16u#54 ) + (byte) point_init::point_idx1#11 ← phi( point_init::@9/(byte) point_init::point_idx1#12 ) + (byte) point_init::point_idx#12 ← phi( point_init::@9/(byte) point_init::point_idx#13 ) + (signed word) point_init::x_diff#9 ← phi( point_init::@9/(signed word) point_init::x_diff#10 ) + (signed word) point_init::abs16s2_w#1 ← phi( point_init::@9/(signed word) point_init::abs16s2_w#0 ) + (bool) point_init::abs16s2_$0#0 ← (signed word) point_init::abs16s2_w#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool) point_init::abs16s2_$0#0) goto point_init::abs16s2_@1 to:point_init::abs16s2_@3 point_init::abs16s2_@1: scope:[point_init] from point_init::abs16s2 - (signed word) point_init::y_diff#12 ? phi( point_init::abs16s2/(signed word) point_init::y_diff#14 ) - (signed word) rem16s#35 ? phi( point_init::abs16s2/(signed word) rem16s#38 ) - (word) rem16u#47 ? phi( point_init::abs16s2/(word) rem16u#52 ) - (byte) point_init::point_idx1#8 ? phi( point_init::abs16s2/(byte) point_init::point_idx1#11 ) - (byte) point_init::point_idx#10 ? phi( point_init::abs16s2/(byte) point_init::point_idx#12 ) - (signed word) point_init::x_diff#7 ? phi( point_init::abs16s2/(signed word) point_init::x_diff#9 ) - (signed word) point_init::abs16s2_w#2 ? phi( point_init::abs16s2/(signed word) point_init::abs16s2_w#1 ) - (signed word) point_init::abs16s2_$2#0 ? - (signed word) point_init::abs16s2_w#2 - (word) point_init::abs16s2_$3#0 ? ((word)) (signed word) point_init::abs16s2_$2#0 - (word) point_init::abs16s2_return#0 ? (word) point_init::abs16s2_$3#0 + (signed word) point_init::y_diff#12 ← phi( point_init::abs16s2/(signed word) point_init::y_diff#14 ) + (signed word) rem16s#35 ← phi( point_init::abs16s2/(signed word) rem16s#38 ) + (word) rem16u#47 ← phi( point_init::abs16s2/(word) rem16u#52 ) + (byte) point_init::point_idx1#8 ← phi( point_init::abs16s2/(byte) point_init::point_idx1#11 ) + (byte) point_init::point_idx#10 ← phi( point_init::abs16s2/(byte) point_init::point_idx#12 ) + (signed word) point_init::x_diff#7 ← phi( point_init::abs16s2/(signed word) point_init::x_diff#9 ) + (signed word) point_init::abs16s2_w#2 ← phi( point_init::abs16s2/(signed word) point_init::abs16s2_w#1 ) + (signed word) point_init::abs16s2_$2#0 ← - (signed word) point_init::abs16s2_w#2 + (word) point_init::abs16s2_$3#0 ← ((word)) (signed word) point_init::abs16s2_$2#0 + (word) point_init::abs16s2_return#0 ← (word) point_init::abs16s2_$3#0 to:point_init::abs16s2_@return point_init::abs16s2_@3: scope:[point_init] from point_init::abs16s2 - (signed word) point_init::y_diff#13 ? phi( point_init::abs16s2/(signed word) point_init::y_diff#14 ) - (signed word) rem16s#36 ? phi( point_init::abs16s2/(signed word) rem16s#38 ) - (word) rem16u#48 ? phi( point_init::abs16s2/(word) rem16u#52 ) - (byte) point_init::point_idx1#9 ? phi( point_init::abs16s2/(byte) point_init::point_idx1#11 ) - (byte) point_init::point_idx#11 ? phi( point_init::abs16s2/(byte) point_init::point_idx#12 ) - (signed word) point_init::x_diff#8 ? phi( point_init::abs16s2/(signed word) point_init::x_diff#9 ) - (signed word) point_init::abs16s2_w#3 ? phi( point_init::abs16s2/(signed word) point_init::abs16s2_w#1 ) - (word) point_init::abs16s2_$1#0 ? ((word)) (signed word) point_init::abs16s2_w#3 - (word) point_init::abs16s2_return#1 ? (word) point_init::abs16s2_$1#0 + (signed word) point_init::y_diff#13 ← phi( point_init::abs16s2/(signed word) point_init::y_diff#14 ) + (signed word) rem16s#36 ← phi( point_init::abs16s2/(signed word) rem16s#38 ) + (word) rem16u#48 ← phi( point_init::abs16s2/(word) rem16u#52 ) + (byte) point_init::point_idx1#9 ← phi( point_init::abs16s2/(byte) point_init::point_idx1#11 ) + (byte) point_init::point_idx#11 ← phi( point_init::abs16s2/(byte) point_init::point_idx#12 ) + (signed word) point_init::x_diff#8 ← phi( point_init::abs16s2/(signed word) point_init::x_diff#9 ) + (signed word) point_init::abs16s2_w#3 ← phi( point_init::abs16s2/(signed word) point_init::abs16s2_w#1 ) + (word) point_init::abs16s2_$1#0 ← ((word)) (signed word) point_init::abs16s2_w#3 + (word) point_init::abs16s2_return#1 ← (word) point_init::abs16s2_$1#0 to:point_init::abs16s2_@return point_init::abs16s2_@return: scope:[point_init] from point_init::abs16s2_@1 point_init::abs16s2_@3 - (signed word) point_init::y_diff#11 ? phi( point_init::abs16s2_@1/(signed word) point_init::y_diff#12 point_init::abs16s2_@3/(signed word) point_init::y_diff#13 ) - (signed word) rem16s#29 ? phi( point_init::abs16s2_@1/(signed word) rem16s#35 point_init::abs16s2_@3/(signed word) rem16s#36 ) - (word) rem16u#38 ? phi( point_init::abs16s2_@1/(word) rem16u#47 point_init::abs16s2_@3/(word) rem16u#48 ) - (byte) point_init::point_idx1#5 ? phi( point_init::abs16s2_@1/(byte) point_init::point_idx1#8 point_init::abs16s2_@3/(byte) point_init::point_idx1#9 ) - (byte) point_init::point_idx#8 ? phi( point_init::abs16s2_@1/(byte) point_init::point_idx#10 point_init::abs16s2_@3/(byte) point_init::point_idx#11 ) - (signed word) point_init::x_diff#6 ? phi( point_init::abs16s2_@1/(signed word) point_init::x_diff#7 point_init::abs16s2_@3/(signed word) point_init::x_diff#8 ) - (word) point_init::abs16s2_return#3 ? phi( point_init::abs16s2_@1/(word) point_init::abs16s2_return#0 point_init::abs16s2_@3/(word) point_init::abs16s2_return#1 ) - (word) point_init::abs16s2_return#2 ? (word) point_init::abs16s2_return#3 + (signed word) point_init::y_diff#11 ← phi( point_init::abs16s2_@1/(signed word) point_init::y_diff#12 point_init::abs16s2_@3/(signed word) point_init::y_diff#13 ) + (signed word) rem16s#29 ← phi( point_init::abs16s2_@1/(signed word) rem16s#35 point_init::abs16s2_@3/(signed word) rem16s#36 ) + (word) rem16u#38 ← phi( point_init::abs16s2_@1/(word) rem16u#47 point_init::abs16s2_@3/(word) rem16u#48 ) + (byte) point_init::point_idx1#5 ← phi( point_init::abs16s2_@1/(byte) point_init::point_idx1#8 point_init::abs16s2_@3/(byte) point_init::point_idx1#9 ) + (byte) point_init::point_idx#8 ← phi( point_init::abs16s2_@1/(byte) point_init::point_idx#10 point_init::abs16s2_@3/(byte) point_init::point_idx#11 ) + (signed word) point_init::x_diff#6 ← phi( point_init::abs16s2_@1/(signed word) point_init::x_diff#7 point_init::abs16s2_@3/(signed word) point_init::x_diff#8 ) + (word) point_init::abs16s2_return#3 ← phi( point_init::abs16s2_@1/(word) point_init::abs16s2_return#0 point_init::abs16s2_@3/(word) point_init::abs16s2_return#1 ) + (word) point_init::abs16s2_return#2 ← (word) point_init::abs16s2_return#3 to:point_init::@10 point_init::@10: scope:[point_init] from point_init::abs16s2_@return - (signed word) point_init::y_diff#10 ? phi( point_init::abs16s2_@return/(signed word) point_init::y_diff#11 ) - (signed word) rem16s#23 ? phi( point_init::abs16s2_@return/(signed word) rem16s#29 ) - (word) rem16u#31 ? phi( point_init::abs16s2_@return/(word) rem16u#38 ) - (byte) point_init::point_idx1#3 ? phi( point_init::abs16s2_@return/(byte) point_init::point_idx1#5 ) - (byte) point_init::point_idx#5 ? phi( point_init::abs16s2_@return/(byte) point_init::point_idx#8 ) - (signed word) point_init::x_diff#3 ? phi( point_init::abs16s2_@return/(signed word) point_init::x_diff#6 ) - (word) point_init::abs16s2_return#4 ? phi( point_init::abs16s2_@return/(word) point_init::abs16s2_return#2 ) - (word~) point_init::$8 ? (word) point_init::abs16s2_return#4 - (bool~) point_init::$9 ? (word~) point_init::$7 > (word~) point_init::$8 + (signed word) point_init::y_diff#10 ← phi( point_init::abs16s2_@return/(signed word) point_init::y_diff#11 ) + (signed word) rem16s#23 ← phi( point_init::abs16s2_@return/(signed word) rem16s#29 ) + (word) rem16u#31 ← phi( point_init::abs16s2_@return/(word) rem16u#38 ) + (byte) point_init::point_idx1#3 ← phi( point_init::abs16s2_@return/(byte) point_init::point_idx1#5 ) + (byte) point_init::point_idx#5 ← phi( point_init::abs16s2_@return/(byte) point_init::point_idx#8 ) + (signed word) point_init::x_diff#3 ← phi( point_init::abs16s2_@return/(signed word) point_init::x_diff#6 ) + (word) point_init::abs16s2_return#4 ← phi( point_init::abs16s2_@return/(word) point_init::abs16s2_return#2 ) + (word~) point_init::$8 ← (word) point_init::abs16s2_return#4 + (bool~) point_init::$9 ← (word~) point_init::$7 > (word~) point_init::$8 if((bool~) point_init::$9) goto point_init::@1 to:point_init::@2 point_init::@1: scope:[point_init] from point_init::@10 - (byte) point_init::point_idx1#10 ? phi( point_init::@10/(byte) point_init::point_idx1#3 ) - (signed word) rem16s#30 ? phi( point_init::@10/(signed word) rem16s#23 ) - (word) rem16u#39 ? phi( point_init::@10/(word) rem16u#31 ) - (signed word) point_init::y_diff#8 ? phi( point_init::@10/(signed word) point_init::y_diff#10 ) - (byte) point_init::point_idx#7 ? phi( point_init::@10/(byte) point_init::point_idx#5 ) - (signed word) point_init::x_diff#1 ? phi( point_init::@10/(signed word) point_init::x_diff#3 ) - (bool~) point_init::$13 ? (signed word) point_init::x_diff#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) point_init::point_idx1#10 ← phi( point_init::@10/(byte) point_init::point_idx1#3 ) + (signed word) rem16s#30 ← phi( point_init::@10/(signed word) rem16s#23 ) + (word) rem16u#39 ← phi( point_init::@10/(word) rem16u#31 ) + (signed word) point_init::y_diff#8 ← phi( point_init::@10/(signed word) point_init::y_diff#10 ) + (byte) point_init::point_idx#7 ← phi( point_init::@10/(byte) point_init::point_idx#5 ) + (signed word) point_init::x_diff#1 ← phi( point_init::@10/(signed word) point_init::x_diff#3 ) + (bool~) point_init::$13 ← (signed word) point_init::x_diff#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) point_init::$13) goto point_init::@7 to:point_init::@5 point_init::@2: scope:[point_init] from point_init::@10 point_init::@11 - (signed word) rem16s#18 ? phi( point_init::@10/(signed word) rem16s#23 point_init::@11/(signed word) rem16s#6 ) - (word) rem16u#24 ? phi( point_init::@10/(word) rem16u#31 point_init::@11/(word) rem16u#7 ) - (byte) point_init::point_idx1#1 ? phi( point_init::@10/(byte) point_init::point_idx1#3 point_init::@11/(byte) point_init::point_idx1#2 ) - (byte) point_init::point_idx#2 ? phi( point_init::@10/(byte) point_init::point_idx#5 point_init::@11/(byte) point_init::point_idx#6 ) - (word~) point_init::$10 ? *((word[4]) x_start#0 + (byte) point_init::point_idx#2) << (byte/signed byte/word/signed word/dword/signed dword) 4 - *((word[4]) x_cur#0 + (byte) point_init::point_idx#2) ? (word~) point_init::$10 - (word~) point_init::$11 ? ((word)) *((byte[4]) y_start#0 + (byte) point_init::point_idx1#1) - (word~) point_init::$12 ? (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 - *((word[4]) y_cur#0 + (byte) point_init::point_idx#2) ? (word~) point_init::$12 - *((byte[4]) delay#0 + (byte) point_init::point_idx1#1) ? (byte) DELAY#0 + (signed word) rem16s#18 ← phi( point_init::@10/(signed word) rem16s#23 point_init::@11/(signed word) rem16s#6 ) + (word) rem16u#24 ← phi( point_init::@10/(word) rem16u#31 point_init::@11/(word) rem16u#7 ) + (byte) point_init::point_idx1#1 ← phi( point_init::@10/(byte) point_init::point_idx1#3 point_init::@11/(byte) point_init::point_idx1#2 ) + (byte) point_init::point_idx#2 ← phi( point_init::@10/(byte) point_init::point_idx#5 point_init::@11/(byte) point_init::point_idx#6 ) + (word~) point_init::$10 ← *((word[4]) x_start#0 + (byte) point_init::point_idx#2) << (byte/signed byte/word/signed word/dword/signed dword) 4 + *((word[4]) x_cur#0 + (byte) point_init::point_idx#2) ← (word~) point_init::$10 + (word~) point_init::$11 ← ((word)) *((byte[4]) y_start#0 + (byte) point_init::point_idx1#1) + (word~) point_init::$12 ← (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 + *((word[4]) y_cur#0 + (byte) point_init::point_idx#2) ← (word~) point_init::$12 + *((byte[4]) delay#0 + (byte) point_init::point_idx1#1) ← (byte) DELAY#0 to:point_init::@return point_init::@7: scope:[point_init] from point_init::@1 - (byte) point_init::point_idx1#7 ? phi( point_init::@1/(byte) point_init::point_idx1#10 ) - (signed word) rem16s#25 ? phi( point_init::@1/(signed word) rem16s#30 ) - (word) rem16u#33 ? phi( point_init::@1/(word) rem16u#39 ) - (signed word) point_init::y_diff#5 ? phi( point_init::@1/(signed word) point_init::y_diff#8 ) - (signed word) point_init::x_diff#5 ? phi( point_init::@1/(signed word) point_init::x_diff#1 ) - (byte) point_init::point_idx#3 ? phi( point_init::@1/(byte) point_init::point_idx#7 ) - (signed byte/signed word/signed dword~) point_init::$14 ? - (byte/signed byte/word/signed word/dword/signed dword) $10 - *((signed byte[4]) x_add#0 + (byte) point_init::point_idx#3) ? (signed byte/signed word/signed dword~) point_init::$14 + (byte) point_init::point_idx1#7 ← phi( point_init::@1/(byte) point_init::point_idx1#10 ) + (signed word) rem16s#25 ← phi( point_init::@1/(signed word) rem16s#30 ) + (word) rem16u#33 ← phi( point_init::@1/(word) rem16u#39 ) + (signed word) point_init::y_diff#5 ← phi( point_init::@1/(signed word) point_init::y_diff#8 ) + (signed word) point_init::x_diff#5 ← phi( point_init::@1/(signed word) point_init::x_diff#1 ) + (byte) point_init::point_idx#3 ← phi( point_init::@1/(byte) point_init::point_idx#7 ) + (signed byte/signed word/signed dword~) point_init::$14 ← - (byte/signed byte/word/signed word/dword/signed dword) $10 + *((signed byte[4]) x_add#0 + (byte) point_init::point_idx#3) ← (signed byte/signed word/signed dword~) point_init::$14 to:point_init::@8 point_init::@5: scope:[point_init] from point_init::@1 - (byte) point_init::point_idx1#6 ? phi( point_init::@1/(byte) point_init::point_idx1#10 ) - (signed word) rem16s#24 ? phi( point_init::@1/(signed word) rem16s#30 ) - (word) rem16u#32 ? phi( point_init::@1/(word) rem16u#39 ) - (signed word) point_init::y_diff#4 ? phi( point_init::@1/(signed word) point_init::y_diff#8 ) - (signed word) point_init::x_diff#4 ? phi( point_init::@1/(signed word) point_init::x_diff#1 ) - (byte) point_init::point_idx#4 ? phi( point_init::@1/(byte) point_init::point_idx#7 ) - *((signed byte[4]) x_add#0 + (byte) point_init::point_idx#4) ? (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) point_init::point_idx1#6 ← phi( point_init::@1/(byte) point_init::point_idx1#10 ) + (signed word) rem16s#24 ← phi( point_init::@1/(signed word) rem16s#30 ) + (word) rem16u#32 ← phi( point_init::@1/(word) rem16u#39 ) + (signed word) point_init::y_diff#4 ← phi( point_init::@1/(signed word) point_init::y_diff#8 ) + (signed word) point_init::x_diff#4 ← phi( point_init::@1/(signed word) point_init::x_diff#1 ) + (byte) point_init::point_idx#4 ← phi( point_init::@1/(byte) point_init::point_idx#7 ) + *((signed byte[4]) x_add#0 + (byte) point_init::point_idx#4) ← (byte/signed byte/word/signed word/dword/signed dword) $10 to:point_init::@8 point_init::@8: scope:[point_init] from point_init::@5 point_init::@7 - (byte) point_init::point_idx#9 ? phi( point_init::@5/(byte) point_init::point_idx#4 point_init::@7/(byte) point_init::point_idx#3 ) - (byte) point_init::point_idx1#4 ? phi( point_init::@5/(byte) point_init::point_idx1#6 point_init::@7/(byte) point_init::point_idx1#7 ) - (signed word) rem16s#17 ? phi( point_init::@5/(signed word) rem16s#24 point_init::@7/(signed word) rem16s#25 ) - (word) rem16u#23 ? phi( point_init::@5/(word) rem16u#32 point_init::@7/(word) rem16u#33 ) - (signed word) point_init::y_diff#2 ? phi( point_init::@5/(signed word) point_init::y_diff#4 point_init::@7/(signed word) point_init::y_diff#5 ) - (signed word) point_init::x_diff#2 ? phi( point_init::@5/(signed word) point_init::x_diff#4 point_init::@7/(signed word) point_init::x_diff#5 ) - (signed word) divr16s::dividend#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (signed word) divr16s::divisor#0 ? (signed word) point_init::x_diff#2 - (signed word) divr16s::rem#0 ? (signed word) point_init::y_diff#2 + (byte) point_init::point_idx#9 ← phi( point_init::@5/(byte) point_init::point_idx#4 point_init::@7/(byte) point_init::point_idx#3 ) + (byte) point_init::point_idx1#4 ← phi( point_init::@5/(byte) point_init::point_idx1#6 point_init::@7/(byte) point_init::point_idx1#7 ) + (signed word) rem16s#17 ← phi( point_init::@5/(signed word) rem16s#24 point_init::@7/(signed word) rem16s#25 ) + (word) rem16u#23 ← phi( point_init::@5/(word) rem16u#32 point_init::@7/(word) rem16u#33 ) + (signed word) point_init::y_diff#2 ← phi( point_init::@5/(signed word) point_init::y_diff#4 point_init::@7/(signed word) point_init::y_diff#5 ) + (signed word) point_init::x_diff#2 ← phi( point_init::@5/(signed word) point_init::x_diff#4 point_init::@7/(signed word) point_init::x_diff#5 ) + (signed word) divr16s::dividend#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) divr16s::divisor#0 ← (signed word) point_init::x_diff#2 + (signed word) divr16s::rem#0 ← (signed word) point_init::y_diff#2 call divr16s - (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 to:point_init::@11 point_init::@11: scope:[point_init] from point_init::@8 - (byte) point_init::point_idx#6 ? phi( point_init::@8/(byte) point_init::point_idx#9 ) - (byte) point_init::point_idx1#2 ? phi( point_init::@8/(byte) point_init::point_idx1#4 ) - (signed word) rem16s#12 ? phi( point_init::@8/(signed word) rem16s#3 ) - (word) rem16u#17 ? phi( point_init::@8/(word) rem16u#4 ) - (signed word) divr16s::return#5 ? phi( point_init::@8/(signed word) divr16s::return#3 ) - (signed word~) point_init::$15 ? (signed word) divr16s::return#5 - (word) rem16u#7 ? (word) rem16u#17 - (signed word) rem16s#6 ? (signed word) rem16s#12 - (signed word) point_init::x_stepf#0 ? (signed word~) point_init::$15 - (byte~) point_init::$16 ? > (signed word) point_init::x_stepf#0 - (byte~) point_init::$17 ? (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (signed byte~) point_init::$18 ? ((signed byte)) (byte~) point_init::$17 - *((signed byte[4]) y_add#0 + (byte) point_init::point_idx1#2) ? (signed byte~) point_init::$18 + (byte) point_init::point_idx#6 ← phi( point_init::@8/(byte) point_init::point_idx#9 ) + (byte) point_init::point_idx1#2 ← phi( point_init::@8/(byte) point_init::point_idx1#4 ) + (signed word) rem16s#12 ← phi( point_init::@8/(signed word) rem16s#3 ) + (word) rem16u#17 ← phi( point_init::@8/(word) rem16u#4 ) + (signed word) divr16s::return#5 ← phi( point_init::@8/(signed word) divr16s::return#3 ) + (signed word~) point_init::$15 ← (signed word) divr16s::return#5 + (word) rem16u#7 ← (word) rem16u#17 + (signed word) rem16s#6 ← (signed word) rem16s#12 + (signed word) point_init::x_stepf#0 ← (signed word~) point_init::$15 + (byte~) point_init::$16 ← > (signed word) point_init::x_stepf#0 + (byte~) point_init::$17 ← (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (signed byte~) point_init::$18 ← ((signed byte)) (byte~) point_init::$17 + *((signed byte[4]) y_add#0 + (byte) point_init::point_idx1#2) ← (signed byte~) point_init::$18 to:point_init::@2 point_init::@return: scope:[point_init] from point_init::@2 - (signed word) rem16s#13 ? phi( point_init::@2/(signed word) rem16s#18 ) - (word) rem16u#18 ? phi( point_init::@2/(word) rem16u#24 ) - (word) rem16u#8 ? (word) rem16u#18 - (signed word) rem16s#7 ? (signed word) rem16s#13 + (signed word) rem16s#13 ← phi( point_init::@2/(signed word) rem16s#18 ) + (word) rem16u#18 ← phi( point_init::@2/(word) rem16u#24 ) + (word) rem16u#8 ← (word) rem16u#18 + (signed word) rem16s#7 ← (signed word) rem16s#13 return to:@return screen_fill: scope:[screen_fill] from main::@18 - (byte*) screen_fill::screen#4 ? phi( main::@18/(byte*) screen_fill::screen#0 ) - (byte) screen_fill::ch#3 ? phi( main::@18/(byte) screen_fill::ch#0 ) - (byte) screen_fill::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) screen_fill::screen#4 ← phi( main::@18/(byte*) screen_fill::screen#0 ) + (byte) screen_fill::ch#3 ← phi( main::@18/(byte) screen_fill::ch#0 ) + (byte) screen_fill::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:screen_fill::@1 screen_fill::@1: scope:[screen_fill] from screen_fill screen_fill::@3 - (byte) screen_fill::y#4 ? phi( screen_fill/(byte) screen_fill::y#0 screen_fill::@3/(byte) screen_fill::y#1 ) - (byte*) screen_fill::screen#3 ? phi( screen_fill/(byte*) screen_fill::screen#4 screen_fill::@3/(byte*) screen_fill::screen#5 ) - (byte) screen_fill::ch#2 ? phi( screen_fill/(byte) screen_fill::ch#3 screen_fill::@3/(byte) screen_fill::ch#4 ) - (byte) screen_fill::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) screen_fill::y#4 ← phi( screen_fill/(byte) screen_fill::y#0 screen_fill::@3/(byte) screen_fill::y#1 ) + (byte*) screen_fill::screen#3 ← phi( screen_fill/(byte*) screen_fill::screen#4 screen_fill::@3/(byte*) screen_fill::screen#5 ) + (byte) screen_fill::ch#2 ← phi( screen_fill/(byte) screen_fill::ch#3 screen_fill::@3/(byte) screen_fill::ch#4 ) + (byte) screen_fill::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:screen_fill::@2 screen_fill::@2: scope:[screen_fill] from screen_fill::@1 screen_fill::@2 - (byte) screen_fill::y#3 ? phi( screen_fill::@1/(byte) screen_fill::y#4 screen_fill::@2/(byte) screen_fill::y#3 ) - (byte) screen_fill::x#2 ? phi( screen_fill::@1/(byte) screen_fill::x#0 screen_fill::@2/(byte) screen_fill::x#1 ) - (byte*) screen_fill::screen#2 ? phi( screen_fill::@1/(byte*) screen_fill::screen#3 screen_fill::@2/(byte*) screen_fill::screen#1 ) - (byte) screen_fill::ch#1 ? phi( screen_fill::@1/(byte) screen_fill::ch#2 screen_fill::@2/(byte) screen_fill::ch#1 ) - *((byte*) screen_fill::screen#2) ? (byte) screen_fill::ch#1 - (byte*) screen_fill::screen#1 ? ++ (byte*) screen_fill::screen#2 - (byte) screen_fill::x#1 ? (byte) screen_fill::x#2 + rangenext(0,$27) - (bool~) screen_fill::$0 ? (byte) screen_fill::x#1 != rangelast(0,$27) + (byte) screen_fill::y#3 ← phi( screen_fill::@1/(byte) screen_fill::y#4 screen_fill::@2/(byte) screen_fill::y#3 ) + (byte) screen_fill::x#2 ← phi( screen_fill::@1/(byte) screen_fill::x#0 screen_fill::@2/(byte) screen_fill::x#1 ) + (byte*) screen_fill::screen#2 ← phi( screen_fill::@1/(byte*) screen_fill::screen#3 screen_fill::@2/(byte*) screen_fill::screen#1 ) + (byte) screen_fill::ch#1 ← phi( screen_fill::@1/(byte) screen_fill::ch#2 screen_fill::@2/(byte) screen_fill::ch#1 ) + *((byte*) screen_fill::screen#2) ← (byte) screen_fill::ch#1 + (byte*) screen_fill::screen#1 ← ++ (byte*) screen_fill::screen#2 + (byte) screen_fill::x#1 ← (byte) screen_fill::x#2 + rangenext(0,$27) + (bool~) screen_fill::$0 ← (byte) screen_fill::x#1 != rangelast(0,$27) if((bool~) screen_fill::$0) goto screen_fill::@2 to:screen_fill::@3 screen_fill::@3: scope:[screen_fill] from screen_fill::@2 - (byte*) screen_fill::screen#5 ? phi( screen_fill::@2/(byte*) screen_fill::screen#1 ) - (byte) screen_fill::ch#4 ? phi( screen_fill::@2/(byte) screen_fill::ch#1 ) - (byte) screen_fill::y#2 ? phi( screen_fill::@2/(byte) screen_fill::y#3 ) - (byte) screen_fill::y#1 ? (byte) screen_fill::y#2 + rangenext(0,$18) - (bool~) screen_fill::$1 ? (byte) screen_fill::y#1 != rangelast(0,$18) + (byte*) screen_fill::screen#5 ← phi( screen_fill::@2/(byte*) screen_fill::screen#1 ) + (byte) screen_fill::ch#4 ← phi( screen_fill::@2/(byte) screen_fill::ch#1 ) + (byte) screen_fill::y#2 ← phi( screen_fill::@2/(byte) screen_fill::y#3 ) + (byte) screen_fill::y#1 ← (byte) screen_fill::y#2 + rangenext(0,$18) + (bool~) screen_fill::$1 ← (byte) screen_fill::y#1 != rangelast(0,$18) if((bool~) screen_fill::$1) goto screen_fill::@1 to:screen_fill::@return screen_fill::@return: scope:[screen_fill] from screen_fill::@3 return to:@return @16: scope:[] from @12 - (signed word) rem16s#26 ? phi( @12/(signed word) rem16s#31 ) - (word) rem16u#34 ? phi( @12/(word) rem16u#40 ) - (byte[$100]) bitmap_plot_ylo#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_yhi#0 ? { fill( $100, 0) } - (byte[$100]) bitmap_plot_bit#0 ? { fill( $100, 0) } + (signed word) rem16s#26 ← phi( @12/(signed word) rem16s#31 ) + (word) rem16u#34 ← phi( @12/(word) rem16u#40 ) + (byte[$100]) bitmap_plot_ylo#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_yhi#0 ← { fill( $100, 0) } + (byte[$100]) bitmap_plot_bit#0 ← { fill( $100, 0) } to:@19 bitmap_init: scope:[bitmap_init] from main::@16 - (byte*) bitmap_init::bitmap#5 ? phi( main::@16/(byte*) bitmap_init::bitmap#0 ) - (byte) bitmap_init::bits#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) bitmap_init::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::bitmap#5 ← phi( main::@16/(byte*) bitmap_init::bitmap#0 ) + (byte) bitmap_init::bits#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) bitmap_init::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - (byte*) bitmap_init::bitmap#3 ? phi( bitmap_init/(byte*) bitmap_init::bitmap#5 bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) - (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) bitmap_init::$0 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) bitmap_init::$1 ? ! (bool~) bitmap_init::$0 + (byte*) bitmap_init::bitmap#3 ← phi( bitmap_init/(byte*) bitmap_init::bitmap#5 bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) + (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte) bitmap_init::x#0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte) bitmap_init::bits#0 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + *((byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) bitmap_init::$0 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) bitmap_init::$1 ← ! (bool~) bitmap_init::$0 if((bool~) bitmap_init::$1) goto bitmap_init::@2 to:bitmap_init::@3 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@3 - (byte*) bitmap_init::bitmap#2 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) - (byte) bitmap_init::bits#4 ? phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) - (byte) bitmap_init::x#3 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) - (byte) bitmap_init::x#1 ? (byte) bitmap_init::x#3 + rangenext(0,$ff) - (bool~) bitmap_init::$2 ? (byte) bitmap_init::x#1 != rangelast(0,$ff) + (byte*) bitmap_init::bitmap#2 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 bitmap_init::@3/(byte*) bitmap_init::bitmap#4 ) + (byte) bitmap_init::bits#4 ← phi( bitmap_init::@1/(byte) bitmap_init::bits#1 bitmap_init::@3/(byte) bitmap_init::bits#2 ) + (byte) bitmap_init::x#3 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 bitmap_init::@3/(byte) bitmap_init::x#4 ) + (byte) bitmap_init::x#1 ← (byte) bitmap_init::x#3 + rangenext(0,$ff) + (bool~) bitmap_init::$2 ← (byte) bitmap_init::x#1 != rangelast(0,$ff) if((bool~) bitmap_init::$2) goto bitmap_init::@1 to:bitmap_init::@4 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@1 - (byte*) bitmap_init::bitmap#4 ? phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 ) - (byte) bitmap_init::x#4 ? phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) - (byte) bitmap_init::bits#2 ? (byte/word/signed word/dword/signed dword) $80 + (byte*) bitmap_init::bitmap#4 ← phi( bitmap_init::@1/(byte*) bitmap_init::bitmap#3 ) + (byte) bitmap_init::x#4 ← phi( bitmap_init::@1/(byte) bitmap_init::x#2 ) + (byte) bitmap_init::bits#2 ← (byte/word/signed word/dword/signed dword) $80 to:bitmap_init::@2 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@2 - (byte*) bitmap_init::bitmap#1 ? phi( bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) - (byte*) bitmap_init::yoffs#0 ? (byte*) bitmap_init::bitmap#1 - (byte) bitmap_init::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_init::bitmap#1 ← phi( bitmap_init::@2/(byte*) bitmap_init::bitmap#2 ) + (byte*) bitmap_init::yoffs#0 ← (byte*) bitmap_init::bitmap#1 + (byte) bitmap_init::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@4 bitmap_init::@6 - (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) - (byte) bitmap_init::y#2 ? phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) - (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 - (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 - *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 - (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 - *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 - (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$8 ? (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) bitmap_init::$9 ? ! (bool~) bitmap_init::$8 + (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@4/(byte*) bitmap_init::yoffs#0 bitmap_init::@6/(byte*) bitmap_init::yoffs#4 ) + (byte) bitmap_init::y#2 ← phi( bitmap_init::@4/(byte) bitmap_init::y#0 bitmap_init::@6/(byte) bitmap_init::y#1 ) + (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 + (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 + *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 + (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 + *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 + (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$8 ← (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) bitmap_init::$9 ← ! (bool~) bitmap_init::$8 if((bool~) bitmap_init::$9) goto bitmap_init::@6 to:bitmap_init::@7 bitmap_init::@6: scope:[bitmap_init] from bitmap_init::@5 bitmap_init::@7 - (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) - (byte) bitmap_init::y#3 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) - (byte) bitmap_init::y#1 ? (byte) bitmap_init::y#3 + rangenext(0,$ff) - (bool~) bitmap_init::$12 ? (byte) bitmap_init::y#1 != rangelast(0,$ff) + (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 bitmap_init::@7/(byte*) bitmap_init::yoffs#1 ) + (byte) bitmap_init::y#3 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 bitmap_init::@7/(byte) bitmap_init::y#4 ) + (byte) bitmap_init::y#1 ← (byte) bitmap_init::y#3 + rangenext(0,$ff) + (bool~) bitmap_init::$12 ← (byte) bitmap_init::y#1 != rangelast(0,$ff) if((bool~) bitmap_init::$12) goto bitmap_init::@5 to:bitmap_init::@return bitmap_init::@7: scope:[bitmap_init] from bitmap_init::@5 - (byte) bitmap_init::y#4 ? phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) - (byte*) bitmap_init::yoffs#3 ? phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) - (word/signed word/dword/signed dword~) bitmap_init::$10 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*~) bitmap_init::$11 ? (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$10 - (byte*) bitmap_init::yoffs#1 ? (byte*~) bitmap_init::$11 + (byte) bitmap_init::y#4 ← phi( bitmap_init::@5/(byte) bitmap_init::y#2 ) + (byte*) bitmap_init::yoffs#3 ← phi( bitmap_init::@5/(byte*) bitmap_init::yoffs#2 ) + (word/signed word/dword/signed dword~) bitmap_init::$10 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*~) bitmap_init::$11 ← (byte*) bitmap_init::yoffs#3 + (word/signed word/dword/signed dword~) bitmap_init::$10 + (byte*) bitmap_init::yoffs#1 ← (byte*~) bitmap_init::$11 to:bitmap_init::@6 bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@6 return to:@return bitmap_clear: scope:[bitmap_clear] from main::@17 - (byte*~) bitmap_clear::$0 ? ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_ylo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } - (byte*) bitmap_clear::bitmap#0 ? (byte*~) bitmap_clear::$0 - (byte) bitmap_clear::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) bitmap_clear::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte/signed byte/word/signed word/dword/signed dword) 0), *((byte[$100]) bitmap_plot_ylo#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) } + (byte*) bitmap_clear::bitmap#0 ← (byte*~) bitmap_clear::$0 + (byte) bitmap_clear::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) - (byte) bitmap_clear::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte) bitmap_clear::y#0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*) bitmap_clear::bitmap#0 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#4 ) + (byte) bitmap_clear::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - (byte) bitmap_clear::y#3 ? phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - (byte) bitmap_clear::x#1 ? (byte) bitmap_clear::x#2 + rangenext(0,$c7) - (bool~) bitmap_clear::$1 ? (byte) bitmap_clear::x#1 != rangelast(0,$c7) + (byte) bitmap_clear::y#3 ← phi( bitmap_clear::@1/(byte) bitmap_clear::y#4 bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte) bitmap_clear::x#0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + (byte) bitmap_clear::x#1 ← (byte) bitmap_clear::x#2 + rangenext(0,$c7) + (bool~) bitmap_clear::$1 ← (byte) bitmap_clear::x#1 != rangelast(0,$c7) if((bool~) bitmap_clear::$1) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - (byte*) bitmap_clear::bitmap#4 ? phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - (byte) bitmap_clear::y#2 ? phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) - (byte) bitmap_clear::y#1 ? (byte) bitmap_clear::y#2 + rangenext(0,$27) - (bool~) bitmap_clear::$2 ? (byte) bitmap_clear::y#1 != rangelast(0,$27) + (byte*) bitmap_clear::bitmap#4 ← phi( bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + (byte) bitmap_clear::y#2 ← phi( bitmap_clear::@2/(byte) bitmap_clear::y#3 ) + (byte) bitmap_clear::y#1 ← (byte) bitmap_clear::y#2 + rangenext(0,$27) + (bool~) bitmap_clear::$2 ← (byte) bitmap_clear::y#1 != rangelast(0,$27) if((bool~) bitmap_clear::$2) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 return to:@return bitmap_plot: scope:[bitmap_plot] from main::@20 - (word) bitmap_plot::x#1 ? phi( main::@20/(word) bitmap_plot::x#0 ) - (byte) bitmap_plot::y#1 ? phi( main::@20/(byte) bitmap_plot::y#0 ) - (byte*~) bitmap_plot::$0 ? ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#1), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#1) } - (byte*) bitmap_plot::plotter#0 ? (byte*~) bitmap_plot::$0 - (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#1 & (word/dword/signed dword) $fff8 - (byte*) bitmap_plot::plotter#1 ? (byte*) bitmap_plot::plotter#0 + (word~) bitmap_plot::$1 - (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#1 - *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) + (word) bitmap_plot::x#1 ← phi( main::@20/(word) bitmap_plot::x#0 ) + (byte) bitmap_plot::y#1 ← phi( main::@20/(byte) bitmap_plot::y#0 ) + (byte*~) bitmap_plot::$0 ← ((byte*)) { *((byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#1), *((byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#1) } + (byte*) bitmap_plot::plotter#0 ← (byte*~) bitmap_plot::$0 + (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#1 & (word/dword/signed dword) $fff8 + (byte*) bitmap_plot::plotter#1 ← (byte*) bitmap_plot::plotter#0 + (word~) bitmap_plot::$1 + (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#1 + *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot return to:@return @19: scope:[] from @16 - (signed word) rem16s#19 ? phi( @16/(signed word) rem16s#26 ) - (word) rem16u#25 ? phi( @16/(word) rem16u#34 ) + (signed word) rem16s#19 ← phi( @16/(signed word) rem16s#26 ) + (word) rem16u#25 ← phi( @16/(word) rem16u#34 ) call main to:@20 @20: scope:[] from @19 - (signed word) rem16s#14 ? phi( @19/(signed word) rem16s#5 ) - (word) rem16u#19 ? phi( @19/(word) rem16u#6 ) - (word) rem16u#9 ? (word) rem16u#19 - (signed word) rem16s#8 ? (signed word) rem16s#14 + (signed word) rem16s#14 ← phi( @19/(signed word) rem16s#5 ) + (word) rem16u#19 ← phi( @19/(word) rem16u#6 ) + (word) rem16u#9 ← (word) rem16u#19 + (signed word) rem16s#8 ← (signed word) rem16s#14 to:@end @end: scope:[] from @20 @@ -1677,10 +1677,10 @@ SYMBOL TABLE SSA (byte[4]) y_start (byte[4]) y_start#0 -Inversing boolean not [90] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [89] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [98] (bool~) divr16u::$9 ? (word) divr16u::rem#5 < (word) divr16u::divisor#1 from [97] (bool~) divr16u::$8 ? (word) divr16u::rem#5 >= (word) divr16u::divisor#1 -Inversing boolean not [382] (bool~) bitmap_init::$1 ? (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [381] (bool~) bitmap_init::$0 ? (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [402] (bool~) bitmap_init::$9 ? (byte~) bitmap_init::$7 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [401] (bool~) bitmap_init::$8 ? (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [90] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [89] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [98] (bool~) divr16u::$9 ← (word) divr16u::rem#5 < (word) divr16u::divisor#1 from [97] (bool~) divr16u::$8 ← (word) divr16u::rem#5 >= (word) divr16u::divisor#1 +Inversing boolean not [382] (bool~) bitmap_init::$1 ← (byte) bitmap_init::bits#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [381] (bool~) bitmap_init::$0 ← (byte) bitmap_init::bits#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [402] (bool~) bitmap_init::$9 ← (byte~) bitmap_init::$7 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [401] (bool~) bitmap_init::$8 ← (byte~) bitmap_init::$7 == (byte/signed byte/word/signed word/dword/signed dword) 7 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#6 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#7 @@ -1872,7 +1872,7 @@ Simple Condition (bool~) bitmap_init::$12 [407] if((byte) bitmap_init::y#1!=rang Simple Condition (bool~) bitmap_clear::$1 [423] if((byte) bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 Simple Condition (bool~) bitmap_clear::$2 [427] if((byte) bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 Successful SSA optimization Pass2ConditionalJumpSimplification -Rewriting || if()-condition to two if()s [128] (bool~) divr16s::$2 ? (bool~) divr16s::$0 || (bool~) divr16s::$1 +Rewriting || if()-condition to two if()s [128] (bool~) divr16s::$2 ← (bool~) divr16s::$0 || (bool~) divr16s::$1 Successful SSA optimization Pass2ConditionalAndOrRewriting Constant (const byte*) PROCPORT_DDR#0 = ((byte*))0 Constant (const byte) PROCPORT_DDR_MEMORY_MASK#0 = 7 @@ -2032,43 +2032,43 @@ Successful SSA optimization Pass2ConstantAdditionElimination if() condition always false - eliminating [18] if((const bool) divr16s::$0) goto divr16s::@1 if() condition always true - replacing block destination [64] if(true) goto main::@4 Successful SSA optimization Pass2ConstantIfs -Fixing inline constructor with bitmap_clear::$3 ? *(bitmap_plot_yhi#0+0) w= *(bitmap_plot_ylo#0+0) -Fixing inline constructor with bitmap_plot::$3 ? *(bitmap_plot_yhi#0 + bitmap_plot::y#0) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#0) +Fixing inline constructor with bitmap_clear::$3 ← *(bitmap_plot_yhi#0+0) w= *(bitmap_plot_ylo#0+0) +Fixing inline constructor with bitmap_plot::$3 ← *(bitmap_plot_yhi#0 + bitmap_plot::y#0) w= *(bitmap_plot_ylo#0 + bitmap_plot::y#0) Successful SSA optimization Pass2FixInlineConstructors Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (word) divr16s::remu#1 ? ((word)) (signed word~) divr16s::$10 -Eliminating Noop Cast (word) divr16s::remu#2 ? ((word)) (signed word) divr16s::rem#0 -Eliminating Noop Cast (word) divr16s::divisoru#1 ? ((word)) (signed word~) divr16s::$13 -Eliminating Noop Cast (word) divr16s::divisoru#2 ? ((word)) (signed word) divr16s::divisor#0 -Eliminating Noop Cast (signed word) rem16s#1 ? ((signed word)) (word) rem16u#1 -Eliminating Noop Cast (signed word) divr16s::return#0 ? ((signed word)) (word) divr16s::resultu#0 -Eliminating Noop Cast (signed word~) divr16s::$16 ? ((signed word)) (word) rem16u#1 -Eliminating Noop Cast (signed word~) divr16s::$18 ? ((signed word)) (word) divr16s::resultu#0 -Eliminating Noop Cast (signed word~) point_init::$1 ? ((signed word)) *((const word[4]) x_end#0 + (byte) point_init::point_idx#0) -Eliminating Noop Cast (signed word~) point_init::$2 ? ((signed word)) *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) -Eliminating Noop Cast (word) point_init::abs16s1_return#0 ? ((word)) (signed word) point_init::abs16s1_$2#0 -Eliminating Noop Cast (word) point_init::abs16s1_return#1 ? ((word)) (signed word) point_init::x_diff#1 -Eliminating Noop Cast (word) point_init::abs16s2_return#0 ? ((word)) (signed word) point_init::abs16s2_$2#0 -Eliminating Noop Cast (word) point_init::abs16s2_return#1 ? ((word)) (signed word) point_init::y_diff#0 -Eliminating Noop Cast (signed byte~) point_init::$18 ? ((signed byte)) (byte~) point_init::$17 -Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ? ((byte*)) (word~) bitmap_clear::$3 -Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ? ((byte*)) (word~) bitmap_plot::$3 +Eliminating Noop Cast (word) divr16s::remu#1 ← ((word)) (signed word~) divr16s::$10 +Eliminating Noop Cast (word) divr16s::remu#2 ← ((word)) (signed word) divr16s::rem#0 +Eliminating Noop Cast (word) divr16s::divisoru#1 ← ((word)) (signed word~) divr16s::$13 +Eliminating Noop Cast (word) divr16s::divisoru#2 ← ((word)) (signed word) divr16s::divisor#0 +Eliminating Noop Cast (signed word) rem16s#1 ← ((signed word)) (word) rem16u#1 +Eliminating Noop Cast (signed word) divr16s::return#0 ← ((signed word)) (word) divr16s::resultu#0 +Eliminating Noop Cast (signed word~) divr16s::$16 ← ((signed word)) (word) rem16u#1 +Eliminating Noop Cast (signed word~) divr16s::$18 ← ((signed word)) (word) divr16s::resultu#0 +Eliminating Noop Cast (signed word~) point_init::$1 ← ((signed word)) *((const word[4]) x_end#0 + (byte) point_init::point_idx#0) +Eliminating Noop Cast (signed word~) point_init::$2 ← ((signed word)) *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) +Eliminating Noop Cast (word) point_init::abs16s1_return#0 ← ((word)) (signed word) point_init::abs16s1_$2#0 +Eliminating Noop Cast (word) point_init::abs16s1_return#1 ← ((word)) (signed word) point_init::x_diff#1 +Eliminating Noop Cast (word) point_init::abs16s2_return#0 ← ((word)) (signed word) point_init::abs16s2_$2#0 +Eliminating Noop Cast (word) point_init::abs16s2_return#1 ← ((word)) (signed word) point_init::y_diff#0 +Eliminating Noop Cast (signed byte~) point_init::$18 ← ((signed byte)) (byte~) point_init::$17 +Eliminating Noop Cast (byte*) bitmap_clear::bitmap#0 ← ((byte*)) (word~) bitmap_clear::$3 +Eliminating Noop Cast (byte*) bitmap_plot::plotter#0 ← ((byte*)) (word~) bitmap_plot::$3 Successful SSA optimization Pass2NopCastElimination Removing unused block main::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value screen_fill::x#1 ? ++ screen_fill::x#2 to ++ +Resolved ranged next value screen_fill::x#1 ← ++ screen_fill::x#2 to ++ Resolved ranged comparison value if(screen_fill::x#1!=rangelast(0,$27)) goto screen_fill::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value screen_fill::y#1 ? ++ screen_fill::y#4 to ++ +Resolved ranged next value screen_fill::y#1 ← ++ screen_fill::y#4 to ++ Resolved ranged comparison value if(screen_fill::y#1!=rangelast(0,$18)) goto screen_fill::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 -Resolved ranged next value bitmap_init::x#1 ? ++ bitmap_init::x#2 to ++ +Resolved ranged next value bitmap_init::x#1 ← ++ bitmap_init::x#2 to ++ Resolved ranged comparison value if(bitmap_init::x#1!=rangelast(0,$ff)) goto bitmap_init::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_init::y#1 ? ++ bitmap_init::y#2 to ++ +Resolved ranged next value bitmap_init::y#1 ← ++ bitmap_init::y#2 to ++ Resolved ranged comparison value if(bitmap_init::y#1!=rangelast(0,$ff)) goto bitmap_init::@5 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value bitmap_clear::x#1 ? ++ bitmap_clear::x#2 to ++ +Resolved ranged next value bitmap_clear::x#1 ← ++ bitmap_clear::x#2 to ++ Resolved ranged comparison value if(bitmap_clear::x#1!=rangelast(0,$c7)) goto bitmap_clear::@2 to (byte/word/signed word/dword/signed dword) $c8 -Resolved ranged next value bitmap_clear::y#1 ? ++ bitmap_clear::y#4 to ++ +Resolved ranged next value bitmap_clear::y#1 ← ++ bitmap_clear::y#4 to ++ Resolved ranged comparison value if(bitmap_clear::y#1!=rangelast(0,$27)) goto bitmap_clear::@1 to (byte/signed byte/word/signed word/dword/signed dword) $28 Culled Empty Block (label) @4 Culled Empty Block (label) @6 @@ -2197,47 +2197,47 @@ Calls in [point_init] to divr16s:64 Calls in [divr16s] to divr16u:88 Created 35 initial phi equivalence classes -Coalesced [29] main::i#5 ? main::i#1 -Coalesced [30] rem16u#67 ? rem16u#18 -Coalesced [31] rem16s#53 ? rem16s#13 -Coalesced (already) [50] rem16u#68 ? rem16u#21 -Coalesced (already) [51] rem16s#54 ? rem16s#15 -Coalesced [70] rem16u#69 ? rem16u#1 -Coalesced [71] rem16s#55 ? rem16s#3 -Coalesced [83] divr16s::neg#10 ? divr16s::neg#3 -Coalesced [94] divr16s::return#6 ? divr16s::return#1 -Coalesced [95] rem16s#56 ? rem16s#2 -Coalesced [103] divr16s::neg#9 ? divr16s::neg#2 -Coalesced [106] divr16u::rem#11 ? divr16u::rem#3 -Coalesced [107] divr16u::dividend#8 ? divr16u::dividend#1 -Coalesced [114] divr16u::rem#14 ? divr16u::rem#1 -Coalesced [121] divr16u::rem#16 ? divr16u::rem#2 -Coalesced [122] divr16u::return#6 ? divr16u::quotient#2 -Coalesced [126] rem16u#1 ? divr16u::rem#10 -Coalesced [128] divr16u::rem#12 ? divr16u::rem#10 -Coalesced [129] divr16u::dividend#9 ? divr16u::dividend#0 -Coalesced [130] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [131] divr16u::i#7 ? divr16u::i#1 -Coalesced [132] divr16u::rem#15 ? divr16u::rem#5 -Coalesced [133] divr16u::return#5 ? divr16u::quotient#1 -Coalesced [134] divr16u::rem#13 ? divr16u::rem#0 -Coalesced [137] screen_fill::screen#7 ? screen_fill::screen#3 -Coalesced [146] screen_fill::screen#6 ? screen_fill::screen#1 -Coalesced [147] screen_fill::y#5 ? screen_fill::y#1 -Coalesced (already) [148] screen_fill::screen#8 ? screen_fill::screen#1 -Coalesced [149] screen_fill::x#3 ? screen_fill::x#1 -Coalesced [153] bitmap_clear::bitmap#7 ? bitmap_clear::bitmap#3 -Coalesced [162] bitmap_clear::bitmap#6 ? bitmap_clear::bitmap#1 -Coalesced [163] bitmap_clear::y#5 ? bitmap_clear::y#1 -Coalesced (already) [164] bitmap_clear::bitmap#8 ? bitmap_clear::bitmap#1 -Coalesced [165] bitmap_clear::x#3 ? bitmap_clear::x#1 -Coalesced [185] bitmap_init::yoffs#7 ? bitmap_init::yoffs#1 -Coalesced [190] bitmap_init::y#5 ? bitmap_init::y#1 -Coalesced [191] bitmap_init::yoffs#5 ? bitmap_init::yoffs#4 -Coalesced (already) [192] bitmap_init::yoffs#6 ? bitmap_init::yoffs#2 -Coalesced [193] bitmap_init::bits#5 ? bitmap_init::bits#4 -Coalesced [194] bitmap_init::x#5 ? bitmap_init::x#1 -Coalesced [195] bitmap_init::bits#6 ? bitmap_init::bits#1 +Coalesced [29] main::i#5 ← main::i#1 +Coalesced [30] rem16u#67 ← rem16u#18 +Coalesced [31] rem16s#53 ← rem16s#13 +Coalesced (already) [50] rem16u#68 ← rem16u#21 +Coalesced (already) [51] rem16s#54 ← rem16s#15 +Coalesced [70] rem16u#69 ← rem16u#1 +Coalesced [71] rem16s#55 ← rem16s#3 +Coalesced [83] divr16s::neg#10 ← divr16s::neg#3 +Coalesced [94] divr16s::return#6 ← divr16s::return#1 +Coalesced [95] rem16s#56 ← rem16s#2 +Coalesced [103] divr16s::neg#9 ← divr16s::neg#2 +Coalesced [106] divr16u::rem#11 ← divr16u::rem#3 +Coalesced [107] divr16u::dividend#8 ← divr16u::dividend#1 +Coalesced [114] divr16u::rem#14 ← divr16u::rem#1 +Coalesced [121] divr16u::rem#16 ← divr16u::rem#2 +Coalesced [122] divr16u::return#6 ← divr16u::quotient#2 +Coalesced [126] rem16u#1 ← divr16u::rem#10 +Coalesced [128] divr16u::rem#12 ← divr16u::rem#10 +Coalesced [129] divr16u::dividend#9 ← divr16u::dividend#0 +Coalesced [130] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [131] divr16u::i#7 ← divr16u::i#1 +Coalesced [132] divr16u::rem#15 ← divr16u::rem#5 +Coalesced [133] divr16u::return#5 ← divr16u::quotient#1 +Coalesced [134] divr16u::rem#13 ← divr16u::rem#0 +Coalesced [137] screen_fill::screen#7 ← screen_fill::screen#3 +Coalesced [146] screen_fill::screen#6 ← screen_fill::screen#1 +Coalesced [147] screen_fill::y#5 ← screen_fill::y#1 +Coalesced (already) [148] screen_fill::screen#8 ← screen_fill::screen#1 +Coalesced [149] screen_fill::x#3 ← screen_fill::x#1 +Coalesced [153] bitmap_clear::bitmap#7 ← bitmap_clear::bitmap#3 +Coalesced [162] bitmap_clear::bitmap#6 ← bitmap_clear::bitmap#1 +Coalesced [163] bitmap_clear::y#5 ← bitmap_clear::y#1 +Coalesced (already) [164] bitmap_clear::bitmap#8 ← bitmap_clear::bitmap#1 +Coalesced [165] bitmap_clear::x#3 ← bitmap_clear::x#1 +Coalesced [185] bitmap_init::yoffs#7 ← bitmap_init::yoffs#1 +Coalesced [190] bitmap_init::y#5 ← bitmap_init::y#1 +Coalesced [191] bitmap_init::yoffs#5 ← bitmap_init::yoffs#4 +Coalesced (already) [192] bitmap_init::yoffs#6 ← bitmap_init::yoffs#2 +Coalesced [193] bitmap_init::bits#5 ← bitmap_init::bits#4 +Coalesced [194] bitmap_init::x#5 ← bitmap_init::x#1 +Coalesced [195] bitmap_init::bits#6 ← bitmap_init::bits#1 Coalesced down to 23 phi equivalence classes Culled Empty Block (label) main::@22 Culled Empty Block (label) point_init::@14 @@ -2303,24 +2303,24 @@ FINAL CONTROL FLOW GRAPH [3] phi() main: scope:[main] from @1 asm { sei } - [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 - [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 - [7] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 + [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 + [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 + [7] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 to:main::vicSelectGfxBank1 main::vicSelectGfxBank1: scope:[main] from main - [8] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 + [8] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 to:main::vicSelectGfxBank1_toDd001 main::vicSelectGfxBank1_toDd001: scope:[main] from main::vicSelectGfxBank1 [9] phi() to:main::vicSelectGfxBank1_@1 main::vicSelectGfxBank1_@1: scope:[main] from main::vicSelectGfxBank1_toDd001 - [10] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 + [10] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 to:main::toD0181 main::toD0181: scope:[main] from main::vicSelectGfxBank1_@1 [11] phi() to:main::@4 main::@4: scope:[main] from main::toD0181 - [12] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 + [12] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [13] call bitmap_init to:main::@5 main::@5: scope:[main] from main::@4 @@ -2332,75 +2332,75 @@ main::@6: scope:[main] from main::@5 [17] call screen_fill to:main::@1 main::@1: scope:[main] from main::@6 main::@8 - [18] (signed word) rem16s#15 ? phi( main::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@8/(signed word) rem16s#13 ) - [18] (word) rem16u#21 ? phi( main::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@8/(word) rem16u#18 ) - [18] (byte) main::i#2 ? phi( main::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@8/(byte) main::i#1 ) - [19] (byte) point_init::point_idx#0 ? (byte) main::i#2 + [18] (signed word) rem16s#15 ← phi( main::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@8/(signed word) rem16s#13 ) + [18] (word) rem16u#21 ← phi( main::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@8/(word) rem16u#18 ) + [18] (byte) main::i#2 ← phi( main::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@8/(byte) main::i#1 ) + [19] (byte) point_init::point_idx#0 ← (byte) main::i#2 [20] call point_init to:main::@7 main::@7: scope:[main] from main::@1 - [21] (byte~) main::$9 ? (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [22] (word) bitmap_plot::x#0 ? *((const word[4]) x_start#0 + (byte) main::i#2) - [23] (byte) bitmap_plot::y#0 ? *((const byte[4]) y_start#0 + (byte~) main::$9) + [21] (byte~) main::$9 ← (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [22] (word) bitmap_plot::x#0 ← *((const word[4]) x_start#0 + (byte) main::i#2) + [23] (byte) bitmap_plot::y#0 ← *((const byte[4]) y_start#0 + (byte~) main::$9) [24] call bitmap_plot to:main::@8 main::@8: scope:[main] from main::@7 - [25] (byte) main::i#1 ? (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [25] (byte) main::i#1 ← (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [26] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto main::@1 to:main::@2 main::@2: scope:[main] from main::@2 main::@3 main::@8 [27] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto main::@2 to:main::@3 main::@3: scope:[main] from main::@2 - [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) + [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) to:main::@2 bitmap_plot: scope:[bitmap_plot] from main::@7 - [29] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) - [30] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 - [31] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 - [32] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#0 - [33] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) + [29] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) + [30] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 + [31] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 + [32] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#0 + [33] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) to:bitmap_plot::@return bitmap_plot::@return: scope:[bitmap_plot] from bitmap_plot [34] return to:@return point_init: scope:[point_init] from main::@1 - [35] (byte) point_init::point_idx1#0 ? (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [36] (signed word) point_init::x_diff#1 ? (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) - [37] (signed word~) point_init::$4 ? ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) - [38] (signed word~) point_init::$5 ? ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) - [39] (signed word) point_init::y_diff#0 ? (signed word~) point_init::$4 - (signed word~) point_init::$5 + [35] (byte) point_init::point_idx1#0 ← (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [36] (signed word) point_init::x_diff#1 ← (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) + [37] (signed word~) point_init::$4 ← ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) + [38] (signed word~) point_init::$5 ← ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) + [39] (signed word) point_init::y_diff#0 ← (signed word~) point_init::$4 - (signed word~) point_init::$5 to:point_init::abs16s1 point_init::abs16s1: scope:[point_init] from point_init [40] if((signed word) point_init::x_diff#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::abs16s1_@1 to:point_init::@8 point_init::@8: scope:[point_init] from point_init::abs16s1 - [41] (word~) point_init::abs16s1_return#6 ? (word)(signed word) point_init::x_diff#1 + [41] (word~) point_init::abs16s1_return#6 ← (word)(signed word) point_init::x_diff#1 to:point_init::abs16s1_@return point_init::abs16s1_@return: scope:[point_init] from point_init::@8 point_init::abs16s1_@1 - [42] (word) point_init::abs16s1_return#2 ? phi( point_init::abs16s1_@1/(word~) point_init::abs16s1_return#5 point_init::@8/(word~) point_init::abs16s1_return#6 ) + [42] (word) point_init::abs16s1_return#2 ← phi( point_init::abs16s1_@1/(word~) point_init::abs16s1_return#5 point_init::@8/(word~) point_init::abs16s1_return#6 ) to:point_init::abs16s2 point_init::abs16s2: scope:[point_init] from point_init::abs16s1_@return [43] if((signed word) point_init::y_diff#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::abs16s2_@1 to:point_init::@9 point_init::@9: scope:[point_init] from point_init::abs16s2 - [44] (word~) point_init::abs16s2_return#6 ? (word)(signed word) point_init::y_diff#0 + [44] (word~) point_init::abs16s2_return#6 ← (word)(signed word) point_init::y_diff#0 to:point_init::abs16s2_@return point_init::abs16s2_@return: scope:[point_init] from point_init::@9 point_init::abs16s2_@1 - [45] (word) point_init::abs16s2_return#2 ? phi( point_init::abs16s2_@1/(word~) point_init::abs16s2_return#5 point_init::@9/(word~) point_init::abs16s2_return#6 ) + [45] (word) point_init::abs16s2_return#2 ← phi( point_init::abs16s2_@1/(word~) point_init::abs16s2_return#5 point_init::@9/(word~) point_init::abs16s2_return#6 ) to:point_init::@6 point_init::@6: scope:[point_init] from point_init::abs16s2_@return [46] if((word) point_init::abs16s1_return#2>(word) point_init::abs16s2_return#2) goto point_init::@1 to:point_init::@2 point_init::@2: scope:[point_init] from point_init::@6 point_init::@7 - [47] (signed word) rem16s#13 ? phi( point_init::@6/(signed word) rem16s#15 point_init::@7/(signed word) rem16s#3 ) - [47] (word) rem16u#18 ? phi( point_init::@6/(word) rem16u#21 point_init::@7/(word) divr16u::rem#10 ) - [48] (word~) point_init::$10 ? *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 - [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$10 - [50] (word~) point_init::$11 ? ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) - [51] (word~) point_init::$12 ? (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 - [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$12 - [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ? (const byte) DELAY#0 + [47] (signed word) rem16s#13 ← phi( point_init::@6/(signed word) rem16s#15 point_init::@7/(signed word) rem16s#3 ) + [47] (word) rem16u#18 ← phi( point_init::@6/(word) rem16u#21 point_init::@7/(word) divr16u::rem#10 ) + [48] (word~) point_init::$10 ← *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 + [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$10 + [50] (word~) point_init::$11 ← ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) + [51] (word~) point_init::$12 ← (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 + [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$12 + [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ← (const byte) DELAY#0 to:point_init::@return point_init::@return: scope:[point_init] from point_init::@2 [54] return @@ -2409,30 +2409,30 @@ point_init::@1: scope:[point_init] from point_init::@6 [55] if((signed word) point_init::x_diff#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::@4 to:point_init::@3 point_init::@3: scope:[point_init] from point_init::@1 - [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? (byte/signed byte/word/signed word/dword/signed dword) $10 + [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← (byte/signed byte/word/signed word/dword/signed dword) $10 to:point_init::@5 point_init::@5: scope:[point_init] from point_init::@3 point_init::@4 - [57] (signed word) divr16s::divisor#0 ? (signed word) point_init::x_diff#1 - [58] (signed word) divr16s::rem#0 ? (signed word) point_init::y_diff#0 + [57] (signed word) divr16s::divisor#0 ← (signed word) point_init::x_diff#1 + [58] (signed word) divr16s::rem#0 ← (signed word) point_init::y_diff#0 [59] call divr16s - [60] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + [60] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 to:point_init::@7 point_init::@7: scope:[point_init] from point_init::@5 - [61] (signed word) point_init::x_stepf#0 ? (signed word) divr16s::return#3 - [62] (byte~) point_init::$16 ? > (signed word) point_init::x_stepf#0 - [63] (byte~) point_init::$17 ? (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ? (signed byte)(byte~) point_init::$17 + [61] (signed word) point_init::x_stepf#0 ← (signed word) divr16s::return#3 + [62] (byte~) point_init::$16 ← > (signed word) point_init::x_stepf#0 + [63] (byte~) point_init::$17 ← (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ← (signed byte)(byte~) point_init::$17 to:point_init::@2 point_init::@4: scope:[point_init] from point_init::@1 - [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? -(byte/signed byte/word/signed word/dword/signed dword) $10 + [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← -(byte/signed byte/word/signed word/dword/signed dword) $10 to:point_init::@5 point_init::abs16s2_@1: scope:[point_init] from point_init::abs16s2 - [66] (signed word) point_init::abs16s2_$2#0 ? - (signed word) point_init::y_diff#0 - [67] (word~) point_init::abs16s2_return#5 ? (word)(signed word) point_init::abs16s2_$2#0 + [66] (signed word) point_init::abs16s2_$2#0 ← - (signed word) point_init::y_diff#0 + [67] (word~) point_init::abs16s2_return#5 ← (word)(signed word) point_init::abs16s2_$2#0 to:point_init::abs16s2_@return point_init::abs16s1_@1: scope:[point_init] from point_init::abs16s1 - [68] (signed word) point_init::abs16s1_$2#0 ? - (signed word) point_init::x_diff#1 - [69] (word~) point_init::abs16s1_return#5 ? (word)(signed word) point_init::abs16s1_$2#0 + [68] (signed word) point_init::abs16s1_$2#0 ← - (signed word) point_init::x_diff#1 + [69] (word~) point_init::abs16s1_return#5 ← (word)(signed word) point_init::abs16s1_$2#0 to:point_init::abs16s1_@return divr16s: scope:[divr16s] from point_init::@5 [70] phi() @@ -2441,82 +2441,82 @@ divr16s::@7: scope:[divr16s] from divr16s [71] if((signed word) divr16s::rem#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@1 to:divr16s::@8 divr16s::@8: scope:[divr16s] from divr16s::@7 - [72] (word~) divr16s::remu#8 ? (word)(signed word) divr16s::rem#0 + [72] (word~) divr16s::remu#8 ← (word)(signed word) divr16s::rem#0 to:divr16s::@2 divr16s::@2: scope:[divr16s] from divr16s::@1 divr16s::@8 - [73] (word) divr16s::remu#3 ? phi( divr16s::@1/(word~) divr16s::remu#7 divr16s::@8/(word~) divr16s::remu#8 ) - [73] (word) divr16s::dividendu#3 ? phi( divr16s::@1/((word))-(const signed word) divr16s::dividend#0 divr16s::@8/((word))(const signed word) divr16s::dividend#0 ) - [73] (byte) divr16s::neg#3 ? phi( divr16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 divr16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [73] (word) divr16s::remu#3 ← phi( divr16s::@1/(word~) divr16s::remu#7 divr16s::@8/(word~) divr16s::remu#8 ) + [73] (word) divr16s::dividendu#3 ← phi( divr16s::@1/((word))-(const signed word) divr16s::dividend#0 divr16s::@8/((word))(const signed word) divr16s::dividend#0 ) + [73] (byte) divr16s::neg#3 ← phi( divr16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 divr16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [74] if((signed word) divr16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@3 to:divr16s::@9 divr16s::@9: scope:[divr16s] from divr16s::@2 - [75] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 + [75] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 to:divr16s::@4 divr16s::@4: scope:[divr16s] from divr16s::@3 divr16s::@9 - [76] (byte) divr16s::neg#4 ? phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@9/(byte) divr16s::neg#3 ) - [76] (word) divr16s::divisoru#3 ? phi( divr16s::@3/(word~) divr16s::divisoru#4 divr16s::@9/(word~) divr16s::divisoru#5 ) - [77] (word) divr16u::dividend#1 ? (word) divr16s::dividendu#3 - [78] (word) divr16u::divisor#0 ? (word) divr16s::divisoru#3 - [79] (word) divr16u::rem#3 ? (word) divr16s::remu#3 + [76] (byte) divr16s::neg#4 ← phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@9/(byte) divr16s::neg#3 ) + [76] (word) divr16s::divisoru#3 ← phi( divr16s::@3/(word~) divr16s::divisoru#4 divr16s::@9/(word~) divr16s::divisoru#5 ) + [77] (word) divr16u::dividend#1 ← (word) divr16s::dividendu#3 + [78] (word) divr16u::divisor#0 ← (word) divr16s::divisoru#3 + [79] (word) divr16u::rem#3 ← (word) divr16s::remu#3 [80] call divr16u - [81] (word) divr16u::return#2 ? (word) divr16u::return#0 + [81] (word) divr16u::return#2 ← (word) divr16u::return#0 to:divr16s::@6 divr16s::@6: scope:[divr16s] from divr16s::@4 - [82] (word) divr16s::resultu#0 ? (word) divr16u::return#2 + [82] (word) divr16s::resultu#0 ← (word) divr16u::return#2 [83] if((byte) divr16s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@10 to:divr16s::@5 divr16s::@5: scope:[divr16s] from divr16s::@6 - [84] (signed word) rem16s#2 ? - (signed word)(word) divr16u::rem#10 - [85] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 + [84] (signed word) rem16s#2 ← - (signed word)(word) divr16u::rem#10 + [85] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 to:divr16s::@return divr16s::@return: scope:[divr16s] from divr16s::@10 divr16s::@5 - [86] (signed word) rem16s#3 ? phi( divr16s::@5/(signed word) rem16s#2 divr16s::@10/(signed word~) rem16s#57 ) - [86] (signed word) divr16s::return#2 ? phi( divr16s::@5/(signed word) divr16s::return#1 divr16s::@10/(signed word~) divr16s::return#7 ) + [86] (signed word) rem16s#3 ← phi( divr16s::@5/(signed word) rem16s#2 divr16s::@10/(signed word~) rem16s#57 ) + [86] (signed word) divr16s::return#2 ← phi( divr16s::@5/(signed word) divr16s::return#1 divr16s::@10/(signed word~) divr16s::return#7 ) [87] return to:@return divr16s::@10: scope:[divr16s] from divr16s::@6 - [88] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 - [89] (signed word~) rem16s#57 ? (signed word)(word) divr16u::rem#10 + [88] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 + [89] (signed word~) rem16s#57 ← (signed word)(word) divr16u::rem#10 to:divr16s::@return divr16s::@3: scope:[divr16s] from divr16s::@2 - [90] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 - [91] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 - [92] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 + [90] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 + [91] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 + [92] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 to:divr16s::@4 divr16s::@1: scope:[divr16s] from divr16s::@7 - [93] (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#0 - [94] (word~) divr16s::remu#7 ? (word)(signed word~) divr16s::$10 + [93] (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#0 + [94] (word~) divr16s::remu#7 ← (word)(signed word~) divr16s::$10 to:divr16s::@2 divr16u: scope:[divr16u] from divr16s::@4 [95] phi() to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [96] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [96] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [96] (word) divr16u::dividend#2 ? phi( divr16u/(word) divr16u::dividend#1 divr16u::@3/(word) divr16u::dividend#0 ) - [96] (word) divr16u::rem#4 ? phi( divr16u/(word) divr16u::rem#3 divr16u::@3/(word) divr16u::rem#10 ) - [97] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [98] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 - [99] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [96] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [96] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [96] (word) divr16u::dividend#2 ← phi( divr16u/(word) divr16u::dividend#1 divr16u::@3/(word) divr16u::dividend#0 ) + [96] (word) divr16u::rem#4 ← phi( divr16u/(word) divr16u::rem#3 divr16u::@3/(word) divr16u::rem#10 ) + [97] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [98] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 + [99] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [100] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [101] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [101] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [102] (word) divr16u::rem#5 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [103] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [104] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [102] (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [103] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [104] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [105] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [106] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [107] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (word) divr16u::divisor#0 + [106] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [107] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [108] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [108] (word) divr16u::rem#10 ? phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) - [109] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [108] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [108] (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) + [109] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [110] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@3 @@ -2526,42 +2526,42 @@ screen_fill: scope:[screen_fill] from main::@6 [112] phi() to:screen_fill::@1 screen_fill::@1: scope:[screen_fill] from screen_fill screen_fill::@3 - [113] (byte) screen_fill::y#4 ? phi( screen_fill/(byte/signed byte/word/signed word/dword/signed dword) 0 screen_fill::@3/(byte) screen_fill::y#1 ) - [113] (byte*) screen_fill::screen#3 ? phi( screen_fill/(const byte*) SCREEN#0 screen_fill::@3/(byte*) screen_fill::screen#1 ) + [113] (byte) screen_fill::y#4 ← phi( screen_fill/(byte/signed byte/word/signed word/dword/signed dword) 0 screen_fill::@3/(byte) screen_fill::y#1 ) + [113] (byte*) screen_fill::screen#3 ← phi( screen_fill/(const byte*) SCREEN#0 screen_fill::@3/(byte*) screen_fill::screen#1 ) to:screen_fill::@2 screen_fill::@2: scope:[screen_fill] from screen_fill::@1 screen_fill::@2 - [114] (byte) screen_fill::x#2 ? phi( screen_fill::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 screen_fill::@2/(byte) screen_fill::x#1 ) - [114] (byte*) screen_fill::screen#2 ? phi( screen_fill::@1/(byte*) screen_fill::screen#3 screen_fill::@2/(byte*) screen_fill::screen#1 ) - [115] *((byte*) screen_fill::screen#2) ? (const byte) screen_fill::ch#0 - [116] (byte*) screen_fill::screen#1 ? ++ (byte*) screen_fill::screen#2 - [117] (byte) screen_fill::x#1 ? ++ (byte) screen_fill::x#2 + [114] (byte) screen_fill::x#2 ← phi( screen_fill::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 screen_fill::@2/(byte) screen_fill::x#1 ) + [114] (byte*) screen_fill::screen#2 ← phi( screen_fill::@1/(byte*) screen_fill::screen#3 screen_fill::@2/(byte*) screen_fill::screen#1 ) + [115] *((byte*) screen_fill::screen#2) ← (const byte) screen_fill::ch#0 + [116] (byte*) screen_fill::screen#1 ← ++ (byte*) screen_fill::screen#2 + [117] (byte) screen_fill::x#1 ← ++ (byte) screen_fill::x#2 [118] if((byte) screen_fill::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto screen_fill::@2 to:screen_fill::@3 screen_fill::@3: scope:[screen_fill] from screen_fill::@2 - [119] (byte) screen_fill::y#1 ? ++ (byte) screen_fill::y#4 + [119] (byte) screen_fill::y#1 ← ++ (byte) screen_fill::y#4 [120] if((byte) screen_fill::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto screen_fill::@1 to:screen_fill::@return screen_fill::@return: scope:[screen_fill] from screen_fill::@3 [121] return to:@return bitmap_clear: scope:[bitmap_clear] from main::@5 - [122] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) - [123] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + [122] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) + [123] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 to:bitmap_clear::@1 bitmap_clear::@1: scope:[bitmap_clear] from bitmap_clear bitmap_clear::@3 - [124] (byte) bitmap_clear::y#4 ? phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) - [124] (byte*) bitmap_clear::bitmap#3 ? phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) + [124] (byte) bitmap_clear::y#4 ← phi( bitmap_clear/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@3/(byte) bitmap_clear::y#1 ) + [124] (byte*) bitmap_clear::bitmap#3 ← phi( bitmap_clear/(byte*~) bitmap_clear::bitmap#5 bitmap_clear::@3/(byte*) bitmap_clear::bitmap#1 ) to:bitmap_clear::@2 bitmap_clear::@2: scope:[bitmap_clear] from bitmap_clear::@1 bitmap_clear::@2 - [125] (byte) bitmap_clear::x#2 ? phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) - [125] (byte*) bitmap_clear::bitmap#2 ? phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) - [126] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 - [127] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 - [128] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 + [125] (byte) bitmap_clear::x#2 ← phi( bitmap_clear::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_clear::@2/(byte) bitmap_clear::x#1 ) + [125] (byte*) bitmap_clear::bitmap#2 ← phi( bitmap_clear::@1/(byte*) bitmap_clear::bitmap#3 bitmap_clear::@2/(byte*) bitmap_clear::bitmap#1 ) + [126] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 + [127] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 + [128] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 [129] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 to:bitmap_clear::@3 bitmap_clear::@3: scope:[bitmap_clear] from bitmap_clear::@2 - [130] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 + [130] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 [131] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 to:bitmap_clear::@return bitmap_clear::@return: scope:[bitmap_clear] from bitmap_clear::@3 @@ -2571,35 +2571,35 @@ bitmap_init: scope:[bitmap_init] from main::@4 [133] phi() to:bitmap_init::@1 bitmap_init::@1: scope:[bitmap_init] from bitmap_init bitmap_init::@2 - [134] (byte) bitmap_init::x#2 ? phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) - [134] (byte) bitmap_init::bits#3 ? phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) - [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 - [136] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [134] (byte) bitmap_init::x#2 ← phi( bitmap_init/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@2/(byte) bitmap_init::x#1 ) + [134] (byte) bitmap_init::bits#3 ← phi( bitmap_init/(byte/word/signed word/dword/signed dword) $80 bitmap_init::@2/(byte) bitmap_init::bits#4 ) + [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 + [136] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [137] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 to:bitmap_init::@2 bitmap_init::@2: scope:[bitmap_init] from bitmap_init::@1 bitmap_init::@6 - [138] (byte) bitmap_init::bits#4 ? phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) - [139] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 + [138] (byte) bitmap_init::bits#4 ← phi( bitmap_init::@6/(byte) bitmap_init::bits#1 bitmap_init::@1/(byte/word/signed word/dword/signed dword) $80 ) + [139] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 [140] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 to:bitmap_init::@3 bitmap_init::@3: scope:[bitmap_init] from bitmap_init::@2 bitmap_init::@4 - [141] (byte*) bitmap_init::yoffs#2 ? phi( bitmap_init::@2/(const byte*) BITMAP#0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) - [141] (byte) bitmap_init::y#2 ? phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) - [142] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 - [143] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 - [144] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 - [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 - [146] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 - [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 - [148] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [141] (byte*) bitmap_init::yoffs#2 ← phi( bitmap_init::@2/(const byte*) BITMAP#0 bitmap_init::@4/(byte*) bitmap_init::yoffs#4 ) + [141] (byte) bitmap_init::y#2 ← phi( bitmap_init::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 bitmap_init::@4/(byte) bitmap_init::y#1 ) + [142] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 + [143] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 + [144] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 + [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 + [146] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 + [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 + [148] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [149] if((byte~) bitmap_init::$7!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 to:bitmap_init::@5 bitmap_init::@5: scope:[bitmap_init] from bitmap_init::@3 - [150] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 + [150] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 to:bitmap_init::@4 bitmap_init::@4: scope:[bitmap_init] from bitmap_init::@3 bitmap_init::@5 - [151] (byte*) bitmap_init::yoffs#4 ? phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) - [152] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 + [151] (byte*) bitmap_init::yoffs#4 ← phi( bitmap_init::@3/(byte*) bitmap_init::yoffs#2 bitmap_init::@5/(byte*) bitmap_init::yoffs#1 ) + [152] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 [153] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 to:bitmap_init::@return bitmap_init::@return: scope:[bitmap_init] from bitmap_init::@4 @@ -3132,21 +3132,21 @@ main: { .label i = 2 //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 jmp vicSelectGfxBank1 //SEG14 main::vicSelectGfxBank1 vicSelectGfxBank1: - //SEG15 [8] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG15 [8] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG16 [9] phi from main::vicSelectGfxBank1 to main::vicSelectGfxBank1_toDd001 [phi:main::vicSelectGfxBank1->main::vicSelectGfxBank1_toDd001] @@ -3157,7 +3157,7 @@ main: { jmp vicSelectGfxBank1_b1 //SEG18 main::vicSelectGfxBank1_@1 vicSelectGfxBank1_b1: - //SEG19 [10] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG19 [10] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A //SEG20 [11] phi from main::vicSelectGfxBank1_@1 to main::toD0181 [phi:main::vicSelectGfxBank1_@1->main::toD0181] @@ -3168,7 +3168,7 @@ main: { jmp b4 //SEG22 main::@4 b4: - //SEG23 [12] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG23 [12] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 //SEG24 [13] call bitmap_init @@ -3215,7 +3215,7 @@ main: { jmp b1 //SEG41 main::@1 b1: - //SEG42 [19] (byte) point_init::point_idx#0 ? (byte) main::i#2 -- vbuz1=vbuz2 + //SEG42 [19] (byte) point_init::point_idx#0 ← (byte) main::i#2 -- vbuz1=vbuz2 lda i sta point_init.point_idx //SEG43 [20] call point_init @@ -3223,17 +3223,17 @@ main: { jmp b7 //SEG44 main::@7 b7: - //SEG45 [21] (byte~) main::$9 ? (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG45 [21] (byte~) main::$9 ← (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda i lsr sta _9 - //SEG46 [22] (word) bitmap_plot::x#0 ? *((const word[4]) x_start#0 + (byte) main::i#2) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG46 [22] (word) bitmap_plot::x#0 ← *((const word[4]) x_start#0 + (byte) main::i#2) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda x_start,y sta bitmap_plot.x lda x_start+1,y sta bitmap_plot.x+1 - //SEG47 [23] (byte) bitmap_plot::y#0 ? *((const byte[4]) y_start#0 + (byte~) main::$9) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG47 [23] (byte) bitmap_plot::y#0 ← *((const byte[4]) y_start#0 + (byte~) main::$9) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _9 lda y_start,y sta bitmap_plot.y @@ -3242,7 +3242,7 @@ main: { jmp b8 //SEG49 main::@8 b8: - //SEG50 [25] (byte) main::i#1 ? (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG50 [25] (byte) main::i#1 ← (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -3261,7 +3261,7 @@ main: { jmp b3 //SEG54 main::@3 b3: - //SEG55 [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG55 [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL jmp b2 } @@ -3275,20 +3275,20 @@ bitmap_plot: { .label y = $2a .label plotter = $2f .label _3 = $2b - //SEG57 [29] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 + //SEG57 [29] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) -- vwuz1=pbuc1_derefidx_vbuz2_word_pbuc2_derefidx_vbuz2 ldy y lda bitmap_plot_yhi,y sta _3+1 lda bitmap_plot_ylo,y sta _3 - //SEG58 [30] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 + //SEG58 [30] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 lda x and #<$fff8 sta _1 lda x+1 and #>$fff8 sta _1+1 - //SEG59 [31] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz2_plus_vwuz3 + //SEG59 [31] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz2_plus_vwuz3 lda _3 clc adc _1 @@ -3296,10 +3296,10 @@ bitmap_plot: { lda _3+1 adc _1+1 sta plotter+1 - //SEG60 [32] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#0 -- vbuz1=_lo_vwuz2 + //SEG60 [32] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#0 -- vbuz1=_lo_vwuz2 lda x sta _2 - //SEG61 [33] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuz2 + //SEG61 [33] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuz2 ldy #0 lda (plotter),y ldy _2 @@ -3332,11 +3332,11 @@ point_init: { .label abs16s2_return = 7 .label x_stepf = $47 .label x_diff = $33 - //SEG65 [35] (byte) point_init::point_idx1#0 ? (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG65 [35] (byte) point_init::point_idx1#0 ← (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda point_idx lsr sta point_idx1 - //SEG66 [36] (signed word) point_init::x_diff#1 ? (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) -- vwsz1=pwsc1_derefidx_vbuz2_minus_pwsc2_derefidx_vbuz2 + //SEG66 [36] (signed word) point_init::x_diff#1 ← (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) -- vwsz1=pwsc1_derefidx_vbuz2_minus_pwsc2_derefidx_vbuz2 ldy point_idx sec lda x_end,y @@ -3345,19 +3345,19 @@ point_init: { lda x_end+1,y sbc x_start+1,y sta x_diff+1 - //SEG67 [37] (signed word~) point_init::$4 ? ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 + //SEG67 [37] (signed word~) point_init::$4 ← ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_end,y sta _4 lda #0 sta _4+1 - //SEG68 [38] (signed word~) point_init::$5 ? ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 + //SEG68 [38] (signed word~) point_init::$5 ← ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_start,y sta _5 lda #0 sta _5+1 - //SEG69 [39] (signed word) point_init::y_diff#0 ? (signed word~) point_init::$4 - (signed word~) point_init::$5 -- vwsz1=vwsz2_minus_vwsz3 + //SEG69 [39] (signed word) point_init::y_diff#0 ← (signed word~) point_init::$4 - (signed word~) point_init::$5 -- vwsz1=vwsz2_minus_vwsz3 lda _4 sec sbc _5 @@ -3374,7 +3374,7 @@ point_init: { jmp b8 //SEG72 point_init::@8 b8: - //SEG73 [41] (word~) point_init::abs16s1_return#6 ? (word)(signed word) point_init::x_diff#1 -- vwuz1=vwuz2 + //SEG73 [41] (word~) point_init::abs16s1_return#6 ← (word)(signed word) point_init::x_diff#1 -- vwuz1=vwuz2 lda x_diff sta abs16s1_return lda x_diff+1 @@ -3395,7 +3395,7 @@ point_init: { jmp b9 //SEG79 point_init::@9 b9: - //SEG80 [44] (word~) point_init::abs16s2_return#6 ? (word)(signed word) point_init::y_diff#0 -- vwuz1=vwuz2 + //SEG80 [44] (word~) point_init::abs16s2_return#6 ← (word)(signed word) point_init::y_diff#0 -- vwuz1=vwuz2 lda y_diff sta abs16s2_return lda y_diff+1 @@ -3427,7 +3427,7 @@ point_init: { jmp b2 //SEG89 point_init::@2 b2: - //SEG90 [48] (word~) point_init::$10 ? *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=pwuc1_derefidx_vbuz2_rol_4 + //SEG90 [48] (word~) point_init::$10 ← *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=pwuc1_derefidx_vbuz2_rol_4 ldy point_idx lda x_start,y sta _10 @@ -3441,19 +3441,19 @@ point_init: { rol _10+1 asl _10 rol _10+1 - //SEG91 [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$10 -- pwuc1_derefidx_vbuz1=vwuz2 + //SEG91 [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$10 -- pwuc1_derefidx_vbuz1=vwuz2 ldy point_idx lda _10 sta x_cur,y lda _10+1 sta x_cur+1,y - //SEG92 [50] (word~) point_init::$11 ? ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwuz1=_word_pbuc1_derefidx_vbuz2 + //SEG92 [50] (word~) point_init::$11 ← ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwuz1=_word_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_start,y sta _11 lda #0 sta _11+1 - //SEG93 [51] (word~) point_init::$12 ? (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_rol_4 + //SEG93 [51] (word~) point_init::$12 ← (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_rol_4 lda _11 asl sta _12 @@ -3466,13 +3466,13 @@ point_init: { rol _12+1 asl _12 rol _12+1 - //SEG94 [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$12 -- pwuc1_derefidx_vbuz1=vwuz2 + //SEG94 [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$12 -- pwuc1_derefidx_vbuz1=vwuz2 ldy point_idx lda _12 sta y_cur,y lda _12+1 sta y_cur+1,y - //SEG95 [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ? (const byte) DELAY#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG95 [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ← (const byte) DELAY#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #DELAY ldy point_idx1 sta delay,y @@ -3490,7 +3490,7 @@ point_init: { jmp b3 //SEG100 point_init::@3 b3: - //SEG101 [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? (byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbuc2 + //SEG101 [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← (byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbuc2 // x add = 1.0 ldy point_idx lda #$10 @@ -3498,12 +3498,12 @@ point_init: { jmp b5 //SEG102 point_init::@5 b5: - //SEG103 [57] (signed word) divr16s::divisor#0 ? (signed word) point_init::x_diff#1 -- vwsz1=vwsz2 + //SEG103 [57] (signed word) divr16s::divisor#0 ← (signed word) point_init::x_diff#1 -- vwsz1=vwsz2 lda x_diff sta divr16s.divisor lda x_diff+1 sta divr16s.divisor+1 - //SEG104 [58] (signed word) divr16s::rem#0 ? (signed word) point_init::y_diff#0 -- vwsz1=vwsz2 + //SEG104 [58] (signed word) divr16s::rem#0 ← (signed word) point_init::y_diff#0 -- vwsz1=vwsz2 lda y_diff sta divr16s.rem lda y_diff+1 @@ -3512,7 +3512,7 @@ point_init: { //SEG106 [70] phi from point_init::@5 to divr16s [phi:point_init::@5->divr16s] divr16s_from_b5: jsr divr16s - //SEG107 [60] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 -- vwsz1=vwsz2 + //SEG107 [60] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 -- vwsz1=vwsz2 lda divr16s.return sta divr16s.return_3 lda divr16s.return+1 @@ -3520,29 +3520,29 @@ point_init: { jmp b7 //SEG108 point_init::@7 b7: - //SEG109 [61] (signed word) point_init::x_stepf#0 ? (signed word) divr16s::return#3 -- vwsz1=vwsz2 + //SEG109 [61] (signed word) point_init::x_stepf#0 ← (signed word) divr16s::return#3 -- vwsz1=vwsz2 lda divr16s.return_3 sta x_stepf lda divr16s.return_3+1 sta x_stepf+1 - //SEG110 [62] (byte~) point_init::$16 ? > (signed word) point_init::x_stepf#0 -- vbuz1=_hi_vwsz2 + //SEG110 [62] (byte~) point_init::$16 ← > (signed word) point_init::x_stepf#0 -- vbuz1=_hi_vwsz2 lda x_stepf+1 sta _16 - //SEG111 [63] (byte~) point_init::$17 ? (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG111 [63] (byte~) point_init::$17 ← (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda _16 lsr lsr lsr lsr sta _17 - //SEG112 [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ? (signed byte)(byte~) point_init::$17 -- pbsc1_derefidx_vbuz1=vbsz2 + //SEG112 [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ← (signed byte)(byte~) point_init::$17 -- pbsc1_derefidx_vbuz1=vbsz2 lda _17 ldy point_idx1 sta y_add,y jmp b2_from_b7 //SEG113 point_init::@4 b4: - //SEG114 [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? -(byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbsc2 + //SEG114 [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← -(byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbsc2 // x add = -1.0 lda #-$10 ldy point_idx @@ -3550,7 +3550,7 @@ point_init: { jmp b5 //SEG115 point_init::abs16s2_@1 abs16s2_b1: - //SEG116 [66] (signed word) point_init::abs16s2_$2#0 ? - (signed word) point_init::y_diff#0 -- vwsz1=_neg_vwsz2 + //SEG116 [66] (signed word) point_init::abs16s2_$2#0 ← - (signed word) point_init::y_diff#0 -- vwsz1=_neg_vwsz2 sec lda y_diff eor #$ff @@ -3560,7 +3560,7 @@ point_init: { eor #$ff adc #0 sta abs16s2__2+1 - //SEG117 [67] (word~) point_init::abs16s2_return#5 ? (word)(signed word) point_init::abs16s2_$2#0 -- vwuz1=vwuz2 + //SEG117 [67] (word~) point_init::abs16s2_return#5 ← (word)(signed word) point_init::abs16s2_$2#0 -- vwuz1=vwuz2 lda abs16s2__2 sta abs16s2_return lda abs16s2__2+1 @@ -3568,7 +3568,7 @@ point_init: { jmp abs16s2_breturn_from_abs16s2_b1 //SEG118 point_init::abs16s1_@1 abs16s1_b1: - //SEG119 [68] (signed word) point_init::abs16s1_$2#0 ? - (signed word) point_init::x_diff#1 -- vwsz1=_neg_vwsz2 + //SEG119 [68] (signed word) point_init::abs16s1_$2#0 ← - (signed word) point_init::x_diff#1 -- vwsz1=_neg_vwsz2 sec lda x_diff eor #$ff @@ -3578,7 +3578,7 @@ point_init: { eor #$ff adc #0 sta abs16s1__2+1 - //SEG120 [69] (word~) point_init::abs16s1_return#5 ? (word)(signed word) point_init::abs16s1_$2#0 -- vwuz1=vwuz2 + //SEG120 [69] (word~) point_init::abs16s1_return#5 ← (word)(signed word) point_init::abs16s1_$2#0 -- vwuz1=vwuz2 lda abs16s1__2 sta abs16s1_return lda abs16s1__2+1 @@ -3614,7 +3614,7 @@ divr16s: { jmp b8 //SEG124 divr16s::@8 b8: - //SEG125 [72] (word~) divr16s::remu#8 ? (word)(signed word) divr16s::rem#0 -- vwuz1=vwuz2 + //SEG125 [72] (word~) divr16s::remu#8 ← (word)(signed word) divr16s::rem#0 -- vwuz1=vwuz2 lda rem sta remu lda rem+1 @@ -3639,7 +3639,7 @@ divr16s: { jmp b9 //SEG132 divr16s::@9 b9: - //SEG133 [75] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 -- vwuz1=vwuz2 + //SEG133 [75] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 -- vwuz1=vwuz2 lda divisor sta divisoru lda divisor+1 @@ -3652,17 +3652,17 @@ divr16s: { jmp b4 //SEG137 divr16s::@4 b4: - //SEG138 [77] (word) divr16u::dividend#1 ? (word) divr16s::dividendu#3 -- vwuz1=vwuz2 + //SEG138 [77] (word) divr16u::dividend#1 ← (word) divr16s::dividendu#3 -- vwuz1=vwuz2 lda dividendu sta divr16u.dividend lda dividendu+1 sta divr16u.dividend+1 - //SEG139 [78] (word) divr16u::divisor#0 ? (word) divr16s::divisoru#3 -- vwuz1=vwuz2 + //SEG139 [78] (word) divr16u::divisor#0 ← (word) divr16s::divisoru#3 -- vwuz1=vwuz2 lda divisoru sta divr16u.divisor lda divisoru+1 sta divr16u.divisor+1 - //SEG140 [79] (word) divr16u::rem#3 ? (word) divr16s::remu#3 -- vwuz1=vwuz2 + //SEG140 [79] (word) divr16u::rem#3 ← (word) divr16s::remu#3 -- vwuz1=vwuz2 lda remu sta divr16u.rem lda remu+1 @@ -3671,7 +3671,7 @@ divr16s: { //SEG142 [95] phi from divr16s::@4 to divr16u [phi:divr16s::@4->divr16u] divr16u_from_b4: jsr divr16u - //SEG143 [81] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG143 [81] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -3679,7 +3679,7 @@ divr16s: { jmp b6 //SEG144 divr16s::@6 b6: - //SEG145 [82] (word) divr16s::resultu#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG145 [82] (word) divr16s::resultu#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta resultu lda divr16u.return_2+1 @@ -3691,7 +3691,7 @@ divr16s: { jmp b5 //SEG147 divr16s::@5 b5: - //SEG148 [84] (signed word) rem16s#2 ? - (signed word)(word) divr16u::rem#10 -- vwsz1=_neg_vwsz2 + //SEG148 [84] (signed word) rem16s#2 ← - (signed word)(word) divr16u::rem#10 -- vwsz1=_neg_vwsz2 sec lda divr16u.rem eor #$ff @@ -3701,7 +3701,7 @@ divr16s: { eor #$ff adc #0 sta rem16s+1 - //SEG149 [85] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz2 + //SEG149 [85] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz2 sec lda resultu eor #$ff @@ -3723,12 +3723,12 @@ divr16s: { rts //SEG155 divr16s::@10 b10: - //SEG156 [88] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 -- vwsz1=vwsz2 + //SEG156 [88] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 -- vwsz1=vwsz2 lda resultu sta return lda resultu+1 sta return+1 - //SEG157 [89] (signed word~) rem16s#57 ? (signed word)(word) divr16u::rem#10 -- vwsz1=vwsz2 + //SEG157 [89] (signed word~) rem16s#57 ← (signed word)(word) divr16u::rem#10 -- vwsz1=vwsz2 lda divr16u.rem sta rem16s lda divr16u.rem+1 @@ -3736,7 +3736,7 @@ divr16s: { jmp breturn_from_b10 //SEG158 divr16s::@3 b3: - //SEG159 [90] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz2 + //SEG159 [90] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz2 sec lda divisor eor #$ff @@ -3746,11 +3746,11 @@ divr16s: { eor #$ff adc #0 sta _13+1 - //SEG160 [91] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG160 [91] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG161 [92] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 -- vwuz1=vwuz2 + //SEG161 [92] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 -- vwuz1=vwuz2 lda _13 sta divisoru lda _13+1 @@ -3758,7 +3758,7 @@ divr16s: { jmp b4_from_b3 //SEG162 divr16s::@1 b1: - //SEG163 [93] (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#0 -- vwsz1=_neg_vwsz2 + //SEG163 [93] (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#0 -- vwsz1=_neg_vwsz2 sec lda rem eor #$ff @@ -3768,7 +3768,7 @@ divr16s: { eor #$ff adc #0 sta _10+1 - //SEG164 [94] (word~) divr16s::remu#7 ? (word)(signed word~) divr16s::$10 -- vwuz1=vwuz2 + //SEG164 [94] (word~) divr16s::remu#7 ← (word)(signed word~) divr16s::$10 -- vwuz1=vwuz2 lda _10 sta remu lda _10+1 @@ -3824,13 +3824,13 @@ divr16u: { jmp b1 //SEG180 divr16u::@1 b1: - //SEG181 [97] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG181 [97] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG182 [98] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuz1=_hi_vwuz2 + //SEG182 [98] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG183 [99] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG183 [99] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -3841,7 +3841,7 @@ divr16u: { jmp b4 //SEG185 divr16u::@4 b4: - //SEG186 [101] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG186 [101] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -3852,10 +3852,10 @@ divr16u: { jmp b2 //SEG189 divr16u::@2 b2: - //SEG190 [103] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG190 [103] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG191 [104] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG191 [104] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG192 [105] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 -- vwuz1_lt_vwuz2_then_la1 @@ -3870,12 +3870,12 @@ divr16u: { jmp b5 //SEG193 divr16u::@5 b5: - //SEG194 [106] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG194 [106] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG195 [107] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (word) divr16u::divisor#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG195 [107] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 -- vwuz1=vwuz1_minus_vwuz2 lda rem sec sbc divisor @@ -3891,7 +3891,7 @@ divr16u: { jmp b3 //SEG199 divr16u::@3 b3: - //SEG200 [109] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuz1=_inc_vbuz1 + //SEG200 [109] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG201 [110] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -3943,16 +3943,16 @@ screen_fill: { jmp b2 //SEG218 screen_fill::@2 b2: - //SEG219 [115] *((byte*) screen_fill::screen#2) ? (const byte) screen_fill::ch#0 -- _deref_pbuz1=vbuc1 + //SEG219 [115] *((byte*) screen_fill::screen#2) ← (const byte) screen_fill::ch#0 -- _deref_pbuz1=vbuc1 lda #ch ldy #0 sta (screen),y - //SEG220 [116] (byte*) screen_fill::screen#1 ? ++ (byte*) screen_fill::screen#2 -- pbuz1=_inc_pbuz1 + //SEG220 [116] (byte*) screen_fill::screen#1 ← ++ (byte*) screen_fill::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG221 [117] (byte) screen_fill::x#1 ? ++ (byte) screen_fill::x#2 -- vbuz1=_inc_vbuz1 + //SEG221 [117] (byte) screen_fill::x#1 ← ++ (byte) screen_fill::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG222 [118] if((byte) screen_fill::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto screen_fill::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -3961,7 +3961,7 @@ screen_fill: { jmp b3 //SEG223 screen_fill::@3 b3: - //SEG224 [119] (byte) screen_fill::y#1 ? ++ (byte) screen_fill::y#4 -- vbuz1=_inc_vbuz1 + //SEG224 [119] (byte) screen_fill::y#1 ← ++ (byte) screen_fill::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG225 [120] if((byte) screen_fill::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto screen_fill::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -3980,12 +3980,12 @@ bitmap_clear: { .label x = $20 .label y = $1d .label _3 = $5b - //SEG229 [122] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG229 [122] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_ylo sta _3 lda bitmap_plot_yhi sta _3+1 - //SEG230 [123] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 + //SEG230 [123] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 -- pbuz1=pbuz2 lda _3 sta bitmap lda _3+1 @@ -4018,16 +4018,16 @@ bitmap_clear: { jmp b2 //SEG244 bitmap_clear::@2 b2: - //SEG245 [126] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG245 [126] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG246 [127] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG246 [127] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG247 [128] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 + //SEG247 [128] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG248 [129] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$c8 @@ -4036,7 +4036,7 @@ bitmap_clear: { jmp b3 //SEG249 bitmap_clear::@3 b3: - //SEG250 [130] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG250 [130] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG251 [131] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -4075,11 +4075,11 @@ bitmap_init: { jmp b1 //SEG261 bitmap_init::@1 b1: - //SEG262 [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG262 [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuz1=vbuz2 lda bits ldy x sta bitmap_plot_bit,y - //SEG263 [136] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG263 [136] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr bits //SEG264 [137] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuz1_neq_0_then_la1 lda bits @@ -4093,7 +4093,7 @@ bitmap_init: { jmp b2 //SEG267 bitmap_init::@2 b2: - //SEG268 [139] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 + //SEG268 [139] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG269 [140] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuz1_neq_0_then_la1 lda x @@ -4117,29 +4117,29 @@ bitmap_init: { jmp b3 //SEG276 bitmap_init::@3 b3: - //SEG277 [142] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG277 [142] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _3 - //SEG278 [143] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 + //SEG278 [143] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 -- vbuz1=_lo_pbuz2 lda yoffs sta _4 - //SEG279 [144] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuz1=vbuz2_bor_vbuz3 + //SEG279 [144] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuz1=vbuz2_bor_vbuz3 lda _3 ora _4 sta _5 - //SEG280 [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG280 [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuz1=vbuz2 lda _5 ldy y sta bitmap_plot_ylo,y - //SEG281 [146] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 + //SEG281 [146] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 -- vbuz1=_hi_pbuz2 lda yoffs+1 sta _6 - //SEG282 [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG282 [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuz1=vbuz2 lda _6 ldy y sta bitmap_plot_yhi,y - //SEG283 [148] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 + //SEG283 [148] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuz2_band_vbuc1 lda #7 and y sta _7 @@ -4150,7 +4150,7 @@ bitmap_init: { jmp b5 //SEG285 bitmap_init::@5 b5: - //SEG286 [150] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG286 [150] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -4165,7 +4165,7 @@ bitmap_init: { jmp b4 //SEG289 bitmap_init::@4 b4: - //SEG290 [152] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 + //SEG290 [152] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuz1=_inc_vbuz1 inc y //SEG291 [153] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuz1_neq_0_then_la1 lda y @@ -4208,164 +4208,164 @@ bitmap_init: { REGISTER UPLIFT POTENTIAL REGISTERS Equivalence Class zp ZP_BYTE:94 [ bitmap_init::$4 ] has ALU potential. -Statement [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [8] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [10] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [12] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [21] (byte~) main::$9 ? (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ) always clobbers reg byte a +Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [8] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [10] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [12] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [21] (byte~) main::$9 ← (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ] -Statement [22] (word) bitmap_plot::x#0 ? *((const word[4]) x_start#0 + (byte) main::i#2) [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ) always clobbers reg byte a +Statement [22] (word) bitmap_plot::x#0 ← *((const word[4]) x_start#0 + (byte) main::i#2) [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:39 [ main::$9 ] Statement [27] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto main::@2 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [29] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) [ bitmap_plot::x#0 bitmap_plot::$3 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 ] ) always clobbers reg byte a -Statement [30] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a -Statement [31] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#0 bitmap_plot::plotter#1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::plotter#1 ] ) always clobbers reg byte a -Statement [32] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#0 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a -Statement [33] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a reg byte y +Statement [29] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) [ bitmap_plot::x#0 bitmap_plot::$3 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 ] ) always clobbers reg byte a +Statement [30] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a +Statement [31] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#0 bitmap_plot::plotter#1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::plotter#1 ] ) always clobbers reg byte a +Statement [32] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#0 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a +Statement [33] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ] -Statement [35] (byte) point_init::point_idx1#0 ? (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a +Statement [35] (byte) point_init::point_idx1#0 ← (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:38 [ point_init::point_idx#0 ] -Statement [36] (signed word) point_init::x_diff#1 ? (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ) always clobbers reg byte a +Statement [36] (signed word) point_init::x_diff#1 ← (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:50 [ point_init::point_idx1#0 ] -Statement [37] (signed word~) point_init::$4 ? ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ) always clobbers reg byte a -Statement [38] (signed word~) point_init::$5 ? ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ) always clobbers reg byte a -Statement [39] (signed word) point_init::y_diff#0 ? (signed word~) point_init::$4 - (signed word~) point_init::$5 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a +Statement [37] (signed word~) point_init::$4 ← ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ) always clobbers reg byte a +Statement [38] (signed word~) point_init::$5 ← ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ) always clobbers reg byte a +Statement [39] (signed word) point_init::y_diff#0 ← (signed word~) point_init::$4 - (signed word~) point_init::$5 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a Statement [40] if((signed word) point_init::x_diff#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::abs16s1_@1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [41] (word~) point_init::abs16s1_return#6 ? (word)(signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ) always clobbers reg byte a +Statement [41] (word~) point_init::abs16s1_return#6 ← (word)(signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ) always clobbers reg byte a Statement [43] if((signed word) point_init::y_diff#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::abs16s2_@1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 ] ) always clobbers reg byte a -Statement [44] (word~) point_init::abs16s2_return#6 ? (word)(signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ) always clobbers reg byte a +Statement [44] (word~) point_init::abs16s2_return#6 ← (word)(signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ) always clobbers reg byte a Statement [46] if((word) point_init::abs16s1_return#2>(word) point_init::abs16s2_return#2) goto point_init::@1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [48] (word~) point_init::$10 ? *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ) always clobbers reg byte a -Statement [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$10 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a -Statement [50] (word~) point_init::$11 ? ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ) always clobbers reg byte a -Statement [51] (word~) point_init::$12 ? (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ) always clobbers reg byte a -Statement [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$12 [ rem16u#18 rem16s#13 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx1#0 ] ) always clobbers reg byte a -Statement [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ? (const byte) DELAY#0 [ rem16u#18 rem16s#13 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a +Statement [48] (word~) point_init::$10 ← *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ) always clobbers reg byte a +Statement [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$10 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a +Statement [50] (word~) point_init::$11 ← ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ) always clobbers reg byte a +Statement [51] (word~) point_init::$12 ← (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ) always clobbers reg byte a +Statement [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$12 [ rem16u#18 rem16s#13 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx1#0 ] ) always clobbers reg byte a +Statement [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ← (const byte) DELAY#0 [ rem16u#18 rem16s#13 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a Statement [55] if((signed word) point_init::x_diff#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::@4 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? (byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [57] (signed word) divr16s::divisor#0 ? (signed word) point_init::x_diff#1 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [58] (signed word) divr16s::rem#0 ? (signed word) point_init::y_diff#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ) always clobbers reg byte a -Statement [60] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ) always clobbers reg byte a -Statement [61] (signed word) point_init::x_stepf#0 ? (signed word) divr16s::return#3 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ) always clobbers reg byte a -Statement [62] (byte~) point_init::$16 ? > (signed word) point_init::x_stepf#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ) always clobbers reg byte a -Statement [63] (byte~) point_init::$17 ? (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ) always clobbers reg byte a -Statement [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? -(byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [66] (signed word) point_init::abs16s2_$2#0 ? - (signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ) always clobbers reg byte a -Statement [67] (word~) point_init::abs16s2_return#5 ? (word)(signed word) point_init::abs16s2_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ) always clobbers reg byte a -Statement [68] (signed word) point_init::abs16s1_$2#0 ? - (signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ) always clobbers reg byte a -Statement [69] (word~) point_init::abs16s1_return#5 ? (word)(signed word) point_init::abs16s1_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ) always clobbers reg byte a +Statement [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← (byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a +Statement [57] (signed word) divr16s::divisor#0 ← (signed word) point_init::x_diff#1 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ) always clobbers reg byte a +Statement [58] (signed word) divr16s::rem#0 ← (signed word) point_init::y_diff#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ) always clobbers reg byte a +Statement [60] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ) always clobbers reg byte a +Statement [61] (signed word) point_init::x_stepf#0 ← (signed word) divr16s::return#3 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ) always clobbers reg byte a +Statement [62] (byte~) point_init::$16 ← > (signed word) point_init::x_stepf#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ) always clobbers reg byte a +Statement [63] (byte~) point_init::$17 ← (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ) always clobbers reg byte a +Statement [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← -(byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a +Statement [66] (signed word) point_init::abs16s2_$2#0 ← - (signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ) always clobbers reg byte a +Statement [67] (word~) point_init::abs16s2_return#5 ← (word)(signed word) point_init::abs16s2_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ) always clobbers reg byte a +Statement [68] (signed word) point_init::abs16s1_$2#0 ← - (signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ) always clobbers reg byte a +Statement [69] (word~) point_init::abs16s1_return#5 ← (word)(signed word) point_init::abs16s1_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ) always clobbers reg byte a Statement [71] if((signed word) divr16s::rem#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@1 [ divr16s::divisor#0 divr16s::rem#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ) always clobbers reg byte a -Statement [72] (word~) divr16s::remu#8 ? (word)(signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::remu#8 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#8 ] ) always clobbers reg byte a +Statement [72] (word~) divr16s::remu#8 ← (word)(signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::remu#8 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#8 ] ) always clobbers reg byte a Statement [74] if((signed word) divr16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@3 [ divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:15 [ divr16s::neg#4 divr16s::neg#2 divr16s::neg#3 ] -Statement [75] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a -Statement [77] (word) divr16u::dividend#1 ? (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ) always clobbers reg byte a -Statement [78] (word) divr16u::divisor#0 ? (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a -Statement [79] (word) divr16u::rem#3 ? (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ) always clobbers reg byte a -Statement [81] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ) always clobbers reg byte a -Statement [82] (word) divr16s::resultu#0 ? (word) divr16u::return#2 [ divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ) always clobbers reg byte a -Statement [84] (signed word) rem16s#2 ? - (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a -Statement [85] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 rem16s#2 divr16s::return#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a -Statement [88] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 divr16s::return#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 ] ) always clobbers reg byte a -Statement [89] (signed word~) rem16s#57 ? (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::return#7 rem16s#57 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 rem16s#57 ] ) always clobbers reg byte a -Statement [90] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a -Statement [91] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a -Statement [92] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a -Statement [93] (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::$10 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::$10 ] ) always clobbers reg byte a -Statement [94] (word~) divr16s::remu#7 ? (word)(signed word~) divr16s::$10 [ divr16s::divisor#0 divr16s::remu#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#7 ] ) always clobbers reg byte a -Statement [98] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [75] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a +Statement [77] (word) divr16u::dividend#1 ← (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ) always clobbers reg byte a +Statement [78] (word) divr16u::divisor#0 ← (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a +Statement [79] (word) divr16u::rem#3 ← (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ) always clobbers reg byte a +Statement [81] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ) always clobbers reg byte a +Statement [82] (word) divr16s::resultu#0 ← (word) divr16u::return#2 [ divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ) always clobbers reg byte a +Statement [84] (signed word) rem16s#2 ← - (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a +Statement [85] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 rem16s#2 divr16s::return#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a +Statement [88] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 divr16s::return#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 ] ) always clobbers reg byte a +Statement [89] (signed word~) rem16s#57 ← (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::return#7 rem16s#57 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 rem16s#57 ] ) always clobbers reg byte a +Statement [90] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a +Statement [91] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a +Statement [92] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a +Statement [93] (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::$10 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::$10 ] ) always clobbers reg byte a +Statement [94] (word~) divr16s::remu#7 ← (word)(signed word~) divr16s::$10 [ divr16s::divisor#0 divr16s::remu#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#7 ] ) always clobbers reg byte a +Statement [98] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ divr16u::i#2 divr16u::i#1 ] -Statement [101] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [101] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [105] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [107] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (word) divr16u::divisor#0 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [115] *((byte*) screen_fill::screen#2) ? (const byte) screen_fill::ch#0 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ( main:2::screen_fill:17 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ) always clobbers reg byte a reg byte y +Statement [107] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [115] *((byte*) screen_fill::screen#2) ← (const byte) screen_fill::ch#0 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ( main:2::screen_fill:17 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ screen_fill::y#4 screen_fill::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:25 [ screen_fill::y#4 screen_fill::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:28 [ screen_fill::x#2 screen_fill::x#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:28 [ screen_fill::x#2 screen_fill::x#1 ] -Statement [122] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:15 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [123] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:15 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [126] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:15 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [122] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:15 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [123] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:15 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [126] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:15 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:29 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:29 [ bitmap_clear::y#4 bitmap_clear::y#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:32 [ bitmap_clear::x#2 bitmap_clear::x#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:32 [ bitmap_clear::x#2 bitmap_clear::x#1 ] -Statement [150] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [150] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:35 [ bitmap_init::y#2 bitmap_init::y#1 ] -Statement [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [7] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [8] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [10] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [12] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [21] (byte~) main::$9 ? (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ) always clobbers reg byte a -Statement [22] (word) bitmap_plot::x#0 ? *((const word[4]) x_start#0 + (byte) main::i#2) [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ) always clobbers reg byte a +Statement [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [7] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [8] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [10] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [12] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [21] (byte~) main::$9 ← (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 ] ) always clobbers reg byte a +Statement [22] (word) bitmap_plot::x#0 ← *((const word[4]) x_start#0 + (byte) main::i#2) [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ( main:2 [ main::i#2 rem16u#18 rem16s#13 main::$9 bitmap_plot::x#0 ] ) always clobbers reg byte a Statement [27] if(*((const byte*) RASTER#0)!=(byte/word/signed word/dword/signed dword) $ff) goto main::@2 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [29] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) [ bitmap_plot::x#0 bitmap_plot::$3 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 ] ) always clobbers reg byte a -Statement [30] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a -Statement [31] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#0 bitmap_plot::plotter#1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::plotter#1 ] ) always clobbers reg byte a -Statement [32] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#0 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a -Statement [33] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a reg byte y -Statement [35] (byte) point_init::point_idx1#0 ? (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a -Statement [36] (signed word) point_init::x_diff#1 ? (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ) always clobbers reg byte a -Statement [37] (signed word~) point_init::$4 ? ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ) always clobbers reg byte a -Statement [38] (signed word~) point_init::$5 ? ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ) always clobbers reg byte a -Statement [39] (signed word) point_init::y_diff#0 ? (signed word~) point_init::$4 - (signed word~) point_init::$5 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a +Statement [29] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) [ bitmap_plot::x#0 bitmap_plot::$3 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 ] ) always clobbers reg byte a +Statement [30] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 [ bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::$3 bitmap_plot::$1 ] ) always clobbers reg byte a +Statement [31] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 [ bitmap_plot::x#0 bitmap_plot::plotter#1 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::x#0 bitmap_plot::plotter#1 ] ) always clobbers reg byte a +Statement [32] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#0 [ bitmap_plot::plotter#1 bitmap_plot::$2 ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 bitmap_plot::plotter#1 bitmap_plot::$2 ] ) always clobbers reg byte a +Statement [33] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) [ ] ( main:2::bitmap_plot:24 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a reg byte y +Statement [35] (byte) point_init::point_idx1#0 ← (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a +Statement [36] (signed word) point_init::x_diff#1 ← (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 ] ) always clobbers reg byte a +Statement [37] (signed word~) point_init::$4 ← ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 ] ) always clobbers reg byte a +Statement [38] (signed word~) point_init::$5 ← ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::$4 point_init::$5 ] ) always clobbers reg byte a +Statement [39] (signed word) point_init::y_diff#0 ← (signed word~) point_init::$4 - (signed word~) point_init::$5 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a Statement [40] if((signed word) point_init::x_diff#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::abs16s1_@1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [41] (word~) point_init::abs16s1_return#6 ? (word)(signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ) always clobbers reg byte a +Statement [41] (word~) point_init::abs16s1_return#6 ← (word)(signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#6 ] ) always clobbers reg byte a Statement [43] if((signed word) point_init::y_diff#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::abs16s2_@1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 ] ) always clobbers reg byte a -Statement [44] (word~) point_init::abs16s2_return#6 ? (word)(signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ) always clobbers reg byte a +Statement [44] (word~) point_init::abs16s2_return#6 ← (word)(signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#6 ] ) always clobbers reg byte a Statement [46] if((word) point_init::abs16s1_return#2>(word) point_init::abs16s2_return#2) goto point_init::@1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [48] (word~) point_init::$10 ? *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ) always clobbers reg byte a -Statement [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$10 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a -Statement [50] (word~) point_init::$11 ? ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ) always clobbers reg byte a -Statement [51] (word~) point_init::$12 ? (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ) always clobbers reg byte a -Statement [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$12 [ rem16u#18 rem16s#13 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx1#0 ] ) always clobbers reg byte a -Statement [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ? (const byte) DELAY#0 [ rem16u#18 rem16s#13 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a +Statement [48] (word~) point_init::$10 ← *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$10 ] ) always clobbers reg byte a +Statement [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$10 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 ] ) always clobbers reg byte a +Statement [50] (word~) point_init::$11 ← ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$11 ] ) always clobbers reg byte a +Statement [51] (word~) point_init::$12 ← (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 [ rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx#0 point_init::point_idx1#0 point_init::$12 ] ) always clobbers reg byte a +Statement [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$12 [ rem16u#18 rem16s#13 point_init::point_idx1#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 point_init::point_idx1#0 ] ) always clobbers reg byte a +Statement [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ← (const byte) DELAY#0 [ rem16u#18 rem16s#13 ] ( main:2::point_init:20 [ main::i#2 rem16u#18 rem16s#13 ] ) always clobbers reg byte a Statement [55] if((signed word) point_init::x_diff#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto point_init::@4 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? (byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [57] (signed word) divr16s::divisor#0 ? (signed word) point_init::x_diff#1 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [58] (signed word) divr16s::rem#0 ? (signed word) point_init::y_diff#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ) always clobbers reg byte a -Statement [60] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ) always clobbers reg byte a -Statement [61] (signed word) point_init::x_stepf#0 ? (signed word) divr16s::return#3 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ) always clobbers reg byte a -Statement [62] (byte~) point_init::$16 ? > (signed word) point_init::x_stepf#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ) always clobbers reg byte a -Statement [63] (byte~) point_init::$17 ? (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ) always clobbers reg byte a -Statement [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? -(byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a -Statement [66] (signed word) point_init::abs16s2_$2#0 ? - (signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ) always clobbers reg byte a -Statement [67] (word~) point_init::abs16s2_return#5 ? (word)(signed word) point_init::abs16s2_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ) always clobbers reg byte a -Statement [68] (signed word) point_init::abs16s1_$2#0 ? - (signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ) always clobbers reg byte a -Statement [69] (word~) point_init::abs16s1_return#5 ? (word)(signed word) point_init::abs16s1_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ) always clobbers reg byte a +Statement [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← (byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a +Statement [57] (signed word) divr16s::divisor#0 ← (signed word) point_init::x_diff#1 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::y_diff#0 divr16s::divisor#0 ] ) always clobbers reg byte a +Statement [58] (signed word) divr16s::rem#0 ← (signed word) point_init::y_diff#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ) always clobbers reg byte a +Statement [60] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 divr16s::return#3 ] ) always clobbers reg byte a +Statement [61] (signed word) point_init::x_stepf#0 ← (signed word) divr16s::return#3 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::x_stepf#0 ] ) always clobbers reg byte a +Statement [62] (byte~) point_init::$16 ← > (signed word) point_init::x_stepf#0 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$16 ] ) always clobbers reg byte a +Statement [63] (byte~) point_init::$17 ← (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#3 point_init::$17 ] ) always clobbers reg byte a +Statement [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← -(byte/signed byte/word/signed word/dword/signed dword) $10 [ point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ( main:2::point_init:20 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 ] ) always clobbers reg byte a +Statement [66] (signed word) point_init::abs16s2_$2#0 ← - (signed word) point_init::y_diff#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_$2#0 ] ) always clobbers reg byte a +Statement [67] (word~) point_init::abs16s2_return#5 ← (word)(signed word) point_init::abs16s2_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#2 point_init::abs16s2_return#5 ] ) always clobbers reg byte a +Statement [68] (signed word) point_init::abs16s1_$2#0 ← - (signed word) point_init::x_diff#1 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_$2#0 ] ) always clobbers reg byte a +Statement [69] (word~) point_init::abs16s1_return#5 ← (word)(signed word) point_init::abs16s1_$2#0 [ rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ( main:2::point_init:20 [ main::i#2 rem16u#21 rem16s#15 point_init::point_idx#0 point_init::point_idx1#0 point_init::x_diff#1 point_init::y_diff#0 point_init::abs16s1_return#5 ] ) always clobbers reg byte a Statement [71] if((signed word) divr16s::rem#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@1 [ divr16s::divisor#0 divr16s::rem#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::rem#0 ] ) always clobbers reg byte a -Statement [72] (word~) divr16s::remu#8 ? (word)(signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::remu#8 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#8 ] ) always clobbers reg byte a +Statement [72] (word~) divr16s::remu#8 ← (word)(signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::remu#8 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#8 ] ) always clobbers reg byte a Statement [74] if((signed word) divr16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@3 [ divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ) always clobbers reg byte a -Statement [75] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a -Statement [77] (word) divr16u::dividend#1 ? (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ) always clobbers reg byte a -Statement [78] (word) divr16u::divisor#0 ? (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a -Statement [79] (word) divr16u::rem#3 ? (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ) always clobbers reg byte a -Statement [81] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ) always clobbers reg byte a -Statement [82] (word) divr16s::resultu#0 ? (word) divr16u::return#2 [ divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ) always clobbers reg byte a -Statement [84] (signed word) rem16s#2 ? - (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a -Statement [85] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 rem16s#2 divr16s::return#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a -Statement [88] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 divr16s::return#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 ] ) always clobbers reg byte a -Statement [89] (signed word~) rem16s#57 ? (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::return#7 rem16s#57 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 rem16s#57 ] ) always clobbers reg byte a -Statement [90] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a -Statement [91] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a -Statement [92] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a -Statement [93] (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::$10 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::$10 ] ) always clobbers reg byte a -Statement [94] (word~) divr16s::remu#7 ? (word)(signed word~) divr16s::$10 [ divr16s::divisor#0 divr16s::remu#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#7 ] ) always clobbers reg byte a -Statement [98] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [101] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [75] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a +Statement [77] (word) divr16u::dividend#1 ← (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#1 ] ) always clobbers reg byte a +Statement [78] (word) divr16u::divisor#0 ← (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a +Statement [79] (word) divr16u::rem#3 ← (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::dividend#1 divr16u::divisor#0 divr16u::rem#3 ] ) always clobbers reg byte a +Statement [81] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16u::return#2 ] ) always clobbers reg byte a +Statement [82] (word) divr16s::resultu#0 ← (word) divr16u::return#2 [ divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::neg#4 divr16s::resultu#0 ] ) always clobbers reg byte a +Statement [84] (signed word) rem16s#2 ← - (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a +Statement [85] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 rem16s#2 divr16s::return#1 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a +Statement [88] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 [ divr16u::rem#10 divr16s::return#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 ] ) always clobbers reg byte a +Statement [89] (signed word~) rem16s#57 ← (signed word)(word) divr16u::rem#10 [ divr16u::rem#10 divr16s::return#7 rem16s#57 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16u::rem#10 divr16s::return#7 rem16s#57 ] ) always clobbers reg byte a +Statement [90] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a +Statement [91] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a +Statement [92] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a +Statement [93] (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#0 [ divr16s::divisor#0 divr16s::$10 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::$10 ] ) always clobbers reg byte a +Statement [94] (word~) divr16s::remu#7 ← (word)(signed word~) divr16s::$10 [ divr16s::divisor#0 divr16s::remu#7 ] ( main:2::point_init:20::divr16s:59 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::divisor#0 divr16s::remu#7 ] ) always clobbers reg byte a +Statement [98] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [101] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [105] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [107] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (word) divr16u::divisor#0 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [115] *((byte*) screen_fill::screen#2) ? (const byte) screen_fill::ch#0 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ( main:2::screen_fill:17 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ) always clobbers reg byte a reg byte y -Statement [122] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:15 [ bitmap_clear::$3 ] ) always clobbers reg byte a -Statement [123] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:15 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a -Statement [126] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:15 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y -Statement [142] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ) always clobbers reg byte a -Statement [148] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ) always clobbers reg byte a -Statement [150] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a +Statement [107] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 [ divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::point_init:20::divr16s:59::divr16u:80 [ main::i#2 point_init::point_idx#0 point_init::point_idx1#0 divr16s::neg#4 divr16u::divisor#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [115] *((byte*) screen_fill::screen#2) ← (const byte) screen_fill::ch#0 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ( main:2::screen_fill:17 [ screen_fill::y#4 screen_fill::screen#2 screen_fill::x#2 ] ) always clobbers reg byte a reg byte y +Statement [122] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) [ bitmap_clear::$3 ] ( main:2::bitmap_clear:15 [ bitmap_clear::$3 ] ) always clobbers reg byte a +Statement [123] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 [ bitmap_clear::bitmap#5 ] ( main:2::bitmap_clear:15 [ bitmap_clear::bitmap#5 ] ) always clobbers reg byte a +Statement [126] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ( main:2::bitmap_clear:15 [ bitmap_clear::y#4 bitmap_clear::bitmap#2 bitmap_clear::x#2 ] ) always clobbers reg byte a reg byte y +Statement [142] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$3 ] ) always clobbers reg byte a +Statement [148] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#2 bitmap_init::$7 ] ) always clobbers reg byte a +Statement [150] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ( main:2::bitmap_init:13 [ bitmap_init::y#2 bitmap_init::yoffs#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ main::i#2 main::i#1 ] : zp ZP_BYTE:2 , reg byte x , Potential registers zp ZP_WORD:3 [ rem16s#15 rem16s#13 rem16s#3 rem16s#2 rem16s#57 ] : zp ZP_WORD:3 , Potential registers zp ZP_WORD:5 [ point_init::abs16s1_return#2 point_init::abs16s1_return#5 point_init::abs16s1_return#6 ] : zp ZP_WORD:5 , @@ -4560,21 +4560,21 @@ main: { .label i = 2 //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 jmp vicSelectGfxBank1 //SEG14 main::vicSelectGfxBank1 vicSelectGfxBank1: - //SEG15 [8] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG15 [8] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG16 [9] phi from main::vicSelectGfxBank1 to main::vicSelectGfxBank1_toDd001 [phi:main::vicSelectGfxBank1->main::vicSelectGfxBank1_toDd001] @@ -4585,7 +4585,7 @@ main: { jmp vicSelectGfxBank1_b1 //SEG18 main::vicSelectGfxBank1_@1 vicSelectGfxBank1_b1: - //SEG19 [10] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG19 [10] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A //SEG20 [11] phi from main::vicSelectGfxBank1_@1 to main::toD0181 [phi:main::vicSelectGfxBank1_@1->main::toD0181] @@ -4596,7 +4596,7 @@ main: { jmp b4 //SEG22 main::@4 b4: - //SEG23 [12] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG23 [12] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 //SEG24 [13] call bitmap_init @@ -4643,30 +4643,30 @@ main: { jmp b1 //SEG41 main::@1 b1: - //SEG42 [19] (byte) point_init::point_idx#0 ? (byte) main::i#2 + //SEG42 [19] (byte) point_init::point_idx#0 ← (byte) main::i#2 //SEG43 [20] call point_init jsr point_init jmp b7 //SEG44 main::@7 b7: - //SEG45 [21] (byte~) main::$9 ? (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_ror_1 + //SEG45 [21] (byte~) main::$9 ← (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_ror_1 lda i lsr tax - //SEG46 [22] (word) bitmap_plot::x#0 ? *((const word[4]) x_start#0 + (byte) main::i#2) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG46 [22] (word) bitmap_plot::x#0 ← *((const word[4]) x_start#0 + (byte) main::i#2) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda x_start,y sta bitmap_plot.x lda x_start+1,y sta bitmap_plot.x+1 - //SEG47 [23] (byte) bitmap_plot::y#0 ? *((const byte[4]) y_start#0 + (byte~) main::$9) -- vbuyy=pbuc1_derefidx_vbuxx + //SEG47 [23] (byte) bitmap_plot::y#0 ← *((const byte[4]) y_start#0 + (byte~) main::$9) -- vbuyy=pbuc1_derefidx_vbuxx ldy y_start,x //SEG48 [24] call bitmap_plot jsr bitmap_plot jmp b8 //SEG49 main::@8 b8: - //SEG50 [25] (byte) main::i#1 ? (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG50 [25] (byte) main::i#1 ← (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -4685,7 +4685,7 @@ main: { jmp b3 //SEG54 main::@3 b3: - //SEG55 [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG55 [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL jmp b2 } @@ -4697,19 +4697,19 @@ bitmap_plot: { .label x = 5 .label plotter = 7 .label _3 = 7 - //SEG57 [29] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG57 [29] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta _3+1 lda bitmap_plot_ylo,y sta _3 - //SEG58 [30] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 + //SEG58 [30] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 lda x and #<$fff8 sta _1 lda x+1 and #>$fff8 sta _1+1 - //SEG59 [31] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 + //SEG59 [31] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 lda plotter clc adc _1 @@ -4717,9 +4717,9 @@ bitmap_plot: { lda plotter+1 adc _1+1 sta plotter+1 - //SEG60 [32] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#0 -- vbuaa=_lo_vwuz1 + //SEG60 [32] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#0 -- vbuaa=_lo_vwuz1 lda x - //SEG61 [33] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa + //SEG61 [33] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa tay lda bitmap_plot_bit,y ldy #0 @@ -4750,11 +4750,11 @@ point_init: { .label abs16s2_return = 7 .label x_stepf = 5 .label x_diff = $b - //SEG65 [35] (byte) point_init::point_idx1#0 ? (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG65 [35] (byte) point_init::point_idx1#0 ← (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda point_idx lsr sta point_idx1 - //SEG66 [36] (signed word) point_init::x_diff#1 ? (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) -- vwsz1=pwsc1_derefidx_vbuz2_minus_pwsc2_derefidx_vbuz2 + //SEG66 [36] (signed word) point_init::x_diff#1 ← (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) -- vwsz1=pwsc1_derefidx_vbuz2_minus_pwsc2_derefidx_vbuz2 ldy point_idx sec lda x_end,y @@ -4763,19 +4763,19 @@ point_init: { lda x_end+1,y sbc x_start+1,y sta x_diff+1 - //SEG67 [37] (signed word~) point_init::$4 ? ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 + //SEG67 [37] (signed word~) point_init::$4 ← ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_end,y sta _4 lda #0 sta _4+1 - //SEG68 [38] (signed word~) point_init::$5 ? ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 + //SEG68 [38] (signed word~) point_init::$5 ← ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_start,y sta _5 lda #0 sta _5+1 - //SEG69 [39] (signed word) point_init::y_diff#0 ? (signed word~) point_init::$4 - (signed word~) point_init::$5 -- vwsz1=vwsz1_minus_vwsz2 + //SEG69 [39] (signed word) point_init::y_diff#0 ← (signed word~) point_init::$4 - (signed word~) point_init::$5 -- vwsz1=vwsz1_minus_vwsz2 lda y_diff sec sbc _5 @@ -4792,7 +4792,7 @@ point_init: { jmp b8 //SEG72 point_init::@8 b8: - //SEG73 [41] (word~) point_init::abs16s1_return#6 ? (word)(signed word) point_init::x_diff#1 -- vwuz1=vwuz2 + //SEG73 [41] (word~) point_init::abs16s1_return#6 ← (word)(signed word) point_init::x_diff#1 -- vwuz1=vwuz2 lda x_diff sta abs16s1_return lda x_diff+1 @@ -4813,7 +4813,7 @@ point_init: { jmp b9 //SEG79 point_init::@9 b9: - //SEG80 [44] (word~) point_init::abs16s2_return#6 ? (word)(signed word) point_init::y_diff#0 -- vwuz1=vwuz2 + //SEG80 [44] (word~) point_init::abs16s2_return#6 ← (word)(signed word) point_init::y_diff#0 -- vwuz1=vwuz2 lda y_diff sta abs16s2_return lda y_diff+1 @@ -4845,7 +4845,7 @@ point_init: { jmp b2 //SEG89 point_init::@2 b2: - //SEG90 [48] (word~) point_init::$10 ? *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=pwuc1_derefidx_vbuz2_rol_4 + //SEG90 [48] (word~) point_init::$10 ← *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=pwuc1_derefidx_vbuz2_rol_4 ldy point_idx lda x_start,y sta _10 @@ -4859,19 +4859,19 @@ point_init: { rol _10+1 asl _10 rol _10+1 - //SEG91 [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$10 -- pwuc1_derefidx_vbuz1=vwuz2 + //SEG91 [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$10 -- pwuc1_derefidx_vbuz1=vwuz2 ldy point_idx lda _10 sta x_cur,y lda _10+1 sta x_cur+1,y - //SEG92 [50] (word~) point_init::$11 ? ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwuz1=_word_pbuc1_derefidx_vbuz2 + //SEG92 [50] (word~) point_init::$11 ← ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwuz1=_word_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_start,y sta _11 lda #0 sta _11+1 - //SEG93 [51] (word~) point_init::$12 ? (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_rol_4 + //SEG93 [51] (word~) point_init::$12 ← (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_rol_4 asl _12 rol _12+1 asl _12 @@ -4880,13 +4880,13 @@ point_init: { rol _12+1 asl _12 rol _12+1 - //SEG94 [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$12 -- pwuc1_derefidx_vbuz1=vwuz2 + //SEG94 [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$12 -- pwuc1_derefidx_vbuz1=vwuz2 ldy point_idx lda _12 sta y_cur,y lda _12+1 sta y_cur+1,y - //SEG95 [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ? (const byte) DELAY#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG95 [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ← (const byte) DELAY#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #DELAY ldy point_idx1 sta delay,y @@ -4904,7 +4904,7 @@ point_init: { jmp b3 //SEG100 point_init::@3 b3: - //SEG101 [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? (byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbuc2 + //SEG101 [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← (byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbuc2 // x add = 1.0 ldy point_idx lda #$10 @@ -4912,8 +4912,8 @@ point_init: { jmp b5 //SEG102 point_init::@5 b5: - //SEG103 [57] (signed word) divr16s::divisor#0 ? (signed word) point_init::x_diff#1 - //SEG104 [58] (signed word) divr16s::rem#0 ? (signed word) point_init::y_diff#0 -- vwsz1=vwsz2 + //SEG103 [57] (signed word) divr16s::divisor#0 ← (signed word) point_init::x_diff#1 + //SEG104 [58] (signed word) divr16s::rem#0 ← (signed word) point_init::y_diff#0 -- vwsz1=vwsz2 lda y_diff sta divr16s.rem lda y_diff+1 @@ -4922,25 +4922,25 @@ point_init: { //SEG106 [70] phi from point_init::@5 to divr16s [phi:point_init::@5->divr16s] divr16s_from_b5: jsr divr16s - //SEG107 [60] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + //SEG107 [60] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 jmp b7 //SEG108 point_init::@7 b7: - //SEG109 [61] (signed word) point_init::x_stepf#0 ? (signed word) divr16s::return#3 - //SEG110 [62] (byte~) point_init::$16 ? > (signed word) point_init::x_stepf#0 -- vbuaa=_hi_vwsz1 + //SEG109 [61] (signed word) point_init::x_stepf#0 ← (signed word) divr16s::return#3 + //SEG110 [62] (byte~) point_init::$16 ← > (signed word) point_init::x_stepf#0 -- vbuaa=_hi_vwsz1 lda x_stepf+1 - //SEG111 [63] (byte~) point_init::$17 ? (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG111 [63] (byte~) point_init::$17 ← (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG112 [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ? (signed byte)(byte~) point_init::$17 -- pbsc1_derefidx_vbuz1=vbsaa + //SEG112 [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ← (signed byte)(byte~) point_init::$17 -- pbsc1_derefidx_vbuz1=vbsaa ldy point_idx1 sta y_add,y jmp b2_from_b7 //SEG113 point_init::@4 b4: - //SEG114 [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? -(byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbsc2 + //SEG114 [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← -(byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbsc2 // x add = -1.0 lda #-$10 ldy point_idx @@ -4948,7 +4948,7 @@ point_init: { jmp b5 //SEG115 point_init::abs16s2_@1 abs16s2_b1: - //SEG116 [66] (signed word) point_init::abs16s2_$2#0 ? - (signed word) point_init::y_diff#0 -- vwsz1=_neg_vwsz2 + //SEG116 [66] (signed word) point_init::abs16s2_$2#0 ← - (signed word) point_init::y_diff#0 -- vwsz1=_neg_vwsz2 sec lda y_diff eor #$ff @@ -4958,11 +4958,11 @@ point_init: { eor #$ff adc #0 sta abs16s2__2+1 - //SEG117 [67] (word~) point_init::abs16s2_return#5 ? (word)(signed word) point_init::abs16s2_$2#0 + //SEG117 [67] (word~) point_init::abs16s2_return#5 ← (word)(signed word) point_init::abs16s2_$2#0 jmp abs16s2_breturn_from_abs16s2_b1 //SEG118 point_init::abs16s1_@1 abs16s1_b1: - //SEG119 [68] (signed word) point_init::abs16s1_$2#0 ? - (signed word) point_init::x_diff#1 -- vwsz1=_neg_vwsz2 + //SEG119 [68] (signed word) point_init::abs16s1_$2#0 ← - (signed word) point_init::x_diff#1 -- vwsz1=_neg_vwsz2 sec lda x_diff eor #$ff @@ -4972,7 +4972,7 @@ point_init: { eor #$ff adc #0 sta abs16s1__2+1 - //SEG120 [69] (word~) point_init::abs16s1_return#5 ? (word)(signed word) point_init::abs16s1_$2#0 + //SEG120 [69] (word~) point_init::abs16s1_return#5 ← (word)(signed word) point_init::abs16s1_$2#0 jmp abs16s1_breturn_from_abs16s1_b1 } //SEG121 divr16s @@ -5002,7 +5002,7 @@ divr16s: { jmp b8 //SEG124 divr16s::@8 b8: - //SEG125 [72] (word~) divr16s::remu#8 ? (word)(signed word) divr16s::rem#0 + //SEG125 [72] (word~) divr16s::remu#8 ← (word)(signed word) divr16s::rem#0 //SEG126 [73] phi from divr16s::@8 to divr16s::@2 [phi:divr16s::@8->divr16s::@2] b2_from_b8: //SEG127 [73] phi (word) divr16s::remu#3 = (word~) divr16s::remu#8 [phi:divr16s::@8->divr16s::@2#0] -- register_copy @@ -5022,7 +5022,7 @@ divr16s: { jmp b9 //SEG132 divr16s::@9 b9: - //SEG133 [75] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 + //SEG133 [75] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 //SEG134 [76] phi from divr16s::@3 divr16s::@9 to divr16s::@4 [phi:divr16s::@3/divr16s::@9->divr16s::@4] b4_from_b3: b4_from_b9: @@ -5031,25 +5031,25 @@ divr16s: { jmp b4 //SEG137 divr16s::@4 b4: - //SEG138 [77] (word) divr16u::dividend#1 ? (word) divr16s::dividendu#3 - //SEG139 [78] (word) divr16u::divisor#0 ? (word) divr16s::divisoru#3 - //SEG140 [79] (word) divr16u::rem#3 ? (word) divr16s::remu#3 + //SEG138 [77] (word) divr16u::dividend#1 ← (word) divr16s::dividendu#3 + //SEG139 [78] (word) divr16u::divisor#0 ← (word) divr16s::divisoru#3 + //SEG140 [79] (word) divr16u::rem#3 ← (word) divr16s::remu#3 //SEG141 [80] call divr16u //SEG142 [95] phi from divr16s::@4 to divr16u [phi:divr16s::@4->divr16u] divr16u_from_b4: jsr divr16u - //SEG143 [81] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG143 [81] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b6 //SEG144 divr16s::@6 b6: - //SEG145 [82] (word) divr16s::resultu#0 ? (word) divr16u::return#2 + //SEG145 [82] (word) divr16s::resultu#0 ← (word) divr16u::return#2 //SEG146 [83] if((byte) divr16s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@10 -- vbuyy_eq_0_then_la1 cpy #0 beq b10 jmp b5 //SEG147 divr16s::@5 b5: - //SEG148 [84] (signed word) rem16s#2 ? - (signed word)(word) divr16u::rem#10 -- vwsz1=_neg_vwsz2 + //SEG148 [84] (signed word) rem16s#2 ← - (signed word)(word) divr16u::rem#10 -- vwsz1=_neg_vwsz2 sec lda divr16u.rem eor #$ff @@ -5059,7 +5059,7 @@ divr16s: { eor #$ff adc #0 sta rem16s+1 - //SEG149 [85] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 + //SEG149 [85] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 sec lda return eor #$ff @@ -5081,8 +5081,8 @@ divr16s: { rts //SEG155 divr16s::@10 b10: - //SEG156 [88] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 - //SEG157 [89] (signed word~) rem16s#57 ? (signed word)(word) divr16u::rem#10 -- vwsz1=vwsz2 + //SEG156 [88] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 + //SEG157 [89] (signed word~) rem16s#57 ← (signed word)(word) divr16u::rem#10 -- vwsz1=vwsz2 lda divr16u.rem sta rem16s lda divr16u.rem+1 @@ -5090,7 +5090,7 @@ divr16s: { jmp breturn_from_b10 //SEG158 divr16s::@3 b3: - //SEG159 [90] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 + //SEG159 [90] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 sec lda _13 eor #$ff @@ -5100,15 +5100,15 @@ divr16s: { eor #$ff adc #0 sta _13+1 - //SEG160 [91] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 + //SEG160 [91] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 tya eor #1 tay - //SEG161 [92] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 + //SEG161 [92] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 jmp b4_from_b3 //SEG162 divr16s::@1 b1: - //SEG163 [93] (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#0 -- vwsz1=_neg_vwsz1 + //SEG163 [93] (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#0 -- vwsz1=_neg_vwsz1 sec lda _10 eor #$ff @@ -5118,7 +5118,7 @@ divr16s: { eor #$ff adc #0 sta _10+1 - //SEG164 [94] (word~) divr16s::remu#7 ? (word)(signed word~) divr16s::$10 + //SEG164 [94] (word~) divr16s::remu#7 ← (word)(signed word~) divr16s::$10 //SEG165 [73] phi from divr16s::@1 to divr16s::@2 [phi:divr16s::@1->divr16s::@2] b2_from_b1: //SEG166 [73] phi (word) divr16s::remu#3 = (word~) divr16s::remu#7 [phi:divr16s::@1->divr16s::@2#0] -- register_copy @@ -5164,12 +5164,12 @@ divr16u: { jmp b1 //SEG180 divr16u::@1 b1: - //SEG181 [97] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG181 [97] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG182 [98] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 + //SEG182 [98] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG183 [99] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG183 [99] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG184 [100] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -5177,7 +5177,7 @@ divr16u: { jmp b4 //SEG185 divr16u::@4 b4: - //SEG186 [101] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG186 [101] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -5188,10 +5188,10 @@ divr16u: { jmp b2 //SEG189 divr16u::@2 b2: - //SEG190 [103] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG190 [103] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG191 [104] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG191 [104] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG192 [105] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 -- vwuz1_lt_vwuz2_then_la1 @@ -5206,12 +5206,12 @@ divr16u: { jmp b5 //SEG193 divr16u::@5 b5: - //SEG194 [106] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG194 [106] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG195 [107] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (word) divr16u::divisor#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG195 [107] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 -- vwuz1=vwuz1_minus_vwuz2 lda rem sec sbc divisor @@ -5227,7 +5227,7 @@ divr16u: { jmp b3 //SEG199 divr16u::@3 b3: - //SEG200 [109] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG200 [109] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG201 [110] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -5276,16 +5276,16 @@ screen_fill: { jmp b2 //SEG218 screen_fill::@2 b2: - //SEG219 [115] *((byte*) screen_fill::screen#2) ? (const byte) screen_fill::ch#0 -- _deref_pbuz1=vbuc1 + //SEG219 [115] *((byte*) screen_fill::screen#2) ← (const byte) screen_fill::ch#0 -- _deref_pbuz1=vbuc1 lda #ch ldy #0 sta (screen),y - //SEG220 [116] (byte*) screen_fill::screen#1 ? ++ (byte*) screen_fill::screen#2 -- pbuz1=_inc_pbuz1 + //SEG220 [116] (byte*) screen_fill::screen#1 ← ++ (byte*) screen_fill::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG221 [117] (byte) screen_fill::x#1 ? ++ (byte) screen_fill::x#2 -- vbuxx=_inc_vbuxx + //SEG221 [117] (byte) screen_fill::x#1 ← ++ (byte) screen_fill::x#2 -- vbuxx=_inc_vbuxx inx //SEG222 [118] if((byte) screen_fill::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto screen_fill::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 @@ -5293,7 +5293,7 @@ screen_fill: { jmp b3 //SEG223 screen_fill::@3 b3: - //SEG224 [119] (byte) screen_fill::y#1 ? ++ (byte) screen_fill::y#4 -- vbuz1=_inc_vbuz1 + //SEG224 [119] (byte) screen_fill::y#1 ← ++ (byte) screen_fill::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG225 [120] if((byte) screen_fill::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto screen_fill::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -5311,12 +5311,12 @@ bitmap_clear: { .label bitmap = 3 .label y = 2 .label _3 = 3 - //SEG229 [122] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG229 [122] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_ylo sta _3 lda bitmap_plot_yhi sta _3+1 - //SEG230 [123] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG230 [123] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG231 [124] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] b1_from_bitmap_clear: //SEG232 [124] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 @@ -5344,16 +5344,16 @@ bitmap_clear: { jmp b2 //SEG244 bitmap_clear::@2 b2: - //SEG245 [126] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG245 [126] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 ldy #0 sta (bitmap),y - //SEG246 [127] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG246 [127] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG247 [128] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG247 [128] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG248 [129] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 @@ -5361,7 +5361,7 @@ bitmap_clear: { jmp b3 //SEG249 bitmap_clear::@3 b3: - //SEG250 [130] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG250 [130] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG251 [131] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -5391,9 +5391,9 @@ bitmap_init: { jmp b1 //SEG261 bitmap_init::@1 b1: - //SEG262 [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG262 [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_bit,x - //SEG263 [136] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 + //SEG263 [136] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 lsr //SEG264 [137] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuaa_neq_0_then_la1 cmp #0 @@ -5405,7 +5405,7 @@ bitmap_init: { jmp b2 //SEG267 bitmap_init::@2 b2: - //SEG268 [139] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG268 [139] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG269 [140] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -5427,20 +5427,20 @@ bitmap_init: { jmp b3 //SEG276 bitmap_init::@3 b3: - //SEG277 [142] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG277 [142] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _3 - //SEG278 [143] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG278 [143] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG279 [144] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa + //SEG279 [144] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa ora _3 - //SEG280 [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG280 [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG281 [146] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG281 [146] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG282 [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG282 [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG283 [148] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG283 [148] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG284 [149] if((byte~) bitmap_init::$7!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 @@ -5449,7 +5449,7 @@ bitmap_init: { jmp b5 //SEG285 bitmap_init::@5 b5: - //SEG286 [150] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG286 [150] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -5464,7 +5464,7 @@ bitmap_init: { jmp b4 //SEG289 bitmap_init::@4 b4: - //SEG290 [152] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG290 [152] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG291 [153] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 @@ -6156,31 +6156,31 @@ main: { .label i = 2 //SEG10 asm { sei } sei - //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ? (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 + //SEG11 [5] *((const byte*) PROCPORT_DDR#0) ← (const byte) PROCPORT_DDR_MEMORY_MASK#0 -- _deref_pbuc1=vbuc2 // Disable normal interrupt // Disable kernal & basic lda #PROCPORT_DDR_MEMORY_MASK sta PROCPORT_DDR - //SEG12 [6] *((const byte*) PROCPORT#0) ? (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 + //SEG12 [6] *((const byte*) PROCPORT#0) ← (const byte) PROCPORT_RAM_IO#0 -- _deref_pbuc1=vbuc2 lda #PROCPORT_RAM_IO sta PROCPORT - //SEG13 [7] *((const byte*) D011#0) ? (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG13 [7] *((const byte*) D011#0) ← (const byte) VIC_BMM#0|(const byte) VIC_DEN#0|(const byte) VIC_RSEL#0|(byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #VIC_BMM|VIC_DEN|VIC_RSEL|3 sta D011 //SEG14 main::vicSelectGfxBank1 - //SEG15 [8] *((const byte*) CIA2_PORT_A_DDR#0) ? (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 + //SEG15 [8] *((const byte*) CIA2_PORT_A_DDR#0) ← (byte/signed byte/word/signed word/dword/signed dword) 3 -- _deref_pbuc1=vbuc2 lda #3 sta CIA2_PORT_A_DDR //SEG16 [9] phi from main::vicSelectGfxBank1 to main::vicSelectGfxBank1_toDd001 [phi:main::vicSelectGfxBank1->main::vicSelectGfxBank1_toDd001] //SEG17 main::vicSelectGfxBank1_toDd001 //SEG18 main::vicSelectGfxBank1_@1 - //SEG19 [10] *((const byte*) CIA2_PORT_A#0) ? (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 + //SEG19 [10] *((const byte*) CIA2_PORT_A#0) ← (const byte) main::vicSelectGfxBank1_toDd001_return#0 -- _deref_pbuc1=vbuc2 lda #vicSelectGfxBank1_toDd001_return sta CIA2_PORT_A //SEG20 [11] phi from main::vicSelectGfxBank1_@1 to main::toD0181 [phi:main::vicSelectGfxBank1_@1->main::toD0181] //SEG21 main::toD0181 //SEG22 main::@4 - //SEG23 [12] *((const byte*) D018#0) ? (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 + //SEG23 [12] *((const byte*) D018#0) ← (const byte) main::toD0181_return#0 -- _deref_pbuc1=vbuc2 lda #toD0181_return sta D018 //SEG24 [13] call bitmap_init @@ -6211,26 +6211,26 @@ main: { //SEG40 [18] phi (byte) main::i#2 = (byte) main::i#1 [phi:main::@8->main::@1#2] -- register_copy //SEG41 main::@1 b1: - //SEG42 [19] (byte) point_init::point_idx#0 ? (byte) main::i#2 + //SEG42 [19] (byte) point_init::point_idx#0 ← (byte) main::i#2 //SEG43 [20] call point_init jsr point_init //SEG44 main::@7 - //SEG45 [21] (byte~) main::$9 ? (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_ror_1 + //SEG45 [21] (byte~) main::$9 ← (byte) main::i#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuz1_ror_1 lda i lsr tax - //SEG46 [22] (word) bitmap_plot::x#0 ? *((const word[4]) x_start#0 + (byte) main::i#2) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG46 [22] (word) bitmap_plot::x#0 ← *((const word[4]) x_start#0 + (byte) main::i#2) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda x_start,y sta bitmap_plot.x lda x_start+1,y sta bitmap_plot.x+1 - //SEG47 [23] (byte) bitmap_plot::y#0 ? *((const byte[4]) y_start#0 + (byte~) main::$9) -- vbuyy=pbuc1_derefidx_vbuxx + //SEG47 [23] (byte) bitmap_plot::y#0 ← *((const byte[4]) y_start#0 + (byte~) main::$9) -- vbuyy=pbuc1_derefidx_vbuxx ldy y_start,x //SEG48 [24] call bitmap_plot jsr bitmap_plot //SEG49 main::@8 - //SEG50 [25] (byte) main::i#1 ? (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG50 [25] (byte) main::i#1 ← (byte) main::i#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -6246,7 +6246,7 @@ main: { cmp RASTER bne b2 //SEG54 main::@3 - //SEG55 [28] *((const byte*) BORDERCOL#0) ? ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 + //SEG55 [28] *((const byte*) BORDERCOL#0) ← ++ *((const byte*) BORDERCOL#0) -- _deref_pbuc1=_inc__deref_pbuc1 inc BORDERCOL jmp b2 } @@ -6258,19 +6258,19 @@ bitmap_plot: { .label x = 5 .label plotter = 7 .label _3 = 7 - //SEG57 [29] (word~) bitmap_plot::$3 ? *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy + //SEG57 [29] (word~) bitmap_plot::$3 ← *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_plot::y#0) w= *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_plot::y#0) -- vwuz1=pbuc1_derefidx_vbuyy_word_pbuc2_derefidx_vbuyy lda bitmap_plot_yhi,y sta _3+1 lda bitmap_plot_ylo,y sta _3 - //SEG58 [30] (word~) bitmap_plot::$1 ? (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 + //SEG58 [30] (word~) bitmap_plot::$1 ← (word) bitmap_plot::x#0 & (word/dword/signed dword) $fff8 -- vwuz1=vwuz2_band_vwuc1 lda x and #<$fff8 sta _1 lda x+1 and #>$fff8 sta _1+1 - //SEG59 [31] (byte*) bitmap_plot::plotter#1 ? (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 + //SEG59 [31] (byte*) bitmap_plot::plotter#1 ← (byte*)(word~) bitmap_plot::$3 + (word~) bitmap_plot::$1 -- pbuz1=pbuz1_plus_vwuz2 lda plotter clc adc _1 @@ -6278,9 +6278,9 @@ bitmap_plot: { lda plotter+1 adc _1+1 sta plotter+1 - //SEG60 [32] (byte~) bitmap_plot::$2 ? < (word) bitmap_plot::x#0 -- vbuaa=_lo_vwuz1 + //SEG60 [32] (byte~) bitmap_plot::$2 ← < (word) bitmap_plot::x#0 -- vbuaa=_lo_vwuz1 lda x - //SEG61 [33] *((byte*) bitmap_plot::plotter#1) ? *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa + //SEG61 [33] *((byte*) bitmap_plot::plotter#1) ← *((byte*) bitmap_plot::plotter#1) | *((const byte[$100]) bitmap_plot_bit#0 + (byte~) bitmap_plot::$2) -- _deref_pbuz1=_deref_pbuz1_bor_pbuc1_derefidx_vbuaa tay lda bitmap_plot_bit,y ldy #0 @@ -6308,11 +6308,11 @@ point_init: { .label abs16s2_return = 7 .label x_stepf = 5 .label x_diff = $b - //SEG65 [35] (byte) point_init::point_idx1#0 ? (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 + //SEG65 [35] (byte) point_init::point_idx1#0 ← (byte) point_init::point_idx#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_ror_1 lda point_idx lsr sta point_idx1 - //SEG66 [36] (signed word) point_init::x_diff#1 ? (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) -- vwsz1=pwsc1_derefidx_vbuz2_minus_pwsc2_derefidx_vbuz2 + //SEG66 [36] (signed word) point_init::x_diff#1 ← (signed word)*((const word[4]) x_end#0 + (byte) point_init::point_idx#0) - (signed word)*((const word[4]) x_start#0 + (byte) point_init::point_idx#0) -- vwsz1=pwsc1_derefidx_vbuz2_minus_pwsc2_derefidx_vbuz2 ldy point_idx sec lda x_end,y @@ -6321,18 +6321,18 @@ point_init: { lda x_end+1,y sbc x_start+1,y sta x_diff+1 - //SEG67 [37] (signed word~) point_init::$4 ? ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 + //SEG67 [37] (signed word~) point_init::$4 ← ((signed word)) *((const byte[4]) y_end#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_end,y sta _4 lda #0 sta _4+1 - //SEG68 [38] (signed word~) point_init::$5 ? ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 + //SEG68 [38] (signed word~) point_init::$5 ← ((signed word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwsz1=_sword_pbuc1_derefidx_vbuz2 lda y_start,y sta _5 lda #0 sta _5+1 - //SEG69 [39] (signed word) point_init::y_diff#0 ? (signed word~) point_init::$4 - (signed word~) point_init::$5 -- vwsz1=vwsz1_minus_vwsz2 + //SEG69 [39] (signed word) point_init::y_diff#0 ← (signed word~) point_init::$4 - (signed word~) point_init::$5 -- vwsz1=vwsz1_minus_vwsz2 lda y_diff sec sbc _5 @@ -6347,7 +6347,7 @@ point_init: { jmp abs16s1_b1 !abs16s1_b1: //SEG72 point_init::@8 - //SEG73 [41] (word~) point_init::abs16s1_return#6 ? (word)(signed word) point_init::x_diff#1 -- vwuz1=vwuz2 + //SEG73 [41] (word~) point_init::abs16s1_return#6 ← (word)(signed word) point_init::x_diff#1 -- vwuz1=vwuz2 lda x_diff sta abs16s1_return lda x_diff+1 @@ -6363,7 +6363,7 @@ point_init: { jmp abs16s2_b1 !abs16s2_b1: //SEG79 point_init::@9 - //SEG80 [44] (word~) point_init::abs16s2_return#6 ? (word)(signed word) point_init::y_diff#0 -- vwuz1=vwuz2 + //SEG80 [44] (word~) point_init::abs16s2_return#6 ← (word)(signed word) point_init::y_diff#0 -- vwuz1=vwuz2 lda y_diff sta abs16s2_return lda y_diff+1 @@ -6387,7 +6387,7 @@ point_init: { //SEG88 [47] phi (word) rem16u#18 = (word) rem16u#21 [phi:point_init::@6/point_init::@7->point_init::@2#1] -- register_copy //SEG89 point_init::@2 b2: - //SEG90 [48] (word~) point_init::$10 ? *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=pwuc1_derefidx_vbuz2_rol_4 + //SEG90 [48] (word~) point_init::$10 ← *((const word[4]) x_start#0 + (byte) point_init::point_idx#0) << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=pwuc1_derefidx_vbuz2_rol_4 ldy point_idx lda x_start,y sta _10 @@ -6401,18 +6401,18 @@ point_init: { rol _10+1 asl _10 rol _10+1 - //SEG91 [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$10 -- pwuc1_derefidx_vbuz1=vwuz2 + //SEG91 [49] *((const word[4]) x_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$10 -- pwuc1_derefidx_vbuz1=vwuz2 lda _10 sta x_cur,y lda _10+1 sta x_cur+1,y - //SEG92 [50] (word~) point_init::$11 ? ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwuz1=_word_pbuc1_derefidx_vbuz2 + //SEG92 [50] (word~) point_init::$11 ← ((word)) *((const byte[4]) y_start#0 + (byte) point_init::point_idx1#0) -- vwuz1=_word_pbuc1_derefidx_vbuz2 ldy point_idx1 lda y_start,y sta _11 lda #0 sta _11+1 - //SEG93 [51] (word~) point_init::$12 ? (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_rol_4 + //SEG93 [51] (word~) point_init::$12 ← (word~) point_init::$11 << (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_rol_4 asl _12 rol _12+1 asl _12 @@ -6421,13 +6421,13 @@ point_init: { rol _12+1 asl _12 rol _12+1 - //SEG94 [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ? (word~) point_init::$12 -- pwuc1_derefidx_vbuz1=vwuz2 + //SEG94 [52] *((const word[4]) y_cur#0 + (byte) point_init::point_idx#0) ← (word~) point_init::$12 -- pwuc1_derefidx_vbuz1=vwuz2 ldy point_idx lda _12 sta y_cur,y lda _12+1 sta y_cur+1,y - //SEG95 [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ? (const byte) DELAY#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG95 [53] *((const byte[4]) delay#0 + (byte) point_init::point_idx1#0) ← (const byte) DELAY#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #DELAY ldy point_idx1 sta delay,y @@ -6441,15 +6441,15 @@ point_init: { lda x_diff+1 bmi b4 //SEG100 point_init::@3 - //SEG101 [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? (byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbuc2 + //SEG101 [56] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← (byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbuc2 // x add = 1.0 ldy point_idx lda #$10 sta x_add,y //SEG102 point_init::@5 b5: - //SEG103 [57] (signed word) divr16s::divisor#0 ? (signed word) point_init::x_diff#1 - //SEG104 [58] (signed word) divr16s::rem#0 ? (signed word) point_init::y_diff#0 -- vwsz1=vwsz2 + //SEG103 [57] (signed word) divr16s::divisor#0 ← (signed word) point_init::x_diff#1 + //SEG104 [58] (signed word) divr16s::rem#0 ← (signed word) point_init::y_diff#0 -- vwsz1=vwsz2 lda y_diff sta divr16s.rem lda y_diff+1 @@ -6457,23 +6457,23 @@ point_init: { //SEG105 [59] call divr16s //SEG106 [70] phi from point_init::@5 to divr16s [phi:point_init::@5->divr16s] jsr divr16s - //SEG107 [60] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + //SEG107 [60] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 //SEG108 point_init::@7 - //SEG109 [61] (signed word) point_init::x_stepf#0 ? (signed word) divr16s::return#3 - //SEG110 [62] (byte~) point_init::$16 ? > (signed word) point_init::x_stepf#0 -- vbuaa=_hi_vwsz1 + //SEG109 [61] (signed word) point_init::x_stepf#0 ← (signed word) divr16s::return#3 + //SEG110 [62] (byte~) point_init::$16 ← > (signed word) point_init::x_stepf#0 -- vbuaa=_hi_vwsz1 lda x_stepf+1 - //SEG111 [63] (byte~) point_init::$17 ? (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG111 [63] (byte~) point_init::$17 ← (byte~) point_init::$16 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG112 [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ? (signed byte)(byte~) point_init::$17 -- pbsc1_derefidx_vbuz1=vbsaa + //SEG112 [64] *((const signed byte[4]) y_add#0 + (byte) point_init::point_idx1#0) ← (signed byte)(byte~) point_init::$17 -- pbsc1_derefidx_vbuz1=vbsaa ldy point_idx1 sta y_add,y jmp b2 //SEG113 point_init::@4 b4: - //SEG114 [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ? -(byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbsc2 + //SEG114 [65] *((const signed byte[4]) x_add#0 + (byte) point_init::point_idx#0) ← -(byte/signed byte/word/signed word/dword/signed dword) $10 -- pbsc1_derefidx_vbuz1=vbsc2 // x add = -1.0 lda #-$10 ldy point_idx @@ -6481,7 +6481,7 @@ point_init: { jmp b5 //SEG115 point_init::abs16s2_@1 abs16s2_b1: - //SEG116 [66] (signed word) point_init::abs16s2_$2#0 ? - (signed word) point_init::y_diff#0 -- vwsz1=_neg_vwsz2 + //SEG116 [66] (signed word) point_init::abs16s2_$2#0 ← - (signed word) point_init::y_diff#0 -- vwsz1=_neg_vwsz2 sec lda y_diff eor #$ff @@ -6491,11 +6491,11 @@ point_init: { eor #$ff adc #0 sta abs16s2__2+1 - //SEG117 [67] (word~) point_init::abs16s2_return#5 ? (word)(signed word) point_init::abs16s2_$2#0 + //SEG117 [67] (word~) point_init::abs16s2_return#5 ← (word)(signed word) point_init::abs16s2_$2#0 jmp b6 //SEG118 point_init::abs16s1_@1 abs16s1_b1: - //SEG119 [68] (signed word) point_init::abs16s1_$2#0 ? - (signed word) point_init::x_diff#1 -- vwsz1=_neg_vwsz2 + //SEG119 [68] (signed word) point_init::abs16s1_$2#0 ← - (signed word) point_init::x_diff#1 -- vwsz1=_neg_vwsz2 sec lda x_diff eor #$ff @@ -6505,7 +6505,7 @@ point_init: { eor #$ff adc #0 sta abs16s1__2+1 - //SEG120 [69] (word~) point_init::abs16s1_return#5 ? (word)(signed word) point_init::abs16s1_$2#0 + //SEG120 [69] (word~) point_init::abs16s1_return#5 ← (word)(signed word) point_init::abs16s1_$2#0 jmp abs16s2 } //SEG121 divr16s @@ -6531,7 +6531,7 @@ divr16s: { lda rem+1 bmi b1 //SEG124 divr16s::@8 - //SEG125 [72] (word~) divr16s::remu#8 ? (word)(signed word) divr16s::rem#0 + //SEG125 [72] (word~) divr16s::remu#8 ← (word)(signed word) divr16s::rem#0 //SEG126 [73] phi from divr16s::@8 to divr16s::@2 [phi:divr16s::@8->divr16s::@2] //SEG127 [73] phi (word) divr16s::remu#3 = (word~) divr16s::remu#8 [phi:divr16s::@8->divr16s::@2#0] -- register_copy //SEG128 [73] phi (word) divr16s::dividendu#3 = ((word))(const signed word) divr16s::dividend#0 [phi:divr16s::@8->divr16s::@2#1] -- vwuz1=vbuc1 @@ -6547,26 +6547,26 @@ divr16s: { lda divisor+1 bmi b3 //SEG132 divr16s::@9 - //SEG133 [75] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 + //SEG133 [75] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 //SEG134 [76] phi from divr16s::@3 divr16s::@9 to divr16s::@4 [phi:divr16s::@3/divr16s::@9->divr16s::@4] //SEG135 [76] phi (byte) divr16s::neg#4 = (byte) divr16s::neg#2 [phi:divr16s::@3/divr16s::@9->divr16s::@4#0] -- register_copy //SEG136 [76] phi (word) divr16s::divisoru#3 = (word~) divr16s::divisoru#4 [phi:divr16s::@3/divr16s::@9->divr16s::@4#1] -- register_copy //SEG137 divr16s::@4 b4: - //SEG138 [77] (word) divr16u::dividend#1 ? (word) divr16s::dividendu#3 - //SEG139 [78] (word) divr16u::divisor#0 ? (word) divr16s::divisoru#3 - //SEG140 [79] (word) divr16u::rem#3 ? (word) divr16s::remu#3 + //SEG138 [77] (word) divr16u::dividend#1 ← (word) divr16s::dividendu#3 + //SEG139 [78] (word) divr16u::divisor#0 ← (word) divr16s::divisoru#3 + //SEG140 [79] (word) divr16u::rem#3 ← (word) divr16s::remu#3 //SEG141 [80] call divr16u //SEG142 [95] phi from divr16s::@4 to divr16u [phi:divr16s::@4->divr16u] jsr divr16u - //SEG143 [81] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG143 [81] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG144 divr16s::@6 - //SEG145 [82] (word) divr16s::resultu#0 ? (word) divr16u::return#2 + //SEG145 [82] (word) divr16s::resultu#0 ← (word) divr16u::return#2 //SEG146 [83] if((byte) divr16s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@10 -- vbuyy_eq_0_then_la1 cpy #0 beq b10 //SEG147 divr16s::@5 - //SEG148 [84] (signed word) rem16s#2 ? - (signed word)(word) divr16u::rem#10 -- vwsz1=_neg_vwsz2 + //SEG148 [84] (signed word) rem16s#2 ← - (signed word)(word) divr16u::rem#10 -- vwsz1=_neg_vwsz2 sec lda divr16u.rem eor #$ff @@ -6576,7 +6576,7 @@ divr16s: { eor #$ff adc #0 sta rem16s+1 - //SEG149 [85] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 + //SEG149 [85] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 sec lda return eor #$ff @@ -6594,8 +6594,8 @@ divr16s: { rts //SEG155 divr16s::@10 b10: - //SEG156 [88] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 - //SEG157 [89] (signed word~) rem16s#57 ? (signed word)(word) divr16u::rem#10 -- vwsz1=vwsz2 + //SEG156 [88] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 + //SEG157 [89] (signed word~) rem16s#57 ← (signed word)(word) divr16u::rem#10 -- vwsz1=vwsz2 lda divr16u.rem sta rem16s lda divr16u.rem+1 @@ -6603,7 +6603,7 @@ divr16s: { rts //SEG158 divr16s::@3 b3: - //SEG159 [90] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 + //SEG159 [90] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 sec lda _13 eor #$ff @@ -6613,15 +6613,15 @@ divr16s: { eor #$ff adc #0 sta _13+1 - //SEG160 [91] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 + //SEG160 [91] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 tya eor #1 tay - //SEG161 [92] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 + //SEG161 [92] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 jmp b4 //SEG162 divr16s::@1 b1: - //SEG163 [93] (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#0 -- vwsz1=_neg_vwsz1 + //SEG163 [93] (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#0 -- vwsz1=_neg_vwsz1 sec lda _10 eor #$ff @@ -6631,7 +6631,7 @@ divr16s: { eor #$ff adc #0 sta _10+1 - //SEG164 [94] (word~) divr16s::remu#7 ? (word)(signed word~) divr16s::$10 + //SEG164 [94] (word~) divr16s::remu#7 ← (word)(signed word~) divr16s::$10 //SEG165 [73] phi from divr16s::@1 to divr16s::@2 [phi:divr16s::@1->divr16s::@2] //SEG166 [73] phi (word) divr16s::remu#3 = (word~) divr16s::remu#7 [phi:divr16s::@1->divr16s::@2#0] -- register_copy //SEG167 [73] phi (word) divr16s::dividendu#3 = ((word))-(const signed word) divr16s::dividend#0 [phi:divr16s::@1->divr16s::@2#1] -- vwuz1=vbuc1 @@ -6671,18 +6671,18 @@ divr16u: { //SEG179 [96] phi (word) divr16u::rem#4 = (word) divr16u::rem#10 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG180 divr16u::@1 b1: - //SEG181 [97] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG181 [97] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG182 [98] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 + //SEG182 [98] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG183 [99] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG183 [99] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG184 [100] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG185 divr16u::@4 - //SEG186 [101] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG186 [101] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -6690,10 +6690,10 @@ divr16u: { //SEG188 [102] phi (word) divr16u::rem#5 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG189 divr16u::@2 b2: - //SEG190 [103] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG190 [103] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG191 [104] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG191 [104] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG192 [105] if((word) divr16u::rem#5<(word) divr16u::divisor#0) goto divr16u::@3 -- vwuz1_lt_vwuz2_then_la1 @@ -6706,12 +6706,12 @@ divr16u: { bcc b3 !: //SEG193 divr16u::@5 - //SEG194 [106] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG194 [106] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG195 [107] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (word) divr16u::divisor#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG195 [107] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (word) divr16u::divisor#0 -- vwuz1=vwuz1_minus_vwuz2 lda rem sec sbc divisor @@ -6724,7 +6724,7 @@ divr16u: { //SEG198 [108] phi (word) divr16u::rem#10 = (word) divr16u::rem#5 [phi:divr16u::@2/divr16u::@5->divr16u::@3#1] -- register_copy //SEG199 divr16u::@3 b3: - //SEG200 [109] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG200 [109] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG201 [110] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -6763,22 +6763,22 @@ screen_fill: { //SEG217 [114] phi (byte*) screen_fill::screen#2 = (byte*) screen_fill::screen#1 [phi:screen_fill::@2->screen_fill::@2#1] -- register_copy //SEG218 screen_fill::@2 b2: - //SEG219 [115] *((byte*) screen_fill::screen#2) ? (const byte) screen_fill::ch#0 -- _deref_pbuz1=vbuc1 + //SEG219 [115] *((byte*) screen_fill::screen#2) ← (const byte) screen_fill::ch#0 -- _deref_pbuz1=vbuc1 lda #ch ldy #0 sta (screen),y - //SEG220 [116] (byte*) screen_fill::screen#1 ? ++ (byte*) screen_fill::screen#2 -- pbuz1=_inc_pbuz1 + //SEG220 [116] (byte*) screen_fill::screen#1 ← ++ (byte*) screen_fill::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 !: - //SEG221 [117] (byte) screen_fill::x#1 ? ++ (byte) screen_fill::x#2 -- vbuxx=_inc_vbuxx + //SEG221 [117] (byte) screen_fill::x#1 ← ++ (byte) screen_fill::x#2 -- vbuxx=_inc_vbuxx inx //SEG222 [118] if((byte) screen_fill::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto screen_fill::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$28 bne b2 //SEG223 screen_fill::@3 - //SEG224 [119] (byte) screen_fill::y#1 ? ++ (byte) screen_fill::y#4 -- vbuz1=_inc_vbuz1 + //SEG224 [119] (byte) screen_fill::y#1 ← ++ (byte) screen_fill::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG225 [120] if((byte) screen_fill::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto screen_fill::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -6794,12 +6794,12 @@ bitmap_clear: { .label bitmap = 3 .label y = 2 .label _3 = 3 - //SEG229 [122] (word~) bitmap_clear::$3 ? *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG229 [122] (word~) bitmap_clear::$3 ← *((const byte[$100]) bitmap_plot_yhi#0) w= *((const byte[$100]) bitmap_plot_ylo#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda bitmap_plot_ylo sta _3 lda bitmap_plot_yhi sta _3+1 - //SEG230 [123] (byte*~) bitmap_clear::bitmap#5 ? (byte*)(word~) bitmap_clear::$3 + //SEG230 [123] (byte*~) bitmap_clear::bitmap#5 ← (byte*)(word~) bitmap_clear::$3 //SEG231 [124] phi from bitmap_clear to bitmap_clear::@1 [phi:bitmap_clear->bitmap_clear::@1] //SEG232 [124] phi (byte) bitmap_clear::y#4 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:bitmap_clear->bitmap_clear::@1#0] -- vbuz1=vbuc1 lda #0 @@ -6819,22 +6819,22 @@ bitmap_clear: { //SEG243 [125] phi (byte*) bitmap_clear::bitmap#2 = (byte*) bitmap_clear::bitmap#1 [phi:bitmap_clear::@2->bitmap_clear::@2#1] -- register_copy //SEG244 bitmap_clear::@2 b2: - //SEG245 [126] *((byte*) bitmap_clear::bitmap#2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 + //SEG245 [126] *((byte*) bitmap_clear::bitmap#2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuz1=vbuc1 lda #0 tay sta (bitmap),y - //SEG246 [127] (byte*) bitmap_clear::bitmap#1 ? ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 + //SEG246 [127] (byte*) bitmap_clear::bitmap#1 ← ++ (byte*) bitmap_clear::bitmap#2 -- pbuz1=_inc_pbuz1 inc bitmap bne !+ inc bitmap+1 !: - //SEG247 [128] (byte) bitmap_clear::x#1 ? ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx + //SEG247 [128] (byte) bitmap_clear::x#1 ← ++ (byte) bitmap_clear::x#2 -- vbuxx=_inc_vbuxx inx //SEG248 [129] if((byte) bitmap_clear::x#1!=(byte/word/signed word/dword/signed dword) $c8) goto bitmap_clear::@2 -- vbuxx_neq_vbuc1_then_la1 cpx #$c8 bne b2 //SEG249 bitmap_clear::@3 - //SEG250 [130] (byte) bitmap_clear::y#1 ? ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 + //SEG250 [130] (byte) bitmap_clear::y#1 ← ++ (byte) bitmap_clear::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG251 [131] if((byte) bitmap_clear::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto bitmap_clear::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -6858,9 +6858,9 @@ bitmap_init: { //SEG260 [134] phi (byte) bitmap_init::bits#3 = (byte) bitmap_init::bits#4 [phi:bitmap_init::@2->bitmap_init::@1#1] -- register_copy //SEG261 bitmap_init::@1 b1: - //SEG262 [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ? (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG262 [135] *((const byte[$100]) bitmap_plot_bit#0 + (byte) bitmap_init::x#2) ← (byte) bitmap_init::bits#3 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_bit,x - //SEG263 [136] (byte) bitmap_init::bits#1 ? (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 + //SEG263 [136] (byte) bitmap_init::bits#1 ← (byte) bitmap_init::bits#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuaa_ror_1 lsr //SEG264 [137] if((byte) bitmap_init::bits#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@6 -- vbuaa_neq_0_then_la1 cmp #0 @@ -6870,7 +6870,7 @@ bitmap_init: { lda #$80 //SEG267 bitmap_init::@2 b2: - //SEG268 [139] (byte) bitmap_init::x#1 ? ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx + //SEG268 [139] (byte) bitmap_init::x#1 ← ++ (byte) bitmap_init::x#2 -- vbuxx=_inc_vbuxx inx //SEG269 [140] if((byte) bitmap_init::x#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -6888,27 +6888,27 @@ bitmap_init: { //SEG275 [141] phi (byte) bitmap_init::y#2 = (byte) bitmap_init::y#1 [phi:bitmap_init::@4->bitmap_init::@3#1] -- register_copy //SEG276 bitmap_init::@3 b3: - //SEG277 [142] (byte~) bitmap_init::$3 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 + //SEG277 [142] (byte~) bitmap_init::$3 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=vbuxx_band_vbuc1 lda #7 sax _3 - //SEG278 [143] (byte~) bitmap_init::$4 ? < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 + //SEG278 [143] (byte~) bitmap_init::$4 ← < (byte*) bitmap_init::yoffs#2 -- vbuaa=_lo_pbuz1 lda yoffs - //SEG279 [144] (byte~) bitmap_init::$5 ? (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa + //SEG279 [144] (byte~) bitmap_init::$5 ← (byte~) bitmap_init::$3 | (byte~) bitmap_init::$4 -- vbuaa=vbuz1_bor_vbuaa ora _3 - //SEG280 [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG280 [145] *((const byte[$100]) bitmap_plot_ylo#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$5 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_ylo,x - //SEG281 [146] (byte~) bitmap_init::$6 ? > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 + //SEG281 [146] (byte~) bitmap_init::$6 ← > (byte*) bitmap_init::yoffs#2 -- vbuaa=_hi_pbuz1 lda yoffs+1 - //SEG282 [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ? (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa + //SEG282 [147] *((const byte[$100]) bitmap_plot_yhi#0 + (byte) bitmap_init::y#2) ← (byte~) bitmap_init::$6 -- pbuc1_derefidx_vbuxx=vbuaa sta bitmap_plot_yhi,x - //SEG283 [148] (byte~) bitmap_init::$7 ? (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 + //SEG283 [148] (byte~) bitmap_init::$7 ← (byte) bitmap_init::y#2 & (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=vbuxx_band_vbuc1 txa and #7 //SEG284 [149] if((byte~) bitmap_init::$7!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto bitmap_init::@4 -- vbuaa_neq_vbuc1_then_la1 cmp #7 bne b4 //SEG285 bitmap_init::@5 - //SEG286 [150] (byte*) bitmap_init::yoffs#1 ? (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 + //SEG286 [150] (byte*) bitmap_init::yoffs#1 ← (byte*) bitmap_init::yoffs#2 + (byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 8 -- pbuz1=pbuz1_plus_vwuc1 clc lda yoffs adc #<$28*8 @@ -6920,7 +6920,7 @@ bitmap_init: { //SEG288 [151] phi (byte*) bitmap_init::yoffs#4 = (byte*) bitmap_init::yoffs#2 [phi:bitmap_init::@3/bitmap_init::@5->bitmap_init::@4#0] -- register_copy //SEG289 bitmap_init::@4 b4: - //SEG290 [152] (byte) bitmap_init::y#1 ? ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx + //SEG290 [152] (byte) bitmap_init::y#1 ← ++ (byte) bitmap_init::y#2 -- vbuxx=_inc_vbuxx inx //SEG291 [153] if((byte) bitmap_init::y#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto bitmap_init::@3 -- vbuxx_neq_0_then_la1 cpx #0 diff --git a/src/test/ref/loop-break-continue.log b/src/test/ref/loop-break-continue.log index d52bf9905..0513fea28 100644 --- a/src/test/ref/loop-break-continue.log +++ b/src/test/ref/loop-break-continue.log @@ -3,35 +3,35 @@ CONTROL FLOW GRAPH SSA @begin: scope:[] from to:@1 main: scope:[main] from @1 - (byte*) main::screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte[]) main::str#0 ? (const string) main::$5 - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) main::screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte[]) main::str#0 ← (const string) main::$5 + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main main::@5 - (byte*) main::screen#4 ? phi( main/(byte*) main::screen#0 main::@5/(byte*) main::screen#5 ) - (byte) main::i#2 ? phi( main/(byte) main::i#0 main::@5/(byte) main::i#1 ) - (bool~) main::$0 ? *((byte[]) main::str#0 + (byte) main::i#2) == (byte) '@' - (bool~) main::$1 ? ! (bool~) main::$0 + (byte*) main::screen#4 ← phi( main/(byte*) main::screen#0 main::@5/(byte*) main::screen#5 ) + (byte) main::i#2 ← phi( main/(byte) main::i#0 main::@5/(byte) main::i#1 ) + (bool~) main::$0 ← *((byte[]) main::str#0 + (byte) main::i#2) == (byte) '@' + (bool~) main::$1 ← ! (bool~) main::$0 if((bool~) main::$1) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte*) main::screen#3 ? phi( main::@1/(byte*) main::screen#4 ) - (byte) main::i#3 ? phi( main::@1/(byte) main::i#2 ) - (bool~) main::$2 ? *((byte[]) main::str#0 + (byte) main::i#3) == (byte) ' ' - (bool~) main::$3 ? ! (bool~) main::$2 + (byte*) main::screen#3 ← phi( main::@1/(byte*) main::screen#4 ) + (byte) main::i#3 ← phi( main::@1/(byte) main::i#2 ) + (bool~) main::$2 ← *((byte[]) main::str#0 + (byte) main::i#3) == (byte) ' ' + (bool~) main::$3 ← ! (bool~) main::$2 if((bool~) main::$3) goto main::@4 to:main::@5 main::@4: scope:[main] from main::@2 - (byte*) main::screen#2 ? phi( main::@2/(byte*) main::screen#3 ) - (byte) main::i#4 ? phi( main::@2/(byte) main::i#3 ) - *((byte*) main::screen#2) ? *((byte[]) main::str#0 + (byte) main::i#4) - (byte*) main::screen#1 ? ++ (byte*) main::screen#2 + (byte*) main::screen#2 ← phi( main::@2/(byte*) main::screen#3 ) + (byte) main::i#4 ← phi( main::@2/(byte) main::i#3 ) + *((byte*) main::screen#2) ← *((byte[]) main::str#0 + (byte) main::i#4) + (byte*) main::screen#1 ← ++ (byte*) main::screen#2 to:main::@5 main::@5: scope:[main] from main::@2 main::@4 - (byte*) main::screen#5 ? phi( main::@2/(byte*) main::screen#3 main::@4/(byte*) main::screen#1 ) - (byte) main::i#5 ? phi( main::@2/(byte) main::i#3 main::@4/(byte) main::i#4 ) - (byte) main::i#1 ? (byte) main::i#5 + rangenext(0,$ff) - (bool~) main::$4 ? (byte) main::i#1 != rangelast(0,$ff) + (byte*) main::screen#5 ← phi( main::@2/(byte*) main::screen#3 main::@4/(byte*) main::screen#1 ) + (byte) main::i#5 ← phi( main::@2/(byte) main::i#3 main::@4/(byte) main::i#4 ) + (byte) main::i#1 ← (byte) main::i#5 + rangenext(0,$ff) + (bool~) main::$4 ← (byte) main::i#1 != rangelast(0,$ff) if((bool~) main::$4) goto main::@1 to:main::@return main::@return: scope:[main] from main::@1 main::@5 @@ -80,8 +80,8 @@ SYMBOL TABLE SSA Culled Empty Block (label) @2 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [5] (bool~) main::$1 ? *((byte[]) main::str#0 + (byte) main::i#2) != (byte) '@' from [4] (bool~) main::$0 ? *((byte[]) main::str#0 + (byte) main::i#2) == (byte) '@' -Inversing boolean not [9] (bool~) main::$3 ? *((byte[]) main::str#0 + (byte) main::i#3) != (byte) ' ' from [8] (bool~) main::$2 ? *((byte[]) main::str#0 + (byte) main::i#3) == (byte) ' ' +Inversing boolean not [5] (bool~) main::$1 ← *((byte[]) main::str#0 + (byte) main::i#2) != (byte) '@' from [4] (bool~) main::$0 ← *((byte[]) main::str#0 + (byte) main::i#2) == (byte) '@' +Inversing boolean not [9] (bool~) main::$3 ← *((byte[]) main::str#0 + (byte) main::i#3) != (byte) ' ' from [8] (bool~) main::$2 ← *((byte[]) main::str#0 + (byte) main::i#3) == (byte) ' ' Successful SSA optimization Pass2UnaryNotSimplification Alias (byte) main::i#2 = (byte) main::i#3 (byte) main::i#4 Alias (byte*) main::screen#2 = (byte*) main::screen#3 (byte*) main::screen#4 @@ -96,7 +96,7 @@ Constant (const byte*) main::screen#0 = ((byte*))$400 Constant (const byte[]) main::str#0 = main::$5 Constant (const byte) main::i#0 = 0 Successful SSA optimization Pass2ConstantIdentification -Resolved ranged next value main::i#1 ? ++ main::i#2 to ++ +Resolved ranged next value main::i#1 ← ++ main::i#2 to ++ Resolved ranged comparison value if(main::i#1!=rangelast(0,$ff)) goto main::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 Inlining constant with var siblings (const byte*) main::screen#0 Inlining constant with var siblings (const byte) main::i#0 @@ -114,10 +114,10 @@ CALL GRAPH Calls in [] to main:2 Created 3 initial phi equivalence classes -Coalesced [9] main::screen#7 ? main::screen#2 -Coalesced [13] main::i#6 ? main::i#1 -Coalesced (already) [14] main::screen#6 ? main::screen#5 -Coalesced [17] main::screen#8 ? main::screen#1 +Coalesced [9] main::screen#7 ← main::screen#2 +Coalesced [13] main::i#6 ← main::i#1 +Coalesced (already) [14] main::screen#6 ← main::screen#5 +Coalesced [17] main::screen#8 ← main::screen#1 Coalesced down to 2 phi equivalence classes Culled Empty Block (label) main::@12 Culled Empty Block (label) main::@11 @@ -142,8 +142,8 @@ main: scope:[main] from @1 [4] phi() to:main::@1 main::@1: scope:[main] from main main::@4 - [5] (byte*) main::screen#2 ? phi( main/((byte*))(word/signed word/dword/signed dword) $400 main::@4/(byte*) main::screen#5 ) - [5] (byte) main::i#2 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@4/(byte) main::i#1 ) + [5] (byte*) main::screen#2 ← phi( main/((byte*))(word/signed word/dword/signed dword) $400 main::@4/(byte*) main::screen#5 ) + [5] (byte) main::i#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@4/(byte) main::i#1 ) [6] if(*((const byte[]) main::str#0 + (byte) main::i#2)!=(byte) '@') goto main::@2 to:main::@return main::@return: scope:[main] from main::@1 main::@4 @@ -153,13 +153,13 @@ main::@2: scope:[main] from main::@1 [8] if(*((const byte[]) main::str#0 + (byte) main::i#2)!=(byte) ' ') goto main::@3 to:main::@4 main::@4: scope:[main] from main::@2 main::@3 - [9] (byte*) main::screen#5 ? phi( main::@2/(byte*) main::screen#2 main::@3/(byte*) main::screen#1 ) - [10] (byte) main::i#1 ? ++ (byte) main::i#2 + [9] (byte*) main::screen#5 ← phi( main::@2/(byte*) main::screen#2 main::@3/(byte*) main::screen#1 ) + [10] (byte) main::i#1 ← ++ (byte) main::i#2 [11] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@1 to:main::@return main::@3: scope:[main] from main::@2 - [12] *((byte*) main::screen#2) ? *((const byte[]) main::str#0 + (byte) main::i#2) - [13] (byte*) main::screen#1 ? ++ (byte*) main::screen#2 + [12] *((byte*) main::screen#2) ← *((const byte[]) main::str#0 + (byte) main::i#2) + [13] (byte*) main::screen#1 ← ++ (byte*) main::screen#2 to:main::@4 @@ -254,7 +254,7 @@ main: { jmp b4 //SEG25 main::@4 b4: - //SEG26 [10] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 + //SEG26 [10] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG27 [11] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@1 -- vbuz1_neq_0_then_la1 lda i @@ -263,12 +263,12 @@ main: { jmp breturn //SEG28 main::@3 b3: - //SEG29 [12] *((byte*) main::screen#2) ? *((const byte[]) main::str#0 + (byte) main::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG29 [12] *((byte*) main::screen#2) ← *((const byte[]) main::str#0 + (byte) main::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy i lda str,y ldy #0 sta (screen),y - //SEG30 [13] (byte*) main::screen#1 ? ++ (byte*) main::screen#2 -- pbuz1=_inc_pbuz1 + //SEG30 [13] (byte*) main::screen#1 ← ++ (byte*) main::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 @@ -281,11 +281,11 @@ REGISTER UPLIFT POTENTIAL REGISTERS Statement [6] if(*((const byte[]) main::str#0 + (byte) main::i#2)!=(byte) '@') goto main::@2 [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ] Statement [8] if(*((const byte[]) main::str#0 + (byte) main::i#2)!=(byte) ' ') goto main::@3 [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a -Statement [12] *((byte*) main::screen#2) ? *((const byte[]) main::str#0 + (byte) main::i#2) [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a reg byte y +Statement [12] *((byte*) main::screen#2) ← *((const byte[]) main::str#0 + (byte) main::i#2) [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ] Statement [6] if(*((const byte[]) main::str#0 + (byte) main::i#2)!=(byte) '@') goto main::@2 [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a Statement [8] if(*((const byte[]) main::str#0 + (byte) main::i#2)!=(byte) ' ') goto main::@3 [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a -Statement [12] *((byte*) main::screen#2) ? *((const byte[]) main::str#0 + (byte) main::i#2) [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a reg byte y +Statement [12] *((byte*) main::screen#2) ← *((const byte[]) main::str#0 + (byte) main::i#2) [ main::i#2 main::screen#2 ] ( main:2 [ main::i#2 main::screen#2 ] ) always clobbers reg byte a reg byte y Potential registers zp ZP_BYTE:2 [ main::i#2 main::i#1 ] : zp ZP_BYTE:2 , reg byte x , Potential registers zp ZP_WORD:3 [ main::screen#2 main::screen#5 main::screen#1 ] : zp ZP_WORD:3 , @@ -364,7 +364,7 @@ main: { jmp b4 //SEG25 main::@4 b4: - //SEG26 [10] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG26 [10] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG27 [11] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -372,11 +372,11 @@ main: { jmp breturn //SEG28 main::@3 b3: - //SEG29 [12] *((byte*) main::screen#2) ? *((const byte[]) main::str#0 + (byte) main::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG29 [12] *((byte*) main::screen#2) ← *((const byte[]) main::str#0 + (byte) main::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda str,x ldy #0 sta (screen),y - //SEG30 [13] (byte*) main::screen#1 ? ++ (byte*) main::screen#2 -- pbuz1=_inc_pbuz1 + //SEG30 [13] (byte*) main::screen#1 ← ++ (byte*) main::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 @@ -491,7 +491,7 @@ main: { //SEG24 [9] phi (byte*) main::screen#5 = (byte*) main::screen#2 [phi:main::@2/main::@3->main::@4#0] -- register_copy //SEG25 main::@4 b4: - //SEG26 [10] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG26 [10] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG27 [11] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@1 -- vbuxx_neq_0_then_la1 cpx #0 @@ -499,11 +499,11 @@ main: { rts //SEG28 main::@3 b3: - //SEG29 [12] *((byte*) main::screen#2) ? *((const byte[]) main::str#0 + (byte) main::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG29 [12] *((byte*) main::screen#2) ← *((const byte[]) main::str#0 + (byte) main::i#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda str,x ldy #0 sta (screen),y - //SEG30 [13] (byte*) main::screen#1 ? ++ (byte*) main::screen#2 -- pbuz1=_inc_pbuz1 + //SEG30 [13] (byte*) main::screen#1 ← ++ (byte*) main::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 diff --git a/src/test/ref/loop-break-nested.log b/src/test/ref/loop-break-nested.log index dc7f122a0..a535a9a3f 100644 --- a/src/test/ref/loop-break-nested.log +++ b/src/test/ref/loop-break-nested.log @@ -1,42 +1,42 @@ CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 to:@1 main: scope:[main] from @1 - (byte*) main::line#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) main::line#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 to:main::@1 main::@1: scope:[main] from main main::@6 - (byte*) main::line#2 ? phi( main/(byte*) main::line#0 main::@6/(byte*) main::line#1 ) - (bool~) main::$0 ? *((byte*) main::line#2) == (byte) 'a' - (bool~) main::$1 ? ! (bool~) main::$0 + (byte*) main::line#2 ← phi( main/(byte*) main::line#0 main::@6/(byte*) main::line#1 ) + (bool~) main::$0 ← *((byte*) main::line#2) == (byte) 'a' + (bool~) main::$1 ← ! (bool~) main::$0 if((bool~) main::$1) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte*) main::line#6 ? phi( main::@1/(byte*) main::line#2 ) - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) main::line#6 ← phi( main::@1/(byte*) main::line#2 ) + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@4 main::@4: scope:[main] from main::@2 main::@5 - (byte) main::i#2 ? phi( main::@2/(byte) main::i#0 main::@5/(byte) main::i#1 ) - (byte*) main::line#3 ? phi( main::@2/(byte*) main::line#6 main::@5/(byte*) main::line#4 ) - (bool~) main::$2 ? *((byte*) main::line#3 + (byte) main::i#2) == (byte) 'a' - (bool~) main::$3 ? ! (bool~) main::$2 + (byte) main::i#2 ← phi( main::@2/(byte) main::i#0 main::@5/(byte) main::i#1 ) + (byte*) main::line#3 ← phi( main::@2/(byte*) main::line#6 main::@5/(byte*) main::line#4 ) + (bool~) main::$2 ← *((byte*) main::line#3 + (byte) main::i#2) == (byte) 'a' + (bool~) main::$3 ← ! (bool~) main::$2 if((bool~) main::$3) goto main::@5 to:main::@6 main::@5: scope:[main] from main::@4 - (byte) main::i#3 ? phi( main::@4/(byte) main::i#2 ) - (byte*) main::line#4 ? phi( main::@4/(byte*) main::line#3 ) - *((byte*) main::line#4 + (byte) main::i#3) ? (byte) 'a' - (byte) main::i#1 ? (byte) main::i#3 + rangenext(0,$27) - (bool~) main::$4 ? (byte) main::i#1 != rangelast(0,$27) + (byte) main::i#3 ← phi( main::@4/(byte) main::i#2 ) + (byte*) main::line#4 ← phi( main::@4/(byte*) main::line#3 ) + *((byte*) main::line#4 + (byte) main::i#3) ← (byte) 'a' + (byte) main::i#1 ← (byte) main::i#3 + rangenext(0,$27) + (bool~) main::$4 ← (byte) main::i#1 != rangelast(0,$27) if((bool~) main::$4) goto main::@4 to:main::@6 main::@6: scope:[main] from main::@4 main::@5 - (byte*) main::line#5 ? phi( main::@4/(byte*) main::line#3 main::@5/(byte*) main::line#4 ) - (byte*) main::line#1 ? (byte*) main::line#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (word/signed word/dword/signed dword~) main::$5 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) $19 - (word/signed dword/dword/signed word~) main::$6 ? (word/signed word/dword/signed dword) $400 + (word/signed word/dword/signed dword~) main::$5 - (bool~) main::$7 ? (byte*) main::line#1 < (word/signed dword/dword/signed word~) main::$6 + (byte*) main::line#5 ← phi( main::@4/(byte*) main::line#3 main::@5/(byte*) main::line#4 ) + (byte*) main::line#1 ← (byte*) main::line#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (word/signed word/dword/signed dword~) main::$5 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) $19 + (word/signed dword/dword/signed word~) main::$6 ← (word/signed word/dword/signed dword) $400 + (word/signed word/dword/signed dword~) main::$5 + (bool~) main::$7 ← (byte*) main::line#1 < (word/signed dword/dword/signed word~) main::$6 if((bool~) main::$7) goto main::@1 to:main::@return main::@return: scope:[main] from main::@1 main::@6 @@ -87,8 +87,8 @@ SYMBOL TABLE SSA Culled Empty Block (label) @2 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [4] (bool~) main::$1 ? *((byte*) main::line#2) != (byte) 'a' from [3] (bool~) main::$0 ? *((byte*) main::line#2) == (byte) 'a' -Inversing boolean not [10] (bool~) main::$3 ? *((byte*) main::line#3 + (byte) main::i#2) != (byte) 'a' from [9] (bool~) main::$2 ? *((byte*) main::line#3 + (byte) main::i#2) == (byte) 'a' +Inversing boolean not [4] (bool~) main::$1 ← *((byte*) main::line#2) != (byte) 'a' from [3] (bool~) main::$0 ← *((byte*) main::line#2) == (byte) 'a' +Inversing boolean not [10] (bool~) main::$3 ← *((byte*) main::line#3 + (byte) main::i#2) != (byte) 'a' from [9] (bool~) main::$2 ← *((byte*) main::line#3 + (byte) main::i#2) == (byte) 'a' Successful SSA optimization Pass2UnaryNotSimplification Alias (byte*) main::line#2 = (byte*) main::line#6 Alias (byte*) main::line#3 = (byte*) main::line#4 @@ -113,7 +113,7 @@ Successful SSA optimization Pass2ConstantIdentification Constant (const word/signed dword/dword/signed word) main::$6 = $400+main::$5 Successful SSA optimization Pass2ConstantIdentification Successful SSA optimization PassNEliminateUnusedVars -Resolved ranged next value main::i#1 ? ++ main::i#2 to ++ +Resolved ranged next value main::i#1 ← ++ main::i#2 to ++ Resolved ranged comparison value if(main::i#1!=rangelast(0,$27)) goto main::@4 to (byte/signed byte/word/signed word/dword/signed dword) $28 Culled Empty Block (label) main::@2 Successful SSA optimization Pass2CullEmptyBlocks @@ -134,8 +134,8 @@ CALL GRAPH Calls in [] to main:2 Created 2 initial phi equivalence classes -Coalesced [12] main::line#7 ? main::line#1 -Coalesced [16] main::i#4 ? main::i#1 +Coalesced [12] main::line#7 ← main::line#1 +Coalesced [16] main::i#4 ← main::i#1 Coalesced down to 2 phi equivalence classes Culled Empty Block (label) main::@13 Culled Empty Block (label) main::@14 @@ -161,23 +161,23 @@ main: scope:[main] from @1 [4] phi() to:main::@1 main::@1: scope:[main] from main main::@4 - [5] (byte*) main::line#2 ? phi( main/((byte*))(word/signed word/dword/signed dword) $400 main::@4/(byte*) main::line#1 ) + [5] (byte*) main::line#2 ← phi( main/((byte*))(word/signed word/dword/signed dword) $400 main::@4/(byte*) main::line#1 ) [6] if(*((byte*) main::line#2)!=(byte) 'a') goto main::@2 to:main::@return main::@return: scope:[main] from main::@1 main::@4 [7] return to:@return main::@2: scope:[main] from main::@1 main::@3 - [8] (byte) main::i#2 ? phi( main::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) main::i#1 ) + [8] (byte) main::i#2 ← phi( main::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) main::i#1 ) [9] if(*((byte*) main::line#2 + (byte) main::i#2)!=(byte) 'a') goto main::@3 to:main::@4 main::@4: scope:[main] from main::@2 main::@3 - [10] (byte*) main::line#1 ? (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [10] (byte*) main::line#1 ← (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [11] if((byte*) main::line#1<(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) $19) goto main::@1 to:main::@return main::@3: scope:[main] from main::@2 - [12] *((byte*) main::line#2 + (byte) main::i#2) ? (byte) 'a' - [13] (byte) main::i#1 ? ++ (byte) main::i#2 + [12] *((byte*) main::line#2 + (byte) main::i#2) ← (byte) 'a' + [13] (byte) main::i#1 ← ++ (byte) main::i#2 [14] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto main::@2 to:main::@4 @@ -273,7 +273,7 @@ main: { jmp b4 //SEG25 main::@4 b4: - //SEG26 [10] (byte*) main::line#1 ? (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG26 [10] (byte*) main::line#1 ← (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc line @@ -293,11 +293,11 @@ main: { jmp breturn //SEG28 main::@3 b3: - //SEG29 [12] *((byte*) main::line#2 + (byte) main::i#2) ? (byte) 'a' -- pbuz1_derefidx_vbuz2=vbuc1 + //SEG29 [12] *((byte*) main::line#2 + (byte) main::i#2) ← (byte) 'a' -- pbuz1_derefidx_vbuz2=vbuc1 lda #'a' ldy i sta (line),y - //SEG30 [13] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 + //SEG30 [13] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG31 [14] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto main::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -310,14 +310,14 @@ REGISTER UPLIFT POTENTIAL REGISTERS Statement [6] if(*((byte*) main::line#2)!=(byte) 'a') goto main::@2 [ main::line#2 ] ( main:2 [ main::line#2 ] ) always clobbers reg byte a reg byte y Statement [9] if(*((byte*) main::line#2 + (byte) main::i#2)!=(byte) 'a') goto main::@3 [ main::line#2 main::i#2 ] ( main:2 [ main::line#2 main::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ main::i#2 main::i#1 ] -Statement [10] (byte*) main::line#1 ? (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ main::line#1 ] ( main:2 [ main::line#1 ] ) always clobbers reg byte a +Statement [10] (byte*) main::line#1 ← (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ main::line#1 ] ( main:2 [ main::line#1 ] ) always clobbers reg byte a Statement [11] if((byte*) main::line#1<(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) $19) goto main::@1 [ main::line#1 ] ( main:2 [ main::line#1 ] ) always clobbers reg byte a -Statement [12] *((byte*) main::line#2 + (byte) main::i#2) ? (byte) 'a' [ main::line#2 main::i#2 ] ( main:2 [ main::line#2 main::i#2 ] ) always clobbers reg byte a +Statement [12] *((byte*) main::line#2 + (byte) main::i#2) ← (byte) 'a' [ main::line#2 main::i#2 ] ( main:2 [ main::line#2 main::i#2 ] ) always clobbers reg byte a Statement [6] if(*((byte*) main::line#2)!=(byte) 'a') goto main::@2 [ main::line#2 ] ( main:2 [ main::line#2 ] ) always clobbers reg byte a reg byte y Statement [9] if(*((byte*) main::line#2 + (byte) main::i#2)!=(byte) 'a') goto main::@3 [ main::line#2 main::i#2 ] ( main:2 [ main::line#2 main::i#2 ] ) always clobbers reg byte a -Statement [10] (byte*) main::line#1 ? (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ main::line#1 ] ( main:2 [ main::line#1 ] ) always clobbers reg byte a +Statement [10] (byte*) main::line#1 ← (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ main::line#1 ] ( main:2 [ main::line#1 ] ) always clobbers reg byte a Statement [11] if((byte*) main::line#1<(word/signed word/dword/signed dword) $400+(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) $19) goto main::@1 [ main::line#1 ] ( main:2 [ main::line#1 ] ) always clobbers reg byte a -Statement [12] *((byte*) main::line#2 + (byte) main::i#2) ? (byte) 'a' [ main::line#2 main::i#2 ] ( main:2 [ main::line#2 main::i#2 ] ) always clobbers reg byte a +Statement [12] *((byte*) main::line#2 + (byte) main::i#2) ← (byte) 'a' [ main::line#2 main::i#2 ] ( main:2 [ main::line#2 main::i#2 ] ) always clobbers reg byte a Potential registers zp ZP_WORD:2 [ main::line#2 main::line#1 ] : zp ZP_WORD:2 , Potential registers zp ZP_BYTE:4 [ main::i#2 main::i#1 ] : zp ZP_BYTE:4 , reg byte x , reg byte y , @@ -397,7 +397,7 @@ main: { jmp b4 //SEG25 main::@4 b4: - //SEG26 [10] (byte*) main::line#1 ? (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG26 [10] (byte*) main::line#1 ← (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc line @@ -417,10 +417,10 @@ main: { jmp breturn //SEG28 main::@3 b3: - //SEG29 [12] *((byte*) main::line#2 + (byte) main::i#2) ? (byte) 'a' -- pbuz1_derefidx_vbuyy=vbuc1 + //SEG29 [12] *((byte*) main::line#2 + (byte) main::i#2) ← (byte) 'a' -- pbuz1_derefidx_vbuyy=vbuc1 lda #'a' sta (line),y - //SEG30 [13] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuyy=_inc_vbuyy + //SEG30 [13] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuyy=_inc_vbuyy iny //SEG31 [14] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto main::@2 -- vbuyy_neq_vbuc1_then_la1 cpy #$28 @@ -537,7 +537,7 @@ main: { bne b3 //SEG25 main::@4 b4: - //SEG26 [10] (byte*) main::line#1 ? (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG26 [10] (byte*) main::line#1 ← (byte*) main::line#2 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc line @@ -557,10 +557,10 @@ main: { rts //SEG28 main::@3 b3: - //SEG29 [12] *((byte*) main::line#2 + (byte) main::i#2) ? (byte) 'a' -- pbuz1_derefidx_vbuyy=vbuc1 + //SEG29 [12] *((byte*) main::line#2 + (byte) main::i#2) ← (byte) 'a' -- pbuz1_derefidx_vbuyy=vbuc1 lda #'a' sta (line),y - //SEG30 [13] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuyy=_inc_vbuyy + //SEG30 [13] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuyy=_inc_vbuyy iny //SEG31 [14] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto main::@2 -- vbuyy_neq_vbuc1_then_la1 cpy #$28 diff --git a/src/test/ref/loop-break.log b/src/test/ref/loop-break.log index 87b543c11..cadb2e0e1 100644 --- a/src/test/ref/loop-break.log +++ b/src/test/ref/loop-break.log @@ -1,23 +1,23 @@ CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 to:@1 main: scope:[main] from @1 - (byte/word/signed word/dword/signed dword~) main::$0 ? (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte/word/signed word/dword/signed dword~) main::$0 ← (byte/signed byte/word/signed word/dword/signed dword) $28 * (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main main::@2 - (byte) main::i#2 ? phi( main/(byte) main::i#0 main::@2/(byte) main::i#1 ) - (bool~) main::$1 ? *((byte*) SCREEN#0 + (byte) main::i#2) == (byte) 'a' - (bool~) main::$2 ? ! (bool~) main::$1 + (byte) main::i#2 ← phi( main/(byte) main::i#0 main::@2/(byte) main::i#1 ) + (bool~) main::$1 ← *((byte*) SCREEN#0 + (byte) main::i#2) == (byte) 'a' + (bool~) main::$2 ← ! (bool~) main::$1 if((bool~) main::$2) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte) main::i#3 ? phi( main::@1/(byte) main::i#2 ) - *((byte*) SCREEN#0 + (byte) main::i#3) ? (byte) 'a' - (byte) main::i#1 ? (byte) main::i#3 + rangenext(0,main::$0) - (bool~) main::$3 ? (byte) main::i#1 != rangelast(0,main::$0) + (byte) main::i#3 ← phi( main::@1/(byte) main::i#2 ) + *((byte*) SCREEN#0 + (byte) main::i#3) ← (byte) 'a' + (byte) main::i#1 ← (byte) main::i#3 + rangenext(0,main::$0) + (bool~) main::$3 ← (byte) main::i#1 != rangelast(0,main::$0) if((bool~) main::$3) goto main::@1 to:main::@return main::@return: scope:[main] from main::@1 main::@2 @@ -53,7 +53,7 @@ SYMBOL TABLE SSA Culled Empty Block (label) @2 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [5] (bool~) main::$2 ? *((byte*) SCREEN#0 + (byte) main::i#2) != (byte) 'a' from [4] (bool~) main::$1 ? *((byte*) SCREEN#0 + (byte) main::i#2) == (byte) 'a' +Inversing boolean not [5] (bool~) main::$2 ← *((byte*) SCREEN#0 + (byte) main::i#2) != (byte) 'a' from [4] (bool~) main::$1 ← *((byte*) SCREEN#0 + (byte) main::i#2) == (byte) 'a' Successful SSA optimization Pass2UnaryNotSimplification Alias (byte) main::i#2 = (byte) main::i#3 Successful SSA optimization Pass2AliasElimination @@ -64,7 +64,7 @@ Constant (const byte*) SCREEN#0 = ((byte*))$400 Constant (const byte/word/signed word/dword/signed dword) main::$0 = $28*6 Constant (const byte) main::i#0 = 0 Successful SSA optimization Pass2ConstantIdentification -Resolved ranged next value main::i#1 ? ++ main::i#2 to ++ +Resolved ranged next value main::i#1 ← ++ main::i#2 to ++ Resolved ranged comparison value if(main::i#1!=rangelast(0,main::$0)) goto main::@1 to (const byte/word/signed word/dword/signed dword) main::$0+(byte/signed byte/word/signed word/dword/signed dword) 1 Inlining constant with var siblings (const byte) main::i#0 Constant inlined main::i#0 = (byte/signed byte/word/signed word/dword/signed dword) 0 @@ -79,7 +79,7 @@ CALL GRAPH Calls in [] to main:2 Created 1 initial phi equivalence classes -Coalesced [11] main::i#4 ? main::i#1 +Coalesced [11] main::i#4 ← main::i#1 Coalesced down to 1 phi equivalence classes Culled Empty Block (label) main::@7 Adding NOP phi() at start of @begin @@ -101,15 +101,15 @@ main: scope:[main] from @1 [4] phi() to:main::@1 main::@1: scope:[main] from main main::@2 - [5] (byte) main::i#2 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) main::i#1 ) + [5] (byte) main::i#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) main::i#1 ) [6] if(*((const byte*) SCREEN#0 + (byte) main::i#2)!=(byte) 'a') goto main::@2 to:main::@return main::@return: scope:[main] from main::@1 main::@2 [7] return to:@return main::@2: scope:[main] from main::@1 - [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ? (byte) 'a' - [9] (byte) main::i#1 ? ++ (byte) main::i#2 + [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte) 'a' + [9] (byte) main::i#1 ← ++ (byte) main::i#2 [10] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 1) goto main::@1 to:main::@return @@ -179,11 +179,11 @@ main: { rts //SEG19 main::@2 b2: - //SEG20 [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ? (byte) 'a' -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG20 [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte) 'a' -- pbuc1_derefidx_vbuz1=vbuc2 lda #'a' ldy i sta SCREEN,y - //SEG21 [9] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 + //SEG21 [9] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG22 [10] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 1) goto main::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$28*6+1 @@ -195,9 +195,9 @@ main: { REGISTER UPLIFT POTENTIAL REGISTERS Statement [6] if(*((const byte*) SCREEN#0 + (byte) main::i#2)!=(byte) 'a') goto main::@2 [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ] -Statement [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ? (byte) 'a' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a +Statement [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte) 'a' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a Statement [6] if(*((const byte*) SCREEN#0 + (byte) main::i#2)!=(byte) 'a') goto main::@2 [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a -Statement [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ? (byte) 'a' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a +Statement [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte) 'a' [ main::i#2 ] ( main:2 [ main::i#2 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ main::i#2 main::i#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , REGISTER UPLIFT SCOPES @@ -256,10 +256,10 @@ main: { rts //SEG19 main::@2 b2: - //SEG20 [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ? (byte) 'a' -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG20 [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte) 'a' -- pbuc1_derefidx_vbuxx=vbuc2 lda #'a' sta SCREEN,x - //SEG21 [9] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG21 [9] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG22 [10] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 1) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$28*6+1 @@ -347,10 +347,10 @@ main: { rts //SEG19 main::@2 b2: - //SEG20 [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ? (byte) 'a' -- pbuc1_derefidx_vbuxx=vbuc2 + //SEG20 [8] *((const byte*) SCREEN#0 + (byte) main::i#2) ← (byte) 'a' -- pbuc1_derefidx_vbuxx=vbuc2 lda #'a' sta SCREEN,x - //SEG21 [9] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG21 [9] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG22 [10] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $28*(byte/signed byte/word/signed word/dword/signed dword) 6+(byte/signed byte/word/signed word/dword/signed dword) 1) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$28*6+1 diff --git a/src/test/ref/no-recursion-heavy.log b/src/test/ref/no-recursion-heavy.log index 8c94842de..9de0da7d7 100644 --- a/src/test/ref/no-recursion-heavy.log +++ b/src/test/ref/no-recursion-heavy.log @@ -1,988 +1,988 @@ CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte) ba#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bb#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bc#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) bd#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) be#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) ba#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bb#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bc#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) bd#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) be#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@5 main: scope:[main] from @5 - (byte) ba#29 ? phi( @5/(byte) ba#28 ) - (byte) be#140 ? phi( @5/(byte) be#139 ) - (byte) bd#127 ? phi( @5/(byte) bd#126 ) - (byte) bc#94 ? phi( @5/(byte) bc#93 ) - (byte) bb#61 ? phi( @5/(byte) bb#60 ) + (byte) ba#29 ← phi( @5/(byte) ba#28 ) + (byte) be#140 ← phi( @5/(byte) be#139 ) + (byte) bd#127 ← phi( @5/(byte) bd#126 ) + (byte) bc#94 ← phi( @5/(byte) bc#93 ) + (byte) bb#61 ← phi( @5/(byte) bb#60 ) to:main::@1 main::@1: scope:[main] from main main::@7 - (byte) ba#18 ? phi( main/(byte) ba#29 main::@7/(byte) ba#1 ) - (byte) be#95 ? phi( main/(byte) be#140 main::@7/(byte) be#1 ) - (byte) bd#83 ? phi( main/(byte) bd#127 main::@7/(byte) bd#1 ) - (byte) bc#61 ? phi( main/(byte) bc#94 main::@7/(byte) bc#1 ) - (byte) bb#39 ? phi( main/(byte) bb#61 main::@7/(byte) bb#1 ) + (byte) ba#18 ← phi( main/(byte) ba#29 main::@7/(byte) ba#1 ) + (byte) be#95 ← phi( main/(byte) be#140 main::@7/(byte) be#1 ) + (byte) bd#83 ← phi( main/(byte) bd#127 main::@7/(byte) bd#1 ) + (byte) bc#61 ← phi( main/(byte) bc#94 main::@7/(byte) bc#1 ) + (byte) bb#39 ← phi( main/(byte) bb#61 main::@7/(byte) bb#1 ) if(true) goto main::@2 to:main::@return main::@2: scope:[main] from main::@1 - (byte) ba#17 ? phi( main::@1/(byte) ba#18 ) - (byte) be#94 ? phi( main::@1/(byte) be#95 ) - (byte) bd#82 ? phi( main::@1/(byte) bd#83 ) - (byte) bc#60 ? phi( main::@1/(byte) bc#61 ) - (byte) bb#38 ? phi( main::@1/(byte) bb#39 ) + (byte) ba#17 ← phi( main::@1/(byte) ba#18 ) + (byte) be#94 ← phi( main::@1/(byte) be#95 ) + (byte) bd#82 ← phi( main::@1/(byte) bd#83 ) + (byte) bc#60 ← phi( main::@1/(byte) bc#61 ) + (byte) bb#38 ← phi( main::@1/(byte) bb#39 ) call f0 to:main::@7 main::@7: scope:[main] from main::@2 - (byte) ba#4 ? phi( main::@2/(byte) ba#17 ) - (byte) be#48 ? phi( main::@2/(byte) be#13 ) - (byte) bd#37 ? phi( main::@2/(byte) bd#13 ) - (byte) bc#26 ? phi( main::@2/(byte) bc#13 ) - (byte) bb#15 ? phi( main::@2/(byte) bb#13 ) - (byte) bb#1 ? (byte) bb#15 - (byte) bc#1 ? (byte) bc#26 - (byte) bd#1 ? (byte) bd#37 - (byte) be#1 ? (byte) be#48 - (byte) ba#1 ? ++ (byte) ba#4 + (byte) ba#4 ← phi( main::@2/(byte) ba#17 ) + (byte) be#48 ← phi( main::@2/(byte) be#13 ) + (byte) bd#37 ← phi( main::@2/(byte) bd#13 ) + (byte) bc#26 ← phi( main::@2/(byte) bc#13 ) + (byte) bb#15 ← phi( main::@2/(byte) bb#13 ) + (byte) bb#1 ← (byte) bb#15 + (byte) bc#1 ← (byte) bc#26 + (byte) bd#1 ← (byte) bd#37 + (byte) be#1 ← (byte) be#48 + (byte) ba#1 ← ++ (byte) ba#4 to:main::@1 main::@return: scope:[main] from main::@1 - (byte) ba#5 ? phi( main::@1/(byte) ba#18 ) - (byte) be#49 ? phi( main::@1/(byte) be#95 ) - (byte) bd#38 ? phi( main::@1/(byte) bd#83 ) - (byte) bc#27 ? phi( main::@1/(byte) bc#61 ) - (byte) bb#16 ? phi( main::@1/(byte) bb#39 ) - (byte) bb#2 ? (byte) bb#16 - (byte) bc#2 ? (byte) bc#27 - (byte) bd#2 ? (byte) bd#38 - (byte) be#2 ? (byte) be#49 - (byte) ba#2 ? (byte) ba#5 + (byte) ba#5 ← phi( main::@1/(byte) ba#18 ) + (byte) be#49 ← phi( main::@1/(byte) be#95 ) + (byte) bd#38 ← phi( main::@1/(byte) bd#83 ) + (byte) bc#27 ← phi( main::@1/(byte) bc#61 ) + (byte) bb#16 ← phi( main::@1/(byte) bb#39 ) + (byte) bb#2 ← (byte) bb#16 + (byte) bc#2 ← (byte) bc#27 + (byte) bd#2 ← (byte) bd#38 + (byte) be#2 ← (byte) be#49 + (byte) ba#2 ← (byte) ba#5 return to:@return f0: scope:[f0] from main::@2 - (byte) be#141 ? phi( main::@2/(byte) be#94 ) - (byte) bd#128 ? phi( main::@2/(byte) bd#82 ) - (byte) bc#95 ? phi( main::@2/(byte) bc#60 ) - (byte) bb#40 ? phi( main::@2/(byte) bb#38 ) - (byte) ba#6 ? phi( main::@2/(byte) ba#17 ) - (bool~) f0::$0 ? (byte) ba#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) f0::$1 ? ! (bool~) f0::$0 + (byte) be#141 ← phi( main::@2/(byte) be#94 ) + (byte) bd#128 ← phi( main::@2/(byte) bd#82 ) + (byte) bc#95 ← phi( main::@2/(byte) bc#60 ) + (byte) bb#40 ← phi( main::@2/(byte) bb#38 ) + (byte) ba#6 ← phi( main::@2/(byte) ba#17 ) + (bool~) f0::$0 ← (byte) ba#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) f0::$1 ← ! (bool~) f0::$0 if((bool~) f0::$1) goto f0::@1 to:f0::@11 f0::@1: scope:[f0] from f0 f0::@21 - (byte) be#142 ? phi( f0/(byte) be#141 f0::@21/(byte) be#3 ) - (byte) bd#129 ? phi( f0/(byte) bd#128 f0::@21/(byte) bd#3 ) - (byte) bc#96 ? phi( f0/(byte) bc#95 f0::@21/(byte) bc#3 ) - (byte) bb#41 ? phi( f0/(byte) bb#40 f0::@21/(byte) bb#62 ) - (byte) ba#7 ? phi( f0/(byte) ba#6 f0::@21/(byte) ba#19 ) - (bool~) f0::$2 ? (byte) ba#7 == (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) f0::$3 ? ! (bool~) f0::$2 + (byte) be#142 ← phi( f0/(byte) be#141 f0::@21/(byte) be#3 ) + (byte) bd#129 ← phi( f0/(byte) bd#128 f0::@21/(byte) bd#3 ) + (byte) bc#96 ← phi( f0/(byte) bc#95 f0::@21/(byte) bc#3 ) + (byte) bb#41 ← phi( f0/(byte) bb#40 f0::@21/(byte) bb#62 ) + (byte) ba#7 ← phi( f0/(byte) ba#6 f0::@21/(byte) ba#19 ) + (bool~) f0::$2 ← (byte) ba#7 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) f0::$3 ← ! (bool~) f0::$2 if((bool~) f0::$3) goto f0::@2 to:f0::@12 f0::@11: scope:[f0] from f0 - (byte) ba#30 ? phi( f0/(byte) ba#6 ) - (byte) be#96 ? phi( f0/(byte) be#141 ) - (byte) bd#84 ? phi( f0/(byte) bd#128 ) - (byte) bc#62 ? phi( f0/(byte) bc#95 ) - (byte) bb#17 ? phi( f0/(byte) bb#40 ) - (byte) bb#3 ? ++ (byte) bb#17 + (byte) ba#30 ← phi( f0/(byte) ba#6 ) + (byte) be#96 ← phi( f0/(byte) be#141 ) + (byte) bd#84 ← phi( f0/(byte) bd#128 ) + (byte) bc#62 ← phi( f0/(byte) bc#95 ) + (byte) bb#17 ← phi( f0/(byte) bb#40 ) + (byte) bb#3 ← ++ (byte) bb#17 call fa to:f0::@21 f0::@21: scope:[f0] from f0::@11 - (byte) bb#62 ? phi( f0::@11/(byte) bb#3 ) - (byte) ba#19 ? phi( f0::@11/(byte) ba#30 ) - (byte) be#50 ? phi( f0::@11/(byte) be#24 ) - (byte) bd#39 ? phi( f0::@11/(byte) bd#24 ) - (byte) bc#28 ? phi( f0::@11/(byte) bc#24 ) - (byte) bc#3 ? (byte) bc#28 - (byte) bd#3 ? (byte) bd#39 - (byte) be#3 ? (byte) be#50 + (byte) bb#62 ← phi( f0::@11/(byte) bb#3 ) + (byte) ba#19 ← phi( f0::@11/(byte) ba#30 ) + (byte) be#50 ← phi( f0::@11/(byte) be#24 ) + (byte) bd#39 ← phi( f0::@11/(byte) bd#24 ) + (byte) bc#28 ← phi( f0::@11/(byte) bc#24 ) + (byte) bc#3 ← (byte) bc#28 + (byte) bd#3 ← (byte) bd#39 + (byte) be#3 ← (byte) be#50 to:f0::@1 f0::@2: scope:[f0] from f0::@1 f0::@22 - (byte) be#143 ? phi( f0::@1/(byte) be#142 f0::@22/(byte) be#4 ) - (byte) bd#130 ? phi( f0::@1/(byte) bd#129 f0::@22/(byte) bd#4 ) - (byte) bc#97 ? phi( f0::@1/(byte) bc#96 f0::@22/(byte) bc#4 ) - (byte) bb#42 ? phi( f0::@1/(byte) bb#41 f0::@22/(byte) bb#63 ) - (byte) ba#8 ? phi( f0::@1/(byte) ba#7 f0::@22/(byte) ba#20 ) - (bool~) f0::$4 ? (byte) ba#8 == (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool~) f0::$5 ? ! (bool~) f0::$4 + (byte) be#143 ← phi( f0::@1/(byte) be#142 f0::@22/(byte) be#4 ) + (byte) bd#130 ← phi( f0::@1/(byte) bd#129 f0::@22/(byte) bd#4 ) + (byte) bc#97 ← phi( f0::@1/(byte) bc#96 f0::@22/(byte) bc#4 ) + (byte) bb#42 ← phi( f0::@1/(byte) bb#41 f0::@22/(byte) bb#63 ) + (byte) ba#8 ← phi( f0::@1/(byte) ba#7 f0::@22/(byte) ba#20 ) + (bool~) f0::$4 ← (byte) ba#8 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool~) f0::$5 ← ! (bool~) f0::$4 if((bool~) f0::$5) goto f0::@3 to:f0::@13 f0::@12: scope:[f0] from f0::@1 - (byte) ba#31 ? phi( f0::@1/(byte) ba#7 ) - (byte) be#97 ? phi( f0::@1/(byte) be#142 ) - (byte) bd#85 ? phi( f0::@1/(byte) bd#129 ) - (byte) bc#63 ? phi( f0::@1/(byte) bc#96 ) - (byte) bb#18 ? phi( f0::@1/(byte) bb#41 ) - (byte) bb#4 ? ++ (byte) bb#18 + (byte) ba#31 ← phi( f0::@1/(byte) ba#7 ) + (byte) be#97 ← phi( f0::@1/(byte) be#142 ) + (byte) bd#85 ← phi( f0::@1/(byte) bd#129 ) + (byte) bc#63 ← phi( f0::@1/(byte) bc#96 ) + (byte) bb#18 ← phi( f0::@1/(byte) bb#41 ) + (byte) bb#4 ← ++ (byte) bb#18 call fa to:f0::@22 f0::@22: scope:[f0] from f0::@12 - (byte) bb#63 ? phi( f0::@12/(byte) bb#4 ) - (byte) ba#20 ? phi( f0::@12/(byte) ba#31 ) - (byte) be#51 ? phi( f0::@12/(byte) be#24 ) - (byte) bd#40 ? phi( f0::@12/(byte) bd#24 ) - (byte) bc#29 ? phi( f0::@12/(byte) bc#24 ) - (byte) bc#4 ? (byte) bc#29 - (byte) bd#4 ? (byte) bd#40 - (byte) be#4 ? (byte) be#51 + (byte) bb#63 ← phi( f0::@12/(byte) bb#4 ) + (byte) ba#20 ← phi( f0::@12/(byte) ba#31 ) + (byte) be#51 ← phi( f0::@12/(byte) be#24 ) + (byte) bd#40 ← phi( f0::@12/(byte) bd#24 ) + (byte) bc#29 ← phi( f0::@12/(byte) bc#24 ) + (byte) bc#4 ← (byte) bc#29 + (byte) bd#4 ← (byte) bd#40 + (byte) be#4 ← (byte) be#51 to:f0::@2 f0::@3: scope:[f0] from f0::@2 f0::@23 - (byte) be#144 ? phi( f0::@2/(byte) be#143 f0::@23/(byte) be#5 ) - (byte) bd#131 ? phi( f0::@2/(byte) bd#130 f0::@23/(byte) bd#5 ) - (byte) bc#98 ? phi( f0::@2/(byte) bc#97 f0::@23/(byte) bc#5 ) - (byte) bb#43 ? phi( f0::@2/(byte) bb#42 f0::@23/(byte) bb#64 ) - (byte) ba#9 ? phi( f0::@2/(byte) ba#8 f0::@23/(byte) ba#21 ) - (bool~) f0::$6 ? (byte) ba#9 == (byte/signed byte/word/signed word/dword/signed dword) 3 - (bool~) f0::$7 ? ! (bool~) f0::$6 + (byte) be#144 ← phi( f0::@2/(byte) be#143 f0::@23/(byte) be#5 ) + (byte) bd#131 ← phi( f0::@2/(byte) bd#130 f0::@23/(byte) bd#5 ) + (byte) bc#98 ← phi( f0::@2/(byte) bc#97 f0::@23/(byte) bc#5 ) + (byte) bb#43 ← phi( f0::@2/(byte) bb#42 f0::@23/(byte) bb#64 ) + (byte) ba#9 ← phi( f0::@2/(byte) ba#8 f0::@23/(byte) ba#21 ) + (bool~) f0::$6 ← (byte) ba#9 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (bool~) f0::$7 ← ! (bool~) f0::$6 if((bool~) f0::$7) goto f0::@4 to:f0::@14 f0::@13: scope:[f0] from f0::@2 - (byte) ba#32 ? phi( f0::@2/(byte) ba#8 ) - (byte) be#98 ? phi( f0::@2/(byte) be#143 ) - (byte) bd#86 ? phi( f0::@2/(byte) bd#130 ) - (byte) bc#64 ? phi( f0::@2/(byte) bc#97 ) - (byte) bb#19 ? phi( f0::@2/(byte) bb#42 ) - (byte) bb#5 ? ++ (byte) bb#19 + (byte) ba#32 ← phi( f0::@2/(byte) ba#8 ) + (byte) be#98 ← phi( f0::@2/(byte) be#143 ) + (byte) bd#86 ← phi( f0::@2/(byte) bd#130 ) + (byte) bc#64 ← phi( f0::@2/(byte) bc#97 ) + (byte) bb#19 ← phi( f0::@2/(byte) bb#42 ) + (byte) bb#5 ← ++ (byte) bb#19 call fa to:f0::@23 f0::@23: scope:[f0] from f0::@13 - (byte) bb#64 ? phi( f0::@13/(byte) bb#5 ) - (byte) ba#21 ? phi( f0::@13/(byte) ba#32 ) - (byte) be#52 ? phi( f0::@13/(byte) be#24 ) - (byte) bd#41 ? phi( f0::@13/(byte) bd#24 ) - (byte) bc#30 ? phi( f0::@13/(byte) bc#24 ) - (byte) bc#5 ? (byte) bc#30 - (byte) bd#5 ? (byte) bd#41 - (byte) be#5 ? (byte) be#52 + (byte) bb#64 ← phi( f0::@13/(byte) bb#5 ) + (byte) ba#21 ← phi( f0::@13/(byte) ba#32 ) + (byte) be#52 ← phi( f0::@13/(byte) be#24 ) + (byte) bd#41 ← phi( f0::@13/(byte) bd#24 ) + (byte) bc#30 ← phi( f0::@13/(byte) bc#24 ) + (byte) bc#5 ← (byte) bc#30 + (byte) bd#5 ← (byte) bd#41 + (byte) be#5 ← (byte) be#52 to:f0::@3 f0::@4: scope:[f0] from f0::@24 f0::@3 - (byte) be#145 ? phi( f0::@24/(byte) be#6 f0::@3/(byte) be#144 ) - (byte) bd#132 ? phi( f0::@24/(byte) bd#6 f0::@3/(byte) bd#131 ) - (byte) bc#99 ? phi( f0::@24/(byte) bc#6 f0::@3/(byte) bc#98 ) - (byte) bb#44 ? phi( f0::@24/(byte) bb#65 f0::@3/(byte) bb#43 ) - (byte) ba#10 ? phi( f0::@24/(byte) ba#22 f0::@3/(byte) ba#9 ) - (bool~) f0::$8 ? (byte) ba#10 == (byte/signed byte/word/signed word/dword/signed dword) 4 - (bool~) f0::$9 ? ! (bool~) f0::$8 + (byte) be#145 ← phi( f0::@24/(byte) be#6 f0::@3/(byte) be#144 ) + (byte) bd#132 ← phi( f0::@24/(byte) bd#6 f0::@3/(byte) bd#131 ) + (byte) bc#99 ← phi( f0::@24/(byte) bc#6 f0::@3/(byte) bc#98 ) + (byte) bb#44 ← phi( f0::@24/(byte) bb#65 f0::@3/(byte) bb#43 ) + (byte) ba#10 ← phi( f0::@24/(byte) ba#22 f0::@3/(byte) ba#9 ) + (bool~) f0::$8 ← (byte) ba#10 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (bool~) f0::$9 ← ! (bool~) f0::$8 if((bool~) f0::$9) goto f0::@5 to:f0::@15 f0::@14: scope:[f0] from f0::@3 - (byte) ba#33 ? phi( f0::@3/(byte) ba#9 ) - (byte) be#99 ? phi( f0::@3/(byte) be#144 ) - (byte) bd#87 ? phi( f0::@3/(byte) bd#131 ) - (byte) bc#65 ? phi( f0::@3/(byte) bc#98 ) - (byte) bb#20 ? phi( f0::@3/(byte) bb#43 ) - (byte) bb#6 ? ++ (byte) bb#20 + (byte) ba#33 ← phi( f0::@3/(byte) ba#9 ) + (byte) be#99 ← phi( f0::@3/(byte) be#144 ) + (byte) bd#87 ← phi( f0::@3/(byte) bd#131 ) + (byte) bc#65 ← phi( f0::@3/(byte) bc#98 ) + (byte) bb#20 ← phi( f0::@3/(byte) bb#43 ) + (byte) bb#6 ← ++ (byte) bb#20 call fa to:f0::@24 f0::@24: scope:[f0] from f0::@14 - (byte) bb#65 ? phi( f0::@14/(byte) bb#6 ) - (byte) ba#22 ? phi( f0::@14/(byte) ba#33 ) - (byte) be#53 ? phi( f0::@14/(byte) be#24 ) - (byte) bd#42 ? phi( f0::@14/(byte) bd#24 ) - (byte) bc#31 ? phi( f0::@14/(byte) bc#24 ) - (byte) bc#6 ? (byte) bc#31 - (byte) bd#6 ? (byte) bd#42 - (byte) be#6 ? (byte) be#53 + (byte) bb#65 ← phi( f0::@14/(byte) bb#6 ) + (byte) ba#22 ← phi( f0::@14/(byte) ba#33 ) + (byte) be#53 ← phi( f0::@14/(byte) be#24 ) + (byte) bd#42 ← phi( f0::@14/(byte) bd#24 ) + (byte) bc#31 ← phi( f0::@14/(byte) bc#24 ) + (byte) bc#6 ← (byte) bc#31 + (byte) bd#6 ← (byte) bd#42 + (byte) be#6 ← (byte) be#53 to:f0::@4 f0::@5: scope:[f0] from f0::@25 f0::@4 - (byte) be#146 ? phi( f0::@25/(byte) be#7 f0::@4/(byte) be#145 ) - (byte) bd#133 ? phi( f0::@25/(byte) bd#7 f0::@4/(byte) bd#132 ) - (byte) bc#100 ? phi( f0::@25/(byte) bc#7 f0::@4/(byte) bc#99 ) - (byte) bb#45 ? phi( f0::@25/(byte) bb#66 f0::@4/(byte) bb#44 ) - (byte) ba#11 ? phi( f0::@25/(byte) ba#23 f0::@4/(byte) ba#10 ) - (bool~) f0::$10 ? (byte) ba#11 == (byte/signed byte/word/signed word/dword/signed dword) 5 - (bool~) f0::$11 ? ! (bool~) f0::$10 + (byte) be#146 ← phi( f0::@25/(byte) be#7 f0::@4/(byte) be#145 ) + (byte) bd#133 ← phi( f0::@25/(byte) bd#7 f0::@4/(byte) bd#132 ) + (byte) bc#100 ← phi( f0::@25/(byte) bc#7 f0::@4/(byte) bc#99 ) + (byte) bb#45 ← phi( f0::@25/(byte) bb#66 f0::@4/(byte) bb#44 ) + (byte) ba#11 ← phi( f0::@25/(byte) ba#23 f0::@4/(byte) ba#10 ) + (bool~) f0::$10 ← (byte) ba#11 == (byte/signed byte/word/signed word/dword/signed dword) 5 + (bool~) f0::$11 ← ! (bool~) f0::$10 if((bool~) f0::$11) goto f0::@6 to:f0::@16 f0::@15: scope:[f0] from f0::@4 - (byte) ba#34 ? phi( f0::@4/(byte) ba#10 ) - (byte) be#100 ? phi( f0::@4/(byte) be#145 ) - (byte) bd#88 ? phi( f0::@4/(byte) bd#132 ) - (byte) bc#66 ? phi( f0::@4/(byte) bc#99 ) - (byte) bb#21 ? phi( f0::@4/(byte) bb#44 ) - (byte) bb#7 ? ++ (byte) bb#21 + (byte) ba#34 ← phi( f0::@4/(byte) ba#10 ) + (byte) be#100 ← phi( f0::@4/(byte) be#145 ) + (byte) bd#88 ← phi( f0::@4/(byte) bd#132 ) + (byte) bc#66 ← phi( f0::@4/(byte) bc#99 ) + (byte) bb#21 ← phi( f0::@4/(byte) bb#44 ) + (byte) bb#7 ← ++ (byte) bb#21 call fa to:f0::@25 f0::@25: scope:[f0] from f0::@15 - (byte) bb#66 ? phi( f0::@15/(byte) bb#7 ) - (byte) ba#23 ? phi( f0::@15/(byte) ba#34 ) - (byte) be#54 ? phi( f0::@15/(byte) be#24 ) - (byte) bd#43 ? phi( f0::@15/(byte) bd#24 ) - (byte) bc#32 ? phi( f0::@15/(byte) bc#24 ) - (byte) bc#7 ? (byte) bc#32 - (byte) bd#7 ? (byte) bd#43 - (byte) be#7 ? (byte) be#54 + (byte) bb#66 ← phi( f0::@15/(byte) bb#7 ) + (byte) ba#23 ← phi( f0::@15/(byte) ba#34 ) + (byte) be#54 ← phi( f0::@15/(byte) be#24 ) + (byte) bd#43 ← phi( f0::@15/(byte) bd#24 ) + (byte) bc#32 ← phi( f0::@15/(byte) bc#24 ) + (byte) bc#7 ← (byte) bc#32 + (byte) bd#7 ← (byte) bd#43 + (byte) be#7 ← (byte) be#54 to:f0::@5 f0::@6: scope:[f0] from f0::@26 f0::@5 - (byte) be#147 ? phi( f0::@26/(byte) be#8 f0::@5/(byte) be#146 ) - (byte) bd#134 ? phi( f0::@26/(byte) bd#8 f0::@5/(byte) bd#133 ) - (byte) bc#101 ? phi( f0::@26/(byte) bc#8 f0::@5/(byte) bc#100 ) - (byte) bb#46 ? phi( f0::@26/(byte) bb#67 f0::@5/(byte) bb#45 ) - (byte) ba#12 ? phi( f0::@26/(byte) ba#24 f0::@5/(byte) ba#11 ) - (bool~) f0::$12 ? (byte) ba#12 == (byte/signed byte/word/signed word/dword/signed dword) 6 - (bool~) f0::$13 ? ! (bool~) f0::$12 + (byte) be#147 ← phi( f0::@26/(byte) be#8 f0::@5/(byte) be#146 ) + (byte) bd#134 ← phi( f0::@26/(byte) bd#8 f0::@5/(byte) bd#133 ) + (byte) bc#101 ← phi( f0::@26/(byte) bc#8 f0::@5/(byte) bc#100 ) + (byte) bb#46 ← phi( f0::@26/(byte) bb#67 f0::@5/(byte) bb#45 ) + (byte) ba#12 ← phi( f0::@26/(byte) ba#24 f0::@5/(byte) ba#11 ) + (bool~) f0::$12 ← (byte) ba#12 == (byte/signed byte/word/signed word/dword/signed dword) 6 + (bool~) f0::$13 ← ! (bool~) f0::$12 if((bool~) f0::$13) goto f0::@7 to:f0::@17 f0::@16: scope:[f0] from f0::@5 - (byte) ba#35 ? phi( f0::@5/(byte) ba#11 ) - (byte) be#101 ? phi( f0::@5/(byte) be#146 ) - (byte) bd#89 ? phi( f0::@5/(byte) bd#133 ) - (byte) bc#67 ? phi( f0::@5/(byte) bc#100 ) - (byte) bb#22 ? phi( f0::@5/(byte) bb#45 ) - (byte) bb#8 ? ++ (byte) bb#22 + (byte) ba#35 ← phi( f0::@5/(byte) ba#11 ) + (byte) be#101 ← phi( f0::@5/(byte) be#146 ) + (byte) bd#89 ← phi( f0::@5/(byte) bd#133 ) + (byte) bc#67 ← phi( f0::@5/(byte) bc#100 ) + (byte) bb#22 ← phi( f0::@5/(byte) bb#45 ) + (byte) bb#8 ← ++ (byte) bb#22 call fa to:f0::@26 f0::@26: scope:[f0] from f0::@16 - (byte) bb#67 ? phi( f0::@16/(byte) bb#8 ) - (byte) ba#24 ? phi( f0::@16/(byte) ba#35 ) - (byte) be#55 ? phi( f0::@16/(byte) be#24 ) - (byte) bd#44 ? phi( f0::@16/(byte) bd#24 ) - (byte) bc#33 ? phi( f0::@16/(byte) bc#24 ) - (byte) bc#8 ? (byte) bc#33 - (byte) bd#8 ? (byte) bd#44 - (byte) be#8 ? (byte) be#55 + (byte) bb#67 ← phi( f0::@16/(byte) bb#8 ) + (byte) ba#24 ← phi( f0::@16/(byte) ba#35 ) + (byte) be#55 ← phi( f0::@16/(byte) be#24 ) + (byte) bd#44 ← phi( f0::@16/(byte) bd#24 ) + (byte) bc#33 ← phi( f0::@16/(byte) bc#24 ) + (byte) bc#8 ← (byte) bc#33 + (byte) bd#8 ← (byte) bd#44 + (byte) be#8 ← (byte) be#55 to:f0::@6 f0::@7: scope:[f0] from f0::@27 f0::@6 - (byte) be#148 ? phi( f0::@27/(byte) be#9 f0::@6/(byte) be#147 ) - (byte) bd#135 ? phi( f0::@27/(byte) bd#9 f0::@6/(byte) bd#134 ) - (byte) bc#102 ? phi( f0::@27/(byte) bc#9 f0::@6/(byte) bc#101 ) - (byte) bb#47 ? phi( f0::@27/(byte) bb#68 f0::@6/(byte) bb#46 ) - (byte) ba#13 ? phi( f0::@27/(byte) ba#25 f0::@6/(byte) ba#12 ) - (bool~) f0::$14 ? (byte) ba#13 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) f0::$15 ? ! (bool~) f0::$14 + (byte) be#148 ← phi( f0::@27/(byte) be#9 f0::@6/(byte) be#147 ) + (byte) bd#135 ← phi( f0::@27/(byte) bd#9 f0::@6/(byte) bd#134 ) + (byte) bc#102 ← phi( f0::@27/(byte) bc#9 f0::@6/(byte) bc#101 ) + (byte) bb#47 ← phi( f0::@27/(byte) bb#68 f0::@6/(byte) bb#46 ) + (byte) ba#13 ← phi( f0::@27/(byte) ba#25 f0::@6/(byte) ba#12 ) + (bool~) f0::$14 ← (byte) ba#13 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) f0::$15 ← ! (bool~) f0::$14 if((bool~) f0::$15) goto f0::@8 to:f0::@18 f0::@17: scope:[f0] from f0::@6 - (byte) ba#36 ? phi( f0::@6/(byte) ba#12 ) - (byte) be#102 ? phi( f0::@6/(byte) be#147 ) - (byte) bd#90 ? phi( f0::@6/(byte) bd#134 ) - (byte) bc#68 ? phi( f0::@6/(byte) bc#101 ) - (byte) bb#23 ? phi( f0::@6/(byte) bb#46 ) - (byte) bb#9 ? ++ (byte) bb#23 + (byte) ba#36 ← phi( f0::@6/(byte) ba#12 ) + (byte) be#102 ← phi( f0::@6/(byte) be#147 ) + (byte) bd#90 ← phi( f0::@6/(byte) bd#134 ) + (byte) bc#68 ← phi( f0::@6/(byte) bc#101 ) + (byte) bb#23 ← phi( f0::@6/(byte) bb#46 ) + (byte) bb#9 ← ++ (byte) bb#23 call fa to:f0::@27 f0::@27: scope:[f0] from f0::@17 - (byte) bb#68 ? phi( f0::@17/(byte) bb#9 ) - (byte) ba#25 ? phi( f0::@17/(byte) ba#36 ) - (byte) be#56 ? phi( f0::@17/(byte) be#24 ) - (byte) bd#45 ? phi( f0::@17/(byte) bd#24 ) - (byte) bc#34 ? phi( f0::@17/(byte) bc#24 ) - (byte) bc#9 ? (byte) bc#34 - (byte) bd#9 ? (byte) bd#45 - (byte) be#9 ? (byte) be#56 + (byte) bb#68 ← phi( f0::@17/(byte) bb#9 ) + (byte) ba#25 ← phi( f0::@17/(byte) ba#36 ) + (byte) be#56 ← phi( f0::@17/(byte) be#24 ) + (byte) bd#45 ← phi( f0::@17/(byte) bd#24 ) + (byte) bc#34 ← phi( f0::@17/(byte) bc#24 ) + (byte) bc#9 ← (byte) bc#34 + (byte) bd#9 ← (byte) bd#45 + (byte) be#9 ← (byte) be#56 to:f0::@7 f0::@8: scope:[f0] from f0::@28 f0::@7 - (byte) be#149 ? phi( f0::@28/(byte) be#10 f0::@7/(byte) be#148 ) - (byte) bd#136 ? phi( f0::@28/(byte) bd#10 f0::@7/(byte) bd#135 ) - (byte) bc#103 ? phi( f0::@28/(byte) bc#10 f0::@7/(byte) bc#102 ) - (byte) bb#48 ? phi( f0::@28/(byte) bb#69 f0::@7/(byte) bb#47 ) - (byte) ba#14 ? phi( f0::@28/(byte) ba#26 f0::@7/(byte) ba#13 ) - (bool~) f0::$16 ? (byte) ba#14 == (byte/signed byte/word/signed word/dword/signed dword) 8 - (bool~) f0::$17 ? ! (bool~) f0::$16 + (byte) be#149 ← phi( f0::@28/(byte) be#10 f0::@7/(byte) be#148 ) + (byte) bd#136 ← phi( f0::@28/(byte) bd#10 f0::@7/(byte) bd#135 ) + (byte) bc#103 ← phi( f0::@28/(byte) bc#10 f0::@7/(byte) bc#102 ) + (byte) bb#48 ← phi( f0::@28/(byte) bb#69 f0::@7/(byte) bb#47 ) + (byte) ba#14 ← phi( f0::@28/(byte) ba#26 f0::@7/(byte) ba#13 ) + (bool~) f0::$16 ← (byte) ba#14 == (byte/signed byte/word/signed word/dword/signed dword) 8 + (bool~) f0::$17 ← ! (bool~) f0::$16 if((bool~) f0::$17) goto f0::@9 to:f0::@19 f0::@18: scope:[f0] from f0::@7 - (byte) ba#37 ? phi( f0::@7/(byte) ba#13 ) - (byte) be#103 ? phi( f0::@7/(byte) be#148 ) - (byte) bd#91 ? phi( f0::@7/(byte) bd#135 ) - (byte) bc#69 ? phi( f0::@7/(byte) bc#102 ) - (byte) bb#24 ? phi( f0::@7/(byte) bb#47 ) - (byte) bb#10 ? ++ (byte) bb#24 + (byte) ba#37 ← phi( f0::@7/(byte) ba#13 ) + (byte) be#103 ← phi( f0::@7/(byte) be#148 ) + (byte) bd#91 ← phi( f0::@7/(byte) bd#135 ) + (byte) bc#69 ← phi( f0::@7/(byte) bc#102 ) + (byte) bb#24 ← phi( f0::@7/(byte) bb#47 ) + (byte) bb#10 ← ++ (byte) bb#24 call fa to:f0::@28 f0::@28: scope:[f0] from f0::@18 - (byte) bb#69 ? phi( f0::@18/(byte) bb#10 ) - (byte) ba#26 ? phi( f0::@18/(byte) ba#37 ) - (byte) be#57 ? phi( f0::@18/(byte) be#24 ) - (byte) bd#46 ? phi( f0::@18/(byte) bd#24 ) - (byte) bc#35 ? phi( f0::@18/(byte) bc#24 ) - (byte) bc#10 ? (byte) bc#35 - (byte) bd#10 ? (byte) bd#46 - (byte) be#10 ? (byte) be#57 + (byte) bb#69 ← phi( f0::@18/(byte) bb#10 ) + (byte) ba#26 ← phi( f0::@18/(byte) ba#37 ) + (byte) be#57 ← phi( f0::@18/(byte) be#24 ) + (byte) bd#46 ← phi( f0::@18/(byte) bd#24 ) + (byte) bc#35 ← phi( f0::@18/(byte) bc#24 ) + (byte) bc#10 ← (byte) bc#35 + (byte) bd#10 ← (byte) bd#46 + (byte) be#10 ← (byte) be#57 to:f0::@8 f0::@9: scope:[f0] from f0::@29 f0::@8 - (byte) be#150 ? phi( f0::@29/(byte) be#11 f0::@8/(byte) be#149 ) - (byte) bd#137 ? phi( f0::@29/(byte) bd#11 f0::@8/(byte) bd#136 ) - (byte) bc#104 ? phi( f0::@29/(byte) bc#11 f0::@8/(byte) bc#103 ) - (byte) bb#70 ? phi( f0::@29/(byte) bb#80 f0::@8/(byte) bb#48 ) - (byte) ba#15 ? phi( f0::@29/(byte) ba#27 f0::@8/(byte) ba#14 ) - (bool~) f0::$18 ? (byte) ba#15 == (byte/signed byte/word/signed word/dword/signed dword) 9 - (bool~) f0::$19 ? ! (bool~) f0::$18 + (byte) be#150 ← phi( f0::@29/(byte) be#11 f0::@8/(byte) be#149 ) + (byte) bd#137 ← phi( f0::@29/(byte) bd#11 f0::@8/(byte) bd#136 ) + (byte) bc#104 ← phi( f0::@29/(byte) bc#11 f0::@8/(byte) bc#103 ) + (byte) bb#70 ← phi( f0::@29/(byte) bb#80 f0::@8/(byte) bb#48 ) + (byte) ba#15 ← phi( f0::@29/(byte) ba#27 f0::@8/(byte) ba#14 ) + (bool~) f0::$18 ← (byte) ba#15 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (bool~) f0::$19 ← ! (bool~) f0::$18 if((bool~) f0::$19) goto f0::@10 to:f0::@20 f0::@19: scope:[f0] from f0::@8 - (byte) ba#38 ? phi( f0::@8/(byte) ba#14 ) - (byte) be#104 ? phi( f0::@8/(byte) be#149 ) - (byte) bd#92 ? phi( f0::@8/(byte) bd#136 ) - (byte) bc#70 ? phi( f0::@8/(byte) bc#103 ) - (byte) bb#25 ? phi( f0::@8/(byte) bb#48 ) - (byte) bb#11 ? ++ (byte) bb#25 + (byte) ba#38 ← phi( f0::@8/(byte) ba#14 ) + (byte) be#104 ← phi( f0::@8/(byte) be#149 ) + (byte) bd#92 ← phi( f0::@8/(byte) bd#136 ) + (byte) bc#70 ← phi( f0::@8/(byte) bc#103 ) + (byte) bb#25 ← phi( f0::@8/(byte) bb#48 ) + (byte) bb#11 ← ++ (byte) bb#25 call fa to:f0::@29 f0::@29: scope:[f0] from f0::@19 - (byte) bb#80 ? phi( f0::@19/(byte) bb#11 ) - (byte) ba#27 ? phi( f0::@19/(byte) ba#38 ) - (byte) be#58 ? phi( f0::@19/(byte) be#24 ) - (byte) bd#47 ? phi( f0::@19/(byte) bd#24 ) - (byte) bc#36 ? phi( f0::@19/(byte) bc#24 ) - (byte) bc#11 ? (byte) bc#36 - (byte) bd#11 ? (byte) bd#47 - (byte) be#11 ? (byte) be#58 + (byte) bb#80 ← phi( f0::@19/(byte) bb#11 ) + (byte) ba#27 ← phi( f0::@19/(byte) ba#38 ) + (byte) be#58 ← phi( f0::@19/(byte) be#24 ) + (byte) bd#47 ← phi( f0::@19/(byte) bd#24 ) + (byte) bc#36 ← phi( f0::@19/(byte) bc#24 ) + (byte) bc#11 ← (byte) bc#36 + (byte) bd#11 ← (byte) bd#47 + (byte) be#11 ← (byte) be#58 to:f0::@9 f0::@10: scope:[f0] from f0::@9 - (byte) be#106 ? phi( f0::@9/(byte) be#150 ) - (byte) bd#94 ? phi( f0::@9/(byte) bd#137 ) - (byte) bc#72 ? phi( f0::@9/(byte) bc#104 ) - (byte) bb#49 ? phi( f0::@9/(byte) bb#70 ) + (byte) be#106 ← phi( f0::@9/(byte) be#150 ) + (byte) bd#94 ← phi( f0::@9/(byte) bd#137 ) + (byte) bc#72 ← phi( f0::@9/(byte) bc#104 ) + (byte) bb#49 ← phi( f0::@9/(byte) bb#70 ) to:f0::@return f0::@20: scope:[f0] from f0::@9 - (byte) be#105 ? phi( f0::@9/(byte) be#150 ) - (byte) bd#93 ? phi( f0::@9/(byte) bd#137 ) - (byte) bc#71 ? phi( f0::@9/(byte) bc#104 ) - (byte) bb#12 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) be#105 ← phi( f0::@9/(byte) be#150 ) + (byte) bd#93 ← phi( f0::@9/(byte) bd#137 ) + (byte) bc#71 ← phi( f0::@9/(byte) bc#104 ) + (byte) bb#12 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call fa to:f0::@30 f0::@30: scope:[f0] from f0::@20 - (byte) bb#50 ? phi( f0::@20/(byte) bb#12 ) - (byte) be#59 ? phi( f0::@20/(byte) be#24 ) - (byte) bd#48 ? phi( f0::@20/(byte) bd#24 ) - (byte) bc#37 ? phi( f0::@20/(byte) bc#24 ) - (byte) bc#12 ? (byte) bc#37 - (byte) bd#12 ? (byte) bd#48 - (byte) be#12 ? (byte) be#59 + (byte) bb#50 ← phi( f0::@20/(byte) bb#12 ) + (byte) be#59 ← phi( f0::@20/(byte) be#24 ) + (byte) bd#48 ← phi( f0::@20/(byte) bd#24 ) + (byte) bc#37 ← phi( f0::@20/(byte) bc#24 ) + (byte) bc#12 ← (byte) bc#37 + (byte) bd#12 ← (byte) bd#48 + (byte) be#12 ← (byte) be#59 to:f0::@return f0::@return: scope:[f0] from f0::@10 f0::@30 - (byte) be#60 ? phi( f0::@10/(byte) be#106 f0::@30/(byte) be#12 ) - (byte) bd#49 ? phi( f0::@10/(byte) bd#94 f0::@30/(byte) bd#12 ) - (byte) bc#38 ? phi( f0::@10/(byte) bc#72 f0::@30/(byte) bc#12 ) - (byte) bb#26 ? phi( f0::@10/(byte) bb#49 f0::@30/(byte) bb#50 ) - (byte) bb#13 ? (byte) bb#26 - (byte) bc#13 ? (byte) bc#38 - (byte) bd#13 ? (byte) bd#49 - (byte) be#13 ? (byte) be#60 + (byte) be#60 ← phi( f0::@10/(byte) be#106 f0::@30/(byte) be#12 ) + (byte) bd#49 ← phi( f0::@10/(byte) bd#94 f0::@30/(byte) bd#12 ) + (byte) bc#38 ← phi( f0::@10/(byte) bc#72 f0::@30/(byte) bc#12 ) + (byte) bb#26 ← phi( f0::@10/(byte) bb#49 f0::@30/(byte) bb#50 ) + (byte) bb#13 ← (byte) bb#26 + (byte) bc#13 ← (byte) bc#38 + (byte) bd#13 ← (byte) bd#49 + (byte) be#13 ← (byte) be#60 return to:@return fa: scope:[fa] from f0::@11 f0::@12 f0::@13 f0::@14 f0::@15 f0::@16 f0::@17 f0::@18 f0::@19 f0::@20 - (byte) be#151 ? phi( f0::@11/(byte) be#96 f0::@12/(byte) be#97 f0::@13/(byte) be#98 f0::@14/(byte) be#99 f0::@15/(byte) be#100 f0::@16/(byte) be#101 f0::@17/(byte) be#102 f0::@18/(byte) be#103 f0::@19/(byte) be#104 f0::@20/(byte) be#105 ) - (byte) bd#138 ? phi( f0::@11/(byte) bd#84 f0::@12/(byte) bd#85 f0::@13/(byte) bd#86 f0::@14/(byte) bd#87 f0::@15/(byte) bd#88 f0::@16/(byte) bd#89 f0::@17/(byte) bd#90 f0::@18/(byte) bd#91 f0::@19/(byte) bd#92 f0::@20/(byte) bd#93 ) - (byte) bc#73 ? phi( f0::@11/(byte) bc#62 f0::@12/(byte) bc#63 f0::@13/(byte) bc#64 f0::@14/(byte) bc#65 f0::@15/(byte) bc#66 f0::@16/(byte) bc#67 f0::@17/(byte) bc#68 f0::@18/(byte) bc#69 f0::@19/(byte) bc#70 f0::@20/(byte) bc#71 ) - (byte) bb#27 ? phi( f0::@11/(byte) bb#3 f0::@12/(byte) bb#4 f0::@13/(byte) bb#5 f0::@14/(byte) bb#6 f0::@15/(byte) bb#7 f0::@16/(byte) bb#8 f0::@17/(byte) bb#9 f0::@18/(byte) bb#10 f0::@19/(byte) bb#11 f0::@20/(byte) bb#12 ) - (bool~) fa::$0 ? (byte) bb#27 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) fa::$1 ? ! (bool~) fa::$0 + (byte) be#151 ← phi( f0::@11/(byte) be#96 f0::@12/(byte) be#97 f0::@13/(byte) be#98 f0::@14/(byte) be#99 f0::@15/(byte) be#100 f0::@16/(byte) be#101 f0::@17/(byte) be#102 f0::@18/(byte) be#103 f0::@19/(byte) be#104 f0::@20/(byte) be#105 ) + (byte) bd#138 ← phi( f0::@11/(byte) bd#84 f0::@12/(byte) bd#85 f0::@13/(byte) bd#86 f0::@14/(byte) bd#87 f0::@15/(byte) bd#88 f0::@16/(byte) bd#89 f0::@17/(byte) bd#90 f0::@18/(byte) bd#91 f0::@19/(byte) bd#92 f0::@20/(byte) bd#93 ) + (byte) bc#73 ← phi( f0::@11/(byte) bc#62 f0::@12/(byte) bc#63 f0::@13/(byte) bc#64 f0::@14/(byte) bc#65 f0::@15/(byte) bc#66 f0::@16/(byte) bc#67 f0::@17/(byte) bc#68 f0::@18/(byte) bc#69 f0::@19/(byte) bc#70 f0::@20/(byte) bc#71 ) + (byte) bb#27 ← phi( f0::@11/(byte) bb#3 f0::@12/(byte) bb#4 f0::@13/(byte) bb#5 f0::@14/(byte) bb#6 f0::@15/(byte) bb#7 f0::@16/(byte) bb#8 f0::@17/(byte) bb#9 f0::@18/(byte) bb#10 f0::@19/(byte) bb#11 f0::@20/(byte) bb#12 ) + (bool~) fa::$0 ← (byte) bb#27 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) fa::$1 ← ! (bool~) fa::$0 if((bool~) fa::$1) goto fa::@1 to:fa::@11 fa::@1: scope:[fa] from fa fa::@21 - (byte) be#152 ? phi( fa/(byte) be#151 fa::@21/(byte) be#14 ) - (byte) bd#139 ? phi( fa/(byte) bd#138 fa::@21/(byte) bd#14 ) - (byte) bc#74 ? phi( fa/(byte) bc#73 fa::@21/(byte) bc#105 ) - (byte) bb#28 ? phi( fa/(byte) bb#27 fa::@21/(byte) bb#51 ) - (bool~) fa::$2 ? (byte) bb#28 == (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) fa::$3 ? ! (bool~) fa::$2 + (byte) be#152 ← phi( fa/(byte) be#151 fa::@21/(byte) be#14 ) + (byte) bd#139 ← phi( fa/(byte) bd#138 fa::@21/(byte) bd#14 ) + (byte) bc#74 ← phi( fa/(byte) bc#73 fa::@21/(byte) bc#105 ) + (byte) bb#28 ← phi( fa/(byte) bb#27 fa::@21/(byte) bb#51 ) + (bool~) fa::$2 ← (byte) bb#28 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) fa::$3 ← ! (bool~) fa::$2 if((bool~) fa::$3) goto fa::@2 to:fa::@12 fa::@11: scope:[fa] from fa - (byte) bb#71 ? phi( fa/(byte) bb#27 ) - (byte) be#107 ? phi( fa/(byte) be#151 ) - (byte) bd#95 ? phi( fa/(byte) bd#138 ) - (byte) bc#39 ? phi( fa/(byte) bc#73 ) - (byte) bc#14 ? ++ (byte) bc#39 + (byte) bb#71 ← phi( fa/(byte) bb#27 ) + (byte) be#107 ← phi( fa/(byte) be#151 ) + (byte) bd#95 ← phi( fa/(byte) bd#138 ) + (byte) bc#39 ← phi( fa/(byte) bc#73 ) + (byte) bc#14 ← ++ (byte) bc#39 call fb to:fa::@21 fa::@21: scope:[fa] from fa::@11 - (byte) bc#105 ? phi( fa::@11/(byte) bc#14 ) - (byte) bb#51 ? phi( fa::@11/(byte) bb#71 ) - (byte) be#61 ? phi( fa::@11/(byte) be#35 ) - (byte) bd#50 ? phi( fa::@11/(byte) bd#35 ) - (byte) bd#14 ? (byte) bd#50 - (byte) be#14 ? (byte) be#61 + (byte) bc#105 ← phi( fa::@11/(byte) bc#14 ) + (byte) bb#51 ← phi( fa::@11/(byte) bb#71 ) + (byte) be#61 ← phi( fa::@11/(byte) be#35 ) + (byte) bd#50 ← phi( fa::@11/(byte) bd#35 ) + (byte) bd#14 ← (byte) bd#50 + (byte) be#14 ← (byte) be#61 to:fa::@1 fa::@2: scope:[fa] from fa::@1 fa::@22 - (byte) be#153 ? phi( fa::@1/(byte) be#152 fa::@22/(byte) be#15 ) - (byte) bd#140 ? phi( fa::@1/(byte) bd#139 fa::@22/(byte) bd#15 ) - (byte) bc#75 ? phi( fa::@1/(byte) bc#74 fa::@22/(byte) bc#106 ) - (byte) bb#29 ? phi( fa::@1/(byte) bb#28 fa::@22/(byte) bb#52 ) - (bool~) fa::$4 ? (byte) bb#29 == (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool~) fa::$5 ? ! (bool~) fa::$4 + (byte) be#153 ← phi( fa::@1/(byte) be#152 fa::@22/(byte) be#15 ) + (byte) bd#140 ← phi( fa::@1/(byte) bd#139 fa::@22/(byte) bd#15 ) + (byte) bc#75 ← phi( fa::@1/(byte) bc#74 fa::@22/(byte) bc#106 ) + (byte) bb#29 ← phi( fa::@1/(byte) bb#28 fa::@22/(byte) bb#52 ) + (bool~) fa::$4 ← (byte) bb#29 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool~) fa::$5 ← ! (bool~) fa::$4 if((bool~) fa::$5) goto fa::@3 to:fa::@13 fa::@12: scope:[fa] from fa::@1 - (byte) bb#72 ? phi( fa::@1/(byte) bb#28 ) - (byte) be#108 ? phi( fa::@1/(byte) be#152 ) - (byte) bd#96 ? phi( fa::@1/(byte) bd#139 ) - (byte) bc#40 ? phi( fa::@1/(byte) bc#74 ) - (byte) bc#15 ? ++ (byte) bc#40 + (byte) bb#72 ← phi( fa::@1/(byte) bb#28 ) + (byte) be#108 ← phi( fa::@1/(byte) be#152 ) + (byte) bd#96 ← phi( fa::@1/(byte) bd#139 ) + (byte) bc#40 ← phi( fa::@1/(byte) bc#74 ) + (byte) bc#15 ← ++ (byte) bc#40 call fb to:fa::@22 fa::@22: scope:[fa] from fa::@12 - (byte) bc#106 ? phi( fa::@12/(byte) bc#15 ) - (byte) bb#52 ? phi( fa::@12/(byte) bb#72 ) - (byte) be#62 ? phi( fa::@12/(byte) be#35 ) - (byte) bd#51 ? phi( fa::@12/(byte) bd#35 ) - (byte) bd#15 ? (byte) bd#51 - (byte) be#15 ? (byte) be#62 + (byte) bc#106 ← phi( fa::@12/(byte) bc#15 ) + (byte) bb#52 ← phi( fa::@12/(byte) bb#72 ) + (byte) be#62 ← phi( fa::@12/(byte) be#35 ) + (byte) bd#51 ← phi( fa::@12/(byte) bd#35 ) + (byte) bd#15 ← (byte) bd#51 + (byte) be#15 ← (byte) be#62 to:fa::@2 fa::@3: scope:[fa] from fa::@2 fa::@23 - (byte) be#154 ? phi( fa::@2/(byte) be#153 fa::@23/(byte) be#16 ) - (byte) bd#141 ? phi( fa::@2/(byte) bd#140 fa::@23/(byte) bd#16 ) - (byte) bc#76 ? phi( fa::@2/(byte) bc#75 fa::@23/(byte) bc#107 ) - (byte) bb#30 ? phi( fa::@2/(byte) bb#29 fa::@23/(byte) bb#53 ) - (bool~) fa::$6 ? (byte) bb#30 == (byte/signed byte/word/signed word/dword/signed dword) 3 - (bool~) fa::$7 ? ! (bool~) fa::$6 + (byte) be#154 ← phi( fa::@2/(byte) be#153 fa::@23/(byte) be#16 ) + (byte) bd#141 ← phi( fa::@2/(byte) bd#140 fa::@23/(byte) bd#16 ) + (byte) bc#76 ← phi( fa::@2/(byte) bc#75 fa::@23/(byte) bc#107 ) + (byte) bb#30 ← phi( fa::@2/(byte) bb#29 fa::@23/(byte) bb#53 ) + (bool~) fa::$6 ← (byte) bb#30 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (bool~) fa::$7 ← ! (bool~) fa::$6 if((bool~) fa::$7) goto fa::@4 to:fa::@14 fa::@13: scope:[fa] from fa::@2 - (byte) bb#73 ? phi( fa::@2/(byte) bb#29 ) - (byte) be#109 ? phi( fa::@2/(byte) be#153 ) - (byte) bd#97 ? phi( fa::@2/(byte) bd#140 ) - (byte) bc#41 ? phi( fa::@2/(byte) bc#75 ) - (byte) bc#16 ? ++ (byte) bc#41 + (byte) bb#73 ← phi( fa::@2/(byte) bb#29 ) + (byte) be#109 ← phi( fa::@2/(byte) be#153 ) + (byte) bd#97 ← phi( fa::@2/(byte) bd#140 ) + (byte) bc#41 ← phi( fa::@2/(byte) bc#75 ) + (byte) bc#16 ← ++ (byte) bc#41 call fb to:fa::@23 fa::@23: scope:[fa] from fa::@13 - (byte) bc#107 ? phi( fa::@13/(byte) bc#16 ) - (byte) bb#53 ? phi( fa::@13/(byte) bb#73 ) - (byte) be#63 ? phi( fa::@13/(byte) be#35 ) - (byte) bd#52 ? phi( fa::@13/(byte) bd#35 ) - (byte) bd#16 ? (byte) bd#52 - (byte) be#16 ? (byte) be#63 + (byte) bc#107 ← phi( fa::@13/(byte) bc#16 ) + (byte) bb#53 ← phi( fa::@13/(byte) bb#73 ) + (byte) be#63 ← phi( fa::@13/(byte) be#35 ) + (byte) bd#52 ← phi( fa::@13/(byte) bd#35 ) + (byte) bd#16 ← (byte) bd#52 + (byte) be#16 ← (byte) be#63 to:fa::@3 fa::@4: scope:[fa] from fa::@24 fa::@3 - (byte) be#155 ? phi( fa::@24/(byte) be#17 fa::@3/(byte) be#154 ) - (byte) bd#142 ? phi( fa::@24/(byte) bd#17 fa::@3/(byte) bd#141 ) - (byte) bc#77 ? phi( fa::@24/(byte) bc#108 fa::@3/(byte) bc#76 ) - (byte) bb#31 ? phi( fa::@24/(byte) bb#54 fa::@3/(byte) bb#30 ) - (bool~) fa::$8 ? (byte) bb#31 == (byte/signed byte/word/signed word/dword/signed dword) 4 - (bool~) fa::$9 ? ! (bool~) fa::$8 + (byte) be#155 ← phi( fa::@24/(byte) be#17 fa::@3/(byte) be#154 ) + (byte) bd#142 ← phi( fa::@24/(byte) bd#17 fa::@3/(byte) bd#141 ) + (byte) bc#77 ← phi( fa::@24/(byte) bc#108 fa::@3/(byte) bc#76 ) + (byte) bb#31 ← phi( fa::@24/(byte) bb#54 fa::@3/(byte) bb#30 ) + (bool~) fa::$8 ← (byte) bb#31 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (bool~) fa::$9 ← ! (bool~) fa::$8 if((bool~) fa::$9) goto fa::@5 to:fa::@15 fa::@14: scope:[fa] from fa::@3 - (byte) bb#74 ? phi( fa::@3/(byte) bb#30 ) - (byte) be#110 ? phi( fa::@3/(byte) be#154 ) - (byte) bd#98 ? phi( fa::@3/(byte) bd#141 ) - (byte) bc#42 ? phi( fa::@3/(byte) bc#76 ) - (byte) bc#17 ? ++ (byte) bc#42 + (byte) bb#74 ← phi( fa::@3/(byte) bb#30 ) + (byte) be#110 ← phi( fa::@3/(byte) be#154 ) + (byte) bd#98 ← phi( fa::@3/(byte) bd#141 ) + (byte) bc#42 ← phi( fa::@3/(byte) bc#76 ) + (byte) bc#17 ← ++ (byte) bc#42 call fb to:fa::@24 fa::@24: scope:[fa] from fa::@14 - (byte) bc#108 ? phi( fa::@14/(byte) bc#17 ) - (byte) bb#54 ? phi( fa::@14/(byte) bb#74 ) - (byte) be#64 ? phi( fa::@14/(byte) be#35 ) - (byte) bd#53 ? phi( fa::@14/(byte) bd#35 ) - (byte) bd#17 ? (byte) bd#53 - (byte) be#17 ? (byte) be#64 + (byte) bc#108 ← phi( fa::@14/(byte) bc#17 ) + (byte) bb#54 ← phi( fa::@14/(byte) bb#74 ) + (byte) be#64 ← phi( fa::@14/(byte) be#35 ) + (byte) bd#53 ← phi( fa::@14/(byte) bd#35 ) + (byte) bd#17 ← (byte) bd#53 + (byte) be#17 ← (byte) be#64 to:fa::@4 fa::@5: scope:[fa] from fa::@25 fa::@4 - (byte) be#156 ? phi( fa::@25/(byte) be#18 fa::@4/(byte) be#155 ) - (byte) bd#143 ? phi( fa::@25/(byte) bd#18 fa::@4/(byte) bd#142 ) - (byte) bc#78 ? phi( fa::@25/(byte) bc#109 fa::@4/(byte) bc#77 ) - (byte) bb#32 ? phi( fa::@25/(byte) bb#55 fa::@4/(byte) bb#31 ) - (bool~) fa::$10 ? (byte) bb#32 == (byte/signed byte/word/signed word/dword/signed dword) 5 - (bool~) fa::$11 ? ! (bool~) fa::$10 + (byte) be#156 ← phi( fa::@25/(byte) be#18 fa::@4/(byte) be#155 ) + (byte) bd#143 ← phi( fa::@25/(byte) bd#18 fa::@4/(byte) bd#142 ) + (byte) bc#78 ← phi( fa::@25/(byte) bc#109 fa::@4/(byte) bc#77 ) + (byte) bb#32 ← phi( fa::@25/(byte) bb#55 fa::@4/(byte) bb#31 ) + (bool~) fa::$10 ← (byte) bb#32 == (byte/signed byte/word/signed word/dword/signed dword) 5 + (bool~) fa::$11 ← ! (bool~) fa::$10 if((bool~) fa::$11) goto fa::@6 to:fa::@16 fa::@15: scope:[fa] from fa::@4 - (byte) bb#75 ? phi( fa::@4/(byte) bb#31 ) - (byte) be#111 ? phi( fa::@4/(byte) be#155 ) - (byte) bd#99 ? phi( fa::@4/(byte) bd#142 ) - (byte) bc#43 ? phi( fa::@4/(byte) bc#77 ) - (byte) bc#18 ? ++ (byte) bc#43 + (byte) bb#75 ← phi( fa::@4/(byte) bb#31 ) + (byte) be#111 ← phi( fa::@4/(byte) be#155 ) + (byte) bd#99 ← phi( fa::@4/(byte) bd#142 ) + (byte) bc#43 ← phi( fa::@4/(byte) bc#77 ) + (byte) bc#18 ← ++ (byte) bc#43 call fb to:fa::@25 fa::@25: scope:[fa] from fa::@15 - (byte) bc#109 ? phi( fa::@15/(byte) bc#18 ) - (byte) bb#55 ? phi( fa::@15/(byte) bb#75 ) - (byte) be#65 ? phi( fa::@15/(byte) be#35 ) - (byte) bd#54 ? phi( fa::@15/(byte) bd#35 ) - (byte) bd#18 ? (byte) bd#54 - (byte) be#18 ? (byte) be#65 + (byte) bc#109 ← phi( fa::@15/(byte) bc#18 ) + (byte) bb#55 ← phi( fa::@15/(byte) bb#75 ) + (byte) be#65 ← phi( fa::@15/(byte) be#35 ) + (byte) bd#54 ← phi( fa::@15/(byte) bd#35 ) + (byte) bd#18 ← (byte) bd#54 + (byte) be#18 ← (byte) be#65 to:fa::@5 fa::@6: scope:[fa] from fa::@26 fa::@5 - (byte) be#157 ? phi( fa::@26/(byte) be#19 fa::@5/(byte) be#156 ) - (byte) bd#144 ? phi( fa::@26/(byte) bd#19 fa::@5/(byte) bd#143 ) - (byte) bc#79 ? phi( fa::@26/(byte) bc#110 fa::@5/(byte) bc#78 ) - (byte) bb#33 ? phi( fa::@26/(byte) bb#56 fa::@5/(byte) bb#32 ) - (bool~) fa::$12 ? (byte) bb#33 == (byte/signed byte/word/signed word/dword/signed dword) 6 - (bool~) fa::$13 ? ! (bool~) fa::$12 + (byte) be#157 ← phi( fa::@26/(byte) be#19 fa::@5/(byte) be#156 ) + (byte) bd#144 ← phi( fa::@26/(byte) bd#19 fa::@5/(byte) bd#143 ) + (byte) bc#79 ← phi( fa::@26/(byte) bc#110 fa::@5/(byte) bc#78 ) + (byte) bb#33 ← phi( fa::@26/(byte) bb#56 fa::@5/(byte) bb#32 ) + (bool~) fa::$12 ← (byte) bb#33 == (byte/signed byte/word/signed word/dword/signed dword) 6 + (bool~) fa::$13 ← ! (bool~) fa::$12 if((bool~) fa::$13) goto fa::@7 to:fa::@17 fa::@16: scope:[fa] from fa::@5 - (byte) bb#76 ? phi( fa::@5/(byte) bb#32 ) - (byte) be#112 ? phi( fa::@5/(byte) be#156 ) - (byte) bd#100 ? phi( fa::@5/(byte) bd#143 ) - (byte) bc#44 ? phi( fa::@5/(byte) bc#78 ) - (byte) bc#19 ? ++ (byte) bc#44 + (byte) bb#76 ← phi( fa::@5/(byte) bb#32 ) + (byte) be#112 ← phi( fa::@5/(byte) be#156 ) + (byte) bd#100 ← phi( fa::@5/(byte) bd#143 ) + (byte) bc#44 ← phi( fa::@5/(byte) bc#78 ) + (byte) bc#19 ← ++ (byte) bc#44 call fb to:fa::@26 fa::@26: scope:[fa] from fa::@16 - (byte) bc#110 ? phi( fa::@16/(byte) bc#19 ) - (byte) bb#56 ? phi( fa::@16/(byte) bb#76 ) - (byte) be#66 ? phi( fa::@16/(byte) be#35 ) - (byte) bd#55 ? phi( fa::@16/(byte) bd#35 ) - (byte) bd#19 ? (byte) bd#55 - (byte) be#19 ? (byte) be#66 + (byte) bc#110 ← phi( fa::@16/(byte) bc#19 ) + (byte) bb#56 ← phi( fa::@16/(byte) bb#76 ) + (byte) be#66 ← phi( fa::@16/(byte) be#35 ) + (byte) bd#55 ← phi( fa::@16/(byte) bd#35 ) + (byte) bd#19 ← (byte) bd#55 + (byte) be#19 ← (byte) be#66 to:fa::@6 fa::@7: scope:[fa] from fa::@27 fa::@6 - (byte) be#158 ? phi( fa::@27/(byte) be#20 fa::@6/(byte) be#157 ) - (byte) bd#145 ? phi( fa::@27/(byte) bd#20 fa::@6/(byte) bd#144 ) - (byte) bc#80 ? phi( fa::@27/(byte) bc#111 fa::@6/(byte) bc#79 ) - (byte) bb#34 ? phi( fa::@27/(byte) bb#57 fa::@6/(byte) bb#33 ) - (bool~) fa::$14 ? (byte) bb#34 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) fa::$15 ? ! (bool~) fa::$14 + (byte) be#158 ← phi( fa::@27/(byte) be#20 fa::@6/(byte) be#157 ) + (byte) bd#145 ← phi( fa::@27/(byte) bd#20 fa::@6/(byte) bd#144 ) + (byte) bc#80 ← phi( fa::@27/(byte) bc#111 fa::@6/(byte) bc#79 ) + (byte) bb#34 ← phi( fa::@27/(byte) bb#57 fa::@6/(byte) bb#33 ) + (bool~) fa::$14 ← (byte) bb#34 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) fa::$15 ← ! (bool~) fa::$14 if((bool~) fa::$15) goto fa::@8 to:fa::@18 fa::@17: scope:[fa] from fa::@6 - (byte) bb#77 ? phi( fa::@6/(byte) bb#33 ) - (byte) be#113 ? phi( fa::@6/(byte) be#157 ) - (byte) bd#101 ? phi( fa::@6/(byte) bd#144 ) - (byte) bc#45 ? phi( fa::@6/(byte) bc#79 ) - (byte) bc#20 ? ++ (byte) bc#45 + (byte) bb#77 ← phi( fa::@6/(byte) bb#33 ) + (byte) be#113 ← phi( fa::@6/(byte) be#157 ) + (byte) bd#101 ← phi( fa::@6/(byte) bd#144 ) + (byte) bc#45 ← phi( fa::@6/(byte) bc#79 ) + (byte) bc#20 ← ++ (byte) bc#45 call fb to:fa::@27 fa::@27: scope:[fa] from fa::@17 - (byte) bc#111 ? phi( fa::@17/(byte) bc#20 ) - (byte) bb#57 ? phi( fa::@17/(byte) bb#77 ) - (byte) be#67 ? phi( fa::@17/(byte) be#35 ) - (byte) bd#56 ? phi( fa::@17/(byte) bd#35 ) - (byte) bd#20 ? (byte) bd#56 - (byte) be#20 ? (byte) be#67 + (byte) bc#111 ← phi( fa::@17/(byte) bc#20 ) + (byte) bb#57 ← phi( fa::@17/(byte) bb#77 ) + (byte) be#67 ← phi( fa::@17/(byte) be#35 ) + (byte) bd#56 ← phi( fa::@17/(byte) bd#35 ) + (byte) bd#20 ← (byte) bd#56 + (byte) be#20 ← (byte) be#67 to:fa::@7 fa::@8: scope:[fa] from fa::@28 fa::@7 - (byte) be#159 ? phi( fa::@28/(byte) be#21 fa::@7/(byte) be#158 ) - (byte) bd#146 ? phi( fa::@28/(byte) bd#21 fa::@7/(byte) bd#145 ) - (byte) bc#81 ? phi( fa::@28/(byte) bc#112 fa::@7/(byte) bc#80 ) - (byte) bb#35 ? phi( fa::@28/(byte) bb#58 fa::@7/(byte) bb#34 ) - (bool~) fa::$16 ? (byte) bb#35 == (byte/signed byte/word/signed word/dword/signed dword) 8 - (bool~) fa::$17 ? ! (bool~) fa::$16 + (byte) be#159 ← phi( fa::@28/(byte) be#21 fa::@7/(byte) be#158 ) + (byte) bd#146 ← phi( fa::@28/(byte) bd#21 fa::@7/(byte) bd#145 ) + (byte) bc#81 ← phi( fa::@28/(byte) bc#112 fa::@7/(byte) bc#80 ) + (byte) bb#35 ← phi( fa::@28/(byte) bb#58 fa::@7/(byte) bb#34 ) + (bool~) fa::$16 ← (byte) bb#35 == (byte/signed byte/word/signed word/dword/signed dword) 8 + (bool~) fa::$17 ← ! (bool~) fa::$16 if((bool~) fa::$17) goto fa::@9 to:fa::@19 fa::@18: scope:[fa] from fa::@7 - (byte) bb#78 ? phi( fa::@7/(byte) bb#34 ) - (byte) be#114 ? phi( fa::@7/(byte) be#158 ) - (byte) bd#102 ? phi( fa::@7/(byte) bd#145 ) - (byte) bc#46 ? phi( fa::@7/(byte) bc#80 ) - (byte) bc#21 ? ++ (byte) bc#46 + (byte) bb#78 ← phi( fa::@7/(byte) bb#34 ) + (byte) be#114 ← phi( fa::@7/(byte) be#158 ) + (byte) bd#102 ← phi( fa::@7/(byte) bd#145 ) + (byte) bc#46 ← phi( fa::@7/(byte) bc#80 ) + (byte) bc#21 ← ++ (byte) bc#46 call fb to:fa::@28 fa::@28: scope:[fa] from fa::@18 - (byte) bc#112 ? phi( fa::@18/(byte) bc#21 ) - (byte) bb#58 ? phi( fa::@18/(byte) bb#78 ) - (byte) be#68 ? phi( fa::@18/(byte) be#35 ) - (byte) bd#57 ? phi( fa::@18/(byte) bd#35 ) - (byte) bd#21 ? (byte) bd#57 - (byte) be#21 ? (byte) be#68 + (byte) bc#112 ← phi( fa::@18/(byte) bc#21 ) + (byte) bb#58 ← phi( fa::@18/(byte) bb#78 ) + (byte) be#68 ← phi( fa::@18/(byte) be#35 ) + (byte) bd#57 ← phi( fa::@18/(byte) bd#35 ) + (byte) bd#21 ← (byte) bd#57 + (byte) be#21 ← (byte) be#68 to:fa::@8 fa::@9: scope:[fa] from fa::@29 fa::@8 - (byte) be#160 ? phi( fa::@29/(byte) be#22 fa::@8/(byte) be#159 ) - (byte) bd#147 ? phi( fa::@29/(byte) bd#22 fa::@8/(byte) bd#146 ) - (byte) bc#113 ? phi( fa::@29/(byte) bc#123 fa::@8/(byte) bc#81 ) - (byte) bb#36 ? phi( fa::@29/(byte) bb#59 fa::@8/(byte) bb#35 ) - (bool~) fa::$18 ? (byte) bb#36 == (byte/signed byte/word/signed word/dword/signed dword) 9 - (bool~) fa::$19 ? ! (bool~) fa::$18 + (byte) be#160 ← phi( fa::@29/(byte) be#22 fa::@8/(byte) be#159 ) + (byte) bd#147 ← phi( fa::@29/(byte) bd#22 fa::@8/(byte) bd#146 ) + (byte) bc#113 ← phi( fa::@29/(byte) bc#123 fa::@8/(byte) bc#81 ) + (byte) bb#36 ← phi( fa::@29/(byte) bb#59 fa::@8/(byte) bb#35 ) + (bool~) fa::$18 ← (byte) bb#36 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (bool~) fa::$19 ← ! (bool~) fa::$18 if((bool~) fa::$19) goto fa::@10 to:fa::@20 fa::@19: scope:[fa] from fa::@8 - (byte) bb#79 ? phi( fa::@8/(byte) bb#35 ) - (byte) be#115 ? phi( fa::@8/(byte) be#159 ) - (byte) bd#103 ? phi( fa::@8/(byte) bd#146 ) - (byte) bc#47 ? phi( fa::@8/(byte) bc#81 ) - (byte) bc#22 ? ++ (byte) bc#47 + (byte) bb#79 ← phi( fa::@8/(byte) bb#35 ) + (byte) be#115 ← phi( fa::@8/(byte) be#159 ) + (byte) bd#103 ← phi( fa::@8/(byte) bd#146 ) + (byte) bc#47 ← phi( fa::@8/(byte) bc#81 ) + (byte) bc#22 ← ++ (byte) bc#47 call fb to:fa::@29 fa::@29: scope:[fa] from fa::@19 - (byte) bc#123 ? phi( fa::@19/(byte) bc#22 ) - (byte) bb#59 ? phi( fa::@19/(byte) bb#79 ) - (byte) be#69 ? phi( fa::@19/(byte) be#35 ) - (byte) bd#58 ? phi( fa::@19/(byte) bd#35 ) - (byte) bd#22 ? (byte) bd#58 - (byte) be#22 ? (byte) be#69 + (byte) bc#123 ← phi( fa::@19/(byte) bc#22 ) + (byte) bb#59 ← phi( fa::@19/(byte) bb#79 ) + (byte) be#69 ← phi( fa::@19/(byte) be#35 ) + (byte) bd#58 ← phi( fa::@19/(byte) bd#35 ) + (byte) bd#22 ← (byte) bd#58 + (byte) be#22 ← (byte) be#69 to:fa::@9 fa::@10: scope:[fa] from fa::@9 - (byte) be#117 ? phi( fa::@9/(byte) be#160 ) - (byte) bd#105 ? phi( fa::@9/(byte) bd#147 ) - (byte) bc#82 ? phi( fa::@9/(byte) bc#113 ) + (byte) be#117 ← phi( fa::@9/(byte) be#160 ) + (byte) bd#105 ← phi( fa::@9/(byte) bd#147 ) + (byte) bc#82 ← phi( fa::@9/(byte) bc#113 ) to:fa::@return fa::@20: scope:[fa] from fa::@9 - (byte) be#116 ? phi( fa::@9/(byte) be#160 ) - (byte) bd#104 ? phi( fa::@9/(byte) bd#147 ) - (byte) bc#23 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) be#116 ← phi( fa::@9/(byte) be#160 ) + (byte) bd#104 ← phi( fa::@9/(byte) bd#147 ) + (byte) bc#23 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call fb to:fa::@30 fa::@30: scope:[fa] from fa::@20 - (byte) bc#83 ? phi( fa::@20/(byte) bc#23 ) - (byte) be#70 ? phi( fa::@20/(byte) be#35 ) - (byte) bd#59 ? phi( fa::@20/(byte) bd#35 ) - (byte) bd#23 ? (byte) bd#59 - (byte) be#23 ? (byte) be#70 + (byte) bc#83 ← phi( fa::@20/(byte) bc#23 ) + (byte) be#70 ← phi( fa::@20/(byte) be#35 ) + (byte) bd#59 ← phi( fa::@20/(byte) bd#35 ) + (byte) bd#23 ← (byte) bd#59 + (byte) be#23 ← (byte) be#70 to:fa::@return fa::@return: scope:[fa] from fa::@10 fa::@30 - (byte) be#71 ? phi( fa::@10/(byte) be#117 fa::@30/(byte) be#23 ) - (byte) bd#60 ? phi( fa::@10/(byte) bd#105 fa::@30/(byte) bd#23 ) - (byte) bc#48 ? phi( fa::@10/(byte) bc#82 fa::@30/(byte) bc#83 ) - (byte) bc#24 ? (byte) bc#48 - (byte) bd#24 ? (byte) bd#60 - (byte) be#24 ? (byte) be#71 + (byte) be#71 ← phi( fa::@10/(byte) be#117 fa::@30/(byte) be#23 ) + (byte) bd#60 ← phi( fa::@10/(byte) bd#105 fa::@30/(byte) bd#23 ) + (byte) bc#48 ← phi( fa::@10/(byte) bc#82 fa::@30/(byte) bc#83 ) + (byte) bc#24 ← (byte) bc#48 + (byte) bd#24 ← (byte) bd#60 + (byte) be#24 ← (byte) be#71 return to:@return fb: scope:[fb] from fa::@11 fa::@12 fa::@13 fa::@14 fa::@15 fa::@16 fa::@17 fa::@18 fa::@19 fa::@20 - (byte) be#161 ? phi( fa::@11/(byte) be#107 fa::@12/(byte) be#108 fa::@13/(byte) be#109 fa::@14/(byte) be#110 fa::@15/(byte) be#111 fa::@16/(byte) be#112 fa::@17/(byte) be#113 fa::@18/(byte) be#114 fa::@19/(byte) be#115 fa::@20/(byte) be#116 ) - (byte) bd#106 ? phi( fa::@11/(byte) bd#95 fa::@12/(byte) bd#96 fa::@13/(byte) bd#97 fa::@14/(byte) bd#98 fa::@15/(byte) bd#99 fa::@16/(byte) bd#100 fa::@17/(byte) bd#101 fa::@18/(byte) bd#102 fa::@19/(byte) bd#103 fa::@20/(byte) bd#104 ) - (byte) bc#49 ? phi( fa::@11/(byte) bc#14 fa::@12/(byte) bc#15 fa::@13/(byte) bc#16 fa::@14/(byte) bc#17 fa::@15/(byte) bc#18 fa::@16/(byte) bc#19 fa::@17/(byte) bc#20 fa::@18/(byte) bc#21 fa::@19/(byte) bc#22 fa::@20/(byte) bc#23 ) - (bool~) fb::$0 ? (byte) bc#49 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) fb::$1 ? ! (bool~) fb::$0 + (byte) be#161 ← phi( fa::@11/(byte) be#107 fa::@12/(byte) be#108 fa::@13/(byte) be#109 fa::@14/(byte) be#110 fa::@15/(byte) be#111 fa::@16/(byte) be#112 fa::@17/(byte) be#113 fa::@18/(byte) be#114 fa::@19/(byte) be#115 fa::@20/(byte) be#116 ) + (byte) bd#106 ← phi( fa::@11/(byte) bd#95 fa::@12/(byte) bd#96 fa::@13/(byte) bd#97 fa::@14/(byte) bd#98 fa::@15/(byte) bd#99 fa::@16/(byte) bd#100 fa::@17/(byte) bd#101 fa::@18/(byte) bd#102 fa::@19/(byte) bd#103 fa::@20/(byte) bd#104 ) + (byte) bc#49 ← phi( fa::@11/(byte) bc#14 fa::@12/(byte) bc#15 fa::@13/(byte) bc#16 fa::@14/(byte) bc#17 fa::@15/(byte) bc#18 fa::@16/(byte) bc#19 fa::@17/(byte) bc#20 fa::@18/(byte) bc#21 fa::@19/(byte) bc#22 fa::@20/(byte) bc#23 ) + (bool~) fb::$0 ← (byte) bc#49 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) fb::$1 ← ! (bool~) fb::$0 if((bool~) fb::$1) goto fb::@1 to:fb::@11 fb::@1: scope:[fb] from fb fb::@21 - (byte) be#162 ? phi( fb/(byte) be#161 fb::@21/(byte) be#25 ) - (byte) bd#107 ? phi( fb/(byte) bd#106 fb::@21/(byte) bd#148 ) - (byte) bc#50 ? phi( fb/(byte) bc#49 fb::@21/(byte) bc#84 ) - (bool~) fb::$2 ? (byte) bc#50 == (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) fb::$3 ? ! (bool~) fb::$2 + (byte) be#162 ← phi( fb/(byte) be#161 fb::@21/(byte) be#25 ) + (byte) bd#107 ← phi( fb/(byte) bd#106 fb::@21/(byte) bd#148 ) + (byte) bc#50 ← phi( fb/(byte) bc#49 fb::@21/(byte) bc#84 ) + (bool~) fb::$2 ← (byte) bc#50 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) fb::$3 ← ! (bool~) fb::$2 if((bool~) fb::$3) goto fb::@2 to:fb::@12 fb::@11: scope:[fb] from fb - (byte) bc#114 ? phi( fb/(byte) bc#49 ) - (byte) be#118 ? phi( fb/(byte) be#161 ) - (byte) bd#61 ? phi( fb/(byte) bd#106 ) - (byte) bd#25 ? ++ (byte) bd#61 + (byte) bc#114 ← phi( fb/(byte) bc#49 ) + (byte) be#118 ← phi( fb/(byte) be#161 ) + (byte) bd#61 ← phi( fb/(byte) bd#106 ) + (byte) bd#25 ← ++ (byte) bd#61 call fc to:fb::@21 fb::@21: scope:[fb] from fb::@11 - (byte) bd#148 ? phi( fb::@11/(byte) bd#25 ) - (byte) bc#84 ? phi( fb::@11/(byte) bc#114 ) - (byte) be#72 ? phi( fb::@11/(byte) be#46 ) - (byte) be#25 ? (byte) be#72 + (byte) bd#148 ← phi( fb::@11/(byte) bd#25 ) + (byte) bc#84 ← phi( fb::@11/(byte) bc#114 ) + (byte) be#72 ← phi( fb::@11/(byte) be#46 ) + (byte) be#25 ← (byte) be#72 to:fb::@1 fb::@2: scope:[fb] from fb::@1 fb::@22 - (byte) be#163 ? phi( fb::@1/(byte) be#162 fb::@22/(byte) be#26 ) - (byte) bd#108 ? phi( fb::@1/(byte) bd#107 fb::@22/(byte) bd#149 ) - (byte) bc#51 ? phi( fb::@1/(byte) bc#50 fb::@22/(byte) bc#85 ) - (bool~) fb::$4 ? (byte) bc#51 == (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool~) fb::$5 ? ! (bool~) fb::$4 + (byte) be#163 ← phi( fb::@1/(byte) be#162 fb::@22/(byte) be#26 ) + (byte) bd#108 ← phi( fb::@1/(byte) bd#107 fb::@22/(byte) bd#149 ) + (byte) bc#51 ← phi( fb::@1/(byte) bc#50 fb::@22/(byte) bc#85 ) + (bool~) fb::$4 ← (byte) bc#51 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool~) fb::$5 ← ! (bool~) fb::$4 if((bool~) fb::$5) goto fb::@3 to:fb::@13 fb::@12: scope:[fb] from fb::@1 - (byte) bc#115 ? phi( fb::@1/(byte) bc#50 ) - (byte) be#119 ? phi( fb::@1/(byte) be#162 ) - (byte) bd#62 ? phi( fb::@1/(byte) bd#107 ) - (byte) bd#26 ? ++ (byte) bd#62 + (byte) bc#115 ← phi( fb::@1/(byte) bc#50 ) + (byte) be#119 ← phi( fb::@1/(byte) be#162 ) + (byte) bd#62 ← phi( fb::@1/(byte) bd#107 ) + (byte) bd#26 ← ++ (byte) bd#62 call fc to:fb::@22 fb::@22: scope:[fb] from fb::@12 - (byte) bd#149 ? phi( fb::@12/(byte) bd#26 ) - (byte) bc#85 ? phi( fb::@12/(byte) bc#115 ) - (byte) be#73 ? phi( fb::@12/(byte) be#46 ) - (byte) be#26 ? (byte) be#73 + (byte) bd#149 ← phi( fb::@12/(byte) bd#26 ) + (byte) bc#85 ← phi( fb::@12/(byte) bc#115 ) + (byte) be#73 ← phi( fb::@12/(byte) be#46 ) + (byte) be#26 ← (byte) be#73 to:fb::@2 fb::@3: scope:[fb] from fb::@2 fb::@23 - (byte) be#164 ? phi( fb::@2/(byte) be#163 fb::@23/(byte) be#27 ) - (byte) bd#109 ? phi( fb::@2/(byte) bd#108 fb::@23/(byte) bd#150 ) - (byte) bc#52 ? phi( fb::@2/(byte) bc#51 fb::@23/(byte) bc#86 ) - (bool~) fb::$6 ? (byte) bc#52 == (byte/signed byte/word/signed word/dword/signed dword) 3 - (bool~) fb::$7 ? ! (bool~) fb::$6 + (byte) be#164 ← phi( fb::@2/(byte) be#163 fb::@23/(byte) be#27 ) + (byte) bd#109 ← phi( fb::@2/(byte) bd#108 fb::@23/(byte) bd#150 ) + (byte) bc#52 ← phi( fb::@2/(byte) bc#51 fb::@23/(byte) bc#86 ) + (bool~) fb::$6 ← (byte) bc#52 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (bool~) fb::$7 ← ! (bool~) fb::$6 if((bool~) fb::$7) goto fb::@4 to:fb::@14 fb::@13: scope:[fb] from fb::@2 - (byte) bc#116 ? phi( fb::@2/(byte) bc#51 ) - (byte) be#120 ? phi( fb::@2/(byte) be#163 ) - (byte) bd#63 ? phi( fb::@2/(byte) bd#108 ) - (byte) bd#27 ? ++ (byte) bd#63 + (byte) bc#116 ← phi( fb::@2/(byte) bc#51 ) + (byte) be#120 ← phi( fb::@2/(byte) be#163 ) + (byte) bd#63 ← phi( fb::@2/(byte) bd#108 ) + (byte) bd#27 ← ++ (byte) bd#63 call fc to:fb::@23 fb::@23: scope:[fb] from fb::@13 - (byte) bd#150 ? phi( fb::@13/(byte) bd#27 ) - (byte) bc#86 ? phi( fb::@13/(byte) bc#116 ) - (byte) be#74 ? phi( fb::@13/(byte) be#46 ) - (byte) be#27 ? (byte) be#74 + (byte) bd#150 ← phi( fb::@13/(byte) bd#27 ) + (byte) bc#86 ← phi( fb::@13/(byte) bc#116 ) + (byte) be#74 ← phi( fb::@13/(byte) be#46 ) + (byte) be#27 ← (byte) be#74 to:fb::@3 fb::@4: scope:[fb] from fb::@24 fb::@3 - (byte) be#165 ? phi( fb::@24/(byte) be#28 fb::@3/(byte) be#164 ) - (byte) bd#110 ? phi( fb::@24/(byte) bd#151 fb::@3/(byte) bd#109 ) - (byte) bc#53 ? phi( fb::@24/(byte) bc#87 fb::@3/(byte) bc#52 ) - (bool~) fb::$8 ? (byte) bc#53 == (byte/signed byte/word/signed word/dword/signed dword) 4 - (bool~) fb::$9 ? ! (bool~) fb::$8 + (byte) be#165 ← phi( fb::@24/(byte) be#28 fb::@3/(byte) be#164 ) + (byte) bd#110 ← phi( fb::@24/(byte) bd#151 fb::@3/(byte) bd#109 ) + (byte) bc#53 ← phi( fb::@24/(byte) bc#87 fb::@3/(byte) bc#52 ) + (bool~) fb::$8 ← (byte) bc#53 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (bool~) fb::$9 ← ! (bool~) fb::$8 if((bool~) fb::$9) goto fb::@5 to:fb::@15 fb::@14: scope:[fb] from fb::@3 - (byte) bc#117 ? phi( fb::@3/(byte) bc#52 ) - (byte) be#121 ? phi( fb::@3/(byte) be#164 ) - (byte) bd#64 ? phi( fb::@3/(byte) bd#109 ) - (byte) bd#28 ? ++ (byte) bd#64 + (byte) bc#117 ← phi( fb::@3/(byte) bc#52 ) + (byte) be#121 ← phi( fb::@3/(byte) be#164 ) + (byte) bd#64 ← phi( fb::@3/(byte) bd#109 ) + (byte) bd#28 ← ++ (byte) bd#64 call fc to:fb::@24 fb::@24: scope:[fb] from fb::@14 - (byte) bd#151 ? phi( fb::@14/(byte) bd#28 ) - (byte) bc#87 ? phi( fb::@14/(byte) bc#117 ) - (byte) be#75 ? phi( fb::@14/(byte) be#46 ) - (byte) be#28 ? (byte) be#75 + (byte) bd#151 ← phi( fb::@14/(byte) bd#28 ) + (byte) bc#87 ← phi( fb::@14/(byte) bc#117 ) + (byte) be#75 ← phi( fb::@14/(byte) be#46 ) + (byte) be#28 ← (byte) be#75 to:fb::@4 fb::@5: scope:[fb] from fb::@25 fb::@4 - (byte) be#166 ? phi( fb::@25/(byte) be#29 fb::@4/(byte) be#165 ) - (byte) bd#111 ? phi( fb::@25/(byte) bd#152 fb::@4/(byte) bd#110 ) - (byte) bc#54 ? phi( fb::@25/(byte) bc#88 fb::@4/(byte) bc#53 ) - (bool~) fb::$10 ? (byte) bc#54 == (byte/signed byte/word/signed word/dword/signed dword) 5 - (bool~) fb::$11 ? ! (bool~) fb::$10 + (byte) be#166 ← phi( fb::@25/(byte) be#29 fb::@4/(byte) be#165 ) + (byte) bd#111 ← phi( fb::@25/(byte) bd#152 fb::@4/(byte) bd#110 ) + (byte) bc#54 ← phi( fb::@25/(byte) bc#88 fb::@4/(byte) bc#53 ) + (bool~) fb::$10 ← (byte) bc#54 == (byte/signed byte/word/signed word/dword/signed dword) 5 + (bool~) fb::$11 ← ! (bool~) fb::$10 if((bool~) fb::$11) goto fb::@6 to:fb::@16 fb::@15: scope:[fb] from fb::@4 - (byte) bc#118 ? phi( fb::@4/(byte) bc#53 ) - (byte) be#122 ? phi( fb::@4/(byte) be#165 ) - (byte) bd#65 ? phi( fb::@4/(byte) bd#110 ) - (byte) bd#29 ? ++ (byte) bd#65 + (byte) bc#118 ← phi( fb::@4/(byte) bc#53 ) + (byte) be#122 ← phi( fb::@4/(byte) be#165 ) + (byte) bd#65 ← phi( fb::@4/(byte) bd#110 ) + (byte) bd#29 ← ++ (byte) bd#65 call fc to:fb::@25 fb::@25: scope:[fb] from fb::@15 - (byte) bd#152 ? phi( fb::@15/(byte) bd#29 ) - (byte) bc#88 ? phi( fb::@15/(byte) bc#118 ) - (byte) be#76 ? phi( fb::@15/(byte) be#46 ) - (byte) be#29 ? (byte) be#76 + (byte) bd#152 ← phi( fb::@15/(byte) bd#29 ) + (byte) bc#88 ← phi( fb::@15/(byte) bc#118 ) + (byte) be#76 ← phi( fb::@15/(byte) be#46 ) + (byte) be#29 ← (byte) be#76 to:fb::@5 fb::@6: scope:[fb] from fb::@26 fb::@5 - (byte) be#167 ? phi( fb::@26/(byte) be#30 fb::@5/(byte) be#166 ) - (byte) bd#112 ? phi( fb::@26/(byte) bd#153 fb::@5/(byte) bd#111 ) - (byte) bc#55 ? phi( fb::@26/(byte) bc#89 fb::@5/(byte) bc#54 ) - (bool~) fb::$12 ? (byte) bc#55 == (byte/signed byte/word/signed word/dword/signed dword) 6 - (bool~) fb::$13 ? ! (bool~) fb::$12 + (byte) be#167 ← phi( fb::@26/(byte) be#30 fb::@5/(byte) be#166 ) + (byte) bd#112 ← phi( fb::@26/(byte) bd#153 fb::@5/(byte) bd#111 ) + (byte) bc#55 ← phi( fb::@26/(byte) bc#89 fb::@5/(byte) bc#54 ) + (bool~) fb::$12 ← (byte) bc#55 == (byte/signed byte/word/signed word/dword/signed dword) 6 + (bool~) fb::$13 ← ! (bool~) fb::$12 if((bool~) fb::$13) goto fb::@7 to:fb::@17 fb::@16: scope:[fb] from fb::@5 - (byte) bc#119 ? phi( fb::@5/(byte) bc#54 ) - (byte) be#123 ? phi( fb::@5/(byte) be#166 ) - (byte) bd#66 ? phi( fb::@5/(byte) bd#111 ) - (byte) bd#30 ? ++ (byte) bd#66 + (byte) bc#119 ← phi( fb::@5/(byte) bc#54 ) + (byte) be#123 ← phi( fb::@5/(byte) be#166 ) + (byte) bd#66 ← phi( fb::@5/(byte) bd#111 ) + (byte) bd#30 ← ++ (byte) bd#66 call fc to:fb::@26 fb::@26: scope:[fb] from fb::@16 - (byte) bd#153 ? phi( fb::@16/(byte) bd#30 ) - (byte) bc#89 ? phi( fb::@16/(byte) bc#119 ) - (byte) be#77 ? phi( fb::@16/(byte) be#46 ) - (byte) be#30 ? (byte) be#77 + (byte) bd#153 ← phi( fb::@16/(byte) bd#30 ) + (byte) bc#89 ← phi( fb::@16/(byte) bc#119 ) + (byte) be#77 ← phi( fb::@16/(byte) be#46 ) + (byte) be#30 ← (byte) be#77 to:fb::@6 fb::@7: scope:[fb] from fb::@27 fb::@6 - (byte) be#168 ? phi( fb::@27/(byte) be#31 fb::@6/(byte) be#167 ) - (byte) bd#113 ? phi( fb::@27/(byte) bd#154 fb::@6/(byte) bd#112 ) - (byte) bc#56 ? phi( fb::@27/(byte) bc#90 fb::@6/(byte) bc#55 ) - (bool~) fb::$14 ? (byte) bc#56 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) fb::$15 ? ! (bool~) fb::$14 + (byte) be#168 ← phi( fb::@27/(byte) be#31 fb::@6/(byte) be#167 ) + (byte) bd#113 ← phi( fb::@27/(byte) bd#154 fb::@6/(byte) bd#112 ) + (byte) bc#56 ← phi( fb::@27/(byte) bc#90 fb::@6/(byte) bc#55 ) + (bool~) fb::$14 ← (byte) bc#56 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) fb::$15 ← ! (bool~) fb::$14 if((bool~) fb::$15) goto fb::@8 to:fb::@18 fb::@17: scope:[fb] from fb::@6 - (byte) bc#120 ? phi( fb::@6/(byte) bc#55 ) - (byte) be#124 ? phi( fb::@6/(byte) be#167 ) - (byte) bd#67 ? phi( fb::@6/(byte) bd#112 ) - (byte) bd#31 ? ++ (byte) bd#67 + (byte) bc#120 ← phi( fb::@6/(byte) bc#55 ) + (byte) be#124 ← phi( fb::@6/(byte) be#167 ) + (byte) bd#67 ← phi( fb::@6/(byte) bd#112 ) + (byte) bd#31 ← ++ (byte) bd#67 call fc to:fb::@27 fb::@27: scope:[fb] from fb::@17 - (byte) bd#154 ? phi( fb::@17/(byte) bd#31 ) - (byte) bc#90 ? phi( fb::@17/(byte) bc#120 ) - (byte) be#78 ? phi( fb::@17/(byte) be#46 ) - (byte) be#31 ? (byte) be#78 + (byte) bd#154 ← phi( fb::@17/(byte) bd#31 ) + (byte) bc#90 ← phi( fb::@17/(byte) bc#120 ) + (byte) be#78 ← phi( fb::@17/(byte) be#46 ) + (byte) be#31 ← (byte) be#78 to:fb::@7 fb::@8: scope:[fb] from fb::@28 fb::@7 - (byte) be#169 ? phi( fb::@28/(byte) be#32 fb::@7/(byte) be#168 ) - (byte) bd#114 ? phi( fb::@28/(byte) bd#155 fb::@7/(byte) bd#113 ) - (byte) bc#57 ? phi( fb::@28/(byte) bc#91 fb::@7/(byte) bc#56 ) - (bool~) fb::$16 ? (byte) bc#57 == (byte/signed byte/word/signed word/dword/signed dword) 8 - (bool~) fb::$17 ? ! (bool~) fb::$16 + (byte) be#169 ← phi( fb::@28/(byte) be#32 fb::@7/(byte) be#168 ) + (byte) bd#114 ← phi( fb::@28/(byte) bd#155 fb::@7/(byte) bd#113 ) + (byte) bc#57 ← phi( fb::@28/(byte) bc#91 fb::@7/(byte) bc#56 ) + (bool~) fb::$16 ← (byte) bc#57 == (byte/signed byte/word/signed word/dword/signed dword) 8 + (bool~) fb::$17 ← ! (bool~) fb::$16 if((bool~) fb::$17) goto fb::@9 to:fb::@19 fb::@18: scope:[fb] from fb::@7 - (byte) bc#121 ? phi( fb::@7/(byte) bc#56 ) - (byte) be#125 ? phi( fb::@7/(byte) be#168 ) - (byte) bd#68 ? phi( fb::@7/(byte) bd#113 ) - (byte) bd#32 ? ++ (byte) bd#68 + (byte) bc#121 ← phi( fb::@7/(byte) bc#56 ) + (byte) be#125 ← phi( fb::@7/(byte) be#168 ) + (byte) bd#68 ← phi( fb::@7/(byte) bd#113 ) + (byte) bd#32 ← ++ (byte) bd#68 call fc to:fb::@28 fb::@28: scope:[fb] from fb::@18 - (byte) bd#155 ? phi( fb::@18/(byte) bd#32 ) - (byte) bc#91 ? phi( fb::@18/(byte) bc#121 ) - (byte) be#79 ? phi( fb::@18/(byte) be#46 ) - (byte) be#32 ? (byte) be#79 + (byte) bd#155 ← phi( fb::@18/(byte) bd#32 ) + (byte) bc#91 ← phi( fb::@18/(byte) bc#121 ) + (byte) be#79 ← phi( fb::@18/(byte) be#46 ) + (byte) be#32 ← (byte) be#79 to:fb::@8 fb::@9: scope:[fb] from fb::@29 fb::@8 - (byte) be#170 ? phi( fb::@29/(byte) be#33 fb::@8/(byte) be#169 ) - (byte) bd#156 ? phi( fb::@29/(byte) bd#157 fb::@8/(byte) bd#114 ) - (byte) bc#58 ? phi( fb::@29/(byte) bc#92 fb::@8/(byte) bc#57 ) - (bool~) fb::$18 ? (byte) bc#58 == (byte/signed byte/word/signed word/dword/signed dword) 9 - (bool~) fb::$19 ? ! (bool~) fb::$18 + (byte) be#170 ← phi( fb::@29/(byte) be#33 fb::@8/(byte) be#169 ) + (byte) bd#156 ← phi( fb::@29/(byte) bd#157 fb::@8/(byte) bd#114 ) + (byte) bc#58 ← phi( fb::@29/(byte) bc#92 fb::@8/(byte) bc#57 ) + (bool~) fb::$18 ← (byte) bc#58 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (bool~) fb::$19 ← ! (bool~) fb::$18 if((bool~) fb::$19) goto fb::@10 to:fb::@20 fb::@19: scope:[fb] from fb::@8 - (byte) bc#122 ? phi( fb::@8/(byte) bc#57 ) - (byte) be#126 ? phi( fb::@8/(byte) be#169 ) - (byte) bd#69 ? phi( fb::@8/(byte) bd#114 ) - (byte) bd#33 ? ++ (byte) bd#69 + (byte) bc#122 ← phi( fb::@8/(byte) bc#57 ) + (byte) be#126 ← phi( fb::@8/(byte) be#169 ) + (byte) bd#69 ← phi( fb::@8/(byte) bd#114 ) + (byte) bd#33 ← ++ (byte) bd#69 call fc to:fb::@29 fb::@29: scope:[fb] from fb::@19 - (byte) bd#157 ? phi( fb::@19/(byte) bd#33 ) - (byte) bc#92 ? phi( fb::@19/(byte) bc#122 ) - (byte) be#80 ? phi( fb::@19/(byte) be#46 ) - (byte) be#33 ? (byte) be#80 + (byte) bd#157 ← phi( fb::@19/(byte) bd#33 ) + (byte) bc#92 ← phi( fb::@19/(byte) bc#122 ) + (byte) be#80 ← phi( fb::@19/(byte) be#46 ) + (byte) be#33 ← (byte) be#80 to:fb::@9 fb::@10: scope:[fb] from fb::@9 - (byte) be#128 ? phi( fb::@9/(byte) be#170 ) - (byte) bd#115 ? phi( fb::@9/(byte) bd#156 ) + (byte) be#128 ← phi( fb::@9/(byte) be#170 ) + (byte) bd#115 ← phi( fb::@9/(byte) bd#156 ) to:fb::@return fb::@20: scope:[fb] from fb::@9 - (byte) be#127 ? phi( fb::@9/(byte) be#170 ) - (byte) bd#34 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) be#127 ← phi( fb::@9/(byte) be#170 ) + (byte) bd#34 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call fc to:fb::@30 fb::@30: scope:[fb] from fb::@20 - (byte) bd#116 ? phi( fb::@20/(byte) bd#34 ) - (byte) be#81 ? phi( fb::@20/(byte) be#46 ) - (byte) be#34 ? (byte) be#81 + (byte) bd#116 ← phi( fb::@20/(byte) bd#34 ) + (byte) be#81 ← phi( fb::@20/(byte) be#46 ) + (byte) be#34 ← (byte) be#81 to:fb::@return fb::@return: scope:[fb] from fb::@10 fb::@30 - (byte) be#82 ? phi( fb::@10/(byte) be#128 fb::@30/(byte) be#34 ) - (byte) bd#70 ? phi( fb::@10/(byte) bd#115 fb::@30/(byte) bd#116 ) - (byte) bd#35 ? (byte) bd#70 - (byte) be#35 ? (byte) be#82 + (byte) be#82 ← phi( fb::@10/(byte) be#128 fb::@30/(byte) be#34 ) + (byte) bd#70 ← phi( fb::@10/(byte) bd#115 fb::@30/(byte) bd#116 ) + (byte) bd#35 ← (byte) bd#70 + (byte) be#35 ← (byte) be#82 return to:@return fc: scope:[fc] from fb::@11 fb::@12 fb::@13 fb::@14 fb::@15 fb::@16 fb::@17 fb::@18 fb::@19 fb::@20 - (byte) be#129 ? phi( fb::@11/(byte) be#118 fb::@12/(byte) be#119 fb::@13/(byte) be#120 fb::@14/(byte) be#121 fb::@15/(byte) be#122 fb::@16/(byte) be#123 fb::@17/(byte) be#124 fb::@18/(byte) be#125 fb::@19/(byte) be#126 fb::@20/(byte) be#127 ) - (byte) bd#71 ? phi( fb::@11/(byte) bd#25 fb::@12/(byte) bd#26 fb::@13/(byte) bd#27 fb::@14/(byte) bd#28 fb::@15/(byte) bd#29 fb::@16/(byte) bd#30 fb::@17/(byte) bd#31 fb::@18/(byte) bd#32 fb::@19/(byte) bd#33 fb::@20/(byte) bd#34 ) - (bool~) fc::$0 ? (byte) bd#71 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) fc::$1 ? ! (bool~) fc::$0 + (byte) be#129 ← phi( fb::@11/(byte) be#118 fb::@12/(byte) be#119 fb::@13/(byte) be#120 fb::@14/(byte) be#121 fb::@15/(byte) be#122 fb::@16/(byte) be#123 fb::@17/(byte) be#124 fb::@18/(byte) be#125 fb::@19/(byte) be#126 fb::@20/(byte) be#127 ) + (byte) bd#71 ← phi( fb::@11/(byte) bd#25 fb::@12/(byte) bd#26 fb::@13/(byte) bd#27 fb::@14/(byte) bd#28 fb::@15/(byte) bd#29 fb::@16/(byte) bd#30 fb::@17/(byte) bd#31 fb::@18/(byte) bd#32 fb::@19/(byte) bd#33 fb::@20/(byte) bd#34 ) + (bool~) fc::$0 ← (byte) bd#71 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) fc::$1 ← ! (bool~) fc::$0 if((bool~) fc::$1) goto fc::@1 to:fc::@11 fc::@1: scope:[fc] from fc fc::@11 - (byte) be#130 ? phi( fc/(byte) be#129 fc::@11/(byte) be#36 ) - (byte) bd#72 ? phi( fc/(byte) bd#71 fc::@11/(byte) bd#117 ) - (bool~) fc::$2 ? (byte) bd#72 == (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) fc::$3 ? ! (bool~) fc::$2 + (byte) be#130 ← phi( fc/(byte) be#129 fc::@11/(byte) be#36 ) + (byte) bd#72 ← phi( fc/(byte) bd#71 fc::@11/(byte) bd#117 ) + (bool~) fc::$2 ← (byte) bd#72 == (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) fc::$3 ← ! (bool~) fc::$2 if((bool~) fc::$3) goto fc::@2 to:fc::@12 fc::@11: scope:[fc] from fc - (byte) bd#117 ? phi( fc/(byte) bd#71 ) - (byte) be#83 ? phi( fc/(byte) be#129 ) - (byte) be#36 ? ++ (byte) be#83 + (byte) bd#117 ← phi( fc/(byte) bd#71 ) + (byte) be#83 ← phi( fc/(byte) be#129 ) + (byte) be#36 ← ++ (byte) be#83 to:fc::@1 fc::@2: scope:[fc] from fc::@1 fc::@12 - (byte) be#131 ? phi( fc::@1/(byte) be#130 fc::@12/(byte) be#37 ) - (byte) bd#73 ? phi( fc::@1/(byte) bd#72 fc::@12/(byte) bd#118 ) - (bool~) fc::$4 ? (byte) bd#73 == (byte/signed byte/word/signed word/dword/signed dword) 2 - (bool~) fc::$5 ? ! (bool~) fc::$4 + (byte) be#131 ← phi( fc::@1/(byte) be#130 fc::@12/(byte) be#37 ) + (byte) bd#73 ← phi( fc::@1/(byte) bd#72 fc::@12/(byte) bd#118 ) + (bool~) fc::$4 ← (byte) bd#73 == (byte/signed byte/word/signed word/dword/signed dword) 2 + (bool~) fc::$5 ← ! (bool~) fc::$4 if((bool~) fc::$5) goto fc::@3 to:fc::@13 fc::@12: scope:[fc] from fc::@1 - (byte) bd#118 ? phi( fc::@1/(byte) bd#72 ) - (byte) be#84 ? phi( fc::@1/(byte) be#130 ) - (byte) be#37 ? ++ (byte) be#84 + (byte) bd#118 ← phi( fc::@1/(byte) bd#72 ) + (byte) be#84 ← phi( fc::@1/(byte) be#130 ) + (byte) be#37 ← ++ (byte) be#84 to:fc::@2 fc::@3: scope:[fc] from fc::@13 fc::@2 - (byte) be#132 ? phi( fc::@13/(byte) be#38 fc::@2/(byte) be#131 ) - (byte) bd#74 ? phi( fc::@13/(byte) bd#119 fc::@2/(byte) bd#73 ) - (bool~) fc::$6 ? (byte) bd#74 == (byte/signed byte/word/signed word/dword/signed dword) 3 - (bool~) fc::$7 ? ! (bool~) fc::$6 + (byte) be#132 ← phi( fc::@13/(byte) be#38 fc::@2/(byte) be#131 ) + (byte) bd#74 ← phi( fc::@13/(byte) bd#119 fc::@2/(byte) bd#73 ) + (bool~) fc::$6 ← (byte) bd#74 == (byte/signed byte/word/signed word/dword/signed dword) 3 + (bool~) fc::$7 ← ! (bool~) fc::$6 if((bool~) fc::$7) goto fc::@4 to:fc::@14 fc::@13: scope:[fc] from fc::@2 - (byte) bd#119 ? phi( fc::@2/(byte) bd#73 ) - (byte) be#85 ? phi( fc::@2/(byte) be#131 ) - (byte) be#38 ? ++ (byte) be#85 + (byte) bd#119 ← phi( fc::@2/(byte) bd#73 ) + (byte) be#85 ← phi( fc::@2/(byte) be#131 ) + (byte) be#38 ← ++ (byte) be#85 to:fc::@3 fc::@4: scope:[fc] from fc::@14 fc::@3 - (byte) be#133 ? phi( fc::@14/(byte) be#39 fc::@3/(byte) be#132 ) - (byte) bd#75 ? phi( fc::@14/(byte) bd#120 fc::@3/(byte) bd#74 ) - (bool~) fc::$8 ? (byte) bd#75 == (byte/signed byte/word/signed word/dword/signed dword) 4 - (bool~) fc::$9 ? ! (bool~) fc::$8 + (byte) be#133 ← phi( fc::@14/(byte) be#39 fc::@3/(byte) be#132 ) + (byte) bd#75 ← phi( fc::@14/(byte) bd#120 fc::@3/(byte) bd#74 ) + (bool~) fc::$8 ← (byte) bd#75 == (byte/signed byte/word/signed word/dword/signed dword) 4 + (bool~) fc::$9 ← ! (bool~) fc::$8 if((bool~) fc::$9) goto fc::@5 to:fc::@15 fc::@14: scope:[fc] from fc::@3 - (byte) bd#120 ? phi( fc::@3/(byte) bd#74 ) - (byte) be#86 ? phi( fc::@3/(byte) be#132 ) - (byte) be#39 ? ++ (byte) be#86 + (byte) bd#120 ← phi( fc::@3/(byte) bd#74 ) + (byte) be#86 ← phi( fc::@3/(byte) be#132 ) + (byte) be#39 ← ++ (byte) be#86 to:fc::@4 fc::@5: scope:[fc] from fc::@15 fc::@4 - (byte) be#134 ? phi( fc::@15/(byte) be#40 fc::@4/(byte) be#133 ) - (byte) bd#76 ? phi( fc::@15/(byte) bd#121 fc::@4/(byte) bd#75 ) - (bool~) fc::$10 ? (byte) bd#76 == (byte/signed byte/word/signed word/dword/signed dword) 5 - (bool~) fc::$11 ? ! (bool~) fc::$10 + (byte) be#134 ← phi( fc::@15/(byte) be#40 fc::@4/(byte) be#133 ) + (byte) bd#76 ← phi( fc::@15/(byte) bd#121 fc::@4/(byte) bd#75 ) + (bool~) fc::$10 ← (byte) bd#76 == (byte/signed byte/word/signed word/dword/signed dword) 5 + (bool~) fc::$11 ← ! (bool~) fc::$10 if((bool~) fc::$11) goto fc::@6 to:fc::@16 fc::@15: scope:[fc] from fc::@4 - (byte) bd#121 ? phi( fc::@4/(byte) bd#75 ) - (byte) be#87 ? phi( fc::@4/(byte) be#133 ) - (byte) be#40 ? ++ (byte) be#87 + (byte) bd#121 ← phi( fc::@4/(byte) bd#75 ) + (byte) be#87 ← phi( fc::@4/(byte) be#133 ) + (byte) be#40 ← ++ (byte) be#87 to:fc::@5 fc::@6: scope:[fc] from fc::@16 fc::@5 - (byte) be#135 ? phi( fc::@16/(byte) be#41 fc::@5/(byte) be#134 ) - (byte) bd#77 ? phi( fc::@16/(byte) bd#122 fc::@5/(byte) bd#76 ) - (bool~) fc::$12 ? (byte) bd#77 == (byte/signed byte/word/signed word/dword/signed dword) 6 - (bool~) fc::$13 ? ! (bool~) fc::$12 + (byte) be#135 ← phi( fc::@16/(byte) be#41 fc::@5/(byte) be#134 ) + (byte) bd#77 ← phi( fc::@16/(byte) bd#122 fc::@5/(byte) bd#76 ) + (bool~) fc::$12 ← (byte) bd#77 == (byte/signed byte/word/signed word/dword/signed dword) 6 + (bool~) fc::$13 ← ! (bool~) fc::$12 if((bool~) fc::$13) goto fc::@7 to:fc::@17 fc::@16: scope:[fc] from fc::@5 - (byte) bd#122 ? phi( fc::@5/(byte) bd#76 ) - (byte) be#88 ? phi( fc::@5/(byte) be#134 ) - (byte) be#41 ? ++ (byte) be#88 + (byte) bd#122 ← phi( fc::@5/(byte) bd#76 ) + (byte) be#88 ← phi( fc::@5/(byte) be#134 ) + (byte) be#41 ← ++ (byte) be#88 to:fc::@6 fc::@7: scope:[fc] from fc::@17 fc::@6 - (byte) be#136 ? phi( fc::@17/(byte) be#42 fc::@6/(byte) be#135 ) - (byte) bd#78 ? phi( fc::@17/(byte) bd#123 fc::@6/(byte) bd#77 ) - (bool~) fc::$14 ? (byte) bd#78 == (byte/signed byte/word/signed word/dword/signed dword) 7 - (bool~) fc::$15 ? ! (bool~) fc::$14 + (byte) be#136 ← phi( fc::@17/(byte) be#42 fc::@6/(byte) be#135 ) + (byte) bd#78 ← phi( fc::@17/(byte) bd#123 fc::@6/(byte) bd#77 ) + (bool~) fc::$14 ← (byte) bd#78 == (byte/signed byte/word/signed word/dword/signed dword) 7 + (bool~) fc::$15 ← ! (bool~) fc::$14 if((bool~) fc::$15) goto fc::@8 to:fc::@18 fc::@17: scope:[fc] from fc::@6 - (byte) bd#123 ? phi( fc::@6/(byte) bd#77 ) - (byte) be#89 ? phi( fc::@6/(byte) be#135 ) - (byte) be#42 ? ++ (byte) be#89 + (byte) bd#123 ← phi( fc::@6/(byte) bd#77 ) + (byte) be#89 ← phi( fc::@6/(byte) be#135 ) + (byte) be#42 ← ++ (byte) be#89 to:fc::@7 fc::@8: scope:[fc] from fc::@18 fc::@7 - (byte) be#137 ? phi( fc::@18/(byte) be#43 fc::@7/(byte) be#136 ) - (byte) bd#79 ? phi( fc::@18/(byte) bd#124 fc::@7/(byte) bd#78 ) - (bool~) fc::$16 ? (byte) bd#79 == (byte/signed byte/word/signed word/dword/signed dword) 8 - (bool~) fc::$17 ? ! (bool~) fc::$16 + (byte) be#137 ← phi( fc::@18/(byte) be#43 fc::@7/(byte) be#136 ) + (byte) bd#79 ← phi( fc::@18/(byte) bd#124 fc::@7/(byte) bd#78 ) + (bool~) fc::$16 ← (byte) bd#79 == (byte/signed byte/word/signed word/dword/signed dword) 8 + (bool~) fc::$17 ← ! (bool~) fc::$16 if((bool~) fc::$17) goto fc::@9 to:fc::@19 fc::@18: scope:[fc] from fc::@7 - (byte) bd#124 ? phi( fc::@7/(byte) bd#78 ) - (byte) be#90 ? phi( fc::@7/(byte) be#136 ) - (byte) be#43 ? ++ (byte) be#90 + (byte) bd#124 ← phi( fc::@7/(byte) bd#78 ) + (byte) be#90 ← phi( fc::@7/(byte) be#136 ) + (byte) be#43 ← ++ (byte) be#90 to:fc::@8 fc::@9: scope:[fc] from fc::@19 fc::@8 - (byte) be#171 ? phi( fc::@19/(byte) be#44 fc::@8/(byte) be#137 ) - (byte) bd#80 ? phi( fc::@19/(byte) bd#125 fc::@8/(byte) bd#79 ) - (bool~) fc::$18 ? (byte) bd#80 == (byte/signed byte/word/signed word/dword/signed dword) 9 - (bool~) fc::$19 ? ! (bool~) fc::$18 + (byte) be#171 ← phi( fc::@19/(byte) be#44 fc::@8/(byte) be#137 ) + (byte) bd#80 ← phi( fc::@19/(byte) bd#125 fc::@8/(byte) bd#79 ) + (bool~) fc::$18 ← (byte) bd#80 == (byte/signed byte/word/signed word/dword/signed dword) 9 + (bool~) fc::$19 ← ! (bool~) fc::$18 if((bool~) fc::$19) goto fc::@10 to:fc::@20 fc::@19: scope:[fc] from fc::@8 - (byte) bd#125 ? phi( fc::@8/(byte) bd#79 ) - (byte) be#91 ? phi( fc::@8/(byte) be#137 ) - (byte) be#44 ? ++ (byte) be#91 + (byte) bd#125 ← phi( fc::@8/(byte) bd#79 ) + (byte) be#91 ← phi( fc::@8/(byte) be#137 ) + (byte) be#44 ← ++ (byte) be#91 to:fc::@9 fc::@10: scope:[fc] from fc::@9 - (byte) be#138 ? phi( fc::@9/(byte) be#171 ) + (byte) be#138 ← phi( fc::@9/(byte) be#171 ) to:fc::@return fc::@20: scope:[fc] from fc::@9 - (byte) be#45 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) be#45 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:fc::@return fc::@return: scope:[fc] from fc::@10 fc::@20 - (byte) be#92 ? phi( fc::@10/(byte) be#138 fc::@20/(byte) be#45 ) - (byte) be#46 ? (byte) be#92 + (byte) be#92 ← phi( fc::@10/(byte) be#138 fc::@20/(byte) be#45 ) + (byte) be#46 ← (byte) be#92 return to:@return @5: scope:[] from @begin - (byte) ba#28 ? phi( @begin/(byte) ba#0 ) - (byte) be#139 ? phi( @begin/(byte) be#0 ) - (byte) bd#126 ? phi( @begin/(byte) bd#0 ) - (byte) bc#93 ? phi( @begin/(byte) bc#0 ) - (byte) bb#60 ? phi( @begin/(byte) bb#0 ) + (byte) ba#28 ← phi( @begin/(byte) ba#0 ) + (byte) be#139 ← phi( @begin/(byte) be#0 ) + (byte) bd#126 ← phi( @begin/(byte) bd#0 ) + (byte) bc#93 ← phi( @begin/(byte) bc#0 ) + (byte) bb#60 ← phi( @begin/(byte) bb#0 ) call main to:@6 @6: scope:[] from @5 - (byte) ba#16 ? phi( @5/(byte) ba#2 ) - (byte) be#93 ? phi( @5/(byte) be#2 ) - (byte) bd#81 ? phi( @5/(byte) bd#2 ) - (byte) bc#59 ? phi( @5/(byte) bc#2 ) - (byte) bb#37 ? phi( @5/(byte) bb#2 ) - (byte) bb#14 ? (byte) bb#37 - (byte) bc#25 ? (byte) bc#59 - (byte) bd#36 ? (byte) bd#81 - (byte) be#47 ? (byte) be#93 - (byte) ba#3 ? (byte) ba#16 + (byte) ba#16 ← phi( @5/(byte) ba#2 ) + (byte) be#93 ← phi( @5/(byte) be#2 ) + (byte) bd#81 ← phi( @5/(byte) bd#2 ) + (byte) bc#59 ← phi( @5/(byte) bc#2 ) + (byte) bb#37 ← phi( @5/(byte) bb#2 ) + (byte) bb#14 ← (byte) bb#37 + (byte) bc#25 ← (byte) bc#59 + (byte) bd#36 ← (byte) bd#81 + (byte) be#47 ← (byte) be#93 + (byte) ba#3 ← (byte) ba#16 to:@end @end: scope:[] from @6 @@ -1774,46 +1774,46 @@ SYMBOL TABLE SSA (label) main::@7 (label) main::@return -Inversing boolean not [25] (bool~) f0::$1 ? (byte) ba#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [24] (bool~) f0::$0 ? (byte) ba#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [29] (bool~) f0::$3 ? (byte) ba#7 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [28] (bool~) f0::$2 ? (byte) ba#7 == (byte/signed byte/word/signed word/dword/signed dword) 1 -Inversing boolean not [40] (bool~) f0::$5 ? (byte) ba#8 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [39] (bool~) f0::$4 ? (byte) ba#8 == (byte/signed byte/word/signed word/dword/signed dword) 2 -Inversing boolean not [51] (bool~) f0::$7 ? (byte) ba#9 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [50] (bool~) f0::$6 ? (byte) ba#9 == (byte/signed byte/word/signed word/dword/signed dword) 3 -Inversing boolean not [62] (bool~) f0::$9 ? (byte) ba#10 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [61] (bool~) f0::$8 ? (byte) ba#10 == (byte/signed byte/word/signed word/dword/signed dword) 4 -Inversing boolean not [73] (bool~) f0::$11 ? (byte) ba#11 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [72] (bool~) f0::$10 ? (byte) ba#11 == (byte/signed byte/word/signed word/dword/signed dword) 5 -Inversing boolean not [84] (bool~) f0::$13 ? (byte) ba#12 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [83] (bool~) f0::$12 ? (byte) ba#12 == (byte/signed byte/word/signed word/dword/signed dword) 6 -Inversing boolean not [95] (bool~) f0::$15 ? (byte) ba#13 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [94] (bool~) f0::$14 ? (byte) ba#13 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [106] (bool~) f0::$17 ? (byte) ba#14 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [105] (bool~) f0::$16 ? (byte) ba#14 == (byte/signed byte/word/signed word/dword/signed dword) 8 -Inversing boolean not [117] (bool~) f0::$19 ? (byte) ba#15 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [116] (bool~) f0::$18 ? (byte) ba#15 == (byte/signed byte/word/signed word/dword/signed dword) 9 -Inversing boolean not [142] (bool~) fa::$1 ? (byte) bb#27 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [141] (bool~) fa::$0 ? (byte) bb#27 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [146] (bool~) fa::$3 ? (byte) bb#28 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [145] (bool~) fa::$2 ? (byte) bb#28 == (byte/signed byte/word/signed word/dword/signed dword) 1 -Inversing boolean not [156] (bool~) fa::$5 ? (byte) bb#29 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [155] (bool~) fa::$4 ? (byte) bb#29 == (byte/signed byte/word/signed word/dword/signed dword) 2 -Inversing boolean not [166] (bool~) fa::$7 ? (byte) bb#30 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [165] (bool~) fa::$6 ? (byte) bb#30 == (byte/signed byte/word/signed word/dword/signed dword) 3 -Inversing boolean not [176] (bool~) fa::$9 ? (byte) bb#31 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [175] (bool~) fa::$8 ? (byte) bb#31 == (byte/signed byte/word/signed word/dword/signed dword) 4 -Inversing boolean not [186] (bool~) fa::$11 ? (byte) bb#32 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [185] (bool~) fa::$10 ? (byte) bb#32 == (byte/signed byte/word/signed word/dword/signed dword) 5 -Inversing boolean not [196] (bool~) fa::$13 ? (byte) bb#33 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [195] (bool~) fa::$12 ? (byte) bb#33 == (byte/signed byte/word/signed word/dword/signed dword) 6 -Inversing boolean not [206] (bool~) fa::$15 ? (byte) bb#34 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [205] (bool~) fa::$14 ? (byte) bb#34 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [216] (bool~) fa::$17 ? (byte) bb#35 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [215] (bool~) fa::$16 ? (byte) bb#35 == (byte/signed byte/word/signed word/dword/signed dword) 8 -Inversing boolean not [226] (bool~) fa::$19 ? (byte) bb#36 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [225] (bool~) fa::$18 ? (byte) bb#36 == (byte/signed byte/word/signed word/dword/signed dword) 9 -Inversing boolean not [248] (bool~) fb::$1 ? (byte) bc#49 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [247] (bool~) fb::$0 ? (byte) bc#49 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [252] (bool~) fb::$3 ? (byte) bc#50 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [251] (bool~) fb::$2 ? (byte) bc#50 == (byte/signed byte/word/signed word/dword/signed dword) 1 -Inversing boolean not [261] (bool~) fb::$5 ? (byte) bc#51 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [260] (bool~) fb::$4 ? (byte) bc#51 == (byte/signed byte/word/signed word/dword/signed dword) 2 -Inversing boolean not [270] (bool~) fb::$7 ? (byte) bc#52 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [269] (bool~) fb::$6 ? (byte) bc#52 == (byte/signed byte/word/signed word/dword/signed dword) 3 -Inversing boolean not [279] (bool~) fb::$9 ? (byte) bc#53 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [278] (bool~) fb::$8 ? (byte) bc#53 == (byte/signed byte/word/signed word/dword/signed dword) 4 -Inversing boolean not [288] (bool~) fb::$11 ? (byte) bc#54 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [287] (bool~) fb::$10 ? (byte) bc#54 == (byte/signed byte/word/signed word/dword/signed dword) 5 -Inversing boolean not [297] (bool~) fb::$13 ? (byte) bc#55 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [296] (bool~) fb::$12 ? (byte) bc#55 == (byte/signed byte/word/signed word/dword/signed dword) 6 -Inversing boolean not [306] (bool~) fb::$15 ? (byte) bc#56 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [305] (bool~) fb::$14 ? (byte) bc#56 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [315] (bool~) fb::$17 ? (byte) bc#57 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [314] (bool~) fb::$16 ? (byte) bc#57 == (byte/signed byte/word/signed word/dword/signed dword) 8 -Inversing boolean not [324] (bool~) fb::$19 ? (byte) bc#58 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [323] (bool~) fb::$18 ? (byte) bc#58 == (byte/signed byte/word/signed word/dword/signed dword) 9 -Inversing boolean not [343] (bool~) fc::$1 ? (byte) bd#71 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [342] (bool~) fc::$0 ? (byte) bd#71 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [347] (bool~) fc::$3 ? (byte) bd#72 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [346] (bool~) fc::$2 ? (byte) bd#72 == (byte/signed byte/word/signed word/dword/signed dword) 1 -Inversing boolean not [353] (bool~) fc::$5 ? (byte) bd#73 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [352] (bool~) fc::$4 ? (byte) bd#73 == (byte/signed byte/word/signed word/dword/signed dword) 2 -Inversing boolean not [359] (bool~) fc::$7 ? (byte) bd#74 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [358] (bool~) fc::$6 ? (byte) bd#74 == (byte/signed byte/word/signed word/dword/signed dword) 3 -Inversing boolean not [365] (bool~) fc::$9 ? (byte) bd#75 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [364] (bool~) fc::$8 ? (byte) bd#75 == (byte/signed byte/word/signed word/dword/signed dword) 4 -Inversing boolean not [371] (bool~) fc::$11 ? (byte) bd#76 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [370] (bool~) fc::$10 ? (byte) bd#76 == (byte/signed byte/word/signed word/dword/signed dword) 5 -Inversing boolean not [377] (bool~) fc::$13 ? (byte) bd#77 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [376] (bool~) fc::$12 ? (byte) bd#77 == (byte/signed byte/word/signed word/dword/signed dword) 6 -Inversing boolean not [383] (bool~) fc::$15 ? (byte) bd#78 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [382] (bool~) fc::$14 ? (byte) bd#78 == (byte/signed byte/word/signed word/dword/signed dword) 7 -Inversing boolean not [389] (bool~) fc::$17 ? (byte) bd#79 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [388] (bool~) fc::$16 ? (byte) bd#79 == (byte/signed byte/word/signed word/dword/signed dword) 8 -Inversing boolean not [395] (bool~) fc::$19 ? (byte) bd#80 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [394] (bool~) fc::$18 ? (byte) bd#80 == (byte/signed byte/word/signed word/dword/signed dword) 9 +Inversing boolean not [25] (bool~) f0::$1 ← (byte) ba#6 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [24] (bool~) f0::$0 ← (byte) ba#6 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [29] (bool~) f0::$3 ← (byte) ba#7 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [28] (bool~) f0::$2 ← (byte) ba#7 == (byte/signed byte/word/signed word/dword/signed dword) 1 +Inversing boolean not [40] (bool~) f0::$5 ← (byte) ba#8 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [39] (bool~) f0::$4 ← (byte) ba#8 == (byte/signed byte/word/signed word/dword/signed dword) 2 +Inversing boolean not [51] (bool~) f0::$7 ← (byte) ba#9 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [50] (bool~) f0::$6 ← (byte) ba#9 == (byte/signed byte/word/signed word/dword/signed dword) 3 +Inversing boolean not [62] (bool~) f0::$9 ← (byte) ba#10 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [61] (bool~) f0::$8 ← (byte) ba#10 == (byte/signed byte/word/signed word/dword/signed dword) 4 +Inversing boolean not [73] (bool~) f0::$11 ← (byte) ba#11 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [72] (bool~) f0::$10 ← (byte) ba#11 == (byte/signed byte/word/signed word/dword/signed dword) 5 +Inversing boolean not [84] (bool~) f0::$13 ← (byte) ba#12 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [83] (bool~) f0::$12 ← (byte) ba#12 == (byte/signed byte/word/signed word/dword/signed dword) 6 +Inversing boolean not [95] (bool~) f0::$15 ← (byte) ba#13 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [94] (bool~) f0::$14 ← (byte) ba#13 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [106] (bool~) f0::$17 ← (byte) ba#14 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [105] (bool~) f0::$16 ← (byte) ba#14 == (byte/signed byte/word/signed word/dword/signed dword) 8 +Inversing boolean not [117] (bool~) f0::$19 ← (byte) ba#15 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [116] (bool~) f0::$18 ← (byte) ba#15 == (byte/signed byte/word/signed word/dword/signed dword) 9 +Inversing boolean not [142] (bool~) fa::$1 ← (byte) bb#27 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [141] (bool~) fa::$0 ← (byte) bb#27 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [146] (bool~) fa::$3 ← (byte) bb#28 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [145] (bool~) fa::$2 ← (byte) bb#28 == (byte/signed byte/word/signed word/dword/signed dword) 1 +Inversing boolean not [156] (bool~) fa::$5 ← (byte) bb#29 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [155] (bool~) fa::$4 ← (byte) bb#29 == (byte/signed byte/word/signed word/dword/signed dword) 2 +Inversing boolean not [166] (bool~) fa::$7 ← (byte) bb#30 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [165] (bool~) fa::$6 ← (byte) bb#30 == (byte/signed byte/word/signed word/dword/signed dword) 3 +Inversing boolean not [176] (bool~) fa::$9 ← (byte) bb#31 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [175] (bool~) fa::$8 ← (byte) bb#31 == (byte/signed byte/word/signed word/dword/signed dword) 4 +Inversing boolean not [186] (bool~) fa::$11 ← (byte) bb#32 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [185] (bool~) fa::$10 ← (byte) bb#32 == (byte/signed byte/word/signed word/dword/signed dword) 5 +Inversing boolean not [196] (bool~) fa::$13 ← (byte) bb#33 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [195] (bool~) fa::$12 ← (byte) bb#33 == (byte/signed byte/word/signed word/dword/signed dword) 6 +Inversing boolean not [206] (bool~) fa::$15 ← (byte) bb#34 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [205] (bool~) fa::$14 ← (byte) bb#34 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [216] (bool~) fa::$17 ← (byte) bb#35 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [215] (bool~) fa::$16 ← (byte) bb#35 == (byte/signed byte/word/signed word/dword/signed dword) 8 +Inversing boolean not [226] (bool~) fa::$19 ← (byte) bb#36 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [225] (bool~) fa::$18 ← (byte) bb#36 == (byte/signed byte/word/signed word/dword/signed dword) 9 +Inversing boolean not [248] (bool~) fb::$1 ← (byte) bc#49 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [247] (bool~) fb::$0 ← (byte) bc#49 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [252] (bool~) fb::$3 ← (byte) bc#50 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [251] (bool~) fb::$2 ← (byte) bc#50 == (byte/signed byte/word/signed word/dword/signed dword) 1 +Inversing boolean not [261] (bool~) fb::$5 ← (byte) bc#51 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [260] (bool~) fb::$4 ← (byte) bc#51 == (byte/signed byte/word/signed word/dword/signed dword) 2 +Inversing boolean not [270] (bool~) fb::$7 ← (byte) bc#52 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [269] (bool~) fb::$6 ← (byte) bc#52 == (byte/signed byte/word/signed word/dword/signed dword) 3 +Inversing boolean not [279] (bool~) fb::$9 ← (byte) bc#53 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [278] (bool~) fb::$8 ← (byte) bc#53 == (byte/signed byte/word/signed word/dword/signed dword) 4 +Inversing boolean not [288] (bool~) fb::$11 ← (byte) bc#54 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [287] (bool~) fb::$10 ← (byte) bc#54 == (byte/signed byte/word/signed word/dword/signed dword) 5 +Inversing boolean not [297] (bool~) fb::$13 ← (byte) bc#55 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [296] (bool~) fb::$12 ← (byte) bc#55 == (byte/signed byte/word/signed word/dword/signed dword) 6 +Inversing boolean not [306] (bool~) fb::$15 ← (byte) bc#56 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [305] (bool~) fb::$14 ← (byte) bc#56 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [315] (bool~) fb::$17 ← (byte) bc#57 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [314] (bool~) fb::$16 ← (byte) bc#57 == (byte/signed byte/word/signed word/dword/signed dword) 8 +Inversing boolean not [324] (bool~) fb::$19 ← (byte) bc#58 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [323] (bool~) fb::$18 ← (byte) bc#58 == (byte/signed byte/word/signed word/dword/signed dword) 9 +Inversing boolean not [343] (bool~) fc::$1 ← (byte) bd#71 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [342] (bool~) fc::$0 ← (byte) bd#71 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [347] (bool~) fc::$3 ← (byte) bd#72 != (byte/signed byte/word/signed word/dword/signed dword) 1 from [346] (bool~) fc::$2 ← (byte) bd#72 == (byte/signed byte/word/signed word/dword/signed dword) 1 +Inversing boolean not [353] (bool~) fc::$5 ← (byte) bd#73 != (byte/signed byte/word/signed word/dword/signed dword) 2 from [352] (bool~) fc::$4 ← (byte) bd#73 == (byte/signed byte/word/signed word/dword/signed dword) 2 +Inversing boolean not [359] (bool~) fc::$7 ← (byte) bd#74 != (byte/signed byte/word/signed word/dword/signed dword) 3 from [358] (bool~) fc::$6 ← (byte) bd#74 == (byte/signed byte/word/signed word/dword/signed dword) 3 +Inversing boolean not [365] (bool~) fc::$9 ← (byte) bd#75 != (byte/signed byte/word/signed word/dword/signed dword) 4 from [364] (bool~) fc::$8 ← (byte) bd#75 == (byte/signed byte/word/signed word/dword/signed dword) 4 +Inversing boolean not [371] (bool~) fc::$11 ← (byte) bd#76 != (byte/signed byte/word/signed word/dword/signed dword) 5 from [370] (bool~) fc::$10 ← (byte) bd#76 == (byte/signed byte/word/signed word/dword/signed dword) 5 +Inversing boolean not [377] (bool~) fc::$13 ← (byte) bd#77 != (byte/signed byte/word/signed word/dword/signed dword) 6 from [376] (bool~) fc::$12 ← (byte) bd#77 == (byte/signed byte/word/signed word/dword/signed dword) 6 +Inversing boolean not [383] (bool~) fc::$15 ← (byte) bd#78 != (byte/signed byte/word/signed word/dword/signed dword) 7 from [382] (bool~) fc::$14 ← (byte) bd#78 == (byte/signed byte/word/signed word/dword/signed dword) 7 +Inversing boolean not [389] (bool~) fc::$17 ← (byte) bd#79 != (byte/signed byte/word/signed word/dword/signed dword) 8 from [388] (bool~) fc::$16 ← (byte) bd#79 == (byte/signed byte/word/signed word/dword/signed dword) 8 +Inversing boolean not [395] (bool~) fc::$19 ← (byte) bd#80 != (byte/signed byte/word/signed word/dword/signed dword) 9 from [394] (bool~) fc::$18 ← (byte) bd#80 == (byte/signed byte/word/signed word/dword/signed dword) 9 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte) bb#16 = (byte) bb#38 (byte) bb#39 (byte) bb#2 Alias (byte) bc#2 = (byte) bc#60 (byte) bc#61 (byte) bc#27 @@ -2320,294 +2320,294 @@ Calls in [fa] to fb:178 fb:188 fb:198 fb:208 fb:218 fb:228 fb:238 fb:248 fb:258 Calls in [fb] to fc:306 fc:314 fc:322 fc:330 fc:338 fc:346 fc:354 fc:362 fc:370 fc:376 Created 114 initial phi equivalence classes -Coalesced [9] bb#81 ? bb#13 -Coalesced [10] bc#124 ? bc#13 -Coalesced [11] bd#158 ? bd#13 -Coalesced [12] be#172 ? be#13 -Coalesced [13] ba#39 ? ba#1 -Not coalescing [16] bb#101 ? bb#3 -Coalesced [17] bc#145 ? bc#2 -Coalesced [18] bd#179 ? bd#2 -Coalesced [19] be#193 ? be#2 -Coalesced [21] bb#83 ? bb#3 -Coalesced [22] bc#126 ? bc#24 -Coalesced [23] bd#160 ? bd#24 -Coalesced [24] be#174 ? be#24 -Not coalescing [28] bb#102 ? bb#4 -Coalesced [29] bc#146 ? bc#63 -Coalesced [30] bd#180 ? bd#129 -Coalesced [31] be#194 ? be#142 -Coalesced [33] bb#85 ? bb#4 -Coalesced [34] bc#128 ? bc#24 -Coalesced [35] bd#162 ? bd#24 -Coalesced [36] be#176 ? be#24 -Not coalescing [40] bb#103 ? bb#5 -Coalesced (already) [41] bc#147 ? bc#64 -Coalesced (already) [42] bd#181 ? bd#130 -Coalesced (already) [43] be#195 ? be#143 -Coalesced [45] bb#87 ? bb#5 -Coalesced [46] bc#130 ? bc#24 -Coalesced [47] bd#164 ? bd#24 -Coalesced [48] be#178 ? be#24 -Not coalescing [52] bb#104 ? bb#6 -Coalesced (already) [53] bc#148 ? bc#65 -Coalesced (already) [54] bd#182 ? bd#131 -Coalesced (already) [55] be#196 ? be#144 -Coalesced [57] bb#88 ? bb#6 -Coalesced [58] bc#131 ? bc#24 -Coalesced [59] bd#165 ? bd#24 -Coalesced [60] be#179 ? be#24 -Not coalescing [64] bb#105 ? bb#66 -Coalesced (already) [65] bc#149 ? bc#66 -Coalesced (already) [66] bd#183 ? bd#132 -Coalesced (already) [67] be#197 ? be#100 -Coalesced [69] bb#90 ? bb#66 -Coalesced [70] bc#133 ? bc#24 -Coalesced [71] bd#167 ? bd#24 -Coalesced [72] be#181 ? be#24 -Not coalescing [76] bb#106 ? bb#67 -Coalesced (already) [77] bc#150 ? bc#100 -Coalesced (already) [78] bd#184 ? bd#133 -Coalesced (already) [79] be#198 ? be#101 -Coalesced [81] bb#92 ? bb#67 -Coalesced [82] bc#135 ? bc#24 -Coalesced [83] bd#169 ? bd#24 -Coalesced [84] be#183 ? be#24 -Not coalescing [88] bb#107 ? bb#68 -Coalesced (already) [89] bc#151 ? bc#101 -Coalesced (already) [90] bd#185 ? bd#134 -Coalesced (already) [91] be#199 ? be#102 -Coalesced [93] bb#94 ? bb#68 -Coalesced [94] bc#137 ? bc#24 -Coalesced [95] bd#171 ? bd#24 -Coalesced [96] be#185 ? be#24 -Not coalescing [100] bb#108 ? bb#10 -Coalesced (already) [101] bc#152 ? bc#102 -Coalesced (already) [102] bd#186 ? bd#135 -Coalesced (already) [103] be#200 ? be#103 -Coalesced [105] bb#96 ? bb#10 -Coalesced [106] bc#139 ? bc#24 -Coalesced [107] bd#173 ? bd#24 -Coalesced [108] be#187 ? be#24 -Not coalescing [112] bb#109 ? bb#11 -Coalesced (already) [113] bc#153 ? bc#103 -Coalesced (already) [114] bd#187 ? bd#136 -Coalesced (already) [115] be#201 ? be#104 -Coalesced [117] bb#98 ? bb#11 -Coalesced [118] bc#141 ? bc#24 -Coalesced [119] bd#175 ? bd#24 -Coalesced [120] be#189 ? be#24 -Coalesced (already) [123] bc#154 ? bc#104 -Coalesced (already) [124] bd#188 ? bd#137 -Coalesced (already) [125] be#202 ? be#105 -Coalesced (already) [127] bc#144 ? bc#24 -Coalesced (already) [128] bd#178 ? bd#24 -Coalesced (already) [129] be#192 ? be#24 -Coalesced [132] bb#100 ? bb#49 -Coalesced (already) [133] bc#143 ? bc#104 -Coalesced (already) [134] bd#177 ? bd#137 -Coalesced (already) [135] be#191 ? be#105 -Coalesced [136] bb#99 ? bb#25 -Coalesced (already) [137] bc#142 ? bc#103 -Coalesced (already) [138] bd#176 ? bd#136 -Coalesced (already) [139] be#190 ? be#104 -Coalesced [140] bb#97 ? bb#24 -Coalesced (already) [141] bc#140 ? bc#102 -Coalesced (already) [142] bd#174 ? bd#135 -Coalesced (already) [143] be#188 ? be#103 -Coalesced [144] bb#95 ? bb#23 -Coalesced (already) [145] bc#138 ? bc#101 -Coalesced (already) [146] bd#172 ? bd#134 -Coalesced (already) [147] be#186 ? be#102 -Coalesced [148] bb#93 ? bb#22 -Coalesced (already) [149] bc#136 ? bc#100 -Coalesced (already) [150] bd#170 ? bd#133 -Coalesced (already) [151] be#184 ? be#101 -Coalesced [152] bb#91 ? bb#21 -Coalesced (already) [153] bc#134 ? bc#66 -Coalesced (already) [154] bd#168 ? bd#132 -Coalesced (already) [155] be#182 ? be#100 -Coalesced [156] bb#89 ? bb#20 -Coalesced (already) [157] bc#132 ? bc#65 -Coalesced (already) [158] bd#166 ? bd#131 -Coalesced (already) [159] be#180 ? be#144 -Coalesced [160] bb#86 ? bb#19 -Coalesced (already) [161] bc#129 ? bc#64 -Coalesced (already) [162] bd#163 ? bd#130 -Coalesced (already) [163] be#177 ? be#143 -Coalesced [164] bb#84 ? bb#18 -Coalesced (already) [165] bc#127 ? bc#63 -Coalesced (already) [166] bd#161 ? bd#129 -Coalesced (already) [167] be#175 ? be#142 -Coalesced (already) [168] bb#82 ? bb#16 -Coalesced (already) [169] bc#125 ? bc#2 -Coalesced (already) [170] bd#159 ? bd#2 -Coalesced (already) [171] be#173 ? be#2 -Not coalescing [175] bc#174 ? bc#105 -Coalesced [176] bd#209 ? bd#138 -Coalesced [177] be#223 ? be#107 -Coalesced [179] bc#156 ? bc#105 -Coalesced [180] bd#190 ? bd#35 -Coalesced [181] be#204 ? be#35 -Not coalescing [185] bc#175 ? bc#106 -Coalesced [186] bd#210 ? bd#139 -Coalesced [187] be#224 ? be#108 -Coalesced [189] bc#158 ? bc#106 -Coalesced [190] bd#192 ? bd#35 -Coalesced [191] be#206 ? be#35 -Not coalescing [195] bc#176 ? bc#107 -Coalesced (already) [196] bd#211 ? bd#140 -Coalesced (already) [197] be#225 ? be#109 -Coalesced [199] bc#160 ? bc#107 -Coalesced [200] bd#194 ? bd#35 -Coalesced [201] be#208 ? be#35 -Not coalescing [205] bc#177 ? bc#108 -Coalesced (already) [206] bd#212 ? bd#141 -Coalesced (already) [207] be#226 ? be#110 -Coalesced [209] bc#161 ? bc#108 -Coalesced [210] bd#195 ? bd#35 -Coalesced [211] be#209 ? be#35 -Not coalescing [215] bc#178 ? bc#109 -Coalesced (already) [216] bd#213 ? bd#142 -Coalesced (already) [217] be#227 ? be#111 -Coalesced [219] bc#163 ? bc#109 -Coalesced [220] bd#197 ? bd#35 -Coalesced [221] be#211 ? be#35 -Not coalescing [225] bc#179 ? bc#110 -Coalesced (already) [226] bd#214 ? bd#100 -Coalesced (already) [227] be#228 ? be#112 -Coalesced [229] bc#165 ? bc#110 -Coalesced [230] bd#199 ? bd#35 -Coalesced [231] be#213 ? be#35 -Not coalescing [235] bc#180 ? bc#111 -Coalesced (already) [236] bd#215 ? bd#101 -Coalesced (already) [237] be#229 ? be#113 -Coalesced [239] bc#167 ? bc#111 -Coalesced [240] bd#201 ? bd#35 -Coalesced [241] be#215 ? be#35 -Not coalescing [245] bc#181 ? bc#112 -Coalesced (already) [246] bd#216 ? bd#102 -Coalesced (already) [247] be#230 ? be#114 -Coalesced [249] bc#169 ? bc#112 -Coalesced [250] bd#203 ? bd#35 -Coalesced [251] be#217 ? be#35 -Not coalescing [255] bc#182 ? bc#123 -Coalesced (already) [256] bd#217 ? bd#103 -Coalesced (already) [257] be#231 ? be#115 -Coalesced [259] bc#171 ? bc#123 -Coalesced [260] bd#205 ? bd#35 -Coalesced [261] be#219 ? be#35 -Coalesced (already) [264] bd#218 ? bd#104 -Coalesced (already) [265] be#232 ? be#116 -Coalesced (already) [267] bd#208 ? bd#35 -Coalesced (already) [268] be#222 ? be#35 -Coalesced [271] bc#173 ? bc#113 -Coalesced (already) [272] bd#207 ? bd#104 -Coalesced (already) [273] be#221 ? be#116 -Coalesced [274] bc#172 ? bc#47 -Coalesced (already) [275] bd#206 ? bd#103 -Coalesced (already) [276] be#220 ? be#115 -Coalesced [277] bc#170 ? bc#46 -Coalesced (already) [278] bd#204 ? bd#102 -Coalesced (already) [279] be#218 ? be#114 -Coalesced [280] bc#168 ? bc#45 -Coalesced (already) [281] bd#202 ? bd#101 -Coalesced (already) [282] be#216 ? be#113 -Coalesced [283] bc#166 ? bc#44 -Coalesced (already) [284] bd#200 ? bd#100 -Coalesced (already) [285] be#214 ? be#112 -Coalesced [286] bc#164 ? bc#43 -Coalesced (already) [287] bd#198 ? bd#142 -Coalesced (already) [288] be#212 ? be#111 -Coalesced [289] bc#162 ? bc#42 -Coalesced (already) [290] bd#196 ? bd#141 -Coalesced (already) [291] be#210 ? be#110 -Coalesced [292] bc#159 ? bc#41 -Coalesced (already) [293] bd#193 ? bd#140 -Coalesced (already) [294] be#207 ? be#109 -Coalesced [295] bc#157 ? bc#40 -Coalesced (already) [296] bd#191 ? bd#139 -Coalesced (already) [297] be#205 ? be#108 -Coalesced (already) [298] bc#155 ? bc#39 -Coalesced (already) [299] bd#189 ? bd#138 -Coalesced (already) [300] be#203 ? be#107 -Not coalescing [304] bd#238 ? bd#148 -Coalesced [305] be#253 ? be#118 -Coalesced [307] bd#220 ? bd#148 -Coalesced [308] be#234 ? be#46 -Not coalescing [312] bd#239 ? bd#149 -Coalesced [313] be#254 ? be#119 -Coalesced [315] bd#222 ? bd#149 -Coalesced [316] be#236 ? be#46 -Not coalescing [320] bd#240 ? bd#150 -Coalesced (already) [321] be#255 ? be#120 -Coalesced [323] bd#224 ? bd#150 -Coalesced [324] be#238 ? be#46 -Not coalescing [328] bd#241 ? bd#151 -Coalesced (already) [329] be#256 ? be#121 -Coalesced [331] bd#225 ? bd#151 -Coalesced [332] be#239 ? be#46 -Not coalescing [336] bd#242 ? bd#152 -Coalesced (already) [337] be#257 ? be#122 -Coalesced [339] bd#227 ? bd#152 -Coalesced [340] be#241 ? be#46 -Not coalescing [344] bd#243 ? bd#153 -Coalesced (already) [345] be#258 ? be#123 -Coalesced [347] bd#229 ? bd#153 -Coalesced [348] be#243 ? be#46 -Not coalescing [352] bd#244 ? bd#154 -Coalesced (already) [353] be#259 ? be#124 -Coalesced [355] bd#231 ? bd#154 -Coalesced [356] be#245 ? be#46 -Not coalescing [360] bd#245 ? bd#155 -Coalesced (already) [361] be#260 ? be#125 -Coalesced [363] bd#233 ? bd#155 -Coalesced [364] be#247 ? be#46 -Not coalescing [368] bd#246 ? bd#157 -Coalesced (already) [369] be#261 ? be#126 -Coalesced [371] bd#235 ? bd#157 -Coalesced [372] be#249 ? be#46 -Coalesced (already) [375] be#262 ? be#127 -Coalesced (already) [377] be#252 ? be#46 -Coalesced [380] bd#237 ? bd#115 -Coalesced (already) [381] be#251 ? be#127 -Coalesced [382] bd#236 ? bd#114 -Coalesced (already) [383] be#250 ? be#126 -Coalesced [384] bd#234 ? bd#113 -Coalesced (already) [385] be#248 ? be#125 -Coalesced [386] bd#232 ? bd#112 -Coalesced (already) [387] be#246 ? be#124 -Coalesced [388] bd#230 ? bd#111 -Coalesced (already) [389] be#244 ? be#123 -Coalesced [390] bd#228 ? bd#110 -Coalesced (already) [391] be#242 ? be#122 -Coalesced [392] bd#226 ? bd#109 -Coalesced (already) [393] be#240 ? be#121 -Coalesced [394] bd#223 ? bd#108 -Coalesced (already) [395] be#237 ? be#120 -Coalesced [396] bd#221 ? bd#107 -Coalesced (already) [397] be#235 ? be#119 -Coalesced (already) [398] bd#219 ? bd#106 -Coalesced (already) [399] be#233 ? be#118 -Coalesced [403] be#264 ? be#36 -Coalesced [407] be#266 ? be#37 -Coalesced [411] be#267 ? be#38 -Coalesced [415] be#269 ? be#39 -Coalesced [419] be#271 ? be#40 -Coalesced [423] be#273 ? be#41 -Coalesced [427] be#275 ? be#42 -Coalesced [431] be#277 ? be#43 -Coalesced [435] be#279 ? be#44 -Coalesced [441] be#281 ? be#138 -Coalesced [442] be#280 ? be#137 -Coalesced [443] be#278 ? be#136 -Coalesced [444] be#276 ? be#135 -Coalesced [445] be#274 ? be#134 -Coalesced [446] be#272 ? be#133 -Coalesced [447] be#270 ? be#132 -Coalesced [448] be#268 ? be#131 -Coalesced [449] be#265 ? be#130 -Coalesced (already) [450] be#263 ? be#129 +Coalesced [9] bb#81 ← bb#13 +Coalesced [10] bc#124 ← bc#13 +Coalesced [11] bd#158 ← bd#13 +Coalesced [12] be#172 ← be#13 +Coalesced [13] ba#39 ← ba#1 +Not coalescing [16] bb#101 ← bb#3 +Coalesced [17] bc#145 ← bc#2 +Coalesced [18] bd#179 ← bd#2 +Coalesced [19] be#193 ← be#2 +Coalesced [21] bb#83 ← bb#3 +Coalesced [22] bc#126 ← bc#24 +Coalesced [23] bd#160 ← bd#24 +Coalesced [24] be#174 ← be#24 +Not coalescing [28] bb#102 ← bb#4 +Coalesced [29] bc#146 ← bc#63 +Coalesced [30] bd#180 ← bd#129 +Coalesced [31] be#194 ← be#142 +Coalesced [33] bb#85 ← bb#4 +Coalesced [34] bc#128 ← bc#24 +Coalesced [35] bd#162 ← bd#24 +Coalesced [36] be#176 ← be#24 +Not coalescing [40] bb#103 ← bb#5 +Coalesced (already) [41] bc#147 ← bc#64 +Coalesced (already) [42] bd#181 ← bd#130 +Coalesced (already) [43] be#195 ← be#143 +Coalesced [45] bb#87 ← bb#5 +Coalesced [46] bc#130 ← bc#24 +Coalesced [47] bd#164 ← bd#24 +Coalesced [48] be#178 ← be#24 +Not coalescing [52] bb#104 ← bb#6 +Coalesced (already) [53] bc#148 ← bc#65 +Coalesced (already) [54] bd#182 ← bd#131 +Coalesced (already) [55] be#196 ← be#144 +Coalesced [57] bb#88 ← bb#6 +Coalesced [58] bc#131 ← bc#24 +Coalesced [59] bd#165 ← bd#24 +Coalesced [60] be#179 ← be#24 +Not coalescing [64] bb#105 ← bb#66 +Coalesced (already) [65] bc#149 ← bc#66 +Coalesced (already) [66] bd#183 ← bd#132 +Coalesced (already) [67] be#197 ← be#100 +Coalesced [69] bb#90 ← bb#66 +Coalesced [70] bc#133 ← bc#24 +Coalesced [71] bd#167 ← bd#24 +Coalesced [72] be#181 ← be#24 +Not coalescing [76] bb#106 ← bb#67 +Coalesced (already) [77] bc#150 ← bc#100 +Coalesced (already) [78] bd#184 ← bd#133 +Coalesced (already) [79] be#198 ← be#101 +Coalesced [81] bb#92 ← bb#67 +Coalesced [82] bc#135 ← bc#24 +Coalesced [83] bd#169 ← bd#24 +Coalesced [84] be#183 ← be#24 +Not coalescing [88] bb#107 ← bb#68 +Coalesced (already) [89] bc#151 ← bc#101 +Coalesced (already) [90] bd#185 ← bd#134 +Coalesced (already) [91] be#199 ← be#102 +Coalesced [93] bb#94 ← bb#68 +Coalesced [94] bc#137 ← bc#24 +Coalesced [95] bd#171 ← bd#24 +Coalesced [96] be#185 ← be#24 +Not coalescing [100] bb#108 ← bb#10 +Coalesced (already) [101] bc#152 ← bc#102 +Coalesced (already) [102] bd#186 ← bd#135 +Coalesced (already) [103] be#200 ← be#103 +Coalesced [105] bb#96 ← bb#10 +Coalesced [106] bc#139 ← bc#24 +Coalesced [107] bd#173 ← bd#24 +Coalesced [108] be#187 ← be#24 +Not coalescing [112] bb#109 ← bb#11 +Coalesced (already) [113] bc#153 ← bc#103 +Coalesced (already) [114] bd#187 ← bd#136 +Coalesced (already) [115] be#201 ← be#104 +Coalesced [117] bb#98 ← bb#11 +Coalesced [118] bc#141 ← bc#24 +Coalesced [119] bd#175 ← bd#24 +Coalesced [120] be#189 ← be#24 +Coalesced (already) [123] bc#154 ← bc#104 +Coalesced (already) [124] bd#188 ← bd#137 +Coalesced (already) [125] be#202 ← be#105 +Coalesced (already) [127] bc#144 ← bc#24 +Coalesced (already) [128] bd#178 ← bd#24 +Coalesced (already) [129] be#192 ← be#24 +Coalesced [132] bb#100 ← bb#49 +Coalesced (already) [133] bc#143 ← bc#104 +Coalesced (already) [134] bd#177 ← bd#137 +Coalesced (already) [135] be#191 ← be#105 +Coalesced [136] bb#99 ← bb#25 +Coalesced (already) [137] bc#142 ← bc#103 +Coalesced (already) [138] bd#176 ← bd#136 +Coalesced (already) [139] be#190 ← be#104 +Coalesced [140] bb#97 ← bb#24 +Coalesced (already) [141] bc#140 ← bc#102 +Coalesced (already) [142] bd#174 ← bd#135 +Coalesced (already) [143] be#188 ← be#103 +Coalesced [144] bb#95 ← bb#23 +Coalesced (already) [145] bc#138 ← bc#101 +Coalesced (already) [146] bd#172 ← bd#134 +Coalesced (already) [147] be#186 ← be#102 +Coalesced [148] bb#93 ← bb#22 +Coalesced (already) [149] bc#136 ← bc#100 +Coalesced (already) [150] bd#170 ← bd#133 +Coalesced (already) [151] be#184 ← be#101 +Coalesced [152] bb#91 ← bb#21 +Coalesced (already) [153] bc#134 ← bc#66 +Coalesced (already) [154] bd#168 ← bd#132 +Coalesced (already) [155] be#182 ← be#100 +Coalesced [156] bb#89 ← bb#20 +Coalesced (already) [157] bc#132 ← bc#65 +Coalesced (already) [158] bd#166 ← bd#131 +Coalesced (already) [159] be#180 ← be#144 +Coalesced [160] bb#86 ← bb#19 +Coalesced (already) [161] bc#129 ← bc#64 +Coalesced (already) [162] bd#163 ← bd#130 +Coalesced (already) [163] be#177 ← be#143 +Coalesced [164] bb#84 ← bb#18 +Coalesced (already) [165] bc#127 ← bc#63 +Coalesced (already) [166] bd#161 ← bd#129 +Coalesced (already) [167] be#175 ← be#142 +Coalesced (already) [168] bb#82 ← bb#16 +Coalesced (already) [169] bc#125 ← bc#2 +Coalesced (already) [170] bd#159 ← bd#2 +Coalesced (already) [171] be#173 ← be#2 +Not coalescing [175] bc#174 ← bc#105 +Coalesced [176] bd#209 ← bd#138 +Coalesced [177] be#223 ← be#107 +Coalesced [179] bc#156 ← bc#105 +Coalesced [180] bd#190 ← bd#35 +Coalesced [181] be#204 ← be#35 +Not coalescing [185] bc#175 ← bc#106 +Coalesced [186] bd#210 ← bd#139 +Coalesced [187] be#224 ← be#108 +Coalesced [189] bc#158 ← bc#106 +Coalesced [190] bd#192 ← bd#35 +Coalesced [191] be#206 ← be#35 +Not coalescing [195] bc#176 ← bc#107 +Coalesced (already) [196] bd#211 ← bd#140 +Coalesced (already) [197] be#225 ← be#109 +Coalesced [199] bc#160 ← bc#107 +Coalesced [200] bd#194 ← bd#35 +Coalesced [201] be#208 ← be#35 +Not coalescing [205] bc#177 ← bc#108 +Coalesced (already) [206] bd#212 ← bd#141 +Coalesced (already) [207] be#226 ← be#110 +Coalesced [209] bc#161 ← bc#108 +Coalesced [210] bd#195 ← bd#35 +Coalesced [211] be#209 ← be#35 +Not coalescing [215] bc#178 ← bc#109 +Coalesced (already) [216] bd#213 ← bd#142 +Coalesced (already) [217] be#227 ← be#111 +Coalesced [219] bc#163 ← bc#109 +Coalesced [220] bd#197 ← bd#35 +Coalesced [221] be#211 ← be#35 +Not coalescing [225] bc#179 ← bc#110 +Coalesced (already) [226] bd#214 ← bd#100 +Coalesced (already) [227] be#228 ← be#112 +Coalesced [229] bc#165 ← bc#110 +Coalesced [230] bd#199 ← bd#35 +Coalesced [231] be#213 ← be#35 +Not coalescing [235] bc#180 ← bc#111 +Coalesced (already) [236] bd#215 ← bd#101 +Coalesced (already) [237] be#229 ← be#113 +Coalesced [239] bc#167 ← bc#111 +Coalesced [240] bd#201 ← bd#35 +Coalesced [241] be#215 ← be#35 +Not coalescing [245] bc#181 ← bc#112 +Coalesced (already) [246] bd#216 ← bd#102 +Coalesced (already) [247] be#230 ← be#114 +Coalesced [249] bc#169 ← bc#112 +Coalesced [250] bd#203 ← bd#35 +Coalesced [251] be#217 ← be#35 +Not coalescing [255] bc#182 ← bc#123 +Coalesced (already) [256] bd#217 ← bd#103 +Coalesced (already) [257] be#231 ← be#115 +Coalesced [259] bc#171 ← bc#123 +Coalesced [260] bd#205 ← bd#35 +Coalesced [261] be#219 ← be#35 +Coalesced (already) [264] bd#218 ← bd#104 +Coalesced (already) [265] be#232 ← be#116 +Coalesced (already) [267] bd#208 ← bd#35 +Coalesced (already) [268] be#222 ← be#35 +Coalesced [271] bc#173 ← bc#113 +Coalesced (already) [272] bd#207 ← bd#104 +Coalesced (already) [273] be#221 ← be#116 +Coalesced [274] bc#172 ← bc#47 +Coalesced (already) [275] bd#206 ← bd#103 +Coalesced (already) [276] be#220 ← be#115 +Coalesced [277] bc#170 ← bc#46 +Coalesced (already) [278] bd#204 ← bd#102 +Coalesced (already) [279] be#218 ← be#114 +Coalesced [280] bc#168 ← bc#45 +Coalesced (already) [281] bd#202 ← bd#101 +Coalesced (already) [282] be#216 ← be#113 +Coalesced [283] bc#166 ← bc#44 +Coalesced (already) [284] bd#200 ← bd#100 +Coalesced (already) [285] be#214 ← be#112 +Coalesced [286] bc#164 ← bc#43 +Coalesced (already) [287] bd#198 ← bd#142 +Coalesced (already) [288] be#212 ← be#111 +Coalesced [289] bc#162 ← bc#42 +Coalesced (already) [290] bd#196 ← bd#141 +Coalesced (already) [291] be#210 ← be#110 +Coalesced [292] bc#159 ← bc#41 +Coalesced (already) [293] bd#193 ← bd#140 +Coalesced (already) [294] be#207 ← be#109 +Coalesced [295] bc#157 ← bc#40 +Coalesced (already) [296] bd#191 ← bd#139 +Coalesced (already) [297] be#205 ← be#108 +Coalesced (already) [298] bc#155 ← bc#39 +Coalesced (already) [299] bd#189 ← bd#138 +Coalesced (already) [300] be#203 ← be#107 +Not coalescing [304] bd#238 ← bd#148 +Coalesced [305] be#253 ← be#118 +Coalesced [307] bd#220 ← bd#148 +Coalesced [308] be#234 ← be#46 +Not coalescing [312] bd#239 ← bd#149 +Coalesced [313] be#254 ← be#119 +Coalesced [315] bd#222 ← bd#149 +Coalesced [316] be#236 ← be#46 +Not coalescing [320] bd#240 ← bd#150 +Coalesced (already) [321] be#255 ← be#120 +Coalesced [323] bd#224 ← bd#150 +Coalesced [324] be#238 ← be#46 +Not coalescing [328] bd#241 ← bd#151 +Coalesced (already) [329] be#256 ← be#121 +Coalesced [331] bd#225 ← bd#151 +Coalesced [332] be#239 ← be#46 +Not coalescing [336] bd#242 ← bd#152 +Coalesced (already) [337] be#257 ← be#122 +Coalesced [339] bd#227 ← bd#152 +Coalesced [340] be#241 ← be#46 +Not coalescing [344] bd#243 ← bd#153 +Coalesced (already) [345] be#258 ← be#123 +Coalesced [347] bd#229 ← bd#153 +Coalesced [348] be#243 ← be#46 +Not coalescing [352] bd#244 ← bd#154 +Coalesced (already) [353] be#259 ← be#124 +Coalesced [355] bd#231 ← bd#154 +Coalesced [356] be#245 ← be#46 +Not coalescing [360] bd#245 ← bd#155 +Coalesced (already) [361] be#260 ← be#125 +Coalesced [363] bd#233 ← bd#155 +Coalesced [364] be#247 ← be#46 +Not coalescing [368] bd#246 ← bd#157 +Coalesced (already) [369] be#261 ← be#126 +Coalesced [371] bd#235 ← bd#157 +Coalesced [372] be#249 ← be#46 +Coalesced (already) [375] be#262 ← be#127 +Coalesced (already) [377] be#252 ← be#46 +Coalesced [380] bd#237 ← bd#115 +Coalesced (already) [381] be#251 ← be#127 +Coalesced [382] bd#236 ← bd#114 +Coalesced (already) [383] be#250 ← be#126 +Coalesced [384] bd#234 ← bd#113 +Coalesced (already) [385] be#248 ← be#125 +Coalesced [386] bd#232 ← bd#112 +Coalesced (already) [387] be#246 ← be#124 +Coalesced [388] bd#230 ← bd#111 +Coalesced (already) [389] be#244 ← be#123 +Coalesced [390] bd#228 ← bd#110 +Coalesced (already) [391] be#242 ← be#122 +Coalesced [392] bd#226 ← bd#109 +Coalesced (already) [393] be#240 ← be#121 +Coalesced [394] bd#223 ← bd#108 +Coalesced (already) [395] be#237 ← be#120 +Coalesced [396] bd#221 ← bd#107 +Coalesced (already) [397] be#235 ← be#119 +Coalesced (already) [398] bd#219 ← bd#106 +Coalesced (already) [399] be#233 ← be#118 +Coalesced [403] be#264 ← be#36 +Coalesced [407] be#266 ← be#37 +Coalesced [411] be#267 ← be#38 +Coalesced [415] be#269 ← be#39 +Coalesced [419] be#271 ← be#40 +Coalesced [423] be#273 ← be#41 +Coalesced [427] be#275 ← be#42 +Coalesced [431] be#277 ← be#43 +Coalesced [435] be#279 ← be#44 +Coalesced [441] be#281 ← be#138 +Coalesced [442] be#280 ← be#137 +Coalesced [443] be#278 ← be#136 +Coalesced [444] be#276 ← be#135 +Coalesced [445] be#274 ← be#134 +Coalesced [446] be#272 ← be#133 +Coalesced [447] be#270 ← be#132 +Coalesced [448] be#268 ← be#131 +Coalesced [449] be#265 ← be#130 +Coalesced (already) [450] be#263 ← be#129 Coalesced down to 8 phi equivalence classes Culled Empty Block (label) f0::@40 Culled Empty Block (label) f0::@39 @@ -2715,128 +2715,128 @@ main: scope:[main] from @1 [4] phi() to:main::@1 main::@1: scope:[main] from main main::@3 - [5] (byte) ba#17 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) ba#1 ) - [5] (byte) be#2 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) be#13 ) - [5] (byte) bd#2 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) bd#13 ) - [5] (byte) bc#2 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) bc#13 ) - [5] (byte) bb#16 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) bb#13 ) + [5] (byte) ba#17 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) ba#1 ) + [5] (byte) be#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) be#13 ) + [5] (byte) bd#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) bd#13 ) + [5] (byte) bc#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) bc#13 ) + [5] (byte) bb#16 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@3/(byte) bb#13 ) to:main::@2 main::@2: scope:[main] from main::@1 [6] phi() [7] call f0 to:main::@3 main::@3: scope:[main] from main::@2 - [8] (byte) ba#1 ? ++ (byte) ba#17 + [8] (byte) ba#1 ← ++ (byte) ba#17 to:main::@1 f0: scope:[f0] from main::@2 [9] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto f0::@1 to:f0::@10 f0::@10: scope:[f0] from f0 - [10] (byte) bb#3 ? ++ (byte) bb#16 - [11] (byte~) bb#101 ? (byte) bb#3 + [10] (byte) bb#3 ← ++ (byte) bb#16 + [11] (byte~) bb#101 ← (byte) bb#3 [12] call fa to:f0::@1 f0::@1: scope:[f0] from f0 f0::@10 - [13] (byte) be#142 ? phi( f0/(byte) be#2 f0::@10/(byte) be#24 ) - [13] (byte) bd#129 ? phi( f0/(byte) bd#2 f0::@10/(byte) bd#24 ) - [13] (byte) bc#63 ? phi( f0/(byte) bc#2 f0::@10/(byte) bc#24 ) - [13] (byte) bb#18 ? phi( f0/(byte) bb#16 f0::@10/(byte) bb#3 ) + [13] (byte) be#142 ← phi( f0/(byte) be#2 f0::@10/(byte) be#24 ) + [13] (byte) bd#129 ← phi( f0/(byte) bd#2 f0::@10/(byte) bd#24 ) + [13] (byte) bc#63 ← phi( f0/(byte) bc#2 f0::@10/(byte) bc#24 ) + [13] (byte) bb#18 ← phi( f0/(byte) bb#16 f0::@10/(byte) bb#3 ) [14] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto f0::@2 to:f0::@11 f0::@11: scope:[f0] from f0::@1 - [15] (byte) bb#4 ? ++ (byte) bb#18 - [16] (byte~) bb#102 ? (byte) bb#4 + [15] (byte) bb#4 ← ++ (byte) bb#18 + [16] (byte~) bb#102 ← (byte) bb#4 [17] call fa to:f0::@2 f0::@2: scope:[f0] from f0::@1 f0::@11 - [18] (byte) be#143 ? phi( f0::@1/(byte) be#142 f0::@11/(byte) be#24 ) - [18] (byte) bd#130 ? phi( f0::@1/(byte) bd#129 f0::@11/(byte) bd#24 ) - [18] (byte) bc#64 ? phi( f0::@1/(byte) bc#63 f0::@11/(byte) bc#24 ) - [18] (byte) bb#19 ? phi( f0::@1/(byte) bb#18 f0::@11/(byte) bb#4 ) + [18] (byte) be#143 ← phi( f0::@1/(byte) be#142 f0::@11/(byte) be#24 ) + [18] (byte) bd#130 ← phi( f0::@1/(byte) bd#129 f0::@11/(byte) bd#24 ) + [18] (byte) bc#64 ← phi( f0::@1/(byte) bc#63 f0::@11/(byte) bc#24 ) + [18] (byte) bb#19 ← phi( f0::@1/(byte) bb#18 f0::@11/(byte) bb#4 ) [19] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 2) goto f0::@3 to:f0::@12 f0::@12: scope:[f0] from f0::@2 - [20] (byte) bb#5 ? ++ (byte) bb#19 - [21] (byte~) bb#103 ? (byte) bb#5 + [20] (byte) bb#5 ← ++ (byte) bb#19 + [21] (byte~) bb#103 ← (byte) bb#5 [22] call fa to:f0::@3 f0::@3: scope:[f0] from f0::@12 f0::@2 - [23] (byte) be#144 ? phi( f0::@2/(byte) be#143 f0::@12/(byte) be#24 ) - [23] (byte) bd#131 ? phi( f0::@2/(byte) bd#130 f0::@12/(byte) bd#24 ) - [23] (byte) bc#65 ? phi( f0::@2/(byte) bc#64 f0::@12/(byte) bc#24 ) - [23] (byte) bb#20 ? phi( f0::@2/(byte) bb#19 f0::@12/(byte) bb#5 ) + [23] (byte) be#144 ← phi( f0::@2/(byte) be#143 f0::@12/(byte) be#24 ) + [23] (byte) bd#131 ← phi( f0::@2/(byte) bd#130 f0::@12/(byte) bd#24 ) + [23] (byte) bc#65 ← phi( f0::@2/(byte) bc#64 f0::@12/(byte) bc#24 ) + [23] (byte) bb#20 ← phi( f0::@2/(byte) bb#19 f0::@12/(byte) bb#5 ) [24] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 3) goto f0::@4 to:f0::@13 f0::@13: scope:[f0] from f0::@3 - [25] (byte) bb#6 ? ++ (byte) bb#20 - [26] (byte~) bb#104 ? (byte) bb#6 + [25] (byte) bb#6 ← ++ (byte) bb#20 + [26] (byte~) bb#104 ← (byte) bb#6 [27] call fa to:f0::@4 f0::@4: scope:[f0] from f0::@13 f0::@3 - [28] (byte) be#100 ? phi( f0::@13/(byte) be#24 f0::@3/(byte) be#144 ) - [28] (byte) bd#132 ? phi( f0::@13/(byte) bd#24 f0::@3/(byte) bd#131 ) - [28] (byte) bc#66 ? phi( f0::@13/(byte) bc#24 f0::@3/(byte) bc#65 ) - [28] (byte) bb#21 ? phi( f0::@13/(byte) bb#6 f0::@3/(byte) bb#20 ) + [28] (byte) be#100 ← phi( f0::@13/(byte) be#24 f0::@3/(byte) be#144 ) + [28] (byte) bd#132 ← phi( f0::@13/(byte) bd#24 f0::@3/(byte) bd#131 ) + [28] (byte) bc#66 ← phi( f0::@13/(byte) bc#24 f0::@3/(byte) bc#65 ) + [28] (byte) bb#21 ← phi( f0::@13/(byte) bb#6 f0::@3/(byte) bb#20 ) [29] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto f0::@5 to:f0::@14 f0::@14: scope:[f0] from f0::@4 - [30] (byte) bb#66 ? ++ (byte) bb#21 - [31] (byte~) bb#105 ? (byte) bb#66 + [30] (byte) bb#66 ← ++ (byte) bb#21 + [31] (byte~) bb#105 ← (byte) bb#66 [32] call fa to:f0::@5 f0::@5: scope:[f0] from f0::@14 f0::@4 - [33] (byte) be#101 ? phi( f0::@14/(byte) be#24 f0::@4/(byte) be#100 ) - [33] (byte) bd#133 ? phi( f0::@14/(byte) bd#24 f0::@4/(byte) bd#132 ) - [33] (byte) bc#100 ? phi( f0::@14/(byte) bc#24 f0::@4/(byte) bc#66 ) - [33] (byte) bb#22 ? phi( f0::@14/(byte) bb#66 f0::@4/(byte) bb#21 ) + [33] (byte) be#101 ← phi( f0::@14/(byte) be#24 f0::@4/(byte) be#100 ) + [33] (byte) bd#133 ← phi( f0::@14/(byte) bd#24 f0::@4/(byte) bd#132 ) + [33] (byte) bc#100 ← phi( f0::@14/(byte) bc#24 f0::@4/(byte) bc#66 ) + [33] (byte) bb#22 ← phi( f0::@14/(byte) bb#66 f0::@4/(byte) bb#21 ) [34] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto f0::@6 to:f0::@15 f0::@15: scope:[f0] from f0::@5 - [35] (byte) bb#67 ? ++ (byte) bb#22 - [36] (byte~) bb#106 ? (byte) bb#67 + [35] (byte) bb#67 ← ++ (byte) bb#22 + [36] (byte~) bb#106 ← (byte) bb#67 [37] call fa to:f0::@6 f0::@6: scope:[f0] from f0::@15 f0::@5 - [38] (byte) be#102 ? phi( f0::@15/(byte) be#24 f0::@5/(byte) be#101 ) - [38] (byte) bd#134 ? phi( f0::@15/(byte) bd#24 f0::@5/(byte) bd#133 ) - [38] (byte) bc#101 ? phi( f0::@15/(byte) bc#24 f0::@5/(byte) bc#100 ) - [38] (byte) bb#23 ? phi( f0::@15/(byte) bb#67 f0::@5/(byte) bb#22 ) + [38] (byte) be#102 ← phi( f0::@15/(byte) be#24 f0::@5/(byte) be#101 ) + [38] (byte) bd#134 ← phi( f0::@15/(byte) bd#24 f0::@5/(byte) bd#133 ) + [38] (byte) bc#101 ← phi( f0::@15/(byte) bc#24 f0::@5/(byte) bc#100 ) + [38] (byte) bb#23 ← phi( f0::@15/(byte) bb#67 f0::@5/(byte) bb#22 ) [39] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto f0::@7 to:f0::@16 f0::@16: scope:[f0] from f0::@6 - [40] (byte) bb#68 ? ++ (byte) bb#23 - [41] (byte~) bb#107 ? (byte) bb#68 + [40] (byte) bb#68 ← ++ (byte) bb#23 + [41] (byte~) bb#107 ← (byte) bb#68 [42] call fa to:f0::@7 f0::@7: scope:[f0] from f0::@16 f0::@6 - [43] (byte) be#103 ? phi( f0::@16/(byte) be#24 f0::@6/(byte) be#102 ) - [43] (byte) bd#135 ? phi( f0::@16/(byte) bd#24 f0::@6/(byte) bd#134 ) - [43] (byte) bc#102 ? phi( f0::@16/(byte) bc#24 f0::@6/(byte) bc#101 ) - [43] (byte) bb#24 ? phi( f0::@16/(byte) bb#68 f0::@6/(byte) bb#23 ) + [43] (byte) be#103 ← phi( f0::@16/(byte) be#24 f0::@6/(byte) be#102 ) + [43] (byte) bd#135 ← phi( f0::@16/(byte) bd#24 f0::@6/(byte) bd#134 ) + [43] (byte) bc#102 ← phi( f0::@16/(byte) bc#24 f0::@6/(byte) bc#101 ) + [43] (byte) bb#24 ← phi( f0::@16/(byte) bb#68 f0::@6/(byte) bb#23 ) [44] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto f0::@8 to:f0::@17 f0::@17: scope:[f0] from f0::@7 - [45] (byte) bb#10 ? ++ (byte) bb#24 - [46] (byte~) bb#108 ? (byte) bb#10 + [45] (byte) bb#10 ← ++ (byte) bb#24 + [46] (byte~) bb#108 ← (byte) bb#10 [47] call fa to:f0::@8 f0::@8: scope:[f0] from f0::@17 f0::@7 - [48] (byte) be#104 ? phi( f0::@17/(byte) be#24 f0::@7/(byte) be#103 ) - [48] (byte) bd#136 ? phi( f0::@17/(byte) bd#24 f0::@7/(byte) bd#135 ) - [48] (byte) bc#103 ? phi( f0::@17/(byte) bc#24 f0::@7/(byte) bc#102 ) - [48] (byte) bb#25 ? phi( f0::@17/(byte) bb#10 f0::@7/(byte) bb#24 ) + [48] (byte) be#104 ← phi( f0::@17/(byte) be#24 f0::@7/(byte) be#103 ) + [48] (byte) bd#136 ← phi( f0::@17/(byte) bd#24 f0::@7/(byte) bd#135 ) + [48] (byte) bc#103 ← phi( f0::@17/(byte) bc#24 f0::@7/(byte) bc#102 ) + [48] (byte) bb#25 ← phi( f0::@17/(byte) bb#10 f0::@7/(byte) bb#24 ) [49] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto f0::@9 to:f0::@18 f0::@18: scope:[f0] from f0::@8 - [50] (byte) bb#11 ? ++ (byte) bb#25 - [51] (byte~) bb#109 ? (byte) bb#11 + [50] (byte) bb#11 ← ++ (byte) bb#25 + [51] (byte~) bb#109 ← (byte) bb#11 [52] call fa to:f0::@9 f0::@9: scope:[f0] from f0::@18 f0::@8 - [53] (byte) be#105 ? phi( f0::@18/(byte) be#24 f0::@8/(byte) be#104 ) - [53] (byte) bd#137 ? phi( f0::@18/(byte) bd#24 f0::@8/(byte) bd#136 ) - [53] (byte) bc#104 ? phi( f0::@18/(byte) bc#24 f0::@8/(byte) bc#103 ) - [53] (byte) bb#49 ? phi( f0::@18/(byte) bb#11 f0::@8/(byte) bb#25 ) + [53] (byte) be#105 ← phi( f0::@18/(byte) be#24 f0::@8/(byte) be#104 ) + [53] (byte) bd#137 ← phi( f0::@18/(byte) bd#24 f0::@8/(byte) bd#136 ) + [53] (byte) bc#104 ← phi( f0::@18/(byte) bc#24 f0::@8/(byte) bc#103 ) + [53] (byte) bb#49 ← phi( f0::@18/(byte) bb#11 f0::@8/(byte) bb#25 ) [54] if((byte) ba#17!=(byte/signed byte/word/signed word/dword/signed dword) 9) goto f0::@return to:f0::@19 f0::@19: scope:[f0] from f0::@9 @@ -2844,116 +2844,116 @@ f0::@19: scope:[f0] from f0::@9 [56] call fa to:f0::@return f0::@return: scope:[f0] from f0::@19 f0::@9 - [57] (byte) be#13 ? phi( f0::@9/(byte) be#105 f0::@19/(byte) be#24 ) - [57] (byte) bd#13 ? phi( f0::@9/(byte) bd#137 f0::@19/(byte) bd#24 ) - [57] (byte) bc#13 ? phi( f0::@9/(byte) bc#104 f0::@19/(byte) bc#24 ) - [57] (byte) bb#13 ? phi( f0::@9/(byte) bb#49 f0::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [57] (byte) be#13 ← phi( f0::@9/(byte) be#105 f0::@19/(byte) be#24 ) + [57] (byte) bd#13 ← phi( f0::@9/(byte) bd#137 f0::@19/(byte) bd#24 ) + [57] (byte) bc#13 ← phi( f0::@9/(byte) bc#104 f0::@19/(byte) bc#24 ) + [57] (byte) bb#13 ← phi( f0::@9/(byte) bb#49 f0::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [58] return to:@return fa: scope:[fa] from f0::@10 f0::@11 f0::@12 f0::@13 f0::@14 f0::@15 f0::@16 f0::@17 f0::@18 f0::@19 - [59] (byte) be#107 ? phi( f0::@10/(byte) be#2 f0::@11/(byte) be#142 f0::@12/(byte) be#143 f0::@13/(byte) be#144 f0::@14/(byte) be#100 f0::@15/(byte) be#101 f0::@16/(byte) be#102 f0::@17/(byte) be#103 f0::@18/(byte) be#104 f0::@19/(byte) be#105 ) - [59] (byte) bd#138 ? phi( f0::@10/(byte) bd#2 f0::@11/(byte) bd#129 f0::@12/(byte) bd#130 f0::@13/(byte) bd#131 f0::@14/(byte) bd#132 f0::@15/(byte) bd#133 f0::@16/(byte) bd#134 f0::@17/(byte) bd#135 f0::@18/(byte) bd#136 f0::@19/(byte) bd#137 ) - [59] (byte) bc#39 ? phi( f0::@10/(byte) bc#2 f0::@11/(byte) bc#63 f0::@12/(byte) bc#64 f0::@13/(byte) bc#65 f0::@14/(byte) bc#66 f0::@15/(byte) bc#100 f0::@16/(byte) bc#101 f0::@17/(byte) bc#102 f0::@18/(byte) bc#103 f0::@19/(byte) bc#104 ) - [59] (byte) bb#27 ? phi( f0::@10/(byte~) bb#101 f0::@11/(byte~) bb#102 f0::@12/(byte~) bb#103 f0::@13/(byte~) bb#104 f0::@14/(byte~) bb#105 f0::@15/(byte~) bb#106 f0::@16/(byte~) bb#107 f0::@17/(byte~) bb#108 f0::@18/(byte~) bb#109 f0::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [59] (byte) be#107 ← phi( f0::@10/(byte) be#2 f0::@11/(byte) be#142 f0::@12/(byte) be#143 f0::@13/(byte) be#144 f0::@14/(byte) be#100 f0::@15/(byte) be#101 f0::@16/(byte) be#102 f0::@17/(byte) be#103 f0::@18/(byte) be#104 f0::@19/(byte) be#105 ) + [59] (byte) bd#138 ← phi( f0::@10/(byte) bd#2 f0::@11/(byte) bd#129 f0::@12/(byte) bd#130 f0::@13/(byte) bd#131 f0::@14/(byte) bd#132 f0::@15/(byte) bd#133 f0::@16/(byte) bd#134 f0::@17/(byte) bd#135 f0::@18/(byte) bd#136 f0::@19/(byte) bd#137 ) + [59] (byte) bc#39 ← phi( f0::@10/(byte) bc#2 f0::@11/(byte) bc#63 f0::@12/(byte) bc#64 f0::@13/(byte) bc#65 f0::@14/(byte) bc#66 f0::@15/(byte) bc#100 f0::@16/(byte) bc#101 f0::@17/(byte) bc#102 f0::@18/(byte) bc#103 f0::@19/(byte) bc#104 ) + [59] (byte) bb#27 ← phi( f0::@10/(byte~) bb#101 f0::@11/(byte~) bb#102 f0::@12/(byte~) bb#103 f0::@13/(byte~) bb#104 f0::@14/(byte~) bb#105 f0::@15/(byte~) bb#106 f0::@16/(byte~) bb#107 f0::@17/(byte~) bb#108 f0::@18/(byte~) bb#109 f0::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [60] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto fa::@1 to:fa::@10 fa::@10: scope:[fa] from fa - [61] (byte) bc#105 ? ++ (byte) bc#39 - [62] (byte~) bc#174 ? (byte) bc#105 + [61] (byte) bc#105 ← ++ (byte) bc#39 + [62] (byte~) bc#174 ← (byte) bc#105 [63] call fb to:fa::@1 fa::@1: scope:[fa] from fa fa::@10 - [64] (byte) be#108 ? phi( fa/(byte) be#107 fa::@10/(byte) be#35 ) - [64] (byte) bd#139 ? phi( fa/(byte) bd#138 fa::@10/(byte) bd#35 ) - [64] (byte) bc#40 ? phi( fa/(byte) bc#39 fa::@10/(byte) bc#105 ) + [64] (byte) be#108 ← phi( fa/(byte) be#107 fa::@10/(byte) be#35 ) + [64] (byte) bd#139 ← phi( fa/(byte) bd#138 fa::@10/(byte) bd#35 ) + [64] (byte) bc#40 ← phi( fa/(byte) bc#39 fa::@10/(byte) bc#105 ) [65] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto fa::@2 to:fa::@11 fa::@11: scope:[fa] from fa::@1 - [66] (byte) bc#106 ? ++ (byte) bc#40 - [67] (byte~) bc#175 ? (byte) bc#106 + [66] (byte) bc#106 ← ++ (byte) bc#40 + [67] (byte~) bc#175 ← (byte) bc#106 [68] call fb to:fa::@2 fa::@2: scope:[fa] from fa::@1 fa::@11 - [69] (byte) be#109 ? phi( fa::@1/(byte) be#108 fa::@11/(byte) be#35 ) - [69] (byte) bd#140 ? phi( fa::@1/(byte) bd#139 fa::@11/(byte) bd#35 ) - [69] (byte) bc#41 ? phi( fa::@1/(byte) bc#40 fa::@11/(byte) bc#106 ) + [69] (byte) be#109 ← phi( fa::@1/(byte) be#108 fa::@11/(byte) be#35 ) + [69] (byte) bd#140 ← phi( fa::@1/(byte) bd#139 fa::@11/(byte) bd#35 ) + [69] (byte) bc#41 ← phi( fa::@1/(byte) bc#40 fa::@11/(byte) bc#106 ) [70] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 2) goto fa::@3 to:fa::@12 fa::@12: scope:[fa] from fa::@2 - [71] (byte) bc#107 ? ++ (byte) bc#41 - [72] (byte~) bc#176 ? (byte) bc#107 + [71] (byte) bc#107 ← ++ (byte) bc#41 + [72] (byte~) bc#176 ← (byte) bc#107 [73] call fb to:fa::@3 fa::@3: scope:[fa] from fa::@12 fa::@2 - [74] (byte) be#110 ? phi( fa::@2/(byte) be#109 fa::@12/(byte) be#35 ) - [74] (byte) bd#141 ? phi( fa::@2/(byte) bd#140 fa::@12/(byte) bd#35 ) - [74] (byte) bc#42 ? phi( fa::@2/(byte) bc#41 fa::@12/(byte) bc#107 ) + [74] (byte) be#110 ← phi( fa::@2/(byte) be#109 fa::@12/(byte) be#35 ) + [74] (byte) bd#141 ← phi( fa::@2/(byte) bd#140 fa::@12/(byte) bd#35 ) + [74] (byte) bc#42 ← phi( fa::@2/(byte) bc#41 fa::@12/(byte) bc#107 ) [75] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 3) goto fa::@4 to:fa::@13 fa::@13: scope:[fa] from fa::@3 - [76] (byte) bc#108 ? ++ (byte) bc#42 - [77] (byte~) bc#177 ? (byte) bc#108 + [76] (byte) bc#108 ← ++ (byte) bc#42 + [77] (byte~) bc#177 ← (byte) bc#108 [78] call fb to:fa::@4 fa::@4: scope:[fa] from fa::@13 fa::@3 - [79] (byte) be#111 ? phi( fa::@13/(byte) be#35 fa::@3/(byte) be#110 ) - [79] (byte) bd#142 ? phi( fa::@13/(byte) bd#35 fa::@3/(byte) bd#141 ) - [79] (byte) bc#43 ? phi( fa::@13/(byte) bc#108 fa::@3/(byte) bc#42 ) + [79] (byte) be#111 ← phi( fa::@13/(byte) be#35 fa::@3/(byte) be#110 ) + [79] (byte) bd#142 ← phi( fa::@13/(byte) bd#35 fa::@3/(byte) bd#141 ) + [79] (byte) bc#43 ← phi( fa::@13/(byte) bc#108 fa::@3/(byte) bc#42 ) [80] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto fa::@5 to:fa::@14 fa::@14: scope:[fa] from fa::@4 - [81] (byte) bc#109 ? ++ (byte) bc#43 - [82] (byte~) bc#178 ? (byte) bc#109 + [81] (byte) bc#109 ← ++ (byte) bc#43 + [82] (byte~) bc#178 ← (byte) bc#109 [83] call fb to:fa::@5 fa::@5: scope:[fa] from fa::@14 fa::@4 - [84] (byte) be#112 ? phi( fa::@14/(byte) be#35 fa::@4/(byte) be#111 ) - [84] (byte) bd#100 ? phi( fa::@14/(byte) bd#35 fa::@4/(byte) bd#142 ) - [84] (byte) bc#44 ? phi( fa::@14/(byte) bc#109 fa::@4/(byte) bc#43 ) + [84] (byte) be#112 ← phi( fa::@14/(byte) be#35 fa::@4/(byte) be#111 ) + [84] (byte) bd#100 ← phi( fa::@14/(byte) bd#35 fa::@4/(byte) bd#142 ) + [84] (byte) bc#44 ← phi( fa::@14/(byte) bc#109 fa::@4/(byte) bc#43 ) [85] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto fa::@6 to:fa::@15 fa::@15: scope:[fa] from fa::@5 - [86] (byte) bc#110 ? ++ (byte) bc#44 - [87] (byte~) bc#179 ? (byte) bc#110 + [86] (byte) bc#110 ← ++ (byte) bc#44 + [87] (byte~) bc#179 ← (byte) bc#110 [88] call fb to:fa::@6 fa::@6: scope:[fa] from fa::@15 fa::@5 - [89] (byte) be#113 ? phi( fa::@15/(byte) be#35 fa::@5/(byte) be#112 ) - [89] (byte) bd#101 ? phi( fa::@15/(byte) bd#35 fa::@5/(byte) bd#100 ) - [89] (byte) bc#45 ? phi( fa::@15/(byte) bc#110 fa::@5/(byte) bc#44 ) + [89] (byte) be#113 ← phi( fa::@15/(byte) be#35 fa::@5/(byte) be#112 ) + [89] (byte) bd#101 ← phi( fa::@15/(byte) bd#35 fa::@5/(byte) bd#100 ) + [89] (byte) bc#45 ← phi( fa::@15/(byte) bc#110 fa::@5/(byte) bc#44 ) [90] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto fa::@7 to:fa::@16 fa::@16: scope:[fa] from fa::@6 - [91] (byte) bc#111 ? ++ (byte) bc#45 - [92] (byte~) bc#180 ? (byte) bc#111 + [91] (byte) bc#111 ← ++ (byte) bc#45 + [92] (byte~) bc#180 ← (byte) bc#111 [93] call fb to:fa::@7 fa::@7: scope:[fa] from fa::@16 fa::@6 - [94] (byte) be#114 ? phi( fa::@16/(byte) be#35 fa::@6/(byte) be#113 ) - [94] (byte) bd#102 ? phi( fa::@16/(byte) bd#35 fa::@6/(byte) bd#101 ) - [94] (byte) bc#46 ? phi( fa::@16/(byte) bc#111 fa::@6/(byte) bc#45 ) + [94] (byte) be#114 ← phi( fa::@16/(byte) be#35 fa::@6/(byte) be#113 ) + [94] (byte) bd#102 ← phi( fa::@16/(byte) bd#35 fa::@6/(byte) bd#101 ) + [94] (byte) bc#46 ← phi( fa::@16/(byte) bc#111 fa::@6/(byte) bc#45 ) [95] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto fa::@8 to:fa::@17 fa::@17: scope:[fa] from fa::@7 - [96] (byte) bc#112 ? ++ (byte) bc#46 - [97] (byte~) bc#181 ? (byte) bc#112 + [96] (byte) bc#112 ← ++ (byte) bc#46 + [97] (byte~) bc#181 ← (byte) bc#112 [98] call fb to:fa::@8 fa::@8: scope:[fa] from fa::@17 fa::@7 - [99] (byte) be#115 ? phi( fa::@17/(byte) be#35 fa::@7/(byte) be#114 ) - [99] (byte) bd#103 ? phi( fa::@17/(byte) bd#35 fa::@7/(byte) bd#102 ) - [99] (byte) bc#47 ? phi( fa::@17/(byte) bc#112 fa::@7/(byte) bc#46 ) + [99] (byte) be#115 ← phi( fa::@17/(byte) be#35 fa::@7/(byte) be#114 ) + [99] (byte) bd#103 ← phi( fa::@17/(byte) bd#35 fa::@7/(byte) bd#102 ) + [99] (byte) bc#47 ← phi( fa::@17/(byte) bc#112 fa::@7/(byte) bc#46 ) [100] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto fa::@9 to:fa::@18 fa::@18: scope:[fa] from fa::@8 - [101] (byte) bc#123 ? ++ (byte) bc#47 - [102] (byte~) bc#182 ? (byte) bc#123 + [101] (byte) bc#123 ← ++ (byte) bc#47 + [102] (byte~) bc#182 ← (byte) bc#123 [103] call fb to:fa::@9 fa::@9: scope:[fa] from fa::@18 fa::@8 - [104] (byte) be#116 ? phi( fa::@18/(byte) be#35 fa::@8/(byte) be#115 ) - [104] (byte) bd#104 ? phi( fa::@18/(byte) bd#35 fa::@8/(byte) bd#103 ) - [104] (byte) bc#113 ? phi( fa::@18/(byte) bc#123 fa::@8/(byte) bc#47 ) + [104] (byte) be#116 ← phi( fa::@18/(byte) be#35 fa::@8/(byte) be#115 ) + [104] (byte) bd#104 ← phi( fa::@18/(byte) bd#35 fa::@8/(byte) bd#103 ) + [104] (byte) bc#113 ← phi( fa::@18/(byte) bc#123 fa::@8/(byte) bc#47 ) [105] if((byte) bb#27!=(byte/signed byte/word/signed word/dword/signed dword) 9) goto fa::@return to:fa::@19 fa::@19: scope:[fa] from fa::@9 @@ -2961,105 +2961,105 @@ fa::@19: scope:[fa] from fa::@9 [107] call fb to:fa::@return fa::@return: scope:[fa] from fa::@19 fa::@9 - [108] (byte) be#24 ? phi( fa::@9/(byte) be#116 fa::@19/(byte) be#35 ) - [108] (byte) bd#24 ? phi( fa::@9/(byte) bd#104 fa::@19/(byte) bd#35 ) - [108] (byte) bc#24 ? phi( fa::@9/(byte) bc#113 fa::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [108] (byte) be#24 ← phi( fa::@9/(byte) be#116 fa::@19/(byte) be#35 ) + [108] (byte) bd#24 ← phi( fa::@9/(byte) bd#104 fa::@19/(byte) bd#35 ) + [108] (byte) bc#24 ← phi( fa::@9/(byte) bc#113 fa::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [109] return to:@return fb: scope:[fb] from fa::@10 fa::@11 fa::@12 fa::@13 fa::@14 fa::@15 fa::@16 fa::@17 fa::@18 fa::@19 - [110] (byte) be#118 ? phi( fa::@10/(byte) be#107 fa::@11/(byte) be#108 fa::@12/(byte) be#109 fa::@13/(byte) be#110 fa::@14/(byte) be#111 fa::@15/(byte) be#112 fa::@16/(byte) be#113 fa::@17/(byte) be#114 fa::@18/(byte) be#115 fa::@19/(byte) be#116 ) - [110] (byte) bd#106 ? phi( fa::@10/(byte) bd#138 fa::@11/(byte) bd#139 fa::@12/(byte) bd#140 fa::@13/(byte) bd#141 fa::@14/(byte) bd#142 fa::@15/(byte) bd#100 fa::@16/(byte) bd#101 fa::@17/(byte) bd#102 fa::@18/(byte) bd#103 fa::@19/(byte) bd#104 ) - [110] (byte) bc#114 ? phi( fa::@10/(byte~) bc#174 fa::@11/(byte~) bc#175 fa::@12/(byte~) bc#176 fa::@13/(byte~) bc#177 fa::@14/(byte~) bc#178 fa::@15/(byte~) bc#179 fa::@16/(byte~) bc#180 fa::@17/(byte~) bc#181 fa::@18/(byte~) bc#182 fa::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [110] (byte) be#118 ← phi( fa::@10/(byte) be#107 fa::@11/(byte) be#108 fa::@12/(byte) be#109 fa::@13/(byte) be#110 fa::@14/(byte) be#111 fa::@15/(byte) be#112 fa::@16/(byte) be#113 fa::@17/(byte) be#114 fa::@18/(byte) be#115 fa::@19/(byte) be#116 ) + [110] (byte) bd#106 ← phi( fa::@10/(byte) bd#138 fa::@11/(byte) bd#139 fa::@12/(byte) bd#140 fa::@13/(byte) bd#141 fa::@14/(byte) bd#142 fa::@15/(byte) bd#100 fa::@16/(byte) bd#101 fa::@17/(byte) bd#102 fa::@18/(byte) bd#103 fa::@19/(byte) bd#104 ) + [110] (byte) bc#114 ← phi( fa::@10/(byte~) bc#174 fa::@11/(byte~) bc#175 fa::@12/(byte~) bc#176 fa::@13/(byte~) bc#177 fa::@14/(byte~) bc#178 fa::@15/(byte~) bc#179 fa::@16/(byte~) bc#180 fa::@17/(byte~) bc#181 fa::@18/(byte~) bc#182 fa::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [111] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto fb::@1 to:fb::@10 fb::@10: scope:[fb] from fb - [112] (byte) bd#148 ? ++ (byte) bd#106 - [113] (byte~) bd#238 ? (byte) bd#148 + [112] (byte) bd#148 ← ++ (byte) bd#106 + [113] (byte~) bd#238 ← (byte) bd#148 [114] call fc to:fb::@1 fb::@1: scope:[fb] from fb fb::@10 - [115] (byte) be#119 ? phi( fb/(byte) be#118 fb::@10/(byte) be#46 ) - [115] (byte) bd#107 ? phi( fb/(byte) bd#106 fb::@10/(byte) bd#148 ) + [115] (byte) be#119 ← phi( fb/(byte) be#118 fb::@10/(byte) be#46 ) + [115] (byte) bd#107 ← phi( fb/(byte) bd#106 fb::@10/(byte) bd#148 ) [116] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto fb::@2 to:fb::@11 fb::@11: scope:[fb] from fb::@1 - [117] (byte) bd#149 ? ++ (byte) bd#107 - [118] (byte~) bd#239 ? (byte) bd#149 + [117] (byte) bd#149 ← ++ (byte) bd#107 + [118] (byte~) bd#239 ← (byte) bd#149 [119] call fc to:fb::@2 fb::@2: scope:[fb] from fb::@1 fb::@11 - [120] (byte) be#120 ? phi( fb::@1/(byte) be#119 fb::@11/(byte) be#46 ) - [120] (byte) bd#108 ? phi( fb::@1/(byte) bd#107 fb::@11/(byte) bd#149 ) + [120] (byte) be#120 ← phi( fb::@1/(byte) be#119 fb::@11/(byte) be#46 ) + [120] (byte) bd#108 ← phi( fb::@1/(byte) bd#107 fb::@11/(byte) bd#149 ) [121] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 2) goto fb::@3 to:fb::@12 fb::@12: scope:[fb] from fb::@2 - [122] (byte) bd#150 ? ++ (byte) bd#108 - [123] (byte~) bd#240 ? (byte) bd#150 + [122] (byte) bd#150 ← ++ (byte) bd#108 + [123] (byte~) bd#240 ← (byte) bd#150 [124] call fc to:fb::@3 fb::@3: scope:[fb] from fb::@12 fb::@2 - [125] (byte) be#121 ? phi( fb::@2/(byte) be#120 fb::@12/(byte) be#46 ) - [125] (byte) bd#109 ? phi( fb::@2/(byte) bd#108 fb::@12/(byte) bd#150 ) + [125] (byte) be#121 ← phi( fb::@2/(byte) be#120 fb::@12/(byte) be#46 ) + [125] (byte) bd#109 ← phi( fb::@2/(byte) bd#108 fb::@12/(byte) bd#150 ) [126] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 3) goto fb::@4 to:fb::@13 fb::@13: scope:[fb] from fb::@3 - [127] (byte) bd#151 ? ++ (byte) bd#109 - [128] (byte~) bd#241 ? (byte) bd#151 + [127] (byte) bd#151 ← ++ (byte) bd#109 + [128] (byte~) bd#241 ← (byte) bd#151 [129] call fc to:fb::@4 fb::@4: scope:[fb] from fb::@13 fb::@3 - [130] (byte) be#122 ? phi( fb::@13/(byte) be#46 fb::@3/(byte) be#121 ) - [130] (byte) bd#110 ? phi( fb::@13/(byte) bd#151 fb::@3/(byte) bd#109 ) + [130] (byte) be#122 ← phi( fb::@13/(byte) be#46 fb::@3/(byte) be#121 ) + [130] (byte) bd#110 ← phi( fb::@13/(byte) bd#151 fb::@3/(byte) bd#109 ) [131] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto fb::@5 to:fb::@14 fb::@14: scope:[fb] from fb::@4 - [132] (byte) bd#152 ? ++ (byte) bd#110 - [133] (byte~) bd#242 ? (byte) bd#152 + [132] (byte) bd#152 ← ++ (byte) bd#110 + [133] (byte~) bd#242 ← (byte) bd#152 [134] call fc to:fb::@5 fb::@5: scope:[fb] from fb::@14 fb::@4 - [135] (byte) be#123 ? phi( fb::@14/(byte) be#46 fb::@4/(byte) be#122 ) - [135] (byte) bd#111 ? phi( fb::@14/(byte) bd#152 fb::@4/(byte) bd#110 ) + [135] (byte) be#123 ← phi( fb::@14/(byte) be#46 fb::@4/(byte) be#122 ) + [135] (byte) bd#111 ← phi( fb::@14/(byte) bd#152 fb::@4/(byte) bd#110 ) [136] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto fb::@6 to:fb::@15 fb::@15: scope:[fb] from fb::@5 - [137] (byte) bd#153 ? ++ (byte) bd#111 - [138] (byte~) bd#243 ? (byte) bd#153 + [137] (byte) bd#153 ← ++ (byte) bd#111 + [138] (byte~) bd#243 ← (byte) bd#153 [139] call fc to:fb::@6 fb::@6: scope:[fb] from fb::@15 fb::@5 - [140] (byte) be#124 ? phi( fb::@15/(byte) be#46 fb::@5/(byte) be#123 ) - [140] (byte) bd#112 ? phi( fb::@15/(byte) bd#153 fb::@5/(byte) bd#111 ) + [140] (byte) be#124 ← phi( fb::@15/(byte) be#46 fb::@5/(byte) be#123 ) + [140] (byte) bd#112 ← phi( fb::@15/(byte) bd#153 fb::@5/(byte) bd#111 ) [141] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto fb::@7 to:fb::@16 fb::@16: scope:[fb] from fb::@6 - [142] (byte) bd#154 ? ++ (byte) bd#112 - [143] (byte~) bd#244 ? (byte) bd#154 + [142] (byte) bd#154 ← ++ (byte) bd#112 + [143] (byte~) bd#244 ← (byte) bd#154 [144] call fc to:fb::@7 fb::@7: scope:[fb] from fb::@16 fb::@6 - [145] (byte) be#125 ? phi( fb::@16/(byte) be#46 fb::@6/(byte) be#124 ) - [145] (byte) bd#113 ? phi( fb::@16/(byte) bd#154 fb::@6/(byte) bd#112 ) + [145] (byte) be#125 ← phi( fb::@16/(byte) be#46 fb::@6/(byte) be#124 ) + [145] (byte) bd#113 ← phi( fb::@16/(byte) bd#154 fb::@6/(byte) bd#112 ) [146] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto fb::@8 to:fb::@17 fb::@17: scope:[fb] from fb::@7 - [147] (byte) bd#155 ? ++ (byte) bd#113 - [148] (byte~) bd#245 ? (byte) bd#155 + [147] (byte) bd#155 ← ++ (byte) bd#113 + [148] (byte~) bd#245 ← (byte) bd#155 [149] call fc to:fb::@8 fb::@8: scope:[fb] from fb::@17 fb::@7 - [150] (byte) be#126 ? phi( fb::@17/(byte) be#46 fb::@7/(byte) be#125 ) - [150] (byte) bd#114 ? phi( fb::@17/(byte) bd#155 fb::@7/(byte) bd#113 ) + [150] (byte) be#126 ← phi( fb::@17/(byte) be#46 fb::@7/(byte) be#125 ) + [150] (byte) bd#114 ← phi( fb::@17/(byte) bd#155 fb::@7/(byte) bd#113 ) [151] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto fb::@9 to:fb::@18 fb::@18: scope:[fb] from fb::@8 - [152] (byte) bd#157 ? ++ (byte) bd#114 - [153] (byte~) bd#246 ? (byte) bd#157 + [152] (byte) bd#157 ← ++ (byte) bd#114 + [153] (byte~) bd#246 ← (byte) bd#157 [154] call fc to:fb::@9 fb::@9: scope:[fb] from fb::@18 fb::@8 - [155] (byte) be#127 ? phi( fb::@18/(byte) be#46 fb::@8/(byte) be#126 ) - [155] (byte) bd#115 ? phi( fb::@18/(byte) bd#157 fb::@8/(byte) bd#114 ) + [155] (byte) be#127 ← phi( fb::@18/(byte) be#46 fb::@8/(byte) be#126 ) + [155] (byte) bd#115 ← phi( fb::@18/(byte) bd#157 fb::@8/(byte) bd#114 ) [156] if((byte) bc#114!=(byte/signed byte/word/signed word/dword/signed dword) 9) goto fb::@return to:fb::@19 fb::@19: scope:[fb] from fb::@9 @@ -3067,80 +3067,80 @@ fb::@19: scope:[fb] from fb::@9 [158] call fc to:fb::@return fb::@return: scope:[fb] from fb::@19 fb::@9 - [159] (byte) be#35 ? phi( fb::@9/(byte) be#127 fb::@19/(byte) be#46 ) - [159] (byte) bd#35 ? phi( fb::@9/(byte) bd#115 fb::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [159] (byte) be#35 ← phi( fb::@9/(byte) be#127 fb::@19/(byte) be#46 ) + [159] (byte) bd#35 ← phi( fb::@9/(byte) bd#115 fb::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [160] return to:@return fc: scope:[fc] from fb::@10 fb::@11 fb::@12 fb::@13 fb::@14 fb::@15 fb::@16 fb::@17 fb::@18 fb::@19 - [161] (byte) be#129 ? phi( fb::@10/(byte) be#118 fb::@11/(byte) be#119 fb::@12/(byte) be#120 fb::@13/(byte) be#121 fb::@14/(byte) be#122 fb::@15/(byte) be#123 fb::@16/(byte) be#124 fb::@17/(byte) be#125 fb::@18/(byte) be#126 fb::@19/(byte) be#127 ) - [161] (byte) bd#117 ? phi( fb::@10/(byte~) bd#238 fb::@11/(byte~) bd#239 fb::@12/(byte~) bd#240 fb::@13/(byte~) bd#241 fb::@14/(byte~) bd#242 fb::@15/(byte~) bd#243 fb::@16/(byte~) bd#244 fb::@17/(byte~) bd#245 fb::@18/(byte~) bd#246 fb::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [161] (byte) be#129 ← phi( fb::@10/(byte) be#118 fb::@11/(byte) be#119 fb::@12/(byte) be#120 fb::@13/(byte) be#121 fb::@14/(byte) be#122 fb::@15/(byte) be#123 fb::@16/(byte) be#124 fb::@17/(byte) be#125 fb::@18/(byte) be#126 fb::@19/(byte) be#127 ) + [161] (byte) bd#117 ← phi( fb::@10/(byte~) bd#238 fb::@11/(byte~) bd#239 fb::@12/(byte~) bd#240 fb::@13/(byte~) bd#241 fb::@14/(byte~) bd#242 fb::@15/(byte~) bd#243 fb::@16/(byte~) bd#244 fb::@17/(byte~) bd#245 fb::@18/(byte~) bd#246 fb::@19/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [162] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto fc::@1 to:fc::@10 fc::@10: scope:[fc] from fc - [163] (byte) be#36 ? ++ (byte) be#129 + [163] (byte) be#36 ← ++ (byte) be#129 to:fc::@1 fc::@1: scope:[fc] from fc fc::@10 - [164] (byte) be#130 ? phi( fc/(byte) be#129 fc::@10/(byte) be#36 ) + [164] (byte) be#130 ← phi( fc/(byte) be#129 fc::@10/(byte) be#36 ) [165] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 1) goto fc::@2 to:fc::@11 fc::@11: scope:[fc] from fc::@1 - [166] (byte) be#37 ? ++ (byte) be#130 + [166] (byte) be#37 ← ++ (byte) be#130 to:fc::@2 fc::@2: scope:[fc] from fc::@1 fc::@11 - [167] (byte) be#131 ? phi( fc::@1/(byte) be#130 fc::@11/(byte) be#37 ) + [167] (byte) be#131 ← phi( fc::@1/(byte) be#130 fc::@11/(byte) be#37 ) [168] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 2) goto fc::@3 to:fc::@12 fc::@12: scope:[fc] from fc::@2 - [169] (byte) be#38 ? ++ (byte) be#131 + [169] (byte) be#38 ← ++ (byte) be#131 to:fc::@3 fc::@3: scope:[fc] from fc::@12 fc::@2 - [170] (byte) be#132 ? phi( fc::@12/(byte) be#38 fc::@2/(byte) be#131 ) + [170] (byte) be#132 ← phi( fc::@12/(byte) be#38 fc::@2/(byte) be#131 ) [171] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 3) goto fc::@4 to:fc::@13 fc::@13: scope:[fc] from fc::@3 - [172] (byte) be#39 ? ++ (byte) be#132 + [172] (byte) be#39 ← ++ (byte) be#132 to:fc::@4 fc::@4: scope:[fc] from fc::@13 fc::@3 - [173] (byte) be#133 ? phi( fc::@13/(byte) be#39 fc::@3/(byte) be#132 ) + [173] (byte) be#133 ← phi( fc::@13/(byte) be#39 fc::@3/(byte) be#132 ) [174] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 4) goto fc::@5 to:fc::@14 fc::@14: scope:[fc] from fc::@4 - [175] (byte) be#40 ? ++ (byte) be#133 + [175] (byte) be#40 ← ++ (byte) be#133 to:fc::@5 fc::@5: scope:[fc] from fc::@14 fc::@4 - [176] (byte) be#134 ? phi( fc::@14/(byte) be#40 fc::@4/(byte) be#133 ) + [176] (byte) be#134 ← phi( fc::@14/(byte) be#40 fc::@4/(byte) be#133 ) [177] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 5) goto fc::@6 to:fc::@15 fc::@15: scope:[fc] from fc::@5 - [178] (byte) be#41 ? ++ (byte) be#134 + [178] (byte) be#41 ← ++ (byte) be#134 to:fc::@6 fc::@6: scope:[fc] from fc::@15 fc::@5 - [179] (byte) be#135 ? phi( fc::@15/(byte) be#41 fc::@5/(byte) be#134 ) + [179] (byte) be#135 ← phi( fc::@15/(byte) be#41 fc::@5/(byte) be#134 ) [180] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto fc::@7 to:fc::@16 fc::@16: scope:[fc] from fc::@6 - [181] (byte) be#42 ? ++ (byte) be#135 + [181] (byte) be#42 ← ++ (byte) be#135 to:fc::@7 fc::@7: scope:[fc] from fc::@16 fc::@6 - [182] (byte) be#136 ? phi( fc::@16/(byte) be#42 fc::@6/(byte) be#135 ) + [182] (byte) be#136 ← phi( fc::@16/(byte) be#42 fc::@6/(byte) be#135 ) [183] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 7) goto fc::@8 to:fc::@17 fc::@17: scope:[fc] from fc::@7 - [184] (byte) be#43 ? ++ (byte) be#136 + [184] (byte) be#43 ← ++ (byte) be#136 to:fc::@8 fc::@8: scope:[fc] from fc::@17 fc::@7 - [185] (byte) be#137 ? phi( fc::@17/(byte) be#43 fc::@7/(byte) be#136 ) + [185] (byte) be#137 ← phi( fc::@17/(byte) be#43 fc::@7/(byte) be#136 ) [186] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto fc::@9 to:fc::@18 fc::@18: scope:[fc] from fc::@8 - [187] (byte) be#44 ? ++ (byte) be#137 + [187] (byte) be#44 ← ++ (byte) be#137 to:fc::@9 fc::@9: scope:[fc] from fc::@18 fc::@8 - [188] (byte) be#138 ? phi( fc::@18/(byte) be#44 fc::@8/(byte) be#137 ) + [188] (byte) be#138 ← phi( fc::@18/(byte) be#44 fc::@8/(byte) be#137 ) [189] if((byte) bd#117!=(byte/signed byte/word/signed word/dword/signed dword) 9) goto fc::@19 to:fc::@return fc::@return: scope:[fc] from fc::@19 fc::@9 - [190] (byte) be#46 ? phi( fc::@19/(byte) be#138 fc::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [190] (byte) be#46 ← phi( fc::@19/(byte) be#138 fc::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [191] return to:@return fc::@19: scope:[fc] from fc::@9 @@ -3455,7 +3455,7 @@ main: { jmp b3 //SEG21 main::@3 b3: - //SEG22 [8] (byte) ba#1 ? ++ (byte) ba#17 -- vbuz1=_inc_vbuz1 + //SEG22 [8] (byte) ba#1 ← ++ (byte) ba#17 -- vbuz1=_inc_vbuz1 inc ba //SEG23 [5] phi from main::@3 to main::@1 [phi:main::@3->main::@1] b1_from_b3: @@ -3475,9 +3475,9 @@ f0: { jmp b10 //SEG31 f0::@10 b10: - //SEG32 [10] (byte) bb#3 ? ++ (byte) bb#16 -- vbuz1=_inc_vbuz1 + //SEG32 [10] (byte) bb#3 ← ++ (byte) bb#16 -- vbuz1=_inc_vbuz1 inc bb - //SEG33 [11] (byte~) bb#101 ? (byte) bb#3 -- vbuz1=vbuz2 + //SEG33 [11] (byte~) bb#101 ← (byte) bb#3 -- vbuz1=vbuz2 lda bb sta bb_101 //SEG34 [12] call fa @@ -3505,9 +3505,9 @@ f0: { jmp b11 //SEG47 f0::@11 b11: - //SEG48 [15] (byte) bb#4 ? ++ (byte) bb#18 -- vbuz1=_inc_vbuz1 + //SEG48 [15] (byte) bb#4 ← ++ (byte) bb#18 -- vbuz1=_inc_vbuz1 inc bb - //SEG49 [16] (byte~) bb#102 ? (byte) bb#4 -- vbuz1=vbuz2 + //SEG49 [16] (byte~) bb#102 ← (byte) bb#4 -- vbuz1=vbuz2 lda bb sta bb_102 //SEG50 [17] call fa @@ -3535,9 +3535,9 @@ f0: { jmp b12 //SEG63 f0::@12 b12: - //SEG64 [20] (byte) bb#5 ? ++ (byte) bb#19 -- vbuz1=_inc_vbuz1 + //SEG64 [20] (byte) bb#5 ← ++ (byte) bb#19 -- vbuz1=_inc_vbuz1 inc bb - //SEG65 [21] (byte~) bb#103 ? (byte) bb#5 -- vbuz1=vbuz2 + //SEG65 [21] (byte~) bb#103 ← (byte) bb#5 -- vbuz1=vbuz2 lda bb sta bb_103 //SEG66 [22] call fa @@ -3565,9 +3565,9 @@ f0: { jmp b13 //SEG79 f0::@13 b13: - //SEG80 [25] (byte) bb#6 ? ++ (byte) bb#20 -- vbuz1=_inc_vbuz1 + //SEG80 [25] (byte) bb#6 ← ++ (byte) bb#20 -- vbuz1=_inc_vbuz1 inc bb - //SEG81 [26] (byte~) bb#104 ? (byte) bb#6 -- vbuz1=vbuz2 + //SEG81 [26] (byte~) bb#104 ← (byte) bb#6 -- vbuz1=vbuz2 lda bb sta bb_104 //SEG82 [27] call fa @@ -3595,9 +3595,9 @@ f0: { jmp b14 //SEG95 f0::@14 b14: - //SEG96 [30] (byte) bb#66 ? ++ (byte) bb#21 -- vbuz1=_inc_vbuz1 + //SEG96 [30] (byte) bb#66 ← ++ (byte) bb#21 -- vbuz1=_inc_vbuz1 inc bb - //SEG97 [31] (byte~) bb#105 ? (byte) bb#66 -- vbuz1=vbuz2 + //SEG97 [31] (byte~) bb#105 ← (byte) bb#66 -- vbuz1=vbuz2 lda bb sta bb_105 //SEG98 [32] call fa @@ -3625,9 +3625,9 @@ f0: { jmp b15 //SEG111 f0::@15 b15: - //SEG112 [35] (byte) bb#67 ? ++ (byte) bb#22 -- vbuz1=_inc_vbuz1 + //SEG112 [35] (byte) bb#67 ← ++ (byte) bb#22 -- vbuz1=_inc_vbuz1 inc bb - //SEG113 [36] (byte~) bb#106 ? (byte) bb#67 -- vbuz1=vbuz2 + //SEG113 [36] (byte~) bb#106 ← (byte) bb#67 -- vbuz1=vbuz2 lda bb sta bb_106 //SEG114 [37] call fa @@ -3655,9 +3655,9 @@ f0: { jmp b16 //SEG127 f0::@16 b16: - //SEG128 [40] (byte) bb#68 ? ++ (byte) bb#23 -- vbuz1=_inc_vbuz1 + //SEG128 [40] (byte) bb#68 ← ++ (byte) bb#23 -- vbuz1=_inc_vbuz1 inc bb - //SEG129 [41] (byte~) bb#107 ? (byte) bb#68 -- vbuz1=vbuz2 + //SEG129 [41] (byte~) bb#107 ← (byte) bb#68 -- vbuz1=vbuz2 lda bb sta bb_107 //SEG130 [42] call fa @@ -3685,9 +3685,9 @@ f0: { jmp b17 //SEG143 f0::@17 b17: - //SEG144 [45] (byte) bb#10 ? ++ (byte) bb#24 -- vbuz1=_inc_vbuz1 + //SEG144 [45] (byte) bb#10 ← ++ (byte) bb#24 -- vbuz1=_inc_vbuz1 inc bb - //SEG145 [46] (byte~) bb#108 ? (byte) bb#10 -- vbuz1=vbuz2 + //SEG145 [46] (byte~) bb#108 ← (byte) bb#10 -- vbuz1=vbuz2 lda bb sta bb_108 //SEG146 [47] call fa @@ -3715,9 +3715,9 @@ f0: { jmp b18 //SEG159 f0::@18 b18: - //SEG160 [50] (byte) bb#11 ? ++ (byte) bb#25 -- vbuz1=_inc_vbuz1 + //SEG160 [50] (byte) bb#11 ← ++ (byte) bb#25 -- vbuz1=_inc_vbuz1 inc bb - //SEG161 [51] (byte~) bb#109 ? (byte) bb#11 -- vbuz1=vbuz2 + //SEG161 [51] (byte~) bb#109 ← (byte) bb#11 -- vbuz1=vbuz2 lda bb sta bb_109 //SEG162 [52] call fa @@ -3787,9 +3787,9 @@ fa: { jmp b10 //SEG197 fa::@10 b10: - //SEG198 [61] (byte) bc#105 ? ++ (byte) bc#39 -- vbuz1=_inc_vbuz1 + //SEG198 [61] (byte) bc#105 ← ++ (byte) bc#39 -- vbuz1=_inc_vbuz1 inc bc - //SEG199 [62] (byte~) bc#174 ? (byte) bc#105 -- vbuz1=vbuz2 + //SEG199 [62] (byte~) bc#174 ← (byte) bc#105 -- vbuz1=vbuz2 lda bc sta bc_174 //SEG200 [63] call fb @@ -3815,9 +3815,9 @@ fa: { jmp b11 //SEG211 fa::@11 b11: - //SEG212 [66] (byte) bc#106 ? ++ (byte) bc#40 -- vbuz1=_inc_vbuz1 + //SEG212 [66] (byte) bc#106 ← ++ (byte) bc#40 -- vbuz1=_inc_vbuz1 inc bc - //SEG213 [67] (byte~) bc#175 ? (byte) bc#106 -- vbuz1=vbuz2 + //SEG213 [67] (byte~) bc#175 ← (byte) bc#106 -- vbuz1=vbuz2 lda bc sta bc_175 //SEG214 [68] call fb @@ -3843,9 +3843,9 @@ fa: { jmp b12 //SEG225 fa::@12 b12: - //SEG226 [71] (byte) bc#107 ? ++ (byte) bc#41 -- vbuz1=_inc_vbuz1 + //SEG226 [71] (byte) bc#107 ← ++ (byte) bc#41 -- vbuz1=_inc_vbuz1 inc bc - //SEG227 [72] (byte~) bc#176 ? (byte) bc#107 -- vbuz1=vbuz2 + //SEG227 [72] (byte~) bc#176 ← (byte) bc#107 -- vbuz1=vbuz2 lda bc sta bc_176 //SEG228 [73] call fb @@ -3871,9 +3871,9 @@ fa: { jmp b13 //SEG239 fa::@13 b13: - //SEG240 [76] (byte) bc#108 ? ++ (byte) bc#42 -- vbuz1=_inc_vbuz1 + //SEG240 [76] (byte) bc#108 ← ++ (byte) bc#42 -- vbuz1=_inc_vbuz1 inc bc - //SEG241 [77] (byte~) bc#177 ? (byte) bc#108 -- vbuz1=vbuz2 + //SEG241 [77] (byte~) bc#177 ← (byte) bc#108 -- vbuz1=vbuz2 lda bc sta bc_177 //SEG242 [78] call fb @@ -3899,9 +3899,9 @@ fa: { jmp b14 //SEG253 fa::@14 b14: - //SEG254 [81] (byte) bc#109 ? ++ (byte) bc#43 -- vbuz1=_inc_vbuz1 + //SEG254 [81] (byte) bc#109 ← ++ (byte) bc#43 -- vbuz1=_inc_vbuz1 inc bc - //SEG255 [82] (byte~) bc#178 ? (byte) bc#109 -- vbuz1=vbuz2 + //SEG255 [82] (byte~) bc#178 ← (byte) bc#109 -- vbuz1=vbuz2 lda bc sta bc_178 //SEG256 [83] call fb @@ -3927,9 +3927,9 @@ fa: { jmp b15 //SEG267 fa::@15 b15: - //SEG268 [86] (byte) bc#110 ? ++ (byte) bc#44 -- vbuz1=_inc_vbuz1 + //SEG268 [86] (byte) bc#110 ← ++ (byte) bc#44 -- vbuz1=_inc_vbuz1 inc bc - //SEG269 [87] (byte~) bc#179 ? (byte) bc#110 -- vbuz1=vbuz2 + //SEG269 [87] (byte~) bc#179 ← (byte) bc#110 -- vbuz1=vbuz2 lda bc sta bc_179 //SEG270 [88] call fb @@ -3955,9 +3955,9 @@ fa: { jmp b16 //SEG281 fa::@16 b16: - //SEG282 [91] (byte) bc#111 ? ++ (byte) bc#45 -- vbuz1=_inc_vbuz1 + //SEG282 [91] (byte) bc#111 ← ++ (byte) bc#45 -- vbuz1=_inc_vbuz1 inc bc - //SEG283 [92] (byte~) bc#180 ? (byte) bc#111 -- vbuz1=vbuz2 + //SEG283 [92] (byte~) bc#180 ← (byte) bc#111 -- vbuz1=vbuz2 lda bc sta bc_180 //SEG284 [93] call fb @@ -3983,9 +3983,9 @@ fa: { jmp b17 //SEG295 fa::@17 b17: - //SEG296 [96] (byte) bc#112 ? ++ (byte) bc#46 -- vbuz1=_inc_vbuz1 + //SEG296 [96] (byte) bc#112 ← ++ (byte) bc#46 -- vbuz1=_inc_vbuz1 inc bc - //SEG297 [97] (byte~) bc#181 ? (byte) bc#112 -- vbuz1=vbuz2 + //SEG297 [97] (byte~) bc#181 ← (byte) bc#112 -- vbuz1=vbuz2 lda bc sta bc_181 //SEG298 [98] call fb @@ -4011,9 +4011,9 @@ fa: { jmp b18 //SEG309 fa::@18 b18: - //SEG310 [101] (byte) bc#123 ? ++ (byte) bc#47 -- vbuz1=_inc_vbuz1 + //SEG310 [101] (byte) bc#123 ← ++ (byte) bc#47 -- vbuz1=_inc_vbuz1 inc bc - //SEG311 [102] (byte~) bc#182 ? (byte) bc#123 -- vbuz1=vbuz2 + //SEG311 [102] (byte~) bc#182 ← (byte) bc#123 -- vbuz1=vbuz2 lda bc sta bc_182 //SEG312 [103] call fb @@ -4078,9 +4078,9 @@ fb: { jmp b10 //SEG342 fb::@10 b10: - //SEG343 [112] (byte) bd#148 ? ++ (byte) bd#106 -- vbuz1=_inc_vbuz1 + //SEG343 [112] (byte) bd#148 ← ++ (byte) bd#106 -- vbuz1=_inc_vbuz1 inc bd - //SEG344 [113] (byte~) bd#238 ? (byte) bd#148 -- vbuz1=vbuz2 + //SEG344 [113] (byte~) bd#238 ← (byte) bd#148 -- vbuz1=vbuz2 lda bd sta bd_238 //SEG345 [114] call fc @@ -4104,9 +4104,9 @@ fb: { jmp b11 //SEG354 fb::@11 b11: - //SEG355 [117] (byte) bd#149 ? ++ (byte) bd#107 -- vbuz1=_inc_vbuz1 + //SEG355 [117] (byte) bd#149 ← ++ (byte) bd#107 -- vbuz1=_inc_vbuz1 inc bd - //SEG356 [118] (byte~) bd#239 ? (byte) bd#149 -- vbuz1=vbuz2 + //SEG356 [118] (byte~) bd#239 ← (byte) bd#149 -- vbuz1=vbuz2 lda bd sta bd_239 //SEG357 [119] call fc @@ -4130,9 +4130,9 @@ fb: { jmp b12 //SEG366 fb::@12 b12: - //SEG367 [122] (byte) bd#150 ? ++ (byte) bd#108 -- vbuz1=_inc_vbuz1 + //SEG367 [122] (byte) bd#150 ← ++ (byte) bd#108 -- vbuz1=_inc_vbuz1 inc bd - //SEG368 [123] (byte~) bd#240 ? (byte) bd#150 -- vbuz1=vbuz2 + //SEG368 [123] (byte~) bd#240 ← (byte) bd#150 -- vbuz1=vbuz2 lda bd sta bd_240 //SEG369 [124] call fc @@ -4156,9 +4156,9 @@ fb: { jmp b13 //SEG378 fb::@13 b13: - //SEG379 [127] (byte) bd#151 ? ++ (byte) bd#109 -- vbuz1=_inc_vbuz1 + //SEG379 [127] (byte) bd#151 ← ++ (byte) bd#109 -- vbuz1=_inc_vbuz1 inc bd - //SEG380 [128] (byte~) bd#241 ? (byte) bd#151 -- vbuz1=vbuz2 + //SEG380 [128] (byte~) bd#241 ← (byte) bd#151 -- vbuz1=vbuz2 lda bd sta bd_241 //SEG381 [129] call fc @@ -4182,9 +4182,9 @@ fb: { jmp b14 //SEG390 fb::@14 b14: - //SEG391 [132] (byte) bd#152 ? ++ (byte) bd#110 -- vbuz1=_inc_vbuz1 + //SEG391 [132] (byte) bd#152 ← ++ (byte) bd#110 -- vbuz1=_inc_vbuz1 inc bd - //SEG392 [133] (byte~) bd#242 ? (byte) bd#152 -- vbuz1=vbuz2 + //SEG392 [133] (byte~) bd#242 ← (byte) bd#152 -- vbuz1=vbuz2 lda bd sta bd_242 //SEG393 [134] call fc @@ -4208,9 +4208,9 @@ fb: { jmp b15 //SEG402 fb::@15 b15: - //SEG403 [137] (byte) bd#153 ? ++ (byte) bd#111 -- vbuz1=_inc_vbuz1 + //SEG403 [137] (byte) bd#153 ← ++ (byte) bd#111 -- vbuz1=_inc_vbuz1 inc bd - //SEG404 [138] (byte~) bd#243 ? (byte) bd#153 -- vbuz1=vbuz2 + //SEG404 [138] (byte~) bd#243 ← (byte) bd#153 -- vbuz1=vbuz2 lda bd sta bd_243 //SEG405 [139] call fc @@ -4234,9 +4234,9 @@ fb: { jmp b16 //SEG414 fb::@16 b16: - //SEG415 [142] (byte) bd#154 ? ++ (byte) bd#112 -- vbuz1=_inc_vbuz1 + //SEG415 [142] (byte) bd#154 ← ++ (byte) bd#112 -- vbuz1=_inc_vbuz1 inc bd - //SEG416 [143] (byte~) bd#244 ? (byte) bd#154 -- vbuz1=vbuz2 + //SEG416 [143] (byte~) bd#244 ← (byte) bd#154 -- vbuz1=vbuz2 lda bd sta bd_244 //SEG417 [144] call fc @@ -4260,9 +4260,9 @@ fb: { jmp b17 //SEG426 fb::@17 b17: - //SEG427 [147] (byte) bd#155 ? ++ (byte) bd#113 -- vbuz1=_inc_vbuz1 + //SEG427 [147] (byte) bd#155 ← ++ (byte) bd#113 -- vbuz1=_inc_vbuz1 inc bd - //SEG428 [148] (byte~) bd#245 ? (byte) bd#155 -- vbuz1=vbuz2 + //SEG428 [148] (byte~) bd#245 ← (byte) bd#155 -- vbuz1=vbuz2 lda bd sta bd_245 //SEG429 [149] call fc @@ -4286,9 +4286,9 @@ fb: { jmp b18 //SEG438 fb::@18 b18: - //SEG439 [152] (byte) bd#157 ? ++ (byte) bd#114 -- vbuz1=_inc_vbuz1 + //SEG439 [152] (byte) bd#157 ← ++ (byte) bd#114 -- vbuz1=_inc_vbuz1 inc bd - //SEG440 [153] (byte~) bd#246 ? (byte) bd#157 -- vbuz1=vbuz2 + //SEG440 [153] (byte~) bd#246 ← (byte) bd#157 -- vbuz1=vbuz2 lda bd sta bd_246 //SEG441 [154] call fc @@ -4348,7 +4348,7 @@ fc: { jmp b10 //SEG466 fc::@10 b10: - //SEG467 [163] (byte) be#36 ? ++ (byte) be#129 -- vbuz1=_inc_vbuz1 + //SEG467 [163] (byte) be#36 ← ++ (byte) be#129 -- vbuz1=_inc_vbuz1 inc be //SEG468 [164] phi from fc fc::@10 to fc::@1 [phi:fc/fc::@10->fc::@1] b1_from_fc: @@ -4364,7 +4364,7 @@ fc: { jmp b11 //SEG472 fc::@11 b11: - //SEG473 [166] (byte) be#37 ? ++ (byte) be#130 -- vbuz1=_inc_vbuz1 + //SEG473 [166] (byte) be#37 ← ++ (byte) be#130 -- vbuz1=_inc_vbuz1 inc be //SEG474 [167] phi from fc::@1 fc::@11 to fc::@2 [phi:fc::@1/fc::@11->fc::@2] b2_from_b1: @@ -4380,7 +4380,7 @@ fc: { jmp b12 //SEG478 fc::@12 b12: - //SEG479 [169] (byte) be#38 ? ++ (byte) be#131 -- vbuz1=_inc_vbuz1 + //SEG479 [169] (byte) be#38 ← ++ (byte) be#131 -- vbuz1=_inc_vbuz1 inc be //SEG480 [170] phi from fc::@12 fc::@2 to fc::@3 [phi:fc::@12/fc::@2->fc::@3] b3_from_b12: @@ -4396,7 +4396,7 @@ fc: { jmp b13 //SEG484 fc::@13 b13: - //SEG485 [172] (byte) be#39 ? ++ (byte) be#132 -- vbuz1=_inc_vbuz1 + //SEG485 [172] (byte) be#39 ← ++ (byte) be#132 -- vbuz1=_inc_vbuz1 inc be //SEG486 [173] phi from fc::@13 fc::@3 to fc::@4 [phi:fc::@13/fc::@3->fc::@4] b4_from_b13: @@ -4412,7 +4412,7 @@ fc: { jmp b14 //SEG490 fc::@14 b14: - //SEG491 [175] (byte) be#40 ? ++ (byte) be#133 -- vbuz1=_inc_vbuz1 + //SEG491 [175] (byte) be#40 ← ++ (byte) be#133 -- vbuz1=_inc_vbuz1 inc be //SEG492 [176] phi from fc::@14 fc::@4 to fc::@5 [phi:fc::@14/fc::@4->fc::@5] b5_from_b14: @@ -4428,7 +4428,7 @@ fc: { jmp b15 //SEG496 fc::@15 b15: - //SEG497 [178] (byte) be#41 ? ++ (byte) be#134 -- vbuz1=_inc_vbuz1 + //SEG497 [178] (byte) be#41 ← ++ (byte) be#134 -- vbuz1=_inc_vbuz1 inc be //SEG498 [179] phi from fc::@15 fc::@5 to fc::@6 [phi:fc::@15/fc::@5->fc::@6] b6_from_b15: @@ -4444,7 +4444,7 @@ fc: { jmp b16 //SEG502 fc::@16 b16: - //SEG503 [181] (byte) be#42 ? ++ (byte) be#135 -- vbuz1=_inc_vbuz1 + //SEG503 [181] (byte) be#42 ← ++ (byte) be#135 -- vbuz1=_inc_vbuz1 inc be //SEG504 [182] phi from fc::@16 fc::@6 to fc::@7 [phi:fc::@16/fc::@6->fc::@7] b7_from_b16: @@ -4460,7 +4460,7 @@ fc: { jmp b17 //SEG508 fc::@17 b17: - //SEG509 [184] (byte) be#43 ? ++ (byte) be#136 -- vbuz1=_inc_vbuz1 + //SEG509 [184] (byte) be#43 ← ++ (byte) be#136 -- vbuz1=_inc_vbuz1 inc be //SEG510 [185] phi from fc::@17 fc::@7 to fc::@8 [phi:fc::@17/fc::@7->fc::@8] b8_from_b17: @@ -4476,7 +4476,7 @@ fc: { jmp b18 //SEG514 fc::@18 b18: - //SEG515 [187] (byte) be#44 ? ++ (byte) be#137 -- vbuz1=_inc_vbuz1 + //SEG515 [187] (byte) be#44 ← ++ (byte) be#137 -- vbuz1=_inc_vbuz1 inc be //SEG516 [188] phi from fc::@18 fc::@8 to fc::@9 [phi:fc::@18/fc::@8->fc::@9] b9_from_b18: @@ -4617,7 +4617,7 @@ main: { jmp b3 //SEG21 main::@3 b3: - //SEG22 [8] (byte) ba#1 ? ++ (byte) ba#17 -- vbuz1=_inc_vbuz1 + //SEG22 [8] (byte) ba#1 ← ++ (byte) ba#17 -- vbuz1=_inc_vbuz1 inc ba //SEG23 [5] phi from main::@3 to main::@1 [phi:main::@3->main::@1] b1_from_b3: @@ -4637,9 +4637,9 @@ f0: { jmp b10 //SEG31 f0::@10 b10: - //SEG32 [10] (byte) bb#3 ? ++ (byte) bb#16 -- vbuz1=_inc_vbuz1 + //SEG32 [10] (byte) bb#3 ← ++ (byte) bb#16 -- vbuz1=_inc_vbuz1 inc bb - //SEG33 [11] (byte~) bb#101 ? (byte) bb#3 -- vbuz1=vbuz2 + //SEG33 [11] (byte~) bb#101 ← (byte) bb#3 -- vbuz1=vbuz2 lda bb sta bb_101 //SEG34 [12] call fa @@ -4667,9 +4667,9 @@ f0: { jmp b11 //SEG47 f0::@11 b11: - //SEG48 [15] (byte) bb#4 ? ++ (byte) bb#18 -- vbuz1=_inc_vbuz1 + //SEG48 [15] (byte) bb#4 ← ++ (byte) bb#18 -- vbuz1=_inc_vbuz1 inc bb - //SEG49 [16] (byte~) bb#102 ? (byte) bb#4 -- vbuz1=vbuz2 + //SEG49 [16] (byte~) bb#102 ← (byte) bb#4 -- vbuz1=vbuz2 lda bb sta bb_102 //SEG50 [17] call fa @@ -4697,9 +4697,9 @@ f0: { jmp b12 //SEG63 f0::@12 b12: - //SEG64 [20] (byte) bb#5 ? ++ (byte) bb#19 -- vbuz1=_inc_vbuz1 + //SEG64 [20] (byte) bb#5 ← ++ (byte) bb#19 -- vbuz1=_inc_vbuz1 inc bb - //SEG65 [21] (byte~) bb#103 ? (byte) bb#5 -- vbuz1=vbuz2 + //SEG65 [21] (byte~) bb#103 ← (byte) bb#5 -- vbuz1=vbuz2 lda bb sta bb_103 //SEG66 [22] call fa @@ -4727,9 +4727,9 @@ f0: { jmp b13 //SEG79 f0::@13 b13: - //SEG80 [25] (byte) bb#6 ? ++ (byte) bb#20 -- vbuz1=_inc_vbuz1 + //SEG80 [25] (byte) bb#6 ← ++ (byte) bb#20 -- vbuz1=_inc_vbuz1 inc bb - //SEG81 [26] (byte~) bb#104 ? (byte) bb#6 -- vbuz1=vbuz2 + //SEG81 [26] (byte~) bb#104 ← (byte) bb#6 -- vbuz1=vbuz2 lda bb sta bb_104 //SEG82 [27] call fa @@ -4757,9 +4757,9 @@ f0: { jmp b14 //SEG95 f0::@14 b14: - //SEG96 [30] (byte) bb#66 ? ++ (byte) bb#21 -- vbuz1=_inc_vbuz1 + //SEG96 [30] (byte) bb#66 ← ++ (byte) bb#21 -- vbuz1=_inc_vbuz1 inc bb - //SEG97 [31] (byte~) bb#105 ? (byte) bb#66 -- vbuz1=vbuz2 + //SEG97 [31] (byte~) bb#105 ← (byte) bb#66 -- vbuz1=vbuz2 lda bb sta bb_105 //SEG98 [32] call fa @@ -4787,9 +4787,9 @@ f0: { jmp b15 //SEG111 f0::@15 b15: - //SEG112 [35] (byte) bb#67 ? ++ (byte) bb#22 -- vbuz1=_inc_vbuz1 + //SEG112 [35] (byte) bb#67 ← ++ (byte) bb#22 -- vbuz1=_inc_vbuz1 inc bb - //SEG113 [36] (byte~) bb#106 ? (byte) bb#67 -- vbuz1=vbuz2 + //SEG113 [36] (byte~) bb#106 ← (byte) bb#67 -- vbuz1=vbuz2 lda bb sta bb_106 //SEG114 [37] call fa @@ -4817,9 +4817,9 @@ f0: { jmp b16 //SEG127 f0::@16 b16: - //SEG128 [40] (byte) bb#68 ? ++ (byte) bb#23 -- vbuz1=_inc_vbuz1 + //SEG128 [40] (byte) bb#68 ← ++ (byte) bb#23 -- vbuz1=_inc_vbuz1 inc bb - //SEG129 [41] (byte~) bb#107 ? (byte) bb#68 -- vbuz1=vbuz2 + //SEG129 [41] (byte~) bb#107 ← (byte) bb#68 -- vbuz1=vbuz2 lda bb sta bb_107 //SEG130 [42] call fa @@ -4847,9 +4847,9 @@ f0: { jmp b17 //SEG143 f0::@17 b17: - //SEG144 [45] (byte) bb#10 ? ++ (byte) bb#24 -- vbuz1=_inc_vbuz1 + //SEG144 [45] (byte) bb#10 ← ++ (byte) bb#24 -- vbuz1=_inc_vbuz1 inc bb - //SEG145 [46] (byte~) bb#108 ? (byte) bb#10 -- vbuz1=vbuz2 + //SEG145 [46] (byte~) bb#108 ← (byte) bb#10 -- vbuz1=vbuz2 lda bb sta bb_108 //SEG146 [47] call fa @@ -4877,9 +4877,9 @@ f0: { jmp b18 //SEG159 f0::@18 b18: - //SEG160 [50] (byte) bb#11 ? ++ (byte) bb#25 -- vbuz1=_inc_vbuz1 + //SEG160 [50] (byte) bb#11 ← ++ (byte) bb#25 -- vbuz1=_inc_vbuz1 inc bb - //SEG161 [51] (byte~) bb#109 ? (byte) bb#11 -- vbuz1=vbuz2 + //SEG161 [51] (byte~) bb#109 ← (byte) bb#11 -- vbuz1=vbuz2 lda bb sta bb_109 //SEG162 [52] call fa @@ -4949,9 +4949,9 @@ fa: { jmp b10 //SEG197 fa::@10 b10: - //SEG198 [61] (byte) bc#105 ? ++ (byte) bc#39 -- vbuxx=_inc_vbuxx + //SEG198 [61] (byte) bc#105 ← ++ (byte) bc#39 -- vbuxx=_inc_vbuxx inx - //SEG199 [62] (byte~) bc#174 ? (byte) bc#105 -- vbuz1=vbuxx + //SEG199 [62] (byte~) bc#174 ← (byte) bc#105 -- vbuz1=vbuxx stx bc //SEG200 [63] call fb //SEG201 [110] phi from fa::@10 to fb [phi:fa::@10->fb] @@ -4976,9 +4976,9 @@ fa: { jmp b11 //SEG211 fa::@11 b11: - //SEG212 [66] (byte) bc#106 ? ++ (byte) bc#40 -- vbuxx=_inc_vbuxx + //SEG212 [66] (byte) bc#106 ← ++ (byte) bc#40 -- vbuxx=_inc_vbuxx inx - //SEG213 [67] (byte~) bc#175 ? (byte) bc#106 -- vbuz1=vbuxx + //SEG213 [67] (byte~) bc#175 ← (byte) bc#106 -- vbuz1=vbuxx stx bc //SEG214 [68] call fb //SEG215 [110] phi from fa::@11 to fb [phi:fa::@11->fb] @@ -5003,9 +5003,9 @@ fa: { jmp b12 //SEG225 fa::@12 b12: - //SEG226 [71] (byte) bc#107 ? ++ (byte) bc#41 -- vbuxx=_inc_vbuxx + //SEG226 [71] (byte) bc#107 ← ++ (byte) bc#41 -- vbuxx=_inc_vbuxx inx - //SEG227 [72] (byte~) bc#176 ? (byte) bc#107 -- vbuz1=vbuxx + //SEG227 [72] (byte~) bc#176 ← (byte) bc#107 -- vbuz1=vbuxx stx bc //SEG228 [73] call fb //SEG229 [110] phi from fa::@12 to fb [phi:fa::@12->fb] @@ -5030,9 +5030,9 @@ fa: { jmp b13 //SEG239 fa::@13 b13: - //SEG240 [76] (byte) bc#108 ? ++ (byte) bc#42 -- vbuxx=_inc_vbuxx + //SEG240 [76] (byte) bc#108 ← ++ (byte) bc#42 -- vbuxx=_inc_vbuxx inx - //SEG241 [77] (byte~) bc#177 ? (byte) bc#108 -- vbuz1=vbuxx + //SEG241 [77] (byte~) bc#177 ← (byte) bc#108 -- vbuz1=vbuxx stx bc //SEG242 [78] call fb //SEG243 [110] phi from fa::@13 to fb [phi:fa::@13->fb] @@ -5057,9 +5057,9 @@ fa: { jmp b14 //SEG253 fa::@14 b14: - //SEG254 [81] (byte) bc#109 ? ++ (byte) bc#43 -- vbuxx=_inc_vbuxx + //SEG254 [81] (byte) bc#109 ← ++ (byte) bc#43 -- vbuxx=_inc_vbuxx inx - //SEG255 [82] (byte~) bc#178 ? (byte) bc#109 -- vbuz1=vbuxx + //SEG255 [82] (byte~) bc#178 ← (byte) bc#109 -- vbuz1=vbuxx stx bc //SEG256 [83] call fb //SEG257 [110] phi from fa::@14 to fb [phi:fa::@14->fb] @@ -5084,9 +5084,9 @@ fa: { jmp b15 //SEG267 fa::@15 b15: - //SEG268 [86] (byte) bc#110 ? ++ (byte) bc#44 -- vbuxx=_inc_vbuxx + //SEG268 [86] (byte) bc#110 ← ++ (byte) bc#44 -- vbuxx=_inc_vbuxx inx - //SEG269 [87] (byte~) bc#179 ? (byte) bc#110 -- vbuz1=vbuxx + //SEG269 [87] (byte~) bc#179 ← (byte) bc#110 -- vbuz1=vbuxx stx bc //SEG270 [88] call fb //SEG271 [110] phi from fa::@15 to fb [phi:fa::@15->fb] @@ -5111,9 +5111,9 @@ fa: { jmp b16 //SEG281 fa::@16 b16: - //SEG282 [91] (byte) bc#111 ? ++ (byte) bc#45 -- vbuxx=_inc_vbuxx + //SEG282 [91] (byte) bc#111 ← ++ (byte) bc#45 -- vbuxx=_inc_vbuxx inx - //SEG283 [92] (byte~) bc#180 ? (byte) bc#111 -- vbuz1=vbuxx + //SEG283 [92] (byte~) bc#180 ← (byte) bc#111 -- vbuz1=vbuxx stx bc //SEG284 [93] call fb //SEG285 [110] phi from fa::@16 to fb [phi:fa::@16->fb] @@ -5138,9 +5138,9 @@ fa: { jmp b17 //SEG295 fa::@17 b17: - //SEG296 [96] (byte) bc#112 ? ++ (byte) bc#46 -- vbuxx=_inc_vbuxx + //SEG296 [96] (byte) bc#112 ← ++ (byte) bc#46 -- vbuxx=_inc_vbuxx inx - //SEG297 [97] (byte~) bc#181 ? (byte) bc#112 -- vbuz1=vbuxx + //SEG297 [97] (byte~) bc#181 ← (byte) bc#112 -- vbuz1=vbuxx stx bc //SEG298 [98] call fb //SEG299 [110] phi from fa::@17 to fb [phi:fa::@17->fb] @@ -5165,9 +5165,9 @@ fa: { jmp b18 //SEG309 fa::@18 b18: - //SEG310 [101] (byte) bc#123 ? ++ (byte) bc#47 -- vbuxx=_inc_vbuxx + //SEG310 [101] (byte) bc#123 ← ++ (byte) bc#47 -- vbuxx=_inc_vbuxx inx - //SEG311 [102] (byte~) bc#182 ? (byte) bc#123 -- vbuz1=vbuxx + //SEG311 [102] (byte~) bc#182 ← (byte) bc#123 -- vbuz1=vbuxx stx bc //SEG312 [103] call fb //SEG313 [110] phi from fa::@18 to fb [phi:fa::@18->fb] @@ -5230,9 +5230,9 @@ fb: { jmp b10 //SEG342 fb::@10 b10: - //SEG343 [112] (byte) bd#148 ? ++ (byte) bd#106 -- vbuyy=_inc_vbuyy + //SEG343 [112] (byte) bd#148 ← ++ (byte) bd#106 -- vbuyy=_inc_vbuyy iny - //SEG344 [113] (byte~) bd#238 ? (byte) bd#148 -- vbuaa=vbuyy + //SEG344 [113] (byte~) bd#238 ← (byte) bd#148 -- vbuaa=vbuyy tya //SEG345 [114] call fc //SEG346 [161] phi from fb::@10 to fc [phi:fb::@10->fc] @@ -5255,9 +5255,9 @@ fb: { jmp b11 //SEG354 fb::@11 b11: - //SEG355 [117] (byte) bd#149 ? ++ (byte) bd#107 -- vbuyy=_inc_vbuyy + //SEG355 [117] (byte) bd#149 ← ++ (byte) bd#107 -- vbuyy=_inc_vbuyy iny - //SEG356 [118] (byte~) bd#239 ? (byte) bd#149 -- vbuaa=vbuyy + //SEG356 [118] (byte~) bd#239 ← (byte) bd#149 -- vbuaa=vbuyy tya //SEG357 [119] call fc //SEG358 [161] phi from fb::@11 to fc [phi:fb::@11->fc] @@ -5280,9 +5280,9 @@ fb: { jmp b12 //SEG366 fb::@12 b12: - //SEG367 [122] (byte) bd#150 ? ++ (byte) bd#108 -- vbuyy=_inc_vbuyy + //SEG367 [122] (byte) bd#150 ← ++ (byte) bd#108 -- vbuyy=_inc_vbuyy iny - //SEG368 [123] (byte~) bd#240 ? (byte) bd#150 -- vbuaa=vbuyy + //SEG368 [123] (byte~) bd#240 ← (byte) bd#150 -- vbuaa=vbuyy tya //SEG369 [124] call fc //SEG370 [161] phi from fb::@12 to fc [phi:fb::@12->fc] @@ -5305,9 +5305,9 @@ fb: { jmp b13 //SEG378 fb::@13 b13: - //SEG379 [127] (byte) bd#151 ? ++ (byte) bd#109 -- vbuyy=_inc_vbuyy + //SEG379 [127] (byte) bd#151 ← ++ (byte) bd#109 -- vbuyy=_inc_vbuyy iny - //SEG380 [128] (byte~) bd#241 ? (byte) bd#151 -- vbuaa=vbuyy + //SEG380 [128] (byte~) bd#241 ← (byte) bd#151 -- vbuaa=vbuyy tya //SEG381 [129] call fc //SEG382 [161] phi from fb::@13 to fc [phi:fb::@13->fc] @@ -5330,9 +5330,9 @@ fb: { jmp b14 //SEG390 fb::@14 b14: - //SEG391 [132] (byte) bd#152 ? ++ (byte) bd#110 -- vbuyy=_inc_vbuyy + //SEG391 [132] (byte) bd#152 ← ++ (byte) bd#110 -- vbuyy=_inc_vbuyy iny - //SEG392 [133] (byte~) bd#242 ? (byte) bd#152 -- vbuaa=vbuyy + //SEG392 [133] (byte~) bd#242 ← (byte) bd#152 -- vbuaa=vbuyy tya //SEG393 [134] call fc //SEG394 [161] phi from fb::@14 to fc [phi:fb::@14->fc] @@ -5355,9 +5355,9 @@ fb: { jmp b15 //SEG402 fb::@15 b15: - //SEG403 [137] (byte) bd#153 ? ++ (byte) bd#111 -- vbuyy=_inc_vbuyy + //SEG403 [137] (byte) bd#153 ← ++ (byte) bd#111 -- vbuyy=_inc_vbuyy iny - //SEG404 [138] (byte~) bd#243 ? (byte) bd#153 -- vbuaa=vbuyy + //SEG404 [138] (byte~) bd#243 ← (byte) bd#153 -- vbuaa=vbuyy tya //SEG405 [139] call fc //SEG406 [161] phi from fb::@15 to fc [phi:fb::@15->fc] @@ -5380,9 +5380,9 @@ fb: { jmp b16 //SEG414 fb::@16 b16: - //SEG415 [142] (byte) bd#154 ? ++ (byte) bd#112 -- vbuyy=_inc_vbuyy + //SEG415 [142] (byte) bd#154 ← ++ (byte) bd#112 -- vbuyy=_inc_vbuyy iny - //SEG416 [143] (byte~) bd#244 ? (byte) bd#154 -- vbuaa=vbuyy + //SEG416 [143] (byte~) bd#244 ← (byte) bd#154 -- vbuaa=vbuyy tya //SEG417 [144] call fc //SEG418 [161] phi from fb::@16 to fc [phi:fb::@16->fc] @@ -5405,9 +5405,9 @@ fb: { jmp b17 //SEG426 fb::@17 b17: - //SEG427 [147] (byte) bd#155 ? ++ (byte) bd#113 -- vbuyy=_inc_vbuyy + //SEG427 [147] (byte) bd#155 ← ++ (byte) bd#113 -- vbuyy=_inc_vbuyy iny - //SEG428 [148] (byte~) bd#245 ? (byte) bd#155 -- vbuaa=vbuyy + //SEG428 [148] (byte~) bd#245 ← (byte) bd#155 -- vbuaa=vbuyy tya //SEG429 [149] call fc //SEG430 [161] phi from fb::@17 to fc [phi:fb::@17->fc] @@ -5430,9 +5430,9 @@ fb: { jmp b18 //SEG438 fb::@18 b18: - //SEG439 [152] (byte) bd#157 ? ++ (byte) bd#114 -- vbuyy=_inc_vbuyy + //SEG439 [152] (byte) bd#157 ← ++ (byte) bd#114 -- vbuyy=_inc_vbuyy iny - //SEG440 [153] (byte~) bd#246 ? (byte) bd#157 -- vbuaa=vbuyy + //SEG440 [153] (byte~) bd#246 ← (byte) bd#157 -- vbuaa=vbuyy tya //SEG441 [154] call fc //SEG442 [161] phi from fb::@18 to fc [phi:fb::@18->fc] @@ -5488,7 +5488,7 @@ fc: { jmp b10 //SEG466 fc::@10 b10: - //SEG467 [163] (byte) be#36 ? ++ (byte) be#129 -- vbuz1=_inc_vbuz1 + //SEG467 [163] (byte) be#36 ← ++ (byte) be#129 -- vbuz1=_inc_vbuz1 inc be //SEG468 [164] phi from fc fc::@10 to fc::@1 [phi:fc/fc::@10->fc::@1] b1_from_fc: @@ -5503,7 +5503,7 @@ fc: { jmp b11 //SEG472 fc::@11 b11: - //SEG473 [166] (byte) be#37 ? ++ (byte) be#130 -- vbuz1=_inc_vbuz1 + //SEG473 [166] (byte) be#37 ← ++ (byte) be#130 -- vbuz1=_inc_vbuz1 inc be //SEG474 [167] phi from fc::@1 fc::@11 to fc::@2 [phi:fc::@1/fc::@11->fc::@2] b2_from_b1: @@ -5518,7 +5518,7 @@ fc: { jmp b12 //SEG478 fc::@12 b12: - //SEG479 [169] (byte) be#38 ? ++ (byte) be#131 -- vbuz1=_inc_vbuz1 + //SEG479 [169] (byte) be#38 ← ++ (byte) be#131 -- vbuz1=_inc_vbuz1 inc be //SEG480 [170] phi from fc::@12 fc::@2 to fc::@3 [phi:fc::@12/fc::@2->fc::@3] b3_from_b12: @@ -5533,7 +5533,7 @@ fc: { jmp b13 //SEG484 fc::@13 b13: - //SEG485 [172] (byte) be#39 ? ++ (byte) be#132 -- vbuz1=_inc_vbuz1 + //SEG485 [172] (byte) be#39 ← ++ (byte) be#132 -- vbuz1=_inc_vbuz1 inc be //SEG486 [173] phi from fc::@13 fc::@3 to fc::@4 [phi:fc::@13/fc::@3->fc::@4] b4_from_b13: @@ -5548,7 +5548,7 @@ fc: { jmp b14 //SEG490 fc::@14 b14: - //SEG491 [175] (byte) be#40 ? ++ (byte) be#133 -- vbuz1=_inc_vbuz1 + //SEG491 [175] (byte) be#40 ← ++ (byte) be#133 -- vbuz1=_inc_vbuz1 inc be //SEG492 [176] phi from fc::@14 fc::@4 to fc::@5 [phi:fc::@14/fc::@4->fc::@5] b5_from_b14: @@ -5563,7 +5563,7 @@ fc: { jmp b15 //SEG496 fc::@15 b15: - //SEG497 [178] (byte) be#41 ? ++ (byte) be#134 -- vbuz1=_inc_vbuz1 + //SEG497 [178] (byte) be#41 ← ++ (byte) be#134 -- vbuz1=_inc_vbuz1 inc be //SEG498 [179] phi from fc::@15 fc::@5 to fc::@6 [phi:fc::@15/fc::@5->fc::@6] b6_from_b15: @@ -5578,7 +5578,7 @@ fc: { jmp b16 //SEG502 fc::@16 b16: - //SEG503 [181] (byte) be#42 ? ++ (byte) be#135 -- vbuz1=_inc_vbuz1 + //SEG503 [181] (byte) be#42 ← ++ (byte) be#135 -- vbuz1=_inc_vbuz1 inc be //SEG504 [182] phi from fc::@16 fc::@6 to fc::@7 [phi:fc::@16/fc::@6->fc::@7] b7_from_b16: @@ -5593,7 +5593,7 @@ fc: { jmp b17 //SEG508 fc::@17 b17: - //SEG509 [184] (byte) be#43 ? ++ (byte) be#136 -- vbuz1=_inc_vbuz1 + //SEG509 [184] (byte) be#43 ← ++ (byte) be#136 -- vbuz1=_inc_vbuz1 inc be //SEG510 [185] phi from fc::@17 fc::@7 to fc::@8 [phi:fc::@17/fc::@7->fc::@8] b8_from_b17: @@ -5608,7 +5608,7 @@ fc: { jmp b18 //SEG514 fc::@18 b18: - //SEG515 [187] (byte) be#44 ? ++ (byte) be#137 -- vbuz1=_inc_vbuz1 + //SEG515 [187] (byte) be#44 ← ++ (byte) be#137 -- vbuz1=_inc_vbuz1 inc be //SEG516 [188] phi from fc::@18 fc::@8 to fc::@9 [phi:fc::@18/fc::@8->fc::@9] b9_from_b18: @@ -6291,7 +6291,7 @@ main: { //SEG20 [7] call f0 jsr f0 //SEG21 main::@3 - //SEG22 [8] (byte) ba#1 ? ++ (byte) ba#17 -- vbuz1=_inc_vbuz1 + //SEG22 [8] (byte) ba#1 ← ++ (byte) ba#17 -- vbuz1=_inc_vbuz1 inc ba //SEG23 [5] phi from main::@3 to main::@1 [phi:main::@3->main::@1] //SEG24 [5] phi (byte) ba#17 = (byte) ba#1 [phi:main::@3->main::@1#0] -- register_copy @@ -6308,9 +6308,9 @@ f0: { cmp #0 bne b1 //SEG31 f0::@10 - //SEG32 [10] (byte) bb#3 ? ++ (byte) bb#16 -- vbuz1=_inc_vbuz1 + //SEG32 [10] (byte) bb#3 ← ++ (byte) bb#16 -- vbuz1=_inc_vbuz1 inc bb - //SEG33 [11] (byte~) bb#101 ? (byte) bb#3 -- vbuz1=vbuz2 + //SEG33 [11] (byte~) bb#101 ← (byte) bb#3 -- vbuz1=vbuz2 lda bb sta bb_101 //SEG34 [12] call fa @@ -6332,9 +6332,9 @@ f0: { cmp ba bne b2 //SEG47 f0::@11 - //SEG48 [15] (byte) bb#4 ? ++ (byte) bb#18 -- vbuz1=_inc_vbuz1 + //SEG48 [15] (byte) bb#4 ← ++ (byte) bb#18 -- vbuz1=_inc_vbuz1 inc bb - //SEG49 [16] (byte~) bb#102 ? (byte) bb#4 -- vbuz1=vbuz2 + //SEG49 [16] (byte~) bb#102 ← (byte) bb#4 -- vbuz1=vbuz2 lda bb sta bb_102 //SEG50 [17] call fa @@ -6356,9 +6356,9 @@ f0: { cmp ba bne b3 //SEG63 f0::@12 - //SEG64 [20] (byte) bb#5 ? ++ (byte) bb#19 -- vbuz1=_inc_vbuz1 + //SEG64 [20] (byte) bb#5 ← ++ (byte) bb#19 -- vbuz1=_inc_vbuz1 inc bb - //SEG65 [21] (byte~) bb#103 ? (byte) bb#5 -- vbuz1=vbuz2 + //SEG65 [21] (byte~) bb#103 ← (byte) bb#5 -- vbuz1=vbuz2 lda bb sta bb_103 //SEG66 [22] call fa @@ -6380,9 +6380,9 @@ f0: { cmp ba bne b4 //SEG79 f0::@13 - //SEG80 [25] (byte) bb#6 ? ++ (byte) bb#20 -- vbuz1=_inc_vbuz1 + //SEG80 [25] (byte) bb#6 ← ++ (byte) bb#20 -- vbuz1=_inc_vbuz1 inc bb - //SEG81 [26] (byte~) bb#104 ? (byte) bb#6 -- vbuz1=vbuz2 + //SEG81 [26] (byte~) bb#104 ← (byte) bb#6 -- vbuz1=vbuz2 lda bb sta bb_104 //SEG82 [27] call fa @@ -6404,9 +6404,9 @@ f0: { cmp ba bne b5 //SEG95 f0::@14 - //SEG96 [30] (byte) bb#66 ? ++ (byte) bb#21 -- vbuz1=_inc_vbuz1 + //SEG96 [30] (byte) bb#66 ← ++ (byte) bb#21 -- vbuz1=_inc_vbuz1 inc bb - //SEG97 [31] (byte~) bb#105 ? (byte) bb#66 -- vbuz1=vbuz2 + //SEG97 [31] (byte~) bb#105 ← (byte) bb#66 -- vbuz1=vbuz2 lda bb sta bb_105 //SEG98 [32] call fa @@ -6428,9 +6428,9 @@ f0: { cmp ba bne b6 //SEG111 f0::@15 - //SEG112 [35] (byte) bb#67 ? ++ (byte) bb#22 -- vbuz1=_inc_vbuz1 + //SEG112 [35] (byte) bb#67 ← ++ (byte) bb#22 -- vbuz1=_inc_vbuz1 inc bb - //SEG113 [36] (byte~) bb#106 ? (byte) bb#67 -- vbuz1=vbuz2 + //SEG113 [36] (byte~) bb#106 ← (byte) bb#67 -- vbuz1=vbuz2 lda bb sta bb_106 //SEG114 [37] call fa @@ -6452,9 +6452,9 @@ f0: { cmp ba bne b7 //SEG127 f0::@16 - //SEG128 [40] (byte) bb#68 ? ++ (byte) bb#23 -- vbuz1=_inc_vbuz1 + //SEG128 [40] (byte) bb#68 ← ++ (byte) bb#23 -- vbuz1=_inc_vbuz1 inc bb - //SEG129 [41] (byte~) bb#107 ? (byte) bb#68 -- vbuz1=vbuz2 + //SEG129 [41] (byte~) bb#107 ← (byte) bb#68 -- vbuz1=vbuz2 lda bb sta bb_107 //SEG130 [42] call fa @@ -6476,9 +6476,9 @@ f0: { cmp ba bne b8 //SEG143 f0::@17 - //SEG144 [45] (byte) bb#10 ? ++ (byte) bb#24 -- vbuz1=_inc_vbuz1 + //SEG144 [45] (byte) bb#10 ← ++ (byte) bb#24 -- vbuz1=_inc_vbuz1 inc bb - //SEG145 [46] (byte~) bb#108 ? (byte) bb#10 -- vbuz1=vbuz2 + //SEG145 [46] (byte~) bb#108 ← (byte) bb#10 -- vbuz1=vbuz2 lda bb sta bb_108 //SEG146 [47] call fa @@ -6500,9 +6500,9 @@ f0: { cmp ba bne b9 //SEG159 f0::@18 - //SEG160 [50] (byte) bb#11 ? ++ (byte) bb#25 -- vbuz1=_inc_vbuz1 + //SEG160 [50] (byte) bb#11 ← ++ (byte) bb#25 -- vbuz1=_inc_vbuz1 inc bb - //SEG161 [51] (byte~) bb#109 ? (byte) bb#11 -- vbuz1=vbuz2 + //SEG161 [51] (byte~) bb#109 ← (byte) bb#11 -- vbuz1=vbuz2 lda bb sta bb_109 //SEG162 [52] call fa @@ -6559,9 +6559,9 @@ fa: { cmp #0 bne b1 //SEG197 fa::@10 - //SEG198 [61] (byte) bc#105 ? ++ (byte) bc#39 -- vbuxx=_inc_vbuxx + //SEG198 [61] (byte) bc#105 ← ++ (byte) bc#39 -- vbuxx=_inc_vbuxx inx - //SEG199 [62] (byte~) bc#174 ? (byte) bc#105 -- vbuz1=vbuxx + //SEG199 [62] (byte~) bc#174 ← (byte) bc#105 -- vbuz1=vbuxx stx bc //SEG200 [63] call fb //SEG201 [110] phi from fa::@10 to fb [phi:fa::@10->fb] @@ -6580,9 +6580,9 @@ fa: { cmp bb_27 bne b2 //SEG211 fa::@11 - //SEG212 [66] (byte) bc#106 ? ++ (byte) bc#40 -- vbuxx=_inc_vbuxx + //SEG212 [66] (byte) bc#106 ← ++ (byte) bc#40 -- vbuxx=_inc_vbuxx inx - //SEG213 [67] (byte~) bc#175 ? (byte) bc#106 -- vbuz1=vbuxx + //SEG213 [67] (byte~) bc#175 ← (byte) bc#106 -- vbuz1=vbuxx stx bc //SEG214 [68] call fb //SEG215 [110] phi from fa::@11 to fb [phi:fa::@11->fb] @@ -6601,9 +6601,9 @@ fa: { cmp bb_27 bne b3 //SEG225 fa::@12 - //SEG226 [71] (byte) bc#107 ? ++ (byte) bc#41 -- vbuxx=_inc_vbuxx + //SEG226 [71] (byte) bc#107 ← ++ (byte) bc#41 -- vbuxx=_inc_vbuxx inx - //SEG227 [72] (byte~) bc#176 ? (byte) bc#107 -- vbuz1=vbuxx + //SEG227 [72] (byte~) bc#176 ← (byte) bc#107 -- vbuz1=vbuxx stx bc //SEG228 [73] call fb //SEG229 [110] phi from fa::@12 to fb [phi:fa::@12->fb] @@ -6622,9 +6622,9 @@ fa: { cmp bb_27 bne b4 //SEG239 fa::@13 - //SEG240 [76] (byte) bc#108 ? ++ (byte) bc#42 -- vbuxx=_inc_vbuxx + //SEG240 [76] (byte) bc#108 ← ++ (byte) bc#42 -- vbuxx=_inc_vbuxx inx - //SEG241 [77] (byte~) bc#177 ? (byte) bc#108 -- vbuz1=vbuxx + //SEG241 [77] (byte~) bc#177 ← (byte) bc#108 -- vbuz1=vbuxx stx bc //SEG242 [78] call fb //SEG243 [110] phi from fa::@13 to fb [phi:fa::@13->fb] @@ -6643,9 +6643,9 @@ fa: { cmp bb_27 bne b5 //SEG253 fa::@14 - //SEG254 [81] (byte) bc#109 ? ++ (byte) bc#43 -- vbuxx=_inc_vbuxx + //SEG254 [81] (byte) bc#109 ← ++ (byte) bc#43 -- vbuxx=_inc_vbuxx inx - //SEG255 [82] (byte~) bc#178 ? (byte) bc#109 -- vbuz1=vbuxx + //SEG255 [82] (byte~) bc#178 ← (byte) bc#109 -- vbuz1=vbuxx stx bc //SEG256 [83] call fb //SEG257 [110] phi from fa::@14 to fb [phi:fa::@14->fb] @@ -6664,9 +6664,9 @@ fa: { cmp bb_27 bne b6 //SEG267 fa::@15 - //SEG268 [86] (byte) bc#110 ? ++ (byte) bc#44 -- vbuxx=_inc_vbuxx + //SEG268 [86] (byte) bc#110 ← ++ (byte) bc#44 -- vbuxx=_inc_vbuxx inx - //SEG269 [87] (byte~) bc#179 ? (byte) bc#110 -- vbuz1=vbuxx + //SEG269 [87] (byte~) bc#179 ← (byte) bc#110 -- vbuz1=vbuxx stx bc //SEG270 [88] call fb //SEG271 [110] phi from fa::@15 to fb [phi:fa::@15->fb] @@ -6685,9 +6685,9 @@ fa: { cmp bb_27 bne b7 //SEG281 fa::@16 - //SEG282 [91] (byte) bc#111 ? ++ (byte) bc#45 -- vbuxx=_inc_vbuxx + //SEG282 [91] (byte) bc#111 ← ++ (byte) bc#45 -- vbuxx=_inc_vbuxx inx - //SEG283 [92] (byte~) bc#180 ? (byte) bc#111 -- vbuz1=vbuxx + //SEG283 [92] (byte~) bc#180 ← (byte) bc#111 -- vbuz1=vbuxx stx bc //SEG284 [93] call fb //SEG285 [110] phi from fa::@16 to fb [phi:fa::@16->fb] @@ -6706,9 +6706,9 @@ fa: { cmp bb_27 bne b8 //SEG295 fa::@17 - //SEG296 [96] (byte) bc#112 ? ++ (byte) bc#46 -- vbuxx=_inc_vbuxx + //SEG296 [96] (byte) bc#112 ← ++ (byte) bc#46 -- vbuxx=_inc_vbuxx inx - //SEG297 [97] (byte~) bc#181 ? (byte) bc#112 -- vbuz1=vbuxx + //SEG297 [97] (byte~) bc#181 ← (byte) bc#112 -- vbuz1=vbuxx stx bc //SEG298 [98] call fb //SEG299 [110] phi from fa::@17 to fb [phi:fa::@17->fb] @@ -6727,9 +6727,9 @@ fa: { cmp bb_27 bne b9 //SEG309 fa::@18 - //SEG310 [101] (byte) bc#123 ? ++ (byte) bc#47 -- vbuxx=_inc_vbuxx + //SEG310 [101] (byte) bc#123 ← ++ (byte) bc#47 -- vbuxx=_inc_vbuxx inx - //SEG311 [102] (byte~) bc#182 ? (byte) bc#123 -- vbuz1=vbuxx + //SEG311 [102] (byte~) bc#182 ← (byte) bc#123 -- vbuz1=vbuxx stx bc //SEG312 [103] call fb //SEG313 [110] phi from fa::@18 to fb [phi:fa::@18->fb] @@ -6779,9 +6779,9 @@ fb: { cmp #0 bne b1 //SEG342 fb::@10 - //SEG343 [112] (byte) bd#148 ? ++ (byte) bd#106 -- vbuyy=_inc_vbuyy + //SEG343 [112] (byte) bd#148 ← ++ (byte) bd#106 -- vbuyy=_inc_vbuyy iny - //SEG344 [113] (byte~) bd#238 ? (byte) bd#148 -- vbuaa=vbuyy + //SEG344 [113] (byte~) bd#238 ← (byte) bd#148 -- vbuaa=vbuyy tya //SEG345 [114] call fc //SEG346 [161] phi from fb::@10 to fc [phi:fb::@10->fc] @@ -6798,9 +6798,9 @@ fb: { cmp bc bne b2 //SEG354 fb::@11 - //SEG355 [117] (byte) bd#149 ? ++ (byte) bd#107 -- vbuyy=_inc_vbuyy + //SEG355 [117] (byte) bd#149 ← ++ (byte) bd#107 -- vbuyy=_inc_vbuyy iny - //SEG356 [118] (byte~) bd#239 ? (byte) bd#149 -- vbuaa=vbuyy + //SEG356 [118] (byte~) bd#239 ← (byte) bd#149 -- vbuaa=vbuyy tya //SEG357 [119] call fc //SEG358 [161] phi from fb::@11 to fc [phi:fb::@11->fc] @@ -6817,9 +6817,9 @@ fb: { cmp bc bne b3 //SEG366 fb::@12 - //SEG367 [122] (byte) bd#150 ? ++ (byte) bd#108 -- vbuyy=_inc_vbuyy + //SEG367 [122] (byte) bd#150 ← ++ (byte) bd#108 -- vbuyy=_inc_vbuyy iny - //SEG368 [123] (byte~) bd#240 ? (byte) bd#150 -- vbuaa=vbuyy + //SEG368 [123] (byte~) bd#240 ← (byte) bd#150 -- vbuaa=vbuyy tya //SEG369 [124] call fc //SEG370 [161] phi from fb::@12 to fc [phi:fb::@12->fc] @@ -6836,9 +6836,9 @@ fb: { cmp bc bne b4 //SEG378 fb::@13 - //SEG379 [127] (byte) bd#151 ? ++ (byte) bd#109 -- vbuyy=_inc_vbuyy + //SEG379 [127] (byte) bd#151 ← ++ (byte) bd#109 -- vbuyy=_inc_vbuyy iny - //SEG380 [128] (byte~) bd#241 ? (byte) bd#151 -- vbuaa=vbuyy + //SEG380 [128] (byte~) bd#241 ← (byte) bd#151 -- vbuaa=vbuyy tya //SEG381 [129] call fc //SEG382 [161] phi from fb::@13 to fc [phi:fb::@13->fc] @@ -6855,9 +6855,9 @@ fb: { cmp bc bne b5 //SEG390 fb::@14 - //SEG391 [132] (byte) bd#152 ? ++ (byte) bd#110 -- vbuyy=_inc_vbuyy + //SEG391 [132] (byte) bd#152 ← ++ (byte) bd#110 -- vbuyy=_inc_vbuyy iny - //SEG392 [133] (byte~) bd#242 ? (byte) bd#152 -- vbuaa=vbuyy + //SEG392 [133] (byte~) bd#242 ← (byte) bd#152 -- vbuaa=vbuyy tya //SEG393 [134] call fc //SEG394 [161] phi from fb::@14 to fc [phi:fb::@14->fc] @@ -6874,9 +6874,9 @@ fb: { cmp bc bne b6 //SEG402 fb::@15 - //SEG403 [137] (byte) bd#153 ? ++ (byte) bd#111 -- vbuyy=_inc_vbuyy + //SEG403 [137] (byte) bd#153 ← ++ (byte) bd#111 -- vbuyy=_inc_vbuyy iny - //SEG404 [138] (byte~) bd#243 ? (byte) bd#153 -- vbuaa=vbuyy + //SEG404 [138] (byte~) bd#243 ← (byte) bd#153 -- vbuaa=vbuyy tya //SEG405 [139] call fc //SEG406 [161] phi from fb::@15 to fc [phi:fb::@15->fc] @@ -6893,9 +6893,9 @@ fb: { cmp bc bne b7 //SEG414 fb::@16 - //SEG415 [142] (byte) bd#154 ? ++ (byte) bd#112 -- vbuyy=_inc_vbuyy + //SEG415 [142] (byte) bd#154 ← ++ (byte) bd#112 -- vbuyy=_inc_vbuyy iny - //SEG416 [143] (byte~) bd#244 ? (byte) bd#154 -- vbuaa=vbuyy + //SEG416 [143] (byte~) bd#244 ← (byte) bd#154 -- vbuaa=vbuyy tya //SEG417 [144] call fc //SEG418 [161] phi from fb::@16 to fc [phi:fb::@16->fc] @@ -6912,9 +6912,9 @@ fb: { cmp bc bne b8 //SEG426 fb::@17 - //SEG427 [147] (byte) bd#155 ? ++ (byte) bd#113 -- vbuyy=_inc_vbuyy + //SEG427 [147] (byte) bd#155 ← ++ (byte) bd#113 -- vbuyy=_inc_vbuyy iny - //SEG428 [148] (byte~) bd#245 ? (byte) bd#155 -- vbuaa=vbuyy + //SEG428 [148] (byte~) bd#245 ← (byte) bd#155 -- vbuaa=vbuyy tya //SEG429 [149] call fc //SEG430 [161] phi from fb::@17 to fc [phi:fb::@17->fc] @@ -6931,9 +6931,9 @@ fb: { cmp bc bne b9 //SEG438 fb::@18 - //SEG439 [152] (byte) bd#157 ? ++ (byte) bd#114 -- vbuyy=_inc_vbuyy + //SEG439 [152] (byte) bd#157 ← ++ (byte) bd#114 -- vbuyy=_inc_vbuyy iny - //SEG440 [153] (byte~) bd#246 ? (byte) bd#157 -- vbuaa=vbuyy + //SEG440 [153] (byte~) bd#246 ← (byte) bd#157 -- vbuaa=vbuyy tya //SEG441 [154] call fc //SEG442 [161] phi from fb::@18 to fc [phi:fb::@18->fc] @@ -6976,7 +6976,7 @@ fc: { cmp #0 bne b1 //SEG466 fc::@10 - //SEG467 [163] (byte) be#36 ? ++ (byte) be#129 -- vbuz1=_inc_vbuz1 + //SEG467 [163] (byte) be#36 ← ++ (byte) be#129 -- vbuz1=_inc_vbuz1 inc be //SEG468 [164] phi from fc fc::@10 to fc::@1 [phi:fc/fc::@10->fc::@1] //SEG469 [164] phi (byte) be#130 = (byte) be#129 [phi:fc/fc::@10->fc::@1#0] -- register_copy @@ -6986,7 +6986,7 @@ fc: { cmp #1 bne b2 //SEG472 fc::@11 - //SEG473 [166] (byte) be#37 ? ++ (byte) be#130 -- vbuz1=_inc_vbuz1 + //SEG473 [166] (byte) be#37 ← ++ (byte) be#130 -- vbuz1=_inc_vbuz1 inc be //SEG474 [167] phi from fc::@1 fc::@11 to fc::@2 [phi:fc::@1/fc::@11->fc::@2] //SEG475 [167] phi (byte) be#131 = (byte) be#130 [phi:fc::@1/fc::@11->fc::@2#0] -- register_copy @@ -6996,7 +6996,7 @@ fc: { cmp #2 bne b3 //SEG478 fc::@12 - //SEG479 [169] (byte) be#38 ? ++ (byte) be#131 -- vbuz1=_inc_vbuz1 + //SEG479 [169] (byte) be#38 ← ++ (byte) be#131 -- vbuz1=_inc_vbuz1 inc be //SEG480 [170] phi from fc::@12 fc::@2 to fc::@3 [phi:fc::@12/fc::@2->fc::@3] //SEG481 [170] phi (byte) be#132 = (byte) be#38 [phi:fc::@12/fc::@2->fc::@3#0] -- register_copy @@ -7006,7 +7006,7 @@ fc: { cmp #3 bne b4 //SEG484 fc::@13 - //SEG485 [172] (byte) be#39 ? ++ (byte) be#132 -- vbuz1=_inc_vbuz1 + //SEG485 [172] (byte) be#39 ← ++ (byte) be#132 -- vbuz1=_inc_vbuz1 inc be //SEG486 [173] phi from fc::@13 fc::@3 to fc::@4 [phi:fc::@13/fc::@3->fc::@4] //SEG487 [173] phi (byte) be#133 = (byte) be#39 [phi:fc::@13/fc::@3->fc::@4#0] -- register_copy @@ -7016,7 +7016,7 @@ fc: { cmp #4 bne b5 //SEG490 fc::@14 - //SEG491 [175] (byte) be#40 ? ++ (byte) be#133 -- vbuz1=_inc_vbuz1 + //SEG491 [175] (byte) be#40 ← ++ (byte) be#133 -- vbuz1=_inc_vbuz1 inc be //SEG492 [176] phi from fc::@14 fc::@4 to fc::@5 [phi:fc::@14/fc::@4->fc::@5] //SEG493 [176] phi (byte) be#134 = (byte) be#40 [phi:fc::@14/fc::@4->fc::@5#0] -- register_copy @@ -7026,7 +7026,7 @@ fc: { cmp #5 bne b6 //SEG496 fc::@15 - //SEG497 [178] (byte) be#41 ? ++ (byte) be#134 -- vbuz1=_inc_vbuz1 + //SEG497 [178] (byte) be#41 ← ++ (byte) be#134 -- vbuz1=_inc_vbuz1 inc be //SEG498 [179] phi from fc::@15 fc::@5 to fc::@6 [phi:fc::@15/fc::@5->fc::@6] //SEG499 [179] phi (byte) be#135 = (byte) be#41 [phi:fc::@15/fc::@5->fc::@6#0] -- register_copy @@ -7036,7 +7036,7 @@ fc: { cmp #6 bne b7 //SEG502 fc::@16 - //SEG503 [181] (byte) be#42 ? ++ (byte) be#135 -- vbuz1=_inc_vbuz1 + //SEG503 [181] (byte) be#42 ← ++ (byte) be#135 -- vbuz1=_inc_vbuz1 inc be //SEG504 [182] phi from fc::@16 fc::@6 to fc::@7 [phi:fc::@16/fc::@6->fc::@7] //SEG505 [182] phi (byte) be#136 = (byte) be#42 [phi:fc::@16/fc::@6->fc::@7#0] -- register_copy @@ -7046,7 +7046,7 @@ fc: { cmp #7 bne b8 //SEG508 fc::@17 - //SEG509 [184] (byte) be#43 ? ++ (byte) be#136 -- vbuz1=_inc_vbuz1 + //SEG509 [184] (byte) be#43 ← ++ (byte) be#136 -- vbuz1=_inc_vbuz1 inc be //SEG510 [185] phi from fc::@17 fc::@7 to fc::@8 [phi:fc::@17/fc::@7->fc::@8] //SEG511 [185] phi (byte) be#137 = (byte) be#43 [phi:fc::@17/fc::@7->fc::@8#0] -- register_copy @@ -7056,7 +7056,7 @@ fc: { cmp #8 bne b9 //SEG514 fc::@18 - //SEG515 [187] (byte) be#44 ? ++ (byte) be#137 -- vbuz1=_inc_vbuz1 + //SEG515 [187] (byte) be#44 ← ++ (byte) be#137 -- vbuz1=_inc_vbuz1 inc be //SEG516 [188] phi from fc::@18 fc::@8 to fc::@9 [phi:fc::@18/fc::@8->fc::@9] //SEG517 [188] phi (byte) be#138 = (byte) be#44 [phi:fc::@18/fc::@8->fc::@9#0] -- register_copy diff --git a/src/test/ref/roll-sprite-msb.log b/src/test/ref/roll-sprite-msb.log index eec4dab01..94f52f425 100644 --- a/src/test/ref/roll-sprite-msb.log +++ b/src/test/ref/roll-sprite-msb.log @@ -1,132 +1,132 @@ -Inlined call (byte~) vicSelectGfxBank::$0 ? call toDd00 (byte*) vicSelectGfxBank::gfx +Inlined call (byte~) vicSelectGfxBank::$0 ← call toDd00 (byte*) vicSelectGfxBank::gfx CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) PROCPORT_DDR#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) PROCPORT_DDR_MEMORY_MASK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte*) PROCPORT#0 ? ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) PROCPORT_RAM_ALL#0 ? (byte/signed byte/word/signed word/dword/signed dword) $30 - (byte) PROCPORT_RAM_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $35 - (byte) PROCPORT_RAM_CHARROM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $31 - (byte) PROCPORT_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $36 - (byte) PROCPORT_BASIC_KERNEL_IO#0 ? (byte/signed byte/word/signed word/dword/signed dword) $37 - (byte*) CHARGEN#0 ? ((byte*)) (word/dword/signed dword) $d000 - (word) SPRITE_PTRS#0 ? (word/signed word/dword/signed dword) $3f8 - (byte*) SPRITES_XPOS#0 ? ((byte*)) (word/dword/signed dword) $d000 - (byte*) SPRITES_YPOS#0 ? ((byte*)) (word/dword/signed dword) $d001 - (byte*) SPRITES_XMSB#0 ? ((byte*)) (word/dword/signed dword) $d010 - (byte*) RASTER#0 ? ((byte*)) (word/dword/signed dword) $d012 - (byte*) SPRITES_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d015 - (byte*) SPRITES_EXPAND_Y#0 ? ((byte*)) (word/dword/signed dword) $d017 - (byte*) SPRITES_PRIORITY#0 ? ((byte*)) (word/dword/signed dword) $d01b - (byte*) SPRITES_MC#0 ? ((byte*)) (word/dword/signed dword) $d01c - (byte*) SPRITES_EXPAND_X#0 ? ((byte*)) (word/dword/signed dword) $d01d - (byte*) BORDERCOL#0 ? ((byte*)) (word/dword/signed dword) $d020 - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL1#0 ? ((byte*)) (word/dword/signed dword) $d021 - (byte*) BGCOL2#0 ? ((byte*)) (word/dword/signed dword) $d022 - (byte*) BGCOL3#0 ? ((byte*)) (word/dword/signed dword) $d023 - (byte*) BGCOL4#0 ? ((byte*)) (word/dword/signed dword) $d024 - (byte*) SPRITES_MC1#0 ? ((byte*)) (word/dword/signed dword) $d025 - (byte*) SPRITES_MC2#0 ? ((byte*)) (word/dword/signed dword) $d026 - (byte*) SPRITES_COLS#0 ? ((byte*)) (word/dword/signed dword) $d027 - (byte*) VIC_CONTROL#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte*) D011#0 ? ((byte*)) (word/dword/signed dword) $d011 - (byte) VIC_RST8#0 ? (byte/word/signed word/dword/signed dword) $80 - (byte) VIC_ECM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $40 - (byte) VIC_BMM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $20 - (byte) VIC_DEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_RSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) VIC_CONTROL2#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte*) D016#0 ? ((byte*)) (word/dword/signed dword) $d016 - (byte) VIC_MCM#0 ? (byte/signed byte/word/signed word/dword/signed dword) $10 - (byte) VIC_CSEL#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) D018#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) VIC_MEMORY#0 ? ((byte*)) (word/dword/signed dword) $d018 - (byte*) LIGHTPEN_X#0 ? ((byte*)) (word/dword/signed dword) $d013 - (byte*) LIGHTPEN_Y#0 ? ((byte*)) (word/dword/signed dword) $d014 - (byte*) IRQ_STATUS#0 ? ((byte*)) (word/dword/signed dword) $d019 - (byte*) IRQ_ENABLE#0 ? ((byte*)) (word/dword/signed dword) $d01a - (byte) IRQ_RASTER#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) IRQ_COLLISION_BG#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) IRQ_COLLISION_SPRITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) IRQ_LIGHTPEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte*) COLS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte*) CIA1_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dc00 - (byte*) CIA1_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dc01 - (byte*) CIA1_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc02 - (byte*) CIA1_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dc03 - (byte*) CIA1_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dc0d - (byte) CIA_INTERRUPT_CLEAR#0 ? (byte/signed byte/word/signed word/dword/signed dword) $7f - (byte*) CIA2_PORT_A#0 ? ((byte*)) (word/dword/signed dword) $dd00 - (byte*) CIA2_PORT_B#0 ? ((byte*)) (word/dword/signed dword) $dd01 - (byte*) CIA2_PORT_A_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd02 - (byte*) CIA2_PORT_B_DDR#0 ? ((byte*)) (word/dword/signed dword) $dd03 - (byte*) CIA2_INTERRUPT#0 ? ((byte*)) (word/dword/signed dword) $dd0d - (void()**) KERNEL_IRQ#0 ? ((void()**)) (word/signed word/dword/signed dword) $314 - (void()**) HARDWARE_IRQ#0 ? ((void()**)) (word/dword/signed dword) $fffe - (byte) BLACK#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) WHITE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) RED#0 ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) CYAN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte) PURPLE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 5 - (byte) BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte) YELLOW#0 ? (byte/signed byte/word/signed word/dword/signed dword) 7 - (byte) ORANGE#0 ? (byte/signed byte/word/signed word/dword/signed dword) 8 - (byte) BROWN#0 ? (byte/signed byte/word/signed word/dword/signed dword) 9 - (byte) PINK#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) DARK_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $b - (byte) GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $c - (byte) LIGHT_GREEN#0 ? (byte/signed byte/word/signed word/dword/signed dword) $d - (byte) LIGHT_BLUE#0 ? (byte/signed byte/word/signed word/dword/signed dword) $e - (byte) LIGHT_GREY#0 ? (byte/signed byte/word/signed word/dword/signed dword) $f + (byte*) PROCPORT_DDR#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) PROCPORT_DDR_MEMORY_MASK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte*) PROCPORT#0 ← ((byte*)) (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) PROCPORT_RAM_ALL#0 ← (byte/signed byte/word/signed word/dword/signed dword) $30 + (byte) PROCPORT_RAM_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $35 + (byte) PROCPORT_RAM_CHARROM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $31 + (byte) PROCPORT_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $36 + (byte) PROCPORT_BASIC_KERNEL_IO#0 ← (byte/signed byte/word/signed word/dword/signed dword) $37 + (byte*) CHARGEN#0 ← ((byte*)) (word/dword/signed dword) $d000 + (word) SPRITE_PTRS#0 ← (word/signed word/dword/signed dword) $3f8 + (byte*) SPRITES_XPOS#0 ← ((byte*)) (word/dword/signed dword) $d000 + (byte*) SPRITES_YPOS#0 ← ((byte*)) (word/dword/signed dword) $d001 + (byte*) SPRITES_XMSB#0 ← ((byte*)) (word/dword/signed dword) $d010 + (byte*) RASTER#0 ← ((byte*)) (word/dword/signed dword) $d012 + (byte*) SPRITES_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d015 + (byte*) SPRITES_EXPAND_Y#0 ← ((byte*)) (word/dword/signed dword) $d017 + (byte*) SPRITES_PRIORITY#0 ← ((byte*)) (word/dword/signed dword) $d01b + (byte*) SPRITES_MC#0 ← ((byte*)) (word/dword/signed dword) $d01c + (byte*) SPRITES_EXPAND_X#0 ← ((byte*)) (word/dword/signed dword) $d01d + (byte*) BORDERCOL#0 ← ((byte*)) (word/dword/signed dword) $d020 + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL1#0 ← ((byte*)) (word/dword/signed dword) $d021 + (byte*) BGCOL2#0 ← ((byte*)) (word/dword/signed dword) $d022 + (byte*) BGCOL3#0 ← ((byte*)) (word/dword/signed dword) $d023 + (byte*) BGCOL4#0 ← ((byte*)) (word/dword/signed dword) $d024 + (byte*) SPRITES_MC1#0 ← ((byte*)) (word/dword/signed dword) $d025 + (byte*) SPRITES_MC2#0 ← ((byte*)) (word/dword/signed dword) $d026 + (byte*) SPRITES_COLS#0 ← ((byte*)) (word/dword/signed dword) $d027 + (byte*) VIC_CONTROL#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte*) D011#0 ← ((byte*)) (word/dword/signed dword) $d011 + (byte) VIC_RST8#0 ← (byte/word/signed word/dword/signed dword) $80 + (byte) VIC_ECM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $40 + (byte) VIC_BMM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $20 + (byte) VIC_DEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_RSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) VIC_CONTROL2#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte*) D016#0 ← ((byte*)) (word/dword/signed dword) $d016 + (byte) VIC_MCM#0 ← (byte/signed byte/word/signed word/dword/signed dword) $10 + (byte) VIC_CSEL#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) D018#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) VIC_MEMORY#0 ← ((byte*)) (word/dword/signed dword) $d018 + (byte*) LIGHTPEN_X#0 ← ((byte*)) (word/dword/signed dword) $d013 + (byte*) LIGHTPEN_Y#0 ← ((byte*)) (word/dword/signed dword) $d014 + (byte*) IRQ_STATUS#0 ← ((byte*)) (word/dword/signed dword) $d019 + (byte*) IRQ_ENABLE#0 ← ((byte*)) (word/dword/signed dword) $d01a + (byte) IRQ_RASTER#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) IRQ_COLLISION_BG#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) IRQ_COLLISION_SPRITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) IRQ_LIGHTPEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte*) COLS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte*) CIA1_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dc00 + (byte*) CIA1_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dc01 + (byte*) CIA1_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc02 + (byte*) CIA1_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dc03 + (byte*) CIA1_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dc0d + (byte) CIA_INTERRUPT_CLEAR#0 ← (byte/signed byte/word/signed word/dword/signed dword) $7f + (byte*) CIA2_PORT_A#0 ← ((byte*)) (word/dword/signed dword) $dd00 + (byte*) CIA2_PORT_B#0 ← ((byte*)) (word/dword/signed dword) $dd01 + (byte*) CIA2_PORT_A_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd02 + (byte*) CIA2_PORT_B_DDR#0 ← ((byte*)) (word/dword/signed dword) $dd03 + (byte*) CIA2_INTERRUPT#0 ← ((byte*)) (word/dword/signed dword) $dd0d + (void()**) KERNEL_IRQ#0 ← ((void()**)) (word/signed word/dword/signed dword) $314 + (void()**) HARDWARE_IRQ#0 ← ((void()**)) (word/dword/signed dword) $fffe + (byte) BLACK#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) WHITE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) RED#0 ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) CYAN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte) PURPLE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte) BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte) YELLOW#0 ← (byte/signed byte/word/signed word/dword/signed dword) 7 + (byte) ORANGE#0 ← (byte/signed byte/word/signed word/dword/signed dword) 8 + (byte) BROWN#0 ← (byte/signed byte/word/signed word/dword/signed dword) 9 + (byte) PINK#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) DARK_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $b + (byte) GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $c + (byte) LIGHT_GREEN#0 ← (byte/signed byte/word/signed word/dword/signed dword) $d + (byte) LIGHT_BLUE#0 ← (byte/signed byte/word/signed word/dword/signed dword) $e + (byte) LIGHT_GREY#0 ← (byte/signed byte/word/signed word/dword/signed dword) $f to:@6 main: scope:[main] from @6 - (word) main::xpos#0 ? (byte/word/signed word/dword/signed dword) $c8 - (byte) main::s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) main::xpos#0 ← (byte/word/signed word/dword/signed dword) $c8 + (byte) main::s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main main::@3 - (word) main::xpos#2 ? phi( main/(word) main::xpos#0 main::@3/(word) main::xpos#1 ) - (byte) main::s#2 ? phi( main/(byte) main::s#0 main::@3/(byte) main::s#1 ) - (byte) position_sprite::spriteno#0 ? (byte) main::s#2 - (word) position_sprite::x#0 ? (word) main::xpos#2 - (byte) position_sprite::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) $32 + (word) main::xpos#2 ← phi( main/(word) main::xpos#0 main::@3/(word) main::xpos#1 ) + (byte) main::s#2 ← phi( main/(byte) main::s#0 main::@3/(byte) main::s#1 ) + (byte) position_sprite::spriteno#0 ← (byte) main::s#2 + (word) position_sprite::x#0 ← (word) main::xpos#2 + (byte) position_sprite::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) $32 call position_sprite to:main::@3 main::@3: scope:[main] from main::@1 - (byte) main::s#3 ? phi( main::@1/(byte) main::s#2 ) - (word) main::xpos#3 ? phi( main::@1/(word) main::xpos#2 ) - (word) main::xpos#1 ? (word) main::xpos#3 + (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) main::s#1 ? (byte) main::s#3 + rangenext(0,7) - (bool~) main::$1 ? (byte) main::s#1 != rangelast(0,7) + (byte) main::s#3 ← phi( main::@1/(byte) main::s#2 ) + (word) main::xpos#3 ← phi( main::@1/(word) main::xpos#2 ) + (word) main::xpos#1 ← (word) main::xpos#3 + (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) main::s#1 ← (byte) main::s#3 + rangenext(0,7) + (bool~) main::$1 ← (byte) main::s#1 != rangelast(0,7) if((bool~) main::$1) goto main::@1 to:main::@return main::@return: scope:[main] from main::@3 return to:@return position_sprite: scope:[position_sprite] from main::@1 - (word) position_sprite::x#1 ? phi( main::@1/(word) position_sprite::x#0 ) - (byte) position_sprite::y#1 ? phi( main::@1/(byte) position_sprite::y#0 ) - (byte) position_sprite::spriteno#1 ? phi( main::@1/(byte) position_sprite::spriteno#0 ) - (byte~) position_sprite::$0 ? (byte) position_sprite::spriteno#1 << (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ? (byte) position_sprite::y#1 - (byte~) position_sprite::$1 ? (byte) position_sprite::spriteno#1 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) position_sprite::$2 ? < (word) position_sprite::x#1 - *((byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ? (byte~) position_sprite::$2 - (bool~) position_sprite::$3 ? (word) position_sprite::x#1 > (byte/word/signed word/dword/signed dword) $ff + (word) position_sprite::x#1 ← phi( main::@1/(word) position_sprite::x#0 ) + (byte) position_sprite::y#1 ← phi( main::@1/(byte) position_sprite::y#0 ) + (byte) position_sprite::spriteno#1 ← phi( main::@1/(byte) position_sprite::spriteno#0 ) + (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#1 << (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (byte) position_sprite::y#1 + (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#1 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) position_sprite::$2 ← < (word) position_sprite::x#1 + *((byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ← (byte~) position_sprite::$2 + (bool~) position_sprite::$3 ← (word) position_sprite::x#1 > (byte/word/signed word/dword/signed dword) $ff if((bool~) position_sprite::$3) goto position_sprite::@1 to:position_sprite::@3 position_sprite::@1: scope:[position_sprite] from position_sprite - (byte) position_sprite::spriteno#2 ? phi( position_sprite/(byte) position_sprite::spriteno#1 ) - (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#2 - *((byte*) SPRITES_XMSB#0) ? *((byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 + (byte) position_sprite::spriteno#2 ← phi( position_sprite/(byte) position_sprite::spriteno#1 ) + (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#2 + *((byte*) SPRITES_XMSB#0) ← *((byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 to:position_sprite::@return position_sprite::@3: scope:[position_sprite] from position_sprite - (byte) position_sprite::spriteno#3 ? phi( position_sprite/(byte) position_sprite::spriteno#1 ) - (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#3 - (byte/word/dword~) position_sprite::$5 ? (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff - *((byte*) SPRITES_XMSB#0) ? *((byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 + (byte) position_sprite::spriteno#3 ← phi( position_sprite/(byte) position_sprite::spriteno#1 ) + (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#3 + (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff + *((byte*) SPRITES_XMSB#0) ← *((byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 to:position_sprite::@return position_sprite::@return: scope:[position_sprite] from position_sprite::@1 position_sprite::@3 return @@ -436,7 +436,7 @@ Constant (const byte) main::s#0 = 0 Constant (const byte) position_sprite::y#0 = $32 Successful SSA optimization Pass2ConstantIdentification Successful SSA optimization PassNEliminateUnusedVars -Resolved ranged next value main::s#1 ? ++ main::s#2 to ++ +Resolved ranged next value main::s#1 ← ++ main::s#2 to ++ Resolved ranged comparison value if(main::s#1!=rangelast(0,7)) goto main::@1 to (byte/signed byte/word/signed word/dword/signed dword) 8 Inlining constant with var siblings (const word) main::xpos#0 Inlining constant with var siblings (const byte) main::s#0 @@ -453,8 +453,8 @@ Calls in [] to main:2 Calls in [main] to position_sprite:8 Created 2 initial phi equivalence classes -Coalesced [13] main::s#4 ? main::s#1 -Coalesced [14] main::xpos#4 ? main::xpos#1 +Coalesced [13] main::s#4 ← main::s#1 +Coalesced [14] main::xpos#4 ← main::xpos#1 Coalesced down to 2 phi equivalence classes Culled Empty Block (label) main::@4 Renumbering block @6 to @1 @@ -479,39 +479,39 @@ main: scope:[main] from @1 [4] phi() to:main::@1 main::@1: scope:[main] from main main::@2 - [5] (word) main::xpos#2 ? phi( main/(byte/word/signed word/dword/signed dword) $c8 main::@2/(word) main::xpos#1 ) - [5] (byte) main::s#2 ? phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) main::s#1 ) - [6] (byte) position_sprite::spriteno#0 ? (byte) main::s#2 - [7] (word) position_sprite::x#0 ? (word) main::xpos#2 + [5] (word) main::xpos#2 ← phi( main/(byte/word/signed word/dword/signed dword) $c8 main::@2/(word) main::xpos#1 ) + [5] (byte) main::s#2 ← phi( main/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@2/(byte) main::s#1 ) + [6] (byte) position_sprite::spriteno#0 ← (byte) main::s#2 + [7] (word) position_sprite::x#0 ← (word) main::xpos#2 [8] call position_sprite to:main::@2 main::@2: scope:[main] from main::@1 - [9] (word) main::xpos#1 ? (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a - [10] (byte) main::s#1 ? ++ (byte) main::s#2 + [9] (word) main::xpos#1 ← (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a + [10] (byte) main::s#1 ← ++ (byte) main::s#2 [11] if((byte) main::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto main::@1 to:main::@return main::@return: scope:[main] from main::@2 [12] return to:@return position_sprite: scope:[position_sprite] from main::@1 - [13] (byte~) position_sprite::$0 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ? (const byte) position_sprite::y#0 - [15] (byte~) position_sprite::$1 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [16] (byte~) position_sprite::$2 ? < (word) position_sprite::x#0 - [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ? (byte~) position_sprite::$2 + [13] (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (const byte) position_sprite::y#0 + [15] (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [16] (byte~) position_sprite::$2 ← < (word) position_sprite::x#0 + [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ← (byte~) position_sprite::$2 [18] if((word) position_sprite::x#0>(byte/word/signed word/dword/signed dword) $ff) goto position_sprite::@1 to:position_sprite::@2 position_sprite::@2: scope:[position_sprite] from position_sprite - [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 - [20] (byte/word/dword~) position_sprite::$5 ? (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff - [21] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 + [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 + [20] (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff + [21] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 to:position_sprite::@return position_sprite::@return: scope:[position_sprite] from position_sprite::@1 position_sprite::@2 [22] return to:@return position_sprite::@1: scope:[position_sprite] from position_sprite - [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 - [24] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 + [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 + [24] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 to:position_sprite::@return @@ -697,10 +697,10 @@ main: { jmp b1 //SEG17 main::@1 b1: - //SEG18 [6] (byte) position_sprite::spriteno#0 ? (byte) main::s#2 -- vbuz1=vbuz2 + //SEG18 [6] (byte) position_sprite::spriteno#0 ← (byte) main::s#2 -- vbuz1=vbuz2 lda s sta position_sprite.spriteno - //SEG19 [7] (word) position_sprite::x#0 ? (word) main::xpos#2 -- vwuz1=vwuz2 + //SEG19 [7] (word) position_sprite::x#0 ← (word) main::xpos#2 -- vwuz1=vwuz2 lda xpos sta position_sprite.x lda xpos+1 @@ -710,7 +710,7 @@ main: { jmp b2 //SEG21 main::@2 b2: - //SEG22 [9] (word) main::xpos#1 ? (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwuz1=vwuz1_plus_vbuc1 + //SEG22 [9] (word) main::xpos#1 ← (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwuz1=vwuz1_plus_vbuc1 lda #$a clc adc xpos @@ -718,7 +718,7 @@ main: { bcc !+ inc xpos+1 !: - //SEG23 [10] (byte) main::s#1 ? ++ (byte) main::s#2 -- vbuz1=_inc_vbuz1 + //SEG23 [10] (byte) main::s#1 ← ++ (byte) main::s#2 -- vbuz1=_inc_vbuz1 inc s //SEG24 [11] if((byte) main::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto main::@1 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -742,22 +742,22 @@ position_sprite: { .label _6 = $d .label spriteno = 5 .label x = 6 - //SEG28 [13] (byte~) position_sprite::$0 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG28 [13] (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda spriteno asl sta _0 - //SEG29 [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ? (const byte) position_sprite::y#0 -- pbuc1_derefidx_vbuz1=vbuc2 + //SEG29 [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (const byte) position_sprite::y#0 -- pbuc1_derefidx_vbuz1=vbuc2 lda #y ldy _0 sta SPRITES_YPOS,y - //SEG30 [15] (byte~) position_sprite::$1 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 + //SEG30 [15] (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_rol_1 lda spriteno asl sta _1 - //SEG31 [16] (byte~) position_sprite::$2 ? < (word) position_sprite::x#0 -- vbuz1=_lo_vwuz2 + //SEG31 [16] (byte~) position_sprite::$2 ← < (word) position_sprite::x#0 -- vbuz1=_lo_vwuz2 lda x sta _2 - //SEG32 [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ? (byte~) position_sprite::$2 -- pbuc1_derefidx_vbuz1=vbuz2 + //SEG32 [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ← (byte~) position_sprite::$2 -- pbuc1_derefidx_vbuz1=vbuz2 lda _2 ldy _1 sta SPRITES_XPOS,y @@ -772,7 +772,7 @@ position_sprite: { jmp b2 //SEG34 position_sprite::@2 b2: - //SEG35 [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuz1=vbuc1_rol_vbuz2 + //SEG35 [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuz1=vbuc1_rol_vbuz2 lda #1 ldy spriteno cpy #0 @@ -783,11 +783,11 @@ position_sprite: { bne !- !e: sta _4 - //SEG36 [20] (byte/word/dword~) position_sprite::$5 ? (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff -- vbuz1=vbuz2_bxor_vbuc1 + //SEG36 [20] (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff -- vbuz1=vbuz2_bxor_vbuc1 lda _4 eor #$ff sta _5 - //SEG37 [21] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 -- _deref_pbuc1=_deref_pbuc1_band_vbuz1 + //SEG37 [21] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 -- _deref_pbuc1=_deref_pbuc1_band_vbuz1 lda SPRITES_XMSB and _5 sta SPRITES_XMSB @@ -798,7 +798,7 @@ position_sprite: { rts //SEG40 position_sprite::@1 b1: - //SEG41 [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuz1=vbuc1_rol_vbuz2 + //SEG41 [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuz1=vbuc1_rol_vbuz2 lda #1 ldy spriteno cpy #0 @@ -809,7 +809,7 @@ position_sprite: { bne !- !e: sta _6 - //SEG42 [24] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 + //SEG42 [24] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 -- _deref_pbuc1=_deref_pbuc1_bor_vbuz1 lda SPRITES_XMSB ora _6 sta SPRITES_XMSB @@ -817,33 +817,33 @@ position_sprite: { } REGISTER UPLIFT POTENTIAL REGISTERS -Statement [7] (word) position_sprite::x#0 ? (word) main::xpos#2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a +Statement [7] (word) position_sprite::x#0 ← (word) main::xpos#2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::s#2 main::s#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ position_sprite::spriteno#0 ] -Statement [9] (word) main::xpos#1 ? (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a [ main::s#2 main::xpos#1 ] ( main:2 [ main::s#2 main::xpos#1 ] ) always clobbers reg byte a -Statement [13] (byte~) position_sprite::$0 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ) always clobbers reg byte a -Statement [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ? (const byte) position_sprite::y#0 [ position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a -Statement [15] (byte~) position_sprite::$1 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ) always clobbers reg byte a -Statement [16] (byte~) position_sprite::$2 ? < (word) position_sprite::x#0 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ) always clobbers reg byte a +Statement [9] (word) main::xpos#1 ← (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a [ main::s#2 main::xpos#1 ] ( main:2 [ main::s#2 main::xpos#1 ] ) always clobbers reg byte a +Statement [13] (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ) always clobbers reg byte a +Statement [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (const byte) position_sprite::y#0 [ position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a +Statement [15] (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ) always clobbers reg byte a +Statement [16] (byte~) position_sprite::$2 ← < (word) position_sprite::x#0 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ position_sprite::$1 ] Statement [18] if((word) position_sprite::x#0>(byte/word/signed word/dword/signed dword) $ff) goto position_sprite::@1 [ position_sprite::spriteno#0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 ] ) always clobbers reg byte a -Statement [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$4 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$4 ] ) always clobbers reg byte a -Statement [20] (byte/word/dword~) position_sprite::$5 ? (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff [ position_sprite::$5 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$5 ] ) always clobbers reg byte a -Statement [21] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a -Statement [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$6 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$6 ] ) always clobbers reg byte a -Statement [24] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a -Statement [7] (word) position_sprite::x#0 ? (word) main::xpos#2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a -Statement [9] (word) main::xpos#1 ? (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a [ main::s#2 main::xpos#1 ] ( main:2 [ main::s#2 main::xpos#1 ] ) always clobbers reg byte a -Statement [13] (byte~) position_sprite::$0 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ) always clobbers reg byte a -Statement [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ? (const byte) position_sprite::y#0 [ position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a -Statement [15] (byte~) position_sprite::$1 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ) always clobbers reg byte a -Statement [16] (byte~) position_sprite::$2 ? < (word) position_sprite::x#0 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ) always clobbers reg byte a +Statement [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$4 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$4 ] ) always clobbers reg byte a +Statement [20] (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff [ position_sprite::$5 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$5 ] ) always clobbers reg byte a +Statement [21] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a +Statement [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$6 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$6 ] ) always clobbers reg byte a +Statement [24] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a +Statement [7] (word) position_sprite::x#0 ← (word) main::xpos#2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a +Statement [9] (word) main::xpos#1 ← (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a [ main::s#2 main::xpos#1 ] ( main:2 [ main::s#2 main::xpos#1 ] ) always clobbers reg byte a +Statement [13] (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$0 ] ) always clobbers reg byte a +Statement [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (const byte) position_sprite::y#0 [ position_sprite::spriteno#0 position_sprite::x#0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 ] ) always clobbers reg byte a +Statement [15] (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 ] ) always clobbers reg byte a +Statement [16] (byte~) position_sprite::$2 ← < (word) position_sprite::x#0 [ position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 position_sprite::x#0 position_sprite::$1 position_sprite::$2 ] ) always clobbers reg byte a Statement [18] if((word) position_sprite::x#0>(byte/word/signed word/dword/signed dword) $ff) goto position_sprite::@1 [ position_sprite::spriteno#0 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::spriteno#0 ] ) always clobbers reg byte a -Statement [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$4 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$4 ] ) always clobbers reg byte a -Statement [20] (byte/word/dword~) position_sprite::$5 ? (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff [ position_sprite::$5 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$5 ] ) always clobbers reg byte a -Statement [21] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a -Statement [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$6 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$6 ] ) always clobbers reg byte a -Statement [24] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a +Statement [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$4 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$4 ] ) always clobbers reg byte a +Statement [20] (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff [ position_sprite::$5 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$5 ] ) always clobbers reg byte a +Statement [21] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a +Statement [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 [ position_sprite::$6 ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 position_sprite::$6 ] ) always clobbers reg byte a +Statement [24] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 [ ] ( main:2::position_sprite:8 [ main::s#2 main::xpos#2 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ main::s#2 main::s#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , Potential registers zp ZP_WORD:3 [ main::xpos#2 main::xpos#1 ] : zp ZP_WORD:3 , Potential registers zp ZP_BYTE:5 [ position_sprite::spriteno#0 ] : zp ZP_BYTE:5 , reg byte x , reg byte y , @@ -921,15 +921,15 @@ main: { jmp b1 //SEG17 main::@1 b1: - //SEG18 [6] (byte) position_sprite::spriteno#0 ? (byte) main::s#2 -- vbuz1=vbuxx + //SEG18 [6] (byte) position_sprite::spriteno#0 ← (byte) main::s#2 -- vbuz1=vbuxx stx position_sprite.spriteno - //SEG19 [7] (word) position_sprite::x#0 ? (word) main::xpos#2 + //SEG19 [7] (word) position_sprite::x#0 ← (word) main::xpos#2 //SEG20 [8] call position_sprite jsr position_sprite jmp b2 //SEG21 main::@2 b2: - //SEG22 [9] (word) main::xpos#1 ? (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwuz1=vwuz1_plus_vbuc1 + //SEG22 [9] (word) main::xpos#1 ← (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwuz1=vwuz1_plus_vbuc1 lda #$a clc adc xpos @@ -937,7 +937,7 @@ main: { bcc !+ inc xpos+1 !: - //SEG23 [10] (byte) main::s#1 ? ++ (byte) main::s#2 -- vbuxx=_inc_vbuxx + //SEG23 [10] (byte) main::s#1 ← ++ (byte) main::s#2 -- vbuxx=_inc_vbuxx inx //SEG24 [11] if((byte) main::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -954,20 +954,20 @@ position_sprite: { .const y = $32 .label spriteno = 4 .label x = 2 - //SEG28 [13] (byte~) position_sprite::$0 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 + //SEG28 [13] (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 lda spriteno asl - //SEG29 [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ? (const byte) position_sprite::y#0 -- pbuc1_derefidx_vbuaa=vbuc2 + //SEG29 [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (const byte) position_sprite::y#0 -- pbuc1_derefidx_vbuaa=vbuc2 tay lda #y sta SPRITES_YPOS,y - //SEG30 [15] (byte~) position_sprite::$1 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_rol_1 + //SEG30 [15] (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_rol_1 lda spriteno asl tay - //SEG31 [16] (byte~) position_sprite::$2 ? < (word) position_sprite::x#0 -- vbuaa=_lo_vwuz1 + //SEG31 [16] (byte~) position_sprite::$2 ← < (word) position_sprite::x#0 -- vbuaa=_lo_vwuz1 lda x - //SEG32 [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ? (byte~) position_sprite::$2 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG32 [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ← (byte~) position_sprite::$2 -- pbuc1_derefidx_vbuyy=vbuaa sta SPRITES_XPOS,y //SEG33 [18] if((word) position_sprite::x#0>(byte/word/signed word/dword/signed dword) $ff) goto position_sprite::@1 -- vwuz1_gt_vbuc1_then_la1 lda x+1 @@ -980,7 +980,7 @@ position_sprite: { jmp b2 //SEG34 position_sprite::@2 b2: - //SEG35 [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 + //SEG35 [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 lda #1 ldy spriteno cpy #0 @@ -990,9 +990,9 @@ position_sprite: { dey bne !- !e: - //SEG36 [20] (byte/word/dword~) position_sprite::$5 ? (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff -- vbuaa=vbuaa_bxor_vbuc1 + //SEG36 [20] (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff -- vbuaa=vbuaa_bxor_vbuc1 eor #$ff - //SEG37 [21] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa + //SEG37 [21] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa and SPRITES_XMSB sta SPRITES_XMSB jmp breturn @@ -1002,7 +1002,7 @@ position_sprite: { rts //SEG40 position_sprite::@1 b1: - //SEG41 [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 + //SEG41 [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 lda #1 ldy spriteno cpy #0 @@ -1012,7 +1012,7 @@ position_sprite: { dey bne !- !e: - //SEG42 [24] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 -- _deref_pbuc1=_deref_pbuc1_bor_vbuaa + //SEG42 [24] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 -- _deref_pbuc1=_deref_pbuc1_bor_vbuaa ora SPRITES_XMSB sta SPRITES_XMSB jmp breturn @@ -1212,13 +1212,13 @@ main: { //SEG16 [5] phi (byte) main::s#2 = (byte) main::s#1 [phi:main::@2->main::@1#1] -- register_copy //SEG17 main::@1 b1: - //SEG18 [6] (byte) position_sprite::spriteno#0 ? (byte) main::s#2 -- vbuz1=vbuxx + //SEG18 [6] (byte) position_sprite::spriteno#0 ← (byte) main::s#2 -- vbuz1=vbuxx stx position_sprite.spriteno - //SEG19 [7] (word) position_sprite::x#0 ? (word) main::xpos#2 + //SEG19 [7] (word) position_sprite::x#0 ← (word) main::xpos#2 //SEG20 [8] call position_sprite jsr position_sprite //SEG21 main::@2 - //SEG22 [9] (word) main::xpos#1 ? (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwuz1=vwuz1_plus_vbuc1 + //SEG22 [9] (word) main::xpos#1 ← (word) main::xpos#2 + (byte/signed byte/word/signed word/dword/signed dword) $a -- vwuz1=vwuz1_plus_vbuc1 lda #$a clc adc xpos @@ -1226,7 +1226,7 @@ main: { bcc !+ inc xpos+1 !: - //SEG23 [10] (byte) main::s#1 ? ++ (byte) main::s#2 -- vbuxx=_inc_vbuxx + //SEG23 [10] (byte) main::s#1 ← ++ (byte) main::s#2 -- vbuxx=_inc_vbuxx inx //SEG24 [11] if((byte) main::s#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -1241,20 +1241,20 @@ position_sprite: { .const y = $32 .label spriteno = 4 .label x = 2 - //SEG28 [13] (byte~) position_sprite::$0 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 + //SEG28 [13] (byte~) position_sprite::$0 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuz1_rol_1 lda spriteno asl - //SEG29 [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ? (const byte) position_sprite::y#0 -- pbuc1_derefidx_vbuaa=vbuc2 + //SEG29 [14] *((const byte*) SPRITES_YPOS#0 + (byte~) position_sprite::$0) ← (const byte) position_sprite::y#0 -- pbuc1_derefidx_vbuaa=vbuc2 tay lda #y sta SPRITES_YPOS,y - //SEG30 [15] (byte~) position_sprite::$1 ? (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_rol_1 + //SEG30 [15] (byte~) position_sprite::$1 ← (byte) position_sprite::spriteno#0 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuz1_rol_1 lda spriteno asl tay - //SEG31 [16] (byte~) position_sprite::$2 ? < (word) position_sprite::x#0 -- vbuaa=_lo_vwuz1 + //SEG31 [16] (byte~) position_sprite::$2 ← < (word) position_sprite::x#0 -- vbuaa=_lo_vwuz1 lda x - //SEG32 [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ? (byte~) position_sprite::$2 -- pbuc1_derefidx_vbuyy=vbuaa + //SEG32 [17] *((const byte*) SPRITES_XPOS#0 + (byte~) position_sprite::$1) ← (byte~) position_sprite::$2 -- pbuc1_derefidx_vbuyy=vbuaa sta SPRITES_XPOS,y //SEG33 [18] if((word) position_sprite::x#0>(byte/word/signed word/dword/signed dword) $ff) goto position_sprite::@1 -- vwuz1_gt_vbuc1_then_la1 lda x+1 @@ -1265,7 +1265,7 @@ position_sprite: { bcs b1 !: //SEG34 position_sprite::@2 - //SEG35 [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 + //SEG35 [19] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 lda #1 ldy spriteno cpy #0 @@ -1275,9 +1275,9 @@ position_sprite: { dey bne !- !e: - //SEG36 [20] (byte/word/dword~) position_sprite::$5 ? (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff -- vbuaa=vbuaa_bxor_vbuc1 + //SEG36 [20] (byte/word/dword~) position_sprite::$5 ← (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$4 ^ (byte/word/signed word/dword/signed dword) $ff -- vbuaa=vbuaa_bxor_vbuc1 eor #$ff - //SEG37 [21] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa + //SEG37 [21] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) & (byte/word/dword~) position_sprite::$5 -- _deref_pbuc1=_deref_pbuc1_band_vbuaa and SPRITES_XMSB sta SPRITES_XMSB //SEG38 position_sprite::@return @@ -1285,7 +1285,7 @@ position_sprite: { rts //SEG40 position_sprite::@1 b1: - //SEG41 [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 + //SEG41 [23] (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 << (byte) position_sprite::spriteno#0 -- vbuaa=vbuc1_rol_vbuz1 lda #1 ldy spriteno cpy #0 @@ -1295,7 +1295,7 @@ position_sprite: { dey bne !- !e: - //SEG42 [24] *((const byte*) SPRITES_XMSB#0) ? *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 -- _deref_pbuc1=_deref_pbuc1_bor_vbuaa + //SEG42 [24] *((const byte*) SPRITES_XMSB#0) ← *((const byte*) SPRITES_XMSB#0) | (byte/signed byte/word/signed word/dword/signed dword~) position_sprite::$6 -- _deref_pbuc1=_deref_pbuc1_bor_vbuaa ora SPRITES_XMSB sta SPRITES_XMSB rts diff --git a/src/test/ref/sinusgen16.log b/src/test/ref/sinusgen16.log index 0d0875a41..61c5bebe9 100644 --- a/src/test/ref/sinusgen16.log +++ b/src/test/ref/sinusgen16.log @@ -2,656 +2,656 @@ Identified constant variable (word) main::wavelength CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@2 @2: scope:[] from @begin - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@5 divr16u: scope:[divr16u] from div32u16u div32u16u::@2 - (word) divr16u::divisor#6 ? phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) - (word) divr16u::dividend#5 ? phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) - (word) divr16u::rem#10 ? phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#6 ← phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) + (word) divr16u::dividend#5 ← phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) + (word) divr16u::rem#10 ← phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#4 ? phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) - (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - (word~) divr16u::$0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#4 ← phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) + (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + (word~) divr16u::$0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#2 ? phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#4 ? phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#2 ← phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#4 ← phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#5 ? phi( divr16u::@1/(word) divr16u::divisor#4 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#7 ? phi( divr16u::@1/(word) divr16u::dividend#3 ) - (word) divr16u::rem#7 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#5 ← phi( divr16u::@1/(word) divr16u::divisor#4 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#7 ← phi( divr16u::@1/(word) divr16u::dividend#3 ) + (word) divr16u::rem#7 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#7 ? phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#6 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) - (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#7 ← phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#6 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) + (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#8 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#3 ? phi( divr16u::@2/(word) divr16u::divisor#2 ) - (word) divr16u::rem#8 ? phi( divr16u::@2/(word) divr16u::rem#6 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#8 - (word) divr16u::divisor#3 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#8 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#3 ← phi( divr16u::@2/(word) divr16u::divisor#2 ) + (word) divr16u::rem#8 ← phi( divr16u::@2/(word) divr16u::rem#6 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#8 - (word) divr16u::divisor#3 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#9 ? phi( divr16u::@3/(word) divr16u::rem#11 ) - (word) rem16u#1 ? (word) divr16u::rem#9 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#9 ← phi( divr16u::@3/(word) divr16u::rem#11 ) + (word) rem16u#1 ← (word) divr16u::rem#9 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#11 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#4 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#4 - (word) rem16u#2 ? (word) rem16u#11 + (word) rem16u#11 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#4 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#4 + (word) rem16u#2 ← (word) rem16u#11 return to:@return div32u16u: scope:[div32u16u] from sin16s_gen - (word) rem16u#20 ? phi( sin16s_gen/(word) rem16u#21 ) - (word) div32u16u::divisor#1 ? phi( sin16s_gen/(word) div32u16u::divisor#0 ) - (dword) div32u16u::dividend#1 ? phi( sin16s_gen/(dword) div32u16u::dividend#0 ) - (word~) div32u16u::$0 ? > (dword) div32u16u::dividend#1 - (word) divr16u::dividend#1 ? (word~) div32u16u::$0 - (word) divr16u::divisor#0 ? (word) div32u16u::divisor#1 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#20 ← phi( sin16s_gen/(word) rem16u#21 ) + (word) div32u16u::divisor#1 ← phi( sin16s_gen/(word) div32u16u::divisor#0 ) + (dword) div32u16u::dividend#1 ← phi( sin16s_gen/(dword) div32u16u::dividend#0 ) + (word~) div32u16u::$0 ← > (dword) div32u16u::dividend#1 + (word) divr16u::dividend#1 ← (word~) div32u16u::$0 + (word) divr16u::divisor#0 ← (word) div32u16u::divisor#1 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u - (word) div32u16u::divisor#2 ? phi( div32u16u/(word) div32u16u::divisor#1 ) - (dword) div32u16u::dividend#2 ? phi( div32u16u/(dword) div32u16u::dividend#1 ) - (word) rem16u#12 ? phi( div32u16u/(word) rem16u#2 ) - (word) divr16u::return#5 ? phi( div32u16u/(word) divr16u::return#2 ) - (word~) div32u16u::$1 ? (word) divr16u::return#5 - (word) rem16u#3 ? (word) rem16u#12 - (word) div32u16u::quotient_hi#0 ? (word~) div32u16u::$1 - (word~) div32u16u::$2 ? < (dword) div32u16u::dividend#2 - (word) divr16u::dividend#2 ? (word~) div32u16u::$2 - (word) divr16u::divisor#1 ? (word) div32u16u::divisor#2 - (word) divr16u::rem#4 ? (word) rem16u#3 + (word) div32u16u::divisor#2 ← phi( div32u16u/(word) div32u16u::divisor#1 ) + (dword) div32u16u::dividend#2 ← phi( div32u16u/(dword) div32u16u::dividend#1 ) + (word) rem16u#12 ← phi( div32u16u/(word) rem16u#2 ) + (word) divr16u::return#5 ← phi( div32u16u/(word) divr16u::return#2 ) + (word~) div32u16u::$1 ← (word) divr16u::return#5 + (word) rem16u#3 ← (word) rem16u#12 + (word) div32u16u::quotient_hi#0 ← (word~) div32u16u::$1 + (word~) div32u16u::$2 ← < (dword) div32u16u::dividend#2 + (word) divr16u::dividend#2 ← (word~) div32u16u::$2 + (word) divr16u::divisor#1 ← (word) div32u16u::divisor#2 + (word) divr16u::rem#4 ← (word) rem16u#3 call divr16u - (word) divr16u::return#3 ? (word) divr16u::return#1 + (word) divr16u::return#3 ← (word) divr16u::return#1 to:div32u16u::@3 div32u16u::@3: scope:[div32u16u] from div32u16u::@2 - (word) div32u16u::quotient_hi#1 ? phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) - (word) rem16u#13 ? phi( div32u16u::@2/(word) rem16u#2 ) - (word) divr16u::return#6 ? phi( div32u16u::@2/(word) divr16u::return#3 ) - (word~) div32u16u::$3 ? (word) divr16u::return#6 - (word) rem16u#4 ? (word) rem16u#13 - (word) div32u16u::quotient_lo#0 ? (word~) div32u16u::$3 - (dword) div32u16u::quotient#0 ? { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } - (dword) div32u16u::return#0 ? (dword) div32u16u::quotient#0 + (word) div32u16u::quotient_hi#1 ← phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) + (word) rem16u#13 ← phi( div32u16u::@2/(word) rem16u#2 ) + (word) divr16u::return#6 ← phi( div32u16u::@2/(word) divr16u::return#3 ) + (word~) div32u16u::$3 ← (word) divr16u::return#6 + (word) rem16u#4 ← (word) rem16u#13 + (word) div32u16u::quotient_lo#0 ← (word~) div32u16u::$3 + (dword) div32u16u::quotient#0 ← { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } + (dword) div32u16u::return#0 ← (dword) div32u16u::quotient#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@3 - (word) rem16u#14 ? phi( div32u16u::@3/(word) rem16u#4 ) - (dword) div32u16u::return#3 ? phi( div32u16u::@3/(dword) div32u16u::return#0 ) - (dword) div32u16u::return#1 ? (dword) div32u16u::return#3 - (word) rem16u#5 ? (word) rem16u#14 + (word) rem16u#14 ← phi( div32u16u::@3/(word) rem16u#4 ) + (dword) div32u16u::return#3 ← phi( div32u16u::@3/(dword) div32u16u::return#0 ) + (dword) div32u16u::return#1 ← (dword) div32u16u::return#3 + (word) rem16u#5 ← (word) rem16u#14 return to:@return @5: scope:[] from @2 - (word) rem16u#37 ? phi( @2/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#37 ← phi( @2/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @5 - (word) rem16u#34 ? phi( @5/(word) rem16u#37 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#34 ← phi( @5/(word) rem16u#37 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@13 mul16u: scope:[mul16u] from mulu16_sel - (word) mul16u::a#5 ? phi( mulu16_sel/(word) mul16u::a#1 ) - (word) mul16u::b#1 ? phi( mulu16_sel/(word) mul16u::b#0 ) - (dword) mul16u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#1 + (word) mul16u::a#5 ← phi( mulu16_sel/(word) mul16u::a#1 ) + (word) mul16u::b#1 ← phi( mulu16_sel/(word) mul16u::b#0 ) + (dword) mul16u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#1 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@4 - (dword) mul16u::mb#5 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) - (dword) mul16u::res#4 ? phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) - (word) mul16u::a#2 ? phi( mul16u/(word) mul16u::a#5 mul16u::@4/(word) mul16u::a#0 ) - (bool~) mul16u::$0 ? (word) mul16u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#5 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) + (dword) mul16u::res#4 ← phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) + (word) mul16u::a#2 ← phi( mul16u/(word) mul16u::a#5 mul16u::@4/(word) mul16u::a#0 ) + (bool~) mul16u::$0 ← (word) mul16u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul16u::$0) goto mul16u::@2 to:mul16u::@3 mul16u::@2: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#5 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::mb#4 ? phi( mul16u::@1/(dword) mul16u::mb#5 ) - (word) mul16u::a#3 ? phi( mul16u::@1/(word) mul16u::a#2 ) - (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16u::$3 ? ! (bool~) mul16u::$2 + (dword) mul16u::res#5 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::mb#4 ← phi( mul16u::@1/(dword) mul16u::mb#5 ) + (word) mul16u::a#3 ← phi( mul16u::@1/(word) mul16u::a#2 ) + (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16u::$3 ← ! (bool~) mul16u::$2 if((bool~) mul16u::$3) goto mul16u::@4 to:mul16u::@7 mul16u::@3: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#2 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::return#0 ? (dword) mul16u::res#2 + (dword) mul16u::res#2 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::return#0 ← (dword) mul16u::res#2 to:mul16u::@return mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7 - (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) - (dword) mul16u::mb#2 ? phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) - (word) mul16u::a#4 ? phi( mul16u::@2/(word) mul16u::a#3 mul16u::@7/(word) mul16u::a#6 ) - (word~) mul16u::$5 ? (word) mul16u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul16u::a#0 ? (word~) mul16u::$5 - (dword~) mul16u::$6 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (dword) mul16u::mb#1 ? (dword~) mul16u::$6 + (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) + (dword) mul16u::mb#2 ← phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) + (word) mul16u::a#4 ← phi( mul16u::@2/(word) mul16u::a#3 mul16u::@7/(word) mul16u::a#6 ) + (word~) mul16u::$5 ← (word) mul16u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul16u::a#0 ← (word~) mul16u::$5 + (dword~) mul16u::$6 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) mul16u::mb#1 ← (dword~) mul16u::$6 to:mul16u::@1 mul16u::@7: scope:[mul16u] from mul16u::@2 - (word) mul16u::a#6 ? phi( mul16u::@2/(word) mul16u::a#3 ) - (dword) mul16u::mb#3 ? phi( mul16u::@2/(dword) mul16u::mb#4 ) - (dword) mul16u::res#3 ? phi( mul16u::@2/(dword) mul16u::res#5 ) - (dword~) mul16u::$4 ? (dword) mul16u::res#3 + (dword) mul16u::mb#3 - (dword) mul16u::res#1 ? (dword~) mul16u::$4 + (word) mul16u::a#6 ← phi( mul16u::@2/(word) mul16u::a#3 ) + (dword) mul16u::mb#3 ← phi( mul16u::@2/(dword) mul16u::mb#4 ) + (dword) mul16u::res#3 ← phi( mul16u::@2/(dword) mul16u::res#5 ) + (dword~) mul16u::$4 ← (dword) mul16u::res#3 + (dword) mul16u::mb#3 + (dword) mul16u::res#1 ← (dword~) mul16u::$4 to:mul16u::@4 mul16u::@return: scope:[mul16u] from mul16u::@3 - (dword) mul16u::return#3 ? phi( mul16u::@3/(dword) mul16u::return#0 ) - (dword) mul16u::return#1 ? (dword) mul16u::return#3 + (dword) mul16u::return#3 ← phi( mul16u::@3/(dword) mul16u::return#0 ) + (dword) mul16u::return#1 ← (dword) mul16u::return#3 return to:@return @13: scope:[] from @6 - (word) rem16u#31 ? phi( @6/(word) rem16u#34 ) - (dword) PI2_u4f28#0 ? (dword/signed dword) $6487ed51 - (dword) PI_u4f28#0 ? (dword/signed dword) $3243f6a9 - (dword) PI_HALF_u4f28#0 ? (dword/signed dword) $1921fb54 - (word) PI2_u4f12#0 ? (word/signed word/dword/signed dword) $6488 - (word) PI_u4f12#0 ? (word/signed word/dword/signed dword) $3244 - (word) PI_HALF_u4f12#0 ? (word/signed word/dword/signed dword) $1922 + (word) rem16u#31 ← phi( @6/(word) rem16u#34 ) + (dword) PI2_u4f28#0 ← (dword/signed dword) $6487ed51 + (dword) PI_u4f28#0 ← (dword/signed dword) $3243f6a9 + (dword) PI_HALF_u4f28#0 ← (dword/signed dword) $1921fb54 + (word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) $6488 + (word) PI_u4f12#0 ← (word/signed word/dword/signed dword) $3244 + (word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) $1922 to:@20 sin16s_gen: scope:[sin16s_gen] from main - (signed word*) sin16s_gen::sintab#5 ? phi( main/(signed word*) sin16s_gen::sintab#1 ) - (word) rem16u#21 ? phi( main/(word) rem16u#23 ) - (word) sin16s_gen::wavelength#1 ? phi( main/(word) sin16s_gen::wavelength#0 ) - (dword) div32u16u::dividend#0 ? (dword) PI2_u4f28#0 - (word) div32u16u::divisor#0 ? (word) sin16s_gen::wavelength#1 + (signed word*) sin16s_gen::sintab#5 ← phi( main/(signed word*) sin16s_gen::sintab#1 ) + (word) rem16u#21 ← phi( main/(word) rem16u#23 ) + (word) sin16s_gen::wavelength#1 ← phi( main/(word) sin16s_gen::wavelength#0 ) + (dword) div32u16u::dividend#0 ← (dword) PI2_u4f28#0 + (word) div32u16u::divisor#0 ← (word) sin16s_gen::wavelength#1 call div32u16u - (dword) div32u16u::return#2 ? (dword) div32u16u::return#1 + (dword) div32u16u::return#2 ← (dword) div32u16u::return#1 to:sin16s_gen::@3 sin16s_gen::@3: scope:[sin16s_gen] from sin16s_gen - (word) sin16s_gen::wavelength#4 ? phi( sin16s_gen/(word) sin16s_gen::wavelength#1 ) - (signed word*) sin16s_gen::sintab#4 ? phi( sin16s_gen/(signed word*) sin16s_gen::sintab#5 ) - (word) rem16u#15 ? phi( sin16s_gen/(word) rem16u#5 ) - (dword) div32u16u::return#4 ? phi( sin16s_gen/(dword) div32u16u::return#2 ) - (dword~) sin16s_gen::$0 ? (dword) div32u16u::return#4 - (word) rem16u#6 ? (word) rem16u#15 - (dword) sin16s_gen::step#0 ? (dword~) sin16s_gen::$0 - (dword) sin16s_gen::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin16s_gen::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen::wavelength#4 ← phi( sin16s_gen/(word) sin16s_gen::wavelength#1 ) + (signed word*) sin16s_gen::sintab#4 ← phi( sin16s_gen/(signed word*) sin16s_gen::sintab#5 ) + (word) rem16u#15 ← phi( sin16s_gen/(word) rem16u#5 ) + (dword) div32u16u::return#4 ← phi( sin16s_gen/(dword) div32u16u::return#2 ) + (dword~) sin16s_gen::$0 ← (dword) div32u16u::return#4 + (word) rem16u#6 ← (word) rem16u#15 + (dword) sin16s_gen::step#0 ← (dword~) sin16s_gen::$0 + (dword) sin16s_gen::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin16s_gen::@1 sin16s_gen::@1: scope:[sin16s_gen] from sin16s_gen::@3 sin16s_gen::@4 - (word) rem16u#26 ? phi( sin16s_gen::@3/(word) rem16u#6 sin16s_gen::@4/(word) rem16u#22 ) - (word) sin16s_gen::wavelength#3 ? phi( sin16s_gen::@3/(word) sin16s_gen::wavelength#4 sin16s_gen::@4/(word) sin16s_gen::wavelength#2 ) - (word) sin16s_gen::i#3 ? phi( sin16s_gen::@3/(word) sin16s_gen::i#0 sin16s_gen::@4/(word) sin16s_gen::i#1 ) - (dword) sin16s_gen::step#2 ? phi( sin16s_gen::@3/(dword) sin16s_gen::step#0 sin16s_gen::@4/(dword) sin16s_gen::step#1 ) - (signed word*) sin16s_gen::sintab#3 ? phi( sin16s_gen::@3/(signed word*) sin16s_gen::sintab#4 sin16s_gen::@4/(signed word*) sin16s_gen::sintab#0 ) - (dword) sin16s_gen::x#2 ? phi( sin16s_gen::@3/(dword) sin16s_gen::x#0 sin16s_gen::@4/(dword) sin16s_gen::x#1 ) - (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 + (word) rem16u#26 ← phi( sin16s_gen::@3/(word) rem16u#6 sin16s_gen::@4/(word) rem16u#22 ) + (word) sin16s_gen::wavelength#3 ← phi( sin16s_gen::@3/(word) sin16s_gen::wavelength#4 sin16s_gen::@4/(word) sin16s_gen::wavelength#2 ) + (word) sin16s_gen::i#3 ← phi( sin16s_gen::@3/(word) sin16s_gen::i#0 sin16s_gen::@4/(word) sin16s_gen::i#1 ) + (dword) sin16s_gen::step#2 ← phi( sin16s_gen::@3/(dword) sin16s_gen::step#0 sin16s_gen::@4/(dword) sin16s_gen::step#1 ) + (signed word*) sin16s_gen::sintab#3 ← phi( sin16s_gen::@3/(signed word*) sin16s_gen::sintab#4 sin16s_gen::@4/(signed word*) sin16s_gen::sintab#0 ) + (dword) sin16s_gen::x#2 ← phi( sin16s_gen::@3/(dword) sin16s_gen::x#0 sin16s_gen::@4/(dword) sin16s_gen::x#1 ) + (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 call sin16s - (signed word) sin16s::return#0 ? (signed word) sin16s::return#2 + (signed word) sin16s::return#0 ← (signed word) sin16s::return#2 to:sin16s_gen::@4 sin16s_gen::@4: scope:[sin16s_gen] from sin16s_gen::@1 - (word) rem16u#22 ? phi( sin16s_gen::@1/(word) rem16u#26 ) - (word) sin16s_gen::wavelength#2 ? phi( sin16s_gen::@1/(word) sin16s_gen::wavelength#3 ) - (word) sin16s_gen::i#2 ? phi( sin16s_gen::@1/(word) sin16s_gen::i#3 ) - (dword) sin16s_gen::step#1 ? phi( sin16s_gen::@1/(dword) sin16s_gen::step#2 ) - (dword) sin16s_gen::x#3 ? phi( sin16s_gen::@1/(dword) sin16s_gen::x#2 ) - (signed word*) sin16s_gen::sintab#2 ? phi( sin16s_gen::@1/(signed word*) sin16s_gen::sintab#3 ) - (signed word) sin16s::return#3 ? phi( sin16s_gen::@1/(signed word) sin16s::return#0 ) - (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#3 - *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 - (signed word*~) sin16s_gen::$2 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) sin16s_gen::sintab#0 ? (signed word*~) sin16s_gen::$2 - (dword~) sin16s_gen::$3 ? (dword) sin16s_gen::x#3 + (dword) sin16s_gen::step#1 - (dword) sin16s_gen::x#1 ? (dword~) sin16s_gen::$3 - (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 - (bool~) sin16s_gen::$4 ? (word) sin16s_gen::i#1 < (word) sin16s_gen::wavelength#2 + (word) rem16u#22 ← phi( sin16s_gen::@1/(word) rem16u#26 ) + (word) sin16s_gen::wavelength#2 ← phi( sin16s_gen::@1/(word) sin16s_gen::wavelength#3 ) + (word) sin16s_gen::i#2 ← phi( sin16s_gen::@1/(word) sin16s_gen::i#3 ) + (dword) sin16s_gen::step#1 ← phi( sin16s_gen::@1/(dword) sin16s_gen::step#2 ) + (dword) sin16s_gen::x#3 ← phi( sin16s_gen::@1/(dword) sin16s_gen::x#2 ) + (signed word*) sin16s_gen::sintab#2 ← phi( sin16s_gen::@1/(signed word*) sin16s_gen::sintab#3 ) + (signed word) sin16s::return#3 ← phi( sin16s_gen::@1/(signed word) sin16s::return#0 ) + (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#3 + *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 + (signed word*~) sin16s_gen::$2 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) sin16s_gen::sintab#0 ← (signed word*~) sin16s_gen::$2 + (dword~) sin16s_gen::$3 ← (dword) sin16s_gen::x#3 + (dword) sin16s_gen::step#1 + (dword) sin16s_gen::x#1 ← (dword~) sin16s_gen::$3 + (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 + (bool~) sin16s_gen::$4 ← (word) sin16s_gen::i#1 < (word) sin16s_gen::wavelength#2 if((bool~) sin16s_gen::$4) goto sin16s_gen::@1 to:sin16s_gen::@return sin16s_gen::@return: scope:[sin16s_gen] from sin16s_gen::@4 - (word) rem16u#16 ? phi( sin16s_gen::@4/(word) rem16u#22 ) - (word) rem16u#7 ? (word) rem16u#16 + (word) rem16u#16 ← phi( sin16s_gen::@4/(word) rem16u#22 ) + (word) rem16u#7 ← (word) rem16u#16 return to:@return sin16s: scope:[sin16s] from sin16s_gen::@1 - (dword) sin16s::x#3 ? phi( sin16s_gen::@1/(dword) sin16s::x#0 ) - (byte) sin16s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 - (bool~) sin16s::$1 ? ! (bool~) sin16s::$0 + (dword) sin16s::x#3 ← phi( sin16s_gen::@1/(dword) sin16s::x#0 ) + (byte) sin16s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 + (bool~) sin16s::$1 ← ! (bool~) sin16s::$0 if((bool~) sin16s::$1) goto sin16s::@1 to:sin16s::@4 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - (byte) sin16s::isUpper#8 ? phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) - (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) - (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 - (bool~) sin16s::$3 ? ! (bool~) sin16s::$2 + (byte) sin16s::isUpper#8 ← phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) + (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) + (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 + (bool~) sin16s::$3 ← ! (bool~) sin16s::$2 if((bool~) sin16s::$3) goto sin16s::@2 to:sin16s::@5 sin16s::@4: scope:[sin16s] from sin16s - (dword) sin16s::x#5 ? phi( sin16s/(dword) sin16s::x#3 ) - (dword~) sin16s::$18 ? (dword) sin16s::x#5 - (dword) PI_u4f28#0 - (dword) sin16s::x#1 ? (dword~) sin16s::$18 - (byte) sin16s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) sin16s::x#5 ← phi( sin16s/(dword) sin16s::x#3 ) + (dword~) sin16s::$18 ← (dword) sin16s::x#5 - (dword) PI_u4f28#0 + (dword) sin16s::x#1 ← (dword~) sin16s::$18 + (byte) sin16s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin16s::@1 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - (byte) sin16s::isUpper#7 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) - (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) sin16s::$5 ? > (dword~) sin16s::$4 - (word) sin16s::x1#0 ? (word~) sin16s::$5 - (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 - (byte) mulu16_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#7 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) + (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) sin16s::$5 ← > (dword~) sin16s::$4 + (word) sin16s::x1#0 ← (word~) sin16s::$5 + (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 + (byte) mulu16_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#6 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@2 - (byte) sin16s::isUpper#6 ? phi( sin16s::@2/(byte) sin16s::isUpper#7 ) - (word) sin16s::x1#1 ? phi( sin16s::@2/(word) sin16s::x1#0 ) - (word) mulu16_sel::return#7 ? phi( sin16s::@2/(word) mulu16_sel::return#0 ) - (word~) sin16s::$6 ? (word) mulu16_sel::return#7 - (word) sin16s::x2#0 ? (word~) sin16s::$6 - (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - (word) mulu16_sel::v2#1 ? (word) sin16s::x1#1 - (byte) mulu16_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#6 ← phi( sin16s::@2/(byte) sin16s::isUpper#7 ) + (word) sin16s::x1#1 ← phi( sin16s::@2/(word) sin16s::x1#0 ) + (word) mulu16_sel::return#7 ← phi( sin16s::@2/(word) mulu16_sel::return#0 ) + (word~) sin16s::$6 ← (word) mulu16_sel::return#7 + (word) sin16s::x2#0 ← (word~) sin16s::$6 + (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + (word) mulu16_sel::v2#1 ← (word) sin16s::x1#1 + (byte) mulu16_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#6 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - (byte) sin16s::isUpper#5 ? phi( sin16s::@8/(byte) sin16s::isUpper#6 ) - (word) sin16s::x1#4 ? phi( sin16s::@8/(word) sin16s::x1#1 ) - (word) mulu16_sel::return#8 ? phi( sin16s::@8/(word) mulu16_sel::return#1 ) - (word~) sin16s::$7 ? (word) mulu16_sel::return#8 - (word) sin16s::x3#0 ? (word~) sin16s::$7 - (word/signed word/dword/signed dword~) sin16s::$8 ? (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 - (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 - (word) mulu16_sel::v2#2 ? (word/signed word/dword/signed dword~) sin16s::$8 - (byte) mulu16_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#5 ← phi( sin16s::@8/(byte) sin16s::isUpper#6 ) + (word) sin16s::x1#4 ← phi( sin16s::@8/(word) sin16s::x1#1 ) + (word) mulu16_sel::return#8 ← phi( sin16s::@8/(word) mulu16_sel::return#1 ) + (word~) sin16s::$7 ← (word) mulu16_sel::return#8 + (word) sin16s::x3#0 ← (word~) sin16s::$7 + (word/signed word/dword/signed dword~) sin16s::$8 ← (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 + (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 + (word) mulu16_sel::v2#2 ← (word/signed word/dword/signed dword~) sin16s::$8 + (byte) mulu16_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#6 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - (byte) sin16s::isUpper#4 ? phi( sin16s::@9/(byte) sin16s::isUpper#5 ) - (word) sin16s::x3#1 ? phi( sin16s::@9/(word) sin16s::x3#0 ) - (word) sin16s::x1#2 ? phi( sin16s::@9/(word) sin16s::x1#4 ) - (word) mulu16_sel::return#9 ? phi( sin16s::@9/(word) mulu16_sel::return#2 ) - (word~) sin16s::$9 ? (word) mulu16_sel::return#9 - (word) sin16s::x3_6#0 ? (word~) sin16s::$9 - (word~) sin16s::$10 ? (word) sin16s::x1#2 - (word) sin16s::x3_6#0 - (word) sin16s::usinx#0 ? (word~) sin16s::$10 - (word) mulu16_sel::v1#3 ? (word) sin16s::x3#1 - (word) mulu16_sel::v2#3 ? (word) sin16s::x1#2 - (byte) mulu16_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#4 ← phi( sin16s::@9/(byte) sin16s::isUpper#5 ) + (word) sin16s::x3#1 ← phi( sin16s::@9/(word) sin16s::x3#0 ) + (word) sin16s::x1#2 ← phi( sin16s::@9/(word) sin16s::x1#4 ) + (word) mulu16_sel::return#9 ← phi( sin16s::@9/(word) mulu16_sel::return#2 ) + (word~) sin16s::$9 ← (word) mulu16_sel::return#9 + (word) sin16s::x3_6#0 ← (word~) sin16s::$9 + (word~) sin16s::$10 ← (word) sin16s::x1#2 - (word) sin16s::x3_6#0 + (word) sin16s::usinx#0 ← (word~) sin16s::$10 + (word) mulu16_sel::v1#3 ← (word) sin16s::x3#1 + (word) mulu16_sel::v2#3 ← (word) sin16s::x1#2 + (byte) mulu16_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#3 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#3 ← (word) mulu16_sel::return#6 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - (byte) sin16s::isUpper#3 ? phi( sin16s::@10/(byte) sin16s::isUpper#4 ) - (word) sin16s::usinx#4 ? phi( sin16s::@10/(word) sin16s::usinx#0 ) - (word) sin16s::x1#3 ? phi( sin16s::@10/(word) sin16s::x1#2 ) - (word) mulu16_sel::return#10 ? phi( sin16s::@10/(word) mulu16_sel::return#3 ) - (word~) sin16s::$11 ? (word) mulu16_sel::return#10 - (word) sin16s::x4#0 ? (word~) sin16s::$11 - (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - (word) mulu16_sel::v2#4 ? (word) sin16s::x1#3 - (byte) mulu16_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#3 ← phi( sin16s::@10/(byte) sin16s::isUpper#4 ) + (word) sin16s::usinx#4 ← phi( sin16s::@10/(word) sin16s::usinx#0 ) + (word) sin16s::x1#3 ← phi( sin16s::@10/(word) sin16s::x1#2 ) + (word) mulu16_sel::return#10 ← phi( sin16s::@10/(word) mulu16_sel::return#3 ) + (word~) sin16s::$11 ← (word) mulu16_sel::return#10 + (word) sin16s::x4#0 ← (word~) sin16s::$11 + (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + (word) mulu16_sel::v2#4 ← (word) sin16s::x1#3 + (byte) mulu16_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#4 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#4 ← (word) mulu16_sel::return#6 to:sin16s::@12 sin16s::@12: scope:[sin16s] from sin16s::@11 - (byte) sin16s::isUpper#2 ? phi( sin16s::@11/(byte) sin16s::isUpper#3 ) - (word) sin16s::usinx#2 ? phi( sin16s::@11/(word) sin16s::usinx#4 ) - (word) mulu16_sel::return#11 ? phi( sin16s::@11/(word) mulu16_sel::return#4 ) - (word~) sin16s::$12 ? (word) mulu16_sel::return#11 - (word) sin16s::x5#0 ? (word~) sin16s::$12 - (word~) sin16s::$13 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) sin16s::x5_128#0 ? (word~) sin16s::$13 - (word~) sin16s::$14 ? (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 - (word) sin16s::usinx#1 ? (word~) sin16s::$14 - (signed word~) sin16s::$15 ? ((signed word)) (word) sin16s::usinx#1 - (signed word) sin16s::sinx#0 ? (signed word~) sin16s::$15 - (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$17 ? ! (bool~) sin16s::$16 + (byte) sin16s::isUpper#2 ← phi( sin16s::@11/(byte) sin16s::isUpper#3 ) + (word) sin16s::usinx#2 ← phi( sin16s::@11/(word) sin16s::usinx#4 ) + (word) mulu16_sel::return#11 ← phi( sin16s::@11/(word) mulu16_sel::return#4 ) + (word~) sin16s::$12 ← (word) mulu16_sel::return#11 + (word) sin16s::x5#0 ← (word~) sin16s::$12 + (word~) sin16s::$13 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) sin16s::x5_128#0 ← (word~) sin16s::$13 + (word~) sin16s::$14 ← (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 + (word) sin16s::usinx#1 ← (word~) sin16s::$14 + (signed word~) sin16s::$15 ← ((signed word)) (word) sin16s::usinx#1 + (signed word) sin16s::sinx#0 ← (signed word~) sin16s::$15 + (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$17 ← ! (bool~) sin16s::$16 if((bool~) sin16s::$17) goto sin16s::@3 to:sin16s::@6 sin16s::@5: scope:[sin16s] from sin16s::@1 - (byte) sin16s::isUpper#9 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 ) - (dword) sin16s::x#7 ? phi( sin16s::@1/(dword) sin16s::x#4 ) - (dword~) sin16s::$19 ? (dword) PI_u4f28#0 - (dword) sin16s::x#7 - (dword) sin16s::x#2 ? (dword~) sin16s::$19 + (byte) sin16s::isUpper#9 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 ) + (dword) sin16s::x#7 ← phi( sin16s::@1/(dword) sin16s::x#4 ) + (dword~) sin16s::$19 ← (dword) PI_u4f28#0 - (dword) sin16s::x#7 + (dword) sin16s::x#2 ← (dword~) sin16s::$19 to:sin16s::@2 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - (signed word) sin16s::sinx#2 ? phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) - (signed word) sin16s::return#1 ? (signed word) sin16s::sinx#2 + (signed word) sin16s::sinx#2 ← phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) + (signed word) sin16s::return#1 ← (signed word) sin16s::sinx#2 to:sin16s::@return sin16s::@6: scope:[sin16s] from sin16s::@12 - (word) sin16s::usinx#3 ? phi( sin16s::@12/(word) sin16s::usinx#1 ) - (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#3 - (signed word~) sin16s::$21 ? - (signed word~) sin16s::$20 - (signed word) sin16s::sinx#1 ? (signed word~) sin16s::$21 + (word) sin16s::usinx#3 ← phi( sin16s::@12/(word) sin16s::usinx#1 ) + (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#3 + (signed word~) sin16s::$21 ← - (signed word~) sin16s::$20 + (signed word) sin16s::sinx#1 ← (signed word~) sin16s::$21 to:sin16s::@3 sin16s::@return: scope:[sin16s] from sin16s::@3 - (signed word) sin16s::return#4 ? phi( sin16s::@3/(signed word) sin16s::return#1 ) - (signed word) sin16s::return#2 ? (signed word) sin16s::return#4 + (signed word) sin16s::return#4 ← phi( sin16s::@3/(signed word) sin16s::return#1 ) + (signed word) sin16s::return#2 ← (signed word) sin16s::return#4 return to:@return mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@11 sin16s::@2 sin16s::@8 sin16s::@9 - (byte) mulu16_sel::select#6 ? phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) - (word) mulu16_sel::v2#5 ? phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) - (word) mulu16_sel::v1#5 ? phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) - (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 - (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + (byte) mulu16_sel::select#6 ← phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) + (word) mulu16_sel::v2#5 ← phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) + (word) mulu16_sel::v1#5 ← phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) + (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 + (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 call mul16u - (dword) mul16u::return#2 ? (dword) mul16u::return#1 + (dword) mul16u::return#2 ← (dword) mul16u::return#1 to:mulu16_sel::@2 mulu16_sel::@2: scope:[mulu16_sel] from mulu16_sel - (byte) mulu16_sel::select#5 ? phi( mulu16_sel/(byte) mulu16_sel::select#6 ) - (dword) mul16u::return#4 ? phi( mulu16_sel/(dword) mul16u::return#2 ) - (dword~) mulu16_sel::$0 ? (dword) mul16u::return#4 - (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - (word~) mulu16_sel::$2 ? > (dword~) mulu16_sel::$1 - (word) mulu16_sel::return#5 ? (word~) mulu16_sel::$2 + (byte) mulu16_sel::select#5 ← phi( mulu16_sel/(byte) mulu16_sel::select#6 ) + (dword) mul16u::return#4 ← phi( mulu16_sel/(dword) mul16u::return#2 ) + (dword~) mulu16_sel::$0 ← (dword) mul16u::return#4 + (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + (word~) mulu16_sel::$2 ← > (dword~) mulu16_sel::$1 + (word) mulu16_sel::return#5 ← (word~) mulu16_sel::$2 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@2 - (word) mulu16_sel::return#12 ? phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) - (word) mulu16_sel::return#6 ? (word) mulu16_sel::return#12 + (word) mulu16_sel::return#12 ← phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) + (word) mulu16_sel::return#6 ← (word) mulu16_sel::return#12 return to:@return @20: scope:[] from @13 - (word) rem16u#29 ? phi( @13/(word) rem16u#31 ) - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (word) rem16u#29 ← phi( @13/(word) rem16u#31 ) + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@32 print_str: scope:[print_str] from main::@3 main::@7 - (byte*) print_char_cursor#51 ? phi( main::@3/(byte*) print_char_cursor#49 main::@7/(byte*) print_char_cursor#17 ) - (byte*) print_str::str#5 ? phi( main::@3/(byte*) print_str::str#2 main::@7/(byte*) print_str::str#1 ) + (byte*) print_char_cursor#51 ← phi( main::@3/(byte*) print_char_cursor#49 main::@7/(byte*) print_char_cursor#17 ) + (byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@7/(byte*) print_str::str#1 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#42 ? phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#3) != (byte) '@' + (byte*) print_char_cursor#42 ← phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#3) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#22 ? phi( print_str::@1/(byte*) print_char_cursor#42 ) - (byte*) print_str::str#4 ? phi( print_str::@1/(byte*) print_str::str#3 ) - *((byte*) print_char_cursor#22) ? *((byte*) print_str::str#4) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#22 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#4 + (byte*) print_char_cursor#22 ← phi( print_str::@1/(byte*) print_char_cursor#42 ) + (byte*) print_str::str#4 ← phi( print_str::@1/(byte*) print_str::str#3 ) + *((byte*) print_char_cursor#22) ← *((byte*) print_str::str#4) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#22 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#4 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#23 ? phi( print_str::@1/(byte*) print_char_cursor#42 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#23 + (byte*) print_char_cursor#23 ← phi( print_str::@1/(byte*) print_char_cursor#42 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#23 return to:@return print_sword: scope:[print_sword] from main::@2 - (byte*) print_char_cursor#52 ? phi( main::@2/(byte*) print_char_cursor#48 ) - (signed word) print_sword::w#2 ? phi( main::@2/(signed word) print_sword::w#1 ) - (bool~) print_sword::$0 ? (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) print_sword::$1 ? ! (bool~) print_sword::$0 + (byte*) print_char_cursor#52 ← phi( main::@2/(byte*) print_char_cursor#48 ) + (signed word) print_sword::w#2 ← phi( main::@2/(signed word) print_sword::w#1 ) + (bool~) print_sword::$0 ← (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) print_sword::$1 ← ! (bool~) print_sword::$0 if((bool~) print_sword::$1) goto print_sword::@1 to:print_sword::@2 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - (byte*) print_char_cursor#43 ? phi( print_sword/(byte*) print_char_cursor#52 print_sword::@4/(byte*) print_char_cursor#4 ) - (signed word) print_sword::w#3 ? phi( print_sword/(signed word) print_sword::w#2 print_sword::@4/(signed word) print_sword::w#0 ) - (word~) print_sword::$2 ? ((word)) (signed word) print_sword::w#3 - (word) print_word::w#0 ? (word~) print_sword::$2 + (byte*) print_char_cursor#43 ← phi( print_sword/(byte*) print_char_cursor#52 print_sword::@4/(byte*) print_char_cursor#4 ) + (signed word) print_sword::w#3 ← phi( print_sword/(signed word) print_sword::w#2 print_sword::@4/(signed word) print_sword::w#0 ) + (word~) print_sword::$2 ← ((word)) (signed word) print_sword::w#3 + (word) print_word::w#0 ← (word~) print_sword::$2 call print_word to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@1 - (byte*) print_char_cursor#24 ? phi( print_sword::@1/(byte*) print_char_cursor#8 ) - (byte*) print_char_cursor#3 ? (byte*) print_char_cursor#24 + (byte*) print_char_cursor#24 ← phi( print_sword::@1/(byte*) print_char_cursor#8 ) + (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#24 to:print_sword::@return print_sword::@2: scope:[print_sword] from print_sword - (signed word) print_sword::w#5 ? phi( print_sword/(signed word) print_sword::w#2 ) - (byte*) print_char_cursor#44 ? phi( print_sword/(byte*) print_char_cursor#52 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed word) print_sword::w#5 ← phi( print_sword/(signed word) print_sword::w#2 ) + (byte*) print_char_cursor#44 ← phi( print_sword/(byte*) print_char_cursor#52 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - (signed word) print_sword::w#4 ? phi( print_sword::@2/(signed word) print_sword::w#5 ) - (byte*) print_char_cursor#25 ? phi( print_sword::@2/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#25 - (signed word~) print_sword::$5 ? - (signed word) print_sword::w#4 - (signed word) print_sword::w#0 ? (signed word~) print_sword::$5 + (signed word) print_sword::w#4 ← phi( print_sword::@2/(signed word) print_sword::w#5 ) + (byte*) print_char_cursor#25 ← phi( print_sword::@2/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#25 + (signed word~) print_sword::$5 ← - (signed word) print_sword::w#4 + (signed word) print_sword::w#0 ← (signed word~) print_sword::$5 to:print_sword::@1 print_sword::@return: scope:[print_sword] from print_sword::@3 - (byte*) print_char_cursor#26 ? phi( print_sword::@3/(byte*) print_char_cursor#3 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#26 + (byte*) print_char_cursor#26 ← phi( print_sword::@3/(byte*) print_char_cursor#3 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#26 return to:@return print_word: scope:[print_word] from print_sword::@1 - (byte*) print_char_cursor#45 ? phi( print_sword::@1/(byte*) print_char_cursor#43 ) - (word) print_word::w#1 ? phi( print_sword::@1/(word) print_word::w#0 ) - (byte~) print_word::$0 ? > (word) print_word::w#1 - (byte) print_byte::b#0 ? (byte~) print_word::$0 + (byte*) print_char_cursor#45 ← phi( print_sword::@1/(byte*) print_char_cursor#43 ) + (word) print_word::w#1 ← phi( print_sword::@1/(word) print_word::w#0 ) + (byte~) print_word::$0 ← > (word) print_word::w#1 + (byte) print_byte::b#0 ← (byte~) print_word::$0 call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - (word) print_word::w#2 ? phi( print_word/(word) print_word::w#1 ) - (byte*) print_char_cursor#27 ? phi( print_word/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#27 - (byte~) print_word::$2 ? < (word) print_word::w#2 - (byte) print_byte::b#1 ? (byte~) print_word::$2 + (word) print_word::w#2 ← phi( print_word/(word) print_word::w#1 ) + (byte*) print_char_cursor#27 ← phi( print_word/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#27 + (byte~) print_word::$2 ← < (word) print_word::w#2 + (byte) print_byte::b#1 ← (byte~) print_word::$2 call print_byte to:print_word::@2 print_word::@2: scope:[print_word] from print_word::@1 - (byte*) print_char_cursor#28 ? phi( print_word::@1/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#28 + (byte*) print_char_cursor#28 ← phi( print_word::@1/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#28 to:print_word::@return print_word::@return: scope:[print_word] from print_word::@2 - (byte*) print_char_cursor#29 ? phi( print_word::@2/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#29 + (byte*) print_char_cursor#29 ← phi( print_word::@2/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#29 return to:@return @32: scope:[] from @20 - (byte*) print_screen#7 ? phi( @20/(byte*) print_screen#0 ) - (byte*) print_char_cursor#55 ? phi( @20/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#15 ? phi( @20/(byte*) print_line_cursor#0 ) - (word) rem16u#28 ? phi( @20/(word) rem16u#29 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#7 ← phi( @20/(byte*) print_screen#0 ) + (byte*) print_char_cursor#55 ← phi( @20/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#15 ← phi( @20/(byte*) print_line_cursor#0 ) + (word) rem16u#28 ← phi( @20/(word) rem16u#29 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@40 print_byte: scope:[print_byte] from print_word print_word::@1 - (byte*) print_char_cursor#46 ? phi( print_word/(byte*) print_char_cursor#45 print_word::@1/(byte*) print_char_cursor#6 ) - (byte) print_byte::b#2 ? phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#1 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#45 print_word::@1/(byte*) print_char_cursor#6 ) + (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#1 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#3 ? phi( print_byte/(byte) print_byte::b#2 ) - (byte*) print_char_cursor#30 ? phi( print_byte/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#30 - (byte~) print_byte::$2 ? (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#2 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#3 ← phi( print_byte/(byte) print_byte::b#2 ) + (byte*) print_char_cursor#30 ← phi( print_byte/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#30 + (byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#2 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#31 ? phi( print_byte::@1/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#31 + (byte*) print_char_cursor#31 ← phi( print_byte::@1/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#31 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#32 ? phi( print_byte::@2/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#32 + (byte*) print_char_cursor#32 ← phi( print_byte::@2/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#32 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sword::@2 - (byte*) print_char_cursor#33 ? phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#9 print_sword::@2/(byte*) print_char_cursor#44 ) - (byte) print_char::ch#3 ? phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) - *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 - (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 + (byte*) print_char_cursor#33 ← phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#9 print_sword::@2/(byte*) print_char_cursor#44 ) + (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) + *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 + (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#34 ? phi( print_char/(byte*) print_char_cursor#12 ) - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#34 + (byte*) print_char_cursor#34 ← phi( print_char/(byte*) print_char_cursor#12 ) + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#34 return to:@return print_cls: scope:[print_cls] from main::@5 - (byte*) print_screen#1 ? phi( main::@5/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main::@5/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#1 ? (byte*) print_screen#3 - (byte*) print_char_cursor#14 ? (byte*) print_line_cursor#1 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#1 ← (byte*) print_screen#3 + (byte*) print_char_cursor#14 ← (byte*) print_line_cursor#1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#35 ? phi( print_cls::@2/(byte*) print_char_cursor#14 ) - (byte*) print_line_cursor#6 ? phi( print_cls::@2/(byte*) print_line_cursor#1 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#6 - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#35 + (byte*) print_char_cursor#35 ← phi( print_cls::@2/(byte*) print_char_cursor#14 ) + (byte*) print_line_cursor#6 ← phi( print_cls::@2/(byte*) print_line_cursor#1 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#6 + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#35 return to:@return main: scope:[main] from @40 - (byte*) print_char_cursor#53 ? phi( @40/(byte*) print_char_cursor#50 ) - (byte*) print_line_cursor#13 ? phi( @40/(byte*) print_line_cursor#12 ) - (byte*) print_screen#5 ? phi( @40/(byte*) print_screen#6 ) - (word) rem16u#23 ? phi( @40/(word) rem16u#25 ) - (word) main::wavelength#0 ? (byte/signed byte/word/signed word/dword/signed dword) $78 - (signed word[$78]) main::sintab1#0 ? { fill( $78, 0) } - (signed word*) sin16s_gen::sintab#1 ? (signed word[$78]) main::sintab1#0 - (word) sin16s_gen::wavelength#0 ? (word) main::wavelength#0 + (byte*) print_char_cursor#53 ← phi( @40/(byte*) print_char_cursor#50 ) + (byte*) print_line_cursor#13 ← phi( @40/(byte*) print_line_cursor#12 ) + (byte*) print_screen#5 ← phi( @40/(byte*) print_screen#6 ) + (word) rem16u#23 ← phi( @40/(word) rem16u#25 ) + (word) main::wavelength#0 ← (byte/signed byte/word/signed word/dword/signed dword) $78 + (signed word[$78]) main::sintab1#0 ← { fill( $78, 0) } + (signed word*) sin16s_gen::sintab#1 ← (signed word[$78]) main::sintab1#0 + (word) sin16s_gen::wavelength#0 ← (word) main::wavelength#0 call sin16s_gen to:main::@5 main::@5: scope:[main] from main - (byte*) print_char_cursor#47 ? phi( main/(byte*) print_char_cursor#53 ) - (byte*) print_line_cursor#10 ? phi( main/(byte*) print_line_cursor#13 ) - (byte*) print_screen#4 ? phi( main/(byte*) print_screen#5 ) - (word) rem16u#17 ? phi( main/(word) rem16u#7 ) - (word) rem16u#8 ? (word) rem16u#17 + (byte*) print_char_cursor#47 ← phi( main/(byte*) print_char_cursor#53 ) + (byte*) print_line_cursor#10 ← phi( main/(byte*) print_line_cursor#13 ) + (byte*) print_screen#4 ← phi( main/(byte*) print_screen#5 ) + (word) rem16u#17 ← phi( main/(word) rem16u#7 ) + (word) rem16u#8 ← (word) rem16u#17 call print_cls to:main::@6 main::@6: scope:[main] from main::@5 - (word) rem16u#35 ? phi( main::@5/(word) rem16u#8 ) - (byte*) print_char_cursor#36 ? phi( main::@5/(byte*) print_char_cursor#15 ) - (byte*) print_line_cursor#7 ? phi( main::@5/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_line_cursor#7 - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#36 - (signed word*) main::st1#0 ? (signed word[$78]) main::sintab1#0 + (word) rem16u#35 ← phi( main::@5/(word) rem16u#8 ) + (byte*) print_char_cursor#36 ← phi( main::@5/(byte*) print_char_cursor#15 ) + (byte*) print_line_cursor#7 ← phi( main::@5/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_line_cursor#7 + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#36 + (signed word*) main::st1#0 ← (signed word[$78]) main::sintab1#0 to:main::@1 main::@1: scope:[main] from main::@6 main::@8 - (byte*) print_line_cursor#17 ? phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 ) - (word) rem16u#32 ? phi( main::@6/(word) rem16u#35 main::@8/(word) rem16u#24 ) - (byte*) print_char_cursor#54 ? phi( main::@6/(byte*) print_char_cursor#16 main::@8/(byte*) print_char_cursor#18 ) - (signed word*) main::st1#2 ? phi( main::@6/(signed word*) main::st1#0 main::@8/(signed word*) main::st1#1 ) - (signed word) main::sw#0 ? *((signed word*) main::st1#2) - (bool~) main::$2 ? (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) main::$3 ? ! (bool~) main::$2 + (byte*) print_line_cursor#17 ← phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 ) + (word) rem16u#32 ← phi( main::@6/(word) rem16u#35 main::@8/(word) rem16u#24 ) + (byte*) print_char_cursor#54 ← phi( main::@6/(byte*) print_char_cursor#16 main::@8/(byte*) print_char_cursor#18 ) + (signed word*) main::st1#2 ← phi( main::@6/(signed word*) main::st1#0 main::@8/(signed word*) main::st1#1 ) + (signed word) main::sw#0 ← *((signed word*) main::st1#2) + (bool~) main::$2 ← (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) main::$3 ← ! (bool~) main::$2 if((bool~) main::$3) goto main::@2 to:main::@3 main::@2: scope:[main] from main::@1 main::@9 - (byte*) print_line_cursor#16 ? phi( main::@1/(byte*) print_line_cursor#17 main::@9/(byte*) print_line_cursor#18 ) - (word) rem16u#30 ? phi( main::@1/(word) rem16u#32 main::@9/(word) rem16u#33 ) - (signed word*) main::st1#5 ? phi( main::@1/(signed word*) main::st1#2 main::@9/(signed word*) main::st1#6 ) - (byte*) print_char_cursor#48 ? phi( main::@1/(byte*) print_char_cursor#54 main::@9/(byte*) print_char_cursor#19 ) - (signed word) main::sw#1 ? phi( main::@1/(signed word) main::sw#0 main::@9/(signed word) main::sw#2 ) - (signed word) print_sword::w#1 ? (signed word) main::sw#1 + (byte*) print_line_cursor#16 ← phi( main::@1/(byte*) print_line_cursor#17 main::@9/(byte*) print_line_cursor#18 ) + (word) rem16u#30 ← phi( main::@1/(word) rem16u#32 main::@9/(word) rem16u#33 ) + (signed word*) main::st1#5 ← phi( main::@1/(signed word*) main::st1#2 main::@9/(signed word*) main::st1#6 ) + (byte*) print_char_cursor#48 ← phi( main::@1/(byte*) print_char_cursor#54 main::@9/(byte*) print_char_cursor#19 ) + (signed word) main::sw#1 ← phi( main::@1/(signed word) main::sw#0 main::@9/(signed word) main::sw#2 ) + (signed word) print_sword::w#1 ← (signed word) main::sw#1 call print_sword to:main::@7 main::@7: scope:[main] from main::@2 - (byte*) print_line_cursor#14 ? phi( main::@2/(byte*) print_line_cursor#16 ) - (word) rem16u#27 ? phi( main::@2/(word) rem16u#30 ) - (signed word*) main::st1#4 ? phi( main::@2/(signed word*) main::st1#5 ) - (byte*) print_char_cursor#37 ? phi( main::@2/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#37 - (byte*) print_str::str#1 ? (const string) main::str + (byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#16 ) + (word) rem16u#27 ← phi( main::@2/(word) rem16u#30 ) + (signed word*) main::st1#4 ← phi( main::@2/(signed word*) main::st1#5 ) + (byte*) print_char_cursor#37 ← phi( main::@2/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#37 + (byte*) print_str::str#1 ← (const string) main::str call print_str to:main::@8 main::@8: scope:[main] from main::@7 - (byte*) print_line_cursor#11 ? phi( main::@7/(byte*) print_line_cursor#14 ) - (word) rem16u#24 ? phi( main::@7/(word) rem16u#27 ) - (signed word*) main::st1#3 ? phi( main::@7/(signed word*) main::st1#4 ) - (byte*) print_char_cursor#38 ? phi( main::@7/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#18 ? (byte*) print_char_cursor#38 - (signed word*~) main::$7 ? (signed word*) main::st1#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) main::st1#1 ? (signed word*~) main::$7 - (word/signed dword/dword~) main::$8 ? (word) main::wavelength#0 * (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*~) main::$9 ? (signed word[$78]) main::sintab1#0 + (word/signed dword/dword~) main::$8 - (bool~) main::$10 ? (signed word*) main::st1#1 < (signed word*~) main::$9 + (byte*) print_line_cursor#11 ← phi( main::@7/(byte*) print_line_cursor#14 ) + (word) rem16u#24 ← phi( main::@7/(word) rem16u#27 ) + (signed word*) main::st1#3 ← phi( main::@7/(signed word*) main::st1#4 ) + (byte*) print_char_cursor#38 ← phi( main::@7/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#18 ← (byte*) print_char_cursor#38 + (signed word*~) main::$7 ← (signed word*) main::st1#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) main::st1#1 ← (signed word*~) main::$7 + (word/signed dword/dword~) main::$8 ← (word) main::wavelength#0 * (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*~) main::$9 ← (signed word[$78]) main::sintab1#0 + (word/signed dword/dword~) main::$8 + (bool~) main::$10 ← (signed word*) main::st1#1 < (signed word*~) main::$9 if((bool~) main::$10) goto main::@1 to:main::@return main::@3: scope:[main] from main::@1 - (byte*) print_line_cursor#19 ? phi( main::@1/(byte*) print_line_cursor#17 ) - (word) rem16u#36 ? phi( main::@1/(word) rem16u#32 ) - (signed word*) main::st1#7 ? phi( main::@1/(signed word*) main::st1#2 ) - (signed word) main::sw#3 ? phi( main::@1/(signed word) main::sw#0 ) - (byte*) print_char_cursor#49 ? phi( main::@1/(byte*) print_char_cursor#54 ) - (byte*) print_str::str#2 ? (const string) main::str1 + (byte*) print_line_cursor#19 ← phi( main::@1/(byte*) print_line_cursor#17 ) + (word) rem16u#36 ← phi( main::@1/(word) rem16u#32 ) + (signed word*) main::st1#7 ← phi( main::@1/(signed word*) main::st1#2 ) + (signed word) main::sw#3 ← phi( main::@1/(signed word) main::sw#0 ) + (byte*) print_char_cursor#49 ← phi( main::@1/(byte*) print_char_cursor#54 ) + (byte*) print_str::str#2 ← (const string) main::str1 call print_str to:main::@9 main::@9: scope:[main] from main::@3 - (byte*) print_line_cursor#18 ? phi( main::@3/(byte*) print_line_cursor#19 ) - (word) rem16u#33 ? phi( main::@3/(word) rem16u#36 ) - (signed word*) main::st1#6 ? phi( main::@3/(signed word*) main::st1#7 ) - (signed word) main::sw#2 ? phi( main::@3/(signed word) main::sw#3 ) - (byte*) print_char_cursor#39 ? phi( main::@3/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#39 + (byte*) print_line_cursor#18 ← phi( main::@3/(byte*) print_line_cursor#19 ) + (word) rem16u#33 ← phi( main::@3/(word) rem16u#36 ) + (signed word*) main::st1#6 ← phi( main::@3/(signed word*) main::st1#7 ) + (signed word) main::sw#2 ← phi( main::@3/(signed word) main::sw#3 ) + (byte*) print_char_cursor#39 ← phi( main::@3/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#39 to:main::@2 main::@return: scope:[main] from main::@8 - (byte*) print_char_cursor#40 ? phi( main::@8/(byte*) print_char_cursor#18 ) - (byte*) print_line_cursor#8 ? phi( main::@8/(byte*) print_line_cursor#11 ) - (word) rem16u#18 ? phi( main::@8/(word) rem16u#24 ) - (word) rem16u#9 ? (word) rem16u#18 - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#8 - (byte*) print_char_cursor#20 ? (byte*) print_char_cursor#40 + (byte*) print_char_cursor#40 ← phi( main::@8/(byte*) print_char_cursor#18 ) + (byte*) print_line_cursor#8 ← phi( main::@8/(byte*) print_line_cursor#11 ) + (word) rem16u#18 ← phi( main::@8/(word) rem16u#24 ) + (word) rem16u#9 ← (word) rem16u#18 + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#8 + (byte*) print_char_cursor#20 ← (byte*) print_char_cursor#40 return to:@return @40: scope:[] from @32 - (byte*) print_screen#6 ? phi( @32/(byte*) print_screen#7 ) - (byte*) print_char_cursor#50 ? phi( @32/(byte*) print_char_cursor#55 ) - (byte*) print_line_cursor#12 ? phi( @32/(byte*) print_line_cursor#15 ) - (word) rem16u#25 ? phi( @32/(word) rem16u#28 ) + (byte*) print_screen#6 ← phi( @32/(byte*) print_screen#7 ) + (byte*) print_char_cursor#50 ← phi( @32/(byte*) print_char_cursor#55 ) + (byte*) print_line_cursor#12 ← phi( @32/(byte*) print_line_cursor#15 ) + (word) rem16u#25 ← phi( @32/(word) rem16u#28 ) call main to:@41 @41: scope:[] from @40 - (byte*) print_char_cursor#41 ? phi( @40/(byte*) print_char_cursor#20 ) - (byte*) print_line_cursor#9 ? phi( @40/(byte*) print_line_cursor#4 ) - (word) rem16u#19 ? phi( @40/(word) rem16u#9 ) - (word) rem16u#10 ? (word) rem16u#19 - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#9 - (byte*) print_char_cursor#21 ? (byte*) print_char_cursor#41 + (byte*) print_char_cursor#41 ← phi( @40/(byte*) print_char_cursor#20 ) + (byte*) print_line_cursor#9 ← phi( @40/(byte*) print_line_cursor#4 ) + (word) rem16u#19 ← phi( @40/(word) rem16u#9 ) + (word) rem16u#10 ← (word) rem16u#19 + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#9 + (byte*) print_char_cursor#21 ← (byte*) print_char_cursor#41 to:@end @end: scope:[] from @41 @@ -1239,14 +1239,14 @@ SYMBOL TABLE SSA (dword) sin16s_gen::x#2 (dword) sin16s_gen::x#3 -Inversing boolean not [11] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [19] (bool~) divr16u::$9 ? (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [18] (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 -Inversing boolean not [79] (bool~) mul16u::$3 ? (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [78] (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [132] (bool~) sin16s::$1 ? (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [131] (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 -Inversing boolean not [136] (bool~) sin16s::$3 ? (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [135] (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 -Inversing boolean not [196] (bool~) sin16s::$17 ? (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [195] (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [240] (bool~) print_sword::$1 ? (signed word) print_sword::w#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [239] (bool~) print_sword::$0 ? (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [325] (bool~) main::$3 ? (signed word) main::sw#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [324] (bool~) main::$2 ? (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [11] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [19] (bool~) divr16u::$9 ← (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [18] (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 +Inversing boolean not [79] (bool~) mul16u::$3 ← (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [78] (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [132] (bool~) sin16s::$1 ← (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [131] (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 +Inversing boolean not [136] (bool~) sin16s::$3 ← (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [135] (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 +Inversing boolean not [196] (bool~) sin16s::$17 ← (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [195] (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [240] (bool~) print_sword::$1 ← (signed word) print_sword::w#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [239] (bool~) print_sword::$0 ← (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [325] (bool~) main::$3 ← (signed word) main::sw#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [324] (bool~) main::$2 ← (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#7 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#8 @@ -1491,14 +1491,14 @@ Successful SSA optimization Pass2ConstantIdentification Constant (const word) divr16u::divisor#0 = div32u16u::divisor#0 Constant (const word) divr16u::divisor#1 = div32u16u::divisor#0 Successful SSA optimization Pass2ConstantIdentification -Fixing inline constructor with div32u16u::$4 ? div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 +Fixing inline constructor with div32u16u::$4 ← div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 Successful SSA optimization Pass2FixInlineConstructors Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (signed word) sin16s::sinx#0 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (word) print_word::w#0 ? ((word)) (signed word) print_sword::w#3 +Eliminating Noop Cast (signed word) sin16s::sinx#0 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (word) print_word::w#0 ← ((word)) (signed word) print_sword::w#3 Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 Culled Empty Block (label) @2 Culled Empty Block (label) @5 @@ -1606,67 +1606,67 @@ Calls in [mulu16_sel] to mul16u:154 Calls in [div32u16u] to divr16u:178 divr16u:183 Created 37 initial phi equivalence classes -Coalesced [11] print_char_cursor#59 ? print_char_cursor#49 -Coalesced [13] print_char_cursor#58 ? print_char_cursor#2 -Coalesced [17] print_char_cursor#60 ? print_char_cursor#12 -Coalesced [22] main::st1#8 ? main::st1#1 -Coalesced [23] print_char_cursor#56 ? print_char_cursor#2 -Coalesced (already) [24] print_char_cursor#57 ? print_char_cursor#49 -Coalesced [26] print_str::str#6 ? print_str::str#5 -Coalesced (already) [27] print_char_cursor#61 ? print_char_cursor#51 -Coalesced [34] print_str::str#7 ? print_str::str#0 -Coalesced [35] print_char_cursor#62 ? print_char_cursor#1 -Coalesced [37] print_char_cursor#69 ? print_char_cursor#48 -Coalesced [40] print_sword::w#7 ? print_sword::w#0 -Coalesced [41] print_char_cursor#64 ? print_char_cursor#12 -Coalesced [45] print_sword::w#6 ? print_sword::w#1 -Coalesced (already) [46] print_char_cursor#63 ? print_char_cursor#48 -Coalesced [48] print_byte::b#4 ? print_byte::b#0 -Coalesced [49] print_char_cursor#65 ? print_char_cursor#43 -Coalesced [52] print_byte::b#5 ? print_byte::b#1 -Coalesced (already) [53] print_char_cursor#66 ? print_char_cursor#12 -Coalesced [59] print_char::ch#4 ? print_char::ch#1 -Coalesced (already) [60] print_char_cursor#67 ? print_char_cursor#46 -Coalesced [64] print_char::ch#5 ? print_char::ch#2 -Coalesced (already) [65] print_char_cursor#68 ? print_char_cursor#12 -Coalesced [78] print_cls::sc#3 ? print_cls::sc#1 -Coalesced [94] sin16s_gen::x#4 ? sin16s_gen::x#1 -Coalesced [95] sin16s_gen::sintab#6 ? sin16s_gen::sintab#0 -Coalesced [96] sin16s_gen::i#4 ? sin16s_gen::i#1 -Coalesced [99] sin16s::x#9 ? sin16s::x#1 -Coalesced [103] sin16s::x#11 ? sin16s::x#2 -Coalesced [109] mulu16_sel::v1#8 ? mulu16_sel::v1#0 -Coalesced [110] mulu16_sel::v2#8 ? mulu16_sel::v2#0 -Coalesced [116] mulu16_sel::v1#9 ? mulu16_sel::v1#1 -Coalesced [117] mulu16_sel::v2#9 ? mulu16_sel::v2#1 -Coalesced [122] mulu16_sel::v1#10 ? mulu16_sel::v1#2 -Coalesced [129] mulu16_sel::v1#6 ? mulu16_sel::v1#3 -Coalesced [130] mulu16_sel::v2#6 ? mulu16_sel::v2#3 -Coalesced [136] mulu16_sel::v1#7 ? mulu16_sel::v1#4 -Coalesced [137] mulu16_sel::v2#7 ? mulu16_sel::v2#4 -Coalesced [145] sin16s::return#6 ? sin16s::sinx#1 -Coalesced [149] sin16s::x#10 ? sin16s::x#4 -Coalesced [150] sin16s::x#8 ? sin16s::x#0 -Coalesced [161] mul16u::a#7 ? mul16u::a#1 -Coalesced [162] mul16u::mb#6 ? mul16u::mb#0 -Coalesced [169] mul16u::res#9 ? mul16u::res#1 -Coalesced [173] mul16u::a#8 ? mul16u::a#0 -Coalesced [174] mul16u::res#7 ? mul16u::res#6 -Coalesced [175] mul16u::mb#7 ? mul16u::mb#1 -Coalesced (already) [176] mul16u::res#8 ? mul16u::res#2 -Coalesced [182] divr16u::rem#12 ? divr16u::rem#4 -Coalesced [189] divr16u::rem#13 ? divr16u::rem#10 -Coalesced [190] divr16u::dividend#9 ? divr16u::dividend#5 -Coalesced [197] divr16u::rem#16 ? divr16u::rem#1 -Coalesced [204] divr16u::rem#18 ? divr16u::rem#2 -Coalesced [205] divr16u::return#8 ? divr16u::quotient#2 -Coalesced [211] divr16u::rem#14 ? divr16u::rem#11 -Coalesced [212] divr16u::dividend#10 ? divr16u::dividend#0 -Coalesced [213] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [214] divr16u::i#7 ? divr16u::i#1 -Coalesced [215] divr16u::rem#17 ? divr16u::rem#6 -Coalesced [216] divr16u::return#7 ? divr16u::quotient#1 -Coalesced [217] divr16u::rem#15 ? divr16u::rem#0 +Coalesced [11] print_char_cursor#59 ← print_char_cursor#49 +Coalesced [13] print_char_cursor#58 ← print_char_cursor#2 +Coalesced [17] print_char_cursor#60 ← print_char_cursor#12 +Coalesced [22] main::st1#8 ← main::st1#1 +Coalesced [23] print_char_cursor#56 ← print_char_cursor#2 +Coalesced (already) [24] print_char_cursor#57 ← print_char_cursor#49 +Coalesced [26] print_str::str#6 ← print_str::str#5 +Coalesced (already) [27] print_char_cursor#61 ← print_char_cursor#51 +Coalesced [34] print_str::str#7 ← print_str::str#0 +Coalesced [35] print_char_cursor#62 ← print_char_cursor#1 +Coalesced [37] print_char_cursor#69 ← print_char_cursor#48 +Coalesced [40] print_sword::w#7 ← print_sword::w#0 +Coalesced [41] print_char_cursor#64 ← print_char_cursor#12 +Coalesced [45] print_sword::w#6 ← print_sword::w#1 +Coalesced (already) [46] print_char_cursor#63 ← print_char_cursor#48 +Coalesced [48] print_byte::b#4 ← print_byte::b#0 +Coalesced [49] print_char_cursor#65 ← print_char_cursor#43 +Coalesced [52] print_byte::b#5 ← print_byte::b#1 +Coalesced (already) [53] print_char_cursor#66 ← print_char_cursor#12 +Coalesced [59] print_char::ch#4 ← print_char::ch#1 +Coalesced (already) [60] print_char_cursor#67 ← print_char_cursor#46 +Coalesced [64] print_char::ch#5 ← print_char::ch#2 +Coalesced (already) [65] print_char_cursor#68 ← print_char_cursor#12 +Coalesced [78] print_cls::sc#3 ← print_cls::sc#1 +Coalesced [94] sin16s_gen::x#4 ← sin16s_gen::x#1 +Coalesced [95] sin16s_gen::sintab#6 ← sin16s_gen::sintab#0 +Coalesced [96] sin16s_gen::i#4 ← sin16s_gen::i#1 +Coalesced [99] sin16s::x#9 ← sin16s::x#1 +Coalesced [103] sin16s::x#11 ← sin16s::x#2 +Coalesced [109] mulu16_sel::v1#8 ← mulu16_sel::v1#0 +Coalesced [110] mulu16_sel::v2#8 ← mulu16_sel::v2#0 +Coalesced [116] mulu16_sel::v1#9 ← mulu16_sel::v1#1 +Coalesced [117] mulu16_sel::v2#9 ← mulu16_sel::v2#1 +Coalesced [122] mulu16_sel::v1#10 ← mulu16_sel::v1#2 +Coalesced [129] mulu16_sel::v1#6 ← mulu16_sel::v1#3 +Coalesced [130] mulu16_sel::v2#6 ← mulu16_sel::v2#3 +Coalesced [136] mulu16_sel::v1#7 ← mulu16_sel::v1#4 +Coalesced [137] mulu16_sel::v2#7 ← mulu16_sel::v2#4 +Coalesced [145] sin16s::return#6 ← sin16s::sinx#1 +Coalesced [149] sin16s::x#10 ← sin16s::x#4 +Coalesced [150] sin16s::x#8 ← sin16s::x#0 +Coalesced [161] mul16u::a#7 ← mul16u::a#1 +Coalesced [162] mul16u::mb#6 ← mul16u::mb#0 +Coalesced [169] mul16u::res#9 ← mul16u::res#1 +Coalesced [173] mul16u::a#8 ← mul16u::a#0 +Coalesced [174] mul16u::res#7 ← mul16u::res#6 +Coalesced [175] mul16u::mb#7 ← mul16u::mb#1 +Coalesced (already) [176] mul16u::res#8 ← mul16u::res#2 +Coalesced [182] divr16u::rem#12 ← divr16u::rem#4 +Coalesced [189] divr16u::rem#13 ← divr16u::rem#10 +Coalesced [190] divr16u::dividend#9 ← divr16u::dividend#5 +Coalesced [197] divr16u::rem#16 ← divr16u::rem#1 +Coalesced [204] divr16u::rem#18 ← divr16u::rem#2 +Coalesced [205] divr16u::return#8 ← divr16u::quotient#2 +Coalesced [211] divr16u::rem#14 ← divr16u::rem#11 +Coalesced [212] divr16u::dividend#10 ← divr16u::dividend#0 +Coalesced [213] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [214] divr16u::i#7 ← divr16u::i#1 +Coalesced [215] divr16u::rem#17 ← divr16u::rem#6 +Coalesced [216] divr16u::return#7 ← divr16u::quotient#1 +Coalesced [217] divr16u::rem#15 ← divr16u::rem#0 Coalesced down to 23 phi equivalence classes Culled Empty Block (label) main::@10 Culled Empty Block (label) main::@11 @@ -1728,9 +1728,9 @@ main::@4: scope:[main] from main [7] call print_cls to:main::@1 main::@1: scope:[main] from main::@4 main::@6 - [8] (byte*) print_char_cursor#49 ? phi( main::@4/(const byte*) print_line_cursor#0 main::@6/(byte*) print_char_cursor#2 ) - [8] (signed word*) main::st1#2 ? phi( main::@4/(const signed word[$78]) main::sintab1#0 main::@6/(signed word*) main::st1#1 ) - [9] (signed word) main::sw#0 ? *((signed word*) main::st1#2) + [8] (byte*) print_char_cursor#49 ← phi( main::@4/(const byte*) print_line_cursor#0 main::@6/(byte*) print_char_cursor#2 ) + [8] (signed word*) main::st1#2 ← phi( main::@4/(const signed word[$78]) main::sintab1#0 main::@6/(signed word*) main::st1#1 ) + [9] (signed word) main::sw#0 ← *((signed word*) main::st1#2) [10] if((signed word) main::sw#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 to:main::@3 main::@3: scope:[main] from main::@1 @@ -1738,8 +1738,8 @@ main::@3: scope:[main] from main::@1 [12] call print_str to:main::@2 main::@2: scope:[main] from main::@1 main::@3 - [13] (byte*) print_char_cursor#48 ? phi( main::@1/(byte*) print_char_cursor#49 main::@3/(byte*) print_char_cursor#2 ) - [14] (signed word) print_sword::w#1 ? (signed word) main::sw#0 + [13] (byte*) print_char_cursor#48 ← phi( main::@1/(byte*) print_char_cursor#49 main::@3/(byte*) print_char_cursor#2 ) + [14] (signed word) print_sword::w#1 ← (signed word) main::sw#0 [15] call print_sword to:main::@5 main::@5: scope:[main] from main::@2 @@ -1747,28 +1747,28 @@ main::@5: scope:[main] from main::@2 [17] call print_str to:main::@6 main::@6: scope:[main] from main::@5 - [18] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [18] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [19] if((signed word*) main::st1#1<(const signed word[$78]) main::sintab1#0+(const word) main::wavelength#0*(byte/signed byte/word/signed word/dword/signed dword) 2) goto main::@1 to:main::@return main::@return: scope:[main] from main::@6 [20] return to:@return print_str: scope:[print_str] from main::@3 main::@5 - [21] (byte*) print_char_cursor#51 ? phi( main::@3/(byte*) print_char_cursor#49 main::@5/(byte*) print_char_cursor#12 ) - [21] (byte*) print_str::str#5 ? phi( main::@3/(const string) main::str1 main::@5/(const string) main::str ) + [21] (byte*) print_char_cursor#51 ← phi( main::@3/(byte*) print_char_cursor#49 main::@5/(byte*) print_char_cursor#12 ) + [21] (byte*) print_str::str#5 ← phi( main::@3/(const string) main::str1 main::@5/(const string) main::str ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [22] (byte*) print_char_cursor#2 ? phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) - [22] (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + [22] (byte*) print_char_cursor#2 ← phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) + [22] (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) [23] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [24] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) - [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 - [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 + [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) + [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 + [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 to:print_str::@1 print_sword: scope:[print_sword] from main::@2 [28] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 @@ -1778,47 +1778,47 @@ print_sword::@2: scope:[print_sword] from print_sword [30] call print_char to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@2 - [31] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 + [31] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@3 - [32] (byte*) print_char_cursor#43 ? phi( print_sword/(byte*) print_char_cursor#48 print_sword::@3/(byte*) print_char_cursor#12 ) - [32] (signed word) print_sword::w#3 ? phi( print_sword/(signed word) print_sword::w#1 print_sword::@3/(signed word) print_sword::w#0 ) + [32] (byte*) print_char_cursor#43 ← phi( print_sword/(byte*) print_char_cursor#48 print_sword::@3/(byte*) print_char_cursor#12 ) + [32] (signed word) print_sword::w#3 ← phi( print_sword/(signed word) print_sword::w#1 print_sword::@3/(signed word) print_sword::w#0 ) [33] call print_word to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 [34] return to:@return print_word: scope:[print_word] from print_sword::@1 - [35] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 + [35] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 [36] call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [37] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 + [37] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 [38] call print_byte to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 [39] return to:@return print_byte: scope:[print_byte] from print_word print_word::@1 - [40] (byte*) print_char_cursor#46 ? phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) - [40] (byte) print_byte::b#2 ? phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) - [41] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [42] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [40] (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) + [40] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) + [41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [42] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [43] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [44] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [45] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [45] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [46] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 [47] return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sword::@2 - [48] (byte*) print_char_cursor#33 ? phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#12 print_sword::@2/(byte*) print_char_cursor#48 ) - [48] (byte) print_char::ch#3 ? phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) '-' ) - [49] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 - [50] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 + [48] (byte*) print_char_cursor#33 ← phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#12 print_sword::@2/(byte*) print_char_cursor#48 ) + [48] (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) '-' ) + [49] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 + [50] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 to:print_char::@return print_char::@return: scope:[print_char] from print_char [51] return @@ -1827,9 +1827,9 @@ print_cls: scope:[print_cls] from main::@4 [52] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [53] (byte*) print_cls::sc#2 ? phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [54] *((byte*) print_cls::sc#2) ? (byte) ' ' - [55] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [53] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) + [54] *((byte*) print_cls::sc#2) ← (byte) ' ' + [55] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [56] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -1838,25 +1838,25 @@ print_cls::@return: scope:[print_cls] from print_cls::@1 sin16s_gen: scope:[sin16s_gen] from main [58] phi() [59] call div32u16u - [60] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + [60] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 to:sin16s_gen::@2 sin16s_gen::@2: scope:[sin16s_gen] from sin16s_gen - [61] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + [61] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 to:sin16s_gen::@1 sin16s_gen::@1: scope:[sin16s_gen] from sin16s_gen::@2 sin16s_gen::@3 - [62] (word) sin16s_gen::i#2 ? phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(word) sin16s_gen::i#1 ) - [62] (signed word*) sin16s_gen::sintab#2 ? phi( sin16s_gen::@2/(const signed word[$78]) main::sintab1#0 sin16s_gen::@3/(signed word*) sin16s_gen::sintab#0 ) - [62] (dword) sin16s_gen::x#2 ? phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(dword) sin16s_gen::x#1 ) - [63] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 + [62] (word) sin16s_gen::i#2 ← phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(word) sin16s_gen::i#1 ) + [62] (signed word*) sin16s_gen::sintab#2 ← phi( sin16s_gen::@2/(const signed word[$78]) main::sintab1#0 sin16s_gen::@3/(signed word*) sin16s_gen::sintab#0 ) + [62] (dword) sin16s_gen::x#2 ← phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(dword) sin16s_gen::x#1 ) + [63] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [64] call sin16s - [65] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + [65] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 to:sin16s_gen::@3 sin16s_gen::@3: scope:[sin16s_gen] from sin16s_gen::@1 - [66] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - [67] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 - [68] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [69] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 - [70] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 + [66] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + [67] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 + [68] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [69] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 + [70] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 [71] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 to:sin16s_gen::@return sin16s_gen::@return: scope:[sin16s_gen] from sin16s_gen::@3 @@ -1866,165 +1866,165 @@ sin16s: scope:[sin16s] from sin16s_gen::@1 [73] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 to:sin16s::@4 sin16s::@4: scope:[sin16s] from sin16s - [74] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 + [74] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 to:sin16s::@1 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - [75] (byte) sin16s::isUpper#2 ? phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [75] (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) + [75] (byte) sin16s::isUpper#2 ← phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [75] (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) [76] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 to:sin16s::@5 sin16s::@5: scope:[sin16s] from sin16s::@1 - [77] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 + [77] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 to:sin16s::@2 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - [78] (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - [79] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [80] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 - [81] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - [82] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 + [78] (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + [79] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [80] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 + [81] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + [82] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [83] call mulu16_sel - [84] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + [84] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 to:sin16s::@7 sin16s::@7: scope:[sin16s] from sin16s::@2 - [85] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 - [86] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - [87] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 + [85] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 + [86] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + [87] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [88] call mulu16_sel - [89] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 + [89] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@7 - [90] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - [91] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + [90] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + [91] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [92] call mulu16_sel - [93] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + [93] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - [94] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - [95] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 - [96] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - [97] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 + [94] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + [95] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 + [96] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + [97] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [98] call mulu16_sel - [99] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 + [99] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - [100] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - [101] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - [102] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 + [100] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + [101] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + [102] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [103] call mulu16_sel - [104] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + [104] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - [105] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - [106] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [107] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 + [105] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + [106] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [107] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [108] if((byte) sin16s::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16s::@12 to:sin16s::@6 sin16s::@6: scope:[sin16s] from sin16s::@11 - [109] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 + [109] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 to:sin16s::@3 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - [110] (signed word) sin16s::return#1 ? phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) + [110] (signed word) sin16s::return#1 ← phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) to:sin16s::@return sin16s::@return: scope:[sin16s] from sin16s::@3 [111] return to:@return sin16s::@12: scope:[sin16s] from sin16s::@11 - [112] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + [112] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 to:sin16s::@3 mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@2 sin16s::@7 sin16s::@8 sin16s::@9 - [113] (byte) mulu16_sel::select#5 ? phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [113] (word) mulu16_sel::v2#5 ? phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) - [113] (word) mulu16_sel::v1#5 ? phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) - [114] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 - [115] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + [113] (byte) mulu16_sel::select#5 ← phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [113] (word) mulu16_sel::v2#5 ← phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) + [113] (word) mulu16_sel::v1#5 ← phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) + [114] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 + [115] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 [116] call mul16u - [117] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + [117] (dword) mul16u::return#2 ← (dword) mul16u::res#2 to:mulu16_sel::@1 mulu16_sel::@1: scope:[mulu16_sel] from mulu16_sel - [118] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - [119] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - [120] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 + [118] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + [119] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + [120] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@1 [121] return to:@return mul16u: scope:[mul16u] from mulu16_sel - [122] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 + [122] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@3 - [123] (dword) mul16u::mb#2 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) - [123] (dword) mul16u::res#2 ? phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) - [123] (word) mul16u::a#2 ? phi( mul16u/(word) mul16u::a#1 mul16u::@3/(word) mul16u::a#0 ) + [123] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) + [123] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) + [123] (word) mul16u::a#2 ← phi( mul16u/(word) mul16u::a#1 mul16u::@3/(word) mul16u::a#0 ) [124] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 to:mul16u::@return mul16u::@return: scope:[mul16u] from mul16u::@1 [125] return to:@return mul16u::@2: scope:[mul16u] from mul16u::@1 - [126] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [126] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [127] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 to:mul16u::@4 mul16u::@4: scope:[mul16u] from mul16u::@2 - [128] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 + [128] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 to:mul16u::@3 mul16u::@3: scope:[mul16u] from mul16u::@2 mul16u::@4 - [129] (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) - [130] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [131] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [129] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) + [130] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [131] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul16u::@1 div32u16u: scope:[div32u16u] from sin16s_gen [132] phi() [133] call divr16u - [134] (word) divr16u::return#2 ? (word) divr16u::return#0 + [134] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div32u16u::@1 div32u16u::@1: scope:[div32u16u] from div32u16u - [135] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 - [136] (word) divr16u::rem#4 ? (word) rem16u#1 + [135] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 + [136] (word) divr16u::rem#4 ← (word) rem16u#1 [137] call divr16u - [138] (word) divr16u::return#3 ? (word) divr16u::return#0 + [138] (word) divr16u::return#3 ← (word) divr16u::return#0 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u::@1 - [139] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - [140] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 + [139] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + [140] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@2 [141] return to:@return divr16u: scope:[divr16u] from div32u16u div32u16u::@1 - [142] (word) divr16u::dividend#5 ? phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) - [142] (word) divr16u::rem#10 ? phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) + [142] (word) divr16u::dividend#5 ← phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) + [142] (word) divr16u::rem#10 ← phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [143] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [143] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [143] (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) - [143] (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - [144] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [145] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - [146] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [143] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [143] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [143] (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) + [143] (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + [144] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [145] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + [146] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [147] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [148] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [148] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [149] (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [150] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [151] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [149] (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [150] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [151] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [152] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [153] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [154] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 + [153] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [154] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [155] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [155] (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - [156] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [155] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [155] (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + [156] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [157] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [158] (word) rem16u#1 ? (word) divr16u::rem#11 + [158] (word) rem16u#1 ← (word) divr16u::rem#11 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [159] return @@ -2473,7 +2473,7 @@ main: { jmp b1 //SEG23 main::@1 b1: - //SEG24 [9] (signed word) main::sw#0 ? *((signed word*) main::st1#2) -- vwsz1=_deref_pwsz2 + //SEG24 [9] (signed word) main::sw#0 ← *((signed word*) main::st1#2) -- vwsz1=_deref_pwsz2 ldy #0 lda (st1),y sta sw @@ -2505,7 +2505,7 @@ main: { jmp b2 //SEG34 main::@2 b2: - //SEG35 [14] (signed word) print_sword::w#1 ? (signed word) main::sw#0 -- vwsz1=vwsz2 + //SEG35 [14] (signed word) print_sword::w#1 ← (signed word) main::sw#0 -- vwsz1=vwsz2 lda sw sta print_sword.w lda sw+1 @@ -2530,7 +2530,7 @@ main: { jmp b6 //SEG43 main::@6 b6: - //SEG44 [18] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG44 [18] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st1 clc adc #2 @@ -2581,17 +2581,17 @@ print_str: { rts //SEG56 print_str::@2 b2: - //SEG57 [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG57 [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG58 [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG58 [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG59 [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG59 [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -2622,7 +2622,7 @@ print_sword: { jmp b3 //SEG68 print_sword::@3 b3: - //SEG69 [31] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG69 [31] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -2651,7 +2651,7 @@ print_sword: { //SEG77 print_word // Print a word as HEX print_word: { - //SEG78 [35] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 + //SEG78 [35] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 lda print_sword.w+1 sta print_byte.b //SEG79 [36] call print_byte @@ -2663,7 +2663,7 @@ print_word: { jmp b1 //SEG83 print_word::@1 b1: - //SEG84 [37] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 + //SEG84 [37] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 lda print_sword.w sta print_byte.b //SEG85 [38] call print_byte @@ -2685,14 +2685,14 @@ print_byte: { .label _0 = $35 .label _2 = $36 .label b = 8 - //SEG92 [41] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG92 [41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG93 [42] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG93 [42] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -2705,11 +2705,11 @@ print_byte: { jmp b1 //SEG98 print_byte::@1 b1: - //SEG99 [44] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG99 [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG100 [45] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG100 [45] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -2730,11 +2730,11 @@ print_byte: { // print_char(byte zeropage(9) ch) print_char: { .label ch = 9 - //SEG108 [49] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 -- _deref_pbuz1=vbuz2 + //SEG108 [49] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG109 [50] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 + //SEG109 [50] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -2763,11 +2763,11 @@ print_cls: { jmp b1 //SEG117 print_cls::@1 b1: - //SEG118 [54] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG118 [54] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG119 [55] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG119 [55] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -2800,7 +2800,7 @@ sin16s_gen: { //SEG125 [132] phi from sin16s_gen to div32u16u [phi:sin16s_gen->div32u16u] div32u16u_from_sin16s_gen: jsr div32u16u - //SEG126 [60] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 -- vduz1=vduz2 + //SEG126 [60] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 -- vduz1=vduz2 lda div32u16u.return sta div32u16u.return_2 lda div32u16u.return+1 @@ -2812,7 +2812,7 @@ sin16s_gen: { jmp b2 //SEG127 sin16s_gen::@2 b2: - //SEG128 [61] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 -- vduz1=vduz2 + //SEG128 [61] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 -- vduz1=vduz2 lda div32u16u.return_2 sta step lda div32u16u.return_2+1 @@ -2850,7 +2850,7 @@ sin16s_gen: { jmp b1 //SEG137 sin16s_gen::@1 b1: - //SEG138 [63] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG138 [63] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -2861,7 +2861,7 @@ sin16s_gen: { sta sin16s.x+3 //SEG139 [64] call sin16s jsr sin16s - //SEG140 [65] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 -- vwsz1=vwsz2 + //SEG140 [65] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 -- vwsz1=vwsz2 lda sin16s.return_1 sta sin16s.return lda sin16s.return_1+1 @@ -2869,19 +2869,19 @@ sin16s_gen: { jmp b3 //SEG141 sin16s_gen::@3 b3: - //SEG142 [66] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 -- vwsz1=vwsz2 + //SEG142 [66] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 -- vwsz1=vwsz2 lda sin16s.return sta _1 lda sin16s.return+1 sta _1+1 - //SEG143 [67] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG143 [67] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG144 [68] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG144 [68] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -2889,7 +2889,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG145 [69] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG145 [69] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -2903,7 +2903,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG146 [70] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG146 [70] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -2965,7 +2965,7 @@ sin16s: { jmp b4 //SEG152 sin16s::@4 b4: - //SEG153 [74] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG153 [74] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG168 [80] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG169 [81] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG169 [81] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG170 [82] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG170 [82] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -3077,7 +3077,7 @@ sin16s: { //SEG174 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG175 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG176 [84] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG176 [84] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return lda mulu16_sel.return_12+1 @@ -3085,17 +3085,17 @@ sin16s: { jmp b7 //SEG177 sin16s::@7 b7: - //SEG178 [85] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG178 [85] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG179 [86] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 -- vwuz1=vwuz2 + //SEG179 [86] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 -- vwuz1=vwuz2 lda x2 sta mulu16_sel.v1 lda x2+1 sta mulu16_sel.v1+1 - //SEG180 [87] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG180 [87] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -3109,7 +3109,7 @@ sin16s: { //SEG184 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG185 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG186 [89] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG186 [89] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_1 lda mulu16_sel.return_12+1 @@ -3117,12 +3117,12 @@ sin16s: { jmp b8 //SEG187 sin16s::@8 b8: - //SEG188 [90] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 -- vwuz1=vwuz2 + //SEG188 [90] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 -- vwuz1=vwuz2 lda mulu16_sel.return_1 sta x3 lda mulu16_sel.return_1+1 sta x3+1 - //SEG189 [91] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG189 [91] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 @@ -3140,7 +3140,7 @@ sin16s: { sta mulu16_sel.v2+1 //SEG194 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG195 [93] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG195 [93] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_2 lda mulu16_sel.return_12+1 @@ -3148,12 +3148,12 @@ sin16s: { jmp b9 //SEG196 sin16s::@9 b9: - //SEG197 [94] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 -- vwuz1=vwuz2 + //SEG197 [94] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 -- vwuz1=vwuz2 lda mulu16_sel.return_2 sta x3_6 lda mulu16_sel.return_2+1 sta x3_6+1 - //SEG198 [95] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG198 [95] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -3161,12 +3161,12 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG199 [96] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG199 [96] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 sta mulu16_sel.v1+1 - //SEG200 [97] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG200 [97] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -3180,7 +3180,7 @@ sin16s: { //SEG204 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG205 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG206 [99] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG206 [99] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_10 lda mulu16_sel.return_12+1 @@ -3188,17 +3188,17 @@ sin16s: { jmp b10 //SEG207 sin16s::@10 b10: - //SEG208 [100] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 -- vwuz1=vwuz2 + //SEG208 [100] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 -- vwuz1=vwuz2 lda mulu16_sel.return_10 sta x4 lda mulu16_sel.return_10+1 sta x4+1 - //SEG209 [101] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 -- vwuz1=vwuz2 + //SEG209 [101] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 -- vwuz1=vwuz2 lda x4 sta mulu16_sel.v1 lda x4+1 sta mulu16_sel.v1+1 - //SEG210 [102] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG210 [102] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -3212,7 +3212,7 @@ sin16s: { //SEG214 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG215 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG216 [104] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG216 [104] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_11 lda mulu16_sel.return_12+1 @@ -3220,12 +3220,12 @@ sin16s: { jmp b11 //SEG217 sin16s::@11 b11: - //SEG218 [105] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 -- vwuz1=vwuz2 + //SEG218 [105] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 -- vwuz1=vwuz2 lda mulu16_sel.return_11 sta x5 lda mulu16_sel.return_11+1 sta x5+1 - //SEG219 [106] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 + //SEG219 [106] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 lda x5+1 sta x5_128+1 lda x5 @@ -3236,7 +3236,7 @@ sin16s: { ror x5_128 dey bne !- - //SEG220 [107] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG220 [107] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 lda usinx clc adc x5_128 @@ -3251,7 +3251,7 @@ sin16s: { jmp b6 //SEG222 sin16s::@6 b6: - //SEG223 [109] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 + //SEG223 [109] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 sec lda usinx_1 eor #$ff @@ -3275,7 +3275,7 @@ sin16s: { rts //SEG229 sin16s::@12 b12: - //SEG230 [112] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 + //SEG230 [112] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 lda usinx_1 sta return_5 lda usinx_1+1 @@ -3298,19 +3298,19 @@ mulu16_sel: { .label return_11 = $5b .label select = $21 .label return_12 = $71 - //SEG232 [114] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG232 [114] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG233 [115] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 + //SEG233 [115] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 lda v2 sta mul16u.b lda v2+1 sta mul16u.b+1 //SEG234 [116] call mul16u jsr mul16u - //SEG235 [117] (dword) mul16u::return#2 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG235 [117] (dword) mul16u::return#2 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return lda mul16u.res+1 @@ -3322,7 +3322,7 @@ mulu16_sel: { jmp b1 //SEG236 mulu16_sel::@1 b1: - //SEG237 [118] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 -- vduz1=vduz2 + //SEG237 [118] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 -- vduz1=vduz2 lda mul16u.return sta _0 lda mul16u.return+1 @@ -3331,7 +3331,7 @@ mulu16_sel: { sta _0+2 lda mul16u.return+3 sta _0+3 - //SEG238 [119] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 + //SEG238 [119] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -3350,7 +3350,7 @@ mulu16_sel: { dex bne !- !e: - //SEG239 [120] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG239 [120] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return_12 lda _1+3 @@ -3371,7 +3371,7 @@ mul16u: { .label res = $24 .label b = $63 .label return = $65 - //SEG243 [122] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG243 [122] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -3405,7 +3405,7 @@ mul16u: { rts //SEG252 mul16u::@2 b2: - //SEG253 [126] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 + //SEG253 [126] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 lda a and #1 sta _1 @@ -3416,7 +3416,7 @@ mul16u: { jmp b4 //SEG255 mul16u::@4 b4: - //SEG256 [128] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG256 [128] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -3437,11 +3437,11 @@ mul16u: { jmp b3 //SEG259 mul16u::@3 b3: - //SEG260 [130] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG260 [130] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG261 [131] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG261 [131] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -3475,7 +3475,7 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG271 [134] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG271 [134] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -3483,12 +3483,12 @@ div32u16u: { jmp b1 //SEG272 div32u16u::@1 b1: - //SEG273 [135] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG273 [135] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta quotient_hi lda divr16u.return_2+1 sta quotient_hi+1 - //SEG274 [136] (word) divr16u::rem#4 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG274 [136] (word) divr16u::rem#4 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta divr16u.rem lda rem16u+1 @@ -3503,7 +3503,7 @@ div32u16u: { sta divr16u.dividend+1 //SEG278 [142] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG279 [138] (word) divr16u::return#3 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG279 [138] (word) divr16u::return#3 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_3 lda divr16u.return+1 @@ -3511,12 +3511,12 @@ div32u16u: { jmp b2 //SEG280 div32u16u::@2 b2: - //SEG281 [139] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG281 [139] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return_3 sta quotient_lo lda divr16u.return_3+1 sta quotient_lo+1 - //SEG282 [140] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG282 [140] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -3569,13 +3569,13 @@ divr16u: { jmp b1 //SEG296 divr16u::@1 b1: - //SEG297 [144] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG297 [144] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG298 [145] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 + //SEG298 [145] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG299 [146] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG299 [146] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -3586,7 +3586,7 @@ divr16u: { jmp b4 //SEG301 divr16u::@4 b4: - //SEG302 [148] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG302 [148] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -3597,10 +3597,10 @@ divr16u: { jmp b2 //SEG305 divr16u::@2 b2: - //SEG306 [150] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG306 [150] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG307 [151] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG307 [151] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG308 [152] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -3615,12 +3615,12 @@ divr16u: { jmp b5 //SEG309 divr16u::@5 b5: - //SEG310 [153] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG310 [153] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG311 [154] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG311 [154] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#48 print_sword::w#1 ] ( main:2::print_sword:15 [ main::st1#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a -Statement [31] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:15 [ main::st1#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a -Statement [35] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a -Statement [37] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a -Statement [41] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a +Statement [31] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:15 [ main::st1#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a +Statement [35] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a +Statement [37] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a +Statement [41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] -Statement [44] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a -Statement [49] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:15::print_char:30 [ main::st1#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:43 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:43 [ main::st1#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:46 [ main::st1#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:46 [ main::st1#2 print_char_cursor#33 ] ) always clobbers reg byte y +Statement [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a +Statement [49] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:15::print_char:30 [ main::st1#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:43 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:43 [ main::st1#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:46 [ main::st1#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:46 [ main::st1#2 print_char_cursor#33 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:8 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] -Statement [54] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [54] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [56] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:7 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [60] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [61] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a -Statement [63] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [65] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [66] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a -Statement [67] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y -Statement [68] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a -Statement [69] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [60] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [61] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a +Statement [63] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [65] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [66] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a +Statement [67] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y +Statement [68] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [69] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a Statement [71] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ) always clobbers reg byte a Statement [73] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [74] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [74] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [76] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:22 [ sin16s::isUpper#2 ] -Statement [77] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [79] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [77] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [79] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:22 [ sin16s::isUpper#2 ] -Statement [80] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [81] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [82] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [84] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [85] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [86] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [87] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [89] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [90] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [91] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [93] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [94] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [95] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [96] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [97] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [99] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [100] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [101] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [102] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [104] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [105] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [106] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [107] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [109] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [112] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [114] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a +Statement [80] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [81] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [82] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [84] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [85] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [86] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [87] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [89] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [90] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [91] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [93] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [94] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [95] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [96] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [97] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [99] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [100] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [101] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [102] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [104] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [105] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [106] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [107] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [109] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [112] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [114] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ mulu16_sel::select#5 ] -Statement [115] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a -Statement [117] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a -Statement [118] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [119] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [120] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [122] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [115] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a +Statement [117] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a +Statement [118] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [119] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [120] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [122] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a Statement [124] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [126] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [128] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a -Statement [134] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [135] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [136] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [138] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [139] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [140] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [145] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [126] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [128] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [134] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [135] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [136] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [138] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [139] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [140] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [145] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:50 [ divr16u::i#2 divr16u::i#1 ] -Statement [148] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [148] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [152] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [154] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [158] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [9] (signed word) main::sw#0 ? *((signed word*) main::st1#2) [ main::st1#2 print_char_cursor#49 main::sw#0 ] ( main:2 [ main::st1#2 print_char_cursor#49 main::sw#0 ] ) always clobbers reg byte a reg byte y +Statement [154] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [158] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [9] (signed word) main::sw#0 ← *((signed word*) main::st1#2) [ main::st1#2 print_char_cursor#49 main::sw#0 ] ( main:2 [ main::st1#2 print_char_cursor#49 main::sw#0 ] ) always clobbers reg byte a reg byte y Statement [10] if((signed word) main::sw#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 [ main::st1#2 print_char_cursor#49 main::sw#0 ] ( main:2 [ main::st1#2 print_char_cursor#49 main::sw#0 ] ) always clobbers reg byte a -Statement [14] (signed word) print_sword::w#1 ? (signed word) main::sw#0 [ main::st1#2 print_char_cursor#48 print_sword::w#1 ] ( main:2 [ main::st1#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a -Statement [18] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::st1#1 print_char_cursor#2 ] ( main:2 [ main::st1#1 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [14] (signed word) print_sword::w#1 ← (signed word) main::sw#0 [ main::st1#2 print_char_cursor#48 print_sword::w#1 ] ( main:2 [ main::st1#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a +Statement [18] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::st1#1 print_char_cursor#2 ] ( main:2 [ main::st1#1 print_char_cursor#2 ] ) always clobbers reg byte a Statement [19] if((signed word*) main::st1#1<(const signed word[$78]) main::sintab1#0+(const word) main::wavelength#0*(byte/signed byte/word/signed word/dword/signed dword) 2) goto main::@1 [ main::st1#1 print_char_cursor#2 ] ( main:2 [ main::st1#1 print_char_cursor#2 ] ) always clobbers reg byte a Statement [23] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:12 [ main::st1#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:17 [ main::st1#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:12 [ main::st1#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:17 [ main::st1#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y +Statement [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:12 [ main::st1#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:17 [ main::st1#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y Statement [28] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#48 print_sword::w#1 ] ( main:2::print_sword:15 [ main::st1#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a -Statement [31] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:15 [ main::st1#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a -Statement [35] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a -Statement [37] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a -Statement [41] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a -Statement [44] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a -Statement [49] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:15::print_char:30 [ main::st1#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:43 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:43 [ main::st1#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:46 [ main::st1#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:46 [ main::st1#2 print_char_cursor#33 ] ) always clobbers reg byte y -Statement [54] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [31] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:15 [ main::st1#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a +Statement [35] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a +Statement [37] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:15::print_word:33 [ main::st1#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a +Statement [41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a +Statement [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:15::print_word:33::print_byte:36 [ main::st1#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:15::print_word:33::print_byte:38 [ main::st1#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a +Statement [49] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:15::print_char:30 [ main::st1#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:43 [ main::st1#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:43 [ main::st1#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:36::print_char:46 [ main::st1#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:15::print_word:33::print_byte:38::print_char:46 [ main::st1#2 print_char_cursor#33 ] ) always clobbers reg byte y +Statement [54] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [56] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:7 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [60] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [61] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a -Statement [63] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [65] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [66] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a -Statement [67] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y -Statement [68] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a -Statement [69] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [60] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [61] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a +Statement [63] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [65] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [66] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a +Statement [67] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y +Statement [68] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [69] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a Statement [71] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ) always clobbers reg byte a Statement [73] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [74] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [74] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [76] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [77] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [79] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y -Statement [80] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [81] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [82] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [84] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [85] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [86] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [87] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [89] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [90] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [91] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [93] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [94] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [95] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [96] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [97] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [99] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [100] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [101] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [102] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [104] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [105] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [106] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [107] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [109] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [112] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [114] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a -Statement [115] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a -Statement [117] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a -Statement [118] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [119] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [120] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [122] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [77] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [79] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [80] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [81] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [82] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [84] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [85] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [86] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [87] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [89] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [90] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [91] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [93] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [94] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [95] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [96] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [97] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [99] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [100] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [101] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [102] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [104] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [105] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [106] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [107] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [109] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [112] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:64 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [114] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a +Statement [115] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a +Statement [117] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a +Statement [118] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [119] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [120] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [122] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a Statement [124] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [126] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [128] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a -Statement [134] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [135] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [136] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [138] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [139] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [140] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [145] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [148] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [126] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [128] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:5::sin16s:64::mulu16_sel:83::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:88::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:92::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:98::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:64::mulu16_sel:103::mul16u:116 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [134] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [135] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [136] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [138] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [139] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [140] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:5::div32u16u:59 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [145] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [148] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [152] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [154] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [158] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [154] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [158] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:5::div32u16u:59::divr16u:133 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:59::divr16u:137 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a Potential registers zp ZP_WORD:2 [ main::st1#2 main::st1#1 ] : zp ZP_WORD:2 , Potential registers zp ZP_WORD:4 [ print_str::str#3 print_str::str#5 print_str::str#0 ] : zp ZP_WORD:4 , Potential registers zp ZP_WORD:6 [ print_sword::w#3 print_sword::w#1 print_sword::w#0 ] : zp ZP_WORD:6 , @@ -4028,7 +4028,7 @@ main: { jmp b1 //SEG23 main::@1 b1: - //SEG24 [9] (signed word) main::sw#0 ? *((signed word*) main::st1#2) -- vwsz1=_deref_pwsz2 + //SEG24 [9] (signed word) main::sw#0 ← *((signed word*) main::st1#2) -- vwsz1=_deref_pwsz2 ldy #0 lda (st1),y sta sw @@ -4060,7 +4060,7 @@ main: { jmp b2 //SEG34 main::@2 b2: - //SEG35 [14] (signed word) print_sword::w#1 ? (signed word) main::sw#0 + //SEG35 [14] (signed word) print_sword::w#1 ← (signed word) main::sw#0 //SEG36 [15] call print_sword jsr print_sword //SEG37 [16] phi from main::@2 to main::@5 [phi:main::@2->main::@5] @@ -4081,7 +4081,7 @@ main: { jmp b6 //SEG43 main::@6 b6: - //SEG44 [18] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG44 [18] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st1 clc adc #2 @@ -4132,17 +4132,17 @@ print_str: { rts //SEG56 print_str::@2 b2: - //SEG57 [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG57 [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG58 [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG58 [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG59 [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG59 [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -4172,7 +4172,7 @@ print_sword: { jmp b3 //SEG68 print_sword::@3 b3: - //SEG69 [31] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG69 [31] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -4201,7 +4201,7 @@ print_sword: { //SEG77 print_word // Print a word as HEX print_word: { - //SEG78 [35] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 -- vbuxx=_hi_vwuz1 + //SEG78 [35] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 -- vbuxx=_hi_vwuz1 lda print_sword.w+1 tax //SEG79 [36] call print_byte @@ -4213,7 +4213,7 @@ print_word: { jmp b1 //SEG83 print_word::@1 b1: - //SEG84 [37] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 -- vbuxx=_lo_vwuz1 + //SEG84 [37] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 -- vbuxx=_lo_vwuz1 lda print_sword.w tax //SEG85 [38] call print_byte @@ -4232,13 +4232,13 @@ print_word: { // Print a byte as HEX // print_byte(byte register(X) b) print_byte: { - //SEG92 [41] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG92 [41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG93 [42] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG93 [42] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG94 [43] call print_char @@ -4250,10 +4250,10 @@ print_byte: { jmp b1 //SEG98 print_byte::@1 b1: - //SEG99 [44] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 + //SEG99 [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 - //SEG100 [45] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG100 [45] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x //SEG101 [46] call print_char //SEG102 [48] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] @@ -4271,10 +4271,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG108 [49] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa + //SEG108 [49] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG109 [50] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 + //SEG109 [50] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -4303,11 +4303,11 @@ print_cls: { jmp b1 //SEG117 print_cls::@1 b1: - //SEG118 [54] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG118 [54] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG119 [55] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG119 [55] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -4340,11 +4340,11 @@ sin16s_gen: { //SEG125 [132] phi from sin16s_gen to div32u16u [phi:sin16s_gen->div32u16u] div32u16u_from_sin16s_gen: jsr div32u16u - //SEG126 [60] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG126 [60] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 jmp b2 //SEG127 sin16s_gen::@2 b2: - //SEG128 [61] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + //SEG128 [61] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 //SEG129 [62] phi from sin16s_gen::@2 to sin16s_gen::@1 [phi:sin16s_gen::@2->sin16s_gen::@1] b1_from_b2: //SEG130 [62] phi (word) sin16s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen::@2->sin16s_gen::@1#0] -- vwuz1=vbuc1 @@ -4374,7 +4374,7 @@ sin16s_gen: { jmp b1 //SEG137 sin16s_gen::@1 b1: - //SEG138 [63] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG138 [63] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -4385,19 +4385,19 @@ sin16s_gen: { sta sin16s.x+3 //SEG139 [64] call sin16s jsr sin16s - //SEG140 [65] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG140 [65] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 jmp b3 //SEG141 sin16s_gen::@3 b3: - //SEG142 [66] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - //SEG143 [67] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG142 [66] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + //SEG143 [67] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG144 [68] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG144 [68] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -4405,7 +4405,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG145 [69] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG145 [69] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -4419,7 +4419,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG146 [70] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG146 [70] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4478,7 +4478,7 @@ sin16s: { jmp b4 //SEG152 sin16s::@4 b4: - //SEG153 [74] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG153 [74] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG168 [80] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG169 [81] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG169 [81] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG170 [82] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG170 [82] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4581,17 +4581,17 @@ sin16s: { //SEG174 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG175 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG176 [84] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG176 [84] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 jmp b7 //SEG177 sin16s::@7 b7: - //SEG178 [85] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG178 [85] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG179 [86] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG180 [87] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG179 [86] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG180 [87] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4604,7 +4604,7 @@ sin16s: { //SEG184 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG185 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG186 [89] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG186 [89] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 @@ -4612,8 +4612,8 @@ sin16s: { jmp b8 //SEG187 sin16s::@8 b8: - //SEG188 [90] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG189 [91] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG188 [90] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG189 [91] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG190 [92] call mulu16_sel //SEG191 [113] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] mulu16_sel_from_b8: @@ -4626,12 +4626,12 @@ sin16s: { sta mulu16_sel.v2+1 //SEG194 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG195 [93] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG195 [93] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 jmp b9 //SEG196 sin16s::@9 b9: - //SEG197 [94] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG198 [95] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG197 [94] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG198 [95] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -4639,8 +4639,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG199 [96] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG200 [97] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG199 [96] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG200 [97] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4653,7 +4653,7 @@ sin16s: { //SEG204 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG205 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG206 [99] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG206 [99] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 @@ -4661,9 +4661,9 @@ sin16s: { jmp b10 //SEG207 sin16s::@10 b10: - //SEG208 [100] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG209 [101] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG210 [102] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG208 [100] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG209 [101] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG210 [102] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4676,19 +4676,19 @@ sin16s: { //SEG214 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG215 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG216 [104] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG216 [104] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 jmp b11 //SEG217 sin16s::@11 b11: - //SEG218 [105] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG219 [106] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG218 [105] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG219 [106] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG220 [107] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG220 [107] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -4703,7 +4703,7 @@ sin16s: { jmp b6 //SEG222 sin16s::@6 b6: - //SEG223 [109] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG223 [109] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -4727,7 +4727,7 @@ sin16s: { rts //SEG229 sin16s::@12 b12: - //SEG230 [112] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG230 [112] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 jmp b3_from_b12 } //SEG231 mulu16_sel @@ -4742,20 +4742,20 @@ mulu16_sel: { .label return = $13 .label return_1 = 8 .label return_10 = 8 - //SEG232 [114] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG232 [114] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG233 [115] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + //SEG233 [115] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 //SEG234 [116] call mul16u jsr mul16u - //SEG235 [117] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG235 [117] (dword) mul16u::return#2 ← (dword) mul16u::res#2 jmp b1 //SEG236 mulu16_sel::@1 b1: - //SEG237 [118] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - //SEG238 [119] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG237 [118] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + //SEG238 [119] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -4766,7 +4766,7 @@ mulu16_sel: { dex bne !- !e: - //SEG239 [120] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG239 [120] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -4786,7 +4786,7 @@ mul16u: { .label res = $f .label b = $13 .label return = $f - //SEG243 [122] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG243 [122] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -4820,7 +4820,7 @@ mul16u: { rts //SEG252 mul16u::@2 b2: - //SEG253 [126] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG253 [126] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG254 [127] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 @@ -4829,7 +4829,7 @@ mul16u: { jmp b4 //SEG255 mul16u::@4 b4: - //SEG256 [128] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG256 [128] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -4850,11 +4850,11 @@ mul16u: { jmp b3 //SEG259 mul16u::@3 b3: - //SEG260 [130] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG260 [130] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG261 [131] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG261 [131] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -4887,16 +4887,16 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG271 [134] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG271 [134] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG272 div32u16u::@1 b1: - //SEG273 [135] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG273 [135] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG274 [136] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG274 [136] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG275 [137] call divr16u //SEG276 [142] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] divr16u_from_b1: @@ -4907,12 +4907,12 @@ div32u16u: { sta divr16u.dividend+1 //SEG278 [142] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG279 [138] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG279 [138] (word) divr16u::return#3 ← (word) divr16u::return#0 jmp b2 //SEG280 div32u16u::@2 b2: - //SEG281 [139] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG282 [140] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG281 [139] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG282 [140] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -4959,12 +4959,12 @@ divr16u: { jmp b1 //SEG296 divr16u::@1 b1: - //SEG297 [144] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG297 [144] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG298 [145] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG298 [145] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG299 [146] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG299 [146] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG300 [147] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -4972,7 +4972,7 @@ divr16u: { jmp b4 //SEG301 divr16u::@4 b4: - //SEG302 [148] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG302 [148] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -4983,10 +4983,10 @@ divr16u: { jmp b2 //SEG305 divr16u::@2 b2: - //SEG306 [150] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG306 [150] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG307 [151] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG307 [151] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG308 [152] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -5001,12 +5001,12 @@ divr16u: { jmp b5 //SEG309 divr16u::@5 b5: - //SEG310 [153] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG310 [153] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG311 [154] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG311 [154] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #main::@1#1] -- register_copy //SEG23 main::@1 b1: - //SEG24 [9] (signed word) main::sw#0 ? *((signed word*) main::st1#2) -- vwsz1=_deref_pwsz2 + //SEG24 [9] (signed word) main::sw#0 ← *((signed word*) main::st1#2) -- vwsz1=_deref_pwsz2 ldy #0 lda (st1),y sta sw @@ -5597,7 +5597,7 @@ main: { //SEG33 [13] phi (byte*) print_char_cursor#48 = (byte*) print_char_cursor#49 [phi:main::@1/main::@3->main::@2#0] -- register_copy //SEG34 main::@2 b2: - //SEG35 [14] (signed word) print_sword::w#1 ? (signed word) main::sw#0 + //SEG35 [14] (signed word) print_sword::w#1 ← (signed word) main::sw#0 //SEG36 [15] call print_sword jsr print_sword //SEG37 [16] phi from main::@2 to main::@5 [phi:main::@2->main::@5] @@ -5612,7 +5612,7 @@ main: { sta print_str.str+1 jsr print_str //SEG43 main::@6 - //SEG44 [18] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG44 [18] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st1 clc adc #2 @@ -5656,16 +5656,16 @@ print_str: { rts //SEG56 print_str::@2 b2: - //SEG57 [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG57 [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG58 [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG58 [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG59 [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG59 [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -5689,7 +5689,7 @@ print_sword: { lda #'-' jsr print_char //SEG68 print_sword::@3 - //SEG69 [31] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG69 [31] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -5713,7 +5713,7 @@ print_sword: { //SEG77 print_word // Print a word as HEX print_word: { - //SEG78 [35] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 -- vbuxx=_hi_vwuz1 + //SEG78 [35] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 -- vbuxx=_hi_vwuz1 lda print_sword.w+1 tax //SEG79 [36] call print_byte @@ -5722,7 +5722,7 @@ print_word: { //SEG82 [40] phi (byte) print_byte::b#2 = (byte) print_byte::b#0 [phi:print_word->print_byte#1] -- register_copy jsr print_byte //SEG83 print_word::@1 - //SEG84 [37] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 -- vbuxx=_lo_vwuz1 + //SEG84 [37] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 -- vbuxx=_lo_vwuz1 lda print_sword.w tax //SEG85 [38] call print_byte @@ -5738,13 +5738,13 @@ print_word: { // Print a byte as HEX // print_byte(byte register(X) b) print_byte: { - //SEG92 [41] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG92 [41] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG93 [42] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG93 [42] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG94 [43] call print_char @@ -5753,10 +5753,10 @@ print_byte: { //SEG97 [48] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG98 print_byte::@1 - //SEG99 [44] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 + //SEG99 [44] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 - //SEG100 [45] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG100 [45] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x //SEG101 [46] call print_char //SEG102 [48] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] @@ -5771,10 +5771,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG108 [49] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa + //SEG108 [49] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG109 [50] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 + //SEG109 [50] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -5797,11 +5797,11 @@ print_cls: { //SEG116 [53] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy //SEG117 print_cls::@1 b1: - //SEG118 [54] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG118 [54] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG119 [55] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG119 [55] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -5831,9 +5831,9 @@ sin16s_gen: { //SEG124 [59] call div32u16u //SEG125 [132] phi from sin16s_gen to div32u16u [phi:sin16s_gen->div32u16u] jsr div32u16u - //SEG126 [60] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG126 [60] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 //SEG127 sin16s_gen::@2 - //SEG128 [61] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + //SEG128 [61] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 //SEG129 [62] phi from sin16s_gen::@2 to sin16s_gen::@1 [phi:sin16s_gen::@2->sin16s_gen::@1] //SEG130 [62] phi (word) sin16s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen::@2->sin16s_gen::@1#0] -- vwuz1=vbuc1 lda #0 @@ -5857,7 +5857,7 @@ sin16s_gen: { //SEG136 [62] phi (dword) sin16s_gen::x#2 = (dword) sin16s_gen::x#1 [phi:sin16s_gen::@3->sin16s_gen::@1#2] -- register_copy //SEG137 sin16s_gen::@1 b1: - //SEG138 [63] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG138 [63] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -5868,17 +5868,17 @@ sin16s_gen: { sta sin16s.x+3 //SEG139 [64] call sin16s jsr sin16s - //SEG140 [65] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG140 [65] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 //SEG141 sin16s_gen::@3 - //SEG142 [66] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - //SEG143 [67] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG142 [66] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + //SEG143 [67] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG144 [68] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG144 [68] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -5886,7 +5886,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG145 [69] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG145 [69] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -5900,7 +5900,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG146 [70] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG146 [70] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -5955,7 +5955,7 @@ sin16s: { bcc b4 !: //SEG152 sin16s::@4 - //SEG153 [74] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG153 [74] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc #sin16s::@2#0] -- register_copy //SEG166 sin16s::@2 b2: - //SEG167 [79] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 + //SEG167 [79] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 ldy #3 !: asl _4 @@ -6028,17 +6028,17 @@ sin16s: { rol _4+3 dey bne !- - //SEG168 [80] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG168 [80] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG169 [81] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG169 [81] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG170 [82] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG170 [82] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6050,15 +6050,15 @@ sin16s: { //SEG174 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG175 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG176 [84] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG176 [84] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 //SEG177 sin16s::@7 - //SEG178 [85] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG178 [85] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG179 [86] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG180 [87] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG179 [86] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG180 [87] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6070,14 +6070,14 @@ sin16s: { //SEG184 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG185 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG186 [89] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG186 [89] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 sta mulu16_sel.return_1+1 //SEG187 sin16s::@8 - //SEG188 [90] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG189 [91] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG188 [90] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG189 [91] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG190 [92] call mulu16_sel //SEG191 [113] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] //SEG192 [113] phi (byte) mulu16_sel::select#5 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:sin16s::@8->mulu16_sel#0] -- vbuxx=vbuc1 @@ -6089,10 +6089,10 @@ sin16s: { sta mulu16_sel.v2+1 //SEG194 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG195 [93] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG195 [93] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 //SEG196 sin16s::@9 - //SEG197 [94] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG198 [95] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG197 [94] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG198 [95] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -6100,8 +6100,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG199 [96] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG200 [97] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG199 [96] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG200 [97] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6113,15 +6113,15 @@ sin16s: { //SEG204 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG205 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG206 [99] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG206 [99] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 sta mulu16_sel.return_10+1 //SEG207 sin16s::@10 - //SEG208 [100] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG209 [101] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG210 [102] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG208 [100] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG209 [101] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG210 [102] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6133,17 +6133,17 @@ sin16s: { //SEG214 [113] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG215 [113] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG216 [104] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG216 [104] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 //SEG217 sin16s::@11 - //SEG218 [105] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG219 [106] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG218 [105] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG219 [106] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG220 [107] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG220 [107] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -6156,7 +6156,7 @@ sin16s: { cmp #0 beq b3 //SEG222 sin16s::@6 - //SEG223 [109] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG223 [109] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -6174,7 +6174,7 @@ sin16s: { //SEG228 [111] return rts //SEG229 sin16s::@12 - //SEG230 [112] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG230 [112] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 } //SEG231 mulu16_sel // Calculate val*val for two unsigned word values - the result is 16 selected bits of the 32-bit result. @@ -6188,18 +6188,18 @@ mulu16_sel: { .label return = $13 .label return_1 = 8 .label return_10 = 8 - //SEG232 [114] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG232 [114] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG233 [115] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + //SEG233 [115] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 //SEG234 [116] call mul16u jsr mul16u - //SEG235 [117] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG235 [117] (dword) mul16u::return#2 ← (dword) mul16u::res#2 //SEG236 mulu16_sel::@1 - //SEG237 [118] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - //SEG238 [119] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG237 [118] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + //SEG238 [119] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -6210,7 +6210,7 @@ mulu16_sel: { dex bne !- !e: - //SEG239 [120] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG239 [120] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -6228,7 +6228,7 @@ mul16u: { .label res = $f .label b = $13 .label return = $f - //SEG243 [122] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG243 [122] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -6256,14 +6256,14 @@ mul16u: { rts //SEG252 mul16u::@2 b2: - //SEG253 [126] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG253 [126] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG254 [127] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG255 mul16u::@4 - //SEG256 [128] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG256 [128] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -6281,11 +6281,11 @@ mul16u: { //SEG258 [129] phi (dword) mul16u::res#6 = (dword) mul16u::res#2 [phi:mul16u::@2/mul16u::@4->mul16u::@3#0] -- register_copy //SEG259 mul16u::@3 b3: - //SEG260 [130] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG260 [130] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG261 [131] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG261 [131] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -6315,14 +6315,14 @@ div32u16u: { sta divr16u.rem sta divr16u.rem+1 jsr divr16u - //SEG271 [134] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG271 [134] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG272 div32u16u::@1 - //SEG273 [135] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG273 [135] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG274 [136] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG274 [136] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG275 [137] call divr16u //SEG276 [142] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] //SEG277 [142] phi (word) divr16u::dividend#5 = <(const dword) PI2_u4f28#0 [phi:div32u16u::@1->divr16u#0] -- vwuz1=vwuc1 @@ -6332,10 +6332,10 @@ div32u16u: { sta divr16u.dividend+1 //SEG278 [142] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG279 [138] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG279 [138] (word) divr16u::return#3 ← (word) divr16u::return#0 //SEG280 div32u16u::@2 - //SEG281 [139] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG282 [140] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG281 [139] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG282 [140] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -6375,18 +6375,18 @@ divr16u: { //SEG295 [143] phi (word) divr16u::rem#5 = (word) divr16u::rem#11 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG296 divr16u::@1 b1: - //SEG297 [144] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG297 [144] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG298 [145] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG298 [145] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG299 [146] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG299 [146] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG300 [147] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG301 divr16u::@4 - //SEG302 [148] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG302 [148] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -6394,10 +6394,10 @@ divr16u: { //SEG304 [149] phi (word) divr16u::rem#6 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG305 divr16u::@2 b2: - //SEG306 [150] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG306 [150] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG307 [151] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG307 [151] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG308 [152] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -6410,12 +6410,12 @@ divr16u: { bcc b3 !: //SEG309 divr16u::@5 - //SEG310 [153] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG310 [153] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG311 [154] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG311 [154] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #divr16u::@3#1] -- register_copy //SEG315 divr16u::@3 b3: - //SEG316 [156] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG316 [156] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG317 [157] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG318 divr16u::@6 - //SEG319 [158] (word) rem16u#1 ? (word) divr16u::rem#11 + //SEG319 [158] (word) rem16u#1 ← (word) divr16u::rem#11 //SEG320 divr16u::@return //SEG321 [159] return rts diff --git a/src/test/ref/sinusgen16b.log b/src/test/ref/sinusgen16b.log index a2810f5df..f62c8ce2a 100644 --- a/src/test/ref/sinusgen16b.log +++ b/src/test/ref/sinusgen16b.log @@ -2,859 +2,859 @@ Identified constant variable (word) main::wavelength CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@2 @2: scope:[] from @begin - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@5 divr16u: scope:[divr16u] from div32u16u div32u16u::@2 - (word) divr16u::divisor#6 ? phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) - (word) divr16u::dividend#5 ? phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) - (word) divr16u::rem#10 ? phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#6 ← phi( div32u16u/(word) divr16u::divisor#0 div32u16u::@2/(word) divr16u::divisor#1 ) + (word) divr16u::dividend#5 ← phi( div32u16u/(word) divr16u::dividend#1 div32u16u::@2/(word) divr16u::dividend#2 ) + (word) divr16u::rem#10 ← phi( div32u16u/(word) divr16u::rem#3 div32u16u::@2/(word) divr16u::rem#4 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#4 ? phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) - (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - (word~) divr16u::$0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#4 ← phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) + (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + (word~) divr16u::$0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#2 ? phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#4 ? phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#2 ← phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#4 ← phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#5 ? phi( divr16u::@1/(word) divr16u::divisor#4 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#7 ? phi( divr16u::@1/(word) divr16u::dividend#3 ) - (word) divr16u::rem#7 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#5 ← phi( divr16u::@1/(word) divr16u::divisor#4 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#7 ← phi( divr16u::@1/(word) divr16u::dividend#3 ) + (word) divr16u::rem#7 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#7 ? phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#6 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) - (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#7 ← phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#6 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) + (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#8 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#3 ? phi( divr16u::@2/(word) divr16u::divisor#2 ) - (word) divr16u::rem#8 ? phi( divr16u::@2/(word) divr16u::rem#6 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#8 - (word) divr16u::divisor#3 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#8 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#3 ← phi( divr16u::@2/(word) divr16u::divisor#2 ) + (word) divr16u::rem#8 ← phi( divr16u::@2/(word) divr16u::rem#6 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#8 - (word) divr16u::divisor#3 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#9 ? phi( divr16u::@3/(word) divr16u::rem#11 ) - (word) rem16u#1 ? (word) divr16u::rem#9 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#9 ← phi( divr16u::@3/(word) divr16u::rem#11 ) + (word) rem16u#1 ← (word) divr16u::rem#9 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#14 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#4 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#4 - (word) rem16u#2 ? (word) rem16u#14 + (word) rem16u#14 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#4 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#4 + (word) rem16u#2 ← (word) rem16u#14 return to:@return div32u16u: scope:[div32u16u] from sin16s_gen sin16s_genb - (word) rem16u#26 ? phi( sin16s_gen/(word) rem16u#27 sin16s_genb/(word) rem16u#29 ) - (word) div32u16u::divisor#2 ? phi( sin16s_gen/(word) div32u16u::divisor#0 sin16s_genb/(word) div32u16u::divisor#1 ) - (dword) div32u16u::dividend#2 ? phi( sin16s_gen/(dword) div32u16u::dividend#0 sin16s_genb/(dword) div32u16u::dividend#1 ) - (word~) div32u16u::$0 ? > (dword) div32u16u::dividend#2 - (word) divr16u::dividend#1 ? (word~) div32u16u::$0 - (word) divr16u::divisor#0 ? (word) div32u16u::divisor#2 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#26 ← phi( sin16s_gen/(word) rem16u#27 sin16s_genb/(word) rem16u#29 ) + (word) div32u16u::divisor#2 ← phi( sin16s_gen/(word) div32u16u::divisor#0 sin16s_genb/(word) div32u16u::divisor#1 ) + (dword) div32u16u::dividend#2 ← phi( sin16s_gen/(dword) div32u16u::dividend#0 sin16s_genb/(dword) div32u16u::dividend#1 ) + (word~) div32u16u::$0 ← > (dword) div32u16u::dividend#2 + (word) divr16u::dividend#1 ← (word~) div32u16u::$0 + (word) divr16u::divisor#0 ← (word) div32u16u::divisor#2 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u - (word) div32u16u::divisor#3 ? phi( div32u16u/(word) div32u16u::divisor#2 ) - (dword) div32u16u::dividend#3 ? phi( div32u16u/(dword) div32u16u::dividend#2 ) - (word) rem16u#15 ? phi( div32u16u/(word) rem16u#2 ) - (word) divr16u::return#5 ? phi( div32u16u/(word) divr16u::return#2 ) - (word~) div32u16u::$1 ? (word) divr16u::return#5 - (word) rem16u#3 ? (word) rem16u#15 - (word) div32u16u::quotient_hi#0 ? (word~) div32u16u::$1 - (word~) div32u16u::$2 ? < (dword) div32u16u::dividend#3 - (word) divr16u::dividend#2 ? (word~) div32u16u::$2 - (word) divr16u::divisor#1 ? (word) div32u16u::divisor#3 - (word) divr16u::rem#4 ? (word) rem16u#3 + (word) div32u16u::divisor#3 ← phi( div32u16u/(word) div32u16u::divisor#2 ) + (dword) div32u16u::dividend#3 ← phi( div32u16u/(dword) div32u16u::dividend#2 ) + (word) rem16u#15 ← phi( div32u16u/(word) rem16u#2 ) + (word) divr16u::return#5 ← phi( div32u16u/(word) divr16u::return#2 ) + (word~) div32u16u::$1 ← (word) divr16u::return#5 + (word) rem16u#3 ← (word) rem16u#15 + (word) div32u16u::quotient_hi#0 ← (word~) div32u16u::$1 + (word~) div32u16u::$2 ← < (dword) div32u16u::dividend#3 + (word) divr16u::dividend#2 ← (word~) div32u16u::$2 + (word) divr16u::divisor#1 ← (word) div32u16u::divisor#3 + (word) divr16u::rem#4 ← (word) rem16u#3 call divr16u - (word) divr16u::return#3 ? (word) divr16u::return#1 + (word) divr16u::return#3 ← (word) divr16u::return#1 to:div32u16u::@3 div32u16u::@3: scope:[div32u16u] from div32u16u::@2 - (word) div32u16u::quotient_hi#1 ? phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) - (word) rem16u#16 ? phi( div32u16u::@2/(word) rem16u#2 ) - (word) divr16u::return#6 ? phi( div32u16u::@2/(word) divr16u::return#3 ) - (word~) div32u16u::$3 ? (word) divr16u::return#6 - (word) rem16u#4 ? (word) rem16u#16 - (word) div32u16u::quotient_lo#0 ? (word~) div32u16u::$3 - (dword) div32u16u::quotient#0 ? { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } - (dword) div32u16u::return#0 ? (dword) div32u16u::quotient#0 + (word) div32u16u::quotient_hi#1 ← phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) + (word) rem16u#16 ← phi( div32u16u::@2/(word) rem16u#2 ) + (word) divr16u::return#6 ← phi( div32u16u::@2/(word) divr16u::return#3 ) + (word~) div32u16u::$3 ← (word) divr16u::return#6 + (word) rem16u#4 ← (word) rem16u#16 + (word) div32u16u::quotient_lo#0 ← (word~) div32u16u::$3 + (dword) div32u16u::quotient#0 ← { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } + (dword) div32u16u::return#0 ← (dword) div32u16u::quotient#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@3 - (word) rem16u#17 ? phi( div32u16u::@3/(word) rem16u#4 ) - (dword) div32u16u::return#4 ? phi( div32u16u::@3/(dword) div32u16u::return#0 ) - (dword) div32u16u::return#1 ? (dword) div32u16u::return#4 - (word) rem16u#5 ? (word) rem16u#17 + (word) rem16u#17 ← phi( div32u16u::@3/(word) rem16u#4 ) + (dword) div32u16u::return#4 ← phi( div32u16u::@3/(dword) div32u16u::return#0 ) + (dword) div32u16u::return#1 ← (dword) div32u16u::return#4 + (word) rem16u#5 ← (word) rem16u#17 return to:@return @5: scope:[] from @2 - (word) rem16u#46 ? phi( @2/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#46 ← phi( @2/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @5 - (word) rem16u#43 ? phi( @5/(word) rem16u#46 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#43 ← phi( @5/(word) rem16u#46 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@13 mul16u: scope:[mul16u] from mulu16_sel - (word) mul16u::a#5 ? phi( mulu16_sel/(word) mul16u::a#1 ) - (word) mul16u::b#1 ? phi( mulu16_sel/(word) mul16u::b#0 ) - (dword) mul16u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#1 + (word) mul16u::a#5 ← phi( mulu16_sel/(word) mul16u::a#1 ) + (word) mul16u::b#1 ← phi( mulu16_sel/(word) mul16u::b#0 ) + (dword) mul16u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#1 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@4 - (dword) mul16u::mb#5 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) - (dword) mul16u::res#4 ? phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) - (word) mul16u::a#2 ? phi( mul16u/(word) mul16u::a#5 mul16u::@4/(word) mul16u::a#0 ) - (bool~) mul16u::$0 ? (word) mul16u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#5 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) + (dword) mul16u::res#4 ← phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) + (word) mul16u::a#2 ← phi( mul16u/(word) mul16u::a#5 mul16u::@4/(word) mul16u::a#0 ) + (bool~) mul16u::$0 ← (word) mul16u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul16u::$0) goto mul16u::@2 to:mul16u::@3 mul16u::@2: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#5 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::mb#4 ? phi( mul16u::@1/(dword) mul16u::mb#5 ) - (word) mul16u::a#3 ? phi( mul16u::@1/(word) mul16u::a#2 ) - (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16u::$3 ? ! (bool~) mul16u::$2 + (dword) mul16u::res#5 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::mb#4 ← phi( mul16u::@1/(dword) mul16u::mb#5 ) + (word) mul16u::a#3 ← phi( mul16u::@1/(word) mul16u::a#2 ) + (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16u::$3 ← ! (bool~) mul16u::$2 if((bool~) mul16u::$3) goto mul16u::@4 to:mul16u::@7 mul16u::@3: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#2 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::return#0 ? (dword) mul16u::res#2 + (dword) mul16u::res#2 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::return#0 ← (dword) mul16u::res#2 to:mul16u::@return mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7 - (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) - (dword) mul16u::mb#2 ? phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) - (word) mul16u::a#4 ? phi( mul16u::@2/(word) mul16u::a#3 mul16u::@7/(word) mul16u::a#6 ) - (word~) mul16u::$5 ? (word) mul16u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul16u::a#0 ? (word~) mul16u::$5 - (dword~) mul16u::$6 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (dword) mul16u::mb#1 ? (dword~) mul16u::$6 + (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) + (dword) mul16u::mb#2 ← phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) + (word) mul16u::a#4 ← phi( mul16u::@2/(word) mul16u::a#3 mul16u::@7/(word) mul16u::a#6 ) + (word~) mul16u::$5 ← (word) mul16u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul16u::a#0 ← (word~) mul16u::$5 + (dword~) mul16u::$6 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) mul16u::mb#1 ← (dword~) mul16u::$6 to:mul16u::@1 mul16u::@7: scope:[mul16u] from mul16u::@2 - (word) mul16u::a#6 ? phi( mul16u::@2/(word) mul16u::a#3 ) - (dword) mul16u::mb#3 ? phi( mul16u::@2/(dword) mul16u::mb#4 ) - (dword) mul16u::res#3 ? phi( mul16u::@2/(dword) mul16u::res#5 ) - (dword~) mul16u::$4 ? (dword) mul16u::res#3 + (dword) mul16u::mb#3 - (dword) mul16u::res#1 ? (dword~) mul16u::$4 + (word) mul16u::a#6 ← phi( mul16u::@2/(word) mul16u::a#3 ) + (dword) mul16u::mb#3 ← phi( mul16u::@2/(dword) mul16u::mb#4 ) + (dword) mul16u::res#3 ← phi( mul16u::@2/(dword) mul16u::res#5 ) + (dword~) mul16u::$4 ← (dword) mul16u::res#3 + (dword) mul16u::mb#3 + (dword) mul16u::res#1 ← (dword~) mul16u::$4 to:mul16u::@4 mul16u::@return: scope:[mul16u] from mul16u::@3 - (dword) mul16u::return#3 ? phi( mul16u::@3/(dword) mul16u::return#0 ) - (dword) mul16u::return#1 ? (dword) mul16u::return#3 + (dword) mul16u::return#3 ← phi( mul16u::@3/(dword) mul16u::return#0 ) + (dword) mul16u::return#1 ← (dword) mul16u::return#3 return to:@return @13: scope:[] from @6 - (word) rem16u#40 ? phi( @6/(word) rem16u#43 ) - (dword) PI2_u4f28#0 ? (dword/signed dword) $6487ed51 - (dword) PI_u4f28#0 ? (dword/signed dword) $3243f6a9 - (dword) PI_HALF_u4f28#0 ? (dword/signed dword) $1921fb54 - (word) PI2_u4f12#0 ? (word/signed word/dword/signed dword) $6488 - (word) PI_u4f12#0 ? (word/signed word/dword/signed dword) $3244 - (word) PI_HALF_u4f12#0 ? (word/signed word/dword/signed dword) $1922 + (word) rem16u#40 ← phi( @6/(word) rem16u#43 ) + (dword) PI2_u4f28#0 ← (dword/signed dword) $6487ed51 + (dword) PI_u4f28#0 ← (dword/signed dword) $3243f6a9 + (dword) PI_HALF_u4f28#0 ← (dword/signed dword) $1921fb54 + (word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) $6488 + (word) PI_u4f12#0 ← (word/signed word/dword/signed dword) $3244 + (word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) $1922 to:@22 sin16s_gen: scope:[sin16s_gen] from main - (signed word*) sin16s_gen::sintab#5 ? phi( main/(signed word*) sin16s_gen::sintab#1 ) - (word) rem16u#27 ? phi( main/(word) rem16u#31 ) - (word) sin16s_gen::wavelength#1 ? phi( main/(word) sin16s_gen::wavelength#0 ) - (dword) div32u16u::dividend#0 ? (dword) PI2_u4f28#0 - (word) div32u16u::divisor#0 ? (word) sin16s_gen::wavelength#1 + (signed word*) sin16s_gen::sintab#5 ← phi( main/(signed word*) sin16s_gen::sintab#1 ) + (word) rem16u#27 ← phi( main/(word) rem16u#31 ) + (word) sin16s_gen::wavelength#1 ← phi( main/(word) sin16s_gen::wavelength#0 ) + (dword) div32u16u::dividend#0 ← (dword) PI2_u4f28#0 + (word) div32u16u::divisor#0 ← (word) sin16s_gen::wavelength#1 call div32u16u - (dword) div32u16u::return#2 ? (dword) div32u16u::return#1 + (dword) div32u16u::return#2 ← (dword) div32u16u::return#1 to:sin16s_gen::@3 sin16s_gen::@3: scope:[sin16s_gen] from sin16s_gen - (word) sin16s_gen::wavelength#4 ? phi( sin16s_gen/(word) sin16s_gen::wavelength#1 ) - (signed word*) sin16s_gen::sintab#4 ? phi( sin16s_gen/(signed word*) sin16s_gen::sintab#5 ) - (word) rem16u#18 ? phi( sin16s_gen/(word) rem16u#5 ) - (dword) div32u16u::return#5 ? phi( sin16s_gen/(dword) div32u16u::return#2 ) - (dword~) sin16s_gen::$0 ? (dword) div32u16u::return#5 - (word) rem16u#6 ? (word) rem16u#18 - (dword) sin16s_gen::step#0 ? (dword~) sin16s_gen::$0 - (dword) sin16s_gen::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin16s_gen::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen::wavelength#4 ← phi( sin16s_gen/(word) sin16s_gen::wavelength#1 ) + (signed word*) sin16s_gen::sintab#4 ← phi( sin16s_gen/(signed word*) sin16s_gen::sintab#5 ) + (word) rem16u#18 ← phi( sin16s_gen/(word) rem16u#5 ) + (dword) div32u16u::return#5 ← phi( sin16s_gen/(dword) div32u16u::return#2 ) + (dword~) sin16s_gen::$0 ← (dword) div32u16u::return#5 + (word) rem16u#6 ← (word) rem16u#18 + (dword) sin16s_gen::step#0 ← (dword~) sin16s_gen::$0 + (dword) sin16s_gen::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin16s_gen::@1 sin16s_gen::@1: scope:[sin16s_gen] from sin16s_gen::@3 sin16s_gen::@4 - (word) rem16u#34 ? phi( sin16s_gen::@3/(word) rem16u#6 sin16s_gen::@4/(word) rem16u#28 ) - (word) sin16s_gen::wavelength#3 ? phi( sin16s_gen::@3/(word) sin16s_gen::wavelength#4 sin16s_gen::@4/(word) sin16s_gen::wavelength#2 ) - (word) sin16s_gen::i#3 ? phi( sin16s_gen::@3/(word) sin16s_gen::i#0 sin16s_gen::@4/(word) sin16s_gen::i#1 ) - (dword) sin16s_gen::step#2 ? phi( sin16s_gen::@3/(dword) sin16s_gen::step#0 sin16s_gen::@4/(dword) sin16s_gen::step#1 ) - (signed word*) sin16s_gen::sintab#3 ? phi( sin16s_gen::@3/(signed word*) sin16s_gen::sintab#4 sin16s_gen::@4/(signed word*) sin16s_gen::sintab#0 ) - (dword) sin16s_gen::x#2 ? phi( sin16s_gen::@3/(dword) sin16s_gen::x#0 sin16s_gen::@4/(dword) sin16s_gen::x#1 ) - (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 + (word) rem16u#34 ← phi( sin16s_gen::@3/(word) rem16u#6 sin16s_gen::@4/(word) rem16u#28 ) + (word) sin16s_gen::wavelength#3 ← phi( sin16s_gen::@3/(word) sin16s_gen::wavelength#4 sin16s_gen::@4/(word) sin16s_gen::wavelength#2 ) + (word) sin16s_gen::i#3 ← phi( sin16s_gen::@3/(word) sin16s_gen::i#0 sin16s_gen::@4/(word) sin16s_gen::i#1 ) + (dword) sin16s_gen::step#2 ← phi( sin16s_gen::@3/(dword) sin16s_gen::step#0 sin16s_gen::@4/(dword) sin16s_gen::step#1 ) + (signed word*) sin16s_gen::sintab#3 ← phi( sin16s_gen::@3/(signed word*) sin16s_gen::sintab#4 sin16s_gen::@4/(signed word*) sin16s_gen::sintab#0 ) + (dword) sin16s_gen::x#2 ← phi( sin16s_gen::@3/(dword) sin16s_gen::x#0 sin16s_gen::@4/(dword) sin16s_gen::x#1 ) + (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 call sin16s - (signed word) sin16s::return#0 ? (signed word) sin16s::return#2 + (signed word) sin16s::return#0 ← (signed word) sin16s::return#2 to:sin16s_gen::@4 sin16s_gen::@4: scope:[sin16s_gen] from sin16s_gen::@1 - (word) rem16u#28 ? phi( sin16s_gen::@1/(word) rem16u#34 ) - (word) sin16s_gen::wavelength#2 ? phi( sin16s_gen::@1/(word) sin16s_gen::wavelength#3 ) - (word) sin16s_gen::i#2 ? phi( sin16s_gen::@1/(word) sin16s_gen::i#3 ) - (dword) sin16s_gen::step#1 ? phi( sin16s_gen::@1/(dword) sin16s_gen::step#2 ) - (dword) sin16s_gen::x#3 ? phi( sin16s_gen::@1/(dword) sin16s_gen::x#2 ) - (signed word*) sin16s_gen::sintab#2 ? phi( sin16s_gen::@1/(signed word*) sin16s_gen::sintab#3 ) - (signed word) sin16s::return#3 ? phi( sin16s_gen::@1/(signed word) sin16s::return#0 ) - (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#3 - *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 - (signed word*~) sin16s_gen::$2 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) sin16s_gen::sintab#0 ? (signed word*~) sin16s_gen::$2 - (dword~) sin16s_gen::$3 ? (dword) sin16s_gen::x#3 + (dword) sin16s_gen::step#1 - (dword) sin16s_gen::x#1 ? (dword~) sin16s_gen::$3 - (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 - (bool~) sin16s_gen::$4 ? (word) sin16s_gen::i#1 < (word) sin16s_gen::wavelength#2 + (word) rem16u#28 ← phi( sin16s_gen::@1/(word) rem16u#34 ) + (word) sin16s_gen::wavelength#2 ← phi( sin16s_gen::@1/(word) sin16s_gen::wavelength#3 ) + (word) sin16s_gen::i#2 ← phi( sin16s_gen::@1/(word) sin16s_gen::i#3 ) + (dword) sin16s_gen::step#1 ← phi( sin16s_gen::@1/(dword) sin16s_gen::step#2 ) + (dword) sin16s_gen::x#3 ← phi( sin16s_gen::@1/(dword) sin16s_gen::x#2 ) + (signed word*) sin16s_gen::sintab#2 ← phi( sin16s_gen::@1/(signed word*) sin16s_gen::sintab#3 ) + (signed word) sin16s::return#3 ← phi( sin16s_gen::@1/(signed word) sin16s::return#0 ) + (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#3 + *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 + (signed word*~) sin16s_gen::$2 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) sin16s_gen::sintab#0 ← (signed word*~) sin16s_gen::$2 + (dword~) sin16s_gen::$3 ← (dword) sin16s_gen::x#3 + (dword) sin16s_gen::step#1 + (dword) sin16s_gen::x#1 ← (dword~) sin16s_gen::$3 + (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 + (bool~) sin16s_gen::$4 ← (word) sin16s_gen::i#1 < (word) sin16s_gen::wavelength#2 if((bool~) sin16s_gen::$4) goto sin16s_gen::@1 to:sin16s_gen::@return sin16s_gen::@return: scope:[sin16s_gen] from sin16s_gen::@4 - (word) rem16u#19 ? phi( sin16s_gen::@4/(word) rem16u#28 ) - (word) rem16u#7 ? (word) rem16u#19 + (word) rem16u#19 ← phi( sin16s_gen::@4/(word) rem16u#28 ) + (word) rem16u#7 ← (word) rem16u#19 return to:@return sin16s: scope:[sin16s] from sin16s_gen::@1 - (dword) sin16s::x#3 ? phi( sin16s_gen::@1/(dword) sin16s::x#0 ) - (byte) sin16s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 - (bool~) sin16s::$1 ? ! (bool~) sin16s::$0 + (dword) sin16s::x#3 ← phi( sin16s_gen::@1/(dword) sin16s::x#0 ) + (byte) sin16s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 + (bool~) sin16s::$1 ← ! (bool~) sin16s::$0 if((bool~) sin16s::$1) goto sin16s::@1 to:sin16s::@4 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - (byte) sin16s::isUpper#8 ? phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) - (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) - (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 - (bool~) sin16s::$3 ? ! (bool~) sin16s::$2 + (byte) sin16s::isUpper#8 ← phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) + (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) + (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 + (bool~) sin16s::$3 ← ! (bool~) sin16s::$2 if((bool~) sin16s::$3) goto sin16s::@2 to:sin16s::@5 sin16s::@4: scope:[sin16s] from sin16s - (dword) sin16s::x#5 ? phi( sin16s/(dword) sin16s::x#3 ) - (dword~) sin16s::$18 ? (dword) sin16s::x#5 - (dword) PI_u4f28#0 - (dword) sin16s::x#1 ? (dword~) sin16s::$18 - (byte) sin16s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) sin16s::x#5 ← phi( sin16s/(dword) sin16s::x#3 ) + (dword~) sin16s::$18 ← (dword) sin16s::x#5 - (dword) PI_u4f28#0 + (dword) sin16s::x#1 ← (dword~) sin16s::$18 + (byte) sin16s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin16s::@1 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - (byte) sin16s::isUpper#7 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) - (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) sin16s::$5 ? > (dword~) sin16s::$4 - (word) sin16s::x1#0 ? (word~) sin16s::$5 - (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 - (byte) mulu16_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#7 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) + (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) sin16s::$5 ← > (dword~) sin16s::$4 + (word) sin16s::x1#0 ← (word~) sin16s::$5 + (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 + (byte) mulu16_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#6 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@2 - (byte) sin16s::isUpper#6 ? phi( sin16s::@2/(byte) sin16s::isUpper#7 ) - (word) sin16s::x1#1 ? phi( sin16s::@2/(word) sin16s::x1#0 ) - (word) mulu16_sel::return#12 ? phi( sin16s::@2/(word) mulu16_sel::return#0 ) - (word~) sin16s::$6 ? (word) mulu16_sel::return#12 - (word) sin16s::x2#0 ? (word~) sin16s::$6 - (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - (word) mulu16_sel::v2#1 ? (word) sin16s::x1#1 - (byte) mulu16_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#6 ← phi( sin16s::@2/(byte) sin16s::isUpper#7 ) + (word) sin16s::x1#1 ← phi( sin16s::@2/(word) sin16s::x1#0 ) + (word) mulu16_sel::return#12 ← phi( sin16s::@2/(word) mulu16_sel::return#0 ) + (word~) sin16s::$6 ← (word) mulu16_sel::return#12 + (word) sin16s::x2#0 ← (word~) sin16s::$6 + (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + (word) mulu16_sel::v2#1 ← (word) sin16s::x1#1 + (byte) mulu16_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#6 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - (byte) sin16s::isUpper#5 ? phi( sin16s::@8/(byte) sin16s::isUpper#6 ) - (word) sin16s::x1#4 ? phi( sin16s::@8/(word) sin16s::x1#1 ) - (word) mulu16_sel::return#13 ? phi( sin16s::@8/(word) mulu16_sel::return#1 ) - (word~) sin16s::$7 ? (word) mulu16_sel::return#13 - (word) sin16s::x3#0 ? (word~) sin16s::$7 - (word/signed word/dword/signed dword~) sin16s::$8 ? (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 - (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 - (word) mulu16_sel::v2#2 ? (word/signed word/dword/signed dword~) sin16s::$8 - (byte) mulu16_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#5 ← phi( sin16s::@8/(byte) sin16s::isUpper#6 ) + (word) sin16s::x1#4 ← phi( sin16s::@8/(word) sin16s::x1#1 ) + (word) mulu16_sel::return#13 ← phi( sin16s::@8/(word) mulu16_sel::return#1 ) + (word~) sin16s::$7 ← (word) mulu16_sel::return#13 + (word) sin16s::x3#0 ← (word~) sin16s::$7 + (word/signed word/dword/signed dword~) sin16s::$8 ← (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 + (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 + (word) mulu16_sel::v2#2 ← (word/signed word/dword/signed dword~) sin16s::$8 + (byte) mulu16_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#6 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - (byte) sin16s::isUpper#4 ? phi( sin16s::@9/(byte) sin16s::isUpper#5 ) - (word) sin16s::x3#1 ? phi( sin16s::@9/(word) sin16s::x3#0 ) - (word) sin16s::x1#2 ? phi( sin16s::@9/(word) sin16s::x1#4 ) - (word) mulu16_sel::return#14 ? phi( sin16s::@9/(word) mulu16_sel::return#2 ) - (word~) sin16s::$9 ? (word) mulu16_sel::return#14 - (word) sin16s::x3_6#0 ? (word~) sin16s::$9 - (word~) sin16s::$10 ? (word) sin16s::x1#2 - (word) sin16s::x3_6#0 - (word) sin16s::usinx#0 ? (word~) sin16s::$10 - (word) mulu16_sel::v1#3 ? (word) sin16s::x3#1 - (word) mulu16_sel::v2#3 ? (word) sin16s::x1#2 - (byte) mulu16_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#4 ← phi( sin16s::@9/(byte) sin16s::isUpper#5 ) + (word) sin16s::x3#1 ← phi( sin16s::@9/(word) sin16s::x3#0 ) + (word) sin16s::x1#2 ← phi( sin16s::@9/(word) sin16s::x1#4 ) + (word) mulu16_sel::return#14 ← phi( sin16s::@9/(word) mulu16_sel::return#2 ) + (word~) sin16s::$9 ← (word) mulu16_sel::return#14 + (word) sin16s::x3_6#0 ← (word~) sin16s::$9 + (word~) sin16s::$10 ← (word) sin16s::x1#2 - (word) sin16s::x3_6#0 + (word) sin16s::usinx#0 ← (word~) sin16s::$10 + (word) mulu16_sel::v1#3 ← (word) sin16s::x3#1 + (word) mulu16_sel::v2#3 ← (word) sin16s::x1#2 + (byte) mulu16_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#3 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#3 ← (word) mulu16_sel::return#6 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - (byte) sin16s::isUpper#3 ? phi( sin16s::@10/(byte) sin16s::isUpper#4 ) - (word) sin16s::usinx#4 ? phi( sin16s::@10/(word) sin16s::usinx#0 ) - (word) sin16s::x1#3 ? phi( sin16s::@10/(word) sin16s::x1#2 ) - (word) mulu16_sel::return#15 ? phi( sin16s::@10/(word) mulu16_sel::return#3 ) - (word~) sin16s::$11 ? (word) mulu16_sel::return#15 - (word) sin16s::x4#0 ? (word~) sin16s::$11 - (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - (word) mulu16_sel::v2#4 ? (word) sin16s::x1#3 - (byte) mulu16_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#3 ← phi( sin16s::@10/(byte) sin16s::isUpper#4 ) + (word) sin16s::usinx#4 ← phi( sin16s::@10/(word) sin16s::usinx#0 ) + (word) sin16s::x1#3 ← phi( sin16s::@10/(word) sin16s::x1#2 ) + (word) mulu16_sel::return#15 ← phi( sin16s::@10/(word) mulu16_sel::return#3 ) + (word~) sin16s::$11 ← (word) mulu16_sel::return#15 + (word) sin16s::x4#0 ← (word~) sin16s::$11 + (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + (word) mulu16_sel::v2#4 ← (word) sin16s::x1#3 + (byte) mulu16_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#4 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#4 ← (word) mulu16_sel::return#6 to:sin16s::@12 sin16s::@12: scope:[sin16s] from sin16s::@11 - (byte) sin16s::isUpper#2 ? phi( sin16s::@11/(byte) sin16s::isUpper#3 ) - (word) sin16s::usinx#2 ? phi( sin16s::@11/(word) sin16s::usinx#4 ) - (word) mulu16_sel::return#16 ? phi( sin16s::@11/(word) mulu16_sel::return#4 ) - (word~) sin16s::$12 ? (word) mulu16_sel::return#16 - (word) sin16s::x5#0 ? (word~) sin16s::$12 - (word~) sin16s::$13 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) sin16s::x5_128#0 ? (word~) sin16s::$13 - (word~) sin16s::$14 ? (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 - (word) sin16s::usinx#1 ? (word~) sin16s::$14 - (signed word~) sin16s::$15 ? ((signed word)) (word) sin16s::usinx#1 - (signed word) sin16s::sinx#0 ? (signed word~) sin16s::$15 - (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$17 ? ! (bool~) sin16s::$16 + (byte) sin16s::isUpper#2 ← phi( sin16s::@11/(byte) sin16s::isUpper#3 ) + (word) sin16s::usinx#2 ← phi( sin16s::@11/(word) sin16s::usinx#4 ) + (word) mulu16_sel::return#16 ← phi( sin16s::@11/(word) mulu16_sel::return#4 ) + (word~) sin16s::$12 ← (word) mulu16_sel::return#16 + (word) sin16s::x5#0 ← (word~) sin16s::$12 + (word~) sin16s::$13 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) sin16s::x5_128#0 ← (word~) sin16s::$13 + (word~) sin16s::$14 ← (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 + (word) sin16s::usinx#1 ← (word~) sin16s::$14 + (signed word~) sin16s::$15 ← ((signed word)) (word) sin16s::usinx#1 + (signed word) sin16s::sinx#0 ← (signed word~) sin16s::$15 + (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$17 ← ! (bool~) sin16s::$16 if((bool~) sin16s::$17) goto sin16s::@3 to:sin16s::@6 sin16s::@5: scope:[sin16s] from sin16s::@1 - (byte) sin16s::isUpper#9 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 ) - (dword) sin16s::x#7 ? phi( sin16s::@1/(dword) sin16s::x#4 ) - (dword~) sin16s::$19 ? (dword) PI_u4f28#0 - (dword) sin16s::x#7 - (dword) sin16s::x#2 ? (dword~) sin16s::$19 + (byte) sin16s::isUpper#9 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 ) + (dword) sin16s::x#7 ← phi( sin16s::@1/(dword) sin16s::x#4 ) + (dword~) sin16s::$19 ← (dword) PI_u4f28#0 - (dword) sin16s::x#7 + (dword) sin16s::x#2 ← (dword~) sin16s::$19 to:sin16s::@2 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - (signed word) sin16s::sinx#2 ? phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) - (signed word) sin16s::return#1 ? (signed word) sin16s::sinx#2 + (signed word) sin16s::sinx#2 ← phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) + (signed word) sin16s::return#1 ← (signed word) sin16s::sinx#2 to:sin16s::@return sin16s::@6: scope:[sin16s] from sin16s::@12 - (word) sin16s::usinx#3 ? phi( sin16s::@12/(word) sin16s::usinx#1 ) - (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#3 - (signed word~) sin16s::$21 ? - (signed word~) sin16s::$20 - (signed word) sin16s::sinx#1 ? (signed word~) sin16s::$21 + (word) sin16s::usinx#3 ← phi( sin16s::@12/(word) sin16s::usinx#1 ) + (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#3 + (signed word~) sin16s::$21 ← - (signed word~) sin16s::$20 + (signed word) sin16s::sinx#1 ← (signed word~) sin16s::$21 to:sin16s::@3 sin16s::@return: scope:[sin16s] from sin16s::@3 - (signed word) sin16s::return#4 ? phi( sin16s::@3/(signed word) sin16s::return#1 ) - (signed word) sin16s::return#2 ? (signed word) sin16s::return#4 + (signed word) sin16s::return#4 ← phi( sin16s::@3/(signed word) sin16s::return#1 ) + (signed word) sin16s::return#2 ← (signed word) sin16s::return#4 return to:@return mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@11 sin16s::@2 sin16s::@8 sin16s::@9 sin16sb::@10 sin16sb::@11 sin16sb::@2 sin16sb::@8 sin16sb::@9 - (byte) mulu16_sel::select#11 ? phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 sin16sb::@10/(byte) mulu16_sel::select#8 sin16sb::@11/(byte) mulu16_sel::select#9 sin16sb::@2/(byte) mulu16_sel::select#5 sin16sb::@8/(byte) mulu16_sel::select#6 sin16sb::@9/(byte) mulu16_sel::select#7 ) - (word) mulu16_sel::v2#10 ? phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 sin16sb::@10/(word) mulu16_sel::v2#8 sin16sb::@11/(word) mulu16_sel::v2#9 sin16sb::@2/(word) mulu16_sel::v2#5 sin16sb::@8/(word) mulu16_sel::v2#6 sin16sb::@9/(word) mulu16_sel::v2#7 ) - (word) mulu16_sel::v1#10 ? phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 sin16sb::@10/(word) mulu16_sel::v1#8 sin16sb::@11/(word) mulu16_sel::v1#9 sin16sb::@2/(word) mulu16_sel::v1#5 sin16sb::@8/(word) mulu16_sel::v1#6 sin16sb::@9/(word) mulu16_sel::v1#7 ) - (word) mul16u::a#1 ? (word) mulu16_sel::v1#10 - (word) mul16u::b#0 ? (word) mulu16_sel::v2#10 + (byte) mulu16_sel::select#11 ← phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 sin16sb::@10/(byte) mulu16_sel::select#8 sin16sb::@11/(byte) mulu16_sel::select#9 sin16sb::@2/(byte) mulu16_sel::select#5 sin16sb::@8/(byte) mulu16_sel::select#6 sin16sb::@9/(byte) mulu16_sel::select#7 ) + (word) mulu16_sel::v2#10 ← phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 sin16sb::@10/(word) mulu16_sel::v2#8 sin16sb::@11/(word) mulu16_sel::v2#9 sin16sb::@2/(word) mulu16_sel::v2#5 sin16sb::@8/(word) mulu16_sel::v2#6 sin16sb::@9/(word) mulu16_sel::v2#7 ) + (word) mulu16_sel::v1#10 ← phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 sin16sb::@10/(word) mulu16_sel::v1#8 sin16sb::@11/(word) mulu16_sel::v1#9 sin16sb::@2/(word) mulu16_sel::v1#5 sin16sb::@8/(word) mulu16_sel::v1#6 sin16sb::@9/(word) mulu16_sel::v1#7 ) + (word) mul16u::a#1 ← (word) mulu16_sel::v1#10 + (word) mul16u::b#0 ← (word) mulu16_sel::v2#10 call mul16u - (dword) mul16u::return#2 ? (dword) mul16u::return#1 + (dword) mul16u::return#2 ← (dword) mul16u::return#1 to:mulu16_sel::@2 mulu16_sel::@2: scope:[mulu16_sel] from mulu16_sel - (byte) mulu16_sel::select#10 ? phi( mulu16_sel/(byte) mulu16_sel::select#11 ) - (dword) mul16u::return#4 ? phi( mulu16_sel/(dword) mul16u::return#2 ) - (dword~) mulu16_sel::$0 ? (dword) mul16u::return#4 - (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 - (word~) mulu16_sel::$2 ? > (dword~) mulu16_sel::$1 - (word) mulu16_sel::return#5 ? (word~) mulu16_sel::$2 + (byte) mulu16_sel::select#10 ← phi( mulu16_sel/(byte) mulu16_sel::select#11 ) + (dword) mul16u::return#4 ← phi( mulu16_sel/(dword) mul16u::return#2 ) + (dword~) mulu16_sel::$0 ← (dword) mul16u::return#4 + (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 + (word~) mulu16_sel::$2 ← > (dword~) mulu16_sel::$1 + (word) mulu16_sel::return#5 ← (word~) mulu16_sel::$2 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@2 - (word) mulu16_sel::return#17 ? phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) - (word) mulu16_sel::return#6 ? (word) mulu16_sel::return#17 + (word) mulu16_sel::return#17 ← phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) + (word) mulu16_sel::return#6 ← (word) mulu16_sel::return#17 return to:@return sin16s_genb: scope:[sin16s_genb] from main::@5 - (signed word*) sin16s_genb::sintab#5 ? phi( main::@5/(signed word*) sin16s_genb::sintab#1 ) - (word) rem16u#29 ? phi( main::@5/(word) rem16u#10 ) - (word) sin16s_genb::wavelength#1 ? phi( main::@5/(word) sin16s_genb::wavelength#0 ) - (dword) div32u16u::dividend#1 ? (dword) PI2_u4f28#0 - (word) div32u16u::divisor#1 ? (word) sin16s_genb::wavelength#1 + (signed word*) sin16s_genb::sintab#5 ← phi( main::@5/(signed word*) sin16s_genb::sintab#1 ) + (word) rem16u#29 ← phi( main::@5/(word) rem16u#10 ) + (word) sin16s_genb::wavelength#1 ← phi( main::@5/(word) sin16s_genb::wavelength#0 ) + (dword) div32u16u::dividend#1 ← (dword) PI2_u4f28#0 + (word) div32u16u::divisor#1 ← (word) sin16s_genb::wavelength#1 call div32u16u - (dword) div32u16u::return#3 ? (dword) div32u16u::return#1 + (dword) div32u16u::return#3 ← (dword) div32u16u::return#1 to:sin16s_genb::@3 sin16s_genb::@3: scope:[sin16s_genb] from sin16s_genb - (word) sin16s_genb::wavelength#4 ? phi( sin16s_genb/(word) sin16s_genb::wavelength#1 ) - (signed word*) sin16s_genb::sintab#4 ? phi( sin16s_genb/(signed word*) sin16s_genb::sintab#5 ) - (word) rem16u#20 ? phi( sin16s_genb/(word) rem16u#5 ) - (dword) div32u16u::return#6 ? phi( sin16s_genb/(dword) div32u16u::return#3 ) - (dword~) sin16s_genb::$0 ? (dword) div32u16u::return#6 - (word) rem16u#8 ? (word) rem16u#20 - (dword) sin16s_genb::step#0 ? (dword~) sin16s_genb::$0 - (dword) sin16s_genb::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin16s_genb::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_genb::wavelength#4 ← phi( sin16s_genb/(word) sin16s_genb::wavelength#1 ) + (signed word*) sin16s_genb::sintab#4 ← phi( sin16s_genb/(signed word*) sin16s_genb::sintab#5 ) + (word) rem16u#20 ← phi( sin16s_genb/(word) rem16u#5 ) + (dword) div32u16u::return#6 ← phi( sin16s_genb/(dword) div32u16u::return#3 ) + (dword~) sin16s_genb::$0 ← (dword) div32u16u::return#6 + (word) rem16u#8 ← (word) rem16u#20 + (dword) sin16s_genb::step#0 ← (dword~) sin16s_genb::$0 + (dword) sin16s_genb::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_genb::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin16s_genb::@1 sin16s_genb::@1: scope:[sin16s_genb] from sin16s_genb::@3 sin16s_genb::@4 - (word) rem16u#35 ? phi( sin16s_genb::@3/(word) rem16u#8 sin16s_genb::@4/(word) rem16u#30 ) - (word) sin16s_genb::wavelength#3 ? phi( sin16s_genb::@3/(word) sin16s_genb::wavelength#4 sin16s_genb::@4/(word) sin16s_genb::wavelength#2 ) - (word) sin16s_genb::i#3 ? phi( sin16s_genb::@3/(word) sin16s_genb::i#0 sin16s_genb::@4/(word) sin16s_genb::i#1 ) - (dword) sin16s_genb::step#2 ? phi( sin16s_genb::@3/(dword) sin16s_genb::step#0 sin16s_genb::@4/(dword) sin16s_genb::step#1 ) - (signed word*) sin16s_genb::sintab#3 ? phi( sin16s_genb::@3/(signed word*) sin16s_genb::sintab#4 sin16s_genb::@4/(signed word*) sin16s_genb::sintab#0 ) - (dword) sin16s_genb::x#2 ? phi( sin16s_genb::@3/(dword) sin16s_genb::x#0 sin16s_genb::@4/(dword) sin16s_genb::x#1 ) - (word~) sin16s_genb::$1 ? > (dword) sin16s_genb::x#2 - (word) sin16sb::x#0 ? (word~) sin16s_genb::$1 + (word) rem16u#35 ← phi( sin16s_genb::@3/(word) rem16u#8 sin16s_genb::@4/(word) rem16u#30 ) + (word) sin16s_genb::wavelength#3 ← phi( sin16s_genb::@3/(word) sin16s_genb::wavelength#4 sin16s_genb::@4/(word) sin16s_genb::wavelength#2 ) + (word) sin16s_genb::i#3 ← phi( sin16s_genb::@3/(word) sin16s_genb::i#0 sin16s_genb::@4/(word) sin16s_genb::i#1 ) + (dword) sin16s_genb::step#2 ← phi( sin16s_genb::@3/(dword) sin16s_genb::step#0 sin16s_genb::@4/(dword) sin16s_genb::step#1 ) + (signed word*) sin16s_genb::sintab#3 ← phi( sin16s_genb::@3/(signed word*) sin16s_genb::sintab#4 sin16s_genb::@4/(signed word*) sin16s_genb::sintab#0 ) + (dword) sin16s_genb::x#2 ← phi( sin16s_genb::@3/(dword) sin16s_genb::x#0 sin16s_genb::@4/(dword) sin16s_genb::x#1 ) + (word~) sin16s_genb::$1 ← > (dword) sin16s_genb::x#2 + (word) sin16sb::x#0 ← (word~) sin16s_genb::$1 call sin16sb - (signed word) sin16sb::return#0 ? (signed word) sin16sb::return#2 + (signed word) sin16sb::return#0 ← (signed word) sin16sb::return#2 to:sin16s_genb::@4 sin16s_genb::@4: scope:[sin16s_genb] from sin16s_genb::@1 - (word) rem16u#30 ? phi( sin16s_genb::@1/(word) rem16u#35 ) - (word) sin16s_genb::wavelength#2 ? phi( sin16s_genb::@1/(word) sin16s_genb::wavelength#3 ) - (word) sin16s_genb::i#2 ? phi( sin16s_genb::@1/(word) sin16s_genb::i#3 ) - (dword) sin16s_genb::step#1 ? phi( sin16s_genb::@1/(dword) sin16s_genb::step#2 ) - (dword) sin16s_genb::x#3 ? phi( sin16s_genb::@1/(dword) sin16s_genb::x#2 ) - (signed word*) sin16s_genb::sintab#2 ? phi( sin16s_genb::@1/(signed word*) sin16s_genb::sintab#3 ) - (signed word) sin16sb::return#3 ? phi( sin16s_genb::@1/(signed word) sin16sb::return#0 ) - (signed word~) sin16s_genb::$2 ? (signed word) sin16sb::return#3 - *((signed word*) sin16s_genb::sintab#2) ? (signed word~) sin16s_genb::$2 - (signed word*~) sin16s_genb::$3 ? (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) sin16s_genb::sintab#0 ? (signed word*~) sin16s_genb::$3 - (dword~) sin16s_genb::$4 ? (dword) sin16s_genb::x#3 + (dword) sin16s_genb::step#1 - (dword) sin16s_genb::x#1 ? (dword~) sin16s_genb::$4 - (word) sin16s_genb::i#1 ? ++ (word) sin16s_genb::i#2 - (bool~) sin16s_genb::$5 ? (word) sin16s_genb::i#1 < (word) sin16s_genb::wavelength#2 + (word) rem16u#30 ← phi( sin16s_genb::@1/(word) rem16u#35 ) + (word) sin16s_genb::wavelength#2 ← phi( sin16s_genb::@1/(word) sin16s_genb::wavelength#3 ) + (word) sin16s_genb::i#2 ← phi( sin16s_genb::@1/(word) sin16s_genb::i#3 ) + (dword) sin16s_genb::step#1 ← phi( sin16s_genb::@1/(dword) sin16s_genb::step#2 ) + (dword) sin16s_genb::x#3 ← phi( sin16s_genb::@1/(dword) sin16s_genb::x#2 ) + (signed word*) sin16s_genb::sintab#2 ← phi( sin16s_genb::@1/(signed word*) sin16s_genb::sintab#3 ) + (signed word) sin16sb::return#3 ← phi( sin16s_genb::@1/(signed word) sin16sb::return#0 ) + (signed word~) sin16s_genb::$2 ← (signed word) sin16sb::return#3 + *((signed word*) sin16s_genb::sintab#2) ← (signed word~) sin16s_genb::$2 + (signed word*~) sin16s_genb::$3 ← (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) sin16s_genb::sintab#0 ← (signed word*~) sin16s_genb::$3 + (dword~) sin16s_genb::$4 ← (dword) sin16s_genb::x#3 + (dword) sin16s_genb::step#1 + (dword) sin16s_genb::x#1 ← (dword~) sin16s_genb::$4 + (word) sin16s_genb::i#1 ← ++ (word) sin16s_genb::i#2 + (bool~) sin16s_genb::$5 ← (word) sin16s_genb::i#1 < (word) sin16s_genb::wavelength#2 if((bool~) sin16s_genb::$5) goto sin16s_genb::@1 to:sin16s_genb::@return sin16s_genb::@return: scope:[sin16s_genb] from sin16s_genb::@4 - (word) rem16u#21 ? phi( sin16s_genb::@4/(word) rem16u#30 ) - (word) rem16u#9 ? (word) rem16u#21 + (word) rem16u#21 ← phi( sin16s_genb::@4/(word) rem16u#30 ) + (word) rem16u#9 ← (word) rem16u#21 return to:@return sin16sb: scope:[sin16sb] from sin16s_genb::@1 - (word) sin16sb::x#3 ? phi( sin16s_genb::@1/(word) sin16sb::x#0 ) - (byte) sin16sb::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16sb::$0 ? (word) sin16sb::x#3 >= (word) PI_u4f12#0 - (bool~) sin16sb::$1 ? ! (bool~) sin16sb::$0 + (word) sin16sb::x#3 ← phi( sin16s_genb::@1/(word) sin16sb::x#0 ) + (byte) sin16sb::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16sb::$0 ← (word) sin16sb::x#3 >= (word) PI_u4f12#0 + (bool~) sin16sb::$1 ← ! (bool~) sin16sb::$0 if((bool~) sin16sb::$1) goto sin16sb::@1 to:sin16sb::@4 sin16sb::@1: scope:[sin16sb] from sin16sb sin16sb::@4 - (byte) sin16sb::isUpper#8 ? phi( sin16sb/(byte) sin16sb::isUpper#0 sin16sb::@4/(byte) sin16sb::isUpper#1 ) - (word) sin16sb::x#4 ? phi( sin16sb/(word) sin16sb::x#3 sin16sb::@4/(word) sin16sb::x#1 ) - (bool~) sin16sb::$2 ? (word) sin16sb::x#4 >= (word) PI_HALF_u4f12#0 - (bool~) sin16sb::$3 ? ! (bool~) sin16sb::$2 + (byte) sin16sb::isUpper#8 ← phi( sin16sb/(byte) sin16sb::isUpper#0 sin16sb::@4/(byte) sin16sb::isUpper#1 ) + (word) sin16sb::x#4 ← phi( sin16sb/(word) sin16sb::x#3 sin16sb::@4/(word) sin16sb::x#1 ) + (bool~) sin16sb::$2 ← (word) sin16sb::x#4 >= (word) PI_HALF_u4f12#0 + (bool~) sin16sb::$3 ← ! (bool~) sin16sb::$2 if((bool~) sin16sb::$3) goto sin16sb::@2 to:sin16sb::@5 sin16sb::@4: scope:[sin16sb] from sin16sb - (word) sin16sb::x#5 ? phi( sin16sb/(word) sin16sb::x#3 ) - (word~) sin16sb::$17 ? (word) sin16sb::x#5 - (word) PI_u4f12#0 - (word) sin16sb::x#1 ? (word~) sin16sb::$17 - (byte) sin16sb::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) sin16sb::x#5 ← phi( sin16sb/(word) sin16sb::x#3 ) + (word~) sin16sb::$17 ← (word) sin16sb::x#5 - (word) PI_u4f12#0 + (word) sin16sb::x#1 ← (word~) sin16sb::$17 + (byte) sin16sb::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin16sb::@1 sin16sb::@2: scope:[sin16sb] from sin16sb::@1 sin16sb::@5 - (byte) sin16sb::isUpper#7 ? phi( sin16sb::@1/(byte) sin16sb::isUpper#8 sin16sb::@5/(byte) sin16sb::isUpper#9 ) - (word) sin16sb::x#6 ? phi( sin16sb::@1/(word) sin16sb::x#4 sin16sb::@5/(word) sin16sb::x#2 ) - (word~) sin16sb::$4 ? (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (word) sin16sb::x1#0 ? (word~) sin16sb::$4 - (word) mulu16_sel::v1#5 ? (word) sin16sb::x1#0 - (word) mulu16_sel::v2#5 ? (word) sin16sb::x1#0 - (byte) mulu16_sel::select#5 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16sb::isUpper#7 ← phi( sin16sb::@1/(byte) sin16sb::isUpper#8 sin16sb::@5/(byte) sin16sb::isUpper#9 ) + (word) sin16sb::x#6 ← phi( sin16sb::@1/(word) sin16sb::x#4 sin16sb::@5/(word) sin16sb::x#2 ) + (word~) sin16sb::$4 ← (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (word) sin16sb::x1#0 ← (word~) sin16sb::$4 + (word) mulu16_sel::v1#5 ← (word) sin16sb::x1#0 + (word) mulu16_sel::v2#5 ← (word) sin16sb::x1#0 + (byte) mulu16_sel::select#5 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#7 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#7 ← (word) mulu16_sel::return#6 to:sin16sb::@8 sin16sb::@8: scope:[sin16sb] from sin16sb::@2 - (byte) sin16sb::isUpper#6 ? phi( sin16sb::@2/(byte) sin16sb::isUpper#7 ) - (word) sin16sb::x1#1 ? phi( sin16sb::@2/(word) sin16sb::x1#0 ) - (word) mulu16_sel::return#18 ? phi( sin16sb::@2/(word) mulu16_sel::return#7 ) - (word~) sin16sb::$5 ? (word) mulu16_sel::return#18 - (word) sin16sb::x2#0 ? (word~) sin16sb::$5 - (word) mulu16_sel::v1#6 ? (word) sin16sb::x2#0 - (word) mulu16_sel::v2#6 ? (word) sin16sb::x1#1 - (byte) mulu16_sel::select#6 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16sb::isUpper#6 ← phi( sin16sb::@2/(byte) sin16sb::isUpper#7 ) + (word) sin16sb::x1#1 ← phi( sin16sb::@2/(word) sin16sb::x1#0 ) + (word) mulu16_sel::return#18 ← phi( sin16sb::@2/(word) mulu16_sel::return#7 ) + (word~) sin16sb::$5 ← (word) mulu16_sel::return#18 + (word) sin16sb::x2#0 ← (word~) sin16sb::$5 + (word) mulu16_sel::v1#6 ← (word) sin16sb::x2#0 + (word) mulu16_sel::v2#6 ← (word) sin16sb::x1#1 + (byte) mulu16_sel::select#6 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#8 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#8 ← (word) mulu16_sel::return#6 to:sin16sb::@9 sin16sb::@9: scope:[sin16sb] from sin16sb::@8 - (byte) sin16sb::isUpper#5 ? phi( sin16sb::@8/(byte) sin16sb::isUpper#6 ) - (word) sin16sb::x1#4 ? phi( sin16sb::@8/(word) sin16sb::x1#1 ) - (word) mulu16_sel::return#19 ? phi( sin16sb::@8/(word) mulu16_sel::return#8 ) - (word~) sin16sb::$6 ? (word) mulu16_sel::return#19 - (word) sin16sb::x3#0 ? (word~) sin16sb::$6 - (word/signed word/dword/signed dword~) sin16sb::$7 ? (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 - (word) mulu16_sel::v1#7 ? (word) sin16sb::x3#0 - (word) mulu16_sel::v2#7 ? (word/signed word/dword/signed dword~) sin16sb::$7 - (byte) mulu16_sel::select#7 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16sb::isUpper#5 ← phi( sin16sb::@8/(byte) sin16sb::isUpper#6 ) + (word) sin16sb::x1#4 ← phi( sin16sb::@8/(word) sin16sb::x1#1 ) + (word) mulu16_sel::return#19 ← phi( sin16sb::@8/(word) mulu16_sel::return#8 ) + (word~) sin16sb::$6 ← (word) mulu16_sel::return#19 + (word) sin16sb::x3#0 ← (word~) sin16sb::$6 + (word/signed word/dword/signed dword~) sin16sb::$7 ← (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 + (word) mulu16_sel::v1#7 ← (word) sin16sb::x3#0 + (word) mulu16_sel::v2#7 ← (word/signed word/dword/signed dword~) sin16sb::$7 + (byte) mulu16_sel::select#7 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#9 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#9 ← (word) mulu16_sel::return#6 to:sin16sb::@10 sin16sb::@10: scope:[sin16sb] from sin16sb::@9 - (byte) sin16sb::isUpper#4 ? phi( sin16sb::@9/(byte) sin16sb::isUpper#5 ) - (word) sin16sb::x3#1 ? phi( sin16sb::@9/(word) sin16sb::x3#0 ) - (word) sin16sb::x1#2 ? phi( sin16sb::@9/(word) sin16sb::x1#4 ) - (word) mulu16_sel::return#20 ? phi( sin16sb::@9/(word) mulu16_sel::return#9 ) - (word~) sin16sb::$8 ? (word) mulu16_sel::return#20 - (word) sin16sb::x3_6#0 ? (word~) sin16sb::$8 - (word~) sin16sb::$9 ? (word) sin16sb::x1#2 - (word) sin16sb::x3_6#0 - (word) sin16sb::usinx#0 ? (word~) sin16sb::$9 - (word) mulu16_sel::v1#8 ? (word) sin16sb::x3#1 - (word) mulu16_sel::v2#8 ? (word) sin16sb::x1#2 - (byte) mulu16_sel::select#8 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16sb::isUpper#4 ← phi( sin16sb::@9/(byte) sin16sb::isUpper#5 ) + (word) sin16sb::x3#1 ← phi( sin16sb::@9/(word) sin16sb::x3#0 ) + (word) sin16sb::x1#2 ← phi( sin16sb::@9/(word) sin16sb::x1#4 ) + (word) mulu16_sel::return#20 ← phi( sin16sb::@9/(word) mulu16_sel::return#9 ) + (word~) sin16sb::$8 ← (word) mulu16_sel::return#20 + (word) sin16sb::x3_6#0 ← (word~) sin16sb::$8 + (word~) sin16sb::$9 ← (word) sin16sb::x1#2 - (word) sin16sb::x3_6#0 + (word) sin16sb::usinx#0 ← (word~) sin16sb::$9 + (word) mulu16_sel::v1#8 ← (word) sin16sb::x3#1 + (word) mulu16_sel::v2#8 ← (word) sin16sb::x1#2 + (byte) mulu16_sel::select#8 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#6 to:sin16sb::@11 sin16sb::@11: scope:[sin16sb] from sin16sb::@10 - (byte) sin16sb::isUpper#3 ? phi( sin16sb::@10/(byte) sin16sb::isUpper#4 ) - (word) sin16sb::usinx#4 ? phi( sin16sb::@10/(word) sin16sb::usinx#0 ) - (word) sin16sb::x1#3 ? phi( sin16sb::@10/(word) sin16sb::x1#2 ) - (word) mulu16_sel::return#21 ? phi( sin16sb::@10/(word) mulu16_sel::return#10 ) - (word~) sin16sb::$10 ? (word) mulu16_sel::return#21 - (word) sin16sb::x4#0 ? (word~) sin16sb::$10 - (word) mulu16_sel::v1#9 ? (word) sin16sb::x4#0 - (word) mulu16_sel::v2#9 ? (word) sin16sb::x1#3 - (byte) mulu16_sel::select#9 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16sb::isUpper#3 ← phi( sin16sb::@10/(byte) sin16sb::isUpper#4 ) + (word) sin16sb::usinx#4 ← phi( sin16sb::@10/(word) sin16sb::usinx#0 ) + (word) sin16sb::x1#3 ← phi( sin16sb::@10/(word) sin16sb::x1#2 ) + (word) mulu16_sel::return#21 ← phi( sin16sb::@10/(word) mulu16_sel::return#10 ) + (word~) sin16sb::$10 ← (word) mulu16_sel::return#21 + (word) sin16sb::x4#0 ← (word~) sin16sb::$10 + (word) mulu16_sel::v1#9 ← (word) sin16sb::x4#0 + (word) mulu16_sel::v2#9 ← (word) sin16sb::x1#3 + (byte) mulu16_sel::select#9 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#6 to:sin16sb::@12 sin16sb::@12: scope:[sin16sb] from sin16sb::@11 - (byte) sin16sb::isUpper#2 ? phi( sin16sb::@11/(byte) sin16sb::isUpper#3 ) - (word) sin16sb::usinx#2 ? phi( sin16sb::@11/(word) sin16sb::usinx#4 ) - (word) mulu16_sel::return#22 ? phi( sin16sb::@11/(word) mulu16_sel::return#11 ) - (word~) sin16sb::$11 ? (word) mulu16_sel::return#22 - (word) sin16sb::x5#0 ? (word~) sin16sb::$11 - (word~) sin16sb::$12 ? (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) sin16sb::x5_128#0 ? (word~) sin16sb::$12 - (word~) sin16sb::$13 ? (word) sin16sb::usinx#2 + (word) sin16sb::x5_128#0 - (word) sin16sb::usinx#1 ? (word~) sin16sb::$13 - (signed word~) sin16sb::$14 ? ((signed word)) (word) sin16sb::usinx#1 - (signed word) sin16sb::sinx#0 ? (signed word~) sin16sb::$14 - (bool~) sin16sb::$15 ? (byte) sin16sb::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16sb::$16 ? ! (bool~) sin16sb::$15 + (byte) sin16sb::isUpper#2 ← phi( sin16sb::@11/(byte) sin16sb::isUpper#3 ) + (word) sin16sb::usinx#2 ← phi( sin16sb::@11/(word) sin16sb::usinx#4 ) + (word) mulu16_sel::return#22 ← phi( sin16sb::@11/(word) mulu16_sel::return#11 ) + (word~) sin16sb::$11 ← (word) mulu16_sel::return#22 + (word) sin16sb::x5#0 ← (word~) sin16sb::$11 + (word~) sin16sb::$12 ← (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) sin16sb::x5_128#0 ← (word~) sin16sb::$12 + (word~) sin16sb::$13 ← (word) sin16sb::usinx#2 + (word) sin16sb::x5_128#0 + (word) sin16sb::usinx#1 ← (word~) sin16sb::$13 + (signed word~) sin16sb::$14 ← ((signed word)) (word) sin16sb::usinx#1 + (signed word) sin16sb::sinx#0 ← (signed word~) sin16sb::$14 + (bool~) sin16sb::$15 ← (byte) sin16sb::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16sb::$16 ← ! (bool~) sin16sb::$15 if((bool~) sin16sb::$16) goto sin16sb::@3 to:sin16sb::@6 sin16sb::@5: scope:[sin16sb] from sin16sb::@1 - (byte) sin16sb::isUpper#9 ? phi( sin16sb::@1/(byte) sin16sb::isUpper#8 ) - (word) sin16sb::x#7 ? phi( sin16sb::@1/(word) sin16sb::x#4 ) - (word~) sin16sb::$18 ? (word) PI_u4f12#0 - (word) sin16sb::x#7 - (word) sin16sb::x#2 ? (word~) sin16sb::$18 + (byte) sin16sb::isUpper#9 ← phi( sin16sb::@1/(byte) sin16sb::isUpper#8 ) + (word) sin16sb::x#7 ← phi( sin16sb::@1/(word) sin16sb::x#4 ) + (word~) sin16sb::$18 ← (word) PI_u4f12#0 - (word) sin16sb::x#7 + (word) sin16sb::x#2 ← (word~) sin16sb::$18 to:sin16sb::@2 sin16sb::@3: scope:[sin16sb] from sin16sb::@12 sin16sb::@6 - (signed word) sin16sb::sinx#2 ? phi( sin16sb::@12/(signed word) sin16sb::sinx#0 sin16sb::@6/(signed word) sin16sb::sinx#1 ) - (signed word) sin16sb::return#1 ? (signed word) sin16sb::sinx#2 + (signed word) sin16sb::sinx#2 ← phi( sin16sb::@12/(signed word) sin16sb::sinx#0 sin16sb::@6/(signed word) sin16sb::sinx#1 ) + (signed word) sin16sb::return#1 ← (signed word) sin16sb::sinx#2 to:sin16sb::@return sin16sb::@6: scope:[sin16sb] from sin16sb::@12 - (word) sin16sb::usinx#3 ? phi( sin16sb::@12/(word) sin16sb::usinx#1 ) - (signed word~) sin16sb::$19 ? ((signed word)) (word) sin16sb::usinx#3 - (signed word~) sin16sb::$20 ? - (signed word~) sin16sb::$19 - (signed word) sin16sb::sinx#1 ? (signed word~) sin16sb::$20 + (word) sin16sb::usinx#3 ← phi( sin16sb::@12/(word) sin16sb::usinx#1 ) + (signed word~) sin16sb::$19 ← ((signed word)) (word) sin16sb::usinx#3 + (signed word~) sin16sb::$20 ← - (signed word~) sin16sb::$19 + (signed word) sin16sb::sinx#1 ← (signed word~) sin16sb::$20 to:sin16sb::@3 sin16sb::@return: scope:[sin16sb] from sin16sb::@3 - (signed word) sin16sb::return#4 ? phi( sin16sb::@3/(signed word) sin16sb::return#1 ) - (signed word) sin16sb::return#2 ? (signed word) sin16sb::return#4 + (signed word) sin16sb::return#4 ← phi( sin16sb::@3/(signed word) sin16sb::return#1 ) + (signed word) sin16sb::return#2 ← (signed word) sin16sb::return#4 return to:@return @22: scope:[] from @13 - (word) rem16u#38 ? phi( @13/(word) rem16u#40 ) - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (word) rem16u#38 ← phi( @13/(word) rem16u#40 ) + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@34 print_str: scope:[print_str] from main::@3 main::@8 - (byte*) print_char_cursor#51 ? phi( main::@3/(byte*) print_char_cursor#49 main::@8/(byte*) print_char_cursor#17 ) - (byte*) print_str::str#5 ? phi( main::@3/(byte*) print_str::str#2 main::@8/(byte*) print_str::str#1 ) + (byte*) print_char_cursor#51 ← phi( main::@3/(byte*) print_char_cursor#49 main::@8/(byte*) print_char_cursor#17 ) + (byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@8/(byte*) print_str::str#1 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#42 ? phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#3) != (byte) '@' + (byte*) print_char_cursor#42 ← phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#3) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#22 ? phi( print_str::@1/(byte*) print_char_cursor#42 ) - (byte*) print_str::str#4 ? phi( print_str::@1/(byte*) print_str::str#3 ) - *((byte*) print_char_cursor#22) ? *((byte*) print_str::str#4) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#22 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#4 + (byte*) print_char_cursor#22 ← phi( print_str::@1/(byte*) print_char_cursor#42 ) + (byte*) print_str::str#4 ← phi( print_str::@1/(byte*) print_str::str#3 ) + *((byte*) print_char_cursor#22) ← *((byte*) print_str::str#4) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#22 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#4 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#23 ? phi( print_str::@1/(byte*) print_char_cursor#42 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#23 + (byte*) print_char_cursor#23 ← phi( print_str::@1/(byte*) print_char_cursor#42 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#23 return to:@return print_sword: scope:[print_sword] from main::@2 - (byte*) print_char_cursor#52 ? phi( main::@2/(byte*) print_char_cursor#48 ) - (signed word) print_sword::w#2 ? phi( main::@2/(signed word) print_sword::w#1 ) - (bool~) print_sword::$0 ? (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) print_sword::$1 ? ! (bool~) print_sword::$0 + (byte*) print_char_cursor#52 ← phi( main::@2/(byte*) print_char_cursor#48 ) + (signed word) print_sword::w#2 ← phi( main::@2/(signed word) print_sword::w#1 ) + (bool~) print_sword::$0 ← (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) print_sword::$1 ← ! (bool~) print_sword::$0 if((bool~) print_sword::$1) goto print_sword::@1 to:print_sword::@2 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - (byte*) print_char_cursor#43 ? phi( print_sword/(byte*) print_char_cursor#52 print_sword::@4/(byte*) print_char_cursor#4 ) - (signed word) print_sword::w#3 ? phi( print_sword/(signed word) print_sword::w#2 print_sword::@4/(signed word) print_sword::w#0 ) - (word~) print_sword::$2 ? ((word)) (signed word) print_sword::w#3 - (word) print_word::w#0 ? (word~) print_sword::$2 + (byte*) print_char_cursor#43 ← phi( print_sword/(byte*) print_char_cursor#52 print_sword::@4/(byte*) print_char_cursor#4 ) + (signed word) print_sword::w#3 ← phi( print_sword/(signed word) print_sword::w#2 print_sword::@4/(signed word) print_sword::w#0 ) + (word~) print_sword::$2 ← ((word)) (signed word) print_sword::w#3 + (word) print_word::w#0 ← (word~) print_sword::$2 call print_word to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@1 - (byte*) print_char_cursor#24 ? phi( print_sword::@1/(byte*) print_char_cursor#8 ) - (byte*) print_char_cursor#3 ? (byte*) print_char_cursor#24 + (byte*) print_char_cursor#24 ← phi( print_sword::@1/(byte*) print_char_cursor#8 ) + (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#24 to:print_sword::@return print_sword::@2: scope:[print_sword] from print_sword - (signed word) print_sword::w#5 ? phi( print_sword/(signed word) print_sword::w#2 ) - (byte*) print_char_cursor#44 ? phi( print_sword/(byte*) print_char_cursor#52 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed word) print_sword::w#5 ← phi( print_sword/(signed word) print_sword::w#2 ) + (byte*) print_char_cursor#44 ← phi( print_sword/(byte*) print_char_cursor#52 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - (signed word) print_sword::w#4 ? phi( print_sword::@2/(signed word) print_sword::w#5 ) - (byte*) print_char_cursor#25 ? phi( print_sword::@2/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#25 - (signed word~) print_sword::$5 ? - (signed word) print_sword::w#4 - (signed word) print_sword::w#0 ? (signed word~) print_sword::$5 + (signed word) print_sword::w#4 ← phi( print_sword::@2/(signed word) print_sword::w#5 ) + (byte*) print_char_cursor#25 ← phi( print_sword::@2/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#25 + (signed word~) print_sword::$5 ← - (signed word) print_sword::w#4 + (signed word) print_sword::w#0 ← (signed word~) print_sword::$5 to:print_sword::@1 print_sword::@return: scope:[print_sword] from print_sword::@3 - (byte*) print_char_cursor#26 ? phi( print_sword::@3/(byte*) print_char_cursor#3 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#26 + (byte*) print_char_cursor#26 ← phi( print_sword::@3/(byte*) print_char_cursor#3 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#26 return to:@return print_word: scope:[print_word] from print_sword::@1 - (byte*) print_char_cursor#45 ? phi( print_sword::@1/(byte*) print_char_cursor#43 ) - (word) print_word::w#1 ? phi( print_sword::@1/(word) print_word::w#0 ) - (byte~) print_word::$0 ? > (word) print_word::w#1 - (byte) print_byte::b#0 ? (byte~) print_word::$0 + (byte*) print_char_cursor#45 ← phi( print_sword::@1/(byte*) print_char_cursor#43 ) + (word) print_word::w#1 ← phi( print_sword::@1/(word) print_word::w#0 ) + (byte~) print_word::$0 ← > (word) print_word::w#1 + (byte) print_byte::b#0 ← (byte~) print_word::$0 call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - (word) print_word::w#2 ? phi( print_word/(word) print_word::w#1 ) - (byte*) print_char_cursor#27 ? phi( print_word/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#27 - (byte~) print_word::$2 ? < (word) print_word::w#2 - (byte) print_byte::b#1 ? (byte~) print_word::$2 + (word) print_word::w#2 ← phi( print_word/(word) print_word::w#1 ) + (byte*) print_char_cursor#27 ← phi( print_word/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#27 + (byte~) print_word::$2 ← < (word) print_word::w#2 + (byte) print_byte::b#1 ← (byte~) print_word::$2 call print_byte to:print_word::@2 print_word::@2: scope:[print_word] from print_word::@1 - (byte*) print_char_cursor#28 ? phi( print_word::@1/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#28 + (byte*) print_char_cursor#28 ← phi( print_word::@1/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#28 to:print_word::@return print_word::@return: scope:[print_word] from print_word::@2 - (byte*) print_char_cursor#29 ? phi( print_word::@2/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#29 + (byte*) print_char_cursor#29 ← phi( print_word::@2/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#29 return to:@return @34: scope:[] from @22 - (byte*) print_screen#8 ? phi( @22/(byte*) print_screen#0 ) - (byte*) print_char_cursor#55 ? phi( @22/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#15 ? phi( @22/(byte*) print_line_cursor#0 ) - (word) rem16u#37 ? phi( @22/(word) rem16u#38 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#8 ← phi( @22/(byte*) print_screen#0 ) + (byte*) print_char_cursor#55 ← phi( @22/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#15 ← phi( @22/(byte*) print_line_cursor#0 ) + (word) rem16u#37 ← phi( @22/(word) rem16u#38 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@42 print_byte: scope:[print_byte] from print_word print_word::@1 - (byte*) print_char_cursor#46 ? phi( print_word/(byte*) print_char_cursor#45 print_word::@1/(byte*) print_char_cursor#6 ) - (byte) print_byte::b#2 ? phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#1 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#45 print_word::@1/(byte*) print_char_cursor#6 ) + (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#1 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#3 ? phi( print_byte/(byte) print_byte::b#2 ) - (byte*) print_char_cursor#30 ? phi( print_byte/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#30 - (byte~) print_byte::$2 ? (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#2 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#3 ← phi( print_byte/(byte) print_byte::b#2 ) + (byte*) print_char_cursor#30 ← phi( print_byte/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#30 + (byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#2 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#31 ? phi( print_byte::@1/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#31 + (byte*) print_char_cursor#31 ← phi( print_byte::@1/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#31 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#32 ? phi( print_byte::@2/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#32 + (byte*) print_char_cursor#32 ← phi( print_byte::@2/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#32 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sword::@2 - (byte*) print_char_cursor#33 ? phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#9 print_sword::@2/(byte*) print_char_cursor#44 ) - (byte) print_char::ch#3 ? phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) - *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 - (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 + (byte*) print_char_cursor#33 ← phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#9 print_sword::@2/(byte*) print_char_cursor#44 ) + (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) + *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 + (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#34 ? phi( print_char/(byte*) print_char_cursor#12 ) - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#34 + (byte*) print_char_cursor#34 ← phi( print_char/(byte*) print_char_cursor#12 ) + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#34 return to:@return print_cls: scope:[print_cls] from main::@6 - (byte*) print_screen#1 ? phi( main::@6/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main::@6/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#1 ? (byte*) print_screen#3 - (byte*) print_char_cursor#14 ? (byte*) print_line_cursor#1 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#1 ← (byte*) print_screen#3 + (byte*) print_char_cursor#14 ← (byte*) print_line_cursor#1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#35 ? phi( print_cls::@2/(byte*) print_char_cursor#14 ) - (byte*) print_line_cursor#6 ? phi( print_cls::@2/(byte*) print_line_cursor#1 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#6 - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#35 + (byte*) print_char_cursor#35 ← phi( print_cls::@2/(byte*) print_char_cursor#14 ) + (byte*) print_line_cursor#6 ← phi( print_cls::@2/(byte*) print_line_cursor#1 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#6 + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#35 return to:@return main: scope:[main] from @42 - (byte*) print_char_cursor#56 ? phi( @42/(byte*) print_char_cursor#50 ) - (byte*) print_line_cursor#16 ? phi( @42/(byte*) print_line_cursor#12 ) - (byte*) print_screen#6 ? phi( @42/(byte*) print_screen#7 ) - (word) rem16u#31 ? phi( @42/(word) rem16u#33 ) - (word) main::wavelength#0 ? (byte/signed byte/word/signed word/dword/signed dword) $78 - (signed word[$78]) main::sintab1#0 ? { fill( $78, 0) } - (signed word[$78]) main::sintab2#0 ? { fill( $78, 0) } - (signed word*) sin16s_gen::sintab#1 ? (signed word[$78]) main::sintab1#0 - (word) sin16s_gen::wavelength#0 ? (word) main::wavelength#0 + (byte*) print_char_cursor#56 ← phi( @42/(byte*) print_char_cursor#50 ) + (byte*) print_line_cursor#16 ← phi( @42/(byte*) print_line_cursor#12 ) + (byte*) print_screen#6 ← phi( @42/(byte*) print_screen#7 ) + (word) rem16u#31 ← phi( @42/(word) rem16u#33 ) + (word) main::wavelength#0 ← (byte/signed byte/word/signed word/dword/signed dword) $78 + (signed word[$78]) main::sintab1#0 ← { fill( $78, 0) } + (signed word[$78]) main::sintab2#0 ← { fill( $78, 0) } + (signed word*) sin16s_gen::sintab#1 ← (signed word[$78]) main::sintab1#0 + (word) sin16s_gen::wavelength#0 ← (word) main::wavelength#0 call sin16s_gen to:main::@5 main::@5: scope:[main] from main - (byte*) print_char_cursor#53 ? phi( main/(byte*) print_char_cursor#56 ) - (byte*) print_line_cursor#13 ? phi( main/(byte*) print_line_cursor#16 ) - (byte*) print_screen#5 ? phi( main/(byte*) print_screen#6 ) - (word) rem16u#22 ? phi( main/(word) rem16u#7 ) - (word) rem16u#10 ? (word) rem16u#22 - (signed word*) sin16s_genb::sintab#1 ? (signed word[$78]) main::sintab2#0 - (word) sin16s_genb::wavelength#0 ? (word) main::wavelength#0 + (byte*) print_char_cursor#53 ← phi( main/(byte*) print_char_cursor#56 ) + (byte*) print_line_cursor#13 ← phi( main/(byte*) print_line_cursor#16 ) + (byte*) print_screen#5 ← phi( main/(byte*) print_screen#6 ) + (word) rem16u#22 ← phi( main/(word) rem16u#7 ) + (word) rem16u#10 ← (word) rem16u#22 + (signed word*) sin16s_genb::sintab#1 ← (signed word[$78]) main::sintab2#0 + (word) sin16s_genb::wavelength#0 ← (word) main::wavelength#0 call sin16s_genb to:main::@6 main::@6: scope:[main] from main::@5 - (byte*) print_char_cursor#47 ? phi( main::@5/(byte*) print_char_cursor#53 ) - (byte*) print_line_cursor#10 ? phi( main::@5/(byte*) print_line_cursor#13 ) - (byte*) print_screen#4 ? phi( main::@5/(byte*) print_screen#5 ) - (word) rem16u#23 ? phi( main::@5/(word) rem16u#9 ) - (word) rem16u#11 ? (word) rem16u#23 + (byte*) print_char_cursor#47 ← phi( main::@5/(byte*) print_char_cursor#53 ) + (byte*) print_line_cursor#10 ← phi( main::@5/(byte*) print_line_cursor#13 ) + (byte*) print_screen#4 ← phi( main::@5/(byte*) print_screen#5 ) + (word) rem16u#23 ← phi( main::@5/(word) rem16u#9 ) + (word) rem16u#11 ← (word) rem16u#23 call print_cls to:main::@7 main::@7: scope:[main] from main::@6 - (word) rem16u#44 ? phi( main::@6/(word) rem16u#11 ) - (byte*) print_char_cursor#36 ? phi( main::@6/(byte*) print_char_cursor#15 ) - (byte*) print_line_cursor#7 ? phi( main::@6/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_line_cursor#7 - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#36 - (signed word*) main::st1#0 ? (signed word[$78]) main::sintab1#0 - (signed word*) main::st2#0 ? (signed word[$78]) main::sintab2#0 - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#44 ← phi( main::@6/(word) rem16u#11 ) + (byte*) print_char_cursor#36 ← phi( main::@6/(byte*) print_char_cursor#15 ) + (byte*) print_line_cursor#7 ← phi( main::@6/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_line_cursor#7 + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#36 + (signed word*) main::st1#0 ← (signed word[$78]) main::sintab1#0 + (signed word*) main::st2#0 ← (signed word[$78]) main::sintab2#0 + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main::@7 main::@9 - (byte*) print_line_cursor#18 ? phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 ) - (word) rem16u#41 ? phi( main::@7/(word) rem16u#44 main::@9/(word) rem16u#32 ) - (byte) main::i#5 ? phi( main::@7/(byte) main::i#0 main::@9/(byte) main::i#1 ) - (byte*) print_char_cursor#54 ? phi( main::@7/(byte*) print_char_cursor#16 main::@9/(byte*) print_char_cursor#18 ) - (signed word*) main::st2#2 ? phi( main::@7/(signed word*) main::st2#0 main::@9/(signed word*) main::st2#1 ) - (signed word*) main::st1#2 ? phi( main::@7/(signed word*) main::st1#0 main::@9/(signed word*) main::st1#1 ) - (signed word~) main::$3 ? *((signed word*) main::st1#2) - *((signed word*) main::st2#2) - (signed word) main::sw#0 ? (signed word~) main::$3 - (bool~) main::$4 ? (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) main::$5 ? ! (bool~) main::$4 + (byte*) print_line_cursor#18 ← phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 ) + (word) rem16u#41 ← phi( main::@7/(word) rem16u#44 main::@9/(word) rem16u#32 ) + (byte) main::i#5 ← phi( main::@7/(byte) main::i#0 main::@9/(byte) main::i#1 ) + (byte*) print_char_cursor#54 ← phi( main::@7/(byte*) print_char_cursor#16 main::@9/(byte*) print_char_cursor#18 ) + (signed word*) main::st2#2 ← phi( main::@7/(signed word*) main::st2#0 main::@9/(signed word*) main::st2#1 ) + (signed word*) main::st1#2 ← phi( main::@7/(signed word*) main::st1#0 main::@9/(signed word*) main::st1#1 ) + (signed word~) main::$3 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) + (signed word) main::sw#0 ← (signed word~) main::$3 + (bool~) main::$4 ← (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) main::$5 ← ! (bool~) main::$4 if((bool~) main::$5) goto main::@2 to:main::@3 main::@2: scope:[main] from main::@1 main::@10 - (byte*) print_line_cursor#17 ? phi( main::@1/(byte*) print_line_cursor#18 main::@10/(byte*) print_line_cursor#19 ) - (word) rem16u#39 ? phi( main::@1/(word) rem16u#41 main::@10/(word) rem16u#42 ) - (byte) main::i#4 ? phi( main::@1/(byte) main::i#5 main::@10/(byte) main::i#6 ) - (signed word*) main::st2#5 ? phi( main::@1/(signed word*) main::st2#2 main::@10/(signed word*) main::st2#6 ) - (signed word*) main::st1#5 ? phi( main::@1/(signed word*) main::st1#2 main::@10/(signed word*) main::st1#6 ) - (byte*) print_char_cursor#48 ? phi( main::@1/(byte*) print_char_cursor#54 main::@10/(byte*) print_char_cursor#19 ) - (signed word) main::sw#1 ? phi( main::@1/(signed word) main::sw#0 main::@10/(signed word) main::sw#2 ) - (signed word) print_sword::w#1 ? (signed word) main::sw#1 + (byte*) print_line_cursor#17 ← phi( main::@1/(byte*) print_line_cursor#18 main::@10/(byte*) print_line_cursor#19 ) + (word) rem16u#39 ← phi( main::@1/(word) rem16u#41 main::@10/(word) rem16u#42 ) + (byte) main::i#4 ← phi( main::@1/(byte) main::i#5 main::@10/(byte) main::i#6 ) + (signed word*) main::st2#5 ← phi( main::@1/(signed word*) main::st2#2 main::@10/(signed word*) main::st2#6 ) + (signed word*) main::st1#5 ← phi( main::@1/(signed word*) main::st1#2 main::@10/(signed word*) main::st1#6 ) + (byte*) print_char_cursor#48 ← phi( main::@1/(byte*) print_char_cursor#54 main::@10/(byte*) print_char_cursor#19 ) + (signed word) main::sw#1 ← phi( main::@1/(signed word) main::sw#0 main::@10/(signed word) main::sw#2 ) + (signed word) print_sword::w#1 ← (signed word) main::sw#1 call print_sword to:main::@8 main::@8: scope:[main] from main::@2 - (byte*) print_line_cursor#14 ? phi( main::@2/(byte*) print_line_cursor#17 ) - (word) rem16u#36 ? phi( main::@2/(word) rem16u#39 ) - (byte) main::i#3 ? phi( main::@2/(byte) main::i#4 ) - (signed word*) main::st2#4 ? phi( main::@2/(signed word*) main::st2#5 ) - (signed word*) main::st1#4 ? phi( main::@2/(signed word*) main::st1#5 ) - (byte*) print_char_cursor#37 ? phi( main::@2/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#37 - (byte*) print_str::str#1 ? (const string) main::str + (byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#17 ) + (word) rem16u#36 ← phi( main::@2/(word) rem16u#39 ) + (byte) main::i#3 ← phi( main::@2/(byte) main::i#4 ) + (signed word*) main::st2#4 ← phi( main::@2/(signed word*) main::st2#5 ) + (signed word*) main::st1#4 ← phi( main::@2/(signed word*) main::st1#5 ) + (byte*) print_char_cursor#37 ← phi( main::@2/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#37 + (byte*) print_str::str#1 ← (const string) main::str call print_str to:main::@9 main::@9: scope:[main] from main::@8 - (byte*) print_line_cursor#11 ? phi( main::@8/(byte*) print_line_cursor#14 ) - (word) rem16u#32 ? phi( main::@8/(word) rem16u#36 ) - (byte) main::i#2 ? phi( main::@8/(byte) main::i#3 ) - (signed word*) main::st2#3 ? phi( main::@8/(signed word*) main::st2#4 ) - (signed word*) main::st1#3 ? phi( main::@8/(signed word*) main::st1#4 ) - (byte*) print_char_cursor#38 ? phi( main::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#18 ? (byte*) print_char_cursor#38 - (signed word*~) main::$9 ? (signed word*) main::st1#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) main::st1#1 ? (signed word*~) main::$9 - (signed word*~) main::$10 ? (signed word*) main::st2#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) main::st2#1 ? (signed word*~) main::$10 - (byte) main::i#1 ? (byte) main::i#2 + rangenext(0,$77) - (bool~) main::$11 ? (byte) main::i#1 != rangelast(0,$77) + (byte*) print_line_cursor#11 ← phi( main::@8/(byte*) print_line_cursor#14 ) + (word) rem16u#32 ← phi( main::@8/(word) rem16u#36 ) + (byte) main::i#2 ← phi( main::@8/(byte) main::i#3 ) + (signed word*) main::st2#3 ← phi( main::@8/(signed word*) main::st2#4 ) + (signed word*) main::st1#3 ← phi( main::@8/(signed word*) main::st1#4 ) + (byte*) print_char_cursor#38 ← phi( main::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#18 ← (byte*) print_char_cursor#38 + (signed word*~) main::$9 ← (signed word*) main::st1#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) main::st1#1 ← (signed word*~) main::$9 + (signed word*~) main::$10 ← (signed word*) main::st2#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) main::st2#1 ← (signed word*~) main::$10 + (byte) main::i#1 ← (byte) main::i#2 + rangenext(0,$77) + (bool~) main::$11 ← (byte) main::i#1 != rangelast(0,$77) if((bool~) main::$11) goto main::@1 to:main::@return main::@3: scope:[main] from main::@1 - (byte*) print_line_cursor#20 ? phi( main::@1/(byte*) print_line_cursor#18 ) - (word) rem16u#45 ? phi( main::@1/(word) rem16u#41 ) - (byte) main::i#7 ? phi( main::@1/(byte) main::i#5 ) - (signed word*) main::st2#7 ? phi( main::@1/(signed word*) main::st2#2 ) - (signed word*) main::st1#7 ? phi( main::@1/(signed word*) main::st1#2 ) - (signed word) main::sw#3 ? phi( main::@1/(signed word) main::sw#0 ) - (byte*) print_char_cursor#49 ? phi( main::@1/(byte*) print_char_cursor#54 ) - (byte*) print_str::str#2 ? (const string) main::str1 + (byte*) print_line_cursor#20 ← phi( main::@1/(byte*) print_line_cursor#18 ) + (word) rem16u#45 ← phi( main::@1/(word) rem16u#41 ) + (byte) main::i#7 ← phi( main::@1/(byte) main::i#5 ) + (signed word*) main::st2#7 ← phi( main::@1/(signed word*) main::st2#2 ) + (signed word*) main::st1#7 ← phi( main::@1/(signed word*) main::st1#2 ) + (signed word) main::sw#3 ← phi( main::@1/(signed word) main::sw#0 ) + (byte*) print_char_cursor#49 ← phi( main::@1/(byte*) print_char_cursor#54 ) + (byte*) print_str::str#2 ← (const string) main::str1 call print_str to:main::@10 main::@10: scope:[main] from main::@3 - (byte*) print_line_cursor#19 ? phi( main::@3/(byte*) print_line_cursor#20 ) - (word) rem16u#42 ? phi( main::@3/(word) rem16u#45 ) - (byte) main::i#6 ? phi( main::@3/(byte) main::i#7 ) - (signed word*) main::st2#6 ? phi( main::@3/(signed word*) main::st2#7 ) - (signed word*) main::st1#6 ? phi( main::@3/(signed word*) main::st1#7 ) - (signed word) main::sw#2 ? phi( main::@3/(signed word) main::sw#3 ) - (byte*) print_char_cursor#39 ? phi( main::@3/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#39 + (byte*) print_line_cursor#19 ← phi( main::@3/(byte*) print_line_cursor#20 ) + (word) rem16u#42 ← phi( main::@3/(word) rem16u#45 ) + (byte) main::i#6 ← phi( main::@3/(byte) main::i#7 ) + (signed word*) main::st2#6 ← phi( main::@3/(signed word*) main::st2#7 ) + (signed word*) main::st1#6 ← phi( main::@3/(signed word*) main::st1#7 ) + (signed word) main::sw#2 ← phi( main::@3/(signed word) main::sw#3 ) + (byte*) print_char_cursor#39 ← phi( main::@3/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#39 to:main::@2 main::@return: scope:[main] from main::@9 - (byte*) print_char_cursor#40 ? phi( main::@9/(byte*) print_char_cursor#18 ) - (byte*) print_line_cursor#8 ? phi( main::@9/(byte*) print_line_cursor#11 ) - (word) rem16u#24 ? phi( main::@9/(word) rem16u#32 ) - (word) rem16u#12 ? (word) rem16u#24 - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#8 - (byte*) print_char_cursor#20 ? (byte*) print_char_cursor#40 + (byte*) print_char_cursor#40 ← phi( main::@9/(byte*) print_char_cursor#18 ) + (byte*) print_line_cursor#8 ← phi( main::@9/(byte*) print_line_cursor#11 ) + (word) rem16u#24 ← phi( main::@9/(word) rem16u#32 ) + (word) rem16u#12 ← (word) rem16u#24 + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#8 + (byte*) print_char_cursor#20 ← (byte*) print_char_cursor#40 return to:@return @42: scope:[] from @34 - (byte*) print_screen#7 ? phi( @34/(byte*) print_screen#8 ) - (byte*) print_char_cursor#50 ? phi( @34/(byte*) print_char_cursor#55 ) - (byte*) print_line_cursor#12 ? phi( @34/(byte*) print_line_cursor#15 ) - (word) rem16u#33 ? phi( @34/(word) rem16u#37 ) + (byte*) print_screen#7 ← phi( @34/(byte*) print_screen#8 ) + (byte*) print_char_cursor#50 ← phi( @34/(byte*) print_char_cursor#55 ) + (byte*) print_line_cursor#12 ← phi( @34/(byte*) print_line_cursor#15 ) + (word) rem16u#33 ← phi( @34/(word) rem16u#37 ) call main to:@43 @43: scope:[] from @42 - (byte*) print_char_cursor#41 ? phi( @42/(byte*) print_char_cursor#20 ) - (byte*) print_line_cursor#9 ? phi( @42/(byte*) print_line_cursor#4 ) - (word) rem16u#25 ? phi( @42/(word) rem16u#12 ) - (word) rem16u#13 ? (word) rem16u#25 - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#9 - (byte*) print_char_cursor#21 ? (byte*) print_char_cursor#41 + (byte*) print_char_cursor#41 ← phi( @42/(byte*) print_char_cursor#20 ) + (byte*) print_line_cursor#9 ← phi( @42/(byte*) print_line_cursor#4 ) + (word) rem16u#25 ← phi( @42/(word) rem16u#12 ) + (word) rem16u#13 ← (word) rem16u#25 + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#9 + (byte*) print_char_cursor#21 ← (byte*) print_char_cursor#41 to:@end @end: scope:[] from @43 @@ -1631,17 +1631,17 @@ SYMBOL TABLE SSA (word) sin16sb::x5_128 (word) sin16sb::x5_128#0 -Inversing boolean not [11] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [19] (bool~) divr16u::$9 ? (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [18] (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 -Inversing boolean not [79] (bool~) mul16u::$3 ? (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [78] (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [132] (bool~) sin16s::$1 ? (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [131] (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 -Inversing boolean not [136] (bool~) sin16s::$3 ? (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [135] (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 -Inversing boolean not [196] (bool~) sin16s::$17 ? (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [195] (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [255] (bool~) sin16sb::$1 ? (word) sin16sb::x#3 < (word) PI_u4f12#0 from [254] (bool~) sin16sb::$0 ? (word) sin16sb::x#3 >= (word) PI_u4f12#0 -Inversing boolean not [259] (bool~) sin16sb::$3 ? (word) sin16sb::x#4 < (word) PI_HALF_u4f12#0 from [258] (bool~) sin16sb::$2 ? (word) sin16sb::x#4 >= (word) PI_HALF_u4f12#0 -Inversing boolean not [318] (bool~) sin16sb::$16 ? (byte) sin16sb::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [317] (bool~) sin16sb::$15 ? (byte) sin16sb::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [349] (bool~) print_sword::$1 ? (signed word) print_sword::w#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [348] (bool~) print_sword::$0 ? (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [443] (bool~) main::$5 ? (signed word) main::sw#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [442] (bool~) main::$4 ? (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [11] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [19] (bool~) divr16u::$9 ← (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [18] (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 +Inversing boolean not [79] (bool~) mul16u::$3 ← (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [78] (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [132] (bool~) sin16s::$1 ← (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [131] (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 +Inversing boolean not [136] (bool~) sin16s::$3 ← (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [135] (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 +Inversing boolean not [196] (bool~) sin16s::$17 ← (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [195] (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [255] (bool~) sin16sb::$1 ← (word) sin16sb::x#3 < (word) PI_u4f12#0 from [254] (bool~) sin16sb::$0 ← (word) sin16sb::x#3 >= (word) PI_u4f12#0 +Inversing boolean not [259] (bool~) sin16sb::$3 ← (word) sin16sb::x#4 < (word) PI_HALF_u4f12#0 from [258] (bool~) sin16sb::$2 ← (word) sin16sb::x#4 >= (word) PI_HALF_u4f12#0 +Inversing boolean not [318] (bool~) sin16sb::$16 ← (byte) sin16sb::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [317] (bool~) sin16sb::$15 ← (byte) sin16sb::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [349] (bool~) print_sword::$1 ← (signed word) print_sword::w#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [348] (bool~) print_sword::$0 ← (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [443] (bool~) main::$5 ← (signed word) main::sw#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [442] (bool~) main::$4 ← (signed word) main::sw#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#7 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#8 @@ -1957,19 +1957,19 @@ Successful SSA optimization Pass2ConstantIdentification Constant (const word) div32u16u::divisor#0 = sin16s_gen::wavelength#0 Constant (const word) div32u16u::divisor#1 = sin16s_genb::wavelength#0 Successful SSA optimization Pass2ConstantIdentification -Fixing inline constructor with div32u16u::$4 ? div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 +Fixing inline constructor with div32u16u::$4 ← div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 Successful SSA optimization Pass2FixInlineConstructors Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (signed word) sin16s::sinx#0 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (signed word) sin16sb::sinx#0 ? ((signed word)) (word) sin16sb::usinx#1 -Eliminating Noop Cast (signed word~) sin16sb::$19 ? ((signed word)) (word) sin16sb::usinx#1 -Eliminating Noop Cast (word) print_word::w#0 ? ((word)) (signed word) print_sword::w#3 +Eliminating Noop Cast (signed word) sin16s::sinx#0 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (signed word) sin16sb::sinx#0 ← ((signed word)) (word) sin16sb::usinx#1 +Eliminating Noop Cast (signed word~) sin16sb::$19 ← ((signed word)) (word) sin16sb::usinx#1 +Eliminating Noop Cast (word) print_word::w#0 ← ((word)) (signed word) print_sword::w#3 Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value main::i#1 ? ++ main::i#2 to ++ +Resolved ranged next value main::i#1 ← ++ main::i#2 to ++ Resolved ranged comparison value if(main::i#1!=rangelast(0,$77)) goto main::@1 to (byte/signed byte/word/signed word/dword/signed dword) $78 Culled Empty Block (label) @2 Culled Empty Block (label) @5 @@ -2124,86 +2124,86 @@ Calls in [sin16s_gen] to div32u16u:224 sin16s:229 Calls in [sin16s] to mulu16_sel:255 mulu16_sel:262 mulu16_sel:267 mulu16_sel:275 mulu16_sel:282 Created 46 initial phi equivalence classes -Coalesced [13] print_char_cursor#60 ? print_char_cursor#49 -Coalesced [15] print_char_cursor#59 ? print_char_cursor#2 -Coalesced [19] print_char_cursor#61 ? print_char_cursor#12 -Coalesced [26] main::st1#8 ? main::st1#1 -Coalesced [27] main::st2#8 ? main::st2#1 -Coalesced [28] print_char_cursor#57 ? print_char_cursor#2 -Coalesced [29] main::i#8 ? main::i#1 -Coalesced (already) [30] print_char_cursor#58 ? print_char_cursor#49 -Coalesced [32] print_str::str#6 ? print_str::str#5 -Coalesced (already) [33] print_char_cursor#62 ? print_char_cursor#51 -Coalesced [40] print_str::str#7 ? print_str::str#0 -Coalesced [41] print_char_cursor#63 ? print_char_cursor#1 -Coalesced [43] print_char_cursor#70 ? print_char_cursor#48 -Coalesced [46] print_sword::w#7 ? print_sword::w#0 -Coalesced [47] print_char_cursor#65 ? print_char_cursor#12 -Coalesced [51] print_sword::w#6 ? print_sword::w#1 -Coalesced (already) [52] print_char_cursor#64 ? print_char_cursor#48 -Coalesced [54] print_byte::b#4 ? print_byte::b#0 -Coalesced [55] print_char_cursor#66 ? print_char_cursor#43 -Coalesced [58] print_byte::b#5 ? print_byte::b#1 -Coalesced (already) [59] print_char_cursor#67 ? print_char_cursor#12 -Coalesced [65] print_char::ch#4 ? print_char::ch#1 -Coalesced (already) [66] print_char_cursor#68 ? print_char_cursor#46 -Coalesced [70] print_char::ch#5 ? print_char::ch#2 -Coalesced (already) [71] print_char_cursor#69 ? print_char_cursor#12 -Coalesced [84] print_cls::sc#3 ? print_cls::sc#1 -Coalesced [100] sin16s_genb::x#4 ? sin16s_genb::x#1 -Coalesced [101] sin16s_genb::sintab#6 ? sin16s_genb::sintab#0 -Coalesced [102] sin16s_genb::i#4 ? sin16s_genb::i#1 -Coalesced [105] sin16sb::x#9 ? sin16sb::x#1 -Coalesced [109] sin16sb::x#11 ? sin16sb::x#2 -Coalesced [114] mulu16_sel::v1#18 ? mulu16_sel::v1#5 -Coalesced [115] mulu16_sel::v2#17 ? mulu16_sel::v2#5 -Coalesced [121] mulu16_sel::v1#19 ? mulu16_sel::v1#6 -Coalesced [122] mulu16_sel::v2#18 ? mulu16_sel::v2#6 -Coalesced [127] mulu16_sel::v1#20 ? mulu16_sel::v1#7 -Coalesced [134] mulu16_sel::v1#16 ? mulu16_sel::v1#8 -Coalesced [135] mulu16_sel::v2#15 ? mulu16_sel::v2#8 -Coalesced [141] mulu16_sel::v1#17 ? mulu16_sel::v1#9 -Coalesced [142] mulu16_sel::v2#16 ? mulu16_sel::v2#9 -Coalesced [150] sin16sb::return#6 ? sin16sb::sinx#1 -Coalesced [154] sin16sb::x#10 ? sin16sb::x#4 -Coalesced [155] sin16sb::x#8 ? sin16sb::x#0 -Coalesced [166] mul16u::a#7 ? mul16u::a#1 -Coalesced [167] mul16u::mb#6 ? mul16u::mb#0 -Coalesced [174] mul16u::res#9 ? mul16u::res#1 -Coalesced [178] mul16u::a#8 ? mul16u::a#0 -Coalesced [179] mul16u::res#7 ? mul16u::res#6 -Coalesced [180] mul16u::mb#7 ? mul16u::mb#1 -Coalesced (already) [181] mul16u::res#8 ? mul16u::res#2 -Coalesced [187] divr16u::rem#12 ? divr16u::rem#4 -Coalesced [194] divr16u::rem#13 ? divr16u::rem#10 -Coalesced [195] divr16u::dividend#9 ? divr16u::dividend#5 -Coalesced [202] divr16u::rem#16 ? divr16u::rem#1 -Coalesced [209] divr16u::rem#18 ? divr16u::rem#2 -Coalesced [210] divr16u::return#8 ? divr16u::quotient#2 -Coalesced [216] divr16u::rem#14 ? divr16u::rem#11 -Coalesced [217] divr16u::dividend#10 ? divr16u::dividend#0 -Coalesced [218] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [219] divr16u::i#7 ? divr16u::i#1 -Coalesced [220] divr16u::rem#17 ? divr16u::rem#6 -Coalesced [221] divr16u::return#7 ? divr16u::quotient#1 -Coalesced [222] divr16u::rem#15 ? divr16u::rem#0 -Coalesced [238] sin16s_gen::x#4 ? sin16s_gen::x#1 -Coalesced [239] sin16s_gen::sintab#6 ? sin16s_gen::sintab#0 -Coalesced [240] sin16s_gen::i#4 ? sin16s_gen::i#1 -Coalesced [243] sin16s::x#9 ? sin16s::x#1 -Coalesced [247] sin16s::x#11 ? sin16s::x#2 -Coalesced [253] mulu16_sel::v1#13 ? mulu16_sel::v1#0 -Coalesced [254] mulu16_sel::v2#13 ? mulu16_sel::v2#0 -Coalesced [260] mulu16_sel::v1#14 ? mulu16_sel::v1#1 -Coalesced [261] mulu16_sel::v2#14 ? mulu16_sel::v2#1 -Coalesced [266] mulu16_sel::v1#15 ? mulu16_sel::v1#2 -Coalesced [273] mulu16_sel::v1#11 ? mulu16_sel::v1#3 -Coalesced [274] mulu16_sel::v2#11 ? mulu16_sel::v2#3 -Coalesced [280] mulu16_sel::v1#12 ? mulu16_sel::v1#4 -Coalesced [281] mulu16_sel::v2#12 ? mulu16_sel::v2#4 -Coalesced [289] sin16s::return#6 ? sin16s::sinx#1 -Coalesced [293] sin16s::x#10 ? sin16s::x#4 -Coalesced [294] sin16s::x#8 ? sin16s::x#0 +Coalesced [13] print_char_cursor#60 ← print_char_cursor#49 +Coalesced [15] print_char_cursor#59 ← print_char_cursor#2 +Coalesced [19] print_char_cursor#61 ← print_char_cursor#12 +Coalesced [26] main::st1#8 ← main::st1#1 +Coalesced [27] main::st2#8 ← main::st2#1 +Coalesced [28] print_char_cursor#57 ← print_char_cursor#2 +Coalesced [29] main::i#8 ← main::i#1 +Coalesced (already) [30] print_char_cursor#58 ← print_char_cursor#49 +Coalesced [32] print_str::str#6 ← print_str::str#5 +Coalesced (already) [33] print_char_cursor#62 ← print_char_cursor#51 +Coalesced [40] print_str::str#7 ← print_str::str#0 +Coalesced [41] print_char_cursor#63 ← print_char_cursor#1 +Coalesced [43] print_char_cursor#70 ← print_char_cursor#48 +Coalesced [46] print_sword::w#7 ← print_sword::w#0 +Coalesced [47] print_char_cursor#65 ← print_char_cursor#12 +Coalesced [51] print_sword::w#6 ← print_sword::w#1 +Coalesced (already) [52] print_char_cursor#64 ← print_char_cursor#48 +Coalesced [54] print_byte::b#4 ← print_byte::b#0 +Coalesced [55] print_char_cursor#66 ← print_char_cursor#43 +Coalesced [58] print_byte::b#5 ← print_byte::b#1 +Coalesced (already) [59] print_char_cursor#67 ← print_char_cursor#12 +Coalesced [65] print_char::ch#4 ← print_char::ch#1 +Coalesced (already) [66] print_char_cursor#68 ← print_char_cursor#46 +Coalesced [70] print_char::ch#5 ← print_char::ch#2 +Coalesced (already) [71] print_char_cursor#69 ← print_char_cursor#12 +Coalesced [84] print_cls::sc#3 ← print_cls::sc#1 +Coalesced [100] sin16s_genb::x#4 ← sin16s_genb::x#1 +Coalesced [101] sin16s_genb::sintab#6 ← sin16s_genb::sintab#0 +Coalesced [102] sin16s_genb::i#4 ← sin16s_genb::i#1 +Coalesced [105] sin16sb::x#9 ← sin16sb::x#1 +Coalesced [109] sin16sb::x#11 ← sin16sb::x#2 +Coalesced [114] mulu16_sel::v1#18 ← mulu16_sel::v1#5 +Coalesced [115] mulu16_sel::v2#17 ← mulu16_sel::v2#5 +Coalesced [121] mulu16_sel::v1#19 ← mulu16_sel::v1#6 +Coalesced [122] mulu16_sel::v2#18 ← mulu16_sel::v2#6 +Coalesced [127] mulu16_sel::v1#20 ← mulu16_sel::v1#7 +Coalesced [134] mulu16_sel::v1#16 ← mulu16_sel::v1#8 +Coalesced [135] mulu16_sel::v2#15 ← mulu16_sel::v2#8 +Coalesced [141] mulu16_sel::v1#17 ← mulu16_sel::v1#9 +Coalesced [142] mulu16_sel::v2#16 ← mulu16_sel::v2#9 +Coalesced [150] sin16sb::return#6 ← sin16sb::sinx#1 +Coalesced [154] sin16sb::x#10 ← sin16sb::x#4 +Coalesced [155] sin16sb::x#8 ← sin16sb::x#0 +Coalesced [166] mul16u::a#7 ← mul16u::a#1 +Coalesced [167] mul16u::mb#6 ← mul16u::mb#0 +Coalesced [174] mul16u::res#9 ← mul16u::res#1 +Coalesced [178] mul16u::a#8 ← mul16u::a#0 +Coalesced [179] mul16u::res#7 ← mul16u::res#6 +Coalesced [180] mul16u::mb#7 ← mul16u::mb#1 +Coalesced (already) [181] mul16u::res#8 ← mul16u::res#2 +Coalesced [187] divr16u::rem#12 ← divr16u::rem#4 +Coalesced [194] divr16u::rem#13 ← divr16u::rem#10 +Coalesced [195] divr16u::dividend#9 ← divr16u::dividend#5 +Coalesced [202] divr16u::rem#16 ← divr16u::rem#1 +Coalesced [209] divr16u::rem#18 ← divr16u::rem#2 +Coalesced [210] divr16u::return#8 ← divr16u::quotient#2 +Coalesced [216] divr16u::rem#14 ← divr16u::rem#11 +Coalesced [217] divr16u::dividend#10 ← divr16u::dividend#0 +Coalesced [218] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [219] divr16u::i#7 ← divr16u::i#1 +Coalesced [220] divr16u::rem#17 ← divr16u::rem#6 +Coalesced [221] divr16u::return#7 ← divr16u::quotient#1 +Coalesced [222] divr16u::rem#15 ← divr16u::rem#0 +Coalesced [238] sin16s_gen::x#4 ← sin16s_gen::x#1 +Coalesced [239] sin16s_gen::sintab#6 ← sin16s_gen::sintab#0 +Coalesced [240] sin16s_gen::i#4 ← sin16s_gen::i#1 +Coalesced [243] sin16s::x#9 ← sin16s::x#1 +Coalesced [247] sin16s::x#11 ← sin16s::x#2 +Coalesced [253] mulu16_sel::v1#13 ← mulu16_sel::v1#0 +Coalesced [254] mulu16_sel::v2#13 ← mulu16_sel::v2#0 +Coalesced [260] mulu16_sel::v1#14 ← mulu16_sel::v1#1 +Coalesced [261] mulu16_sel::v2#14 ← mulu16_sel::v2#1 +Coalesced [266] mulu16_sel::v1#15 ← mulu16_sel::v1#2 +Coalesced [273] mulu16_sel::v1#11 ← mulu16_sel::v1#3 +Coalesced [274] mulu16_sel::v2#11 ← mulu16_sel::v2#3 +Coalesced [280] mulu16_sel::v1#12 ← mulu16_sel::v1#4 +Coalesced [281] mulu16_sel::v2#12 ← mulu16_sel::v2#4 +Coalesced [289] sin16s::return#6 ← sin16s::sinx#1 +Coalesced [293] sin16s::x#10 ← sin16s::x#4 +Coalesced [294] sin16s::x#8 ← sin16s::x#0 Coalesced down to 31 phi equivalence classes Culled Empty Block (label) main::@11 Culled Empty Block (label) main::@12 @@ -2283,11 +2283,11 @@ main::@5: scope:[main] from main::@4 [9] call print_cls to:main::@1 main::@1: scope:[main] from main::@5 main::@7 - [10] (byte) main::i#2 ? phi( main::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@7/(byte) main::i#1 ) - [10] (byte*) print_char_cursor#49 ? phi( main::@5/(const byte*) print_line_cursor#0 main::@7/(byte*) print_char_cursor#2 ) - [10] (signed word*) main::st2#2 ? phi( main::@5/(const signed word[$78]) main::sintab2#0 main::@7/(signed word*) main::st2#1 ) - [10] (signed word*) main::st1#2 ? phi( main::@5/(const signed word[$78]) main::sintab1#0 main::@7/(signed word*) main::st1#1 ) - [11] (signed word) main::sw#0 ? *((signed word*) main::st1#2) - *((signed word*) main::st2#2) + [10] (byte) main::i#2 ← phi( main::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@7/(byte) main::i#1 ) + [10] (byte*) print_char_cursor#49 ← phi( main::@5/(const byte*) print_line_cursor#0 main::@7/(byte*) print_char_cursor#2 ) + [10] (signed word*) main::st2#2 ← phi( main::@5/(const signed word[$78]) main::sintab2#0 main::@7/(signed word*) main::st2#1 ) + [10] (signed word*) main::st1#2 ← phi( main::@5/(const signed word[$78]) main::sintab1#0 main::@7/(signed word*) main::st1#1 ) + [11] (signed word) main::sw#0 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) [12] if((signed word) main::sw#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 to:main::@3 main::@3: scope:[main] from main::@1 @@ -2295,8 +2295,8 @@ main::@3: scope:[main] from main::@1 [14] call print_str to:main::@2 main::@2: scope:[main] from main::@1 main::@3 - [15] (byte*) print_char_cursor#48 ? phi( main::@1/(byte*) print_char_cursor#49 main::@3/(byte*) print_char_cursor#2 ) - [16] (signed word) print_sword::w#1 ? (signed word) main::sw#0 + [15] (byte*) print_char_cursor#48 ← phi( main::@1/(byte*) print_char_cursor#49 main::@3/(byte*) print_char_cursor#2 ) + [16] (signed word) print_sword::w#1 ← (signed word) main::sw#0 [17] call print_sword to:main::@6 main::@6: scope:[main] from main::@2 @@ -2304,30 +2304,30 @@ main::@6: scope:[main] from main::@2 [19] call print_str to:main::@7 main::@7: scope:[main] from main::@6 - [20] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [21] (signed word*) main::st2#1 ? (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [22] (byte) main::i#1 ? ++ (byte) main::i#2 + [20] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [21] (signed word*) main::st2#1 ← (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [22] (byte) main::i#1 ← ++ (byte) main::i#2 [23] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $78) goto main::@1 to:main::@return main::@return: scope:[main] from main::@7 [24] return to:@return print_str: scope:[print_str] from main::@3 main::@6 - [25] (byte*) print_char_cursor#51 ? phi( main::@3/(byte*) print_char_cursor#49 main::@6/(byte*) print_char_cursor#12 ) - [25] (byte*) print_str::str#5 ? phi( main::@3/(const string) main::str1 main::@6/(const string) main::str ) + [25] (byte*) print_char_cursor#51 ← phi( main::@3/(byte*) print_char_cursor#49 main::@6/(byte*) print_char_cursor#12 ) + [25] (byte*) print_str::str#5 ← phi( main::@3/(const string) main::str1 main::@6/(const string) main::str ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [26] (byte*) print_char_cursor#2 ? phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) - [26] (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + [26] (byte*) print_char_cursor#2 ← phi( print_str/(byte*) print_char_cursor#51 print_str::@2/(byte*) print_char_cursor#1 ) + [26] (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) [27] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [28] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [29] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) - [30] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 - [31] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 + [29] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) + [30] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 + [31] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 to:print_str::@1 print_sword: scope:[print_sword] from main::@2 [32] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 @@ -2337,47 +2337,47 @@ print_sword::@2: scope:[print_sword] from print_sword [34] call print_char to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@2 - [35] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 + [35] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@3 - [36] (byte*) print_char_cursor#43 ? phi( print_sword/(byte*) print_char_cursor#48 print_sword::@3/(byte*) print_char_cursor#12 ) - [36] (signed word) print_sword::w#3 ? phi( print_sword/(signed word) print_sword::w#1 print_sword::@3/(signed word) print_sword::w#0 ) + [36] (byte*) print_char_cursor#43 ← phi( print_sword/(byte*) print_char_cursor#48 print_sword::@3/(byte*) print_char_cursor#12 ) + [36] (signed word) print_sword::w#3 ← phi( print_sword/(signed word) print_sword::w#1 print_sword::@3/(signed word) print_sword::w#0 ) [37] call print_word to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 [38] return to:@return print_word: scope:[print_word] from print_sword::@1 - [39] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 + [39] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 [40] call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [41] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 + [41] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 [42] call print_byte to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 [43] return to:@return print_byte: scope:[print_byte] from print_word print_word::@1 - [44] (byte*) print_char_cursor#46 ? phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) - [44] (byte) print_byte::b#2 ? phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) - [45] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [46] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [44] (byte*) print_char_cursor#46 ← phi( print_word/(byte*) print_char_cursor#43 print_word::@1/(byte*) print_char_cursor#12 ) + [44] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) + [45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [46] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [47] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [48] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [49] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [49] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [50] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 [51] return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sword::@2 - [52] (byte*) print_char_cursor#33 ? phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#12 print_sword::@2/(byte*) print_char_cursor#48 ) - [52] (byte) print_char::ch#3 ? phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) '-' ) - [53] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 - [54] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 + [52] (byte*) print_char_cursor#33 ← phi( print_byte/(byte*) print_char_cursor#46 print_byte::@1/(byte*) print_char_cursor#12 print_sword::@2/(byte*) print_char_cursor#48 ) + [52] (byte) print_char::ch#3 ← phi( print_byte/(byte) print_char::ch#1 print_byte::@1/(byte) print_char::ch#2 print_sword::@2/(byte) '-' ) + [53] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 + [54] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 to:print_char::@return print_char::@return: scope:[print_char] from print_char [55] return @@ -2386,9 +2386,9 @@ print_cls: scope:[print_cls] from main::@5 [56] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [57] (byte*) print_cls::sc#2 ? phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [58] *((byte*) print_cls::sc#2) ? (byte) ' ' - [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [57] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) + [58] *((byte*) print_cls::sc#2) ← (byte) ' ' + [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [60] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -2397,25 +2397,25 @@ print_cls::@return: scope:[print_cls] from print_cls::@1 sin16s_genb: scope:[sin16s_genb] from main::@4 [62] phi() [63] call div32u16u - [64] (dword) div32u16u::return#3 ? (dword) div32u16u::return#0 + [64] (dword) div32u16u::return#3 ← (dword) div32u16u::return#0 to:sin16s_genb::@2 sin16s_genb::@2: scope:[sin16s_genb] from sin16s_genb - [65] (dword) sin16s_genb::step#0 ? (dword) div32u16u::return#3 + [65] (dword) sin16s_genb::step#0 ← (dword) div32u16u::return#3 to:sin16s_genb::@1 sin16s_genb::@1: scope:[sin16s_genb] from sin16s_genb::@2 sin16s_genb::@3 - [66] (word) sin16s_genb::i#2 ? phi( sin16s_genb::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_genb::@3/(word) sin16s_genb::i#1 ) - [66] (signed word*) sin16s_genb::sintab#2 ? phi( sin16s_genb::@2/(const signed word[$78]) main::sintab2#0 sin16s_genb::@3/(signed word*) sin16s_genb::sintab#0 ) - [66] (dword) sin16s_genb::x#2 ? phi( sin16s_genb::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_genb::@3/(dword) sin16s_genb::x#1 ) - [67] (word) sin16sb::x#0 ? > (dword) sin16s_genb::x#2 + [66] (word) sin16s_genb::i#2 ← phi( sin16s_genb::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_genb::@3/(word) sin16s_genb::i#1 ) + [66] (signed word*) sin16s_genb::sintab#2 ← phi( sin16s_genb::@2/(const signed word[$78]) main::sintab2#0 sin16s_genb::@3/(signed word*) sin16s_genb::sintab#0 ) + [66] (dword) sin16s_genb::x#2 ← phi( sin16s_genb::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_genb::@3/(dword) sin16s_genb::x#1 ) + [67] (word) sin16sb::x#0 ← > (dword) sin16s_genb::x#2 [68] call sin16sb - [69] (signed word) sin16sb::return#0 ? (signed word) sin16sb::return#1 + [69] (signed word) sin16sb::return#0 ← (signed word) sin16sb::return#1 to:sin16s_genb::@3 sin16s_genb::@3: scope:[sin16s_genb] from sin16s_genb::@1 - [70] (signed word~) sin16s_genb::$2 ? (signed word) sin16sb::return#0 - [71] *((signed word*) sin16s_genb::sintab#2) ? (signed word~) sin16s_genb::$2 - [72] (signed word*) sin16s_genb::sintab#0 ? (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [73] (dword) sin16s_genb::x#1 ? (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 - [74] (word) sin16s_genb::i#1 ? ++ (word) sin16s_genb::i#2 + [70] (signed word~) sin16s_genb::$2 ← (signed word) sin16sb::return#0 + [71] *((signed word*) sin16s_genb::sintab#2) ← (signed word~) sin16s_genb::$2 + [72] (signed word*) sin16s_genb::sintab#0 ← (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [73] (dword) sin16s_genb::x#1 ← (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 + [74] (word) sin16s_genb::i#1 ← ++ (word) sin16s_genb::i#2 [75] if((word) sin16s_genb::i#1<(const word) main::wavelength#0) goto sin16s_genb::@1 to:sin16s_genb::@return sin16s_genb::@return: scope:[sin16s_genb] from sin16s_genb::@3 @@ -2425,164 +2425,164 @@ sin16sb: scope:[sin16sb] from sin16s_genb::@1 [77] if((word) sin16sb::x#0<(const word) PI_u4f12#0) goto sin16sb::@1 to:sin16sb::@4 sin16sb::@4: scope:[sin16sb] from sin16sb - [78] (word) sin16sb::x#1 ? (word) sin16sb::x#0 - (const word) PI_u4f12#0 + [78] (word) sin16sb::x#1 ← (word) sin16sb::x#0 - (const word) PI_u4f12#0 to:sin16sb::@1 sin16sb::@1: scope:[sin16sb] from sin16sb sin16sb::@4 - [79] (byte) sin16sb::isUpper#2 ? phi( sin16sb/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [79] (word) sin16sb::x#4 ? phi( sin16sb/(word) sin16sb::x#0 sin16sb::@4/(word) sin16sb::x#1 ) + [79] (byte) sin16sb::isUpper#2 ← phi( sin16sb/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [79] (word) sin16sb::x#4 ← phi( sin16sb/(word) sin16sb::x#0 sin16sb::@4/(word) sin16sb::x#1 ) [80] if((word) sin16sb::x#4<(const word) PI_HALF_u4f12#0) goto sin16sb::@2 to:sin16sb::@5 sin16sb::@5: scope:[sin16sb] from sin16sb::@1 - [81] (word) sin16sb::x#2 ? (const word) PI_u4f12#0 - (word) sin16sb::x#4 + [81] (word) sin16sb::x#2 ← (const word) PI_u4f12#0 - (word) sin16sb::x#4 to:sin16sb::@2 sin16sb::@2: scope:[sin16sb] from sin16sb::@1 sin16sb::@5 - [82] (word) sin16sb::x#6 ? phi( sin16sb::@1/(word) sin16sb::x#4 sin16sb::@5/(word) sin16sb::x#2 ) - [83] (word) sin16sb::x1#0 ? (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [84] (word) mulu16_sel::v1#5 ? (word) sin16sb::x1#0 - [85] (word) mulu16_sel::v2#5 ? (word) sin16sb::x1#0 + [82] (word) sin16sb::x#6 ← phi( sin16sb::@1/(word) sin16sb::x#4 sin16sb::@5/(word) sin16sb::x#2 ) + [83] (word) sin16sb::x1#0 ← (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [84] (word) mulu16_sel::v1#5 ← (word) sin16sb::x1#0 + [85] (word) mulu16_sel::v2#5 ← (word) sin16sb::x1#0 [86] call mulu16_sel - [87] (word) mulu16_sel::return#18 ? (word) mulu16_sel::return#17 + [87] (word) mulu16_sel::return#18 ← (word) mulu16_sel::return#17 to:sin16sb::@7 sin16sb::@7: scope:[sin16sb] from sin16sb::@2 - [88] (word) sin16sb::x2#0 ? (word) mulu16_sel::return#18 - [89] (word) mulu16_sel::v1#6 ? (word) sin16sb::x2#0 - [90] (word) mulu16_sel::v2#6 ? (word) sin16sb::x1#0 + [88] (word) sin16sb::x2#0 ← (word) mulu16_sel::return#18 + [89] (word) mulu16_sel::v1#6 ← (word) sin16sb::x2#0 + [90] (word) mulu16_sel::v2#6 ← (word) sin16sb::x1#0 [91] call mulu16_sel - [92] (word) mulu16_sel::return#19 ? (word) mulu16_sel::return#17 + [92] (word) mulu16_sel::return#19 ← (word) mulu16_sel::return#17 to:sin16sb::@8 sin16sb::@8: scope:[sin16sb] from sin16sb::@7 - [93] (word) sin16sb::x3#0 ? (word) mulu16_sel::return#19 - [94] (word) mulu16_sel::v1#7 ? (word) sin16sb::x3#0 + [93] (word) sin16sb::x3#0 ← (word) mulu16_sel::return#19 + [94] (word) mulu16_sel::v1#7 ← (word) sin16sb::x3#0 [95] call mulu16_sel - [96] (word) mulu16_sel::return#20 ? (word) mulu16_sel::return#17 + [96] (word) mulu16_sel::return#20 ← (word) mulu16_sel::return#17 to:sin16sb::@9 sin16sb::@9: scope:[sin16sb] from sin16sb::@8 - [97] (word) sin16sb::x3_6#0 ? (word) mulu16_sel::return#20 - [98] (word) sin16sb::usinx#0 ? (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 - [99] (word) mulu16_sel::v1#8 ? (word) sin16sb::x3#0 - [100] (word) mulu16_sel::v2#8 ? (word) sin16sb::x1#0 + [97] (word) sin16sb::x3_6#0 ← (word) mulu16_sel::return#20 + [98] (word) sin16sb::usinx#0 ← (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 + [99] (word) mulu16_sel::v1#8 ← (word) sin16sb::x3#0 + [100] (word) mulu16_sel::v2#8 ← (word) sin16sb::x1#0 [101] call mulu16_sel - [102] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#17 + [102] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#17 to:sin16sb::@10 sin16sb::@10: scope:[sin16sb] from sin16sb::@9 - [103] (word) sin16sb::x4#0 ? (word) mulu16_sel::return#10 - [104] (word) mulu16_sel::v1#9 ? (word) sin16sb::x4#0 - [105] (word) mulu16_sel::v2#9 ? (word) sin16sb::x1#0 + [103] (word) sin16sb::x4#0 ← (word) mulu16_sel::return#10 + [104] (word) mulu16_sel::v1#9 ← (word) sin16sb::x4#0 + [105] (word) mulu16_sel::v2#9 ← (word) sin16sb::x1#0 [106] call mulu16_sel - [107] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#17 + [107] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#17 to:sin16sb::@11 sin16sb::@11: scope:[sin16sb] from sin16sb::@10 - [108] (word) sin16sb::x5#0 ? (word) mulu16_sel::return#11 - [109] (word) sin16sb::x5_128#0 ? (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [110] (word) sin16sb::usinx#1 ? (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 + [108] (word) sin16sb::x5#0 ← (word) mulu16_sel::return#11 + [109] (word) sin16sb::x5_128#0 ← (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [110] (word) sin16sb::usinx#1 ← (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 [111] if((byte) sin16sb::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16sb::@12 to:sin16sb::@6 sin16sb::@6: scope:[sin16sb] from sin16sb::@11 - [112] (signed word) sin16sb::sinx#1 ? - (signed word)(word) sin16sb::usinx#1 + [112] (signed word) sin16sb::sinx#1 ← - (signed word)(word) sin16sb::usinx#1 to:sin16sb::@3 sin16sb::@3: scope:[sin16sb] from sin16sb::@12 sin16sb::@6 - [113] (signed word) sin16sb::return#1 ? phi( sin16sb::@12/(signed word~) sin16sb::return#5 sin16sb::@6/(signed word) sin16sb::sinx#1 ) + [113] (signed word) sin16sb::return#1 ← phi( sin16sb::@12/(signed word~) sin16sb::return#5 sin16sb::@6/(signed word) sin16sb::sinx#1 ) to:sin16sb::@return sin16sb::@return: scope:[sin16sb] from sin16sb::@3 [114] return to:@return sin16sb::@12: scope:[sin16sb] from sin16sb::@11 - [115] (signed word~) sin16sb::return#5 ? (signed word)(word) sin16sb::usinx#1 + [115] (signed word~) sin16sb::return#5 ← (signed word)(word) sin16sb::usinx#1 to:sin16sb::@3 mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@2 sin16s::@7 sin16s::@8 sin16s::@9 sin16sb::@10 sin16sb::@2 sin16sb::@7 sin16sb::@8 sin16sb::@9 - [116] (byte) mulu16_sel::select#10 ? phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16sb::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16sb::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [116] (word) mulu16_sel::v2#10 ? phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 sin16sb::@9/(word) mulu16_sel::v2#8 sin16sb::@10/(word) mulu16_sel::v2#9 sin16sb::@2/(word) mulu16_sel::v2#5 sin16sb::@7/(word) mulu16_sel::v2#6 sin16sb::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) - [116] (word) mulu16_sel::v1#10 ? phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 sin16sb::@9/(word) mulu16_sel::v1#8 sin16sb::@10/(word) mulu16_sel::v1#9 sin16sb::@2/(word) mulu16_sel::v1#5 sin16sb::@7/(word) mulu16_sel::v1#6 sin16sb::@8/(word) mulu16_sel::v1#7 ) - [117] (word) mul16u::a#1 ? (word) mulu16_sel::v1#10 - [118] (word) mul16u::b#0 ? (word) mulu16_sel::v2#10 + [116] (byte) mulu16_sel::select#10 ← phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16sb::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16sb::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16sb::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [116] (word) mulu16_sel::v2#10 ← phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 sin16sb::@9/(word) mulu16_sel::v2#8 sin16sb::@10/(word) mulu16_sel::v2#9 sin16sb::@2/(word) mulu16_sel::v2#5 sin16sb::@7/(word) mulu16_sel::v2#6 sin16sb::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) + [116] (word) mulu16_sel::v1#10 ← phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 sin16sb::@9/(word) mulu16_sel::v1#8 sin16sb::@10/(word) mulu16_sel::v1#9 sin16sb::@2/(word) mulu16_sel::v1#5 sin16sb::@7/(word) mulu16_sel::v1#6 sin16sb::@8/(word) mulu16_sel::v1#7 ) + [117] (word) mul16u::a#1 ← (word) mulu16_sel::v1#10 + [118] (word) mul16u::b#0 ← (word) mulu16_sel::v2#10 [119] call mul16u - [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 to:mulu16_sel::@1 mulu16_sel::@1: scope:[mulu16_sel] from mulu16_sel - [121] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - [122] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 - [123] (word) mulu16_sel::return#17 ? > (dword~) mulu16_sel::$1 + [121] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + [122] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 + [123] (word) mulu16_sel::return#17 ← > (dword~) mulu16_sel::$1 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@1 [124] return to:@return mul16u: scope:[mul16u] from mulu16_sel - [125] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 + [125] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@3 - [126] (dword) mul16u::mb#2 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) - [126] (dword) mul16u::res#2 ? phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) - [126] (word) mul16u::a#2 ? phi( mul16u/(word) mul16u::a#1 mul16u::@3/(word) mul16u::a#0 ) + [126] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) + [126] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) + [126] (word) mul16u::a#2 ← phi( mul16u/(word) mul16u::a#1 mul16u::@3/(word) mul16u::a#0 ) [127] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 to:mul16u::@return mul16u::@return: scope:[mul16u] from mul16u::@1 [128] return to:@return mul16u::@2: scope:[mul16u] from mul16u::@1 - [129] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [129] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [130] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 to:mul16u::@4 mul16u::@4: scope:[mul16u] from mul16u::@2 - [131] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 + [131] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 to:mul16u::@3 mul16u::@3: scope:[mul16u] from mul16u::@2 mul16u::@4 - [132] (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) - [133] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [134] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [132] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) + [133] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [134] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul16u::@1 div32u16u: scope:[div32u16u] from sin16s_gen sin16s_genb [135] phi() [136] call divr16u - [137] (word) divr16u::return#2 ? (word) divr16u::return#0 + [137] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div32u16u::@1 div32u16u::@1: scope:[div32u16u] from div32u16u - [138] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 - [139] (word) divr16u::rem#4 ? (word) rem16u#1 + [138] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 + [139] (word) divr16u::rem#4 ← (word) rem16u#1 [140] call divr16u - [141] (word) divr16u::return#3 ? (word) divr16u::return#0 + [141] (word) divr16u::return#3 ← (word) divr16u::return#0 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u::@1 - [142] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - [143] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 + [142] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + [143] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@2 [144] return to:@return divr16u: scope:[divr16u] from div32u16u div32u16u::@1 - [145] (word) divr16u::dividend#5 ? phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) - [145] (word) divr16u::rem#10 ? phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) + [145] (word) divr16u::dividend#5 ← phi( div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) + [145] (word) divr16u::rem#10 ← phi( div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#4 ) to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [146] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [146] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [146] (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) - [146] (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - [147] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [148] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - [149] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [146] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [146] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [146] (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) + [146] (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + [147] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [148] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + [149] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [150] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [151] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [151] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [152] (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [153] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [154] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [152] (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [153] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [154] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [155] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [156] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [157] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 + [156] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [157] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [158] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [158] (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - [159] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [158] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [158] (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + [159] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [160] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [161] (word) rem16u#1 ? (word) divr16u::rem#11 + [161] (word) rem16u#1 ← (word) divr16u::rem#11 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [162] return @@ -2590,25 +2590,25 @@ divr16u::@return: scope:[divr16u] from divr16u::@6 sin16s_gen: scope:[sin16s_gen] from main [163] phi() [164] call div32u16u - [165] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + [165] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 to:sin16s_gen::@2 sin16s_gen::@2: scope:[sin16s_gen] from sin16s_gen - [166] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + [166] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 to:sin16s_gen::@1 sin16s_gen::@1: scope:[sin16s_gen] from sin16s_gen::@2 sin16s_gen::@3 - [167] (word) sin16s_gen::i#2 ? phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(word) sin16s_gen::i#1 ) - [167] (signed word*) sin16s_gen::sintab#2 ? phi( sin16s_gen::@2/(const signed word[$78]) main::sintab1#0 sin16s_gen::@3/(signed word*) sin16s_gen::sintab#0 ) - [167] (dword) sin16s_gen::x#2 ? phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(dword) sin16s_gen::x#1 ) - [168] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 + [167] (word) sin16s_gen::i#2 ← phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(word) sin16s_gen::i#1 ) + [167] (signed word*) sin16s_gen::sintab#2 ← phi( sin16s_gen::@2/(const signed word[$78]) main::sintab1#0 sin16s_gen::@3/(signed word*) sin16s_gen::sintab#0 ) + [167] (dword) sin16s_gen::x#2 ← phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(dword) sin16s_gen::x#1 ) + [168] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [169] call sin16s - [170] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + [170] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 to:sin16s_gen::@3 sin16s_gen::@3: scope:[sin16s_gen] from sin16s_gen::@1 - [171] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - [172] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 - [173] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [174] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 - [175] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 + [171] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + [172] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 + [173] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [174] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 + [175] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 [176] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 to:sin16s_gen::@return sin16s_gen::@return: scope:[sin16s_gen] from sin16s_gen::@3 @@ -2618,70 +2618,70 @@ sin16s: scope:[sin16s] from sin16s_gen::@1 [178] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 to:sin16s::@4 sin16s::@4: scope:[sin16s] from sin16s - [179] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 + [179] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 to:sin16s::@1 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - [180] (byte) sin16s::isUpper#2 ? phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [180] (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) + [180] (byte) sin16s::isUpper#2 ← phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [180] (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) [181] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 to:sin16s::@5 sin16s::@5: scope:[sin16s] from sin16s::@1 - [182] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 + [182] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 to:sin16s::@2 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - [183] (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - [184] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [185] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 - [186] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - [187] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 + [183] (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + [184] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [185] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 + [186] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + [187] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [188] call mulu16_sel - [189] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#17 + [189] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#17 to:sin16s::@7 sin16s::@7: scope:[sin16s] from sin16s::@2 - [190] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 - [191] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - [192] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 + [190] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 + [191] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + [192] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [193] call mulu16_sel - [194] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#17 + [194] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#17 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@7 - [195] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - [196] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + [195] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + [196] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [197] call mulu16_sel - [198] (word) mulu16_sel::return#14 ? (word) mulu16_sel::return#17 + [198] (word) mulu16_sel::return#14 ← (word) mulu16_sel::return#17 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - [199] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#14 - [200] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 - [201] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - [202] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 + [199] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#14 + [200] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 + [201] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + [202] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [203] call mulu16_sel - [204] (word) mulu16_sel::return#15 ? (word) mulu16_sel::return#17 + [204] (word) mulu16_sel::return#15 ← (word) mulu16_sel::return#17 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - [205] (word) sin16s::x4#0 ? (word) mulu16_sel::return#15 - [206] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - [207] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 + [205] (word) sin16s::x4#0 ← (word) mulu16_sel::return#15 + [206] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + [207] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [208] call mulu16_sel - [209] (word) mulu16_sel::return#16 ? (word) mulu16_sel::return#17 + [209] (word) mulu16_sel::return#16 ← (word) mulu16_sel::return#17 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - [210] (word) sin16s::x5#0 ? (word) mulu16_sel::return#16 - [211] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [212] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 + [210] (word) sin16s::x5#0 ← (word) mulu16_sel::return#16 + [211] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [212] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [213] if((byte) sin16s::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16s::@12 to:sin16s::@6 sin16s::@6: scope:[sin16s] from sin16s::@11 - [214] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 + [214] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 to:sin16s::@3 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - [215] (signed word) sin16s::return#1 ? phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) + [215] (signed word) sin16s::return#1 ← phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) to:sin16s::@return sin16s::@return: scope:[sin16s] from sin16s::@3 [216] return to:@return sin16s::@12: scope:[sin16s] from sin16s::@11 - [217] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + [217] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 to:sin16s::@3 @@ -3298,7 +3298,7 @@ main: { jmp b1 //SEG31 main::@1 b1: - //SEG32 [11] (signed word) main::sw#0 ? *((signed word*) main::st1#2) - *((signed word*) main::st2#2) -- vwsz1=_deref_pwsz2_minus__deref_pwsz3 + //SEG32 [11] (signed word) main::sw#0 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) -- vwsz1=_deref_pwsz2_minus__deref_pwsz3 ldy #0 sec lda (st1),y @@ -3333,7 +3333,7 @@ main: { jmp b2 //SEG42 main::@2 b2: - //SEG43 [16] (signed word) print_sword::w#1 ? (signed word) main::sw#0 -- vwsz1=vwsz2 + //SEG43 [16] (signed word) print_sword::w#1 ← (signed word) main::sw#0 -- vwsz1=vwsz2 lda sw sta print_sword.w lda sw+1 @@ -3358,7 +3358,7 @@ main: { jmp b7 //SEG51 main::@7 b7: - //SEG52 [20] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG52 [20] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st1 clc adc #2 @@ -3366,7 +3366,7 @@ main: { bcc !+ inc st1+1 !: - //SEG53 [21] (signed word*) main::st2#1 ? (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG53 [21] (signed word*) main::st2#1 ← (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st2 clc adc #2 @@ -3374,7 +3374,7 @@ main: { bcc !+ inc st2+1 !: - //SEG54 [22] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 + //SEG54 [22] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG55 [23] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $78) goto main::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$78 @@ -3415,17 +3415,17 @@ print_str: { rts //SEG66 print_str::@2 b2: - //SEG67 [29] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG67 [29] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG68 [30] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG68 [30] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG69 [31] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG69 [31] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -3456,7 +3456,7 @@ print_sword: { jmp b3 //SEG78 print_sword::@3 b3: - //SEG79 [35] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG79 [35] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -3485,7 +3485,7 @@ print_sword: { //SEG87 print_word // Print a word as HEX print_word: { - //SEG88 [39] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 + //SEG88 [39] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 lda print_sword.w+1 sta print_byte.b //SEG89 [40] call print_byte @@ -3497,7 +3497,7 @@ print_word: { jmp b1 //SEG93 print_word::@1 b1: - //SEG94 [41] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 + //SEG94 [41] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 lda print_sword.w sta print_byte.b //SEG95 [42] call print_byte @@ -3519,14 +3519,14 @@ print_byte: { .label _0 = $45 .label _2 = $46 .label b = $b - //SEG102 [45] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG102 [45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG103 [46] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG103 [46] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -3539,11 +3539,11 @@ print_byte: { jmp b1 //SEG108 print_byte::@1 b1: - //SEG109 [48] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG109 [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG110 [49] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG110 [49] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -3564,11 +3564,11 @@ print_byte: { // print_char(byte zeropage($c) ch) print_char: { .label ch = $c - //SEG118 [53] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 -- _deref_pbuz1=vbuz2 + //SEG118 [53] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG119 [54] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 + //SEG119 [54] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -3597,11 +3597,11 @@ print_cls: { jmp b1 //SEG127 print_cls::@1 b1: - //SEG128 [58] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG128 [58] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG129 [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG129 [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -3634,7 +3634,7 @@ sin16s_genb: { //SEG135 [135] phi from sin16s_genb to div32u16u [phi:sin16s_genb->div32u16u] div32u16u_from_sin16s_genb: jsr div32u16u - //SEG136 [64] (dword) div32u16u::return#3 ? (dword) div32u16u::return#0 -- vduz1=vduz2 + //SEG136 [64] (dword) div32u16u::return#3 ← (dword) div32u16u::return#0 -- vduz1=vduz2 lda div32u16u.return sta div32u16u.return_3 lda div32u16u.return+1 @@ -3646,7 +3646,7 @@ sin16s_genb: { jmp b2 //SEG137 sin16s_genb::@2 b2: - //SEG138 [65] (dword) sin16s_genb::step#0 ? (dword) div32u16u::return#3 -- vduz1=vduz2 + //SEG138 [65] (dword) sin16s_genb::step#0 ← (dword) div32u16u::return#3 -- vduz1=vduz2 lda div32u16u.return_3 sta step lda div32u16u.return_3+1 @@ -3684,14 +3684,14 @@ sin16s_genb: { jmp b1 //SEG147 sin16s_genb::@1 b1: - //SEG148 [67] (word) sin16sb::x#0 ? > (dword) sin16s_genb::x#2 -- vwuz1=_hi_vduz2 + //SEG148 [67] (word) sin16sb::x#0 ← > (dword) sin16s_genb::x#2 -- vwuz1=_hi_vduz2 lda x+2 sta sin16sb.x lda x+3 sta sin16sb.x+1 //SEG149 [68] call sin16sb jsr sin16sb - //SEG150 [69] (signed word) sin16sb::return#0 ? (signed word) sin16sb::return#1 -- vwsz1=vwsz2 + //SEG150 [69] (signed word) sin16sb::return#0 ← (signed word) sin16sb::return#1 -- vwsz1=vwsz2 lda sin16sb.return_1 sta sin16sb.return lda sin16sb.return_1+1 @@ -3699,19 +3699,19 @@ sin16s_genb: { jmp b3 //SEG151 sin16s_genb::@3 b3: - //SEG152 [70] (signed word~) sin16s_genb::$2 ? (signed word) sin16sb::return#0 -- vwsz1=vwsz2 + //SEG152 [70] (signed word~) sin16s_genb::$2 ← (signed word) sin16sb::return#0 -- vwsz1=vwsz2 lda sin16sb.return sta _2 lda sin16sb.return+1 sta _2+1 - //SEG153 [71] *((signed word*) sin16s_genb::sintab#2) ? (signed word~) sin16s_genb::$2 -- _deref_pwsz1=vwsz2 + //SEG153 [71] *((signed word*) sin16s_genb::sintab#2) ← (signed word~) sin16s_genb::$2 -- _deref_pwsz1=vwsz2 ldy #0 lda _2 sta (sintab),y iny lda _2+1 sta (sintab),y - //SEG154 [72] (signed word*) sin16s_genb::sintab#0 ? (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG154 [72] (signed word*) sin16s_genb::sintab#0 ← (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -3719,7 +3719,7 @@ sin16s_genb: { bcc !+ inc sintab+1 !: - //SEG155 [73] (dword) sin16s_genb::x#1 ? (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG155 [73] (dword) sin16s_genb::x#1 ← (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -3733,7 +3733,7 @@ sin16s_genb: { lda x+3 adc step+3 sta x+3 - //SEG156 [74] (word) sin16s_genb::i#1 ? ++ (word) sin16s_genb::i#2 -- vwuz1=_inc_vwuz1 + //SEG156 [74] (word) sin16s_genb::i#1 ← ++ (word) sin16s_genb::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -3786,7 +3786,7 @@ sin16sb: { jmp b4 //SEG162 sin16sb::@4 b4: - //SEG163 [78] (word) sin16sb::x#1 ? (word) sin16sb::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG163 [78] (word) sin16sb::x#1 ← (word) sin16sb::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc #mulu16_sel#1] -- register_copy //SEG184 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#5 [phi:sin16sb::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG185 [87] (word) mulu16_sel::return#18 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG185 [87] (word) mulu16_sel::return#18 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_18 lda mulu16_sel.return_17+1 @@ -3875,17 +3875,17 @@ sin16sb: { jmp b7 //SEG186 sin16sb::@7 b7: - //SEG187 [88] (word) sin16sb::x2#0 ? (word) mulu16_sel::return#18 -- vwuz1=vwuz2 + //SEG187 [88] (word) sin16sb::x2#0 ← (word) mulu16_sel::return#18 -- vwuz1=vwuz2 lda mulu16_sel.return_18 sta x2 lda mulu16_sel.return_18+1 sta x2+1 - //SEG188 [89] (word) mulu16_sel::v1#6 ? (word) sin16sb::x2#0 -- vwuz1=vwuz2 + //SEG188 [89] (word) mulu16_sel::v1#6 ← (word) sin16sb::x2#0 -- vwuz1=vwuz2 lda x2 sta mulu16_sel.v1 lda x2+1 sta mulu16_sel.v1+1 - //SEG189 [90] (word) mulu16_sel::v2#6 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG189 [90] (word) mulu16_sel::v2#6 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -3899,7 +3899,7 @@ sin16sb: { //SEG193 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#6 [phi:sin16sb::@7->mulu16_sel#1] -- register_copy //SEG194 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#6 [phi:sin16sb::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG195 [92] (word) mulu16_sel::return#19 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG195 [92] (word) mulu16_sel::return#19 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_19 lda mulu16_sel.return_17+1 @@ -3907,12 +3907,12 @@ sin16sb: { jmp b8 //SEG196 sin16sb::@8 b8: - //SEG197 [93] (word) sin16sb::x3#0 ? (word) mulu16_sel::return#19 -- vwuz1=vwuz2 + //SEG197 [93] (word) sin16sb::x3#0 ← (word) mulu16_sel::return#19 -- vwuz1=vwuz2 lda mulu16_sel.return_19 sta x3 lda mulu16_sel.return_19+1 sta x3+1 - //SEG198 [94] (word) mulu16_sel::v1#7 ? (word) sin16sb::x3#0 -- vwuz1=vwuz2 + //SEG198 [94] (word) mulu16_sel::v1#7 ← (word) sin16sb::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 @@ -3930,7 +3930,7 @@ sin16sb: { sta mulu16_sel.v2+1 //SEG203 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#7 [phi:sin16sb::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG204 [96] (word) mulu16_sel::return#20 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG204 [96] (word) mulu16_sel::return#20 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_20 lda mulu16_sel.return_17+1 @@ -3938,12 +3938,12 @@ sin16sb: { jmp b9 //SEG205 sin16sb::@9 b9: - //SEG206 [97] (word) sin16sb::x3_6#0 ? (word) mulu16_sel::return#20 -- vwuz1=vwuz2 + //SEG206 [97] (word) sin16sb::x3_6#0 ← (word) mulu16_sel::return#20 -- vwuz1=vwuz2 lda mulu16_sel.return_20 sta x3_6 lda mulu16_sel.return_20+1 sta x3_6+1 - //SEG207 [98] (word) sin16sb::usinx#0 ? (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG207 [98] (word) sin16sb::usinx#0 ← (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -3951,12 +3951,12 @@ sin16sb: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG208 [99] (word) mulu16_sel::v1#8 ? (word) sin16sb::x3#0 -- vwuz1=vwuz2 + //SEG208 [99] (word) mulu16_sel::v1#8 ← (word) sin16sb::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 sta mulu16_sel.v1+1 - //SEG209 [100] (word) mulu16_sel::v2#8 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG209 [100] (word) mulu16_sel::v2#8 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -3970,7 +3970,7 @@ sin16sb: { //SEG213 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#8 [phi:sin16sb::@9->mulu16_sel#1] -- register_copy //SEG214 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#8 [phi:sin16sb::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG215 [102] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG215 [102] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_10 lda mulu16_sel.return_17+1 @@ -3978,17 +3978,17 @@ sin16sb: { jmp b10 //SEG216 sin16sb::@10 b10: - //SEG217 [103] (word) sin16sb::x4#0 ? (word) mulu16_sel::return#10 -- vwuz1=vwuz2 + //SEG217 [103] (word) sin16sb::x4#0 ← (word) mulu16_sel::return#10 -- vwuz1=vwuz2 lda mulu16_sel.return_10 sta x4 lda mulu16_sel.return_10+1 sta x4+1 - //SEG218 [104] (word) mulu16_sel::v1#9 ? (word) sin16sb::x4#0 -- vwuz1=vwuz2 + //SEG218 [104] (word) mulu16_sel::v1#9 ← (word) sin16sb::x4#0 -- vwuz1=vwuz2 lda x4 sta mulu16_sel.v1 lda x4+1 sta mulu16_sel.v1+1 - //SEG219 [105] (word) mulu16_sel::v2#9 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG219 [105] (word) mulu16_sel::v2#9 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4002,7 +4002,7 @@ sin16sb: { //SEG223 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#9 [phi:sin16sb::@10->mulu16_sel#1] -- register_copy //SEG224 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#9 [phi:sin16sb::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG225 [107] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG225 [107] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_11 lda mulu16_sel.return_17+1 @@ -4010,12 +4010,12 @@ sin16sb: { jmp b11 //SEG226 sin16sb::@11 b11: - //SEG227 [108] (word) sin16sb::x5#0 ? (word) mulu16_sel::return#11 -- vwuz1=vwuz2 + //SEG227 [108] (word) sin16sb::x5#0 ← (word) mulu16_sel::return#11 -- vwuz1=vwuz2 lda mulu16_sel.return_11 sta x5 lda mulu16_sel.return_11+1 sta x5+1 - //SEG228 [109] (word) sin16sb::x5_128#0 ? (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 + //SEG228 [109] (word) sin16sb::x5_128#0 ← (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 lda x5+1 sta x5_128+1 lda x5 @@ -4026,7 +4026,7 @@ sin16sb: { ror x5_128 dey bne !- - //SEG229 [110] (word) sin16sb::usinx#1 ? (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG229 [110] (word) sin16sb::usinx#1 ← (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 lda usinx clc adc x5_128 @@ -4041,7 +4041,7 @@ sin16sb: { jmp b6 //SEG231 sin16sb::@6 b6: - //SEG232 [112] (signed word) sin16sb::sinx#1 ? - (signed word)(word) sin16sb::usinx#1 -- vwsz1=_neg_vwsz2 + //SEG232 [112] (signed word) sin16sb::sinx#1 ← - (signed word)(word) sin16sb::usinx#1 -- vwsz1=_neg_vwsz2 sec lda usinx_1 eor #$ff @@ -4065,7 +4065,7 @@ sin16sb: { rts //SEG238 sin16sb::@12 b12: - //SEG239 [115] (signed word~) sin16sb::return#5 ? (signed word)(word) sin16sb::usinx#1 -- vwsz1=vwsz2 + //SEG239 [115] (signed word~) sin16sb::return#5 ← (signed word)(word) sin16sb::usinx#1 -- vwsz1=vwsz2 lda usinx_1 sta return_5 lda usinx_1+1 @@ -4093,19 +4093,19 @@ mulu16_sel: { .label return_18 = $55 .label return_19 = $59 .label return_20 = $5d - //SEG241 [117] (word) mul16u::a#1 ? (word) mulu16_sel::v1#10 -- vwuz1=vwuz2 + //SEG241 [117] (word) mul16u::a#1 ← (word) mulu16_sel::v1#10 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG242 [118] (word) mul16u::b#0 ? (word) mulu16_sel::v2#10 -- vwuz1=vwuz2 + //SEG242 [118] (word) mul16u::b#0 ← (word) mulu16_sel::v2#10 -- vwuz1=vwuz2 lda v2 sta mul16u.b lda v2+1 sta mul16u.b+1 //SEG243 [119] call mul16u jsr mul16u - //SEG244 [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG244 [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return lda mul16u.res+1 @@ -4117,7 +4117,7 @@ mulu16_sel: { jmp b1 //SEG245 mulu16_sel::@1 b1: - //SEG246 [121] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 -- vduz1=vduz2 + //SEG246 [121] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 -- vduz1=vduz2 lda mul16u.return sta _0 lda mul16u.return+1 @@ -4126,7 +4126,7 @@ mulu16_sel: { sta _0+2 lda mul16u.return+3 sta _0+3 - //SEG247 [122] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 -- vduz1=vduz2_rol_vbuz3 + //SEG247 [122] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 -- vduz1=vduz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -4145,7 +4145,7 @@ mulu16_sel: { dex bne !- !e: - //SEG248 [123] (word) mulu16_sel::return#17 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG248 [123] (word) mulu16_sel::return#17 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return_17 lda _1+3 @@ -4166,7 +4166,7 @@ mul16u: { .label res = $25 .label b = $6f .label return = $71 - //SEG252 [125] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG252 [125] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -4200,7 +4200,7 @@ mul16u: { rts //SEG261 mul16u::@2 b2: - //SEG262 [129] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 + //SEG262 [129] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 lda a and #1 sta _1 @@ -4211,7 +4211,7 @@ mul16u: { jmp b4 //SEG264 mul16u::@4 b4: - //SEG265 [131] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG265 [131] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -4232,11 +4232,11 @@ mul16u: { jmp b3 //SEG268 mul16u::@3 b3: - //SEG269 [133] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG269 [133] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG270 [134] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG270 [134] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -4271,7 +4271,7 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG280 [137] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG280 [137] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -4279,12 +4279,12 @@ div32u16u: { jmp b1 //SEG281 div32u16u::@1 b1: - //SEG282 [138] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG282 [138] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta quotient_hi lda divr16u.return_2+1 sta quotient_hi+1 - //SEG283 [139] (word) divr16u::rem#4 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG283 [139] (word) divr16u::rem#4 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta divr16u.rem lda rem16u+1 @@ -4299,7 +4299,7 @@ div32u16u: { sta divr16u.dividend+1 //SEG287 [145] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG288 [141] (word) divr16u::return#3 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG288 [141] (word) divr16u::return#3 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_3 lda divr16u.return+1 @@ -4307,12 +4307,12 @@ div32u16u: { jmp b2 //SEG289 div32u16u::@2 b2: - //SEG290 [142] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG290 [142] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return_3 sta quotient_lo lda divr16u.return_3+1 sta quotient_lo+1 - //SEG291 [143] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG291 [143] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -4365,13 +4365,13 @@ divr16u: { jmp b1 //SEG305 divr16u::@1 b1: - //SEG306 [147] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG306 [147] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG307 [148] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 + //SEG307 [148] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG308 [149] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG308 [149] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -4382,7 +4382,7 @@ divr16u: { jmp b4 //SEG310 divr16u::@4 b4: - //SEG311 [151] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG311 [151] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -4393,10 +4393,10 @@ divr16u: { jmp b2 //SEG314 divr16u::@2 b2: - //SEG315 [153] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG315 [153] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG316 [154] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG316 [154] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG317 [155] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -4411,12 +4411,12 @@ divr16u: { jmp b5 //SEG318 divr16u::@5 b5: - //SEG319 [156] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG319 [156] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG320 [157] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG320 [157] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #div32u16u] div32u16u_from_sin16s_gen: jsr div32u16u - //SEG334 [165] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 -- vduz1=vduz2 + //SEG334 [165] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 -- vduz1=vduz2 lda div32u16u.return sta div32u16u.return_2 lda div32u16u.return+1 @@ -4479,7 +4479,7 @@ sin16s_gen: { jmp b2 //SEG335 sin16s_gen::@2 b2: - //SEG336 [166] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 -- vduz1=vduz2 + //SEG336 [166] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 -- vduz1=vduz2 lda div32u16u.return_2 sta step lda div32u16u.return_2+1 @@ -4517,7 +4517,7 @@ sin16s_gen: { jmp b1 //SEG345 sin16s_gen::@1 b1: - //SEG346 [168] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG346 [168] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -4528,7 +4528,7 @@ sin16s_gen: { sta sin16s.x+3 //SEG347 [169] call sin16s jsr sin16s - //SEG348 [170] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 -- vwsz1=vwsz2 + //SEG348 [170] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 -- vwsz1=vwsz2 lda sin16s.return_1 sta sin16s.return lda sin16s.return_1+1 @@ -4536,19 +4536,19 @@ sin16s_gen: { jmp b3 //SEG349 sin16s_gen::@3 b3: - //SEG350 [171] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 -- vwsz1=vwsz2 + //SEG350 [171] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 -- vwsz1=vwsz2 lda sin16s.return sta _1 lda sin16s.return+1 sta _1+1 - //SEG351 [172] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG351 [172] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG352 [173] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG352 [173] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -4556,7 +4556,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG353 [174] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG353 [174] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -4570,7 +4570,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG354 [175] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG354 [175] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4632,7 +4632,7 @@ sin16s: { jmp b4 //SEG360 sin16s::@4 b4: - //SEG361 [179] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG361 [179] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG376 [185] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG377 [186] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG377 [186] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG378 [187] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG378 [187] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4744,7 +4744,7 @@ sin16s: { //SEG382 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG383 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG384 [189] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG384 [189] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 @@ -4752,17 +4752,17 @@ sin16s: { jmp b7 //SEG385 sin16s::@7 b7: - //SEG386 [190] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG386 [190] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG387 [191] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 -- vwuz1=vwuz2 + //SEG387 [191] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 -- vwuz1=vwuz2 lda x2 sta mulu16_sel.v1 lda x2+1 sta mulu16_sel.v1+1 - //SEG388 [192] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG388 [192] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4776,7 +4776,7 @@ sin16s: { //SEG392 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG393 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG394 [194] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG394 [194] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_1 lda mulu16_sel.return_17+1 @@ -4784,12 +4784,12 @@ sin16s: { jmp b8 //SEG395 sin16s::@8 b8: - //SEG396 [195] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 -- vwuz1=vwuz2 + //SEG396 [195] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 -- vwuz1=vwuz2 lda mulu16_sel.return_1 sta x3 lda mulu16_sel.return_1+1 sta x3+1 - //SEG397 [196] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG397 [196] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 @@ -4807,7 +4807,7 @@ sin16s: { sta mulu16_sel.v2+1 //SEG402 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG403 [198] (word) mulu16_sel::return#14 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG403 [198] (word) mulu16_sel::return#14 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_14 lda mulu16_sel.return_17+1 @@ -4815,12 +4815,12 @@ sin16s: { jmp b9 //SEG404 sin16s::@9 b9: - //SEG405 [199] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#14 -- vwuz1=vwuz2 + //SEG405 [199] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#14 -- vwuz1=vwuz2 lda mulu16_sel.return_14 sta x3_6 lda mulu16_sel.return_14+1 sta x3_6+1 - //SEG406 [200] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG406 [200] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -4828,12 +4828,12 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG407 [201] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG407 [201] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 sta mulu16_sel.v1+1 - //SEG408 [202] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG408 [202] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4847,7 +4847,7 @@ sin16s: { //SEG412 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG413 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG414 [204] (word) mulu16_sel::return#15 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG414 [204] (word) mulu16_sel::return#15 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_15 lda mulu16_sel.return_17+1 @@ -4855,17 +4855,17 @@ sin16s: { jmp b10 //SEG415 sin16s::@10 b10: - //SEG416 [205] (word) sin16s::x4#0 ? (word) mulu16_sel::return#15 -- vwuz1=vwuz2 + //SEG416 [205] (word) sin16s::x4#0 ← (word) mulu16_sel::return#15 -- vwuz1=vwuz2 lda mulu16_sel.return_15 sta x4 lda mulu16_sel.return_15+1 sta x4+1 - //SEG417 [206] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 -- vwuz1=vwuz2 + //SEG417 [206] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 -- vwuz1=vwuz2 lda x4 sta mulu16_sel.v1 lda x4+1 sta mulu16_sel.v1+1 - //SEG418 [207] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG418 [207] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4879,7 +4879,7 @@ sin16s: { //SEG422 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG423 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG424 [209] (word) mulu16_sel::return#16 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG424 [209] (word) mulu16_sel::return#16 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return_16 lda mulu16_sel.return_17+1 @@ -4887,12 +4887,12 @@ sin16s: { jmp b11 //SEG425 sin16s::@11 b11: - //SEG426 [210] (word) sin16s::x5#0 ? (word) mulu16_sel::return#16 -- vwuz1=vwuz2 + //SEG426 [210] (word) sin16s::x5#0 ← (word) mulu16_sel::return#16 -- vwuz1=vwuz2 lda mulu16_sel.return_16 sta x5 lda mulu16_sel.return_16+1 sta x5+1 - //SEG427 [211] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 + //SEG427 [211] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 lda x5+1 sta x5_128+1 lda x5 @@ -4903,7 +4903,7 @@ sin16s: { ror x5_128 dey bne !- - //SEG428 [212] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG428 [212] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 lda usinx clc adc x5_128 @@ -4918,7 +4918,7 @@ sin16s: { jmp b6 //SEG430 sin16s::@6 b6: - //SEG431 [214] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 + //SEG431 [214] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 sec lda usinx_1 eor #$ff @@ -4942,7 +4942,7 @@ sin16s: { rts //SEG437 sin16s::@12 b12: - //SEG438 [217] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 + //SEG438 [217] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 lda usinx_1 sta return_5 lda usinx_1+1 @@ -4952,244 +4952,244 @@ sin16s: { print_hextab: .text "0123456789abcdef" REGISTER UPLIFT POTENTIAL REGISTERS -Statement [11] (signed word) main::sw#0 ? *((signed word*) main::st1#2) - *((signed word*) main::st2#2) [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ( main:2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ) always clobbers reg byte a reg byte y +Statement [11] (signed word) main::sw#0 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ( main:2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ main::i#2 main::i#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:6 [ main::i#2 main::i#1 ] Statement [12] if((signed word) main::sw#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ( main:2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ) always clobbers reg byte a -Statement [16] (signed word) print_sword::w#1 ? (signed word) main::sw#0 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ( main:2 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a -Statement [20] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ( main:2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ) always clobbers reg byte a -Statement [21] (signed word*) main::st2#1 ? (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ( main:2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [16] (signed word) print_sword::w#1 ← (signed word) main::sw#0 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ( main:2 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a +Statement [20] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ( main:2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [21] (signed word*) main::st2#1 ← (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ( main:2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ) always clobbers reg byte a Statement [27] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:14 [ main::st1#2 main::st2#2 main::i#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:19 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [29] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:14 [ main::st1#2 main::st2#2 main::i#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:19 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y +Statement [29] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:14 [ main::st1#2 main::st2#2 main::i#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:19 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y Statement [32] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#48 print_sword::w#1 ] ( main:2::print_sword:17 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a -Statement [35] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:17 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a -Statement [39] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a -Statement [41] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a -Statement [45] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a +Statement [35] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:17 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a +Statement [39] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a +Statement [41] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a +Statement [45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:11 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] -Statement [48] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a -Statement [53] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:17::print_char:34 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#33 ] ) always clobbers reg byte y +Statement [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a +Statement [53] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:17::print_char:34 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#33 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:11 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] -Statement [58] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [58] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [60] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:9 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [64] (dword) div32u16u::return#3 ? (dword) div32u16u::return#0 [ div32u16u::return#3 ] ( main:2::sin16s_genb:7 [ div32u16u::return#3 ] ) always clobbers reg byte a -Statement [65] (dword) sin16s_genb::step#0 ? (dword) div32u16u::return#3 [ sin16s_genb::step#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 ] ) always clobbers reg byte a -Statement [67] (word) sin16sb::x#0 ? > (dword) sin16s_genb::x#2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ) always clobbers reg byte a -Statement [69] (signed word) sin16sb::return#0 ? (signed word) sin16sb::return#1 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ) always clobbers reg byte a -Statement [70] (signed word~) sin16s_genb::$2 ? (signed word) sin16sb::return#0 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ) always clobbers reg byte a -Statement [71] *((signed word*) sin16s_genb::sintab#2) ? (signed word~) sin16s_genb::$2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ) always clobbers reg byte a reg byte y -Statement [72] (signed word*) sin16s_genb::sintab#0 ? (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ) always clobbers reg byte a -Statement [73] (dword) sin16s_genb::x#1 ? (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ) always clobbers reg byte a +Statement [64] (dword) div32u16u::return#3 ← (dword) div32u16u::return#0 [ div32u16u::return#3 ] ( main:2::sin16s_genb:7 [ div32u16u::return#3 ] ) always clobbers reg byte a +Statement [65] (dword) sin16s_genb::step#0 ← (dword) div32u16u::return#3 [ sin16s_genb::step#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 ] ) always clobbers reg byte a +Statement [67] (word) sin16sb::x#0 ← > (dword) sin16s_genb::x#2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ) always clobbers reg byte a +Statement [69] (signed word) sin16sb::return#0 ← (signed word) sin16sb::return#1 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ) always clobbers reg byte a +Statement [70] (signed word~) sin16s_genb::$2 ← (signed word) sin16sb::return#0 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ) always clobbers reg byte a +Statement [71] *((signed word*) sin16s_genb::sintab#2) ← (signed word~) sin16s_genb::$2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ) always clobbers reg byte a reg byte y +Statement [72] (signed word*) sin16s_genb::sintab#0 ← (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ) always clobbers reg byte a +Statement [73] (dword) sin16s_genb::x#1 ← (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ) always clobbers reg byte a Statement [75] if((word) sin16s_genb::i#1<(const word) main::wavelength#0) goto sin16s_genb::@1 [ sin16s_genb::step#0 sin16s_genb::x#1 sin16s_genb::sintab#0 sin16s_genb::i#1 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#1 sin16s_genb::sintab#0 sin16s_genb::i#1 ] ) always clobbers reg byte a Statement [77] if((word) sin16sb::x#0<(const word) PI_u4f12#0) goto sin16sb::@1 [ sin16sb::x#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ) always clobbers reg byte a -Statement [78] (word) sin16sb::x#1 ? (word) sin16sb::x#0 - (const word) PI_u4f12#0 [ sin16sb::x#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#1 ] ) always clobbers reg byte a +Statement [78] (word) sin16sb::x#1 ← (word) sin16sb::x#0 - (const word) PI_u4f12#0 [ sin16sb::x#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#1 ] ) always clobbers reg byte a Statement [80] if((word) sin16sb::x#4<(const word) PI_HALF_u4f12#0) goto sin16sb::@2 [ sin16sb::x#4 sin16sb::isUpper#2 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#4 sin16sb::isUpper#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ sin16sb::isUpper#2 ] -Statement [81] (word) sin16sb::x#2 ? (const word) PI_u4f12#0 - (word) sin16sb::x#4 [ sin16sb::isUpper#2 sin16sb::x#2 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x#2 ] ) always clobbers reg byte a -Statement [83] (word) sin16sb::x1#0 ? (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16sb::isUpper#2 sin16sb::x1#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 ] ) always clobbers reg byte a -Statement [84] (word) mulu16_sel::v1#5 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ) always clobbers reg byte a -Statement [85] (word) mulu16_sel::v2#5 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ) always clobbers reg byte a -Statement [87] (word) mulu16_sel::return#18 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ) always clobbers reg byte a -Statement [88] (word) sin16sb::x2#0 ? (word) mulu16_sel::return#18 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ) always clobbers reg byte a -Statement [89] (word) mulu16_sel::v1#6 ? (word) sin16sb::x2#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ) always clobbers reg byte a -Statement [90] (word) mulu16_sel::v2#6 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ) always clobbers reg byte a -Statement [92] (word) mulu16_sel::return#19 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ) always clobbers reg byte a -Statement [93] (word) sin16sb::x3#0 ? (word) mulu16_sel::return#19 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ) always clobbers reg byte a -Statement [94] (word) mulu16_sel::v1#7 ? (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ) always clobbers reg byte a -Statement [96] (word) mulu16_sel::return#20 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ) always clobbers reg byte a -Statement [97] (word) sin16sb::x3_6#0 ? (word) mulu16_sel::return#20 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ) always clobbers reg byte a -Statement [98] (word) sin16sb::usinx#0 ? (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ) always clobbers reg byte a -Statement [99] (word) mulu16_sel::v1#8 ? (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ) always clobbers reg byte a -Statement [100] (word) mulu16_sel::v2#8 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ) always clobbers reg byte a -Statement [102] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [103] (word) sin16sb::x4#0 ? (word) mulu16_sel::return#10 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ) always clobbers reg byte a -Statement [104] (word) mulu16_sel::v1#9 ? (word) sin16sb::x4#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ) always clobbers reg byte a -Statement [105] (word) mulu16_sel::v2#9 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ) always clobbers reg byte a -Statement [107] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [108] (word) sin16sb::x5#0 ? (word) mulu16_sel::return#11 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ) always clobbers reg byte a -Statement [109] (word) sin16sb::x5_128#0 ? (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [81] (word) sin16sb::x#2 ← (const word) PI_u4f12#0 - (word) sin16sb::x#4 [ sin16sb::isUpper#2 sin16sb::x#2 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x#2 ] ) always clobbers reg byte a +Statement [83] (word) sin16sb::x1#0 ← (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16sb::isUpper#2 sin16sb::x1#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 ] ) always clobbers reg byte a +Statement [84] (word) mulu16_sel::v1#5 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ) always clobbers reg byte a +Statement [85] (word) mulu16_sel::v2#5 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ) always clobbers reg byte a +Statement [87] (word) mulu16_sel::return#18 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ) always clobbers reg byte a +Statement [88] (word) sin16sb::x2#0 ← (word) mulu16_sel::return#18 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ) always clobbers reg byte a +Statement [89] (word) mulu16_sel::v1#6 ← (word) sin16sb::x2#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ) always clobbers reg byte a +Statement [90] (word) mulu16_sel::v2#6 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ) always clobbers reg byte a +Statement [92] (word) mulu16_sel::return#19 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ) always clobbers reg byte a +Statement [93] (word) sin16sb::x3#0 ← (word) mulu16_sel::return#19 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ) always clobbers reg byte a +Statement [94] (word) mulu16_sel::v1#7 ← (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ) always clobbers reg byte a +Statement [96] (word) mulu16_sel::return#20 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ) always clobbers reg byte a +Statement [97] (word) sin16sb::x3_6#0 ← (word) mulu16_sel::return#20 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ) always clobbers reg byte a +Statement [98] (word) sin16sb::usinx#0 ← (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ) always clobbers reg byte a +Statement [99] (word) mulu16_sel::v1#8 ← (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ) always clobbers reg byte a +Statement [100] (word) mulu16_sel::v2#8 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ) always clobbers reg byte a +Statement [102] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [103] (word) sin16sb::x4#0 ← (word) mulu16_sel::return#10 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ) always clobbers reg byte a +Statement [104] (word) mulu16_sel::v1#9 ← (word) sin16sb::x4#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ) always clobbers reg byte a +Statement [105] (word) mulu16_sel::v2#9 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ) always clobbers reg byte a +Statement [107] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [108] (word) sin16sb::x5#0 ← (word) mulu16_sel::return#11 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ) always clobbers reg byte a +Statement [109] (word) sin16sb::x5_128#0 ← (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:25 [ sin16sb::isUpper#2 ] -Statement [110] (word) sin16sb::usinx#1 ? (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 [ sin16sb::isUpper#2 sin16sb::usinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#1 ] ) always clobbers reg byte a -Statement [112] (signed word) sin16sb::sinx#1 ? - (signed word)(word) sin16sb::usinx#1 [ sin16sb::sinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::sinx#1 ] ) always clobbers reg byte a -Statement [115] (signed word~) sin16sb::return#5 ? (signed word)(word) sin16sb::usinx#1 [ sin16sb::return#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#5 ] ) always clobbers reg byte a -Statement [117] (word) mul16u::a#1 ? (word) mulu16_sel::v1#10 [ mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ) always clobbers reg byte a +Statement [110] (word) sin16sb::usinx#1 ← (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 [ sin16sb::isUpper#2 sin16sb::usinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#1 ] ) always clobbers reg byte a +Statement [112] (signed word) sin16sb::sinx#1 ← - (signed word)(word) sin16sb::usinx#1 [ sin16sb::sinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::sinx#1 ] ) always clobbers reg byte a +Statement [115] (signed word~) sin16sb::return#5 ← (signed word)(word) sin16sb::usinx#1 [ sin16sb::return#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#5 ] ) always clobbers reg byte a +Statement [117] (word) mul16u::a#1 ← (word) mulu16_sel::v1#10 [ mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:34 [ mulu16_sel::select#10 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:60 [ sin16s::isUpper#2 ] -Statement [118] (word) mul16u::b#0 ? (word) mulu16_sel::v2#10 [ mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a -Statement [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mulu16_sel::select#10 mul16u::return#2 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] ) always clobbers reg byte a -Statement [121] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 [ mulu16_sel::select#10 mulu16_sel::$0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [122] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 [ mulu16_sel::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [123] (word) mulu16_sel::return#17 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#17 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#17 ] ) always clobbers reg byte a -Statement [125] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [118] (word) mul16u::b#0 ← (word) mulu16_sel::v2#10 [ mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a +Statement [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mulu16_sel::select#10 mul16u::return#2 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] ) always clobbers reg byte a +Statement [121] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 [ mulu16_sel::select#10 mulu16_sel::$0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [122] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 [ mulu16_sel::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [123] (word) mulu16_sel::return#17 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#17 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#17 ] ) always clobbers reg byte a +Statement [125] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a Statement [127] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [129] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [131] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a -Statement [137] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ divr16u::return#2 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [138] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [139] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [141] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#3 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [142] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [143] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::return#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [148] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [129] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [131] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [137] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ divr16u::return#2 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [138] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [139] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [141] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#3 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [142] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [143] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::return#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [148] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:51 [ divr16u::i#2 divr16u::i#1 ] -Statement [151] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [151] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [155] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [157] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [161] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [165] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [166] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a -Statement [168] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [170] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [171] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a -Statement [172] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y -Statement [173] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a -Statement [174] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [157] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [161] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [165] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [166] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a +Statement [168] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [170] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [171] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a +Statement [172] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y +Statement [173] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [174] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a Statement [176] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ) always clobbers reg byte a Statement [178] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [179] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [179] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [181] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [182] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [184] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [182] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [184] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:60 [ sin16s::isUpper#2 ] -Statement [185] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [186] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [187] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [189] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [190] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [191] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [192] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [194] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [195] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [196] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [198] (word) mulu16_sel::return#14 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ) always clobbers reg byte a -Statement [199] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#14 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [200] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [201] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [202] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [204] (word) mulu16_sel::return#15 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ) always clobbers reg byte a -Statement [205] (word) sin16s::x4#0 ? (word) mulu16_sel::return#15 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [206] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [207] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [209] (word) mulu16_sel::return#16 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ) always clobbers reg byte a -Statement [210] (word) sin16s::x5#0 ? (word) mulu16_sel::return#16 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [211] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [212] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [214] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [217] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [11] (signed word) main::sw#0 ? *((signed word*) main::st1#2) - *((signed word*) main::st2#2) [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ( main:2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ) always clobbers reg byte a reg byte y +Statement [185] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [186] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [187] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [189] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [190] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [191] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [192] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [194] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [195] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [196] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [198] (word) mulu16_sel::return#14 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ) always clobbers reg byte a +Statement [199] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#14 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [200] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [201] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [202] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [204] (word) mulu16_sel::return#15 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ) always clobbers reg byte a +Statement [205] (word) sin16s::x4#0 ← (word) mulu16_sel::return#15 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [206] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [207] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [209] (word) mulu16_sel::return#16 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ) always clobbers reg byte a +Statement [210] (word) sin16s::x5#0 ← (word) mulu16_sel::return#16 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [211] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [212] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [214] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [217] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [11] (signed word) main::sw#0 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ( main:2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ) always clobbers reg byte a reg byte y Statement [12] if((signed word) main::sw#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ( main:2 [ main::st1#2 main::st2#2 print_char_cursor#49 main::i#2 main::sw#0 ] ) always clobbers reg byte a -Statement [16] (signed word) print_sword::w#1 ? (signed word) main::sw#0 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ( main:2 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a -Statement [20] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ( main:2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ) always clobbers reg byte a -Statement [21] (signed word*) main::st2#1 ? (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ( main:2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [16] (signed word) print_sword::w#1 ← (signed word) main::sw#0 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ( main:2 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a +Statement [20] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ( main:2 [ main::st2#2 main::i#2 main::st1#1 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [21] (signed word*) main::st2#1 ← (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ( main:2 [ main::i#2 main::st1#1 main::st2#1 print_char_cursor#2 ] ) always clobbers reg byte a Statement [27] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:14 [ main::st1#2 main::st2#2 main::i#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:19 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [29] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:14 [ main::st1#2 main::st2#2 main::i#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:19 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y +Statement [29] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:14 [ main::st1#2 main::st2#2 main::i#2 main::sw#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:19 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y Statement [32] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#48 print_sword::w#1 ] ( main:2::print_sword:17 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#48 print_sword::w#1 ] ) always clobbers reg byte a -Statement [35] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:17 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a -Statement [39] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a -Statement [41] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a -Statement [45] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a -Statement [48] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a -Statement [53] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:17::print_char:34 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#33 ] ) always clobbers reg byte y -Statement [58] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [35] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 [ print_char_cursor#12 print_sword::w#0 ] ( main:2::print_sword:17 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_sword::w#0 ] ) always clobbers reg byte a +Statement [39] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 [ print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#43 print_byte::b#0 ] ) always clobbers reg byte a +Statement [41] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 [ print_char_cursor#12 print_byte::b#1 ] ( main:2::print_sword:17::print_word:37 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::b#1 ] ) always clobbers reg byte a +Statement [45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#46 print_byte::$0 ] ) always clobbers reg byte a +Statement [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#12 print_byte::$2 ] ( main:2::print_sword:17::print_word:37::print_byte:40 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#12 print_byte::$2 ] main:2::print_sword:17::print_word:37::print_byte:42 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#12 print_byte::$2 ] ) always clobbers reg byte a +Statement [53] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 [ print_char_cursor#33 ] ( main:2::print_sword:17::print_char:34 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#1 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:47 [ main::st1#2 main::st2#2 main::i#2 print_byte::b#2 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:40::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_sword::w#3 print_char_cursor#33 ] main:2::print_sword:17::print_word:37::print_byte:42::print_char:50 [ main::st1#2 main::st2#2 main::i#2 print_char_cursor#33 ] ) always clobbers reg byte y +Statement [58] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [60] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:9 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [64] (dword) div32u16u::return#3 ? (dword) div32u16u::return#0 [ div32u16u::return#3 ] ( main:2::sin16s_genb:7 [ div32u16u::return#3 ] ) always clobbers reg byte a -Statement [65] (dword) sin16s_genb::step#0 ? (dword) div32u16u::return#3 [ sin16s_genb::step#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 ] ) always clobbers reg byte a -Statement [67] (word) sin16sb::x#0 ? > (dword) sin16s_genb::x#2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ) always clobbers reg byte a -Statement [69] (signed word) sin16sb::return#0 ? (signed word) sin16sb::return#1 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ) always clobbers reg byte a -Statement [70] (signed word~) sin16s_genb::$2 ? (signed word) sin16sb::return#0 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ) always clobbers reg byte a -Statement [71] *((signed word*) sin16s_genb::sintab#2) ? (signed word~) sin16s_genb::$2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ) always clobbers reg byte a reg byte y -Statement [72] (signed word*) sin16s_genb::sintab#0 ? (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ) always clobbers reg byte a -Statement [73] (dword) sin16s_genb::x#1 ? (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ) always clobbers reg byte a +Statement [64] (dword) div32u16u::return#3 ← (dword) div32u16u::return#0 [ div32u16u::return#3 ] ( main:2::sin16s_genb:7 [ div32u16u::return#3 ] ) always clobbers reg byte a +Statement [65] (dword) sin16s_genb::step#0 ← (dword) div32u16u::return#3 [ sin16s_genb::step#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 ] ) always clobbers reg byte a +Statement [67] (word) sin16sb::x#0 ← > (dword) sin16s_genb::x#2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ) always clobbers reg byte a +Statement [69] (signed word) sin16sb::return#0 ← (signed word) sin16sb::return#1 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#0 ] ) always clobbers reg byte a +Statement [70] (signed word~) sin16s_genb::$2 ← (signed word) sin16sb::return#0 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16s_genb::$2 ] ) always clobbers reg byte a +Statement [71] *((signed word*) sin16s_genb::sintab#2) ← (signed word~) sin16s_genb::$2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 ] ) always clobbers reg byte a reg byte y +Statement [72] (signed word*) sin16s_genb::sintab#0 ← (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::i#2 sin16s_genb::sintab#0 ] ) always clobbers reg byte a +Statement [73] (dword) sin16s_genb::x#1 ← (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::i#2 sin16s_genb::x#1 sin16s_genb::sintab#0 ] ) always clobbers reg byte a Statement [75] if((word) sin16s_genb::i#1<(const word) main::wavelength#0) goto sin16s_genb::@1 [ sin16s_genb::step#0 sin16s_genb::x#1 sin16s_genb::sintab#0 sin16s_genb::i#1 ] ( main:2::sin16s_genb:7 [ sin16s_genb::step#0 sin16s_genb::x#1 sin16s_genb::sintab#0 sin16s_genb::i#1 ] ) always clobbers reg byte a Statement [77] if((word) sin16sb::x#0<(const word) PI_u4f12#0) goto sin16sb::@1 [ sin16sb::x#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#0 ] ) always clobbers reg byte a -Statement [78] (word) sin16sb::x#1 ? (word) sin16sb::x#0 - (const word) PI_u4f12#0 [ sin16sb::x#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#1 ] ) always clobbers reg byte a +Statement [78] (word) sin16sb::x#1 ← (word) sin16sb::x#0 - (const word) PI_u4f12#0 [ sin16sb::x#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#1 ] ) always clobbers reg byte a Statement [80] if((word) sin16sb::x#4<(const word) PI_HALF_u4f12#0) goto sin16sb::@2 [ sin16sb::x#4 sin16sb::isUpper#2 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::x#4 sin16sb::isUpper#2 ] ) always clobbers reg byte a -Statement [81] (word) sin16sb::x#2 ? (const word) PI_u4f12#0 - (word) sin16sb::x#4 [ sin16sb::isUpper#2 sin16sb::x#2 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x#2 ] ) always clobbers reg byte a -Statement [83] (word) sin16sb::x1#0 ? (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16sb::isUpper#2 sin16sb::x1#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 ] ) always clobbers reg byte a -Statement [84] (word) mulu16_sel::v1#5 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ) always clobbers reg byte a -Statement [85] (word) mulu16_sel::v2#5 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ) always clobbers reg byte a -Statement [87] (word) mulu16_sel::return#18 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ) always clobbers reg byte a -Statement [88] (word) sin16sb::x2#0 ? (word) mulu16_sel::return#18 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ) always clobbers reg byte a -Statement [89] (word) mulu16_sel::v1#6 ? (word) sin16sb::x2#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ) always clobbers reg byte a -Statement [90] (word) mulu16_sel::v2#6 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ) always clobbers reg byte a -Statement [92] (word) mulu16_sel::return#19 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ) always clobbers reg byte a -Statement [93] (word) sin16sb::x3#0 ? (word) mulu16_sel::return#19 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ) always clobbers reg byte a -Statement [94] (word) mulu16_sel::v1#7 ? (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ) always clobbers reg byte a -Statement [96] (word) mulu16_sel::return#20 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ) always clobbers reg byte a -Statement [97] (word) sin16sb::x3_6#0 ? (word) mulu16_sel::return#20 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ) always clobbers reg byte a -Statement [98] (word) sin16sb::usinx#0 ? (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ) always clobbers reg byte a -Statement [99] (word) mulu16_sel::v1#8 ? (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ) always clobbers reg byte a -Statement [100] (word) mulu16_sel::v2#8 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ) always clobbers reg byte a -Statement [102] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [103] (word) sin16sb::x4#0 ? (word) mulu16_sel::return#10 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ) always clobbers reg byte a -Statement [104] (word) mulu16_sel::v1#9 ? (word) sin16sb::x4#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ) always clobbers reg byte a -Statement [105] (word) mulu16_sel::v2#9 ? (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ) always clobbers reg byte a -Statement [107] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [108] (word) sin16sb::x5#0 ? (word) mulu16_sel::return#11 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ) always clobbers reg byte a -Statement [109] (word) sin16sb::x5_128#0 ? (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [110] (word) sin16sb::usinx#1 ? (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 [ sin16sb::isUpper#2 sin16sb::usinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#1 ] ) always clobbers reg byte a -Statement [112] (signed word) sin16sb::sinx#1 ? - (signed word)(word) sin16sb::usinx#1 [ sin16sb::sinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::sinx#1 ] ) always clobbers reg byte a -Statement [115] (signed word~) sin16sb::return#5 ? (signed word)(word) sin16sb::usinx#1 [ sin16sb::return#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#5 ] ) always clobbers reg byte a -Statement [117] (word) mul16u::a#1 ? (word) mulu16_sel::v1#10 [ mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ) always clobbers reg byte a -Statement [118] (word) mul16u::b#0 ? (word) mulu16_sel::v2#10 [ mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a -Statement [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mulu16_sel::select#10 mul16u::return#2 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] ) always clobbers reg byte a -Statement [121] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 [ mulu16_sel::select#10 mulu16_sel::$0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [122] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 [ mulu16_sel::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [123] (word) mulu16_sel::return#17 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#17 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#17 ] ) always clobbers reg byte a -Statement [125] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [81] (word) sin16sb::x#2 ← (const word) PI_u4f12#0 - (word) sin16sb::x#4 [ sin16sb::isUpper#2 sin16sb::x#2 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x#2 ] ) always clobbers reg byte a +Statement [83] (word) sin16sb::x1#0 ← (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16sb::isUpper#2 sin16sb::x1#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 ] ) always clobbers reg byte a +Statement [84] (word) mulu16_sel::v1#5 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 ] ) always clobbers reg byte a +Statement [85] (word) mulu16_sel::v2#5 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#5 mulu16_sel::v2#5 ] ) always clobbers reg byte a +Statement [87] (word) mulu16_sel::return#18 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#18 ] ) always clobbers reg byte a +Statement [88] (word) sin16sb::x2#0 ← (word) mulu16_sel::return#18 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x2#0 ] ) always clobbers reg byte a +Statement [89] (word) mulu16_sel::v1#6 ← (word) sin16sb::x2#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 ] ) always clobbers reg byte a +Statement [90] (word) mulu16_sel::v2#6 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v1#6 mulu16_sel::v2#6 ] ) always clobbers reg byte a +Statement [92] (word) mulu16_sel::return#19 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#19 ] ) always clobbers reg byte a +Statement [93] (word) sin16sb::x3#0 ← (word) mulu16_sel::return#19 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 ] ) always clobbers reg byte a +Statement [94] (word) mulu16_sel::v1#7 ← (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v1#7 ] ) always clobbers reg byte a +Statement [96] (word) mulu16_sel::return#20 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#20 ] ) always clobbers reg byte a +Statement [97] (word) sin16sb::x3_6#0 ← (word) mulu16_sel::return#20 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::x3_6#0 ] ) always clobbers reg byte a +Statement [98] (word) sin16sb::usinx#0 ← (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 sin16sb::usinx#0 ] ) always clobbers reg byte a +Statement [99] (word) mulu16_sel::v1#8 ← (word) sin16sb::x3#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 ] ) always clobbers reg byte a +Statement [100] (word) mulu16_sel::v2#8 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#8 mulu16_sel::v2#8 ] ) always clobbers reg byte a +Statement [102] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [103] (word) sin16sb::x4#0 ← (word) mulu16_sel::return#10 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 sin16sb::x4#0 ] ) always clobbers reg byte a +Statement [104] (word) mulu16_sel::v1#9 ← (word) sin16sb::x4#0 [ sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v1#9 ] ) always clobbers reg byte a +Statement [105] (word) mulu16_sel::v2#9 ← (word) sin16sb::x1#0 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v1#9 mulu16_sel::v2#9 ] ) always clobbers reg byte a +Statement [107] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#17 [ sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [108] (word) sin16sb::x5#0 ← (word) mulu16_sel::return#11 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5#0 ] ) always clobbers reg byte a +Statement [109] (word) sin16sb::x5_128#0 ← (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 sin16sb::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [110] (word) sin16sb::usinx#1 ← (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 [ sin16sb::isUpper#2 sin16sb::usinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#1 ] ) always clobbers reg byte a +Statement [112] (signed word) sin16sb::sinx#1 ← - (signed word)(word) sin16sb::usinx#1 [ sin16sb::sinx#1 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::sinx#1 ] ) always clobbers reg byte a +Statement [115] (signed word~) sin16sb::return#5 ← (signed word)(word) sin16sb::usinx#1 [ sin16sb::return#5 ] ( main:2::sin16s_genb:7::sin16sb:68 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::return#5 ] ) always clobbers reg byte a +Statement [117] (word) mul16u::a#1 ← (word) mulu16_sel::v1#10 [ mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#10 mulu16_sel::select#10 mul16u::a#1 ] ) always clobbers reg byte a +Statement [118] (word) mul16u::b#0 ← (word) mulu16_sel::v2#10 [ mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a +Statement [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mulu16_sel::select#10 mul16u::return#2 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::return#2 ] ) always clobbers reg byte a +Statement [121] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 [ mulu16_sel::select#10 mulu16_sel::$0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [122] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 [ mulu16_sel::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [123] (word) mulu16_sel::return#17 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#17 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#17 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#17 ] ) always clobbers reg byte a +Statement [125] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a Statement [127] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [129] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [131] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a -Statement [137] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ divr16u::return#2 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a -Statement [138] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [139] (word) divr16u::rem#4 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [141] (word) divr16u::return#3 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#3 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a -Statement [142] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [143] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::return#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [148] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [151] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [129] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [131] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:86::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:91::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:95::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:101::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::x1#0 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_genb:7::sin16sb:68::mulu16_sel:106::mul16u:119 [ sin16s_genb::step#0 sin16s_genb::x#2 sin16s_genb::sintab#2 sin16s_genb::i#2 sin16sb::isUpper#2 sin16sb::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:188::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:193::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:197::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:203::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:5::sin16s:169::mulu16_sel:208::mul16u:119 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#10 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [137] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ divr16u::return#2 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ divr16u::return#2 rem16u#1 ] ) always clobbers reg byte a +Statement [138] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [139] (word) divr16u::rem#4 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [141] (word) divr16u::return#3 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#3 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 divr16u::return#3 ] ) always clobbers reg byte a +Statement [142] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [143] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_genb:7::div32u16u:63 [ div32u16u::return#0 ] main:2::sin16s_gen:5::div32u16u:164 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [148] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [151] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [155] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [157] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [161] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [165] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [166] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a -Statement [168] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [170] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [171] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a -Statement [172] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y -Statement [173] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a -Statement [174] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [157] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [161] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_genb:7::div32u16u:63::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:136 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_genb:7::div32u16u:63::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:5::div32u16u:164::divr16u:140 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [165] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:5 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [166] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 ] ) always clobbers reg byte a +Statement [168] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [170] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [171] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a +Statement [172] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y +Statement [173] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [174] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a Statement [176] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ( main:2::sin16s_gen:5 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ) always clobbers reg byte a Statement [178] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [179] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [179] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [181] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [182] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [184] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y -Statement [185] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [186] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [187] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [189] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [190] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [191] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [192] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [194] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [195] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [196] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [198] (word) mulu16_sel::return#14 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ) always clobbers reg byte a -Statement [199] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#14 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [200] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [201] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [202] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [204] (word) mulu16_sel::return#15 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ) always clobbers reg byte a -Statement [205] (word) sin16s::x4#0 ? (word) mulu16_sel::return#15 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [206] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [207] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [209] (word) mulu16_sel::return#16 ? (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ) always clobbers reg byte a -Statement [210] (word) sin16s::x5#0 ? (word) mulu16_sel::return#16 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [211] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [212] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [214] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [217] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [182] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [184] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [185] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [186] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [187] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#0 mulu16_sel::v2#0 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [189] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [190] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [191] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [192] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#1 mulu16_sel::v2#1 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [194] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [195] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [196] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [198] (word) mulu16_sel::return#14 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#14 ] ) always clobbers reg byte a +Statement [199] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#14 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [200] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [201] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [202] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#3 mulu16_sel::v2#3 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [204] (word) mulu16_sel::return#15 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#15 ] ) always clobbers reg byte a +Statement [205] (word) sin16s::x4#0 ← (word) mulu16_sel::return#15 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [206] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [207] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 mulu16_sel::v1#4 mulu16_sel::v2#4 sin16s::isUpper#2 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [209] (word) mulu16_sel::return#16 ← (word) mulu16_sel::return#17 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#16 ] ) always clobbers reg byte a +Statement [210] (word) sin16s::x5#0 ← (word) mulu16_sel::return#16 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [211] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [212] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [214] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [217] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:5::sin16s:169 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a Potential registers zp ZP_WORD:2 [ main::st1#2 main::st1#1 ] : zp ZP_WORD:2 , Potential registers zp ZP_WORD:4 [ main::st2#2 main::st2#1 ] : zp ZP_WORD:4 , Potential registers zp ZP_BYTE:6 [ main::i#2 main::i#1 ] : zp ZP_BYTE:6 , reg byte x , @@ -5485,7 +5485,7 @@ main: { jmp b1 //SEG31 main::@1 b1: - //SEG32 [11] (signed word) main::sw#0 ? *((signed word*) main::st1#2) - *((signed word*) main::st2#2) -- vwsz1=_deref_pwsz2_minus__deref_pwsz3 + //SEG32 [11] (signed word) main::sw#0 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) -- vwsz1=_deref_pwsz2_minus__deref_pwsz3 ldy #0 sec lda (st1),y @@ -5520,7 +5520,7 @@ main: { jmp b2 //SEG42 main::@2 b2: - //SEG43 [16] (signed word) print_sword::w#1 ? (signed word) main::sw#0 + //SEG43 [16] (signed word) print_sword::w#1 ← (signed word) main::sw#0 //SEG44 [17] call print_sword jsr print_sword //SEG45 [18] phi from main::@2 to main::@6 [phi:main::@2->main::@6] @@ -5541,7 +5541,7 @@ main: { jmp b7 //SEG51 main::@7 b7: - //SEG52 [20] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG52 [20] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st1 clc adc #2 @@ -5549,7 +5549,7 @@ main: { bcc !+ inc st1+1 !: - //SEG53 [21] (signed word*) main::st2#1 ? (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG53 [21] (signed word*) main::st2#1 ← (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st2 clc adc #2 @@ -5557,7 +5557,7 @@ main: { bcc !+ inc st2+1 !: - //SEG54 [22] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG54 [22] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG55 [23] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $78) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$78 @@ -5597,17 +5597,17 @@ print_str: { rts //SEG66 print_str::@2 b2: - //SEG67 [29] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG67 [29] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG68 [30] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG68 [30] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG69 [31] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG69 [31] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -5637,7 +5637,7 @@ print_sword: { jmp b3 //SEG78 print_sword::@3 b3: - //SEG79 [35] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG79 [35] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -5666,7 +5666,7 @@ print_sword: { //SEG87 print_word // Print a word as HEX print_word: { - //SEG88 [39] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 + //SEG88 [39] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 lda print_sword.w+1 sta print_byte.b //SEG89 [40] call print_byte @@ -5678,7 +5678,7 @@ print_word: { jmp b1 //SEG93 print_word::@1 b1: - //SEG94 [41] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 + //SEG94 [41] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 lda print_sword.w sta print_byte.b //SEG95 [42] call print_byte @@ -5698,13 +5698,13 @@ print_word: { // print_byte(byte zeropage($a) b) print_byte: { .label b = $a - //SEG102 [45] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG102 [45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG103 [46] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG103 [46] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG104 [47] call print_char @@ -5716,10 +5716,10 @@ print_byte: { jmp b1 //SEG108 print_byte::@1 b1: - //SEG109 [48] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG109 [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG110 [49] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG110 [49] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG111 [50] call print_char @@ -5738,10 +5738,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG118 [53] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa + //SEG118 [53] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG119 [54] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 + //SEG119 [54] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -5770,11 +5770,11 @@ print_cls: { jmp b1 //SEG127 print_cls::@1 b1: - //SEG128 [58] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG128 [58] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG129 [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG129 [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -5807,11 +5807,11 @@ sin16s_genb: { //SEG135 [135] phi from sin16s_genb to div32u16u [phi:sin16s_genb->div32u16u] div32u16u_from_sin16s_genb: jsr div32u16u - //SEG136 [64] (dword) div32u16u::return#3 ? (dword) div32u16u::return#0 + //SEG136 [64] (dword) div32u16u::return#3 ← (dword) div32u16u::return#0 jmp b2 //SEG137 sin16s_genb::@2 b2: - //SEG138 [65] (dword) sin16s_genb::step#0 ? (dword) div32u16u::return#3 + //SEG138 [65] (dword) sin16s_genb::step#0 ← (dword) div32u16u::return#3 //SEG139 [66] phi from sin16s_genb::@2 to sin16s_genb::@1 [phi:sin16s_genb::@2->sin16s_genb::@1] b1_from_b2: //SEG140 [66] phi (word) sin16s_genb::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_genb::@2->sin16s_genb::@1#0] -- vwuz1=vbuc1 @@ -5841,26 +5841,26 @@ sin16s_genb: { jmp b1 //SEG147 sin16s_genb::@1 b1: - //SEG148 [67] (word) sin16sb::x#0 ? > (dword) sin16s_genb::x#2 -- vwuz1=_hi_vduz2 + //SEG148 [67] (word) sin16sb::x#0 ← > (dword) sin16s_genb::x#2 -- vwuz1=_hi_vduz2 lda x+2 sta sin16sb.x lda x+3 sta sin16sb.x+1 //SEG149 [68] call sin16sb jsr sin16sb - //SEG150 [69] (signed word) sin16sb::return#0 ? (signed word) sin16sb::return#1 + //SEG150 [69] (signed word) sin16sb::return#0 ← (signed word) sin16sb::return#1 jmp b3 //SEG151 sin16s_genb::@3 b3: - //SEG152 [70] (signed word~) sin16s_genb::$2 ? (signed word) sin16sb::return#0 - //SEG153 [71] *((signed word*) sin16s_genb::sintab#2) ? (signed word~) sin16s_genb::$2 -- _deref_pwsz1=vwsz2 + //SEG152 [70] (signed word~) sin16s_genb::$2 ← (signed word) sin16sb::return#0 + //SEG153 [71] *((signed word*) sin16s_genb::sintab#2) ← (signed word~) sin16s_genb::$2 -- _deref_pwsz1=vwsz2 ldy #0 lda _2 sta (sintab),y iny lda _2+1 sta (sintab),y - //SEG154 [72] (signed word*) sin16s_genb::sintab#0 ? (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG154 [72] (signed word*) sin16s_genb::sintab#0 ← (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -5868,7 +5868,7 @@ sin16s_genb: { bcc !+ inc sintab+1 !: - //SEG155 [73] (dword) sin16s_genb::x#1 ? (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG155 [73] (dword) sin16s_genb::x#1 ← (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -5882,7 +5882,7 @@ sin16s_genb: { lda x+3 adc step+3 sta x+3 - //SEG156 [74] (word) sin16s_genb::i#1 ? ++ (word) sin16s_genb::i#2 -- vwuz1=_inc_vwuz1 + //SEG156 [74] (word) sin16s_genb::i#1 ← ++ (word) sin16s_genb::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -5932,7 +5932,7 @@ sin16sb: { jmp b4 //SEG162 sin16sb::@4 b4: - //SEG163 [78] (word) sin16sb::x#1 ? (word) sin16sb::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG163 [78] (word) sin16sb::x#1 ← (word) sin16sb::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc #mulu16_sel#1] -- register_copy //SEG184 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#5 [phi:sin16sb::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG185 [87] (word) mulu16_sel::return#18 ? (word) mulu16_sel::return#17 + //SEG185 [87] (word) mulu16_sel::return#18 ← (word) mulu16_sel::return#17 jmp b7 //SEG186 sin16sb::@7 b7: - //SEG187 [88] (word) sin16sb::x2#0 ? (word) mulu16_sel::return#18 -- vwuz1=vwuz2 + //SEG187 [88] (word) sin16sb::x2#0 ← (word) mulu16_sel::return#18 -- vwuz1=vwuz2 lda mulu16_sel.return_18 sta x2 lda mulu16_sel.return_18+1 sta x2+1 - //SEG188 [89] (word) mulu16_sel::v1#6 ? (word) sin16sb::x2#0 - //SEG189 [90] (word) mulu16_sel::v2#6 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG188 [89] (word) mulu16_sel::v1#6 ← (word) sin16sb::x2#0 + //SEG189 [90] (word) mulu16_sel::v2#6 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6031,7 +6031,7 @@ sin16sb: { //SEG193 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#6 [phi:sin16sb::@7->mulu16_sel#1] -- register_copy //SEG194 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#6 [phi:sin16sb::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG195 [92] (word) mulu16_sel::return#19 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG195 [92] (word) mulu16_sel::return#19 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 @@ -6039,8 +6039,8 @@ sin16sb: { jmp b8 //SEG196 sin16sb::@8 b8: - //SEG197 [93] (word) sin16sb::x3#0 ? (word) mulu16_sel::return#19 - //SEG198 [94] (word) mulu16_sel::v1#7 ? (word) sin16sb::x3#0 + //SEG197 [93] (word) sin16sb::x3#0 ← (word) mulu16_sel::return#19 + //SEG198 [94] (word) mulu16_sel::v1#7 ← (word) sin16sb::x3#0 //SEG199 [95] call mulu16_sel //SEG200 [116] phi from sin16sb::@8 to mulu16_sel [phi:sin16sb::@8->mulu16_sel] mulu16_sel_from_b8: @@ -6053,12 +6053,12 @@ sin16sb: { sta mulu16_sel.v2+1 //SEG203 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#7 [phi:sin16sb::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG204 [96] (word) mulu16_sel::return#20 ? (word) mulu16_sel::return#17 + //SEG204 [96] (word) mulu16_sel::return#20 ← (word) mulu16_sel::return#17 jmp b9 //SEG205 sin16sb::@9 b9: - //SEG206 [97] (word) sin16sb::x3_6#0 ? (word) mulu16_sel::return#20 - //SEG207 [98] (word) sin16sb::usinx#0 ? (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG206 [97] (word) sin16sb::x3_6#0 ← (word) mulu16_sel::return#20 + //SEG207 [98] (word) sin16sb::usinx#0 ← (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -6066,8 +6066,8 @@ sin16sb: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG208 [99] (word) mulu16_sel::v1#8 ? (word) sin16sb::x3#0 - //SEG209 [100] (word) mulu16_sel::v2#8 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG208 [99] (word) mulu16_sel::v1#8 ← (word) sin16sb::x3#0 + //SEG209 [100] (word) mulu16_sel::v2#8 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6080,7 +6080,7 @@ sin16sb: { //SEG213 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#8 [phi:sin16sb::@9->mulu16_sel#1] -- register_copy //SEG214 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#8 [phi:sin16sb::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG215 [102] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG215 [102] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 @@ -6088,9 +6088,9 @@ sin16sb: { jmp b10 //SEG216 sin16sb::@10 b10: - //SEG217 [103] (word) sin16sb::x4#0 ? (word) mulu16_sel::return#10 - //SEG218 [104] (word) mulu16_sel::v1#9 ? (word) sin16sb::x4#0 - //SEG219 [105] (word) mulu16_sel::v2#9 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG217 [103] (word) sin16sb::x4#0 ← (word) mulu16_sel::return#10 + //SEG218 [104] (word) mulu16_sel::v1#9 ← (word) sin16sb::x4#0 + //SEG219 [105] (word) mulu16_sel::v2#9 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6103,19 +6103,19 @@ sin16sb: { //SEG223 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#9 [phi:sin16sb::@10->mulu16_sel#1] -- register_copy //SEG224 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#9 [phi:sin16sb::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG225 [107] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#17 + //SEG225 [107] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#17 jmp b11 //SEG226 sin16sb::@11 b11: - //SEG227 [108] (word) sin16sb::x5#0 ? (word) mulu16_sel::return#11 - //SEG228 [109] (word) sin16sb::x5_128#0 ? (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG227 [108] (word) sin16sb::x5#0 ← (word) mulu16_sel::return#11 + //SEG228 [109] (word) sin16sb::x5_128#0 ← (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG229 [110] (word) sin16sb::usinx#1 ? (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG229 [110] (word) sin16sb::usinx#1 ← (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -6130,7 +6130,7 @@ sin16sb: { jmp b6 //SEG231 sin16sb::@6 b6: - //SEG232 [112] (signed word) sin16sb::sinx#1 ? - (signed word)(word) sin16sb::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG232 [112] (signed word) sin16sb::sinx#1 ← - (signed word)(word) sin16sb::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -6154,7 +6154,7 @@ sin16sb: { rts //SEG238 sin16sb::@12 b12: - //SEG239 [115] (signed word~) sin16sb::return#5 ? (signed word)(word) sin16sb::usinx#1 + //SEG239 [115] (signed word~) sin16sb::return#5 ← (signed word)(word) sin16sb::usinx#1 jmp b3_from_b12 } //SEG240 mulu16_sel @@ -6173,20 +6173,20 @@ mulu16_sel: { .label return_17 = $11 .label return_18 = $11 .label return_20 = $11 - //SEG241 [117] (word) mul16u::a#1 ? (word) mulu16_sel::v1#10 -- vwuz1=vwuz2 + //SEG241 [117] (word) mul16u::a#1 ← (word) mulu16_sel::v1#10 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG242 [118] (word) mul16u::b#0 ? (word) mulu16_sel::v2#10 + //SEG242 [118] (word) mul16u::b#0 ← (word) mulu16_sel::v2#10 //SEG243 [119] call mul16u jsr mul16u - //SEG244 [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG244 [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 jmp b1 //SEG245 mulu16_sel::@1 b1: - //SEG246 [121] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - //SEG247 [122] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 -- vduz1=vduz1_rol_vbuxx + //SEG246 [121] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + //SEG247 [122] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -6197,7 +6197,7 @@ mulu16_sel: { dex bne !- !e: - //SEG248 [123] (word) mulu16_sel::return#17 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG248 [123] (word) mulu16_sel::return#17 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return_17 lda _1+3 @@ -6217,7 +6217,7 @@ mul16u: { .label res = $15 .label b = $11 .label return = $15 - //SEG252 [125] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG252 [125] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -6251,7 +6251,7 @@ mul16u: { rts //SEG261 mul16u::@2 b2: - //SEG262 [129] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG262 [129] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG263 [130] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 @@ -6260,7 +6260,7 @@ mul16u: { jmp b4 //SEG264 mul16u::@4 b4: - //SEG265 [131] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG265 [131] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -6281,11 +6281,11 @@ mul16u: { jmp b3 //SEG268 mul16u::@3 b3: - //SEG269 [133] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG269 [133] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG270 [134] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG270 [134] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -6318,16 +6318,16 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG280 [137] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG280 [137] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG281 div32u16u::@1 b1: - //SEG282 [138] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG282 [138] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG283 [139] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG283 [139] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG284 [140] call divr16u //SEG285 [145] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] divr16u_from_b1: @@ -6338,12 +6338,12 @@ div32u16u: { sta divr16u.dividend+1 //SEG287 [145] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG288 [141] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG288 [141] (word) divr16u::return#3 ← (word) divr16u::return#0 jmp b2 //SEG289 div32u16u::@2 b2: - //SEG290 [142] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG291 [143] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG290 [142] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG291 [143] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -6390,12 +6390,12 @@ divr16u: { jmp b1 //SEG305 divr16u::@1 b1: - //SEG306 [147] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG306 [147] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG307 [148] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG307 [148] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG308 [149] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG308 [149] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG309 [150] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -6403,7 +6403,7 @@ divr16u: { jmp b4 //SEG310 divr16u::@4 b4: - //SEG311 [151] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG311 [151] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -6414,10 +6414,10 @@ divr16u: { jmp b2 //SEG314 divr16u::@2 b2: - //SEG315 [153] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG315 [153] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG316 [154] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG316 [154] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG317 [155] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -6432,12 +6432,12 @@ divr16u: { jmp b5 //SEG318 divr16u::@5 b5: - //SEG319 [156] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG319 [156] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG320 [157] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG320 [157] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #div32u16u] div32u16u_from_sin16s_gen: jsr div32u16u - //SEG334 [165] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG334 [165] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 jmp b2 //SEG335 sin16s_gen::@2 b2: - //SEG336 [166] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + //SEG336 [166] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 //SEG337 [167] phi from sin16s_gen::@2 to sin16s_gen::@1 [phi:sin16s_gen::@2->sin16s_gen::@1] b1_from_b2: //SEG338 [167] phi (word) sin16s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen::@2->sin16s_gen::@1#0] -- vwuz1=vbuc1 @@ -6517,7 +6517,7 @@ sin16s_gen: { jmp b1 //SEG345 sin16s_gen::@1 b1: - //SEG346 [168] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG346 [168] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -6528,19 +6528,19 @@ sin16s_gen: { sta sin16s.x+3 //SEG347 [169] call sin16s jsr sin16s - //SEG348 [170] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG348 [170] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 jmp b3 //SEG349 sin16s_gen::@3 b3: - //SEG350 [171] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - //SEG351 [172] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG350 [171] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + //SEG351 [172] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG352 [173] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG352 [173] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -6548,7 +6548,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG353 [174] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG353 [174] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -6562,7 +6562,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG354 [175] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG354 [175] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -6621,7 +6621,7 @@ sin16s: { jmp b4 //SEG360 sin16s::@4 b4: - //SEG361 [179] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG361 [179] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG376 [185] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG377 [186] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG377 [186] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG378 [187] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG378 [187] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6724,7 +6724,7 @@ sin16s: { //SEG382 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG383 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG384 [189] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG384 [189] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 @@ -6732,9 +6732,9 @@ sin16s: { jmp b7 //SEG385 sin16s::@7 b7: - //SEG386 [190] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 - //SEG387 [191] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG388 [192] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG386 [190] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 + //SEG387 [191] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG388 [192] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6747,7 +6747,7 @@ sin16s: { //SEG392 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG393 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG394 [194] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG394 [194] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 @@ -6755,8 +6755,8 @@ sin16s: { jmp b8 //SEG395 sin16s::@8 b8: - //SEG396 [195] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG397 [196] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG396 [195] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG397 [196] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG398 [197] call mulu16_sel //SEG399 [116] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] mulu16_sel_from_b8: @@ -6769,12 +6769,12 @@ sin16s: { sta mulu16_sel.v2+1 //SEG402 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG403 [198] (word) mulu16_sel::return#14 ? (word) mulu16_sel::return#17 + //SEG403 [198] (word) mulu16_sel::return#14 ← (word) mulu16_sel::return#17 jmp b9 //SEG404 sin16s::@9 b9: - //SEG405 [199] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#14 - //SEG406 [200] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG405 [199] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#14 + //SEG406 [200] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -6782,8 +6782,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG407 [201] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG408 [202] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG407 [201] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG408 [202] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6796,7 +6796,7 @@ sin16s: { //SEG412 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG413 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG414 [204] (word) mulu16_sel::return#15 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG414 [204] (word) mulu16_sel::return#15 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 @@ -6804,9 +6804,9 @@ sin16s: { jmp b10 //SEG415 sin16s::@10 b10: - //SEG416 [205] (word) sin16s::x4#0 ? (word) mulu16_sel::return#15 - //SEG417 [206] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG418 [207] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG416 [205] (word) sin16s::x4#0 ← (word) mulu16_sel::return#15 + //SEG417 [206] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG418 [207] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6819,19 +6819,19 @@ sin16s: { //SEG422 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG423 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG424 [209] (word) mulu16_sel::return#16 ? (word) mulu16_sel::return#17 + //SEG424 [209] (word) mulu16_sel::return#16 ← (word) mulu16_sel::return#17 jmp b11 //SEG425 sin16s::@11 b11: - //SEG426 [210] (word) sin16s::x5#0 ? (word) mulu16_sel::return#16 - //SEG427 [211] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG426 [210] (word) sin16s::x5#0 ← (word) mulu16_sel::return#16 + //SEG427 [211] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG428 [212] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG428 [212] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -6846,7 +6846,7 @@ sin16s: { jmp b6 //SEG430 sin16s::@6 b6: - //SEG431 [214] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG431 [214] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -6870,7 +6870,7 @@ sin16s: { rts //SEG437 sin16s::@12 b12: - //SEG438 [217] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG438 [217] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 jmp b3_from_b12 } print_hextab: .text "0123456789abcdef" @@ -7574,7 +7574,7 @@ main: { //SEG30 [10] phi (signed word*) main::st1#2 = (signed word*) main::st1#1 [phi:main::@7->main::@1#3] -- register_copy //SEG31 main::@1 b1: - //SEG32 [11] (signed word) main::sw#0 ? *((signed word*) main::st1#2) - *((signed word*) main::st2#2) -- vwsz1=_deref_pwsz2_minus__deref_pwsz3 + //SEG32 [11] (signed word) main::sw#0 ← *((signed word*) main::st1#2) - *((signed word*) main::st2#2) -- vwsz1=_deref_pwsz2_minus__deref_pwsz3 ldy #0 sec lda (st1),y @@ -7601,7 +7601,7 @@ main: { //SEG41 [15] phi (byte*) print_char_cursor#48 = (byte*) print_char_cursor#49 [phi:main::@1/main::@3->main::@2#0] -- register_copy //SEG42 main::@2 b2: - //SEG43 [16] (signed word) print_sword::w#1 ? (signed word) main::sw#0 + //SEG43 [16] (signed word) print_sword::w#1 ← (signed word) main::sw#0 //SEG44 [17] call print_sword jsr print_sword //SEG45 [18] phi from main::@2 to main::@6 [phi:main::@2->main::@6] @@ -7616,7 +7616,7 @@ main: { sta print_str.str+1 jsr print_str //SEG51 main::@7 - //SEG52 [20] (signed word*) main::st1#1 ? (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG52 [20] (signed word*) main::st1#1 ← (signed word*) main::st1#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st1 clc adc #2 @@ -7624,7 +7624,7 @@ main: { bcc !+ inc st1+1 !: - //SEG53 [21] (signed word*) main::st2#1 ? (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG53 [21] (signed word*) main::st2#1 ← (signed word*) main::st2#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda st2 clc adc #2 @@ -7632,7 +7632,7 @@ main: { bcc !+ inc st2+1 !: - //SEG54 [22] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG54 [22] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG55 [23] if((byte) main::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $78) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$78 @@ -7665,16 +7665,16 @@ print_str: { rts //SEG66 print_str::@2 b2: - //SEG67 [29] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG67 [29] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG68 [30] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG68 [30] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG69 [31] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG69 [31] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -7698,7 +7698,7 @@ print_sword: { lda #'-' jsr print_char //SEG78 print_sword::@3 - //SEG79 [35] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG79 [35] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -7722,7 +7722,7 @@ print_sword: { //SEG87 print_word // Print a word as HEX print_word: { - //SEG88 [39] (byte) print_byte::b#0 ? > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 + //SEG88 [39] (byte) print_byte::b#0 ← > (word)(signed word) print_sword::w#3 -- vbuz1=_hi_vwuz2 lda print_sword.w+1 sta print_byte.b //SEG89 [40] call print_byte @@ -7731,7 +7731,7 @@ print_word: { //SEG92 [44] phi (byte) print_byte::b#2 = (byte) print_byte::b#0 [phi:print_word->print_byte#1] -- register_copy jsr print_byte //SEG93 print_word::@1 - //SEG94 [41] (byte) print_byte::b#1 ? < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 + //SEG94 [41] (byte) print_byte::b#1 ← < (word)(signed word) print_sword::w#3 -- vbuz1=_lo_vwuz2 lda print_sword.w sta print_byte.b //SEG95 [42] call print_byte @@ -7748,13 +7748,13 @@ print_word: { // print_byte(byte zeropage($a) b) print_byte: { .label b = $a - //SEG102 [45] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG102 [45] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG103 [46] (byte) print_char::ch#1 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG103 [46] (byte) print_char::ch#1 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG104 [47] call print_char @@ -7763,10 +7763,10 @@ print_byte: { //SEG107 [52] phi (byte) print_char::ch#3 = (byte) print_char::ch#1 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG108 print_byte::@1 - //SEG109 [48] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG109 [48] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG110 [49] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG110 [49] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG111 [50] call print_char @@ -7782,10 +7782,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG118 [53] *((byte*) print_char_cursor#33) ? (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa + //SEG118 [53] *((byte*) print_char_cursor#33) ← (byte) print_char::ch#3 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG119 [54] (byte*) print_char_cursor#12 ? ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 + //SEG119 [54] (byte*) print_char_cursor#12 ← ++ (byte*) print_char_cursor#33 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -7808,11 +7808,11 @@ print_cls: { //SEG126 [57] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy //SEG127 print_cls::@1 b1: - //SEG128 [58] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG128 [58] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG129 [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG129 [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -7842,9 +7842,9 @@ sin16s_genb: { //SEG134 [63] call div32u16u //SEG135 [135] phi from sin16s_genb to div32u16u [phi:sin16s_genb->div32u16u] jsr div32u16u - //SEG136 [64] (dword) div32u16u::return#3 ? (dword) div32u16u::return#0 + //SEG136 [64] (dword) div32u16u::return#3 ← (dword) div32u16u::return#0 //SEG137 sin16s_genb::@2 - //SEG138 [65] (dword) sin16s_genb::step#0 ? (dword) div32u16u::return#3 + //SEG138 [65] (dword) sin16s_genb::step#0 ← (dword) div32u16u::return#3 //SEG139 [66] phi from sin16s_genb::@2 to sin16s_genb::@1 [phi:sin16s_genb::@2->sin16s_genb::@1] //SEG140 [66] phi (word) sin16s_genb::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_genb::@2->sin16s_genb::@1#0] -- vwuz1=vbuc1 lda #0 @@ -7868,24 +7868,24 @@ sin16s_genb: { //SEG146 [66] phi (dword) sin16s_genb::x#2 = (dword) sin16s_genb::x#1 [phi:sin16s_genb::@3->sin16s_genb::@1#2] -- register_copy //SEG147 sin16s_genb::@1 b1: - //SEG148 [67] (word) sin16sb::x#0 ? > (dword) sin16s_genb::x#2 -- vwuz1=_hi_vduz2 + //SEG148 [67] (word) sin16sb::x#0 ← > (dword) sin16s_genb::x#2 -- vwuz1=_hi_vduz2 lda x+2 sta sin16sb.x lda x+3 sta sin16sb.x+1 //SEG149 [68] call sin16sb jsr sin16sb - //SEG150 [69] (signed word) sin16sb::return#0 ? (signed word) sin16sb::return#1 + //SEG150 [69] (signed word) sin16sb::return#0 ← (signed word) sin16sb::return#1 //SEG151 sin16s_genb::@3 - //SEG152 [70] (signed word~) sin16s_genb::$2 ? (signed word) sin16sb::return#0 - //SEG153 [71] *((signed word*) sin16s_genb::sintab#2) ? (signed word~) sin16s_genb::$2 -- _deref_pwsz1=vwsz2 + //SEG152 [70] (signed word~) sin16s_genb::$2 ← (signed word) sin16sb::return#0 + //SEG153 [71] *((signed word*) sin16s_genb::sintab#2) ← (signed word~) sin16s_genb::$2 -- _deref_pwsz1=vwsz2 ldy #0 lda _2 sta (sintab),y iny lda _2+1 sta (sintab),y - //SEG154 [72] (signed word*) sin16s_genb::sintab#0 ? (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG154 [72] (signed word*) sin16s_genb::sintab#0 ← (signed word*) sin16s_genb::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -7893,7 +7893,7 @@ sin16s_genb: { bcc !+ inc sintab+1 !: - //SEG155 [73] (dword) sin16s_genb::x#1 ? (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG155 [73] (dword) sin16s_genb::x#1 ← (dword) sin16s_genb::x#2 + (dword) sin16s_genb::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -7907,7 +7907,7 @@ sin16s_genb: { lda x+3 adc step+3 sta x+3 - //SEG156 [74] (word) sin16s_genb::i#1 ? ++ (word) sin16s_genb::i#2 -- vwuz1=_inc_vwuz1 + //SEG156 [74] (word) sin16s_genb::i#1 ← ++ (word) sin16s_genb::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -7953,7 +7953,7 @@ sin16sb: { bcc b4 !: //SEG162 sin16sb::@4 - //SEG163 [78] (word) sin16sb::x#1 ? (word) sin16sb::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG163 [78] (word) sin16sb::x#1 ← (word) sin16sb::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc #sin16sb::@2#0] -- register_copy //SEG176 sin16sb::@2 b2: - //SEG177 [83] (word) sin16sb::x1#0 ? (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 + //SEG177 [83] (word) sin16sb::x1#0 ← (word) sin16sb::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 asl x1 rol x1+1 asl x1 rol x1+1 asl x1 rol x1+1 - //SEG178 [84] (word) mulu16_sel::v1#5 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG178 [84] (word) mulu16_sel::v1#5 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG179 [85] (word) mulu16_sel::v2#5 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG179 [85] (word) mulu16_sel::v2#5 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8021,15 +8021,15 @@ sin16sb: { //SEG183 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#5 [phi:sin16sb::@2->mulu16_sel#1] -- register_copy //SEG184 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#5 [phi:sin16sb::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG185 [87] (word) mulu16_sel::return#18 ? (word) mulu16_sel::return#17 + //SEG185 [87] (word) mulu16_sel::return#18 ← (word) mulu16_sel::return#17 //SEG186 sin16sb::@7 - //SEG187 [88] (word) sin16sb::x2#0 ? (word) mulu16_sel::return#18 -- vwuz1=vwuz2 + //SEG187 [88] (word) sin16sb::x2#0 ← (word) mulu16_sel::return#18 -- vwuz1=vwuz2 lda mulu16_sel.return_18 sta x2 lda mulu16_sel.return_18+1 sta x2+1 - //SEG188 [89] (word) mulu16_sel::v1#6 ? (word) sin16sb::x2#0 - //SEG189 [90] (word) mulu16_sel::v2#6 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG188 [89] (word) mulu16_sel::v1#6 ← (word) sin16sb::x2#0 + //SEG189 [90] (word) mulu16_sel::v2#6 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8041,14 +8041,14 @@ sin16sb: { //SEG193 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#6 [phi:sin16sb::@7->mulu16_sel#1] -- register_copy //SEG194 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#6 [phi:sin16sb::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG195 [92] (word) mulu16_sel::return#19 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG195 [92] (word) mulu16_sel::return#19 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 sta mulu16_sel.return+1 //SEG196 sin16sb::@8 - //SEG197 [93] (word) sin16sb::x3#0 ? (word) mulu16_sel::return#19 - //SEG198 [94] (word) mulu16_sel::v1#7 ? (word) sin16sb::x3#0 + //SEG197 [93] (word) sin16sb::x3#0 ← (word) mulu16_sel::return#19 + //SEG198 [94] (word) mulu16_sel::v1#7 ← (word) sin16sb::x3#0 //SEG199 [95] call mulu16_sel //SEG200 [116] phi from sin16sb::@8 to mulu16_sel [phi:sin16sb::@8->mulu16_sel] //SEG201 [116] phi (byte) mulu16_sel::select#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:sin16sb::@8->mulu16_sel#0] -- vbuxx=vbuc1 @@ -8060,10 +8060,10 @@ sin16sb: { sta mulu16_sel.v2+1 //SEG203 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#7 [phi:sin16sb::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG204 [96] (word) mulu16_sel::return#20 ? (word) mulu16_sel::return#17 + //SEG204 [96] (word) mulu16_sel::return#20 ← (word) mulu16_sel::return#17 //SEG205 sin16sb::@9 - //SEG206 [97] (word) sin16sb::x3_6#0 ? (word) mulu16_sel::return#20 - //SEG207 [98] (word) sin16sb::usinx#0 ? (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG206 [97] (word) sin16sb::x3_6#0 ← (word) mulu16_sel::return#20 + //SEG207 [98] (word) sin16sb::usinx#0 ← (word) sin16sb::x1#0 - (word) sin16sb::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -8071,8 +8071,8 @@ sin16sb: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG208 [99] (word) mulu16_sel::v1#8 ? (word) sin16sb::x3#0 - //SEG209 [100] (word) mulu16_sel::v2#8 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG208 [99] (word) mulu16_sel::v1#8 ← (word) sin16sb::x3#0 + //SEG209 [100] (word) mulu16_sel::v2#8 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8084,15 +8084,15 @@ sin16sb: { //SEG213 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#8 [phi:sin16sb::@9->mulu16_sel#1] -- register_copy //SEG214 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#8 [phi:sin16sb::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG215 [102] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG215 [102] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 sta mulu16_sel.return+1 //SEG216 sin16sb::@10 - //SEG217 [103] (word) sin16sb::x4#0 ? (word) mulu16_sel::return#10 - //SEG218 [104] (word) mulu16_sel::v1#9 ? (word) sin16sb::x4#0 - //SEG219 [105] (word) mulu16_sel::v2#9 ? (word) sin16sb::x1#0 -- vwuz1=vwuz2 + //SEG217 [103] (word) sin16sb::x4#0 ← (word) mulu16_sel::return#10 + //SEG218 [104] (word) mulu16_sel::v1#9 ← (word) sin16sb::x4#0 + //SEG219 [105] (word) mulu16_sel::v2#9 ← (word) sin16sb::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8104,17 +8104,17 @@ sin16sb: { //SEG223 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#9 [phi:sin16sb::@10->mulu16_sel#1] -- register_copy //SEG224 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#9 [phi:sin16sb::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG225 [107] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#17 + //SEG225 [107] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#17 //SEG226 sin16sb::@11 - //SEG227 [108] (word) sin16sb::x5#0 ? (word) mulu16_sel::return#11 - //SEG228 [109] (word) sin16sb::x5_128#0 ? (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG227 [108] (word) sin16sb::x5#0 ← (word) mulu16_sel::return#11 + //SEG228 [109] (word) sin16sb::x5_128#0 ← (word) sin16sb::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG229 [110] (word) sin16sb::usinx#1 ? (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG229 [110] (word) sin16sb::usinx#1 ← (word) sin16sb::usinx#0 + (word) sin16sb::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -8127,7 +8127,7 @@ sin16sb: { cmp #0 beq b3 //SEG231 sin16sb::@6 - //SEG232 [112] (signed word) sin16sb::sinx#1 ? - (signed word)(word) sin16sb::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG232 [112] (signed word) sin16sb::sinx#1 ← - (signed word)(word) sin16sb::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -8145,7 +8145,7 @@ sin16sb: { //SEG237 [114] return rts //SEG238 sin16sb::@12 - //SEG239 [115] (signed word~) sin16sb::return#5 ? (signed word)(word) sin16sb::usinx#1 + //SEG239 [115] (signed word~) sin16sb::return#5 ← (signed word)(word) sin16sb::usinx#1 } //SEG240 mulu16_sel // Calculate val*val for two unsigned word values - the result is 16 selected bits of the 32-bit result. @@ -8163,18 +8163,18 @@ mulu16_sel: { .label return_17 = $11 .label return_18 = $11 .label return_20 = $11 - //SEG241 [117] (word) mul16u::a#1 ? (word) mulu16_sel::v1#10 -- vwuz1=vwuz2 + //SEG241 [117] (word) mul16u::a#1 ← (word) mulu16_sel::v1#10 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG242 [118] (word) mul16u::b#0 ? (word) mulu16_sel::v2#10 + //SEG242 [118] (word) mul16u::b#0 ← (word) mulu16_sel::v2#10 //SEG243 [119] call mul16u jsr mul16u - //SEG244 [120] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG244 [120] (dword) mul16u::return#2 ← (dword) mul16u::res#2 //SEG245 mulu16_sel::@1 - //SEG246 [121] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - //SEG247 [122] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 -- vduz1=vduz1_rol_vbuxx + //SEG246 [121] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + //SEG247 [122] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#10 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -8185,7 +8185,7 @@ mulu16_sel: { dex bne !- !e: - //SEG248 [123] (word) mulu16_sel::return#17 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG248 [123] (word) mulu16_sel::return#17 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return_17 lda _1+3 @@ -8203,7 +8203,7 @@ mul16u: { .label res = $15 .label b = $11 .label return = $15 - //SEG252 [125] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG252 [125] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -8231,14 +8231,14 @@ mul16u: { rts //SEG261 mul16u::@2 b2: - //SEG262 [129] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG262 [129] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG263 [130] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG264 mul16u::@4 - //SEG265 [131] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG265 [131] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -8256,11 +8256,11 @@ mul16u: { //SEG267 [132] phi (dword) mul16u::res#6 = (dword) mul16u::res#2 [phi:mul16u::@2/mul16u::@4->mul16u::@3#0] -- register_copy //SEG268 mul16u::@3 b3: - //SEG269 [133] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG269 [133] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG270 [134] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG270 [134] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -8290,14 +8290,14 @@ div32u16u: { sta divr16u.rem sta divr16u.rem+1 jsr divr16u - //SEG280 [137] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG280 [137] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG281 div32u16u::@1 - //SEG282 [138] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG282 [138] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG283 [139] (word) divr16u::rem#4 ? (word) rem16u#1 + //SEG283 [139] (word) divr16u::rem#4 ← (word) rem16u#1 //SEG284 [140] call divr16u //SEG285 [145] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] //SEG286 [145] phi (word) divr16u::dividend#5 = <(const dword) PI2_u4f28#0 [phi:div32u16u::@1->divr16u#0] -- vwuz1=vwuc1 @@ -8307,10 +8307,10 @@ div32u16u: { sta divr16u.dividend+1 //SEG287 [145] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG288 [141] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG288 [141] (word) divr16u::return#3 ← (word) divr16u::return#0 //SEG289 div32u16u::@2 - //SEG290 [142] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#3 - //SEG291 [143] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG290 [142] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#3 + //SEG291 [143] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -8350,18 +8350,18 @@ divr16u: { //SEG304 [146] phi (word) divr16u::rem#5 = (word) divr16u::rem#11 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG305 divr16u::@1 b1: - //SEG306 [147] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG306 [147] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG307 [148] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG307 [148] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG308 [149] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG308 [149] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG309 [150] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG310 divr16u::@4 - //SEG311 [151] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG311 [151] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -8369,10 +8369,10 @@ divr16u: { //SEG313 [152] phi (word) divr16u::rem#6 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG314 divr16u::@2 b2: - //SEG315 [153] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG315 [153] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG316 [154] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG316 [154] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG317 [155] if((word) divr16u::rem#6<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -8385,12 +8385,12 @@ divr16u: { bcc b3 !: //SEG318 divr16u::@5 - //SEG319 [156] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG319 [156] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG320 [157] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG320 [157] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #divr16u::@3#1] -- register_copy //SEG324 divr16u::@3 b3: - //SEG325 [159] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG325 [159] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG326 [160] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG327 divr16u::@6 - //SEG328 [161] (word) rem16u#1 ? (word) divr16u::rem#11 + //SEG328 [161] (word) rem16u#1 ← (word) divr16u::rem#11 //SEG329 divr16u::@return //SEG330 [162] return rts @@ -8428,9 +8428,9 @@ sin16s_gen: { //SEG332 [164] call div32u16u //SEG333 [135] phi from sin16s_gen to div32u16u [phi:sin16s_gen->div32u16u] jsr div32u16u - //SEG334 [165] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG334 [165] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 //SEG335 sin16s_gen::@2 - //SEG336 [166] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + //SEG336 [166] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 //SEG337 [167] phi from sin16s_gen::@2 to sin16s_gen::@1 [phi:sin16s_gen::@2->sin16s_gen::@1] //SEG338 [167] phi (word) sin16s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen::@2->sin16s_gen::@1#0] -- vwuz1=vbuc1 lda #0 @@ -8454,7 +8454,7 @@ sin16s_gen: { //SEG344 [167] phi (dword) sin16s_gen::x#2 = (dword) sin16s_gen::x#1 [phi:sin16s_gen::@3->sin16s_gen::@1#2] -- register_copy //SEG345 sin16s_gen::@1 b1: - //SEG346 [168] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG346 [168] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -8465,17 +8465,17 @@ sin16s_gen: { sta sin16s.x+3 //SEG347 [169] call sin16s jsr sin16s - //SEG348 [170] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG348 [170] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 //SEG349 sin16s_gen::@3 - //SEG350 [171] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - //SEG351 [172] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG350 [171] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + //SEG351 [172] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG352 [173] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG352 [173] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -8483,7 +8483,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG353 [174] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG353 [174] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -8497,7 +8497,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG354 [175] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG354 [175] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -8552,7 +8552,7 @@ sin16s: { bcc b4 !: //SEG360 sin16s::@4 - //SEG361 [179] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG361 [179] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc #sin16s::@2#0] -- register_copy //SEG374 sin16s::@2 b2: - //SEG375 [184] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 + //SEG375 [184] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 ldy #3 !: asl _4 @@ -8625,17 +8625,17 @@ sin16s: { rol _4+3 dey bne !- - //SEG376 [185] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG376 [185] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG377 [186] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG377 [186] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG378 [187] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG378 [187] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8647,15 +8647,15 @@ sin16s: { //SEG382 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG383 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG384 [189] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG384 [189] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 sta mulu16_sel.return+1 //SEG385 sin16s::@7 - //SEG386 [190] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 - //SEG387 [191] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG388 [192] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG386 [190] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 + //SEG387 [191] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG388 [192] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8667,14 +8667,14 @@ sin16s: { //SEG392 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG393 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG394 [194] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG394 [194] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 sta mulu16_sel.return+1 //SEG395 sin16s::@8 - //SEG396 [195] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG397 [196] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG396 [195] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG397 [196] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG398 [197] call mulu16_sel //SEG399 [116] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] //SEG400 [116] phi (byte) mulu16_sel::select#10 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:sin16s::@8->mulu16_sel#0] -- vbuxx=vbuc1 @@ -8686,10 +8686,10 @@ sin16s: { sta mulu16_sel.v2+1 //SEG402 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG403 [198] (word) mulu16_sel::return#14 ? (word) mulu16_sel::return#17 + //SEG403 [198] (word) mulu16_sel::return#14 ← (word) mulu16_sel::return#17 //SEG404 sin16s::@9 - //SEG405 [199] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#14 - //SEG406 [200] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG405 [199] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#14 + //SEG406 [200] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -8697,8 +8697,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG407 [201] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG408 [202] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG407 [201] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG408 [202] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8710,15 +8710,15 @@ sin16s: { //SEG412 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG413 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG414 [204] (word) mulu16_sel::return#15 ? (word) mulu16_sel::return#17 -- vwuz1=vwuz2 + //SEG414 [204] (word) mulu16_sel::return#15 ← (word) mulu16_sel::return#17 -- vwuz1=vwuz2 lda mulu16_sel.return_17 sta mulu16_sel.return lda mulu16_sel.return_17+1 sta mulu16_sel.return+1 //SEG415 sin16s::@10 - //SEG416 [205] (word) sin16s::x4#0 ? (word) mulu16_sel::return#15 - //SEG417 [206] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG418 [207] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG416 [205] (word) sin16s::x4#0 ← (word) mulu16_sel::return#15 + //SEG417 [206] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG418 [207] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8730,17 +8730,17 @@ sin16s: { //SEG422 [116] phi (word) mulu16_sel::v2#10 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG423 [116] phi (word) mulu16_sel::v1#10 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG424 [209] (word) mulu16_sel::return#16 ? (word) mulu16_sel::return#17 + //SEG424 [209] (word) mulu16_sel::return#16 ← (word) mulu16_sel::return#17 //SEG425 sin16s::@11 - //SEG426 [210] (word) sin16s::x5#0 ? (word) mulu16_sel::return#16 - //SEG427 [211] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG426 [210] (word) sin16s::x5#0 ← (word) mulu16_sel::return#16 + //SEG427 [211] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG428 [212] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG428 [212] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -8753,7 +8753,7 @@ sin16s: { cmp #0 beq b3 //SEG430 sin16s::@6 - //SEG431 [214] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG431 [214] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -8771,7 +8771,7 @@ sin16s: { //SEG436 [216] return rts //SEG437 sin16s::@12 - //SEG438 [217] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG438 [217] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 } print_hextab: .text "0123456789abcdef" diff --git a/src/test/ref/sinusgen8.log b/src/test/ref/sinusgen8.log index 9eada9506..9acc3ad45 100644 --- a/src/test/ref/sinusgen8.log +++ b/src/test/ref/sinusgen8.log @@ -2,634 +2,634 @@ Identified constant variable (word) main::wavelength CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@2 @2: scope:[] from @begin - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@5 divr16u: scope:[divr16u] from div16u - (word) divr16u::divisor#5 ? phi( div16u/(word) divr16u::divisor#0 ) - (word) divr16u::dividend#4 ? phi( div16u/(word) divr16u::dividend#1 ) - (word) divr16u::rem#9 ? phi( div16u/(word) divr16u::rem#3 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#5 ← phi( div16u/(word) divr16u::divisor#0 ) + (word) divr16u::dividend#4 ← phi( div16u/(word) divr16u::dividend#1 ) + (word) divr16u::rem#9 ← phi( div16u/(word) divr16u::rem#3 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#3 ? phi( divr16u/(word) divr16u::divisor#5 divr16u::@3/(word) divr16u::divisor#6 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#2 ? phi( divr16u/(word) divr16u::dividend#4 divr16u::@3/(word) divr16u::dividend#5 ) - (word) divr16u::rem#4 ? phi( divr16u/(word) divr16u::rem#9 divr16u::@3/(word) divr16u::rem#10 ) - (word~) divr16u::$0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#3 ← phi( divr16u/(word) divr16u::divisor#5 divr16u::@3/(word) divr16u::divisor#6 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#2 ← phi( divr16u/(word) divr16u::dividend#4 divr16u::@3/(word) divr16u::dividend#5 ) + (word) divr16u::rem#4 ← phi( divr16u/(word) divr16u::rem#9 divr16u::@3/(word) divr16u::rem#10 ) + (word~) divr16u::$0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#1 ? phi( divr16u::@1/(word) divr16u::divisor#3 divr16u::@4/(word) divr16u::divisor#4 ) - (word) divr16u::rem#5 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#3 ? phi( divr16u::@1/(word) divr16u::dividend#2 divr16u::@4/(word) divr16u::dividend#6 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#5 >= (word) divr16u::divisor#1 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#1 ← phi( divr16u::@1/(word) divr16u::divisor#3 divr16u::@4/(word) divr16u::divisor#4 ) + (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#3 ← phi( divr16u::@1/(word) divr16u::dividend#2 divr16u::@4/(word) divr16u::dividend#6 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#5 >= (word) divr16u::divisor#1 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#4 ? phi( divr16u::@1/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#6 ? phi( divr16u::@1/(word) divr16u::dividend#2 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#4 ← phi( divr16u::@1/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#6 ← phi( divr16u::@1/(word) divr16u::dividend#2 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#6 ? phi( divr16u::@2/(word) divr16u::divisor#1 divr16u::@5/(word) divr16u::divisor#2 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#5 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#7 ) - (word) divr16u::rem#10 ? phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#6 ← phi( divr16u::@2/(word) divr16u::divisor#1 divr16u::@5/(word) divr16u::divisor#2 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#5 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#7 ) + (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#7 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#2 ? phi( divr16u::@2/(word) divr16u::divisor#1 ) - (word) divr16u::rem#7 ? phi( divr16u::@2/(word) divr16u::rem#5 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#7 - (word) divr16u::divisor#2 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#7 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#2 ← phi( divr16u::@2/(word) divr16u::divisor#1 ) + (word) divr16u::rem#7 ← phi( divr16u::@2/(word) divr16u::rem#5 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#7 - (word) divr16u::divisor#2 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#8 ? phi( divr16u::@3/(word) divr16u::rem#10 ) - (word) rem16u#1 ? (word) divr16u::rem#8 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#8 ← phi( divr16u::@3/(word) divr16u::rem#10 ) + (word) rem16u#1 ← (word) divr16u::rem#8 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#10 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#3 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#3 - (word) rem16u#2 ? (word) rem16u#10 + (word) rem16u#10 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#3 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#3 + (word) rem16u#2 ← (word) rem16u#10 return to:@return div16u: scope:[div16u] from sin8s_gen - (word) rem16u#18 ? phi( sin8s_gen/(word) rem16u#19 ) - (word) div16u::divisor#1 ? phi( sin8s_gen/(word) div16u::divisor#0 ) - (word) div16u::dividend#1 ? phi( sin8s_gen/(word) div16u::dividend#0 ) - (word) divr16u::dividend#1 ? (word) div16u::dividend#1 - (word) divr16u::divisor#0 ? (word) div16u::divisor#1 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#18 ← phi( sin8s_gen/(word) rem16u#19 ) + (word) div16u::divisor#1 ← phi( sin8s_gen/(word) div16u::divisor#0 ) + (word) div16u::dividend#1 ← phi( sin8s_gen/(word) div16u::dividend#0 ) + (word) divr16u::dividend#1 ← (word) div16u::dividend#1 + (word) divr16u::divisor#0 ← (word) div16u::divisor#1 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div16u::@2 div16u::@2: scope:[div16u] from div16u - (word) rem16u#11 ? phi( div16u/(word) rem16u#2 ) - (word) divr16u::return#4 ? phi( div16u/(word) divr16u::return#2 ) - (word~) div16u::$0 ? (word) divr16u::return#4 - (word) rem16u#3 ? (word) rem16u#11 - (word) div16u::return#0 ? (word~) div16u::$0 + (word) rem16u#11 ← phi( div16u/(word) rem16u#2 ) + (word) divr16u::return#4 ← phi( div16u/(word) divr16u::return#2 ) + (word~) div16u::$0 ← (word) divr16u::return#4 + (word) rem16u#3 ← (word) rem16u#11 + (word) div16u::return#0 ← (word~) div16u::$0 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@2 - (word) rem16u#12 ? phi( div16u::@2/(word) rem16u#3 ) - (word) div16u::return#3 ? phi( div16u::@2/(word) div16u::return#0 ) - (word) div16u::return#1 ? (word) div16u::return#3 - (word) rem16u#4 ? (word) rem16u#12 + (word) rem16u#12 ← phi( div16u::@2/(word) rem16u#3 ) + (word) div16u::return#3 ← phi( div16u::@2/(word) div16u::return#0 ) + (word) div16u::return#1 ← (word) div16u::return#3 + (word) rem16u#4 ← (word) rem16u#12 return to:@return @5: scope:[] from @2 - (word) rem16u#35 ? phi( @2/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#35 ← phi( @2/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @5 - (word) rem16u#32 ? phi( @5/(word) rem16u#35 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#32 ← phi( @5/(word) rem16u#35 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@13 mul8u: scope:[mul8u] from mulu8_sel - (byte) mul8u::a#5 ? phi( mulu8_sel/(byte) mul8u::a#1 ) - (byte) mul8u::b#1 ? phi( mulu8_sel/(byte) mul8u::b#0 ) - (word) mul8u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#1 + (byte) mul8u::a#5 ← phi( mulu8_sel/(byte) mul8u::a#1 ) + (byte) mul8u::b#1 ← phi( mulu8_sel/(byte) mul8u::b#0 ) + (word) mul8u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#1 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 - (word) mul8u::mb#5 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) - (word) mul8u::res#4 ? phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) - (byte) mul8u::a#2 ? phi( mul8u/(byte) mul8u::a#5 mul8u::@4/(byte) mul8u::a#0 ) - (bool~) mul8u::$0 ? (byte) mul8u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#5 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) + (word) mul8u::res#4 ← phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) + (byte) mul8u::a#2 ← phi( mul8u/(byte) mul8u::a#5 mul8u::@4/(byte) mul8u::a#0 ) + (bool~) mul8u::$0 ← (byte) mul8u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul8u::$0) goto mul8u::@2 to:mul8u::@3 mul8u::@2: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#5 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::mb#4 ? phi( mul8u::@1/(word) mul8u::mb#5 ) - (byte) mul8u::a#3 ? phi( mul8u::@1/(byte) mul8u::a#2 ) - (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8u::$3 ? ! (bool~) mul8u::$2 + (word) mul8u::res#5 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::mb#4 ← phi( mul8u::@1/(word) mul8u::mb#5 ) + (byte) mul8u::a#3 ← phi( mul8u::@1/(byte) mul8u::a#2 ) + (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8u::$3 ← ! (bool~) mul8u::$2 if((bool~) mul8u::$3) goto mul8u::@4 to:mul8u::@7 mul8u::@3: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#2 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::return#0 ? (word) mul8u::res#2 + (word) mul8u::res#2 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::return#0 ← (word) mul8u::res#2 to:mul8u::@return mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 - (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) - (word) mul8u::mb#2 ? phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) - (byte) mul8u::a#4 ? phi( mul8u::@2/(byte) mul8u::a#3 mul8u::@7/(byte) mul8u::a#6 ) - (byte~) mul8u::$5 ? (byte) mul8u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) mul8u::a#0 ? (byte~) mul8u::$5 - (word~) mul8u::$6 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul8u::mb#1 ? (word~) mul8u::$6 + (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) + (word) mul8u::mb#2 ← phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) + (byte) mul8u::a#4 ← phi( mul8u::@2/(byte) mul8u::a#3 mul8u::@7/(byte) mul8u::a#6 ) + (byte~) mul8u::$5 ← (byte) mul8u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mul8u::a#0 ← (byte~) mul8u::$5 + (word~) mul8u::$6 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul8u::mb#1 ← (word~) mul8u::$6 to:mul8u::@1 mul8u::@7: scope:[mul8u] from mul8u::@2 - (byte) mul8u::a#6 ? phi( mul8u::@2/(byte) mul8u::a#3 ) - (word) mul8u::mb#3 ? phi( mul8u::@2/(word) mul8u::mb#4 ) - (word) mul8u::res#3 ? phi( mul8u::@2/(word) mul8u::res#5 ) - (word~) mul8u::$4 ? (word) mul8u::res#3 + (word) mul8u::mb#3 - (word) mul8u::res#1 ? (word~) mul8u::$4 + (byte) mul8u::a#6 ← phi( mul8u::@2/(byte) mul8u::a#3 ) + (word) mul8u::mb#3 ← phi( mul8u::@2/(word) mul8u::mb#4 ) + (word) mul8u::res#3 ← phi( mul8u::@2/(word) mul8u::res#5 ) + (word~) mul8u::$4 ← (word) mul8u::res#3 + (word) mul8u::mb#3 + (word) mul8u::res#1 ← (word~) mul8u::$4 to:mul8u::@4 mul8u::@return: scope:[mul8u] from mul8u::@3 - (word) mul8u::return#3 ? phi( mul8u::@3/(word) mul8u::return#0 ) - (word) mul8u::return#1 ? (word) mul8u::return#3 + (word) mul8u::return#3 ← phi( mul8u::@3/(word) mul8u::return#0 ) + (word) mul8u::return#1 ← (word) mul8u::return#3 return to:@return @13: scope:[] from @6 - (word) rem16u#29 ? phi( @6/(word) rem16u#32 ) - (dword) PI2_u4f28#0 ? (dword/signed dword) $6487ed51 - (dword) PI_u4f28#0 ? (dword/signed dword) $3243f6a9 - (dword) PI_HALF_u4f28#0 ? (dword/signed dword) $1921fb54 - (word) PI2_u4f12#0 ? (word/signed word/dword/signed dword) $6488 - (word) PI_u4f12#0 ? (word/signed word/dword/signed dword) $3244 - (word) PI_HALF_u4f12#0 ? (word/signed word/dword/signed dword) $1922 + (word) rem16u#29 ← phi( @6/(word) rem16u#32 ) + (dword) PI2_u4f28#0 ← (dword/signed dword) $6487ed51 + (dword) PI_u4f28#0 ← (dword/signed dword) $3243f6a9 + (dword) PI_HALF_u4f28#0 ← (dword/signed dword) $1921fb54 + (word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) $6488 + (word) PI_u4f12#0 ← (word/signed word/dword/signed dword) $3244 + (word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) $1922 to:@20 sin8s_gen: scope:[sin8s_gen] from main - (signed byte*) sin8s_gen::sintab#5 ? phi( main/(signed byte*) sin8s_gen::sintab#1 ) - (word) rem16u#19 ? phi( main/(word) rem16u#21 ) - (word) sin8s_gen::wavelength#1 ? phi( main/(word) sin8s_gen::wavelength#0 ) - (word) div16u::dividend#0 ? (word) PI2_u4f12#0 - (word) div16u::divisor#0 ? (word) sin8s_gen::wavelength#1 + (signed byte*) sin8s_gen::sintab#5 ← phi( main/(signed byte*) sin8s_gen::sintab#1 ) + (word) rem16u#19 ← phi( main/(word) rem16u#21 ) + (word) sin8s_gen::wavelength#1 ← phi( main/(word) sin8s_gen::wavelength#0 ) + (word) div16u::dividend#0 ← (word) PI2_u4f12#0 + (word) div16u::divisor#0 ← (word) sin8s_gen::wavelength#1 call div16u - (word) div16u::return#2 ? (word) div16u::return#1 + (word) div16u::return#2 ← (word) div16u::return#1 to:sin8s_gen::@3 sin8s_gen::@3: scope:[sin8s_gen] from sin8s_gen - (word) sin8s_gen::wavelength#4 ? phi( sin8s_gen/(word) sin8s_gen::wavelength#1 ) - (signed byte*) sin8s_gen::sintab#4 ? phi( sin8s_gen/(signed byte*) sin8s_gen::sintab#5 ) - (word) rem16u#13 ? phi( sin8s_gen/(word) rem16u#4 ) - (word) div16u::return#4 ? phi( sin8s_gen/(word) div16u::return#2 ) - (word~) sin8s_gen::$0 ? (word) div16u::return#4 - (word) rem16u#5 ? (word) rem16u#13 - (word) sin8s_gen::step#0 ? (word~) sin8s_gen::$0 - (word) sin8s_gen::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin8s_gen::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin8s_gen::wavelength#4 ← phi( sin8s_gen/(word) sin8s_gen::wavelength#1 ) + (signed byte*) sin8s_gen::sintab#4 ← phi( sin8s_gen/(signed byte*) sin8s_gen::sintab#5 ) + (word) rem16u#13 ← phi( sin8s_gen/(word) rem16u#4 ) + (word) div16u::return#4 ← phi( sin8s_gen/(word) div16u::return#2 ) + (word~) sin8s_gen::$0 ← (word) div16u::return#4 + (word) rem16u#5 ← (word) rem16u#13 + (word) sin8s_gen::step#0 ← (word~) sin8s_gen::$0 + (word) sin8s_gen::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin8s_gen::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin8s_gen::@1 sin8s_gen::@1: scope:[sin8s_gen] from sin8s_gen::@3 sin8s_gen::@4 - (word) rem16u#24 ? phi( sin8s_gen::@3/(word) rem16u#5 sin8s_gen::@4/(word) rem16u#20 ) - (word) sin8s_gen::wavelength#3 ? phi( sin8s_gen::@3/(word) sin8s_gen::wavelength#4 sin8s_gen::@4/(word) sin8s_gen::wavelength#2 ) - (word) sin8s_gen::i#3 ? phi( sin8s_gen::@3/(word) sin8s_gen::i#0 sin8s_gen::@4/(word) sin8s_gen::i#1 ) - (word) sin8s_gen::step#2 ? phi( sin8s_gen::@3/(word) sin8s_gen::step#0 sin8s_gen::@4/(word) sin8s_gen::step#1 ) - (signed byte*) sin8s_gen::sintab#3 ? phi( sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#4 sin8s_gen::@4/(signed byte*) sin8s_gen::sintab#0 ) - (word) sin8s_gen::x#2 ? phi( sin8s_gen::@3/(word) sin8s_gen::x#0 sin8s_gen::@4/(word) sin8s_gen::x#1 ) - (word) sin8s::x#0 ? (word) sin8s_gen::x#2 + (word) rem16u#24 ← phi( sin8s_gen::@3/(word) rem16u#5 sin8s_gen::@4/(word) rem16u#20 ) + (word) sin8s_gen::wavelength#3 ← phi( sin8s_gen::@3/(word) sin8s_gen::wavelength#4 sin8s_gen::@4/(word) sin8s_gen::wavelength#2 ) + (word) sin8s_gen::i#3 ← phi( sin8s_gen::@3/(word) sin8s_gen::i#0 sin8s_gen::@4/(word) sin8s_gen::i#1 ) + (word) sin8s_gen::step#2 ← phi( sin8s_gen::@3/(word) sin8s_gen::step#0 sin8s_gen::@4/(word) sin8s_gen::step#1 ) + (signed byte*) sin8s_gen::sintab#3 ← phi( sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#4 sin8s_gen::@4/(signed byte*) sin8s_gen::sintab#0 ) + (word) sin8s_gen::x#2 ← phi( sin8s_gen::@3/(word) sin8s_gen::x#0 sin8s_gen::@4/(word) sin8s_gen::x#1 ) + (word) sin8s::x#0 ← (word) sin8s_gen::x#2 call sin8s - (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#2 + (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#2 to:sin8s_gen::@4 sin8s_gen::@4: scope:[sin8s_gen] from sin8s_gen::@1 - (word) rem16u#20 ? phi( sin8s_gen::@1/(word) rem16u#24 ) - (word) sin8s_gen::wavelength#2 ? phi( sin8s_gen::@1/(word) sin8s_gen::wavelength#3 ) - (word) sin8s_gen::i#2 ? phi( sin8s_gen::@1/(word) sin8s_gen::i#3 ) - (word) sin8s_gen::step#1 ? phi( sin8s_gen::@1/(word) sin8s_gen::step#2 ) - (word) sin8s_gen::x#3 ? phi( sin8s_gen::@1/(word) sin8s_gen::x#2 ) - (signed byte*) sin8s_gen::sintab#2 ? phi( sin8s_gen::@1/(signed byte*) sin8s_gen::sintab#3 ) - (signed byte) sin8s::return#3 ? phi( sin8s_gen::@1/(signed byte) sin8s::return#0 ) - (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#3 - *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 - (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 - (word~) sin8s_gen::$2 ? (word) sin8s_gen::x#3 + (word) sin8s_gen::step#1 - (word) sin8s_gen::x#1 ? (word~) sin8s_gen::$2 - (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 - (bool~) sin8s_gen::$3 ? (word) sin8s_gen::i#1 < (word) sin8s_gen::wavelength#2 + (word) rem16u#20 ← phi( sin8s_gen::@1/(word) rem16u#24 ) + (word) sin8s_gen::wavelength#2 ← phi( sin8s_gen::@1/(word) sin8s_gen::wavelength#3 ) + (word) sin8s_gen::i#2 ← phi( sin8s_gen::@1/(word) sin8s_gen::i#3 ) + (word) sin8s_gen::step#1 ← phi( sin8s_gen::@1/(word) sin8s_gen::step#2 ) + (word) sin8s_gen::x#3 ← phi( sin8s_gen::@1/(word) sin8s_gen::x#2 ) + (signed byte*) sin8s_gen::sintab#2 ← phi( sin8s_gen::@1/(signed byte*) sin8s_gen::sintab#3 ) + (signed byte) sin8s::return#3 ← phi( sin8s_gen::@1/(signed byte) sin8s::return#0 ) + (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#3 + *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 + (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 + (word~) sin8s_gen::$2 ← (word) sin8s_gen::x#3 + (word) sin8s_gen::step#1 + (word) sin8s_gen::x#1 ← (word~) sin8s_gen::$2 + (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 + (bool~) sin8s_gen::$3 ← (word) sin8s_gen::i#1 < (word) sin8s_gen::wavelength#2 if((bool~) sin8s_gen::$3) goto sin8s_gen::@1 to:sin8s_gen::@return sin8s_gen::@return: scope:[sin8s_gen] from sin8s_gen::@4 - (word) rem16u#14 ? phi( sin8s_gen::@4/(word) rem16u#20 ) - (word) rem16u#6 ? (word) rem16u#14 + (word) rem16u#14 ← phi( sin8s_gen::@4/(word) rem16u#20 ) + (word) rem16u#6 ← (word) rem16u#14 return to:@return sin8s: scope:[sin8s] from sin8s_gen::@1 - (word) sin8s::x#3 ? phi( sin8s_gen::@1/(word) sin8s::x#0 ) - (byte) sin8s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin8s::$0 ? (word) sin8s::x#3 >= (word) PI_u4f12#0 - (bool~) sin8s::$1 ? ! (bool~) sin8s::$0 + (word) sin8s::x#3 ← phi( sin8s_gen::@1/(word) sin8s::x#0 ) + (byte) sin8s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin8s::$0 ← (word) sin8s::x#3 >= (word) PI_u4f12#0 + (bool~) sin8s::$1 ← ! (bool~) sin8s::$0 if((bool~) sin8s::$1) goto sin8s::@1 to:sin8s::@5 sin8s::@1: scope:[sin8s] from sin8s sin8s::@5 - (byte) sin8s::isUpper#10 ? phi( sin8s/(byte) sin8s::isUpper#0 sin8s::@5/(byte) sin8s::isUpper#1 ) - (word) sin8s::x#4 ? phi( sin8s/(word) sin8s::x#3 sin8s::@5/(word) sin8s::x#1 ) - (bool~) sin8s::$2 ? (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 - (bool~) sin8s::$3 ? ! (bool~) sin8s::$2 + (byte) sin8s::isUpper#10 ← phi( sin8s/(byte) sin8s::isUpper#0 sin8s::@5/(byte) sin8s::isUpper#1 ) + (word) sin8s::x#4 ← phi( sin8s/(word) sin8s::x#3 sin8s::@5/(word) sin8s::x#1 ) + (bool~) sin8s::$2 ← (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 + (bool~) sin8s::$3 ← ! (bool~) sin8s::$2 if((bool~) sin8s::$3) goto sin8s::@2 to:sin8s::@6 sin8s::@5: scope:[sin8s] from sin8s - (word) sin8s::x#5 ? phi( sin8s/(word) sin8s::x#3 ) - (word~) sin8s::$19 ? (word) sin8s::x#5 - (word) PI_u4f12#0 - (word) sin8s::x#1 ? (word~) sin8s::$19 - (byte) sin8s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) sin8s::x#5 ← phi( sin8s/(word) sin8s::x#3 ) + (word~) sin8s::$19 ← (word) sin8s::x#5 - (word) PI_u4f12#0 + (word) sin8s::x#1 ← (word~) sin8s::$19 + (byte) sin8s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin8s::@1 sin8s::@2: scope:[sin8s] from sin8s::@1 sin8s::@6 - (byte) sin8s::isUpper#9 ? phi( sin8s::@1/(byte) sin8s::isUpper#10 sin8s::@6/(byte) sin8s::isUpper#11 ) - (word) sin8s::x#6 ? phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) - (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte~) sin8s::$5 ? > (word~) sin8s::$4 - (byte) sin8s::x1#0 ? (byte~) sin8s::$5 - (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 - (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 - (byte) mulu8_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#9 ← phi( sin8s::@1/(byte) sin8s::isUpper#10 sin8s::@6/(byte) sin8s::isUpper#11 ) + (word) sin8s::x#6 ← phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) + (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte~) sin8s::$5 ← > (word~) sin8s::$4 + (byte) sin8s::x1#0 ← (byte~) sin8s::$5 + (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 + (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 + (byte) mulu8_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#6 to:sin8s::@10 sin8s::@10: scope:[sin8s] from sin8s::@2 - (byte) sin8s::isUpper#8 ? phi( sin8s::@2/(byte) sin8s::isUpper#9 ) - (byte) sin8s::x1#1 ? phi( sin8s::@2/(byte) sin8s::x1#0 ) - (byte) mulu8_sel::return#7 ? phi( sin8s::@2/(byte) mulu8_sel::return#0 ) - (byte~) sin8s::$6 ? (byte) mulu8_sel::return#7 - (byte) sin8s::x2#0 ? (byte~) sin8s::$6 - (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 - (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#1 - (byte) mulu8_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin8s::isUpper#8 ← phi( sin8s::@2/(byte) sin8s::isUpper#9 ) + (byte) sin8s::x1#1 ← phi( sin8s::@2/(byte) sin8s::x1#0 ) + (byte) mulu8_sel::return#7 ← phi( sin8s::@2/(byte) mulu8_sel::return#0 ) + (byte~) sin8s::$6 ← (byte) mulu8_sel::return#7 + (byte) sin8s::x2#0 ← (byte~) sin8s::$6 + (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 + (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#1 + (byte) mulu8_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu8_sel - (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#6 to:sin8s::@11 sin8s::@11: scope:[sin8s] from sin8s::@10 - (byte) sin8s::isUpper#7 ? phi( sin8s::@10/(byte) sin8s::isUpper#8 ) - (byte) sin8s::x1#4 ? phi( sin8s::@10/(byte) sin8s::x1#1 ) - (byte) mulu8_sel::return#8 ? phi( sin8s::@10/(byte) mulu8_sel::return#1 ) - (byte~) sin8s::$7 ? (byte) mulu8_sel::return#8 - (byte) sin8s::x3#0 ? (byte~) sin8s::$7 - (byte) sin8s::DIV_6#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2b - (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 - (byte) mulu8_sel::v2#2 ? (byte) sin8s::DIV_6#0 - (byte) mulu8_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin8s::isUpper#7 ← phi( sin8s::@10/(byte) sin8s::isUpper#8 ) + (byte) sin8s::x1#4 ← phi( sin8s::@10/(byte) sin8s::x1#1 ) + (byte) mulu8_sel::return#8 ← phi( sin8s::@10/(byte) mulu8_sel::return#1 ) + (byte~) sin8s::$7 ← (byte) mulu8_sel::return#8 + (byte) sin8s::x3#0 ← (byte~) sin8s::$7 + (byte) sin8s::DIV_6#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2b + (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 + (byte) mulu8_sel::v2#2 ← (byte) sin8s::DIV_6#0 + (byte) mulu8_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu8_sel - (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#6 to:sin8s::@12 sin8s::@12: scope:[sin8s] from sin8s::@11 - (byte) sin8s::isUpper#6 ? phi( sin8s::@11/(byte) sin8s::isUpper#7 ) - (byte) sin8s::x3#1 ? phi( sin8s::@11/(byte) sin8s::x3#0 ) - (byte) sin8s::x1#2 ? phi( sin8s::@11/(byte) sin8s::x1#4 ) - (byte) mulu8_sel::return#9 ? phi( sin8s::@11/(byte) mulu8_sel::return#2 ) - (byte~) sin8s::$8 ? (byte) mulu8_sel::return#9 - (byte) sin8s::x3_6#0 ? (byte~) sin8s::$8 - (byte~) sin8s::$9 ? (byte) sin8s::x1#2 - (byte) sin8s::x3_6#0 - (byte) sin8s::usinx#0 ? (byte~) sin8s::$9 - (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#1 - (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#2 - (byte) mulu8_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#6 ← phi( sin8s::@11/(byte) sin8s::isUpper#7 ) + (byte) sin8s::x3#1 ← phi( sin8s::@11/(byte) sin8s::x3#0 ) + (byte) sin8s::x1#2 ← phi( sin8s::@11/(byte) sin8s::x1#4 ) + (byte) mulu8_sel::return#9 ← phi( sin8s::@11/(byte) mulu8_sel::return#2 ) + (byte~) sin8s::$8 ← (byte) mulu8_sel::return#9 + (byte) sin8s::x3_6#0 ← (byte~) sin8s::$8 + (byte~) sin8s::$9 ← (byte) sin8s::x1#2 - (byte) sin8s::x3_6#0 + (byte) sin8s::usinx#0 ← (byte~) sin8s::$9 + (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#1 + (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#2 + (byte) mulu8_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#3 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#3 ← (byte) mulu8_sel::return#6 to:sin8s::@13 sin8s::@13: scope:[sin8s] from sin8s::@12 - (byte) sin8s::isUpper#5 ? phi( sin8s::@12/(byte) sin8s::isUpper#6 ) - (byte) sin8s::usinx#7 ? phi( sin8s::@12/(byte) sin8s::usinx#0 ) - (byte) sin8s::x1#3 ? phi( sin8s::@12/(byte) sin8s::x1#2 ) - (byte) mulu8_sel::return#10 ? phi( sin8s::@12/(byte) mulu8_sel::return#3 ) - (byte~) sin8s::$10 ? (byte) mulu8_sel::return#10 - (byte) sin8s::x4#0 ? (byte~) sin8s::$10 - (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 - (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#3 - (byte) mulu8_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#5 ← phi( sin8s::@12/(byte) sin8s::isUpper#6 ) + (byte) sin8s::usinx#7 ← phi( sin8s::@12/(byte) sin8s::usinx#0 ) + (byte) sin8s::x1#3 ← phi( sin8s::@12/(byte) sin8s::x1#2 ) + (byte) mulu8_sel::return#10 ← phi( sin8s::@12/(byte) mulu8_sel::return#3 ) + (byte~) sin8s::$10 ← (byte) mulu8_sel::return#10 + (byte) sin8s::x4#0 ← (byte~) sin8s::$10 + (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 + (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#3 + (byte) mulu8_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#4 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#4 ← (byte) mulu8_sel::return#6 to:sin8s::@14 sin8s::@14: scope:[sin8s] from sin8s::@13 - (byte) sin8s::isUpper#3 ? phi( sin8s::@13/(byte) sin8s::isUpper#5 ) - (byte) sin8s::usinx#3 ? phi( sin8s::@13/(byte) sin8s::usinx#7 ) - (byte) mulu8_sel::return#11 ? phi( sin8s::@13/(byte) mulu8_sel::return#4 ) - (byte~) sin8s::$11 ? (byte) mulu8_sel::return#11 - (byte) sin8s::x5#0 ? (byte~) sin8s::$11 - (byte~) sin8s::$12 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) sin8s::x5_128#0 ? (byte~) sin8s::$12 - (byte~) sin8s::$13 ? (byte) sin8s::usinx#3 + (byte) sin8s::x5_128#0 - (byte) sin8s::usinx#1 ? (byte~) sin8s::$13 - (bool~) sin8s::$14 ? (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 - (bool~) sin8s::$15 ? ! (bool~) sin8s::$14 + (byte) sin8s::isUpper#3 ← phi( sin8s::@13/(byte) sin8s::isUpper#5 ) + (byte) sin8s::usinx#3 ← phi( sin8s::@13/(byte) sin8s::usinx#7 ) + (byte) mulu8_sel::return#11 ← phi( sin8s::@13/(byte) mulu8_sel::return#4 ) + (byte~) sin8s::$11 ← (byte) mulu8_sel::return#11 + (byte) sin8s::x5#0 ← (byte~) sin8s::$11 + (byte~) sin8s::$12 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) sin8s::x5_128#0 ← (byte~) sin8s::$12 + (byte~) sin8s::$13 ← (byte) sin8s::usinx#3 + (byte) sin8s::x5_128#0 + (byte) sin8s::usinx#1 ← (byte~) sin8s::$13 + (bool~) sin8s::$14 ← (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 + (bool~) sin8s::$15 ← ! (bool~) sin8s::$14 if((bool~) sin8s::$15) goto sin8s::@3 to:sin8s::@7 sin8s::@6: scope:[sin8s] from sin8s::@1 - (byte) sin8s::isUpper#11 ? phi( sin8s::@1/(byte) sin8s::isUpper#10 ) - (word) sin8s::x#7 ? phi( sin8s::@1/(word) sin8s::x#4 ) - (word~) sin8s::$20 ? (word) PI_u4f12#0 - (word) sin8s::x#7 - (word) sin8s::x#2 ? (word~) sin8s::$20 + (byte) sin8s::isUpper#11 ← phi( sin8s::@1/(byte) sin8s::isUpper#10 ) + (word) sin8s::x#7 ← phi( sin8s::@1/(word) sin8s::x#4 ) + (word~) sin8s::$20 ← (word) PI_u4f12#0 - (word) sin8s::x#7 + (word) sin8s::x#2 ← (word~) sin8s::$20 to:sin8s::@2 sin8s::@3: scope:[sin8s] from sin8s::@14 sin8s::@7 - (byte) sin8s::isUpper#2 ? phi( sin8s::@14/(byte) sin8s::isUpper#3 sin8s::@7/(byte) sin8s::isUpper#4 ) - (byte) sin8s::usinx#4 ? phi( sin8s::@14/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) - (signed byte~) sin8s::$16 ? ((signed byte)) (byte) sin8s::usinx#4 - (signed byte) sin8s::sinx#0 ? (signed byte~) sin8s::$16 - (bool~) sin8s::$17 ? (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin8s::$18 ? ! (bool~) sin8s::$17 + (byte) sin8s::isUpper#2 ← phi( sin8s::@14/(byte) sin8s::isUpper#3 sin8s::@7/(byte) sin8s::isUpper#4 ) + (byte) sin8s::usinx#4 ← phi( sin8s::@14/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) + (signed byte~) sin8s::$16 ← ((signed byte)) (byte) sin8s::usinx#4 + (signed byte) sin8s::sinx#0 ← (signed byte~) sin8s::$16 + (bool~) sin8s::$17 ← (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin8s::$18 ← ! (bool~) sin8s::$17 if((bool~) sin8s::$18) goto sin8s::@4 to:sin8s::@8 sin8s::@7: scope:[sin8s] from sin8s::@14 - (byte) sin8s::isUpper#4 ? phi( sin8s::@14/(byte) sin8s::isUpper#3 ) - (byte) sin8s::usinx#5 ? phi( sin8s::@14/(byte) sin8s::usinx#1 ) - (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#5 + (byte) sin8s::isUpper#4 ← phi( sin8s::@14/(byte) sin8s::isUpper#3 ) + (byte) sin8s::usinx#5 ← phi( sin8s::@14/(byte) sin8s::usinx#1 ) + (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#5 to:sin8s::@3 sin8s::@4: scope:[sin8s] from sin8s::@3 sin8s::@8 - (signed byte) sin8s::sinx#2 ? phi( sin8s::@3/(signed byte) sin8s::sinx#0 sin8s::@8/(signed byte) sin8s::sinx#1 ) - (signed byte) sin8s::return#1 ? (signed byte) sin8s::sinx#2 + (signed byte) sin8s::sinx#2 ← phi( sin8s::@3/(signed byte) sin8s::sinx#0 sin8s::@8/(signed byte) sin8s::sinx#1 ) + (signed byte) sin8s::return#1 ← (signed byte) sin8s::sinx#2 to:sin8s::@return sin8s::@8: scope:[sin8s] from sin8s::@3 - (byte) sin8s::usinx#6 ? phi( sin8s::@3/(byte) sin8s::usinx#4 ) - (signed byte~) sin8s::$21 ? ((signed byte)) (byte) sin8s::usinx#6 - (signed byte~) sin8s::$22 ? - (signed byte~) sin8s::$21 - (signed byte) sin8s::sinx#1 ? (signed byte~) sin8s::$22 + (byte) sin8s::usinx#6 ← phi( sin8s::@3/(byte) sin8s::usinx#4 ) + (signed byte~) sin8s::$21 ← ((signed byte)) (byte) sin8s::usinx#6 + (signed byte~) sin8s::$22 ← - (signed byte~) sin8s::$21 + (signed byte) sin8s::sinx#1 ← (signed byte~) sin8s::$22 to:sin8s::@4 sin8s::@return: scope:[sin8s] from sin8s::@4 - (signed byte) sin8s::return#4 ? phi( sin8s::@4/(signed byte) sin8s::return#1 ) - (signed byte) sin8s::return#2 ? (signed byte) sin8s::return#4 + (signed byte) sin8s::return#4 ← phi( sin8s::@4/(signed byte) sin8s::return#1 ) + (signed byte) sin8s::return#2 ← (signed byte) sin8s::return#4 return to:@return mulu8_sel: scope:[mulu8_sel] from sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@13 sin8s::@2 - (byte) mulu8_sel::select#6 ? phi( sin8s::@10/(byte) mulu8_sel::select#1 sin8s::@11/(byte) mulu8_sel::select#2 sin8s::@12/(byte) mulu8_sel::select#3 sin8s::@13/(byte) mulu8_sel::select#4 sin8s::@2/(byte) mulu8_sel::select#0 ) - (byte) mulu8_sel::v2#5 ? phi( sin8s::@10/(byte) mulu8_sel::v2#1 sin8s::@11/(byte) mulu8_sel::v2#2 sin8s::@12/(byte) mulu8_sel::v2#3 sin8s::@13/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) - (byte) mulu8_sel::v1#5 ? phi( sin8s::@10/(byte) mulu8_sel::v1#1 sin8s::@11/(byte) mulu8_sel::v1#2 sin8s::@12/(byte) mulu8_sel::v1#3 sin8s::@13/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) - (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 + (byte) mulu8_sel::select#6 ← phi( sin8s::@10/(byte) mulu8_sel::select#1 sin8s::@11/(byte) mulu8_sel::select#2 sin8s::@12/(byte) mulu8_sel::select#3 sin8s::@13/(byte) mulu8_sel::select#4 sin8s::@2/(byte) mulu8_sel::select#0 ) + (byte) mulu8_sel::v2#5 ← phi( sin8s::@10/(byte) mulu8_sel::v2#1 sin8s::@11/(byte) mulu8_sel::v2#2 sin8s::@12/(byte) mulu8_sel::v2#3 sin8s::@13/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) + (byte) mulu8_sel::v1#5 ← phi( sin8s::@10/(byte) mulu8_sel::v1#1 sin8s::@11/(byte) mulu8_sel::v1#2 sin8s::@12/(byte) mulu8_sel::v1#3 sin8s::@13/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) + (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 call mul8u - (word) mul8u::return#2 ? (word) mul8u::return#1 + (word) mul8u::return#2 ← (word) mul8u::return#1 to:mulu8_sel::@2 mulu8_sel::@2: scope:[mulu8_sel] from mulu8_sel - (byte) mulu8_sel::select#5 ? phi( mulu8_sel/(byte) mulu8_sel::select#6 ) - (word) mul8u::return#4 ? phi( mulu8_sel/(word) mul8u::return#2 ) - (word~) mulu8_sel::$0 ? (word) mul8u::return#4 - (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 - (byte~) mulu8_sel::$2 ? > (word~) mulu8_sel::$1 - (byte) mulu8_sel::return#5 ? (byte~) mulu8_sel::$2 + (byte) mulu8_sel::select#5 ← phi( mulu8_sel/(byte) mulu8_sel::select#6 ) + (word) mul8u::return#4 ← phi( mulu8_sel/(word) mul8u::return#2 ) + (word~) mulu8_sel::$0 ← (word) mul8u::return#4 + (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 + (byte~) mulu8_sel::$2 ← > (word~) mulu8_sel::$1 + (byte) mulu8_sel::return#5 ← (byte~) mulu8_sel::$2 to:mulu8_sel::@return mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@2 - (byte) mulu8_sel::return#12 ? phi( mulu8_sel::@2/(byte) mulu8_sel::return#5 ) - (byte) mulu8_sel::return#6 ? (byte) mulu8_sel::return#12 + (byte) mulu8_sel::return#12 ← phi( mulu8_sel::@2/(byte) mulu8_sel::return#5 ) + (byte) mulu8_sel::return#6 ← (byte) mulu8_sel::return#12 return to:@return @20: scope:[] from @13 - (word) rem16u#27 ? phi( @13/(word) rem16u#29 ) - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (word) rem16u#27 ← phi( @13/(word) rem16u#29 ) + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@32 print_str: scope:[print_str] from main::@3 main::@7 - (byte*) print_char_cursor#47 ? phi( main::@3/(byte*) print_char_cursor#45 main::@7/(byte*) print_char_cursor#15 ) - (byte*) print_str::str#5 ? phi( main::@3/(byte*) print_str::str#2 main::@7/(byte*) print_str::str#1 ) + (byte*) print_char_cursor#47 ← phi( main::@3/(byte*) print_char_cursor#45 main::@7/(byte*) print_char_cursor#15 ) + (byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@7/(byte*) print_str::str#1 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#38 ? phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#3) != (byte) '@' + (byte*) print_char_cursor#38 ← phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#3) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#20 ? phi( print_str::@1/(byte*) print_char_cursor#38 ) - (byte*) print_str::str#4 ? phi( print_str::@1/(byte*) print_str::str#3 ) - *((byte*) print_char_cursor#20) ? *((byte*) print_str::str#4) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#20 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#4 + (byte*) print_char_cursor#20 ← phi( print_str::@1/(byte*) print_char_cursor#38 ) + (byte*) print_str::str#4 ← phi( print_str::@1/(byte*) print_str::str#3 ) + *((byte*) print_char_cursor#20) ← *((byte*) print_str::str#4) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#4 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#21 ? phi( print_str::@1/(byte*) print_char_cursor#38 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#21 + (byte*) print_char_cursor#21 ← phi( print_str::@1/(byte*) print_char_cursor#38 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#21 return to:@return print_sbyte: scope:[print_sbyte] from main::@2 - (byte*) print_char_cursor#48 ? phi( main::@2/(byte*) print_char_cursor#44 ) - (signed byte) print_sbyte::b#2 ? phi( main::@2/(signed byte) print_sbyte::b#1 ) - (bool~) print_sbyte::$0 ? (signed byte) print_sbyte::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_char_cursor#48 ← phi( main::@2/(byte*) print_char_cursor#44 ) + (signed byte) print_sbyte::b#2 ← phi( main::@2/(signed byte) print_sbyte::b#1 ) + (bool~) print_sbyte::$0 ← (signed byte) print_sbyte::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) print_sbyte::$0) goto print_sbyte::@1 to:print_sbyte::@3 print_sbyte::@1: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#5 ? phi( print_sbyte/(signed byte) print_sbyte::b#2 ) - (byte*) print_char_cursor#39 ? phi( print_sbyte/(byte*) print_char_cursor#48 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed byte) print_sbyte::b#5 ← phi( print_sbyte/(signed byte) print_sbyte::b#2 ) + (byte*) print_char_cursor#39 ← phi( print_sbyte/(byte*) print_char_cursor#48 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sbyte::@5 print_sbyte::@5: scope:[print_sbyte] from print_sbyte::@1 - (signed byte) print_sbyte::b#3 ? phi( print_sbyte::@1/(signed byte) print_sbyte::b#5 ) - (byte*) print_char_cursor#22 ? phi( print_sbyte::@1/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#3 ? (byte*) print_char_cursor#22 - (signed byte~) print_sbyte::$5 ? - (signed byte) print_sbyte::b#3 - (signed byte) print_sbyte::b#0 ? (signed byte~) print_sbyte::$5 + (signed byte) print_sbyte::b#3 ← phi( print_sbyte::@1/(signed byte) print_sbyte::b#5 ) + (byte*) print_char_cursor#22 ← phi( print_sbyte::@1/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#22 + (signed byte~) print_sbyte::$5 ← - (signed byte) print_sbyte::b#3 + (signed byte) print_sbyte::b#0 ← (signed byte~) print_sbyte::$5 to:print_sbyte::@2 print_sbyte::@3: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#7 ? phi( print_sbyte/(signed byte) print_sbyte::b#2 ) - (byte*) print_char_cursor#40 ? phi( print_sbyte/(byte*) print_char_cursor#48 ) - (byte) print_char::ch#1 ? (byte) ' ' + (signed byte) print_sbyte::b#7 ← phi( print_sbyte/(signed byte) print_sbyte::b#2 ) + (byte*) print_char_cursor#40 ← phi( print_sbyte/(byte*) print_char_cursor#48 ) + (byte) print_char::ch#1 ← (byte) ' ' call print_char to:print_sbyte::@6 print_sbyte::@6: scope:[print_sbyte] from print_sbyte::@3 - (signed byte) print_sbyte::b#6 ? phi( print_sbyte::@3/(signed byte) print_sbyte::b#7 ) - (byte*) print_char_cursor#23 ? phi( print_sbyte::@3/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#23 + (signed byte) print_sbyte::b#6 ← phi( print_sbyte::@3/(signed byte) print_sbyte::b#7 ) + (byte*) print_char_cursor#23 ← phi( print_sbyte::@3/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#23 to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@5 print_sbyte::@6 - (byte*) print_char_cursor#41 ? phi( print_sbyte::@5/(byte*) print_char_cursor#3 print_sbyte::@6/(byte*) print_char_cursor#4 ) - (signed byte) print_sbyte::b#4 ? phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#6 ) - (byte~) print_sbyte::$1 ? ((byte)) (signed byte) print_sbyte::b#4 - (byte) print_byte::b#0 ? (byte~) print_sbyte::$1 + (byte*) print_char_cursor#41 ← phi( print_sbyte::@5/(byte*) print_char_cursor#3 print_sbyte::@6/(byte*) print_char_cursor#4 ) + (signed byte) print_sbyte::b#4 ← phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#6 ) + (byte~) print_sbyte::$1 ← ((byte)) (signed byte) print_sbyte::b#4 + (byte) print_byte::b#0 ← (byte~) print_sbyte::$1 call print_byte to:print_sbyte::@7 print_sbyte::@7: scope:[print_sbyte] from print_sbyte::@2 - (byte*) print_char_cursor#24 ? phi( print_sbyte::@2/(byte*) print_char_cursor#9 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#24 + (byte*) print_char_cursor#24 ← phi( print_sbyte::@2/(byte*) print_char_cursor#9 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#24 to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@7 - (byte*) print_char_cursor#25 ? phi( print_sbyte::@7/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#25 + (byte*) print_char_cursor#25 ← phi( print_sbyte::@7/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#25 return to:@return @32: scope:[] from @20 - (byte*) print_screen#7 ? phi( @20/(byte*) print_screen#0 ) - (byte*) print_char_cursor#51 ? phi( @20/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#15 ? phi( @20/(byte*) print_line_cursor#0 ) - (word) rem16u#26 ? phi( @20/(word) rem16u#27 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#7 ← phi( @20/(byte*) print_screen#0 ) + (byte*) print_char_cursor#51 ← phi( @20/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#15 ← phi( @20/(byte*) print_line_cursor#0 ) + (word) rem16u#26 ← phi( @20/(word) rem16u#27 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@40 print_byte: scope:[print_byte] from print_sbyte::@2 - (byte*) print_char_cursor#42 ? phi( print_sbyte::@2/(byte*) print_char_cursor#41 ) - (byte) print_byte::b#1 ? phi( print_sbyte::@2/(byte) print_byte::b#0 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#1 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#2 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#42 ← phi( print_sbyte::@2/(byte*) print_char_cursor#41 ) + (byte) print_byte::b#1 ← phi( print_sbyte::@2/(byte) print_byte::b#0 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#1 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#2 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#2 ? phi( print_byte/(byte) print_byte::b#1 ) - (byte*) print_char_cursor#26 ? phi( print_byte/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#26 - (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#3 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#2 ← phi( print_byte/(byte) print_byte::b#1 ) + (byte*) print_char_cursor#26 ← phi( print_byte/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#26 + (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#3 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#27 ? phi( print_byte::@1/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#27 + (byte*) print_char_cursor#27 ← phi( print_byte::@1/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#27 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#28 ? phi( print_byte::@2/(byte*) print_char_cursor#8 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#28 + (byte*) print_char_cursor#28 ← phi( print_byte::@2/(byte*) print_char_cursor#8 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#28 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 - (byte*) print_char_cursor#29 ? phi( print_byte/(byte*) print_char_cursor#42 print_byte::@1/(byte*) print_char_cursor#7 print_sbyte::@1/(byte*) print_char_cursor#39 print_sbyte::@3/(byte*) print_char_cursor#40 ) - (byte) print_char::ch#4 ? phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) print_char::ch#0 print_sbyte::@3/(byte) print_char::ch#1 ) - *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 - (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 + (byte*) print_char_cursor#29 ← phi( print_byte/(byte*) print_char_cursor#42 print_byte::@1/(byte*) print_char_cursor#7 print_sbyte::@1/(byte*) print_char_cursor#39 print_sbyte::@3/(byte*) print_char_cursor#40 ) + (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) print_char::ch#0 print_sbyte::@3/(byte) print_char::ch#1 ) + *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 + (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#30 ? phi( print_char/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#30 + (byte*) print_char_cursor#30 ← phi( print_char/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#30 return to:@return print_cls: scope:[print_cls] from main::@5 - (byte*) print_screen#1 ? phi( main::@5/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main::@5/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#1 ? (byte*) print_screen#3 - (byte*) print_char_cursor#12 ? (byte*) print_line_cursor#1 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#1 ← (byte*) print_screen#3 + (byte*) print_char_cursor#12 ← (byte*) print_line_cursor#1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#31 ? phi( print_cls::@2/(byte*) print_char_cursor#12 ) - (byte*) print_line_cursor#6 ? phi( print_cls::@2/(byte*) print_line_cursor#1 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#6 - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#31 + (byte*) print_char_cursor#31 ← phi( print_cls::@2/(byte*) print_char_cursor#12 ) + (byte*) print_line_cursor#6 ← phi( print_cls::@2/(byte*) print_line_cursor#1 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#6 + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#31 return to:@return main: scope:[main] from @40 - (byte*) print_char_cursor#49 ? phi( @40/(byte*) print_char_cursor#46 ) - (byte*) print_line_cursor#13 ? phi( @40/(byte*) print_line_cursor#12 ) - (byte*) print_screen#5 ? phi( @40/(byte*) print_screen#6 ) - (word) rem16u#21 ? phi( @40/(word) rem16u#23 ) - (word) main::wavelength#0 ? (byte/word/signed word/dword/signed dword) $c0 - (signed byte[$c0]) main::sintab2#0 ? { fill( $c0, 0) } - (byte[]) main::sintabref#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $15, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $1d, (byte/signed byte/word/signed word/dword/signed dword) $21, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $2d, (byte/signed byte/word/signed word/dword/signed dword) $31, (byte/signed byte/word/signed word/dword/signed dword) $35, (byte/signed byte/word/signed word/dword/signed dword) $38, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/signed byte/word/signed word/dword/signed dword) $43, (byte/signed byte/word/signed word/dword/signed dword) $47, (byte/signed byte/word/signed word/dword/signed dword) $4a, (byte/signed byte/word/signed word/dword/signed dword) $4e, (byte/signed byte/word/signed word/dword/signed dword) $51, (byte/signed byte/word/signed word/dword/signed dword) $54, (byte/signed byte/word/signed word/dword/signed dword) $57, (byte/signed byte/word/signed word/dword/signed dword) $5a, (byte/signed byte/word/signed word/dword/signed dword) $5d, (byte/signed byte/word/signed word/dword/signed dword) $60, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $68, (byte/signed byte/word/signed word/dword/signed dword) $6a, (byte/signed byte/word/signed word/dword/signed dword) $6c, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $70, (byte/signed byte/word/signed word/dword/signed dword) $72, (byte/signed byte/word/signed word/dword/signed dword) $74, (byte/signed byte/word/signed word/dword/signed dword) $76, (byte/signed byte/word/signed word/dword/signed dword) $77, (byte/signed byte/word/signed word/dword/signed dword) $79, (byte/signed byte/word/signed word/dword/signed dword) $7a, (byte/signed byte/word/signed word/dword/signed dword) $7b, (byte/signed byte/word/signed word/dword/signed dword) $7c, (byte/signed byte/word/signed word/dword/signed dword) $7d, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/word/signed word/dword/signed dword) $80, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7d, (byte/signed byte/word/signed word/dword/signed dword) $7c, (byte/signed byte/word/signed word/dword/signed dword) $7b, (byte/signed byte/word/signed word/dword/signed dword) $7a, (byte/signed byte/word/signed word/dword/signed dword) $79, (byte/signed byte/word/signed word/dword/signed dword) $77, (byte/signed byte/word/signed word/dword/signed dword) $76, (byte/signed byte/word/signed word/dword/signed dword) $74, (byte/signed byte/word/signed word/dword/signed dword) $72, (byte/signed byte/word/signed word/dword/signed dword) $70, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $6c, (byte/signed byte/word/signed word/dword/signed dword) $6a, (byte/signed byte/word/signed word/dword/signed dword) $68, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $60, (byte/signed byte/word/signed word/dword/signed dword) $5d, (byte/signed byte/word/signed word/dword/signed dword) $5a, (byte/signed byte/word/signed word/dword/signed dword) $57, (byte/signed byte/word/signed word/dword/signed dword) $54, (byte/signed byte/word/signed word/dword/signed dword) $51, (byte/signed byte/word/signed word/dword/signed dword) $4e, (byte/signed byte/word/signed word/dword/signed dword) $4a, (byte/signed byte/word/signed word/dword/signed dword) $47, (byte/signed byte/word/signed word/dword/signed dword) $43, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $38, (byte/signed byte/word/signed word/dword/signed dword) $35, (byte/signed byte/word/signed word/dword/signed dword) $31, (byte/signed byte/word/signed word/dword/signed dword) $2d, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $21, (byte/signed byte/word/signed word/dword/signed dword) $1d, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $15, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $fc, (byte/word/signed word/dword/signed dword) $f8, (byte/word/signed word/dword/signed dword) $f4, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $eb, (byte/word/signed word/dword/signed dword) $e7, (byte/word/signed word/dword/signed dword) $e3, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $d7, (byte/word/signed word/dword/signed dword) $d3, (byte/word/signed word/dword/signed dword) $cf, (byte/word/signed word/dword/signed dword) $cb, (byte/word/signed word/dword/signed dword) $c8, (byte/word/signed word/dword/signed dword) $c4, (byte/word/signed word/dword/signed dword) $c0, (byte/word/signed word/dword/signed dword) $bd, (byte/word/signed word/dword/signed dword) $b9, (byte/word/signed word/dword/signed dword) $b6, (byte/word/signed word/dword/signed dword) $b2, (byte/word/signed word/dword/signed dword) $af, (byte/word/signed word/dword/signed dword) $ac, (byte/word/signed word/dword/signed dword) $a9, (byte/word/signed word/dword/signed dword) $a6, (byte/word/signed word/dword/signed dword) $a3, (byte/word/signed word/dword/signed dword) $a0, (byte/word/signed word/dword/signed dword) $9d, (byte/word/signed word/dword/signed dword) $9b, (byte/word/signed word/dword/signed dword) $98, (byte/word/signed word/dword/signed dword) $96, (byte/word/signed word/dword/signed dword) $94, (byte/word/signed word/dword/signed dword) $92, (byte/word/signed word/dword/signed dword) $90, (byte/word/signed word/dword/signed dword) $8e, (byte/word/signed word/dword/signed dword) $8c, (byte/word/signed word/dword/signed dword) $8a, (byte/word/signed word/dword/signed dword) $89, (byte/word/signed word/dword/signed dword) $87, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $85, (byte/word/signed word/dword/signed dword) $84, (byte/word/signed word/dword/signed dword) $83, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $83, (byte/word/signed word/dword/signed dword) $84, (byte/word/signed word/dword/signed dword) $85, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $87, (byte/word/signed word/dword/signed dword) $89, (byte/word/signed word/dword/signed dword) $8a, (byte/word/signed word/dword/signed dword) $8c, (byte/word/signed word/dword/signed dword) $8e, (byte/word/signed word/dword/signed dword) $90, (byte/word/signed word/dword/signed dword) $92, (byte/word/signed word/dword/signed dword) $94, (byte/word/signed word/dword/signed dword) $96, (byte/word/signed word/dword/signed dword) $98, (byte/word/signed word/dword/signed dword) $9b, (byte/word/signed word/dword/signed dword) $9d, (byte/word/signed word/dword/signed dword) $a0, (byte/word/signed word/dword/signed dword) $a3, (byte/word/signed word/dword/signed dword) $a6, (byte/word/signed word/dword/signed dword) $a9, (byte/word/signed word/dword/signed dword) $ac, (byte/word/signed word/dword/signed dword) $af, (byte/word/signed word/dword/signed dword) $b2, (byte/word/signed word/dword/signed dword) $b6, (byte/word/signed word/dword/signed dword) $b9, (byte/word/signed word/dword/signed dword) $bd, (byte/word/signed word/dword/signed dword) $c0, (byte/word/signed word/dword/signed dword) $c4, (byte/word/signed word/dword/signed dword) $c8, (byte/word/signed word/dword/signed dword) $cb, (byte/word/signed word/dword/signed dword) $cf, (byte/word/signed word/dword/signed dword) $d3, (byte/word/signed word/dword/signed dword) $d7, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $e3, (byte/word/signed word/dword/signed dword) $e7, (byte/word/signed word/dword/signed dword) $eb, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $f4, (byte/word/signed word/dword/signed dword) $f8, (byte/word/signed word/dword/signed dword) $fc } - (signed byte*) sin8s_gen::sintab#1 ? (signed byte[$c0]) main::sintab2#0 - (word) sin8s_gen::wavelength#0 ? (word) main::wavelength#0 + (byte*) print_char_cursor#49 ← phi( @40/(byte*) print_char_cursor#46 ) + (byte*) print_line_cursor#13 ← phi( @40/(byte*) print_line_cursor#12 ) + (byte*) print_screen#5 ← phi( @40/(byte*) print_screen#6 ) + (word) rem16u#21 ← phi( @40/(word) rem16u#23 ) + (word) main::wavelength#0 ← (byte/word/signed word/dword/signed dword) $c0 + (signed byte[$c0]) main::sintab2#0 ← { fill( $c0, 0) } + (byte[]) main::sintabref#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $15, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $1d, (byte/signed byte/word/signed word/dword/signed dword) $21, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $2d, (byte/signed byte/word/signed word/dword/signed dword) $31, (byte/signed byte/word/signed word/dword/signed dword) $35, (byte/signed byte/word/signed word/dword/signed dword) $38, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/signed byte/word/signed word/dword/signed dword) $43, (byte/signed byte/word/signed word/dword/signed dword) $47, (byte/signed byte/word/signed word/dword/signed dword) $4a, (byte/signed byte/word/signed word/dword/signed dword) $4e, (byte/signed byte/word/signed word/dword/signed dword) $51, (byte/signed byte/word/signed word/dword/signed dword) $54, (byte/signed byte/word/signed word/dword/signed dword) $57, (byte/signed byte/word/signed word/dword/signed dword) $5a, (byte/signed byte/word/signed word/dword/signed dword) $5d, (byte/signed byte/word/signed word/dword/signed dword) $60, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $68, (byte/signed byte/word/signed word/dword/signed dword) $6a, (byte/signed byte/word/signed word/dword/signed dword) $6c, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $70, (byte/signed byte/word/signed word/dword/signed dword) $72, (byte/signed byte/word/signed word/dword/signed dword) $74, (byte/signed byte/word/signed word/dword/signed dword) $76, (byte/signed byte/word/signed word/dword/signed dword) $77, (byte/signed byte/word/signed word/dword/signed dword) $79, (byte/signed byte/word/signed word/dword/signed dword) $7a, (byte/signed byte/word/signed word/dword/signed dword) $7b, (byte/signed byte/word/signed word/dword/signed dword) $7c, (byte/signed byte/word/signed word/dword/signed dword) $7d, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/word/signed word/dword/signed dword) $80, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7e, (byte/signed byte/word/signed word/dword/signed dword) $7d, (byte/signed byte/word/signed word/dword/signed dword) $7c, (byte/signed byte/word/signed word/dword/signed dword) $7b, (byte/signed byte/word/signed word/dword/signed dword) $7a, (byte/signed byte/word/signed word/dword/signed dword) $79, (byte/signed byte/word/signed word/dword/signed dword) $77, (byte/signed byte/word/signed word/dword/signed dword) $76, (byte/signed byte/word/signed word/dword/signed dword) $74, (byte/signed byte/word/signed word/dword/signed dword) $72, (byte/signed byte/word/signed word/dword/signed dword) $70, (byte/signed byte/word/signed word/dword/signed dword) $6e, (byte/signed byte/word/signed word/dword/signed dword) $6c, (byte/signed byte/word/signed word/dword/signed dword) $6a, (byte/signed byte/word/signed word/dword/signed dword) $68, (byte/signed byte/word/signed word/dword/signed dword) $65, (byte/signed byte/word/signed word/dword/signed dword) $63, (byte/signed byte/word/signed word/dword/signed dword) $60, (byte/signed byte/word/signed word/dword/signed dword) $5d, (byte/signed byte/word/signed word/dword/signed dword) $5a, (byte/signed byte/word/signed word/dword/signed dword) $57, (byte/signed byte/word/signed word/dword/signed dword) $54, (byte/signed byte/word/signed word/dword/signed dword) $51, (byte/signed byte/word/signed word/dword/signed dword) $4e, (byte/signed byte/word/signed word/dword/signed dword) $4a, (byte/signed byte/word/signed word/dword/signed dword) $47, (byte/signed byte/word/signed word/dword/signed dword) $43, (byte/signed byte/word/signed word/dword/signed dword) $40, (byte/signed byte/word/signed word/dword/signed dword) $3c, (byte/signed byte/word/signed word/dword/signed dword) $38, (byte/signed byte/word/signed word/dword/signed dword) $35, (byte/signed byte/word/signed word/dword/signed dword) $31, (byte/signed byte/word/signed word/dword/signed dword) $2d, (byte/signed byte/word/signed word/dword/signed dword) $29, (byte/signed byte/word/signed word/dword/signed dword) $25, (byte/signed byte/word/signed word/dword/signed dword) $21, (byte/signed byte/word/signed word/dword/signed dword) $1d, (byte/signed byte/word/signed word/dword/signed dword) $19, (byte/signed byte/word/signed word/dword/signed dword) $15, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $c, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/word/signed word/dword/signed dword) $fc, (byte/word/signed word/dword/signed dword) $f8, (byte/word/signed word/dword/signed dword) $f4, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $eb, (byte/word/signed word/dword/signed dword) $e7, (byte/word/signed word/dword/signed dword) $e3, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $d7, (byte/word/signed word/dword/signed dword) $d3, (byte/word/signed word/dword/signed dword) $cf, (byte/word/signed word/dword/signed dword) $cb, (byte/word/signed word/dword/signed dword) $c8, (byte/word/signed word/dword/signed dword) $c4, (byte/word/signed word/dword/signed dword) $c0, (byte/word/signed word/dword/signed dword) $bd, (byte/word/signed word/dword/signed dword) $b9, (byte/word/signed word/dword/signed dword) $b6, (byte/word/signed word/dword/signed dword) $b2, (byte/word/signed word/dword/signed dword) $af, (byte/word/signed word/dword/signed dword) $ac, (byte/word/signed word/dword/signed dword) $a9, (byte/word/signed word/dword/signed dword) $a6, (byte/word/signed word/dword/signed dword) $a3, (byte/word/signed word/dword/signed dword) $a0, (byte/word/signed word/dword/signed dword) $9d, (byte/word/signed word/dword/signed dword) $9b, (byte/word/signed word/dword/signed dword) $98, (byte/word/signed word/dword/signed dword) $96, (byte/word/signed word/dword/signed dword) $94, (byte/word/signed word/dword/signed dword) $92, (byte/word/signed word/dword/signed dword) $90, (byte/word/signed word/dword/signed dword) $8e, (byte/word/signed word/dword/signed dword) $8c, (byte/word/signed word/dword/signed dword) $8a, (byte/word/signed word/dword/signed dword) $89, (byte/word/signed word/dword/signed dword) $87, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $85, (byte/word/signed word/dword/signed dword) $84, (byte/word/signed word/dword/signed dword) $83, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $81, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $82, (byte/word/signed word/dword/signed dword) $83, (byte/word/signed word/dword/signed dword) $84, (byte/word/signed word/dword/signed dword) $85, (byte/word/signed word/dword/signed dword) $86, (byte/word/signed word/dword/signed dword) $87, (byte/word/signed word/dword/signed dword) $89, (byte/word/signed word/dword/signed dword) $8a, (byte/word/signed word/dword/signed dword) $8c, (byte/word/signed word/dword/signed dword) $8e, (byte/word/signed word/dword/signed dword) $90, (byte/word/signed word/dword/signed dword) $92, (byte/word/signed word/dword/signed dword) $94, (byte/word/signed word/dword/signed dword) $96, (byte/word/signed word/dword/signed dword) $98, (byte/word/signed word/dword/signed dword) $9b, (byte/word/signed word/dword/signed dword) $9d, (byte/word/signed word/dword/signed dword) $a0, (byte/word/signed word/dword/signed dword) $a3, (byte/word/signed word/dword/signed dword) $a6, (byte/word/signed word/dword/signed dword) $a9, (byte/word/signed word/dword/signed dword) $ac, (byte/word/signed word/dword/signed dword) $af, (byte/word/signed word/dword/signed dword) $b2, (byte/word/signed word/dword/signed dword) $b6, (byte/word/signed word/dword/signed dword) $b9, (byte/word/signed word/dword/signed dword) $bd, (byte/word/signed word/dword/signed dword) $c0, (byte/word/signed word/dword/signed dword) $c4, (byte/word/signed word/dword/signed dword) $c8, (byte/word/signed word/dword/signed dword) $cb, (byte/word/signed word/dword/signed dword) $cf, (byte/word/signed word/dword/signed dword) $d3, (byte/word/signed word/dword/signed dword) $d7, (byte/word/signed word/dword/signed dword) $db, (byte/word/signed word/dword/signed dword) $df, (byte/word/signed word/dword/signed dword) $e3, (byte/word/signed word/dword/signed dword) $e7, (byte/word/signed word/dword/signed dword) $eb, (byte/word/signed word/dword/signed dword) $ef, (byte/word/signed word/dword/signed dword) $f4, (byte/word/signed word/dword/signed dword) $f8, (byte/word/signed word/dword/signed dword) $fc } + (signed byte*) sin8s_gen::sintab#1 ← (signed byte[$c0]) main::sintab2#0 + (word) sin8s_gen::wavelength#0 ← (word) main::wavelength#0 call sin8s_gen to:main::@5 main::@5: scope:[main] from main - (byte*) print_char_cursor#43 ? phi( main/(byte*) print_char_cursor#49 ) - (byte*) print_line_cursor#10 ? phi( main/(byte*) print_line_cursor#13 ) - (byte*) print_screen#4 ? phi( main/(byte*) print_screen#5 ) - (word) rem16u#15 ? phi( main/(word) rem16u#6 ) - (word) rem16u#7 ? (word) rem16u#15 + (byte*) print_char_cursor#43 ← phi( main/(byte*) print_char_cursor#49 ) + (byte*) print_line_cursor#10 ← phi( main/(byte*) print_line_cursor#13 ) + (byte*) print_screen#4 ← phi( main/(byte*) print_screen#5 ) + (word) rem16u#15 ← phi( main/(word) rem16u#6 ) + (word) rem16u#7 ← (word) rem16u#15 call print_cls to:main::@6 main::@6: scope:[main] from main::@5 - (word) rem16u#33 ? phi( main::@5/(word) rem16u#7 ) - (byte*) print_char_cursor#32 ? phi( main::@5/(byte*) print_char_cursor#13 ) - (byte*) print_line_cursor#7 ? phi( main::@5/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_line_cursor#7 - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#32 - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#33 ← phi( main::@5/(word) rem16u#7 ) + (byte*) print_char_cursor#32 ← phi( main::@5/(byte*) print_char_cursor#13 ) + (byte*) print_line_cursor#7 ← phi( main::@5/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_line_cursor#7 + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#32 + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main::@6 main::@8 - (byte*) print_line_cursor#17 ? phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 ) - (word) rem16u#30 ? phi( main::@6/(word) rem16u#33 main::@8/(word) rem16u#22 ) - (byte*) print_char_cursor#50 ? phi( main::@6/(byte*) print_char_cursor#14 main::@8/(byte*) print_char_cursor#16 ) - (byte) main::i#2 ? phi( main::@6/(byte) main::i#0 main::@8/(byte) main::i#1 ) - (signed byte~) main::$2 ? ((signed byte)) *((byte[]) main::sintabref#0 + (byte) main::i#2) - (signed byte~) main::$3 ? *((signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte~) main::$2 - (signed byte) main::sb#0 ? (signed byte~) main::$3 - (bool~) main::$4 ? (signed byte) main::sb#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) main::$5 ? ! (bool~) main::$4 + (byte*) print_line_cursor#17 ← phi( main::@6/(byte*) print_line_cursor#3 main::@8/(byte*) print_line_cursor#11 ) + (word) rem16u#30 ← phi( main::@6/(word) rem16u#33 main::@8/(word) rem16u#22 ) + (byte*) print_char_cursor#50 ← phi( main::@6/(byte*) print_char_cursor#14 main::@8/(byte*) print_char_cursor#16 ) + (byte) main::i#2 ← phi( main::@6/(byte) main::i#0 main::@8/(byte) main::i#1 ) + (signed byte~) main::$2 ← ((signed byte)) *((byte[]) main::sintabref#0 + (byte) main::i#2) + (signed byte~) main::$3 ← *((signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte~) main::$2 + (signed byte) main::sb#0 ← (signed byte~) main::$3 + (bool~) main::$4 ← (signed byte) main::sb#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) main::$5 ← ! (bool~) main::$4 if((bool~) main::$5) goto main::@2 to:main::@3 main::@2: scope:[main] from main::@1 main::@9 - (byte*) print_line_cursor#16 ? phi( main::@1/(byte*) print_line_cursor#17 main::@9/(byte*) print_line_cursor#18 ) - (word) rem16u#28 ? phi( main::@1/(word) rem16u#30 main::@9/(word) rem16u#31 ) - (byte) main::i#5 ? phi( main::@1/(byte) main::i#2 main::@9/(byte) main::i#6 ) - (byte*) print_char_cursor#44 ? phi( main::@1/(byte*) print_char_cursor#50 main::@9/(byte*) print_char_cursor#17 ) - (signed byte) main::sb#1 ? phi( main::@1/(signed byte) main::sb#0 main::@9/(signed byte) main::sb#2 ) - (signed byte) print_sbyte::b#1 ? (signed byte) main::sb#1 + (byte*) print_line_cursor#16 ← phi( main::@1/(byte*) print_line_cursor#17 main::@9/(byte*) print_line_cursor#18 ) + (word) rem16u#28 ← phi( main::@1/(word) rem16u#30 main::@9/(word) rem16u#31 ) + (byte) main::i#5 ← phi( main::@1/(byte) main::i#2 main::@9/(byte) main::i#6 ) + (byte*) print_char_cursor#44 ← phi( main::@1/(byte*) print_char_cursor#50 main::@9/(byte*) print_char_cursor#17 ) + (signed byte) main::sb#1 ← phi( main::@1/(signed byte) main::sb#0 main::@9/(signed byte) main::sb#2 ) + (signed byte) print_sbyte::b#1 ← (signed byte) main::sb#1 call print_sbyte to:main::@7 main::@7: scope:[main] from main::@2 - (byte*) print_line_cursor#14 ? phi( main::@2/(byte*) print_line_cursor#16 ) - (word) rem16u#25 ? phi( main::@2/(word) rem16u#28 ) - (byte) main::i#4 ? phi( main::@2/(byte) main::i#5 ) - (byte*) print_char_cursor#33 ? phi( main::@2/(byte*) print_char_cursor#6 ) - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#33 - (byte*) print_str::str#1 ? (const string) main::str + (byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#16 ) + (word) rem16u#25 ← phi( main::@2/(word) rem16u#28 ) + (byte) main::i#4 ← phi( main::@2/(byte) main::i#5 ) + (byte*) print_char_cursor#33 ← phi( main::@2/(byte*) print_char_cursor#6 ) + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#33 + (byte*) print_str::str#1 ← (const string) main::str call print_str to:main::@8 main::@8: scope:[main] from main::@7 - (byte*) print_line_cursor#11 ? phi( main::@7/(byte*) print_line_cursor#14 ) - (word) rem16u#22 ? phi( main::@7/(word) rem16u#25 ) - (byte) main::i#3 ? phi( main::@7/(byte) main::i#4 ) - (byte*) print_char_cursor#34 ? phi( main::@7/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#34 - (byte) main::i#1 ? (byte) main::i#3 + rangenext(0,$bf) - (bool~) main::$9 ? (byte) main::i#1 != rangelast(0,$bf) + (byte*) print_line_cursor#11 ← phi( main::@7/(byte*) print_line_cursor#14 ) + (word) rem16u#22 ← phi( main::@7/(word) rem16u#25 ) + (byte) main::i#3 ← phi( main::@7/(byte) main::i#4 ) + (byte*) print_char_cursor#34 ← phi( main::@7/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#34 + (byte) main::i#1 ← (byte) main::i#3 + rangenext(0,$bf) + (bool~) main::$9 ← (byte) main::i#1 != rangelast(0,$bf) if((bool~) main::$9) goto main::@1 to:main::@return main::@3: scope:[main] from main::@1 - (byte*) print_line_cursor#19 ? phi( main::@1/(byte*) print_line_cursor#17 ) - (word) rem16u#34 ? phi( main::@1/(word) rem16u#30 ) - (byte) main::i#7 ? phi( main::@1/(byte) main::i#2 ) - (signed byte) main::sb#3 ? phi( main::@1/(signed byte) main::sb#0 ) - (byte*) print_char_cursor#45 ? phi( main::@1/(byte*) print_char_cursor#50 ) - (byte*) print_str::str#2 ? (const string) main::str1 + (byte*) print_line_cursor#19 ← phi( main::@1/(byte*) print_line_cursor#17 ) + (word) rem16u#34 ← phi( main::@1/(word) rem16u#30 ) + (byte) main::i#7 ← phi( main::@1/(byte) main::i#2 ) + (signed byte) main::sb#3 ← phi( main::@1/(signed byte) main::sb#0 ) + (byte*) print_char_cursor#45 ← phi( main::@1/(byte*) print_char_cursor#50 ) + (byte*) print_str::str#2 ← (const string) main::str1 call print_str to:main::@9 main::@9: scope:[main] from main::@3 - (byte*) print_line_cursor#18 ? phi( main::@3/(byte*) print_line_cursor#19 ) - (word) rem16u#31 ? phi( main::@3/(word) rem16u#34 ) - (byte) main::i#6 ? phi( main::@3/(byte) main::i#7 ) - (signed byte) main::sb#2 ? phi( main::@3/(signed byte) main::sb#3 ) - (byte*) print_char_cursor#35 ? phi( main::@3/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#35 + (byte*) print_line_cursor#18 ← phi( main::@3/(byte*) print_line_cursor#19 ) + (word) rem16u#31 ← phi( main::@3/(word) rem16u#34 ) + (byte) main::i#6 ← phi( main::@3/(byte) main::i#7 ) + (signed byte) main::sb#2 ← phi( main::@3/(signed byte) main::sb#3 ) + (byte*) print_char_cursor#35 ← phi( main::@3/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#35 to:main::@2 main::@return: scope:[main] from main::@8 - (byte*) print_char_cursor#36 ? phi( main::@8/(byte*) print_char_cursor#16 ) - (byte*) print_line_cursor#8 ? phi( main::@8/(byte*) print_line_cursor#11 ) - (word) rem16u#16 ? phi( main::@8/(word) rem16u#22 ) - (word) rem16u#8 ? (word) rem16u#16 - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#8 - (byte*) print_char_cursor#18 ? (byte*) print_char_cursor#36 + (byte*) print_char_cursor#36 ← phi( main::@8/(byte*) print_char_cursor#16 ) + (byte*) print_line_cursor#8 ← phi( main::@8/(byte*) print_line_cursor#11 ) + (word) rem16u#16 ← phi( main::@8/(word) rem16u#22 ) + (word) rem16u#8 ← (word) rem16u#16 + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#8 + (byte*) print_char_cursor#18 ← (byte*) print_char_cursor#36 return to:@return @40: scope:[] from @32 - (byte*) print_screen#6 ? phi( @32/(byte*) print_screen#7 ) - (byte*) print_char_cursor#46 ? phi( @32/(byte*) print_char_cursor#51 ) - (byte*) print_line_cursor#12 ? phi( @32/(byte*) print_line_cursor#15 ) - (word) rem16u#23 ? phi( @32/(word) rem16u#26 ) + (byte*) print_screen#6 ← phi( @32/(byte*) print_screen#7 ) + (byte*) print_char_cursor#46 ← phi( @32/(byte*) print_char_cursor#51 ) + (byte*) print_line_cursor#12 ← phi( @32/(byte*) print_line_cursor#15 ) + (word) rem16u#23 ← phi( @32/(word) rem16u#26 ) call main to:@41 @41: scope:[] from @40 - (byte*) print_char_cursor#37 ? phi( @40/(byte*) print_char_cursor#18 ) - (byte*) print_line_cursor#9 ? phi( @40/(byte*) print_line_cursor#4 ) - (word) rem16u#17 ? phi( @40/(word) rem16u#8 ) - (word) rem16u#9 ? (word) rem16u#17 - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#9 - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#37 + (byte*) print_char_cursor#37 ← phi( @40/(byte*) print_char_cursor#18 ) + (byte*) print_line_cursor#9 ← phi( @40/(byte*) print_line_cursor#4 ) + (word) rem16u#17 ← phi( @40/(word) rem16u#8 ) + (word) rem16u#9 ← (word) rem16u#17 + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#9 + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#37 to:@end @end: scope:[] from @41 @@ -1196,14 +1196,14 @@ SYMBOL TABLE SSA (word) sin8s_gen::x#2 (word) sin8s_gen::x#3 -Inversing boolean not [11] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [19] (bool~) divr16u::$9 ? (word) divr16u::rem#5 < (word) divr16u::divisor#1 from [18] (bool~) divr16u::$8 ? (word) divr16u::rem#5 >= (word) divr16u::divisor#1 -Inversing boolean not [66] (bool~) mul8u::$3 ? (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [65] (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [118] (bool~) sin8s::$1 ? (word) sin8s::x#3 < (word) PI_u4f12#0 from [117] (bool~) sin8s::$0 ? (word) sin8s::x#3 >= (word) PI_u4f12#0 -Inversing boolean not [122] (bool~) sin8s::$3 ? (word) sin8s::x#4 < (word) PI_HALF_u4f12#0 from [121] (bool~) sin8s::$2 ? (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 -Inversing boolean not [180] (bool~) sin8s::$15 ? (byte) sin8s::usinx#1 < (byte/word/signed word/dword/signed dword) $80 from [179] (bool~) sin8s::$14 ? (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 -Inversing boolean not [189] (bool~) sin8s::$18 ? (byte) sin8s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [188] (bool~) sin8s::$17 ? (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [310] (bool~) main::$5 ? (signed byte) main::sb#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [309] (bool~) main::$4 ? (signed byte) main::sb#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [11] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [19] (bool~) divr16u::$9 ← (word) divr16u::rem#5 < (word) divr16u::divisor#1 from [18] (bool~) divr16u::$8 ← (word) divr16u::rem#5 >= (word) divr16u::divisor#1 +Inversing boolean not [66] (bool~) mul8u::$3 ← (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [65] (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [118] (bool~) sin8s::$1 ← (word) sin8s::x#3 < (word) PI_u4f12#0 from [117] (bool~) sin8s::$0 ← (word) sin8s::x#3 >= (word) PI_u4f12#0 +Inversing boolean not [122] (bool~) sin8s::$3 ← (word) sin8s::x#4 < (word) PI_HALF_u4f12#0 from [121] (bool~) sin8s::$2 ← (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 +Inversing boolean not [180] (bool~) sin8s::$15 ← (byte) sin8s::usinx#1 < (byte/word/signed word/dword/signed dword) $80 from [179] (bool~) sin8s::$14 ← (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 +Inversing boolean not [189] (bool~) sin8s::$18 ← (byte) sin8s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [188] (bool~) sin8s::$17 ← (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [310] (bool~) main::$5 ← (signed byte) main::sb#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [309] (bool~) main::$4 ← (signed byte) main::sb#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#6 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#7 @@ -1438,14 +1438,14 @@ Successful SSA optimization Pass2ConstantIdentification Constant (const word) divr16u::divisor#0 = div16u::divisor#0 Successful SSA optimization Pass2ConstantIdentification Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (signed byte) sin8s::sinx#0 ? ((signed byte)) (byte) sin8s::usinx#4 -Eliminating Noop Cast (signed byte~) sin8s::$21 ? ((signed byte)) (byte) sin8s::usinx#4 -Eliminating Noop Cast (byte) print_byte::b#0 ? ((byte)) (signed byte) print_sbyte::b#4 -Eliminating Noop Cast (signed byte~) main::$2 ? ((signed byte)) *((const byte[]) main::sintabref#0 + (byte) main::i#2) +Eliminating Noop Cast (signed byte) sin8s::sinx#0 ← ((signed byte)) (byte) sin8s::usinx#4 +Eliminating Noop Cast (signed byte~) sin8s::$21 ← ((signed byte)) (byte) sin8s::usinx#4 +Eliminating Noop Cast (byte) print_byte::b#0 ← ((byte)) (signed byte) print_sbyte::b#4 +Eliminating Noop Cast (signed byte~) main::$2 ← ((signed byte)) *((const byte[]) main::sintabref#0 + (byte) main::i#2) Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value main::i#1 ? ++ main::i#2 to ++ +Resolved ranged next value main::i#1 ← ++ main::i#2 to ++ Resolved ranged comparison value if(main::i#1!=rangelast(0,$bf)) goto main::@1 to (byte/word/signed word/dword/signed dword) $c0 Culled Empty Block (label) @2 Culled Empty Block (label) @5 @@ -1546,61 +1546,61 @@ Calls in [mulu8_sel] to mul8u:149 Calls in [div16u] to divr16u:173 Created 33 initial phi equivalence classes -Coalesced [11] print_char_cursor#55 ? print_char_cursor#45 -Coalesced [13] print_char_cursor#54 ? print_char_cursor#2 -Coalesced [17] print_char_cursor#56 ? print_char_cursor#10 -Coalesced [22] main::i#8 ? main::i#1 -Coalesced [23] print_char_cursor#52 ? print_char_cursor#2 -Coalesced (already) [24] print_char_cursor#53 ? print_char_cursor#45 -Coalesced [26] print_str::str#6 ? print_str::str#5 -Coalesced (already) [27] print_char_cursor#57 ? print_char_cursor#47 -Coalesced [34] print_str::str#7 ? print_str::str#0 -Coalesced [35] print_char_cursor#58 ? print_char_cursor#1 -Coalesced [37] print_char_cursor#62 ? print_char_cursor#44 -Coalesced [39] print_sbyte::b#9 ? print_sbyte::b#1 -Coalesced (already) [43] print_char_cursor#61 ? print_char_cursor#44 -Coalesced [46] print_sbyte::b#8 ? print_sbyte::b#0 -Coalesced [53] print_char::ch#5 ? print_char::ch#2 -Coalesced (already) [54] print_char_cursor#59 ? print_char_cursor#10 -Coalesced [58] print_char::ch#6 ? print_char::ch#3 -Coalesced (already) [59] print_char_cursor#60 ? print_char_cursor#10 -Coalesced [68] print_cls::sc#3 ? print_cls::sc#1 -Coalesced [84] sin8s_gen::x#4 ? sin8s_gen::x#1 -Coalesced [85] sin8s_gen::sintab#6 ? sin8s_gen::sintab#0 -Coalesced [86] sin8s_gen::i#4 ? sin8s_gen::i#1 -Coalesced [89] sin8s::x#9 ? sin8s::x#1 -Coalesced [93] sin8s::x#11 ? sin8s::x#2 -Coalesced [99] mulu8_sel::v1#10 ? mulu8_sel::v1#0 -Coalesced [100] mulu8_sel::v2#9 ? mulu8_sel::v2#0 -Coalesced [106] mulu8_sel::v1#6 ? mulu8_sel::v1#1 -Coalesced [107] mulu8_sel::v2#6 ? mulu8_sel::v2#1 -Coalesced [112] mulu8_sel::v1#7 ? mulu8_sel::v1#2 -Coalesced [119] mulu8_sel::v1#8 ? mulu8_sel::v1#3 -Coalesced [120] mulu8_sel::v2#7 ? mulu8_sel::v2#3 -Coalesced [126] mulu8_sel::v1#9 ? mulu8_sel::v1#4 -Coalesced [127] mulu8_sel::v2#8 ? mulu8_sel::v2#4 -Coalesced [135] sin8s::usinx#9 ? sin8s::usinx#2 -Coalesced [139] sin8s::return#6 ? sin8s::sinx#1 -Coalesced [143] sin8s::usinx#8 ? sin8s::usinx#1 -Coalesced [144] sin8s::x#10 ? sin8s::x#4 -Coalesced [145] sin8s::x#8 ? sin8s::x#0 -Coalesced [156] mul8u::a#7 ? mul8u::a#1 -Coalesced [157] mul8u::mb#6 ? mul8u::mb#0 -Coalesced [164] mul8u::res#9 ? mul8u::res#1 -Coalesced [168] mul8u::a#8 ? mul8u::a#0 -Coalesced [169] mul8u::res#7 ? mul8u::res#6 -Coalesced [170] mul8u::mb#7 ? mul8u::mb#1 -Coalesced (already) [171] mul8u::res#8 ? mul8u::res#2 -Coalesced [184] divr16u::rem#13 ? divr16u::rem#1 -Coalesced [191] divr16u::rem#15 ? divr16u::rem#2 -Coalesced [192] divr16u::return#6 ? divr16u::quotient#2 -Coalesced [198] divr16u::rem#11 ? divr16u::rem#10 -Coalesced [199] divr16u::dividend#8 ? divr16u::dividend#0 -Coalesced [200] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [201] divr16u::i#7 ? divr16u::i#1 -Coalesced [202] divr16u::rem#14 ? divr16u::rem#5 -Coalesced [203] divr16u::return#5 ? divr16u::quotient#1 -Coalesced [204] divr16u::rem#12 ? divr16u::rem#0 +Coalesced [11] print_char_cursor#55 ← print_char_cursor#45 +Coalesced [13] print_char_cursor#54 ← print_char_cursor#2 +Coalesced [17] print_char_cursor#56 ← print_char_cursor#10 +Coalesced [22] main::i#8 ← main::i#1 +Coalesced [23] print_char_cursor#52 ← print_char_cursor#2 +Coalesced (already) [24] print_char_cursor#53 ← print_char_cursor#45 +Coalesced [26] print_str::str#6 ← print_str::str#5 +Coalesced (already) [27] print_char_cursor#57 ← print_char_cursor#47 +Coalesced [34] print_str::str#7 ← print_str::str#0 +Coalesced [35] print_char_cursor#58 ← print_char_cursor#1 +Coalesced [37] print_char_cursor#62 ← print_char_cursor#44 +Coalesced [39] print_sbyte::b#9 ← print_sbyte::b#1 +Coalesced (already) [43] print_char_cursor#61 ← print_char_cursor#44 +Coalesced [46] print_sbyte::b#8 ← print_sbyte::b#0 +Coalesced [53] print_char::ch#5 ← print_char::ch#2 +Coalesced (already) [54] print_char_cursor#59 ← print_char_cursor#10 +Coalesced [58] print_char::ch#6 ← print_char::ch#3 +Coalesced (already) [59] print_char_cursor#60 ← print_char_cursor#10 +Coalesced [68] print_cls::sc#3 ← print_cls::sc#1 +Coalesced [84] sin8s_gen::x#4 ← sin8s_gen::x#1 +Coalesced [85] sin8s_gen::sintab#6 ← sin8s_gen::sintab#0 +Coalesced [86] sin8s_gen::i#4 ← sin8s_gen::i#1 +Coalesced [89] sin8s::x#9 ← sin8s::x#1 +Coalesced [93] sin8s::x#11 ← sin8s::x#2 +Coalesced [99] mulu8_sel::v1#10 ← mulu8_sel::v1#0 +Coalesced [100] mulu8_sel::v2#9 ← mulu8_sel::v2#0 +Coalesced [106] mulu8_sel::v1#6 ← mulu8_sel::v1#1 +Coalesced [107] mulu8_sel::v2#6 ← mulu8_sel::v2#1 +Coalesced [112] mulu8_sel::v1#7 ← mulu8_sel::v1#2 +Coalesced [119] mulu8_sel::v1#8 ← mulu8_sel::v1#3 +Coalesced [120] mulu8_sel::v2#7 ← mulu8_sel::v2#3 +Coalesced [126] mulu8_sel::v1#9 ← mulu8_sel::v1#4 +Coalesced [127] mulu8_sel::v2#8 ← mulu8_sel::v2#4 +Coalesced [135] sin8s::usinx#9 ← sin8s::usinx#2 +Coalesced [139] sin8s::return#6 ← sin8s::sinx#1 +Coalesced [143] sin8s::usinx#8 ← sin8s::usinx#1 +Coalesced [144] sin8s::x#10 ← sin8s::x#4 +Coalesced [145] sin8s::x#8 ← sin8s::x#0 +Coalesced [156] mul8u::a#7 ← mul8u::a#1 +Coalesced [157] mul8u::mb#6 ← mul8u::mb#0 +Coalesced [164] mul8u::res#9 ← mul8u::res#1 +Coalesced [168] mul8u::a#8 ← mul8u::a#0 +Coalesced [169] mul8u::res#7 ← mul8u::res#6 +Coalesced [170] mul8u::mb#7 ← mul8u::mb#1 +Coalesced (already) [171] mul8u::res#8 ← mul8u::res#2 +Coalesced [184] divr16u::rem#13 ← divr16u::rem#1 +Coalesced [191] divr16u::rem#15 ← divr16u::rem#2 +Coalesced [192] divr16u::return#6 ← divr16u::quotient#2 +Coalesced [198] divr16u::rem#11 ← divr16u::rem#10 +Coalesced [199] divr16u::dividend#8 ← divr16u::dividend#0 +Coalesced [200] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [201] divr16u::i#7 ← divr16u::i#1 +Coalesced [202] divr16u::rem#14 ← divr16u::rem#5 +Coalesced [203] divr16u::return#5 ← divr16u::quotient#1 +Coalesced [204] divr16u::rem#12 ← divr16u::rem#0 Coalesced down to 23 phi equivalence classes Culled Empty Block (label) main::@10 Culled Empty Block (label) main::@11 @@ -1663,9 +1663,9 @@ main::@4: scope:[main] from main [7] call print_cls to:main::@1 main::@1: scope:[main] from main::@4 main::@6 - [8] (byte*) print_char_cursor#45 ? phi( main::@4/(const byte*) print_line_cursor#0 main::@6/(byte*) print_char_cursor#2 ) - [8] (byte) main::i#2 ? phi( main::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@6/(byte) main::i#1 ) - [9] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) + [8] (byte*) print_char_cursor#45 ← phi( main::@4/(const byte*) print_line_cursor#0 main::@6/(byte*) print_char_cursor#2 ) + [8] (byte) main::i#2 ← phi( main::@4/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@6/(byte) main::i#1 ) + [9] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) [10] if((signed byte) main::sb#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 to:main::@3 main::@3: scope:[main] from main::@1 @@ -1673,8 +1673,8 @@ main::@3: scope:[main] from main::@1 [12] call print_str to:main::@2 main::@2: scope:[main] from main::@1 main::@3 - [13] (byte*) print_char_cursor#44 ? phi( main::@1/(byte*) print_char_cursor#45 main::@3/(byte*) print_char_cursor#2 ) - [14] (signed byte) print_sbyte::b#1 ? (signed byte) main::sb#0 + [13] (byte*) print_char_cursor#44 ← phi( main::@1/(byte*) print_char_cursor#45 main::@3/(byte*) print_char_cursor#2 ) + [14] (signed byte) print_sbyte::b#1 ← (signed byte) main::sb#0 [15] call print_sbyte to:main::@5 main::@5: scope:[main] from main::@2 @@ -1682,28 +1682,28 @@ main::@5: scope:[main] from main::@2 [17] call print_str to:main::@6 main::@6: scope:[main] from main::@5 - [18] (byte) main::i#1 ? ++ (byte) main::i#2 + [18] (byte) main::i#1 ← ++ (byte) main::i#2 [19] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 to:main::@return main::@return: scope:[main] from main::@6 [20] return to:@return print_str: scope:[print_str] from main::@3 main::@5 - [21] (byte*) print_char_cursor#47 ? phi( main::@3/(byte*) print_char_cursor#45 main::@5/(byte*) print_char_cursor#10 ) - [21] (byte*) print_str::str#5 ? phi( main::@3/(const string) main::str1 main::@5/(const string) main::str ) + [21] (byte*) print_char_cursor#47 ← phi( main::@3/(byte*) print_char_cursor#45 main::@5/(byte*) print_char_cursor#10 ) + [21] (byte*) print_str::str#5 ← phi( main::@3/(const string) main::str1 main::@5/(const string) main::str ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [22] (byte*) print_char_cursor#2 ? phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) - [22] (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + [22] (byte*) print_char_cursor#2 ← phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) + [22] (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) [23] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [24] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) - [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 - [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 + [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) + [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 + [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 to:print_str::@1 print_sbyte: scope:[print_sbyte] from main::@2 [28] if((signed byte) print_sbyte::b#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 @@ -1713,7 +1713,7 @@ print_sbyte::@3: scope:[print_sbyte] from print_sbyte [30] call print_char to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@3 print_sbyte::@4 - [31] (signed byte) print_sbyte::b#4 ? phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#1 ) + [31] (signed byte) print_sbyte::b#4 ← phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#1 ) [32] call print_byte to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@2 @@ -1724,25 +1724,25 @@ print_sbyte::@1: scope:[print_sbyte] from print_sbyte [35] call print_char to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@1 - [36] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 + [36] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 to:print_sbyte::@2 print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 - [37] (byte*) print_char_cursor#29 ? phi( print_byte/(byte*) print_char_cursor#10 print_byte::@1/(byte*) print_char_cursor#10 print_sbyte::@1/(byte*) print_char_cursor#44 print_sbyte::@3/(byte*) print_char_cursor#44 ) - [37] (byte) print_char::ch#4 ? phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' ) - [38] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 - [39] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 + [37] (byte*) print_char_cursor#29 ← phi( print_byte/(byte*) print_char_cursor#10 print_byte::@1/(byte*) print_char_cursor#10 print_sbyte::@1/(byte*) print_char_cursor#44 print_sbyte::@3/(byte*) print_char_cursor#44 ) + [37] (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' ) + [38] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 + [39] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 to:print_char::@return print_char::@return: scope:[print_char] from print_char [40] return to:@return print_byte: scope:[print_byte] from print_sbyte::@2 - [41] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [42] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [41] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [42] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [43] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [44] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [45] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [44] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [45] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [46] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 @@ -1752,9 +1752,9 @@ print_cls: scope:[print_cls] from main::@4 [48] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [49] (byte*) print_cls::sc#2 ? phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [50] *((byte*) print_cls::sc#2) ? (byte) ' ' - [51] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [49] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) + [50] *((byte*) print_cls::sc#2) ← (byte) ' ' + [51] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [52] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -1763,25 +1763,25 @@ print_cls::@return: scope:[print_cls] from print_cls::@1 sin8s_gen: scope:[sin8s_gen] from main [54] phi() [55] call div16u - [56] (word) div16u::return#2 ? (word) div16u::return#0 + [56] (word) div16u::return#2 ← (word) div16u::return#0 to:sin8s_gen::@2 sin8s_gen::@2: scope:[sin8s_gen] from sin8s_gen - [57] (word) sin8s_gen::step#0 ? (word) div16u::return#2 + [57] (word) sin8s_gen::step#0 ← (word) div16u::return#2 to:sin8s_gen::@1 sin8s_gen::@1: scope:[sin8s_gen] from sin8s_gen::@2 sin8s_gen::@3 - [58] (word) sin8s_gen::i#2 ? phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::i#1 ) - [58] (signed byte*) sin8s_gen::sintab#2 ? phi( sin8s_gen::@2/(const signed byte[$c0]) main::sintab2#0 sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#0 ) - [58] (word) sin8s_gen::x#2 ? phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::x#1 ) - [59] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 + [58] (word) sin8s_gen::i#2 ← phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::i#1 ) + [58] (signed byte*) sin8s_gen::sintab#2 ← phi( sin8s_gen::@2/(const signed byte[$c0]) main::sintab2#0 sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#0 ) + [58] (word) sin8s_gen::x#2 ← phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::x#1 ) + [59] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 [60] call sin8s - [61] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 + [61] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 to:sin8s_gen::@3 sin8s_gen::@3: scope:[sin8s_gen] from sin8s_gen::@1 - [62] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 - [63] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 - [64] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 - [65] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 - [66] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 + [62] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 + [63] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 + [64] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 + [65] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 + [66] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 [67] if((word) sin8s_gen::i#1<(const word) main::wavelength#0) goto sin8s_gen::@1 to:sin8s_gen::@return sin8s_gen::@return: scope:[sin8s_gen] from sin8s_gen::@3 @@ -1791,126 +1791,126 @@ sin8s: scope:[sin8s] from sin8s_gen::@1 [69] if((word) sin8s::x#0<(const word) PI_u4f12#0) goto sin8s::@1 to:sin8s::@5 sin8s::@5: scope:[sin8s] from sin8s - [70] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 + [70] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 to:sin8s::@1 sin8s::@1: scope:[sin8s] from sin8s sin8s::@5 - [71] (byte) sin8s::isUpper#10 ? phi( sin8s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [71] (word) sin8s::x#4 ? phi( sin8s/(word) sin8s::x#0 sin8s::@5/(word) sin8s::x#1 ) + [71] (byte) sin8s::isUpper#10 ← phi( sin8s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [71] (word) sin8s::x#4 ← phi( sin8s/(word) sin8s::x#0 sin8s::@5/(word) sin8s::x#1 ) [72] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 to:sin8s::@6 sin8s::@6: scope:[sin8s] from sin8s::@1 - [73] (word) sin8s::x#2 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 + [73] (word) sin8s::x#2 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 to:sin8s::@2 sin8s::@2: scope:[sin8s] from sin8s::@1 sin8s::@6 - [74] (word) sin8s::x#6 ? phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) - [75] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [76] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 - [77] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 - [78] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 + [74] (word) sin8s::x#6 ← phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) + [75] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [76] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 + [77] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 + [78] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 [79] call mulu8_sel - [80] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + [80] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 to:sin8s::@9 sin8s::@9: scope:[sin8s] from sin8s::@2 - [81] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - [82] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 - [83] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 + [81] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + [82] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 + [83] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 [84] call mulu8_sel - [85] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + [85] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 to:sin8s::@10 sin8s::@10: scope:[sin8s] from sin8s::@9 - [86] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 - [87] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 + [86] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 + [87] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 [88] call mulu8_sel - [89] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + [89] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 to:sin8s::@11 sin8s::@11: scope:[sin8s] from sin8s::@10 - [90] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - [91] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 - [92] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 - [93] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 + [90] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + [91] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 + [92] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 + [93] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 [94] call mulu8_sel - [95] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + [95] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 to:sin8s::@12 sin8s::@12: scope:[sin8s] from sin8s::@11 - [96] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - [97] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 - [98] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 + [96] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + [97] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 + [98] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 [99] call mulu8_sel - [100] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + [100] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 to:sin8s::@13 sin8s::@13: scope:[sin8s] from sin8s::@12 - [101] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - [102] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [103] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 + [101] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + [102] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [103] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [104] if((byte) sin8s::usinx#1<(byte/word/signed word/dword/signed dword) $80) goto sin8s::@3 to:sin8s::@7 sin8s::@7: scope:[sin8s] from sin8s::@13 - [105] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 + [105] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 to:sin8s::@3 sin8s::@3: scope:[sin8s] from sin8s::@13 sin8s::@7 - [106] (byte) sin8s::usinx#4 ? phi( sin8s::@13/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) + [106] (byte) sin8s::usinx#4 ← phi( sin8s::@13/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) [107] if((byte) sin8s::isUpper#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin8s::@14 to:sin8s::@8 sin8s::@8: scope:[sin8s] from sin8s::@3 - [108] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 + [108] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 to:sin8s::@4 sin8s::@4: scope:[sin8s] from sin8s::@14 sin8s::@8 - [109] (signed byte) sin8s::return#1 ? phi( sin8s::@14/(signed byte~) sin8s::return#5 sin8s::@8/(signed byte) sin8s::sinx#1 ) + [109] (signed byte) sin8s::return#1 ← phi( sin8s::@14/(signed byte~) sin8s::return#5 sin8s::@8/(signed byte) sin8s::sinx#1 ) to:sin8s::@return sin8s::@return: scope:[sin8s] from sin8s::@4 [110] return to:@return sin8s::@14: scope:[sin8s] from sin8s::@3 - [111] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 + [111] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 to:sin8s::@4 mulu8_sel: scope:[mulu8_sel] from sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@2 sin8s::@9 - [112] (byte) mulu8_sel::select#5 ? phi( sin8s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@10/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [112] (byte) mulu8_sel::v2#5 ? phi( sin8s::@9/(byte) mulu8_sel::v2#1 sin8s::@10/(const byte) sin8s::DIV_6#0 sin8s::@11/(byte) mulu8_sel::v2#3 sin8s::@12/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) - [112] (byte) mulu8_sel::v1#5 ? phi( sin8s::@9/(byte) mulu8_sel::v1#1 sin8s::@10/(byte) mulu8_sel::v1#2 sin8s::@11/(byte) mulu8_sel::v1#3 sin8s::@12/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) - [113] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - [114] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 + [112] (byte) mulu8_sel::select#5 ← phi( sin8s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@10/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [112] (byte) mulu8_sel::v2#5 ← phi( sin8s::@9/(byte) mulu8_sel::v2#1 sin8s::@10/(const byte) sin8s::DIV_6#0 sin8s::@11/(byte) mulu8_sel::v2#3 sin8s::@12/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) + [112] (byte) mulu8_sel::v1#5 ← phi( sin8s::@9/(byte) mulu8_sel::v1#1 sin8s::@10/(byte) mulu8_sel::v1#2 sin8s::@11/(byte) mulu8_sel::v1#3 sin8s::@12/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) + [113] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + [114] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 [115] call mul8u - [116] (word) mul8u::return#2 ? (word) mul8u::res#2 + [116] (word) mul8u::return#2 ← (word) mul8u::res#2 to:mulu8_sel::@1 mulu8_sel::@1: scope:[mulu8_sel] from mulu8_sel - [117] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 - [118] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 - [119] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 + [117] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 + [118] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 + [119] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 to:mulu8_sel::@return mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@1 [120] return to:@return mul8u: scope:[mul8u] from mulu8_sel - [121] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 + [121] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@3 - [122] (word) mul8u::mb#2 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) - [122] (word) mul8u::res#2 ? phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) - [122] (byte) mul8u::a#2 ? phi( mul8u/(byte) mul8u::a#1 mul8u::@3/(byte) mul8u::a#0 ) + [122] (word) mul8u::mb#2 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) + [122] (word) mul8u::res#2 ← phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) + [122] (byte) mul8u::a#2 ← phi( mul8u/(byte) mul8u::a#1 mul8u::@3/(byte) mul8u::a#0 ) [123] if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 to:mul8u::@return mul8u::@return: scope:[mul8u] from mul8u::@1 [124] return to:@return mul8u::@2: scope:[mul8u] from mul8u::@1 - [125] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [125] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [126] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 to:mul8u::@4 mul8u::@4: scope:[mul8u] from mul8u::@2 - [127] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 + [127] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 to:mul8u::@3 mul8u::@3: scope:[mul8u] from mul8u::@2 mul8u::@4 - [128] (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) - [129] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [130] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [128] (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) + [129] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [130] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul8u::@1 div16u: scope:[div16u] from sin8s_gen [131] phi() [132] call divr16u - [133] (word) divr16u::return#2 ? (word) divr16u::return#0 + [133] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div16u::@1 div16u::@1: scope:[div16u] from div16u - [134] (word) div16u::return#0 ? (word) divr16u::return#2 + [134] (word) div16u::return#0 ← (word) divr16u::return#2 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@1 [135] return @@ -1919,36 +1919,36 @@ divr16u: scope:[divr16u] from div16u [136] phi() to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [137] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [137] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [137] (word) divr16u::dividend#2 ? phi( divr16u/(const word) PI2_u4f12#0 divr16u::@3/(word) divr16u::dividend#0 ) - [137] (word) divr16u::rem#4 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::rem#10 ) - [138] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [139] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 - [140] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [137] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [137] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [137] (word) divr16u::dividend#2 ← phi( divr16u/(const word) PI2_u4f12#0 divr16u::@3/(word) divr16u::dividend#0 ) + [137] (word) divr16u::rem#4 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::rem#10 ) + [138] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [139] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 + [140] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [141] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [142] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [142] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [143] (word) divr16u::rem#5 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [144] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [145] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [143] (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [144] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [145] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [146] if((word) divr16u::rem#5<(const word) main::wavelength#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [147] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [148] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::wavelength#0 + [147] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [148] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::wavelength#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [149] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [149] (word) divr16u::rem#10 ? phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) - [150] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [149] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [149] (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) + [150] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [151] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [152] (word) rem16u#1 ? (word) divr16u::rem#10 + [152] (word) rem16u#1 ← (word) divr16u::rem#10 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [153] return @@ -2370,7 +2370,7 @@ main: { jmp b1 //SEG23 main::@1 b1: - //SEG24 [9] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuz2_minus_pbsc2_derefidx_vbuz2 + //SEG24 [9] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuz2_minus_pbsc2_derefidx_vbuz2 ldy i lda sintab2,y sec @@ -2401,7 +2401,7 @@ main: { jmp b2 //SEG34 main::@2 b2: - //SEG35 [14] (signed byte) print_sbyte::b#1 ? (signed byte) main::sb#0 -- vbsz1=vbsz2 + //SEG35 [14] (signed byte) print_sbyte::b#1 ← (signed byte) main::sb#0 -- vbsz1=vbsz2 lda sb sta print_sbyte.b //SEG36 [15] call print_sbyte @@ -2424,7 +2424,7 @@ main: { jmp b6 //SEG43 main::@6 b6: - //SEG44 [18] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 + //SEG44 [18] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG45 [19] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c0 @@ -2466,17 +2466,17 @@ print_str: { rts //SEG56 print_str::@2 b2: - //SEG57 [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG57 [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG58 [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG58 [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG59 [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG59 [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -2534,7 +2534,7 @@ print_sbyte: { jmp b4 //SEG80 print_sbyte::@4 b4: - //SEG81 [36] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG81 [36] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -2547,11 +2547,11 @@ print_sbyte: { // print_char(byte zeropage(6) ch) print_char: { .label ch = 6 - //SEG83 [38] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuz2 + //SEG83 [38] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG84 [39] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 + //SEG84 [39] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -2567,14 +2567,14 @@ print_char: { print_byte: { .label _0 = $26 .label _2 = $27 - //SEG88 [41] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG88 [41] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda print_sbyte.b lsr lsr lsr lsr sta _0 - //SEG89 [42] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG89 [42] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -2587,11 +2587,11 @@ print_byte: { jmp b1 //SEG94 print_byte::@1 b1: - //SEG95 [44] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG95 [44] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and print_sbyte.b sta _2 - //SEG96 [45] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG96 [45] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -2625,11 +2625,11 @@ print_cls: { jmp b1 //SEG108 print_cls::@1 b1: - //SEG109 [50] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG109 [50] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG110 [51] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG110 [51] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -2662,7 +2662,7 @@ sin8s_gen: { //SEG116 [131] phi from sin8s_gen to div16u [phi:sin8s_gen->div16u] div16u_from_sin8s_gen: jsr div16u - //SEG117 [56] (word) div16u::return#2 ? (word) div16u::return#0 -- vwuz1=vwuz2 + //SEG117 [56] (word) div16u::return#2 ← (word) div16u::return#0 -- vwuz1=vwuz2 lda div16u.return sta div16u.return_2 lda div16u.return+1 @@ -2670,7 +2670,7 @@ sin8s_gen: { jmp b2 //SEG118 sin8s_gen::@2 b2: - //SEG119 [57] (word) sin8s_gen::step#0 ? (word) div16u::return#2 -- vwuz1=vwuz2 + //SEG119 [57] (word) sin8s_gen::step#0 ← (word) div16u::return#2 -- vwuz1=vwuz2 lda div16u.return_2 sta step lda div16u.return_2+1 @@ -2702,32 +2702,32 @@ sin8s_gen: { jmp b1 //SEG128 sin8s_gen::@1 b1: - //SEG129 [59] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 -- vwuz1=vwuz2 + //SEG129 [59] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG130 [60] call sin8s jsr sin8s - //SEG131 [61] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 -- vbsz1=vbsz2 + //SEG131 [61] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 -- vbsz1=vbsz2 lda sin8s.return_1 sta sin8s.return jmp b3 //SEG132 sin8s_gen::@3 b3: - //SEG133 [62] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 -- vbsz1=vbsz2 + //SEG133 [62] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 -- vbsz1=vbsz2 lda sin8s.return sta _1 - //SEG134 [63] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsz2 + //SEG134 [63] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsz2 lda _1 ldy #0 sta (sintab),y - //SEG135 [64] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 + //SEG135 [64] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 inc sintab bne !+ inc sintab+1 !: - //SEG136 [65] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG136 [65] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -2735,7 +2735,7 @@ sin8s_gen: { lda x+1 adc step+1 sta x+1 - //SEG137 [66] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG137 [66] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -2793,7 +2793,7 @@ sin8s: { jmp b5 //SEG143 sin8s::@5 b5: - //SEG144 [70] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG144 [70] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc # (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG159 [76] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG160 [77] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG160 [77] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v1 - //SEG161 [78] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG161 [78] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG162 [79] call mulu8_sel @@ -2873,19 +2873,19 @@ sin8s: { //SEG165 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG166 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG167 [80] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG167 [80] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return jmp b9 //SEG168 sin8s::@9 b9: - //SEG169 [81] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 -- vbuz1=vbuz2 + //SEG169 [81] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 -- vbuz1=vbuz2 lda mulu8_sel.return sta x2 - //SEG170 [82] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuz1=vbuz2 + //SEG170 [82] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuz1=vbuz2 lda x2 sta mulu8_sel.v1 - //SEG171 [83] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG171 [83] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG172 [84] call mulu8_sel @@ -2897,16 +2897,16 @@ sin8s: { //SEG175 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG176 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG177 [85] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG177 [85] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_1 jmp b10 //SEG178 sin8s::@10 b10: - //SEG179 [86] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuz2 + //SEG179 [86] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuz2 lda mulu8_sel.return_1 sta x3 - //SEG180 [87] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuz1=vbuz2 + //SEG180 [87] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuz1=vbuz2 lda x3 sta mulu8_sel.v1 //SEG181 [88] call mulu8_sel @@ -2920,24 +2920,24 @@ sin8s: { sta mulu8_sel.v2 //SEG185 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG186 [89] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG186 [89] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_2 jmp b11 //SEG187 sin8s::@11 b11: - //SEG188 [90] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 -- vbuz1=vbuz2 + //SEG188 [90] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 -- vbuz1=vbuz2 lda mulu8_sel.return_2 sta x3_6 - //SEG189 [91] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG189 [91] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x3_6 sta usinx - //SEG190 [92] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuz1=vbuz2 + //SEG190 [92] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuz1=vbuz2 lda x3 sta mulu8_sel.v1 - //SEG191 [93] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG191 [93] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG192 [94] call mulu8_sel @@ -2949,19 +2949,19 @@ sin8s: { //SEG195 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG196 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG197 [95] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG197 [95] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_10 jmp b12 //SEG198 sin8s::@12 b12: - //SEG199 [96] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 -- vbuz1=vbuz2 + //SEG199 [96] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 -- vbuz1=vbuz2 lda mulu8_sel.return_10 sta x4 - //SEG200 [97] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuz1=vbuz2 + //SEG200 [97] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuz1=vbuz2 lda x4 sta mulu8_sel.v1 - //SEG201 [98] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG201 [98] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG202 [99] call mulu8_sel @@ -2973,23 +2973,23 @@ sin8s: { //SEG205 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG206 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG207 [100] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG207 [100] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_11 jmp b13 //SEG208 sin8s::@13 b13: - //SEG209 [101] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 -- vbuz1=vbuz2 + //SEG209 [101] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 -- vbuz1=vbuz2 lda mulu8_sel.return_11 sta x5 - //SEG210 [102] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG210 [102] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda x5 lsr lsr lsr lsr sta x5_128 - //SEG211 [103] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuz1=vbuz2_plus_vbuz3 + //SEG211 [103] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuz1=vbuz2_plus_vbuz3 lda usinx clc adc x5_128 @@ -3001,7 +3001,7 @@ sin8s: { jmp b7 //SEG213 sin8s::@7 b7: - //SEG214 [105] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuz1=_dec_vbuz1 + //SEG214 [105] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuz1=_dec_vbuz1 dec usinx_2 //SEG215 [106] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] b3_from_b13: @@ -3017,7 +3017,7 @@ sin8s: { jmp b8 //SEG219 sin8s::@8 b8: - //SEG220 [108] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsz1=_neg_vbsz2 + //SEG220 [108] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsz1=_neg_vbsz2 lda usinx_4 eor #$ff clc @@ -3037,7 +3037,7 @@ sin8s: { rts //SEG226 sin8s::@14 b14: - //SEG227 [111] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsz1=vbsz2 + //SEG227 [111] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsz1=vbsz2 lda usinx_4 sta return_5 jmp b4_from_b14 @@ -3058,15 +3058,15 @@ mulu8_sel: { .label return_11 = $3a .label select = $18 .label return_12 = $44 - //SEG229 [113] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 -- vbuz1=vbuz2 + //SEG229 [113] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 -- vbuz1=vbuz2 lda v1 sta mul8u.a - //SEG230 [114] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 -- vbuz1=vbuz2 + //SEG230 [114] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 -- vbuz1=vbuz2 lda v2 sta mul8u.b //SEG231 [115] call mul8u jsr mul8u - //SEG232 [116] (word) mul8u::return#2 ? (word) mul8u::res#2 -- vwuz1=vwuz2 + //SEG232 [116] (word) mul8u::return#2 ← (word) mul8u::res#2 -- vwuz1=vwuz2 lda mul8u.res sta mul8u.return lda mul8u.res+1 @@ -3074,12 +3074,12 @@ mulu8_sel: { jmp b1 //SEG233 mulu8_sel::@1 b1: - //SEG234 [117] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 -- vwuz1=vwuz2 + //SEG234 [117] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 -- vwuz1=vwuz2 lda mul8u.return sta _0 lda mul8u.return+1 sta _0+1 - //SEG235 [118] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz2_rol_vbuz3 + //SEG235 [118] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -3092,7 +3092,7 @@ mulu8_sel: { dey bne !- !e: - //SEG236 [119] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuz1=_hi_vwuz2 + //SEG236 [119] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuz1=_hi_vwuz2 lda _1+1 sta return_12 jmp breturn @@ -3111,7 +3111,7 @@ mul8u: { .label res = $1a .label b = $3d .label return = $3e - //SEG240 [121] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuz2 + //SEG240 [121] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuz2 lda b sta mb lda #0 @@ -3139,7 +3139,7 @@ mul8u: { rts //SEG249 mul8u::@2 b2: - //SEG250 [125] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 + //SEG250 [125] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 lda #1 and a sta _1 @@ -3150,7 +3150,7 @@ mul8u: { jmp b4 //SEG252 mul8u::@4 b4: - //SEG253 [127] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG253 [127] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -3165,9 +3165,9 @@ mul8u: { jmp b3 //SEG256 mul8u::@3 b3: - //SEG257 [129] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG257 [129] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr a - //SEG258 [130] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG258 [130] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG259 [122] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -3189,7 +3189,7 @@ div16u: { //SEG265 [136] phi from div16u to divr16u [phi:div16u->divr16u] divr16u_from_div16u: jsr divr16u - //SEG266 [133] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG266 [133] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -3197,7 +3197,7 @@ div16u: { jmp b1 //SEG267 div16u::@1 b1: - //SEG268 [134] (word) div16u::return#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG268 [134] (word) div16u::return#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta return lda divr16u.return_2+1 @@ -3253,13 +3253,13 @@ divr16u: { jmp b1 //SEG282 divr16u::@1 b1: - //SEG283 [138] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG283 [138] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG284 [139] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuz1=_hi_vwuz2 + //SEG284 [139] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG285 [140] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG285 [140] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -3270,7 +3270,7 @@ divr16u: { jmp b4 //SEG287 divr16u::@4 b4: - //SEG288 [142] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG288 [142] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -3281,10 +3281,10 @@ divr16u: { jmp b2 //SEG291 divr16u::@2 b2: - //SEG292 [144] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG292 [144] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG293 [145] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG293 [145] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG294 [146] if((word) divr16u::rem#5<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -3299,12 +3299,12 @@ divr16u: { jmp b5 //SEG295 divr16u::@5 b5: - //SEG296 [147] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG296 [147] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG297 [148] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG297 [148] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a +Statement [41] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 ] -Statement [44] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a -Statement [50] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [44] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a +Statement [50] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [52] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:7 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [56] (word) div16u::return#2 ? (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a -Statement [57] (word) sin8s_gen::step#0 ? (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a -Statement [59] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [63] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y -Statement [65] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [56] (word) div16u::return#2 ← (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a +Statement [57] (word) sin8s_gen::step#0 ← (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a +Statement [59] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a +Statement [63] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y +Statement [65] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a Statement [67] if((word) sin8s_gen::i#1<(const word) main::wavelength#0) goto sin8s_gen::@1 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ) always clobbers reg byte a Statement [69] if((word) sin8s::x#0<(const word) PI_u4f12#0) goto sin8s::@1 [ sin8s::x#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [70] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a +Statement [70] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a Statement [72] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 [ sin8s::x#4 sin8s::isUpper#10 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#4 sin8s::isUpper#10 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:17 [ sin8s::isUpper#10 ] -Statement [73] (word) sin8s::x#2 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a -Statement [75] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a -Statement [76] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a -Statement [91] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a +Statement [73] (word) sin8s::x#2 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a +Statement [75] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a +Statement [76] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a +Statement [91] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:48 [ sin8s::x1#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ sin8s::x3#0 ] -Statement [102] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a +Statement [102] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:55 [ sin8s::usinx#0 ] -Statement [103] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a -Statement [108] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a -Statement [116] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a +Statement [103] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a +Statement [108] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a +Statement [116] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ mulu8_sel::select#5 ] -Statement [117] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a -Statement [118] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a -Statement [119] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a -Statement [121] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [117] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a +Statement [118] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a +Statement [119] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a +Statement [121] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] -Statement [125] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [127] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a -Statement [133] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:55 [ divr16u::return#2 ] ) always clobbers reg byte a -Statement [134] (word) div16u::return#0 ? (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55 [ div16u::return#0 ] ) always clobbers reg byte a -Statement [139] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [125] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [127] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [133] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:55 [ divr16u::return#2 ] ) always clobbers reg byte a +Statement [134] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55 [ div16u::return#0 ] ) always clobbers reg byte a +Statement [139] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ divr16u::i#2 divr16u::i#1 ] -Statement [142] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [142] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [146] if((word) divr16u::rem#5<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [148] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [152] (word) rem16u#1 ? (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::return#0 ] ) always clobbers reg byte a -Statement [9] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) [ main::i#2 print_char_cursor#45 main::sb#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 ] ) always clobbers reg byte a +Statement [148] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [152] (word) rem16u#1 ← (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::return#0 ] ) always clobbers reg byte a +Statement [9] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) [ main::i#2 print_char_cursor#45 main::sb#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 ] ) always clobbers reg byte a Statement [23] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:12 [ main::i#2 main::sb#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:17 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:12 [ main::i#2 main::sb#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:17 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [36] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 [ print_char_cursor#10 print_sbyte::b#0 ] ( main:2::print_sbyte:15 [ main::i#2 print_char_cursor#10 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [38] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 [ print_char_cursor#29 ] ( main:2::print_sbyte:15::print_char:30 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:15::print_char:35 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:15::print_byte:32::print_char:43 [ main::i#2 print_sbyte::b#4 print_char_cursor#29 ] main:2::print_sbyte:15::print_byte:32::print_char:46 [ main::i#2 print_char_cursor#29 ] ) always clobbers reg byte y -Statement [41] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a -Statement [44] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a -Statement [50] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:12 [ main::i#2 main::sb#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:17 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y +Statement [36] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 [ print_char_cursor#10 print_sbyte::b#0 ] ( main:2::print_sbyte:15 [ main::i#2 print_char_cursor#10 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [38] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 [ print_char_cursor#29 ] ( main:2::print_sbyte:15::print_char:30 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:15::print_char:35 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:15::print_byte:32::print_char:43 [ main::i#2 print_sbyte::b#4 print_char_cursor#29 ] main:2::print_sbyte:15::print_byte:32::print_char:46 [ main::i#2 print_char_cursor#29 ] ) always clobbers reg byte y +Statement [41] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a +Statement [44] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:15::print_byte:32 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a +Statement [50] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:7 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [52] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:7 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [56] (word) div16u::return#2 ? (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a -Statement [57] (word) sin8s_gen::step#0 ? (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a -Statement [59] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [63] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y -Statement [65] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [56] (word) div16u::return#2 ← (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a +Statement [57] (word) sin8s_gen::step#0 ← (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a +Statement [59] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a +Statement [63] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y +Statement [65] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a Statement [67] if((word) sin8s_gen::i#1<(const word) main::wavelength#0) goto sin8s_gen::@1 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ) always clobbers reg byte a Statement [69] if((word) sin8s::x#0<(const word) PI_u4f12#0) goto sin8s::@1 [ sin8s::x#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [70] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a +Statement [70] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a Statement [72] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 [ sin8s::x#4 sin8s::isUpper#10 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#4 sin8s::isUpper#10 ] ) always clobbers reg byte a -Statement [73] (word) sin8s::x#2 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a -Statement [75] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a -Statement [76] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a -Statement [91] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a -Statement [102] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a -Statement [103] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a -Statement [108] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a -Statement [116] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a -Statement [117] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a -Statement [118] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a -Statement [119] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a -Statement [121] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a -Statement [125] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [127] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a -Statement [133] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:55 [ divr16u::return#2 ] ) always clobbers reg byte a -Statement [134] (word) div16u::return#0 ? (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55 [ div16u::return#0 ] ) always clobbers reg byte a -Statement [139] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [142] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [73] (word) sin8s::x#2 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a +Statement [75] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a +Statement [76] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a +Statement [91] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a +Statement [102] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a +Statement [103] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a +Statement [108] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:60 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a +Statement [116] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a +Statement [117] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a +Statement [118] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a +Statement [119] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a +Statement [121] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [125] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [127] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:60::mulu8_sel:79::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:84::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:88::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:94::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:60::mulu8_sel:99::mul8u:115 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [133] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:55 [ divr16u::return#2 ] ) always clobbers reg byte a +Statement [134] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55 [ div16u::return#0 ] ) always clobbers reg byte a +Statement [139] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [142] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [146] if((word) divr16u::rem#5<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [148] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [152] (word) rem16u#1 ? (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::return#0 ] ) always clobbers reg byte a +Statement [148] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [152] (word) rem16u#1 ← (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8s_gen:5::div16u:55::divr16u:132 [ divr16u::return#0 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ main::i#2 main::i#1 ] : zp ZP_BYTE:2 , reg byte x , Potential registers zp ZP_WORD:3 [ print_str::str#3 print_str::str#5 print_str::str#0 ] : zp ZP_WORD:3 , Potential registers zp ZP_BYTE:5 [ print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 ] : zp ZP_BYTE:5 , reg byte x , @@ -3647,7 +3647,7 @@ main: { jmp b1 //SEG23 main::@1 b1: - //SEG24 [9] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx_minus_pbsc2_derefidx_vbuxx + //SEG24 [9] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx_minus_pbsc2_derefidx_vbuxx lda sintab2,x sec sbc sintabref,x @@ -3677,7 +3677,7 @@ main: { jmp b2 //SEG34 main::@2 b2: - //SEG35 [14] (signed byte) print_sbyte::b#1 ? (signed byte) main::sb#0 + //SEG35 [14] (signed byte) print_sbyte::b#1 ← (signed byte) main::sb#0 //SEG36 [15] call print_sbyte jsr print_sbyte //SEG37 [16] phi from main::@2 to main::@5 [phi:main::@2->main::@5] @@ -3698,7 +3698,7 @@ main: { jmp b6 //SEG43 main::@6 b6: - //SEG44 [18] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG44 [18] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG45 [19] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$c0 @@ -3739,17 +3739,17 @@ print_str: { rts //SEG56 print_str::@2 b2: - //SEG57 [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG57 [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG58 [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG58 [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG59 [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG59 [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -3805,7 +3805,7 @@ print_sbyte: { jmp b4 //SEG80 print_sbyte::@4 b4: - //SEG81 [36] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG81 [36] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -3817,10 +3817,10 @@ print_sbyte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG83 [38] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa + //SEG83 [38] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG84 [39] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 + //SEG84 [39] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -3834,13 +3834,13 @@ print_char: { //SEG87 print_byte // Print a byte as HEX print_byte: { - //SEG88 [41] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG88 [41] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda print_sbyte.b lsr lsr lsr lsr - //SEG89 [42] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG89 [42] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG90 [43] call print_char @@ -3852,10 +3852,10 @@ print_byte: { jmp b1 //SEG94 print_byte::@1 b1: - //SEG95 [44] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG95 [44] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and print_sbyte.b - //SEG96 [45] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG96 [45] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG97 [46] call print_char @@ -3888,11 +3888,11 @@ print_cls: { jmp b1 //SEG108 print_cls::@1 b1: - //SEG109 [50] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG109 [50] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG110 [51] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG110 [51] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -3924,11 +3924,11 @@ sin8s_gen: { //SEG116 [131] phi from sin8s_gen to div16u [phi:sin8s_gen->div16u] div16u_from_sin8s_gen: jsr div16u - //SEG117 [56] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG117 [56] (word) div16u::return#2 ← (word) div16u::return#0 jmp b2 //SEG118 sin8s_gen::@2 b2: - //SEG119 [57] (word) sin8s_gen::step#0 ? (word) div16u::return#2 + //SEG119 [57] (word) sin8s_gen::step#0 ← (word) div16u::return#2 //SEG120 [58] phi from sin8s_gen::@2 to sin8s_gen::@1 [phi:sin8s_gen::@2->sin8s_gen::@1] b1_from_b2: //SEG121 [58] phi (word) sin8s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin8s_gen::@2->sin8s_gen::@1#0] -- vwuz1=vbuc1 @@ -3956,27 +3956,27 @@ sin8s_gen: { jmp b1 //SEG128 sin8s_gen::@1 b1: - //SEG129 [59] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 -- vwuz1=vwuz2 + //SEG129 [59] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG130 [60] call sin8s jsr sin8s - //SEG131 [61] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 + //SEG131 [61] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 jmp b3 //SEG132 sin8s_gen::@3 b3: - //SEG133 [62] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 - //SEG134 [63] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa + //SEG133 [62] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 + //SEG134 [63] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa ldy #0 sta (sintab),y - //SEG135 [64] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 + //SEG135 [64] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 inc sintab bne !+ inc sintab+1 !: - //SEG136 [65] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG136 [65] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -3984,7 +3984,7 @@ sin8s_gen: { lda x+1 adc step+1 sta x+1 - //SEG137 [66] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG137 [66] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4030,7 +4030,7 @@ sin8s: { jmp b5 //SEG143 sin8s::@5 b5: - //SEG144 [70] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG144 [70] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc # (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG159 [76] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG160 [77] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuxx=vbuz1 + //SEG160 [77] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG161 [78] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG161 [78] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG162 [79] call mulu8_sel //SEG163 [112] phi from sin8s::@2 to mulu8_sel [phi:sin8s::@2->mulu8_sel] @@ -4104,14 +4104,14 @@ sin8s: { //SEG165 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG166 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG167 [80] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + //SEG167 [80] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 jmp b9 //SEG168 sin8s::@9 b9: - //SEG169 [81] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - //SEG170 [82] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuxx=vbuaa + //SEG169 [81] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + //SEG170 [82] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuxx=vbuaa tax - //SEG171 [83] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG171 [83] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG172 [84] call mulu8_sel //SEG173 [112] phi from sin8s::@9 to mulu8_sel [phi:sin8s::@9->mulu8_sel] @@ -4122,13 +4122,13 @@ sin8s: { //SEG175 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG176 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG177 [85] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + //SEG177 [85] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 jmp b10 //SEG178 sin8s::@10 b10: - //SEG179 [86] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuaa + //SEG179 [86] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuaa sta x3 - //SEG180 [87] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG180 [87] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 //SEG181 [88] call mulu8_sel //SEG182 [112] phi from sin8s::@10 to mulu8_sel [phi:sin8s::@10->mulu8_sel] @@ -4140,19 +4140,19 @@ sin8s: { ldy #DIV_6 //SEG185 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG186 [89] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + //SEG186 [89] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 jmp b11 //SEG187 sin8s::@11 b11: - //SEG188 [90] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - //SEG189 [91] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa + //SEG188 [90] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + //SEG189 [91] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa eor #$ff sec adc x1 sta usinx - //SEG190 [92] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG190 [92] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 - //SEG191 [93] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG191 [93] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG192 [94] call mulu8_sel //SEG193 [112] phi from sin8s::@11 to mulu8_sel [phi:sin8s::@11->mulu8_sel] @@ -4163,14 +4163,14 @@ sin8s: { //SEG195 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG196 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG197 [95] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + //SEG197 [95] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 jmp b12 //SEG198 sin8s::@12 b12: - //SEG199 [96] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - //SEG200 [97] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuxx=vbuaa + //SEG199 [96] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + //SEG200 [97] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuxx=vbuaa tax - //SEG201 [98] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG201 [98] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG202 [99] call mulu8_sel //SEG203 [112] phi from sin8s::@12 to mulu8_sel [phi:sin8s::@12->mulu8_sel] @@ -4181,17 +4181,17 @@ sin8s: { //SEG205 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG206 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG207 [100] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + //SEG207 [100] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 jmp b13 //SEG208 sin8s::@13 b13: - //SEG209 [101] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - //SEG210 [102] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG209 [101] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + //SEG210 [102] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG211 [103] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa + //SEG211 [103] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa clc adc usinx tax @@ -4201,7 +4201,7 @@ sin8s: { jmp b7 //SEG213 sin8s::@7 b7: - //SEG214 [105] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx + //SEG214 [105] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx dex //SEG215 [106] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] b3_from_b13: @@ -4217,7 +4217,7 @@ sin8s: { jmp b8 //SEG219 sin8s::@8 b8: - //SEG220 [108] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx + //SEG220 [108] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx txa eor #$ff clc @@ -4236,7 +4236,7 @@ sin8s: { rts //SEG226 sin8s::@14 b14: - //SEG227 [111] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx + //SEG227 [111] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx txa jmp b4_from_b14 } @@ -4248,17 +4248,17 @@ mulu8_sel: { .label _0 = 9 .label _1 = 9 .label select = $b - //SEG229 [113] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - //SEG230 [114] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy + //SEG229 [113] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + //SEG230 [114] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy tya //SEG231 [115] call mul8u jsr mul8u - //SEG232 [116] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG232 [116] (word) mul8u::return#2 ← (word) mul8u::res#2 jmp b1 //SEG233 mulu8_sel::@1 b1: - //SEG234 [117] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 - //SEG235 [118] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 + //SEG234 [117] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 + //SEG235 [118] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 ldy select beq !e+ !: @@ -4267,7 +4267,7 @@ mulu8_sel: { dey bne !- !e: - //SEG236 [119] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 + //SEG236 [119] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 lda _1+1 jmp breturn //SEG237 mulu8_sel::@return @@ -4282,7 +4282,7 @@ mul8u: { .label mb = $c .label res = 9 .label return = 9 - //SEG240 [121] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa + //SEG240 [121] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -4308,7 +4308,7 @@ mul8u: { rts //SEG249 mul8u::@2 b2: - //SEG250 [125] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG250 [125] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG251 [126] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 @@ -4317,7 +4317,7 @@ mul8u: { jmp b4 //SEG252 mul8u::@4 b4: - //SEG253 [127] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG253 [127] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -4332,11 +4332,11 @@ mul8u: { jmp b3 //SEG256 mul8u::@3 b3: - //SEG257 [129] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG257 [129] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG258 [130] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG258 [130] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG259 [122] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -4357,11 +4357,11 @@ div16u: { //SEG265 [136] phi from div16u to divr16u [phi:div16u->divr16u] divr16u_from_div16u: jsr divr16u - //SEG266 [133] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG266 [133] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG267 div16u::@1 b1: - //SEG268 [134] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG268 [134] (word) div16u::return#0 ← (word) divr16u::return#2 jmp breturn //SEG269 div16u::@return breturn: @@ -4408,12 +4408,12 @@ divr16u: { jmp b1 //SEG282 divr16u::@1 b1: - //SEG283 [138] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG283 [138] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG284 [139] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 + //SEG284 [139] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG285 [140] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG285 [140] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG286 [141] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -4421,7 +4421,7 @@ divr16u: { jmp b4 //SEG287 divr16u::@4 b4: - //SEG288 [142] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG288 [142] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -4432,10 +4432,10 @@ divr16u: { jmp b2 //SEG291 divr16u::@2 b2: - //SEG292 [144] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG292 [144] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG293 [145] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG293 [145] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG294 [146] if((word) divr16u::rem#5<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -4450,12 +4450,12 @@ divr16u: { jmp b5 //SEG295 divr16u::@5 b5: - //SEG296 [147] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG296 [147] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG297 [148] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG297 [148] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #main::@1#1] -- register_copy //SEG23 main::@1 b1: - //SEG24 [9] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx_minus_pbsc2_derefidx_vbuxx + //SEG24 [9] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintab2#0 + (byte) main::i#2) - (signed byte)*((const byte[]) main::sintabref#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx_minus_pbsc2_derefidx_vbuxx lda sintab2,x sec sbc sintabref,x @@ -5045,7 +5045,7 @@ main: { //SEG33 [13] phi (byte*) print_char_cursor#44 = (byte*) print_char_cursor#45 [phi:main::@1/main::@3->main::@2#0] -- register_copy //SEG34 main::@2 b2: - //SEG35 [14] (signed byte) print_sbyte::b#1 ? (signed byte) main::sb#0 + //SEG35 [14] (signed byte) print_sbyte::b#1 ← (signed byte) main::sb#0 //SEG36 [15] call print_sbyte jsr print_sbyte //SEG37 [16] phi from main::@2 to main::@5 [phi:main::@2->main::@5] @@ -5060,7 +5060,7 @@ main: { sta print_str.str+1 jsr print_str //SEG43 main::@6 - //SEG44 [18] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG44 [18] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG45 [19] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$c0 @@ -5094,16 +5094,16 @@ print_str: { rts //SEG56 print_str::@2 b2: - //SEG57 [25] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG57 [25] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG58 [26] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG58 [26] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG59 [27] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG59 [27] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -5145,7 +5145,7 @@ print_sbyte: { lda #'-' jsr print_char //SEG80 print_sbyte::@4 - //SEG81 [36] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG81 [36] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -5157,10 +5157,10 @@ print_sbyte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG83 [38] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa + //SEG83 [38] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG84 [39] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 + //SEG84 [39] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -5172,13 +5172,13 @@ print_char: { //SEG87 print_byte // Print a byte as HEX print_byte: { - //SEG88 [41] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG88 [41] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda print_sbyte.b lsr lsr lsr lsr - //SEG89 [42] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG89 [42] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG90 [43] call print_char @@ -5187,10 +5187,10 @@ print_byte: { //SEG93 [37] phi (byte) print_char::ch#4 = (byte) print_char::ch#2 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG94 print_byte::@1 - //SEG95 [44] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG95 [44] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and print_sbyte.b - //SEG96 [45] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG96 [45] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG97 [46] call print_char @@ -5216,11 +5216,11 @@ print_cls: { //SEG107 [49] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy //SEG108 print_cls::@1 b1: - //SEG109 [50] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG109 [50] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG110 [51] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG110 [51] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -5249,9 +5249,9 @@ sin8s_gen: { //SEG115 [55] call div16u //SEG116 [131] phi from sin8s_gen to div16u [phi:sin8s_gen->div16u] jsr div16u - //SEG117 [56] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG117 [56] (word) div16u::return#2 ← (word) div16u::return#0 //SEG118 sin8s_gen::@2 - //SEG119 [57] (word) sin8s_gen::step#0 ? (word) div16u::return#2 + //SEG119 [57] (word) sin8s_gen::step#0 ← (word) div16u::return#2 //SEG120 [58] phi from sin8s_gen::@2 to sin8s_gen::@1 [phi:sin8s_gen::@2->sin8s_gen::@1] //SEG121 [58] phi (word) sin8s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin8s_gen::@2->sin8s_gen::@1#0] -- vwuz1=vbuc1 lda #0 @@ -5273,25 +5273,25 @@ sin8s_gen: { //SEG127 [58] phi (word) sin8s_gen::x#2 = (word) sin8s_gen::x#1 [phi:sin8s_gen::@3->sin8s_gen::@1#2] -- register_copy //SEG128 sin8s_gen::@1 b1: - //SEG129 [59] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 -- vwuz1=vwuz2 + //SEG129 [59] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG130 [60] call sin8s jsr sin8s - //SEG131 [61] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 + //SEG131 [61] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 //SEG132 sin8s_gen::@3 - //SEG133 [62] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 - //SEG134 [63] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa + //SEG133 [62] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 + //SEG134 [63] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa ldy #0 sta (sintab),y - //SEG135 [64] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 + //SEG135 [64] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 inc sintab bne !+ inc sintab+1 !: - //SEG136 [65] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG136 [65] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -5299,7 +5299,7 @@ sin8s_gen: { lda x+1 adc step+1 sta x+1 - //SEG137 [66] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG137 [66] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -5341,7 +5341,7 @@ sin8s: { bcc b5 !: //SEG143 sin8s::@5 - //SEG144 [70] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG144 [70] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc #sin8s::@2#0] -- register_copy //SEG157 sin8s::@2 b2: - //SEG158 [75] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 + //SEG158 [75] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 asl _4 rol _4+1 asl _4 rol _4+1 asl _4 rol _4+1 - //SEG159 [76] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG159 [76] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG160 [77] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuxx=vbuz1 + //SEG160 [77] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuxx=vbuz1 tax - //SEG161 [78] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG161 [78] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 tay //SEG162 [79] call mulu8_sel //SEG163 [112] phi from sin8s::@2 to mulu8_sel [phi:sin8s::@2->mulu8_sel] @@ -5407,12 +5407,12 @@ sin8s: { //SEG165 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG166 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG167 [80] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + //SEG167 [80] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 //SEG168 sin8s::@9 - //SEG169 [81] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - //SEG170 [82] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuxx=vbuaa + //SEG169 [81] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + //SEG170 [82] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuxx=vbuaa tax - //SEG171 [83] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG171 [83] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG172 [84] call mulu8_sel //SEG173 [112] phi from sin8s::@9 to mulu8_sel [phi:sin8s::@9->mulu8_sel] @@ -5422,11 +5422,11 @@ sin8s: { //SEG175 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG176 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG177 [85] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + //SEG177 [85] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 //SEG178 sin8s::@10 - //SEG179 [86] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuaa + //SEG179 [86] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuaa sta x3 - //SEG180 [87] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG180 [87] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 tax //SEG181 [88] call mulu8_sel //SEG182 [112] phi from sin8s::@10 to mulu8_sel [phi:sin8s::@10->mulu8_sel] @@ -5437,17 +5437,17 @@ sin8s: { ldy #DIV_6 //SEG185 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG186 [89] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + //SEG186 [89] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 //SEG187 sin8s::@11 - //SEG188 [90] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - //SEG189 [91] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa + //SEG188 [90] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + //SEG189 [91] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa eor #$ff sec adc x1 sta usinx - //SEG190 [92] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG190 [92] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 - //SEG191 [93] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG191 [93] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG192 [94] call mulu8_sel //SEG193 [112] phi from sin8s::@11 to mulu8_sel [phi:sin8s::@11->mulu8_sel] @@ -5457,12 +5457,12 @@ sin8s: { //SEG195 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG196 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG197 [95] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + //SEG197 [95] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 //SEG198 sin8s::@12 - //SEG199 [96] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - //SEG200 [97] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuxx=vbuaa + //SEG199 [96] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + //SEG200 [97] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuxx=vbuaa tax - //SEG201 [98] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG201 [98] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG202 [99] call mulu8_sel //SEG203 [112] phi from sin8s::@12 to mulu8_sel [phi:sin8s::@12->mulu8_sel] @@ -5472,15 +5472,15 @@ sin8s: { //SEG205 [112] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG206 [112] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG207 [100] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + //SEG207 [100] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 //SEG208 sin8s::@13 - //SEG209 [101] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - //SEG210 [102] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG209 [101] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + //SEG210 [102] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG211 [103] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa + //SEG211 [103] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa clc adc usinx tax @@ -5488,7 +5488,7 @@ sin8s: { cpx #$80 bcc b3 //SEG213 sin8s::@7 - //SEG214 [105] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx + //SEG214 [105] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx dex //SEG215 [106] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] //SEG216 [106] phi (byte) sin8s::usinx#4 = (byte) sin8s::usinx#1 [phi:sin8s::@13/sin8s::@7->sin8s::@3#0] -- register_copy @@ -5499,7 +5499,7 @@ sin8s: { cmp #0 beq b14 //SEG219 sin8s::@8 - //SEG220 [108] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx + //SEG220 [108] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx txa eor #$ff clc @@ -5512,7 +5512,7 @@ sin8s: { rts //SEG226 sin8s::@14 b14: - //SEG227 [111] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx + //SEG227 [111] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx txa rts } @@ -5524,15 +5524,15 @@ mulu8_sel: { .label _0 = 9 .label _1 = 9 .label select = $b - //SEG229 [113] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - //SEG230 [114] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy + //SEG229 [113] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + //SEG230 [114] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy tya //SEG231 [115] call mul8u jsr mul8u - //SEG232 [116] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG232 [116] (word) mul8u::return#2 ← (word) mul8u::res#2 //SEG233 mulu8_sel::@1 - //SEG234 [117] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 - //SEG235 [118] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 + //SEG234 [117] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 + //SEG235 [118] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 ldy select beq !e+ !: @@ -5541,7 +5541,7 @@ mulu8_sel: { dey bne !- !e: - //SEG236 [119] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 + //SEG236 [119] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 lda _1+1 //SEG237 mulu8_sel::@return //SEG238 [120] return @@ -5554,7 +5554,7 @@ mul8u: { .label mb = $c .label res = 9 .label return = 9 - //SEG240 [121] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa + //SEG240 [121] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -5574,14 +5574,14 @@ mul8u: { rts //SEG249 mul8u::@2 b2: - //SEG250 [125] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG250 [125] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG251 [126] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG252 mul8u::@4 - //SEG253 [127] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG253 [127] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -5593,11 +5593,11 @@ mul8u: { //SEG255 [128] phi (word) mul8u::res#6 = (word) mul8u::res#2 [phi:mul8u::@2/mul8u::@4->mul8u::@3#0] -- register_copy //SEG256 mul8u::@3 b3: - //SEG257 [129] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG257 [129] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG258 [130] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG258 [130] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG259 [122] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -5616,9 +5616,9 @@ div16u: { //SEG264 [132] call divr16u //SEG265 [136] phi from div16u to divr16u [phi:div16u->divr16u] jsr divr16u - //SEG266 [133] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG266 [133] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG267 div16u::@1 - //SEG268 [134] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG268 [134] (word) div16u::return#0 ← (word) divr16u::return#2 //SEG269 div16u::@return //SEG270 [135] return rts @@ -5657,18 +5657,18 @@ divr16u: { //SEG281 [137] phi (word) divr16u::rem#4 = (word) divr16u::rem#10 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG282 divr16u::@1 b1: - //SEG283 [138] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG283 [138] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG284 [139] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 + //SEG284 [139] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG285 [140] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG285 [140] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG286 [141] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG287 divr16u::@4 - //SEG288 [142] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG288 [142] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -5676,10 +5676,10 @@ divr16u: { //SEG290 [143] phi (word) divr16u::rem#5 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG291 divr16u::@2 b2: - //SEG292 [144] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG292 [144] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG293 [145] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG293 [145] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG294 [146] if((word) divr16u::rem#5<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -5692,12 +5692,12 @@ divr16u: { bcc b3 !: //SEG295 divr16u::@5 - //SEG296 [147] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG296 [147] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG297 [148] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG297 [148] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #divr16u::@3#1] -- register_copy //SEG301 divr16u::@3 b3: - //SEG302 [150] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG302 [150] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG303 [151] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG304 divr16u::@6 - //SEG305 [152] (word) rem16u#1 ? (word) divr16u::rem#10 + //SEG305 [152] (word) rem16u#1 ← (word) divr16u::rem#10 //SEG306 divr16u::@return //SEG307 [153] return rts diff --git a/src/test/ref/sinusgen8b.log b/src/test/ref/sinusgen8b.log index 6a7fb6fef..112d4beaa 100644 --- a/src/test/ref/sinusgen8b.log +++ b/src/test/ref/sinusgen8b.log @@ -2,938 +2,938 @@ Identified constant variable (word) main::wavelength CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@2 @2: scope:[] from @begin - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@5 divr16u: scope:[divr16u] from div16u div32u16u div32u16u::@2 - (word) divr16u::divisor#7 ? phi( div16u/(word) divr16u::divisor#0 div32u16u/(word) divr16u::divisor#1 div32u16u::@2/(word) divr16u::divisor#2 ) - (word) divr16u::dividend#6 ? phi( div16u/(word) divr16u::dividend#1 div32u16u/(word) divr16u::dividend#2 div32u16u::@2/(word) divr16u::dividend#3 ) - (word) divr16u::rem#11 ? phi( div16u/(word) divr16u::rem#3 div32u16u/(word) divr16u::rem#4 div32u16u::@2/(word) divr16u::rem#5 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#7 ← phi( div16u/(word) divr16u::divisor#0 div32u16u/(word) divr16u::divisor#1 div32u16u::@2/(word) divr16u::divisor#2 ) + (word) divr16u::dividend#6 ← phi( div16u/(word) divr16u::dividend#1 div32u16u/(word) divr16u::dividend#2 div32u16u::@2/(word) divr16u::dividend#3 ) + (word) divr16u::rem#11 ← phi( div16u/(word) divr16u::rem#3 div32u16u/(word) divr16u::rem#4 div32u16u::@2/(word) divr16u::rem#5 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#5 ? phi( divr16u/(word) divr16u::divisor#7 divr16u::@3/(word) divr16u::divisor#8 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#4 ? phi( divr16u/(word) divr16u::dividend#6 divr16u::@3/(word) divr16u::dividend#7 ) - (word) divr16u::rem#6 ? phi( divr16u/(word) divr16u::rem#11 divr16u::@3/(word) divr16u::rem#12 ) - (word~) divr16u::$0 ? (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#4 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#5 ← phi( divr16u/(word) divr16u::divisor#7 divr16u::@3/(word) divr16u::divisor#8 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#4 ← phi( divr16u/(word) divr16u::dividend#6 divr16u::@3/(word) divr16u::dividend#7 ) + (word) divr16u::rem#6 ← phi( divr16u/(word) divr16u::rem#11 divr16u::@3/(word) divr16u::rem#12 ) + (word~) divr16u::$0 ← (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#4 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#3 ? phi( divr16u::@1/(word) divr16u::divisor#5 divr16u::@4/(word) divr16u::divisor#6 ) - (word) divr16u::rem#7 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#5 ? phi( divr16u::@1/(word) divr16u::dividend#4 divr16u::@4/(word) divr16u::dividend#8 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#7 >= (word) divr16u::divisor#3 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#3 ← phi( divr16u::@1/(word) divr16u::divisor#5 divr16u::@4/(word) divr16u::divisor#6 ) + (word) divr16u::rem#7 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#5 ← phi( divr16u::@1/(word) divr16u::dividend#4 divr16u::@4/(word) divr16u::dividend#8 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#7 >= (word) divr16u::divisor#3 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#6 ? phi( divr16u::@1/(word) divr16u::divisor#5 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#8 ? phi( divr16u::@1/(word) divr16u::dividend#4 ) - (word) divr16u::rem#8 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#8 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#6 ← phi( divr16u::@1/(word) divr16u::divisor#5 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#8 ← phi( divr16u::@1/(word) divr16u::dividend#4 ) + (word) divr16u::rem#8 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#8 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#8 ? phi( divr16u::@2/(word) divr16u::divisor#3 divr16u::@5/(word) divr16u::divisor#4 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#7 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#9 ) - (word) divr16u::rem#12 ? phi( divr16u::@2/(word) divr16u::rem#7 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#8 ← phi( divr16u::@2/(word) divr16u::divisor#3 divr16u::@5/(word) divr16u::divisor#4 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#7 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#9 ) + (word) divr16u::rem#12 ← phi( divr16u::@2/(word) divr16u::rem#7 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#9 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#4 ? phi( divr16u::@2/(word) divr16u::divisor#3 ) - (word) divr16u::rem#9 ? phi( divr16u::@2/(word) divr16u::rem#7 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#9 - (word) divr16u::divisor#4 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#9 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#4 ← phi( divr16u::@2/(word) divr16u::divisor#3 ) + (word) divr16u::rem#9 ← phi( divr16u::@2/(word) divr16u::rem#7 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#9 - (word) divr16u::divisor#4 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#10 ? phi( divr16u::@3/(word) divr16u::rem#12 ) - (word) rem16u#1 ? (word) divr16u::rem#10 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#10 ← phi( divr16u::@3/(word) divr16u::rem#12 ) + (word) rem16u#1 ← (word) divr16u::rem#10 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#16 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#5 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#5 - (word) rem16u#2 ? (word) rem16u#16 + (word) rem16u#16 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#5 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#5 + (word) rem16u#2 ← (word) rem16u#16 return to:@return div16u: scope:[div16u] from sin8s_gen - (word) rem16u#30 ? phi( sin8s_gen/(word) rem16u#34 ) - (word) div16u::divisor#1 ? phi( sin8s_gen/(word) div16u::divisor#0 ) - (word) div16u::dividend#1 ? phi( sin8s_gen/(word) div16u::dividend#0 ) - (word) divr16u::dividend#1 ? (word) div16u::dividend#1 - (word) divr16u::divisor#0 ? (word) div16u::divisor#1 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#30 ← phi( sin8s_gen/(word) rem16u#34 ) + (word) div16u::divisor#1 ← phi( sin8s_gen/(word) div16u::divisor#0 ) + (word) div16u::dividend#1 ← phi( sin8s_gen/(word) div16u::dividend#0 ) + (word) divr16u::dividend#1 ← (word) div16u::dividend#1 + (word) divr16u::divisor#0 ← (word) div16u::divisor#1 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div16u::@2 div16u::@2: scope:[div16u] from div16u - (word) rem16u#17 ? phi( div16u/(word) rem16u#2 ) - (word) divr16u::return#6 ? phi( div16u/(word) divr16u::return#2 ) - (word~) div16u::$0 ? (word) divr16u::return#6 - (word) rem16u#3 ? (word) rem16u#17 - (word) div16u::return#0 ? (word~) div16u::$0 + (word) rem16u#17 ← phi( div16u/(word) rem16u#2 ) + (word) divr16u::return#6 ← phi( div16u/(word) divr16u::return#2 ) + (word~) div16u::$0 ← (word) divr16u::return#6 + (word) rem16u#3 ← (word) rem16u#17 + (word) div16u::return#0 ← (word~) div16u::$0 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@2 - (word) rem16u#18 ? phi( div16u::@2/(word) rem16u#3 ) - (word) div16u::return#3 ? phi( div16u::@2/(word) div16u::return#0 ) - (word) div16u::return#1 ? (word) div16u::return#3 - (word) rem16u#4 ? (word) rem16u#18 + (word) rem16u#18 ← phi( div16u::@2/(word) rem16u#3 ) + (word) div16u::return#3 ← phi( div16u::@2/(word) div16u::return#0 ) + (word) div16u::return#1 ← (word) div16u::return#3 + (word) rem16u#4 ← (word) rem16u#18 return to:@return div32u16u: scope:[div32u16u] from sin16s_gen - (word) rem16u#31 ? phi( sin16s_gen/(word) rem16u#32 ) - (word) div32u16u::divisor#1 ? phi( sin16s_gen/(word) div32u16u::divisor#0 ) - (dword) div32u16u::dividend#1 ? phi( sin16s_gen/(dword) div32u16u::dividend#0 ) - (word~) div32u16u::$0 ? > (dword) div32u16u::dividend#1 - (word) divr16u::dividend#2 ? (word~) div32u16u::$0 - (word) divr16u::divisor#1 ? (word) div32u16u::divisor#1 - (word) divr16u::rem#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#31 ← phi( sin16s_gen/(word) rem16u#32 ) + (word) div32u16u::divisor#1 ← phi( sin16s_gen/(word) div32u16u::divisor#0 ) + (dword) div32u16u::dividend#1 ← phi( sin16s_gen/(dword) div32u16u::dividend#0 ) + (word~) div32u16u::$0 ← > (dword) div32u16u::dividend#1 + (word) divr16u::dividend#2 ← (word~) div32u16u::$0 + (word) divr16u::divisor#1 ← (word) div32u16u::divisor#1 + (word) divr16u::rem#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#3 ? (word) divr16u::return#1 + (word) divr16u::return#3 ← (word) divr16u::return#1 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u - (word) div32u16u::divisor#2 ? phi( div32u16u/(word) div32u16u::divisor#1 ) - (dword) div32u16u::dividend#2 ? phi( div32u16u/(dword) div32u16u::dividend#1 ) - (word) rem16u#19 ? phi( div32u16u/(word) rem16u#2 ) - (word) divr16u::return#7 ? phi( div32u16u/(word) divr16u::return#3 ) - (word~) div32u16u::$1 ? (word) divr16u::return#7 - (word) rem16u#5 ? (word) rem16u#19 - (word) div32u16u::quotient_hi#0 ? (word~) div32u16u::$1 - (word~) div32u16u::$2 ? < (dword) div32u16u::dividend#2 - (word) divr16u::dividend#3 ? (word~) div32u16u::$2 - (word) divr16u::divisor#2 ? (word) div32u16u::divisor#2 - (word) divr16u::rem#5 ? (word) rem16u#5 + (word) div32u16u::divisor#2 ← phi( div32u16u/(word) div32u16u::divisor#1 ) + (dword) div32u16u::dividend#2 ← phi( div32u16u/(dword) div32u16u::dividend#1 ) + (word) rem16u#19 ← phi( div32u16u/(word) rem16u#2 ) + (word) divr16u::return#7 ← phi( div32u16u/(word) divr16u::return#3 ) + (word~) div32u16u::$1 ← (word) divr16u::return#7 + (word) rem16u#5 ← (word) rem16u#19 + (word) div32u16u::quotient_hi#0 ← (word~) div32u16u::$1 + (word~) div32u16u::$2 ← < (dword) div32u16u::dividend#2 + (word) divr16u::dividend#3 ← (word~) div32u16u::$2 + (word) divr16u::divisor#2 ← (word) div32u16u::divisor#2 + (word) divr16u::rem#5 ← (word) rem16u#5 call divr16u - (word) divr16u::return#4 ? (word) divr16u::return#1 + (word) divr16u::return#4 ← (word) divr16u::return#1 to:div32u16u::@3 div32u16u::@3: scope:[div32u16u] from div32u16u::@2 - (word) div32u16u::quotient_hi#1 ? phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) - (word) rem16u#20 ? phi( div32u16u::@2/(word) rem16u#2 ) - (word) divr16u::return#8 ? phi( div32u16u::@2/(word) divr16u::return#4 ) - (word~) div32u16u::$3 ? (word) divr16u::return#8 - (word) rem16u#6 ? (word) rem16u#20 - (word) div32u16u::quotient_lo#0 ? (word~) div32u16u::$3 - (dword) div32u16u::quotient#0 ? { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } - (dword) div32u16u::return#0 ? (dword) div32u16u::quotient#0 + (word) div32u16u::quotient_hi#1 ← phi( div32u16u::@2/(word) div32u16u::quotient_hi#0 ) + (word) rem16u#20 ← phi( div32u16u::@2/(word) rem16u#2 ) + (word) divr16u::return#8 ← phi( div32u16u::@2/(word) divr16u::return#4 ) + (word~) div32u16u::$3 ← (word) divr16u::return#8 + (word) rem16u#6 ← (word) rem16u#20 + (word) div32u16u::quotient_lo#0 ← (word~) div32u16u::$3 + (dword) div32u16u::quotient#0 ← { (word) div32u16u::quotient_hi#1, (word) div32u16u::quotient_lo#0 } + (dword) div32u16u::return#0 ← (dword) div32u16u::quotient#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@3 - (word) rem16u#21 ? phi( div32u16u::@3/(word) rem16u#6 ) - (dword) div32u16u::return#3 ? phi( div32u16u::@3/(dword) div32u16u::return#0 ) - (dword) div32u16u::return#1 ? (dword) div32u16u::return#3 - (word) rem16u#7 ? (word) rem16u#21 + (word) rem16u#21 ← phi( div32u16u::@3/(word) rem16u#6 ) + (dword) div32u16u::return#3 ← phi( div32u16u::@3/(dword) div32u16u::return#0 ) + (dword) div32u16u::return#1 ← (dword) div32u16u::return#3 + (word) rem16u#7 ← (word) rem16u#21 return to:@return @5: scope:[] from @2 - (word) rem16u#51 ? phi( @2/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#51 ← phi( @2/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @5 - (word) rem16u#48 ? phi( @5/(word) rem16u#51 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#48 ← phi( @5/(word) rem16u#51 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@13 mul8u: scope:[mul8u] from mulu8_sel - (byte) mul8u::a#5 ? phi( mulu8_sel/(byte) mul8u::a#1 ) - (byte) mul8u::b#1 ? phi( mulu8_sel/(byte) mul8u::b#0 ) - (word) mul8u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#1 + (byte) mul8u::a#5 ← phi( mulu8_sel/(byte) mul8u::a#1 ) + (byte) mul8u::b#1 ← phi( mulu8_sel/(byte) mul8u::b#0 ) + (word) mul8u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#1 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 - (word) mul8u::mb#5 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) - (word) mul8u::res#4 ? phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) - (byte) mul8u::a#2 ? phi( mul8u/(byte) mul8u::a#5 mul8u::@4/(byte) mul8u::a#0 ) - (bool~) mul8u::$0 ? (byte) mul8u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#5 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) + (word) mul8u::res#4 ← phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) + (byte) mul8u::a#2 ← phi( mul8u/(byte) mul8u::a#5 mul8u::@4/(byte) mul8u::a#0 ) + (bool~) mul8u::$0 ← (byte) mul8u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul8u::$0) goto mul8u::@2 to:mul8u::@3 mul8u::@2: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#5 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::mb#4 ? phi( mul8u::@1/(word) mul8u::mb#5 ) - (byte) mul8u::a#3 ? phi( mul8u::@1/(byte) mul8u::a#2 ) - (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8u::$3 ? ! (bool~) mul8u::$2 + (word) mul8u::res#5 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::mb#4 ← phi( mul8u::@1/(word) mul8u::mb#5 ) + (byte) mul8u::a#3 ← phi( mul8u::@1/(byte) mul8u::a#2 ) + (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8u::$3 ← ! (bool~) mul8u::$2 if((bool~) mul8u::$3) goto mul8u::@4 to:mul8u::@7 mul8u::@3: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#2 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::return#0 ? (word) mul8u::res#2 + (word) mul8u::res#2 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::return#0 ← (word) mul8u::res#2 to:mul8u::@return mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 - (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) - (word) mul8u::mb#2 ? phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) - (byte) mul8u::a#4 ? phi( mul8u::@2/(byte) mul8u::a#3 mul8u::@7/(byte) mul8u::a#6 ) - (byte~) mul8u::$5 ? (byte) mul8u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) mul8u::a#0 ? (byte~) mul8u::$5 - (word~) mul8u::$6 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul8u::mb#1 ? (word~) mul8u::$6 + (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) + (word) mul8u::mb#2 ← phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) + (byte) mul8u::a#4 ← phi( mul8u::@2/(byte) mul8u::a#3 mul8u::@7/(byte) mul8u::a#6 ) + (byte~) mul8u::$5 ← (byte) mul8u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mul8u::a#0 ← (byte~) mul8u::$5 + (word~) mul8u::$6 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul8u::mb#1 ← (word~) mul8u::$6 to:mul8u::@1 mul8u::@7: scope:[mul8u] from mul8u::@2 - (byte) mul8u::a#6 ? phi( mul8u::@2/(byte) mul8u::a#3 ) - (word) mul8u::mb#3 ? phi( mul8u::@2/(word) mul8u::mb#4 ) - (word) mul8u::res#3 ? phi( mul8u::@2/(word) mul8u::res#5 ) - (word~) mul8u::$4 ? (word) mul8u::res#3 + (word) mul8u::mb#3 - (word) mul8u::res#1 ? (word~) mul8u::$4 + (byte) mul8u::a#6 ← phi( mul8u::@2/(byte) mul8u::a#3 ) + (word) mul8u::mb#3 ← phi( mul8u::@2/(word) mul8u::mb#4 ) + (word) mul8u::res#3 ← phi( mul8u::@2/(word) mul8u::res#5 ) + (word~) mul8u::$4 ← (word) mul8u::res#3 + (word) mul8u::mb#3 + (word) mul8u::res#1 ← (word~) mul8u::$4 to:mul8u::@4 mul8u::@return: scope:[mul8u] from mul8u::@3 - (word) mul8u::return#3 ? phi( mul8u::@3/(word) mul8u::return#0 ) - (word) mul8u::return#1 ? (word) mul8u::return#3 + (word) mul8u::return#3 ← phi( mul8u::@3/(word) mul8u::return#0 ) + (word) mul8u::return#1 ← (word) mul8u::return#3 return to:@return mul16u: scope:[mul16u] from mulu16_sel - (word) mul16u::a#5 ? phi( mulu16_sel/(word) mul16u::a#1 ) - (word) mul16u::b#1 ? phi( mulu16_sel/(word) mul16u::b#0 ) - (dword) mul16u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#1 + (word) mul16u::a#5 ← phi( mulu16_sel/(word) mul16u::a#1 ) + (word) mul16u::b#1 ← phi( mulu16_sel/(word) mul16u::b#0 ) + (dword) mul16u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#1 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@4 - (dword) mul16u::mb#5 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) - (dword) mul16u::res#4 ? phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) - (word) mul16u::a#2 ? phi( mul16u/(word) mul16u::a#5 mul16u::@4/(word) mul16u::a#0 ) - (bool~) mul16u::$0 ? (word) mul16u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#5 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) + (dword) mul16u::res#4 ← phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) + (word) mul16u::a#2 ← phi( mul16u/(word) mul16u::a#5 mul16u::@4/(word) mul16u::a#0 ) + (bool~) mul16u::$0 ← (word) mul16u::a#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul16u::$0) goto mul16u::@2 to:mul16u::@3 mul16u::@2: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#5 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::mb#4 ? phi( mul16u::@1/(dword) mul16u::mb#5 ) - (word) mul16u::a#3 ? phi( mul16u::@1/(word) mul16u::a#2 ) - (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16u::$3 ? ! (bool~) mul16u::$2 + (dword) mul16u::res#5 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::mb#4 ← phi( mul16u::@1/(dword) mul16u::mb#5 ) + (word) mul16u::a#3 ← phi( mul16u::@1/(word) mul16u::a#2 ) + (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16u::$3 ← ! (bool~) mul16u::$2 if((bool~) mul16u::$3) goto mul16u::@4 to:mul16u::@7 mul16u::@3: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#2 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::return#0 ? (dword) mul16u::res#2 + (dword) mul16u::res#2 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::return#0 ← (dword) mul16u::res#2 to:mul16u::@return mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7 - (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) - (dword) mul16u::mb#2 ? phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) - (word) mul16u::a#4 ? phi( mul16u::@2/(word) mul16u::a#3 mul16u::@7/(word) mul16u::a#6 ) - (word~) mul16u::$5 ? (word) mul16u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul16u::a#0 ? (word~) mul16u::$5 - (dword~) mul16u::$6 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (dword) mul16u::mb#1 ? (dword~) mul16u::$6 + (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) + (dword) mul16u::mb#2 ← phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) + (word) mul16u::a#4 ← phi( mul16u::@2/(word) mul16u::a#3 mul16u::@7/(word) mul16u::a#6 ) + (word~) mul16u::$5 ← (word) mul16u::a#4 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul16u::a#0 ← (word~) mul16u::$5 + (dword~) mul16u::$6 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) mul16u::mb#1 ← (dword~) mul16u::$6 to:mul16u::@1 mul16u::@7: scope:[mul16u] from mul16u::@2 - (word) mul16u::a#6 ? phi( mul16u::@2/(word) mul16u::a#3 ) - (dword) mul16u::mb#3 ? phi( mul16u::@2/(dword) mul16u::mb#4 ) - (dword) mul16u::res#3 ? phi( mul16u::@2/(dword) mul16u::res#5 ) - (dword~) mul16u::$4 ? (dword) mul16u::res#3 + (dword) mul16u::mb#3 - (dword) mul16u::res#1 ? (dword~) mul16u::$4 + (word) mul16u::a#6 ← phi( mul16u::@2/(word) mul16u::a#3 ) + (dword) mul16u::mb#3 ← phi( mul16u::@2/(dword) mul16u::mb#4 ) + (dword) mul16u::res#3 ← phi( mul16u::@2/(dword) mul16u::res#5 ) + (dword~) mul16u::$4 ← (dword) mul16u::res#3 + (dword) mul16u::mb#3 + (dword) mul16u::res#1 ← (dword~) mul16u::$4 to:mul16u::@4 mul16u::@return: scope:[mul16u] from mul16u::@3 - (dword) mul16u::return#3 ? phi( mul16u::@3/(dword) mul16u::return#0 ) - (dword) mul16u::return#1 ? (dword) mul16u::return#3 + (dword) mul16u::return#3 ← phi( mul16u::@3/(dword) mul16u::return#0 ) + (dword) mul16u::return#1 ← (dword) mul16u::return#3 return to:@return @13: scope:[] from @6 - (word) rem16u#45 ? phi( @6/(word) rem16u#48 ) - (dword) PI2_u4f28#0 ? (dword/signed dword) $6487ed51 - (dword) PI_u4f28#0 ? (dword/signed dword) $3243f6a9 - (dword) PI_HALF_u4f28#0 ? (dword/signed dword) $1921fb54 - (word) PI2_u4f12#0 ? (word/signed word/dword/signed dword) $6488 - (word) PI_u4f12#0 ? (word/signed word/dword/signed dword) $3244 - (word) PI_HALF_u4f12#0 ? (word/signed word/dword/signed dword) $1922 + (word) rem16u#45 ← phi( @6/(word) rem16u#48 ) + (dword) PI2_u4f28#0 ← (dword/signed dword) $6487ed51 + (dword) PI_u4f28#0 ← (dword/signed dword) $3243f6a9 + (dword) PI_HALF_u4f28#0 ← (dword/signed dword) $1921fb54 + (word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) $6488 + (word) PI_u4f12#0 ← (word/signed word/dword/signed dword) $3244 + (word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) $1922 to:@20 sin16s_gen: scope:[sin16s_gen] from main::@5 - (signed word*) sin16s_gen::sintab#5 ? phi( main::@5/(signed word*) sin16s_gen::sintab#1 ) - (word) rem16u#32 ? phi( main::@5/(word) rem16u#12 ) - (word) sin16s_gen::wavelength#1 ? phi( main::@5/(word) sin16s_gen::wavelength#0 ) - (dword) div32u16u::dividend#0 ? (dword) PI2_u4f28#0 - (word) div32u16u::divisor#0 ? (word) sin16s_gen::wavelength#1 + (signed word*) sin16s_gen::sintab#5 ← phi( main::@5/(signed word*) sin16s_gen::sintab#1 ) + (word) rem16u#32 ← phi( main::@5/(word) rem16u#12 ) + (word) sin16s_gen::wavelength#1 ← phi( main::@5/(word) sin16s_gen::wavelength#0 ) + (dword) div32u16u::dividend#0 ← (dword) PI2_u4f28#0 + (word) div32u16u::divisor#0 ← (word) sin16s_gen::wavelength#1 call div32u16u - (dword) div32u16u::return#2 ? (dword) div32u16u::return#1 + (dword) div32u16u::return#2 ← (dword) div32u16u::return#1 to:sin16s_gen::@3 sin16s_gen::@3: scope:[sin16s_gen] from sin16s_gen - (word) sin16s_gen::wavelength#4 ? phi( sin16s_gen/(word) sin16s_gen::wavelength#1 ) - (signed word*) sin16s_gen::sintab#4 ? phi( sin16s_gen/(signed word*) sin16s_gen::sintab#5 ) - (word) rem16u#22 ? phi( sin16s_gen/(word) rem16u#7 ) - (dword) div32u16u::return#4 ? phi( sin16s_gen/(dword) div32u16u::return#2 ) - (dword~) sin16s_gen::$0 ? (dword) div32u16u::return#4 - (word) rem16u#8 ? (word) rem16u#22 - (dword) sin16s_gen::step#0 ? (dword~) sin16s_gen::$0 - (dword) sin16s_gen::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin16s_gen::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen::wavelength#4 ← phi( sin16s_gen/(word) sin16s_gen::wavelength#1 ) + (signed word*) sin16s_gen::sintab#4 ← phi( sin16s_gen/(signed word*) sin16s_gen::sintab#5 ) + (word) rem16u#22 ← phi( sin16s_gen/(word) rem16u#7 ) + (dword) div32u16u::return#4 ← phi( sin16s_gen/(dword) div32u16u::return#2 ) + (dword~) sin16s_gen::$0 ← (dword) div32u16u::return#4 + (word) rem16u#8 ← (word) rem16u#22 + (dword) sin16s_gen::step#0 ← (dword~) sin16s_gen::$0 + (dword) sin16s_gen::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin16s_gen::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin16s_gen::@1 sin16s_gen::@1: scope:[sin16s_gen] from sin16s_gen::@3 sin16s_gen::@4 - (word) rem16u#39 ? phi( sin16s_gen::@3/(word) rem16u#8 sin16s_gen::@4/(word) rem16u#33 ) - (word) sin16s_gen::wavelength#3 ? phi( sin16s_gen::@3/(word) sin16s_gen::wavelength#4 sin16s_gen::@4/(word) sin16s_gen::wavelength#2 ) - (word) sin16s_gen::i#3 ? phi( sin16s_gen::@3/(word) sin16s_gen::i#0 sin16s_gen::@4/(word) sin16s_gen::i#1 ) - (dword) sin16s_gen::step#2 ? phi( sin16s_gen::@3/(dword) sin16s_gen::step#0 sin16s_gen::@4/(dword) sin16s_gen::step#1 ) - (signed word*) sin16s_gen::sintab#3 ? phi( sin16s_gen::@3/(signed word*) sin16s_gen::sintab#4 sin16s_gen::@4/(signed word*) sin16s_gen::sintab#0 ) - (dword) sin16s_gen::x#2 ? phi( sin16s_gen::@3/(dword) sin16s_gen::x#0 sin16s_gen::@4/(dword) sin16s_gen::x#1 ) - (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 + (word) rem16u#39 ← phi( sin16s_gen::@3/(word) rem16u#8 sin16s_gen::@4/(word) rem16u#33 ) + (word) sin16s_gen::wavelength#3 ← phi( sin16s_gen::@3/(word) sin16s_gen::wavelength#4 sin16s_gen::@4/(word) sin16s_gen::wavelength#2 ) + (word) sin16s_gen::i#3 ← phi( sin16s_gen::@3/(word) sin16s_gen::i#0 sin16s_gen::@4/(word) sin16s_gen::i#1 ) + (dword) sin16s_gen::step#2 ← phi( sin16s_gen::@3/(dword) sin16s_gen::step#0 sin16s_gen::@4/(dword) sin16s_gen::step#1 ) + (signed word*) sin16s_gen::sintab#3 ← phi( sin16s_gen::@3/(signed word*) sin16s_gen::sintab#4 sin16s_gen::@4/(signed word*) sin16s_gen::sintab#0 ) + (dword) sin16s_gen::x#2 ← phi( sin16s_gen::@3/(dword) sin16s_gen::x#0 sin16s_gen::@4/(dword) sin16s_gen::x#1 ) + (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 call sin16s - (signed word) sin16s::return#0 ? (signed word) sin16s::return#2 + (signed word) sin16s::return#0 ← (signed word) sin16s::return#2 to:sin16s_gen::@4 sin16s_gen::@4: scope:[sin16s_gen] from sin16s_gen::@1 - (word) rem16u#33 ? phi( sin16s_gen::@1/(word) rem16u#39 ) - (word) sin16s_gen::wavelength#2 ? phi( sin16s_gen::@1/(word) sin16s_gen::wavelength#3 ) - (word) sin16s_gen::i#2 ? phi( sin16s_gen::@1/(word) sin16s_gen::i#3 ) - (dword) sin16s_gen::step#1 ? phi( sin16s_gen::@1/(dword) sin16s_gen::step#2 ) - (dword) sin16s_gen::x#3 ? phi( sin16s_gen::@1/(dword) sin16s_gen::x#2 ) - (signed word*) sin16s_gen::sintab#2 ? phi( sin16s_gen::@1/(signed word*) sin16s_gen::sintab#3 ) - (signed word) sin16s::return#3 ? phi( sin16s_gen::@1/(signed word) sin16s::return#0 ) - (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#3 - *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 - (signed word*~) sin16s_gen::$2 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word*) sin16s_gen::sintab#0 ? (signed word*~) sin16s_gen::$2 - (dword~) sin16s_gen::$3 ? (dword) sin16s_gen::x#3 + (dword) sin16s_gen::step#1 - (dword) sin16s_gen::x#1 ? (dword~) sin16s_gen::$3 - (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 - (bool~) sin16s_gen::$4 ? (word) sin16s_gen::i#1 < (word) sin16s_gen::wavelength#2 + (word) rem16u#33 ← phi( sin16s_gen::@1/(word) rem16u#39 ) + (word) sin16s_gen::wavelength#2 ← phi( sin16s_gen::@1/(word) sin16s_gen::wavelength#3 ) + (word) sin16s_gen::i#2 ← phi( sin16s_gen::@1/(word) sin16s_gen::i#3 ) + (dword) sin16s_gen::step#1 ← phi( sin16s_gen::@1/(dword) sin16s_gen::step#2 ) + (dword) sin16s_gen::x#3 ← phi( sin16s_gen::@1/(dword) sin16s_gen::x#2 ) + (signed word*) sin16s_gen::sintab#2 ← phi( sin16s_gen::@1/(signed word*) sin16s_gen::sintab#3 ) + (signed word) sin16s::return#3 ← phi( sin16s_gen::@1/(signed word) sin16s::return#0 ) + (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#3 + *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 + (signed word*~) sin16s_gen::$2 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word*) sin16s_gen::sintab#0 ← (signed word*~) sin16s_gen::$2 + (dword~) sin16s_gen::$3 ← (dword) sin16s_gen::x#3 + (dword) sin16s_gen::step#1 + (dword) sin16s_gen::x#1 ← (dword~) sin16s_gen::$3 + (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 + (bool~) sin16s_gen::$4 ← (word) sin16s_gen::i#1 < (word) sin16s_gen::wavelength#2 if((bool~) sin16s_gen::$4) goto sin16s_gen::@1 to:sin16s_gen::@return sin16s_gen::@return: scope:[sin16s_gen] from sin16s_gen::@4 - (word) rem16u#23 ? phi( sin16s_gen::@4/(word) rem16u#33 ) - (word) rem16u#9 ? (word) rem16u#23 + (word) rem16u#23 ← phi( sin16s_gen::@4/(word) rem16u#33 ) + (word) rem16u#9 ← (word) rem16u#23 return to:@return sin8s_gen: scope:[sin8s_gen] from main - (signed byte*) sin8s_gen::sintab#5 ? phi( main/(signed byte*) sin8s_gen::sintab#1 ) - (word) rem16u#34 ? phi( main/(word) rem16u#36 ) - (word) sin8s_gen::wavelength#1 ? phi( main/(word) sin8s_gen::wavelength#0 ) - (word) div16u::dividend#0 ? (word) PI2_u4f12#0 - (word) div16u::divisor#0 ? (word) sin8s_gen::wavelength#1 + (signed byte*) sin8s_gen::sintab#5 ← phi( main/(signed byte*) sin8s_gen::sintab#1 ) + (word) rem16u#34 ← phi( main/(word) rem16u#36 ) + (word) sin8s_gen::wavelength#1 ← phi( main/(word) sin8s_gen::wavelength#0 ) + (word) div16u::dividend#0 ← (word) PI2_u4f12#0 + (word) div16u::divisor#0 ← (word) sin8s_gen::wavelength#1 call div16u - (word) div16u::return#2 ? (word) div16u::return#1 + (word) div16u::return#2 ← (word) div16u::return#1 to:sin8s_gen::@3 sin8s_gen::@3: scope:[sin8s_gen] from sin8s_gen - (word) sin8s_gen::wavelength#4 ? phi( sin8s_gen/(word) sin8s_gen::wavelength#1 ) - (signed byte*) sin8s_gen::sintab#4 ? phi( sin8s_gen/(signed byte*) sin8s_gen::sintab#5 ) - (word) rem16u#24 ? phi( sin8s_gen/(word) rem16u#4 ) - (word) div16u::return#4 ? phi( sin8s_gen/(word) div16u::return#2 ) - (word~) sin8s_gen::$0 ? (word) div16u::return#4 - (word) rem16u#10 ? (word) rem16u#24 - (word) sin8s_gen::step#0 ? (word~) sin8s_gen::$0 - (word) sin8s_gen::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin8s_gen::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin8s_gen::wavelength#4 ← phi( sin8s_gen/(word) sin8s_gen::wavelength#1 ) + (signed byte*) sin8s_gen::sintab#4 ← phi( sin8s_gen/(signed byte*) sin8s_gen::sintab#5 ) + (word) rem16u#24 ← phi( sin8s_gen/(word) rem16u#4 ) + (word) div16u::return#4 ← phi( sin8s_gen/(word) div16u::return#2 ) + (word~) sin8s_gen::$0 ← (word) div16u::return#4 + (word) rem16u#10 ← (word) rem16u#24 + (word) sin8s_gen::step#0 ← (word~) sin8s_gen::$0 + (word) sin8s_gen::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin8s_gen::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin8s_gen::@1 sin8s_gen::@1: scope:[sin8s_gen] from sin8s_gen::@3 sin8s_gen::@4 - (word) rem16u#40 ? phi( sin8s_gen::@3/(word) rem16u#10 sin8s_gen::@4/(word) rem16u#35 ) - (word) sin8s_gen::wavelength#3 ? phi( sin8s_gen::@3/(word) sin8s_gen::wavelength#4 sin8s_gen::@4/(word) sin8s_gen::wavelength#2 ) - (word) sin8s_gen::i#3 ? phi( sin8s_gen::@3/(word) sin8s_gen::i#0 sin8s_gen::@4/(word) sin8s_gen::i#1 ) - (word) sin8s_gen::step#2 ? phi( sin8s_gen::@3/(word) sin8s_gen::step#0 sin8s_gen::@4/(word) sin8s_gen::step#1 ) - (signed byte*) sin8s_gen::sintab#3 ? phi( sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#4 sin8s_gen::@4/(signed byte*) sin8s_gen::sintab#0 ) - (word) sin8s_gen::x#2 ? phi( sin8s_gen::@3/(word) sin8s_gen::x#0 sin8s_gen::@4/(word) sin8s_gen::x#1 ) - (word) sin8s::x#0 ? (word) sin8s_gen::x#2 + (word) rem16u#40 ← phi( sin8s_gen::@3/(word) rem16u#10 sin8s_gen::@4/(word) rem16u#35 ) + (word) sin8s_gen::wavelength#3 ← phi( sin8s_gen::@3/(word) sin8s_gen::wavelength#4 sin8s_gen::@4/(word) sin8s_gen::wavelength#2 ) + (word) sin8s_gen::i#3 ← phi( sin8s_gen::@3/(word) sin8s_gen::i#0 sin8s_gen::@4/(word) sin8s_gen::i#1 ) + (word) sin8s_gen::step#2 ← phi( sin8s_gen::@3/(word) sin8s_gen::step#0 sin8s_gen::@4/(word) sin8s_gen::step#1 ) + (signed byte*) sin8s_gen::sintab#3 ← phi( sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#4 sin8s_gen::@4/(signed byte*) sin8s_gen::sintab#0 ) + (word) sin8s_gen::x#2 ← phi( sin8s_gen::@3/(word) sin8s_gen::x#0 sin8s_gen::@4/(word) sin8s_gen::x#1 ) + (word) sin8s::x#0 ← (word) sin8s_gen::x#2 call sin8s - (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#2 + (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#2 to:sin8s_gen::@4 sin8s_gen::@4: scope:[sin8s_gen] from sin8s_gen::@1 - (word) rem16u#35 ? phi( sin8s_gen::@1/(word) rem16u#40 ) - (word) sin8s_gen::wavelength#2 ? phi( sin8s_gen::@1/(word) sin8s_gen::wavelength#3 ) - (word) sin8s_gen::i#2 ? phi( sin8s_gen::@1/(word) sin8s_gen::i#3 ) - (word) sin8s_gen::step#1 ? phi( sin8s_gen::@1/(word) sin8s_gen::step#2 ) - (word) sin8s_gen::x#3 ? phi( sin8s_gen::@1/(word) sin8s_gen::x#2 ) - (signed byte*) sin8s_gen::sintab#2 ? phi( sin8s_gen::@1/(signed byte*) sin8s_gen::sintab#3 ) - (signed byte) sin8s::return#3 ? phi( sin8s_gen::@1/(signed byte) sin8s::return#0 ) - (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#3 - *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 - (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 - (word~) sin8s_gen::$2 ? (word) sin8s_gen::x#3 + (word) sin8s_gen::step#1 - (word) sin8s_gen::x#1 ? (word~) sin8s_gen::$2 - (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 - (bool~) sin8s_gen::$3 ? (word) sin8s_gen::i#1 < (word) sin8s_gen::wavelength#2 + (word) rem16u#35 ← phi( sin8s_gen::@1/(word) rem16u#40 ) + (word) sin8s_gen::wavelength#2 ← phi( sin8s_gen::@1/(word) sin8s_gen::wavelength#3 ) + (word) sin8s_gen::i#2 ← phi( sin8s_gen::@1/(word) sin8s_gen::i#3 ) + (word) sin8s_gen::step#1 ← phi( sin8s_gen::@1/(word) sin8s_gen::step#2 ) + (word) sin8s_gen::x#3 ← phi( sin8s_gen::@1/(word) sin8s_gen::x#2 ) + (signed byte*) sin8s_gen::sintab#2 ← phi( sin8s_gen::@1/(signed byte*) sin8s_gen::sintab#3 ) + (signed byte) sin8s::return#3 ← phi( sin8s_gen::@1/(signed byte) sin8s::return#0 ) + (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#3 + *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 + (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 + (word~) sin8s_gen::$2 ← (word) sin8s_gen::x#3 + (word) sin8s_gen::step#1 + (word) sin8s_gen::x#1 ← (word~) sin8s_gen::$2 + (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 + (bool~) sin8s_gen::$3 ← (word) sin8s_gen::i#1 < (word) sin8s_gen::wavelength#2 if((bool~) sin8s_gen::$3) goto sin8s_gen::@1 to:sin8s_gen::@return sin8s_gen::@return: scope:[sin8s_gen] from sin8s_gen::@4 - (word) rem16u#25 ? phi( sin8s_gen::@4/(word) rem16u#35 ) - (word) rem16u#11 ? (word) rem16u#25 + (word) rem16u#25 ← phi( sin8s_gen::@4/(word) rem16u#35 ) + (word) rem16u#11 ← (word) rem16u#25 return to:@return sin16s: scope:[sin16s] from sin16s_gen::@1 - (dword) sin16s::x#3 ? phi( sin16s_gen::@1/(dword) sin16s::x#0 ) - (byte) sin16s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 - (bool~) sin16s::$1 ? ! (bool~) sin16s::$0 + (dword) sin16s::x#3 ← phi( sin16s_gen::@1/(dword) sin16s::x#0 ) + (byte) sin16s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 + (bool~) sin16s::$1 ← ! (bool~) sin16s::$0 if((bool~) sin16s::$1) goto sin16s::@1 to:sin16s::@4 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - (byte) sin16s::isUpper#8 ? phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) - (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) - (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 - (bool~) sin16s::$3 ? ! (bool~) sin16s::$2 + (byte) sin16s::isUpper#8 ← phi( sin16s/(byte) sin16s::isUpper#0 sin16s::@4/(byte) sin16s::isUpper#1 ) + (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#3 sin16s::@4/(dword) sin16s::x#1 ) + (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 + (bool~) sin16s::$3 ← ! (bool~) sin16s::$2 if((bool~) sin16s::$3) goto sin16s::@2 to:sin16s::@5 sin16s::@4: scope:[sin16s] from sin16s - (dword) sin16s::x#5 ? phi( sin16s/(dword) sin16s::x#3 ) - (dword~) sin16s::$18 ? (dword) sin16s::x#5 - (dword) PI_u4f28#0 - (dword) sin16s::x#1 ? (dword~) sin16s::$18 - (byte) sin16s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) sin16s::x#5 ← phi( sin16s/(dword) sin16s::x#3 ) + (dword~) sin16s::$18 ← (dword) sin16s::x#5 - (dword) PI_u4f28#0 + (dword) sin16s::x#1 ← (dword~) sin16s::$18 + (byte) sin16s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin16s::@1 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - (byte) sin16s::isUpper#7 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) - (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (word~) sin16s::$5 ? > (dword~) sin16s::$4 - (word) sin16s::x1#0 ? (word~) sin16s::$5 - (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 - (byte) mulu16_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#7 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 sin16s::@5/(byte) sin16s::isUpper#9 ) + (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (word~) sin16s::$5 ← > (dword~) sin16s::$4 + (word) sin16s::x1#0 ← (word~) sin16s::$5 + (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 + (byte) mulu16_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#6 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@2 - (byte) sin16s::isUpper#6 ? phi( sin16s::@2/(byte) sin16s::isUpper#7 ) - (word) sin16s::x1#1 ? phi( sin16s::@2/(word) sin16s::x1#0 ) - (word) mulu16_sel::return#7 ? phi( sin16s::@2/(word) mulu16_sel::return#0 ) - (word~) sin16s::$6 ? (word) mulu16_sel::return#7 - (word) sin16s::x2#0 ? (word~) sin16s::$6 - (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - (word) mulu16_sel::v2#1 ? (word) sin16s::x1#1 - (byte) mulu16_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#6 ← phi( sin16s::@2/(byte) sin16s::isUpper#7 ) + (word) sin16s::x1#1 ← phi( sin16s::@2/(word) sin16s::x1#0 ) + (word) mulu16_sel::return#7 ← phi( sin16s::@2/(word) mulu16_sel::return#0 ) + (word~) sin16s::$6 ← (word) mulu16_sel::return#7 + (word) sin16s::x2#0 ← (word~) sin16s::$6 + (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + (word) mulu16_sel::v2#1 ← (word) sin16s::x1#1 + (byte) mulu16_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#6 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - (byte) sin16s::isUpper#5 ? phi( sin16s::@8/(byte) sin16s::isUpper#6 ) - (word) sin16s::x1#4 ? phi( sin16s::@8/(word) sin16s::x1#1 ) - (word) mulu16_sel::return#8 ? phi( sin16s::@8/(word) mulu16_sel::return#1 ) - (word~) sin16s::$7 ? (word) mulu16_sel::return#8 - (word) sin16s::x3#0 ? (word~) sin16s::$7 - (word/signed word/dword/signed dword~) sin16s::$8 ? (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 - (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 - (word) mulu16_sel::v2#2 ? (word/signed word/dword/signed dword~) sin16s::$8 - (byte) mulu16_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin16s::isUpper#5 ← phi( sin16s::@8/(byte) sin16s::isUpper#6 ) + (word) sin16s::x1#4 ← phi( sin16s::@8/(word) sin16s::x1#1 ) + (word) mulu16_sel::return#8 ← phi( sin16s::@8/(word) mulu16_sel::return#1 ) + (word~) sin16s::$7 ← (word) mulu16_sel::return#8 + (word) sin16s::x3#0 ← (word~) sin16s::$7 + (word/signed word/dword/signed dword~) sin16s::$8 ← (dword/signed dword) $10000 / (byte/signed byte/word/signed word/dword/signed dword) 6 + (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 + (word) mulu16_sel::v2#2 ← (word/signed word/dword/signed dword~) sin16s::$8 + (byte) mulu16_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu16_sel - (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#6 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - (byte) sin16s::isUpper#4 ? phi( sin16s::@9/(byte) sin16s::isUpper#5 ) - (word) sin16s::x3#1 ? phi( sin16s::@9/(word) sin16s::x3#0 ) - (word) sin16s::x1#2 ? phi( sin16s::@9/(word) sin16s::x1#4 ) - (word) mulu16_sel::return#9 ? phi( sin16s::@9/(word) mulu16_sel::return#2 ) - (word~) sin16s::$9 ? (word) mulu16_sel::return#9 - (word) sin16s::x3_6#0 ? (word~) sin16s::$9 - (word~) sin16s::$10 ? (word) sin16s::x1#2 - (word) sin16s::x3_6#0 - (word) sin16s::usinx#0 ? (word~) sin16s::$10 - (word) mulu16_sel::v1#3 ? (word) sin16s::x3#1 - (word) mulu16_sel::v2#3 ? (word) sin16s::x1#2 - (byte) mulu16_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#4 ← phi( sin16s::@9/(byte) sin16s::isUpper#5 ) + (word) sin16s::x3#1 ← phi( sin16s::@9/(word) sin16s::x3#0 ) + (word) sin16s::x1#2 ← phi( sin16s::@9/(word) sin16s::x1#4 ) + (word) mulu16_sel::return#9 ← phi( sin16s::@9/(word) mulu16_sel::return#2 ) + (word~) sin16s::$9 ← (word) mulu16_sel::return#9 + (word) sin16s::x3_6#0 ← (word~) sin16s::$9 + (word~) sin16s::$10 ← (word) sin16s::x1#2 - (word) sin16s::x3_6#0 + (word) sin16s::usinx#0 ← (word~) sin16s::$10 + (word) mulu16_sel::v1#3 ← (word) sin16s::x3#1 + (word) mulu16_sel::v2#3 ← (word) sin16s::x1#2 + (byte) mulu16_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#3 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#3 ← (word) mulu16_sel::return#6 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - (byte) sin16s::isUpper#3 ? phi( sin16s::@10/(byte) sin16s::isUpper#4 ) - (word) sin16s::usinx#4 ? phi( sin16s::@10/(word) sin16s::usinx#0 ) - (word) sin16s::x1#3 ? phi( sin16s::@10/(word) sin16s::x1#2 ) - (word) mulu16_sel::return#10 ? phi( sin16s::@10/(word) mulu16_sel::return#3 ) - (word~) sin16s::$11 ? (word) mulu16_sel::return#10 - (word) sin16s::x4#0 ? (word~) sin16s::$11 - (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - (word) mulu16_sel::v2#4 ? (word) sin16s::x1#3 - (byte) mulu16_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin16s::isUpper#3 ← phi( sin16s::@10/(byte) sin16s::isUpper#4 ) + (word) sin16s::usinx#4 ← phi( sin16s::@10/(word) sin16s::usinx#0 ) + (word) sin16s::x1#3 ← phi( sin16s::@10/(word) sin16s::x1#2 ) + (word) mulu16_sel::return#10 ← phi( sin16s::@10/(word) mulu16_sel::return#3 ) + (word~) sin16s::$11 ← (word) mulu16_sel::return#10 + (word) sin16s::x4#0 ← (word~) sin16s::$11 + (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + (word) mulu16_sel::v2#4 ← (word) sin16s::x1#3 + (byte) mulu16_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu16_sel - (word) mulu16_sel::return#4 ? (word) mulu16_sel::return#6 + (word) mulu16_sel::return#4 ← (word) mulu16_sel::return#6 to:sin16s::@12 sin16s::@12: scope:[sin16s] from sin16s::@11 - (byte) sin16s::isUpper#2 ? phi( sin16s::@11/(byte) sin16s::isUpper#3 ) - (word) sin16s::usinx#2 ? phi( sin16s::@11/(word) sin16s::usinx#4 ) - (word) mulu16_sel::return#11 ? phi( sin16s::@11/(word) mulu16_sel::return#4 ) - (word~) sin16s::$12 ? (word) mulu16_sel::return#11 - (word) sin16s::x5#0 ? (word~) sin16s::$12 - (word~) sin16s::$13 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) sin16s::x5_128#0 ? (word~) sin16s::$13 - (word~) sin16s::$14 ? (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 - (word) sin16s::usinx#1 ? (word~) sin16s::$14 - (signed word~) sin16s::$15 ? ((signed word)) (word) sin16s::usinx#1 - (signed word) sin16s::sinx#0 ? (signed word~) sin16s::$15 - (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin16s::$17 ? ! (bool~) sin16s::$16 + (byte) sin16s::isUpper#2 ← phi( sin16s::@11/(byte) sin16s::isUpper#3 ) + (word) sin16s::usinx#2 ← phi( sin16s::@11/(word) sin16s::usinx#4 ) + (word) mulu16_sel::return#11 ← phi( sin16s::@11/(word) mulu16_sel::return#4 ) + (word~) sin16s::$12 ← (word) mulu16_sel::return#11 + (word) sin16s::x5#0 ← (word~) sin16s::$12 + (word~) sin16s::$13 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) sin16s::x5_128#0 ← (word~) sin16s::$13 + (word~) sin16s::$14 ← (word) sin16s::usinx#2 + (word) sin16s::x5_128#0 + (word) sin16s::usinx#1 ← (word~) sin16s::$14 + (signed word~) sin16s::$15 ← ((signed word)) (word) sin16s::usinx#1 + (signed word) sin16s::sinx#0 ← (signed word~) sin16s::$15 + (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin16s::$17 ← ! (bool~) sin16s::$16 if((bool~) sin16s::$17) goto sin16s::@3 to:sin16s::@6 sin16s::@5: scope:[sin16s] from sin16s::@1 - (byte) sin16s::isUpper#9 ? phi( sin16s::@1/(byte) sin16s::isUpper#8 ) - (dword) sin16s::x#7 ? phi( sin16s::@1/(dword) sin16s::x#4 ) - (dword~) sin16s::$19 ? (dword) PI_u4f28#0 - (dword) sin16s::x#7 - (dword) sin16s::x#2 ? (dword~) sin16s::$19 + (byte) sin16s::isUpper#9 ← phi( sin16s::@1/(byte) sin16s::isUpper#8 ) + (dword) sin16s::x#7 ← phi( sin16s::@1/(dword) sin16s::x#4 ) + (dword~) sin16s::$19 ← (dword) PI_u4f28#0 - (dword) sin16s::x#7 + (dword) sin16s::x#2 ← (dword~) sin16s::$19 to:sin16s::@2 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - (signed word) sin16s::sinx#2 ? phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) - (signed word) sin16s::return#1 ? (signed word) sin16s::sinx#2 + (signed word) sin16s::sinx#2 ← phi( sin16s::@12/(signed word) sin16s::sinx#0 sin16s::@6/(signed word) sin16s::sinx#1 ) + (signed word) sin16s::return#1 ← (signed word) sin16s::sinx#2 to:sin16s::@return sin16s::@6: scope:[sin16s] from sin16s::@12 - (word) sin16s::usinx#3 ? phi( sin16s::@12/(word) sin16s::usinx#1 ) - (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#3 - (signed word~) sin16s::$21 ? - (signed word~) sin16s::$20 - (signed word) sin16s::sinx#1 ? (signed word~) sin16s::$21 + (word) sin16s::usinx#3 ← phi( sin16s::@12/(word) sin16s::usinx#1 ) + (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#3 + (signed word~) sin16s::$21 ← - (signed word~) sin16s::$20 + (signed word) sin16s::sinx#1 ← (signed word~) sin16s::$21 to:sin16s::@3 sin16s::@return: scope:[sin16s] from sin16s::@3 - (signed word) sin16s::return#4 ? phi( sin16s::@3/(signed word) sin16s::return#1 ) - (signed word) sin16s::return#2 ? (signed word) sin16s::return#4 + (signed word) sin16s::return#4 ← phi( sin16s::@3/(signed word) sin16s::return#1 ) + (signed word) sin16s::return#2 ← (signed word) sin16s::return#4 return to:@return sin8s: scope:[sin8s] from sin8s_gen::@1 - (word) sin8s::x#3 ? phi( sin8s_gen::@1/(word) sin8s::x#0 ) - (byte) sin8s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin8s::$0 ? (word) sin8s::x#3 >= (word) PI_u4f12#0 - (bool~) sin8s::$1 ? ! (bool~) sin8s::$0 + (word) sin8s::x#3 ← phi( sin8s_gen::@1/(word) sin8s::x#0 ) + (byte) sin8s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin8s::$0 ← (word) sin8s::x#3 >= (word) PI_u4f12#0 + (bool~) sin8s::$1 ← ! (bool~) sin8s::$0 if((bool~) sin8s::$1) goto sin8s::@1 to:sin8s::@5 sin8s::@1: scope:[sin8s] from sin8s sin8s::@5 - (byte) sin8s::isUpper#10 ? phi( sin8s/(byte) sin8s::isUpper#0 sin8s::@5/(byte) sin8s::isUpper#1 ) - (word) sin8s::x#4 ? phi( sin8s/(word) sin8s::x#3 sin8s::@5/(word) sin8s::x#1 ) - (bool~) sin8s::$2 ? (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 - (bool~) sin8s::$3 ? ! (bool~) sin8s::$2 + (byte) sin8s::isUpper#10 ← phi( sin8s/(byte) sin8s::isUpper#0 sin8s::@5/(byte) sin8s::isUpper#1 ) + (word) sin8s::x#4 ← phi( sin8s/(word) sin8s::x#3 sin8s::@5/(word) sin8s::x#1 ) + (bool~) sin8s::$2 ← (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 + (bool~) sin8s::$3 ← ! (bool~) sin8s::$2 if((bool~) sin8s::$3) goto sin8s::@2 to:sin8s::@6 sin8s::@5: scope:[sin8s] from sin8s - (word) sin8s::x#5 ? phi( sin8s/(word) sin8s::x#3 ) - (word~) sin8s::$19 ? (word) sin8s::x#5 - (word) PI_u4f12#0 - (word) sin8s::x#1 ? (word~) sin8s::$19 - (byte) sin8s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) sin8s::x#5 ← phi( sin8s/(word) sin8s::x#3 ) + (word~) sin8s::$19 ← (word) sin8s::x#5 - (word) PI_u4f12#0 + (word) sin8s::x#1 ← (word~) sin8s::$19 + (byte) sin8s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin8s::@1 sin8s::@2: scope:[sin8s] from sin8s::@1 sin8s::@6 - (byte) sin8s::isUpper#9 ? phi( sin8s::@1/(byte) sin8s::isUpper#10 sin8s::@6/(byte) sin8s::isUpper#11 ) - (word) sin8s::x#6 ? phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) - (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte~) sin8s::$5 ? > (word~) sin8s::$4 - (byte) sin8s::x1#0 ? (byte~) sin8s::$5 - (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 - (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 - (byte) mulu8_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#9 ← phi( sin8s::@1/(byte) sin8s::isUpper#10 sin8s::@6/(byte) sin8s::isUpper#11 ) + (word) sin8s::x#6 ← phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) + (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte~) sin8s::$5 ← > (word~) sin8s::$4 + (byte) sin8s::x1#0 ← (byte~) sin8s::$5 + (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 + (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 + (byte) mulu8_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#6 to:sin8s::@10 sin8s::@10: scope:[sin8s] from sin8s::@2 - (byte) sin8s::isUpper#8 ? phi( sin8s::@2/(byte) sin8s::isUpper#9 ) - (byte) sin8s::x1#1 ? phi( sin8s::@2/(byte) sin8s::x1#0 ) - (byte) mulu8_sel::return#7 ? phi( sin8s::@2/(byte) mulu8_sel::return#0 ) - (byte~) sin8s::$6 ? (byte) mulu8_sel::return#7 - (byte) sin8s::x2#0 ? (byte~) sin8s::$6 - (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 - (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#1 - (byte) mulu8_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin8s::isUpper#8 ← phi( sin8s::@2/(byte) sin8s::isUpper#9 ) + (byte) sin8s::x1#1 ← phi( sin8s::@2/(byte) sin8s::x1#0 ) + (byte) mulu8_sel::return#7 ← phi( sin8s::@2/(byte) mulu8_sel::return#0 ) + (byte~) sin8s::$6 ← (byte) mulu8_sel::return#7 + (byte) sin8s::x2#0 ← (byte~) sin8s::$6 + (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 + (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#1 + (byte) mulu8_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu8_sel - (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#6 to:sin8s::@11 sin8s::@11: scope:[sin8s] from sin8s::@10 - (byte) sin8s::isUpper#7 ? phi( sin8s::@10/(byte) sin8s::isUpper#8 ) - (byte) sin8s::x1#4 ? phi( sin8s::@10/(byte) sin8s::x1#1 ) - (byte) mulu8_sel::return#8 ? phi( sin8s::@10/(byte) mulu8_sel::return#1 ) - (byte~) sin8s::$7 ? (byte) mulu8_sel::return#8 - (byte) sin8s::x3#0 ? (byte~) sin8s::$7 - (byte) sin8s::DIV_6#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2b - (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 - (byte) mulu8_sel::v2#2 ? (byte) sin8s::DIV_6#0 - (byte) mulu8_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin8s::isUpper#7 ← phi( sin8s::@10/(byte) sin8s::isUpper#8 ) + (byte) sin8s::x1#4 ← phi( sin8s::@10/(byte) sin8s::x1#1 ) + (byte) mulu8_sel::return#8 ← phi( sin8s::@10/(byte) mulu8_sel::return#1 ) + (byte~) sin8s::$7 ← (byte) mulu8_sel::return#8 + (byte) sin8s::x3#0 ← (byte~) sin8s::$7 + (byte) sin8s::DIV_6#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2b + (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 + (byte) mulu8_sel::v2#2 ← (byte) sin8s::DIV_6#0 + (byte) mulu8_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu8_sel - (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#6 to:sin8s::@12 sin8s::@12: scope:[sin8s] from sin8s::@11 - (byte) sin8s::isUpper#6 ? phi( sin8s::@11/(byte) sin8s::isUpper#7 ) - (byte) sin8s::x3#1 ? phi( sin8s::@11/(byte) sin8s::x3#0 ) - (byte) sin8s::x1#2 ? phi( sin8s::@11/(byte) sin8s::x1#4 ) - (byte) mulu8_sel::return#9 ? phi( sin8s::@11/(byte) mulu8_sel::return#2 ) - (byte~) sin8s::$8 ? (byte) mulu8_sel::return#9 - (byte) sin8s::x3_6#0 ? (byte~) sin8s::$8 - (byte~) sin8s::$9 ? (byte) sin8s::x1#2 - (byte) sin8s::x3_6#0 - (byte) sin8s::usinx#0 ? (byte~) sin8s::$9 - (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#1 - (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#2 - (byte) mulu8_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#6 ← phi( sin8s::@11/(byte) sin8s::isUpper#7 ) + (byte) sin8s::x3#1 ← phi( sin8s::@11/(byte) sin8s::x3#0 ) + (byte) sin8s::x1#2 ← phi( sin8s::@11/(byte) sin8s::x1#4 ) + (byte) mulu8_sel::return#9 ← phi( sin8s::@11/(byte) mulu8_sel::return#2 ) + (byte~) sin8s::$8 ← (byte) mulu8_sel::return#9 + (byte) sin8s::x3_6#0 ← (byte~) sin8s::$8 + (byte~) sin8s::$9 ← (byte) sin8s::x1#2 - (byte) sin8s::x3_6#0 + (byte) sin8s::usinx#0 ← (byte~) sin8s::$9 + (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#1 + (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#2 + (byte) mulu8_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#3 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#3 ← (byte) mulu8_sel::return#6 to:sin8s::@13 sin8s::@13: scope:[sin8s] from sin8s::@12 - (byte) sin8s::isUpper#5 ? phi( sin8s::@12/(byte) sin8s::isUpper#6 ) - (byte) sin8s::usinx#7 ? phi( sin8s::@12/(byte) sin8s::usinx#0 ) - (byte) sin8s::x1#3 ? phi( sin8s::@12/(byte) sin8s::x1#2 ) - (byte) mulu8_sel::return#10 ? phi( sin8s::@12/(byte) mulu8_sel::return#3 ) - (byte~) sin8s::$10 ? (byte) mulu8_sel::return#10 - (byte) sin8s::x4#0 ? (byte~) sin8s::$10 - (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 - (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#3 - (byte) mulu8_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#5 ← phi( sin8s::@12/(byte) sin8s::isUpper#6 ) + (byte) sin8s::usinx#7 ← phi( sin8s::@12/(byte) sin8s::usinx#0 ) + (byte) sin8s::x1#3 ← phi( sin8s::@12/(byte) sin8s::x1#2 ) + (byte) mulu8_sel::return#10 ← phi( sin8s::@12/(byte) mulu8_sel::return#3 ) + (byte~) sin8s::$10 ← (byte) mulu8_sel::return#10 + (byte) sin8s::x4#0 ← (byte~) sin8s::$10 + (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 + (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#3 + (byte) mulu8_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#4 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#4 ← (byte) mulu8_sel::return#6 to:sin8s::@14 sin8s::@14: scope:[sin8s] from sin8s::@13 - (byte) sin8s::isUpper#3 ? phi( sin8s::@13/(byte) sin8s::isUpper#5 ) - (byte) sin8s::usinx#3 ? phi( sin8s::@13/(byte) sin8s::usinx#7 ) - (byte) mulu8_sel::return#11 ? phi( sin8s::@13/(byte) mulu8_sel::return#4 ) - (byte~) sin8s::$11 ? (byte) mulu8_sel::return#11 - (byte) sin8s::x5#0 ? (byte~) sin8s::$11 - (byte~) sin8s::$12 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) sin8s::x5_128#0 ? (byte~) sin8s::$12 - (byte~) sin8s::$13 ? (byte) sin8s::usinx#3 + (byte) sin8s::x5_128#0 - (byte) sin8s::usinx#1 ? (byte~) sin8s::$13 - (bool~) sin8s::$14 ? (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 - (bool~) sin8s::$15 ? ! (bool~) sin8s::$14 + (byte) sin8s::isUpper#3 ← phi( sin8s::@13/(byte) sin8s::isUpper#5 ) + (byte) sin8s::usinx#3 ← phi( sin8s::@13/(byte) sin8s::usinx#7 ) + (byte) mulu8_sel::return#11 ← phi( sin8s::@13/(byte) mulu8_sel::return#4 ) + (byte~) sin8s::$11 ← (byte) mulu8_sel::return#11 + (byte) sin8s::x5#0 ← (byte~) sin8s::$11 + (byte~) sin8s::$12 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) sin8s::x5_128#0 ← (byte~) sin8s::$12 + (byte~) sin8s::$13 ← (byte) sin8s::usinx#3 + (byte) sin8s::x5_128#0 + (byte) sin8s::usinx#1 ← (byte~) sin8s::$13 + (bool~) sin8s::$14 ← (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 + (bool~) sin8s::$15 ← ! (bool~) sin8s::$14 if((bool~) sin8s::$15) goto sin8s::@3 to:sin8s::@7 sin8s::@6: scope:[sin8s] from sin8s::@1 - (byte) sin8s::isUpper#11 ? phi( sin8s::@1/(byte) sin8s::isUpper#10 ) - (word) sin8s::x#7 ? phi( sin8s::@1/(word) sin8s::x#4 ) - (word~) sin8s::$20 ? (word) PI_u4f12#0 - (word) sin8s::x#7 - (word) sin8s::x#2 ? (word~) sin8s::$20 + (byte) sin8s::isUpper#11 ← phi( sin8s::@1/(byte) sin8s::isUpper#10 ) + (word) sin8s::x#7 ← phi( sin8s::@1/(word) sin8s::x#4 ) + (word~) sin8s::$20 ← (word) PI_u4f12#0 - (word) sin8s::x#7 + (word) sin8s::x#2 ← (word~) sin8s::$20 to:sin8s::@2 sin8s::@3: scope:[sin8s] from sin8s::@14 sin8s::@7 - (byte) sin8s::isUpper#2 ? phi( sin8s::@14/(byte) sin8s::isUpper#3 sin8s::@7/(byte) sin8s::isUpper#4 ) - (byte) sin8s::usinx#4 ? phi( sin8s::@14/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) - (signed byte~) sin8s::$16 ? ((signed byte)) (byte) sin8s::usinx#4 - (signed byte) sin8s::sinx#0 ? (signed byte~) sin8s::$16 - (bool~) sin8s::$17 ? (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin8s::$18 ? ! (bool~) sin8s::$17 + (byte) sin8s::isUpper#2 ← phi( sin8s::@14/(byte) sin8s::isUpper#3 sin8s::@7/(byte) sin8s::isUpper#4 ) + (byte) sin8s::usinx#4 ← phi( sin8s::@14/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) + (signed byte~) sin8s::$16 ← ((signed byte)) (byte) sin8s::usinx#4 + (signed byte) sin8s::sinx#0 ← (signed byte~) sin8s::$16 + (bool~) sin8s::$17 ← (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin8s::$18 ← ! (bool~) sin8s::$17 if((bool~) sin8s::$18) goto sin8s::@4 to:sin8s::@8 sin8s::@7: scope:[sin8s] from sin8s::@14 - (byte) sin8s::isUpper#4 ? phi( sin8s::@14/(byte) sin8s::isUpper#3 ) - (byte) sin8s::usinx#5 ? phi( sin8s::@14/(byte) sin8s::usinx#1 ) - (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#5 + (byte) sin8s::isUpper#4 ← phi( sin8s::@14/(byte) sin8s::isUpper#3 ) + (byte) sin8s::usinx#5 ← phi( sin8s::@14/(byte) sin8s::usinx#1 ) + (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#5 to:sin8s::@3 sin8s::@4: scope:[sin8s] from sin8s::@3 sin8s::@8 - (signed byte) sin8s::sinx#2 ? phi( sin8s::@3/(signed byte) sin8s::sinx#0 sin8s::@8/(signed byte) sin8s::sinx#1 ) - (signed byte) sin8s::return#1 ? (signed byte) sin8s::sinx#2 + (signed byte) sin8s::sinx#2 ← phi( sin8s::@3/(signed byte) sin8s::sinx#0 sin8s::@8/(signed byte) sin8s::sinx#1 ) + (signed byte) sin8s::return#1 ← (signed byte) sin8s::sinx#2 to:sin8s::@return sin8s::@8: scope:[sin8s] from sin8s::@3 - (byte) sin8s::usinx#6 ? phi( sin8s::@3/(byte) sin8s::usinx#4 ) - (signed byte~) sin8s::$21 ? ((signed byte)) (byte) sin8s::usinx#6 - (signed byte~) sin8s::$22 ? - (signed byte~) sin8s::$21 - (signed byte) sin8s::sinx#1 ? (signed byte~) sin8s::$22 + (byte) sin8s::usinx#6 ← phi( sin8s::@3/(byte) sin8s::usinx#4 ) + (signed byte~) sin8s::$21 ← ((signed byte)) (byte) sin8s::usinx#6 + (signed byte~) sin8s::$22 ← - (signed byte~) sin8s::$21 + (signed byte) sin8s::sinx#1 ← (signed byte~) sin8s::$22 to:sin8s::@4 sin8s::@return: scope:[sin8s] from sin8s::@4 - (signed byte) sin8s::return#4 ? phi( sin8s::@4/(signed byte) sin8s::return#1 ) - (signed byte) sin8s::return#2 ? (signed byte) sin8s::return#4 + (signed byte) sin8s::return#4 ← phi( sin8s::@4/(signed byte) sin8s::return#1 ) + (signed byte) sin8s::return#2 ← (signed byte) sin8s::return#4 return to:@return mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@11 sin16s::@2 sin16s::@8 sin16s::@9 - (byte) mulu16_sel::select#6 ? phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) - (word) mulu16_sel::v2#5 ? phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) - (word) mulu16_sel::v1#5 ? phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) - (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 - (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + (byte) mulu16_sel::select#6 ← phi( sin16s::@10/(byte) mulu16_sel::select#3 sin16s::@11/(byte) mulu16_sel::select#4 sin16s::@2/(byte) mulu16_sel::select#0 sin16s::@8/(byte) mulu16_sel::select#1 sin16s::@9/(byte) mulu16_sel::select#2 ) + (word) mulu16_sel::v2#5 ← phi( sin16s::@10/(word) mulu16_sel::v2#3 sin16s::@11/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@8/(word) mulu16_sel::v2#1 sin16s::@9/(word) mulu16_sel::v2#2 ) + (word) mulu16_sel::v1#5 ← phi( sin16s::@10/(word) mulu16_sel::v1#3 sin16s::@11/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@8/(word) mulu16_sel::v1#1 sin16s::@9/(word) mulu16_sel::v1#2 ) + (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 + (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 call mul16u - (dword) mul16u::return#2 ? (dword) mul16u::return#1 + (dword) mul16u::return#2 ← (dword) mul16u::return#1 to:mulu16_sel::@2 mulu16_sel::@2: scope:[mulu16_sel] from mulu16_sel - (byte) mulu16_sel::select#5 ? phi( mulu16_sel/(byte) mulu16_sel::select#6 ) - (dword) mul16u::return#4 ? phi( mulu16_sel/(dword) mul16u::return#2 ) - (dword~) mulu16_sel::$0 ? (dword) mul16u::return#4 - (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - (word~) mulu16_sel::$2 ? > (dword~) mulu16_sel::$1 - (word) mulu16_sel::return#5 ? (word~) mulu16_sel::$2 + (byte) mulu16_sel::select#5 ← phi( mulu16_sel/(byte) mulu16_sel::select#6 ) + (dword) mul16u::return#4 ← phi( mulu16_sel/(dword) mul16u::return#2 ) + (dword~) mulu16_sel::$0 ← (dword) mul16u::return#4 + (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + (word~) mulu16_sel::$2 ← > (dword~) mulu16_sel::$1 + (word) mulu16_sel::return#5 ← (word~) mulu16_sel::$2 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@2 - (word) mulu16_sel::return#12 ? phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) - (word) mulu16_sel::return#6 ? (word) mulu16_sel::return#12 + (word) mulu16_sel::return#12 ← phi( mulu16_sel::@2/(word) mulu16_sel::return#5 ) + (word) mulu16_sel::return#6 ← (word) mulu16_sel::return#12 return to:@return mulu8_sel: scope:[mulu8_sel] from sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@13 sin8s::@2 - (byte) mulu8_sel::select#6 ? phi( sin8s::@10/(byte) mulu8_sel::select#1 sin8s::@11/(byte) mulu8_sel::select#2 sin8s::@12/(byte) mulu8_sel::select#3 sin8s::@13/(byte) mulu8_sel::select#4 sin8s::@2/(byte) mulu8_sel::select#0 ) - (byte) mulu8_sel::v2#5 ? phi( sin8s::@10/(byte) mulu8_sel::v2#1 sin8s::@11/(byte) mulu8_sel::v2#2 sin8s::@12/(byte) mulu8_sel::v2#3 sin8s::@13/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) - (byte) mulu8_sel::v1#5 ? phi( sin8s::@10/(byte) mulu8_sel::v1#1 sin8s::@11/(byte) mulu8_sel::v1#2 sin8s::@12/(byte) mulu8_sel::v1#3 sin8s::@13/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) - (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 + (byte) mulu8_sel::select#6 ← phi( sin8s::@10/(byte) mulu8_sel::select#1 sin8s::@11/(byte) mulu8_sel::select#2 sin8s::@12/(byte) mulu8_sel::select#3 sin8s::@13/(byte) mulu8_sel::select#4 sin8s::@2/(byte) mulu8_sel::select#0 ) + (byte) mulu8_sel::v2#5 ← phi( sin8s::@10/(byte) mulu8_sel::v2#1 sin8s::@11/(byte) mulu8_sel::v2#2 sin8s::@12/(byte) mulu8_sel::v2#3 sin8s::@13/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) + (byte) mulu8_sel::v1#5 ← phi( sin8s::@10/(byte) mulu8_sel::v1#1 sin8s::@11/(byte) mulu8_sel::v1#2 sin8s::@12/(byte) mulu8_sel::v1#3 sin8s::@13/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) + (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 call mul8u - (word) mul8u::return#2 ? (word) mul8u::return#1 + (word) mul8u::return#2 ← (word) mul8u::return#1 to:mulu8_sel::@2 mulu8_sel::@2: scope:[mulu8_sel] from mulu8_sel - (byte) mulu8_sel::select#5 ? phi( mulu8_sel/(byte) mulu8_sel::select#6 ) - (word) mul8u::return#4 ? phi( mulu8_sel/(word) mul8u::return#2 ) - (word~) mulu8_sel::$0 ? (word) mul8u::return#4 - (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 - (byte~) mulu8_sel::$2 ? > (word~) mulu8_sel::$1 - (byte) mulu8_sel::return#5 ? (byte~) mulu8_sel::$2 + (byte) mulu8_sel::select#5 ← phi( mulu8_sel/(byte) mulu8_sel::select#6 ) + (word) mul8u::return#4 ← phi( mulu8_sel/(word) mul8u::return#2 ) + (word~) mulu8_sel::$0 ← (word) mul8u::return#4 + (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 + (byte~) mulu8_sel::$2 ← > (word~) mulu8_sel::$1 + (byte) mulu8_sel::return#5 ← (byte~) mulu8_sel::$2 to:mulu8_sel::@return mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@2 - (byte) mulu8_sel::return#12 ? phi( mulu8_sel::@2/(byte) mulu8_sel::return#5 ) - (byte) mulu8_sel::return#6 ? (byte) mulu8_sel::return#12 + (byte) mulu8_sel::return#12 ← phi( mulu8_sel::@2/(byte) mulu8_sel::return#5 ) + (byte) mulu8_sel::return#6 ← (byte) mulu8_sel::return#12 return to:@return @20: scope:[] from @13 - (word) rem16u#43 ? phi( @13/(word) rem16u#45 ) - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (word) rem16u#43 ← phi( @13/(word) rem16u#45 ) + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@32 print_str: scope:[print_str] from main::@3 main::@8 - (byte*) print_char_cursor#47 ? phi( main::@3/(byte*) print_char_cursor#45 main::@8/(byte*) print_char_cursor#15 ) - (byte*) print_str::str#5 ? phi( main::@3/(byte*) print_str::str#2 main::@8/(byte*) print_str::str#1 ) + (byte*) print_char_cursor#47 ← phi( main::@3/(byte*) print_char_cursor#45 main::@8/(byte*) print_char_cursor#15 ) + (byte*) print_str::str#5 ← phi( main::@3/(byte*) print_str::str#2 main::@8/(byte*) print_str::str#1 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#38 ? phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#3) != (byte) '@' + (byte*) print_char_cursor#38 ← phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#3) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#20 ? phi( print_str::@1/(byte*) print_char_cursor#38 ) - (byte*) print_str::str#4 ? phi( print_str::@1/(byte*) print_str::str#3 ) - *((byte*) print_char_cursor#20) ? *((byte*) print_str::str#4) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#20 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#4 + (byte*) print_char_cursor#20 ← phi( print_str::@1/(byte*) print_char_cursor#38 ) + (byte*) print_str::str#4 ← phi( print_str::@1/(byte*) print_str::str#3 ) + *((byte*) print_char_cursor#20) ← *((byte*) print_str::str#4) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#20 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#4 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#21 ? phi( print_str::@1/(byte*) print_char_cursor#38 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#21 + (byte*) print_char_cursor#21 ← phi( print_str::@1/(byte*) print_char_cursor#38 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#21 return to:@return print_sbyte: scope:[print_sbyte] from main::@2 - (byte*) print_char_cursor#48 ? phi( main::@2/(byte*) print_char_cursor#44 ) - (signed byte) print_sbyte::b#2 ? phi( main::@2/(signed byte) print_sbyte::b#1 ) - (bool~) print_sbyte::$0 ? (signed byte) print_sbyte::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_char_cursor#48 ← phi( main::@2/(byte*) print_char_cursor#44 ) + (signed byte) print_sbyte::b#2 ← phi( main::@2/(signed byte) print_sbyte::b#1 ) + (bool~) print_sbyte::$0 ← (signed byte) print_sbyte::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) print_sbyte::$0) goto print_sbyte::@1 to:print_sbyte::@3 print_sbyte::@1: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#5 ? phi( print_sbyte/(signed byte) print_sbyte::b#2 ) - (byte*) print_char_cursor#39 ? phi( print_sbyte/(byte*) print_char_cursor#48 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed byte) print_sbyte::b#5 ← phi( print_sbyte/(signed byte) print_sbyte::b#2 ) + (byte*) print_char_cursor#39 ← phi( print_sbyte/(byte*) print_char_cursor#48 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sbyte::@5 print_sbyte::@5: scope:[print_sbyte] from print_sbyte::@1 - (signed byte) print_sbyte::b#3 ? phi( print_sbyte::@1/(signed byte) print_sbyte::b#5 ) - (byte*) print_char_cursor#22 ? phi( print_sbyte::@1/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#3 ? (byte*) print_char_cursor#22 - (signed byte~) print_sbyte::$5 ? - (signed byte) print_sbyte::b#3 - (signed byte) print_sbyte::b#0 ? (signed byte~) print_sbyte::$5 + (signed byte) print_sbyte::b#3 ← phi( print_sbyte::@1/(signed byte) print_sbyte::b#5 ) + (byte*) print_char_cursor#22 ← phi( print_sbyte::@1/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#3 ← (byte*) print_char_cursor#22 + (signed byte~) print_sbyte::$5 ← - (signed byte) print_sbyte::b#3 + (signed byte) print_sbyte::b#0 ← (signed byte~) print_sbyte::$5 to:print_sbyte::@2 print_sbyte::@3: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#7 ? phi( print_sbyte/(signed byte) print_sbyte::b#2 ) - (byte*) print_char_cursor#40 ? phi( print_sbyte/(byte*) print_char_cursor#48 ) - (byte) print_char::ch#1 ? (byte) ' ' + (signed byte) print_sbyte::b#7 ← phi( print_sbyte/(signed byte) print_sbyte::b#2 ) + (byte*) print_char_cursor#40 ← phi( print_sbyte/(byte*) print_char_cursor#48 ) + (byte) print_char::ch#1 ← (byte) ' ' call print_char to:print_sbyte::@6 print_sbyte::@6: scope:[print_sbyte] from print_sbyte::@3 - (signed byte) print_sbyte::b#6 ? phi( print_sbyte::@3/(signed byte) print_sbyte::b#7 ) - (byte*) print_char_cursor#23 ? phi( print_sbyte::@3/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#23 + (signed byte) print_sbyte::b#6 ← phi( print_sbyte::@3/(signed byte) print_sbyte::b#7 ) + (byte*) print_char_cursor#23 ← phi( print_sbyte::@3/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#23 to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@5 print_sbyte::@6 - (byte*) print_char_cursor#41 ? phi( print_sbyte::@5/(byte*) print_char_cursor#3 print_sbyte::@6/(byte*) print_char_cursor#4 ) - (signed byte) print_sbyte::b#4 ? phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#6 ) - (byte~) print_sbyte::$1 ? ((byte)) (signed byte) print_sbyte::b#4 - (byte) print_byte::b#0 ? (byte~) print_sbyte::$1 + (byte*) print_char_cursor#41 ← phi( print_sbyte::@5/(byte*) print_char_cursor#3 print_sbyte::@6/(byte*) print_char_cursor#4 ) + (signed byte) print_sbyte::b#4 ← phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#6 ) + (byte~) print_sbyte::$1 ← ((byte)) (signed byte) print_sbyte::b#4 + (byte) print_byte::b#0 ← (byte~) print_sbyte::$1 call print_byte to:print_sbyte::@7 print_sbyte::@7: scope:[print_sbyte] from print_sbyte::@2 - (byte*) print_char_cursor#24 ? phi( print_sbyte::@2/(byte*) print_char_cursor#9 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#24 + (byte*) print_char_cursor#24 ← phi( print_sbyte::@2/(byte*) print_char_cursor#9 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#24 to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@7 - (byte*) print_char_cursor#25 ? phi( print_sbyte::@7/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#25 + (byte*) print_char_cursor#25 ← phi( print_sbyte::@7/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#25 return to:@return @32: scope:[] from @20 - (byte*) print_screen#8 ? phi( @20/(byte*) print_screen#0 ) - (byte*) print_char_cursor#51 ? phi( @20/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#15 ? phi( @20/(byte*) print_line_cursor#0 ) - (word) rem16u#42 ? phi( @20/(word) rem16u#43 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#8 ← phi( @20/(byte*) print_screen#0 ) + (byte*) print_char_cursor#51 ← phi( @20/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#15 ← phi( @20/(byte*) print_line_cursor#0 ) + (word) rem16u#42 ← phi( @20/(word) rem16u#43 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@40 print_byte: scope:[print_byte] from print_sbyte::@2 - (byte*) print_char_cursor#42 ? phi( print_sbyte::@2/(byte*) print_char_cursor#41 ) - (byte) print_byte::b#1 ? phi( print_sbyte::@2/(byte) print_byte::b#0 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#1 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#2 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#42 ← phi( print_sbyte::@2/(byte*) print_char_cursor#41 ) + (byte) print_byte::b#1 ← phi( print_sbyte::@2/(byte) print_byte::b#0 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#1 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#2 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#2 ? phi( print_byte/(byte) print_byte::b#1 ) - (byte*) print_char_cursor#26 ? phi( print_byte/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#26 - (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#3 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#2 ← phi( print_byte/(byte) print_byte::b#1 ) + (byte*) print_char_cursor#26 ← phi( print_byte/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#26 + (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#3 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#27 ? phi( print_byte::@1/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#27 + (byte*) print_char_cursor#27 ← phi( print_byte::@1/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#27 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#28 ? phi( print_byte::@2/(byte*) print_char_cursor#8 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#28 + (byte*) print_char_cursor#28 ← phi( print_byte::@2/(byte*) print_char_cursor#8 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#28 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 - (byte*) print_char_cursor#29 ? phi( print_byte/(byte*) print_char_cursor#42 print_byte::@1/(byte*) print_char_cursor#7 print_sbyte::@1/(byte*) print_char_cursor#39 print_sbyte::@3/(byte*) print_char_cursor#40 ) - (byte) print_char::ch#4 ? phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) print_char::ch#0 print_sbyte::@3/(byte) print_char::ch#1 ) - *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 - (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 + (byte*) print_char_cursor#29 ← phi( print_byte/(byte*) print_char_cursor#42 print_byte::@1/(byte*) print_char_cursor#7 print_sbyte::@1/(byte*) print_char_cursor#39 print_sbyte::@3/(byte*) print_char_cursor#40 ) + (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) print_char::ch#0 print_sbyte::@3/(byte) print_char::ch#1 ) + *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 + (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#30 ? phi( print_char/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#30 + (byte*) print_char_cursor#30 ← phi( print_char/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#30 return to:@return print_cls: scope:[print_cls] from main::@6 - (byte*) print_screen#1 ? phi( main::@6/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main::@6/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#1 ? (byte*) print_screen#3 - (byte*) print_char_cursor#12 ? (byte*) print_line_cursor#1 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#1 ← (byte*) print_screen#3 + (byte*) print_char_cursor#12 ← (byte*) print_line_cursor#1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#31 ? phi( print_cls::@2/(byte*) print_char_cursor#12 ) - (byte*) print_line_cursor#6 ? phi( print_cls::@2/(byte*) print_line_cursor#1 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#6 - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#31 + (byte*) print_char_cursor#31 ← phi( print_cls::@2/(byte*) print_char_cursor#12 ) + (byte*) print_line_cursor#6 ← phi( print_cls::@2/(byte*) print_line_cursor#1 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#6 + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#31 return to:@return main: scope:[main] from @40 - (byte*) print_char_cursor#52 ? phi( @40/(byte*) print_char_cursor#46 ) - (byte*) print_line_cursor#16 ? phi( @40/(byte*) print_line_cursor#12 ) - (byte*) print_screen#6 ? phi( @40/(byte*) print_screen#7 ) - (word) rem16u#36 ? phi( @40/(word) rem16u#38 ) - (word) main::wavelength#0 ? (byte/word/signed word/dword/signed dword) $c0 - (signed byte[$c0]) main::sintabb#0 ? { fill( $c0, 0) } - (signed byte*) sin8s_gen::sintab#1 ? (signed byte[$c0]) main::sintabb#0 - (word) sin8s_gen::wavelength#0 ? (word) main::wavelength#0 + (byte*) print_char_cursor#52 ← phi( @40/(byte*) print_char_cursor#46 ) + (byte*) print_line_cursor#16 ← phi( @40/(byte*) print_line_cursor#12 ) + (byte*) print_screen#6 ← phi( @40/(byte*) print_screen#7 ) + (word) rem16u#36 ← phi( @40/(word) rem16u#38 ) + (word) main::wavelength#0 ← (byte/word/signed word/dword/signed dword) $c0 + (signed byte[$c0]) main::sintabb#0 ← { fill( $c0, 0) } + (signed byte*) sin8s_gen::sintab#1 ← (signed byte[$c0]) main::sintabb#0 + (word) sin8s_gen::wavelength#0 ← (word) main::wavelength#0 call sin8s_gen to:main::@5 main::@5: scope:[main] from main - (byte*) print_char_cursor#49 ? phi( main/(byte*) print_char_cursor#52 ) - (byte*) print_line_cursor#13 ? phi( main/(byte*) print_line_cursor#16 ) - (byte*) print_screen#5 ? phi( main/(byte*) print_screen#6 ) - (word) rem16u#26 ? phi( main/(word) rem16u#11 ) - (word) rem16u#12 ? (word) rem16u#26 - (signed word[$c0]) main::sintabw#0 ? { fill( $c0, 0) } - (signed word*) sin16s_gen::sintab#1 ? (signed word[$c0]) main::sintabw#0 - (word) sin16s_gen::wavelength#0 ? (word) main::wavelength#0 + (byte*) print_char_cursor#49 ← phi( main/(byte*) print_char_cursor#52 ) + (byte*) print_line_cursor#13 ← phi( main/(byte*) print_line_cursor#16 ) + (byte*) print_screen#5 ← phi( main/(byte*) print_screen#6 ) + (word) rem16u#26 ← phi( main/(word) rem16u#11 ) + (word) rem16u#12 ← (word) rem16u#26 + (signed word[$c0]) main::sintabw#0 ← { fill( $c0, 0) } + (signed word*) sin16s_gen::sintab#1 ← (signed word[$c0]) main::sintabw#0 + (word) sin16s_gen::wavelength#0 ← (word) main::wavelength#0 call sin16s_gen to:main::@6 main::@6: scope:[main] from main::@5 - (byte*) print_char_cursor#43 ? phi( main::@5/(byte*) print_char_cursor#49 ) - (byte*) print_line_cursor#10 ? phi( main::@5/(byte*) print_line_cursor#13 ) - (byte*) print_screen#4 ? phi( main::@5/(byte*) print_screen#5 ) - (word) rem16u#27 ? phi( main::@5/(word) rem16u#9 ) - (word) rem16u#13 ? (word) rem16u#27 + (byte*) print_char_cursor#43 ← phi( main::@5/(byte*) print_char_cursor#49 ) + (byte*) print_line_cursor#10 ← phi( main::@5/(byte*) print_line_cursor#13 ) + (byte*) print_screen#4 ← phi( main::@5/(byte*) print_screen#5 ) + (word) rem16u#27 ← phi( main::@5/(word) rem16u#9 ) + (word) rem16u#13 ← (word) rem16u#27 call print_cls to:main::@7 main::@7: scope:[main] from main::@6 - (word) rem16u#49 ? phi( main::@6/(word) rem16u#13 ) - (byte*) print_char_cursor#32 ? phi( main::@6/(byte*) print_char_cursor#13 ) - (byte*) print_line_cursor#7 ? phi( main::@6/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_line_cursor#7 - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#32 - (byte) main::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#49 ← phi( main::@6/(word) rem16u#13 ) + (byte*) print_char_cursor#32 ← phi( main::@6/(byte*) print_char_cursor#13 ) + (byte*) print_line_cursor#7 ← phi( main::@6/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_line_cursor#7 + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#32 + (byte) main::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:main::@1 main::@1: scope:[main] from main::@7 main::@9 - (byte*) print_line_cursor#18 ? phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 ) - (word) rem16u#46 ? phi( main::@7/(word) rem16u#49 main::@9/(word) rem16u#37 ) - (byte*) print_char_cursor#50 ? phi( main::@7/(byte*) print_char_cursor#14 main::@9/(byte*) print_char_cursor#16 ) - (byte) main::i#2 ? phi( main::@7/(byte) main::i#0 main::@9/(byte) main::i#1 ) - (signed byte) main::sb#0 ? *((signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) - (word~) main::$3 ? ((word)) (byte) main::i#2 - (word~) main::$4 ? (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed word*~) main::$5 ? (signed word[$c0]) main::sintabw#0 + (word~) main::$4 - (signed word) main::sw#0 ? *((signed word*~) main::$5) - (byte~) main::$6 ? > (signed word) main::sw#0 - (signed byte~) main::$7 ? ((signed byte)) (byte~) main::$6 - (signed byte~) main::$8 ? (signed byte) main::sb#0 - (signed byte~) main::$7 - (signed byte) main::sd#0 ? (signed byte~) main::$8 - (bool~) main::$9 ? (signed byte) main::sd#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) main::$10 ? ! (bool~) main::$9 + (byte*) print_line_cursor#18 ← phi( main::@7/(byte*) print_line_cursor#3 main::@9/(byte*) print_line_cursor#11 ) + (word) rem16u#46 ← phi( main::@7/(word) rem16u#49 main::@9/(word) rem16u#37 ) + (byte*) print_char_cursor#50 ← phi( main::@7/(byte*) print_char_cursor#14 main::@9/(byte*) print_char_cursor#16 ) + (byte) main::i#2 ← phi( main::@7/(byte) main::i#0 main::@9/(byte) main::i#1 ) + (signed byte) main::sb#0 ← *((signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) + (word~) main::$3 ← ((word)) (byte) main::i#2 + (word~) main::$4 ← (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (signed word*~) main::$5 ← (signed word[$c0]) main::sintabw#0 + (word~) main::$4 + (signed word) main::sw#0 ← *((signed word*~) main::$5) + (byte~) main::$6 ← > (signed word) main::sw#0 + (signed byte~) main::$7 ← ((signed byte)) (byte~) main::$6 + (signed byte~) main::$8 ← (signed byte) main::sb#0 - (signed byte~) main::$7 + (signed byte) main::sd#0 ← (signed byte~) main::$8 + (bool~) main::$9 ← (signed byte) main::sd#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) main::$10 ← ! (bool~) main::$9 if((bool~) main::$10) goto main::@2 to:main::@3 main::@2: scope:[main] from main::@1 main::@10 - (byte*) print_line_cursor#17 ? phi( main::@1/(byte*) print_line_cursor#18 main::@10/(byte*) print_line_cursor#19 ) - (word) rem16u#44 ? phi( main::@1/(word) rem16u#46 main::@10/(word) rem16u#47 ) - (byte) main::i#5 ? phi( main::@1/(byte) main::i#2 main::@10/(byte) main::i#6 ) - (byte*) print_char_cursor#44 ? phi( main::@1/(byte*) print_char_cursor#50 main::@10/(byte*) print_char_cursor#17 ) - (signed byte) main::sd#1 ? phi( main::@1/(signed byte) main::sd#0 main::@10/(signed byte) main::sd#2 ) - (signed byte) print_sbyte::b#1 ? (signed byte) main::sd#1 + (byte*) print_line_cursor#17 ← phi( main::@1/(byte*) print_line_cursor#18 main::@10/(byte*) print_line_cursor#19 ) + (word) rem16u#44 ← phi( main::@1/(word) rem16u#46 main::@10/(word) rem16u#47 ) + (byte) main::i#5 ← phi( main::@1/(byte) main::i#2 main::@10/(byte) main::i#6 ) + (byte*) print_char_cursor#44 ← phi( main::@1/(byte*) print_char_cursor#50 main::@10/(byte*) print_char_cursor#17 ) + (signed byte) main::sd#1 ← phi( main::@1/(signed byte) main::sd#0 main::@10/(signed byte) main::sd#2 ) + (signed byte) print_sbyte::b#1 ← (signed byte) main::sd#1 call print_sbyte to:main::@8 main::@8: scope:[main] from main::@2 - (byte*) print_line_cursor#14 ? phi( main::@2/(byte*) print_line_cursor#17 ) - (word) rem16u#41 ? phi( main::@2/(word) rem16u#44 ) - (byte) main::i#4 ? phi( main::@2/(byte) main::i#5 ) - (byte*) print_char_cursor#33 ? phi( main::@2/(byte*) print_char_cursor#6 ) - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#33 - (byte*) print_str::str#1 ? (const string) main::str + (byte*) print_line_cursor#14 ← phi( main::@2/(byte*) print_line_cursor#17 ) + (word) rem16u#41 ← phi( main::@2/(word) rem16u#44 ) + (byte) main::i#4 ← phi( main::@2/(byte) main::i#5 ) + (byte*) print_char_cursor#33 ← phi( main::@2/(byte*) print_char_cursor#6 ) + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#33 + (byte*) print_str::str#1 ← (const string) main::str call print_str to:main::@9 main::@9: scope:[main] from main::@8 - (byte*) print_line_cursor#11 ? phi( main::@8/(byte*) print_line_cursor#14 ) - (word) rem16u#37 ? phi( main::@8/(word) rem16u#41 ) - (byte) main::i#3 ? phi( main::@8/(byte) main::i#4 ) - (byte*) print_char_cursor#34 ? phi( main::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#34 - (byte) main::i#1 ? (byte) main::i#3 + rangenext(0,$bf) - (bool~) main::$14 ? (byte) main::i#1 != rangelast(0,$bf) + (byte*) print_line_cursor#11 ← phi( main::@8/(byte*) print_line_cursor#14 ) + (word) rem16u#37 ← phi( main::@8/(word) rem16u#41 ) + (byte) main::i#3 ← phi( main::@8/(byte) main::i#4 ) + (byte*) print_char_cursor#34 ← phi( main::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#34 + (byte) main::i#1 ← (byte) main::i#3 + rangenext(0,$bf) + (bool~) main::$14 ← (byte) main::i#1 != rangelast(0,$bf) if((bool~) main::$14) goto main::@1 to:main::@return main::@3: scope:[main] from main::@1 - (byte*) print_line_cursor#20 ? phi( main::@1/(byte*) print_line_cursor#18 ) - (word) rem16u#50 ? phi( main::@1/(word) rem16u#46 ) - (byte) main::i#7 ? phi( main::@1/(byte) main::i#2 ) - (signed byte) main::sd#3 ? phi( main::@1/(signed byte) main::sd#0 ) - (byte*) print_char_cursor#45 ? phi( main::@1/(byte*) print_char_cursor#50 ) - (byte*) print_str::str#2 ? (const string) main::str1 + (byte*) print_line_cursor#20 ← phi( main::@1/(byte*) print_line_cursor#18 ) + (word) rem16u#50 ← phi( main::@1/(word) rem16u#46 ) + (byte) main::i#7 ← phi( main::@1/(byte) main::i#2 ) + (signed byte) main::sd#3 ← phi( main::@1/(signed byte) main::sd#0 ) + (byte*) print_char_cursor#45 ← phi( main::@1/(byte*) print_char_cursor#50 ) + (byte*) print_str::str#2 ← (const string) main::str1 call print_str to:main::@10 main::@10: scope:[main] from main::@3 - (byte*) print_line_cursor#19 ? phi( main::@3/(byte*) print_line_cursor#20 ) - (word) rem16u#47 ? phi( main::@3/(word) rem16u#50 ) - (byte) main::i#6 ? phi( main::@3/(byte) main::i#7 ) - (signed byte) main::sd#2 ? phi( main::@3/(signed byte) main::sd#3 ) - (byte*) print_char_cursor#35 ? phi( main::@3/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#35 + (byte*) print_line_cursor#19 ← phi( main::@3/(byte*) print_line_cursor#20 ) + (word) rem16u#47 ← phi( main::@3/(word) rem16u#50 ) + (byte) main::i#6 ← phi( main::@3/(byte) main::i#7 ) + (signed byte) main::sd#2 ← phi( main::@3/(signed byte) main::sd#3 ) + (byte*) print_char_cursor#35 ← phi( main::@3/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#35 to:main::@2 main::@return: scope:[main] from main::@9 - (byte*) print_char_cursor#36 ? phi( main::@9/(byte*) print_char_cursor#16 ) - (byte*) print_line_cursor#8 ? phi( main::@9/(byte*) print_line_cursor#11 ) - (word) rem16u#28 ? phi( main::@9/(word) rem16u#37 ) - (word) rem16u#14 ? (word) rem16u#28 - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#8 - (byte*) print_char_cursor#18 ? (byte*) print_char_cursor#36 + (byte*) print_char_cursor#36 ← phi( main::@9/(byte*) print_char_cursor#16 ) + (byte*) print_line_cursor#8 ← phi( main::@9/(byte*) print_line_cursor#11 ) + (word) rem16u#28 ← phi( main::@9/(word) rem16u#37 ) + (word) rem16u#14 ← (word) rem16u#28 + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#8 + (byte*) print_char_cursor#18 ← (byte*) print_char_cursor#36 return to:@return @40: scope:[] from @32 - (byte*) print_screen#7 ? phi( @32/(byte*) print_screen#8 ) - (byte*) print_char_cursor#46 ? phi( @32/(byte*) print_char_cursor#51 ) - (byte*) print_line_cursor#12 ? phi( @32/(byte*) print_line_cursor#15 ) - (word) rem16u#38 ? phi( @32/(word) rem16u#42 ) + (byte*) print_screen#7 ← phi( @32/(byte*) print_screen#8 ) + (byte*) print_char_cursor#46 ← phi( @32/(byte*) print_char_cursor#51 ) + (byte*) print_line_cursor#12 ← phi( @32/(byte*) print_line_cursor#15 ) + (word) rem16u#38 ← phi( @32/(word) rem16u#42 ) call main to:@41 @41: scope:[] from @40 - (byte*) print_char_cursor#37 ? phi( @40/(byte*) print_char_cursor#18 ) - (byte*) print_line_cursor#9 ? phi( @40/(byte*) print_line_cursor#4 ) - (word) rem16u#29 ? phi( @40/(word) rem16u#14 ) - (word) rem16u#15 ? (word) rem16u#29 - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#9 - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#37 + (byte*) print_char_cursor#37 ← phi( @40/(byte*) print_char_cursor#18 ) + (byte*) print_line_cursor#9 ← phi( @40/(byte*) print_line_cursor#4 ) + (word) rem16u#29 ← phi( @40/(word) rem16u#14 ) + (word) rem16u#15 ← (word) rem16u#29 + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#9 + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#37 to:@end @end: scope:[] from @41 @@ -1782,18 +1782,18 @@ SYMBOL TABLE SSA (word) sin8s_gen::x#2 (word) sin8s_gen::x#3 -Inversing boolean not [11] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [19] (bool~) divr16u::$9 ? (word) divr16u::rem#7 < (word) divr16u::divisor#3 from [18] (bool~) divr16u::$8 ? (word) divr16u::rem#7 >= (word) divr16u::divisor#3 -Inversing boolean not [93] (bool~) mul8u::$3 ? (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [92] (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [117] (bool~) mul16u::$3 ? (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [116] (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [197] (bool~) sin16s::$1 ? (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [196] (bool~) sin16s::$0 ? (dword) sin16s::x#3 >= (dword) PI_u4f28#0 -Inversing boolean not [201] (bool~) sin16s::$3 ? (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [200] (bool~) sin16s::$2 ? (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 -Inversing boolean not [261] (bool~) sin16s::$17 ? (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [260] (bool~) sin16s::$16 ? (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [278] (bool~) sin8s::$1 ? (word) sin8s::x#3 < (word) PI_u4f12#0 from [277] (bool~) sin8s::$0 ? (word) sin8s::x#3 >= (word) PI_u4f12#0 -Inversing boolean not [282] (bool~) sin8s::$3 ? (word) sin8s::x#4 < (word) PI_HALF_u4f12#0 from [281] (bool~) sin8s::$2 ? (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 -Inversing boolean not [340] (bool~) sin8s::$15 ? (byte) sin8s::usinx#1 < (byte/word/signed word/dword/signed dword) $80 from [339] (bool~) sin8s::$14 ? (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 -Inversing boolean not [349] (bool~) sin8s::$18 ? (byte) sin8s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [348] (bool~) sin8s::$17 ? (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [494] (bool~) main::$10 ? (signed byte) main::sd#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [493] (bool~) main::$9 ? (signed byte) main::sd#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [11] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [19] (bool~) divr16u::$9 ← (word) divr16u::rem#7 < (word) divr16u::divisor#3 from [18] (bool~) divr16u::$8 ← (word) divr16u::rem#7 >= (word) divr16u::divisor#3 +Inversing boolean not [93] (bool~) mul8u::$3 ← (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [92] (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [117] (bool~) mul16u::$3 ← (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [116] (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [197] (bool~) sin16s::$1 ← (dword) sin16s::x#3 < (dword) PI_u4f28#0 from [196] (bool~) sin16s::$0 ← (dword) sin16s::x#3 >= (dword) PI_u4f28#0 +Inversing boolean not [201] (bool~) sin16s::$3 ← (dword) sin16s::x#4 < (dword) PI_HALF_u4f28#0 from [200] (bool~) sin16s::$2 ← (dword) sin16s::x#4 >= (dword) PI_HALF_u4f28#0 +Inversing boolean not [261] (bool~) sin16s::$17 ← (byte) sin16s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [260] (bool~) sin16s::$16 ← (byte) sin16s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [278] (bool~) sin8s::$1 ← (word) sin8s::x#3 < (word) PI_u4f12#0 from [277] (bool~) sin8s::$0 ← (word) sin8s::x#3 >= (word) PI_u4f12#0 +Inversing boolean not [282] (bool~) sin8s::$3 ← (word) sin8s::x#4 < (word) PI_HALF_u4f12#0 from [281] (bool~) sin8s::$2 ← (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 +Inversing boolean not [340] (bool~) sin8s::$15 ← (byte) sin8s::usinx#1 < (byte/word/signed word/dword/signed dword) $80 from [339] (bool~) sin8s::$14 ← (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 +Inversing boolean not [349] (bool~) sin8s::$18 ← (byte) sin8s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [348] (bool~) sin8s::$17 ← (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [494] (bool~) main::$10 ← (signed byte) main::sd#0 < (byte/signed byte/word/signed word/dword/signed dword) 0 from [493] (bool~) main::$9 ← (signed byte) main::sd#0 >= (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#8 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#9 @@ -2131,19 +2131,19 @@ Constant (const word) divr16u::divisor#0 = div16u::divisor#0 Constant (const word) divr16u::divisor#1 = div32u16u::divisor#0 Constant (const word) divr16u::divisor#2 = div32u16u::divisor#0 Successful SSA optimization Pass2ConstantIdentification -Fixing inline constructor with div32u16u::$4 ? div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 +Fixing inline constructor with div32u16u::$4 ← div32u16u::quotient_hi#0 dw= div32u16u::quotient_lo#0 Successful SSA optimization Pass2FixInlineConstructors Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (signed word) sin16s::sinx#0 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (signed word~) sin16s::$20 ? ((signed word)) (word) sin16s::usinx#1 -Eliminating Noop Cast (signed byte) sin8s::sinx#0 ? ((signed byte)) (byte) sin8s::usinx#4 -Eliminating Noop Cast (signed byte~) sin8s::$21 ? ((signed byte)) (byte) sin8s::usinx#4 -Eliminating Noop Cast (byte) print_byte::b#0 ? ((byte)) (signed byte) print_sbyte::b#4 -Eliminating Noop Cast (signed byte~) main::$7 ? ((signed byte)) (byte~) main::$6 +Eliminating Noop Cast (signed word) sin16s::sinx#0 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (signed word~) sin16s::$20 ← ((signed word)) (word) sin16s::usinx#1 +Eliminating Noop Cast (signed byte) sin8s::sinx#0 ← ((signed byte)) (byte) sin8s::usinx#4 +Eliminating Noop Cast (signed byte~) sin8s::$21 ← ((signed byte)) (byte) sin8s::usinx#4 +Eliminating Noop Cast (byte) print_byte::b#0 ← ((byte)) (signed byte) print_sbyte::b#4 +Eliminating Noop Cast (signed byte~) main::$7 ← ((signed byte)) (byte~) main::$6 Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value main::i#1 ? ++ main::i#2 to ++ +Resolved ranged next value main::i#1 ← ++ main::i#2 to ++ Resolved ranged comparison value if(main::i#1!=rangelast(0,$bf)) goto main::@1 to (byte/word/signed word/dword/signed dword) $c0 Culled Empty Block (label) @2 Culled Empty Block (label) @5 @@ -2299,88 +2299,88 @@ Calls in [mulu8_sel] to mul8u:296 Calls in [div16u] to divr16u:320 Created 49 initial phi equivalence classes -Coalesced [19] print_char_cursor#56 ? print_char_cursor#45 -Coalesced [21] print_char_cursor#55 ? print_char_cursor#2 -Coalesced [25] print_char_cursor#57 ? print_char_cursor#10 -Coalesced [30] main::i#8 ? main::i#1 -Coalesced [31] print_char_cursor#53 ? print_char_cursor#2 -Coalesced (already) [32] print_char_cursor#54 ? print_char_cursor#45 -Coalesced [34] print_str::str#6 ? print_str::str#5 -Coalesced (already) [35] print_char_cursor#58 ? print_char_cursor#47 -Coalesced [42] print_str::str#7 ? print_str::str#0 -Coalesced [43] print_char_cursor#59 ? print_char_cursor#1 -Coalesced [45] print_char_cursor#63 ? print_char_cursor#44 -Coalesced [47] print_sbyte::b#9 ? print_sbyte::b#1 -Coalesced (already) [51] print_char_cursor#62 ? print_char_cursor#44 -Coalesced [54] print_sbyte::b#8 ? print_sbyte::b#0 -Coalesced [61] print_char::ch#5 ? print_char::ch#2 -Coalesced (already) [62] print_char_cursor#60 ? print_char_cursor#10 -Coalesced [66] print_char::ch#6 ? print_char::ch#3 -Coalesced (already) [67] print_char_cursor#61 ? print_char_cursor#10 -Coalesced [76] print_cls::sc#3 ? print_cls::sc#1 -Coalesced [92] sin16s_gen::x#4 ? sin16s_gen::x#1 -Coalesced [93] sin16s_gen::sintab#6 ? sin16s_gen::sintab#0 -Coalesced [94] sin16s_gen::i#4 ? sin16s_gen::i#1 -Coalesced [97] sin16s::x#9 ? sin16s::x#1 -Coalesced [101] sin16s::x#11 ? sin16s::x#2 -Coalesced [107] mulu16_sel::v1#8 ? mulu16_sel::v1#0 -Coalesced [108] mulu16_sel::v2#8 ? mulu16_sel::v2#0 -Coalesced [114] mulu16_sel::v1#9 ? mulu16_sel::v1#1 -Coalesced [115] mulu16_sel::v2#9 ? mulu16_sel::v2#1 -Coalesced [120] mulu16_sel::v1#10 ? mulu16_sel::v1#2 -Coalesced [127] mulu16_sel::v1#6 ? mulu16_sel::v1#3 -Coalesced [128] mulu16_sel::v2#6 ? mulu16_sel::v2#3 -Coalesced [134] mulu16_sel::v1#7 ? mulu16_sel::v1#4 -Coalesced [135] mulu16_sel::v2#7 ? mulu16_sel::v2#4 -Coalesced [143] sin16s::return#6 ? sin16s::sinx#1 -Coalesced [147] sin16s::x#10 ? sin16s::x#4 -Coalesced [148] sin16s::x#8 ? sin16s::x#0 -Coalesced [159] mul16u::a#7 ? mul16u::a#1 -Coalesced [160] mul16u::mb#6 ? mul16u::mb#0 -Coalesced [167] mul16u::res#9 ? mul16u::res#1 -Coalesced [171] mul16u::a#8 ? mul16u::a#0 -Coalesced [172] mul16u::res#7 ? mul16u::res#6 -Coalesced [173] mul16u::mb#7 ? mul16u::mb#1 -Coalesced (already) [174] mul16u::res#8 ? mul16u::res#2 -Coalesced [180] divr16u::rem#13 ? divr16u::rem#5 -Coalesced [187] divr16u::rem#14 ? divr16u::rem#11 -Coalesced [188] divr16u::dividend#10 ? divr16u::dividend#6 -Coalesced [195] divr16u::rem#17 ? divr16u::rem#1 -Coalesced [202] divr16u::rem#19 ? divr16u::rem#2 -Coalesced [203] divr16u::return#10 ? divr16u::quotient#2 -Coalesced [209] divr16u::rem#15 ? divr16u::rem#10 -Coalesced [210] divr16u::dividend#11 ? divr16u::dividend#0 -Coalesced [211] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [212] divr16u::i#7 ? divr16u::i#1 -Coalesced [213] divr16u::rem#18 ? divr16u::rem#7 -Coalesced [214] divr16u::return#9 ? divr16u::quotient#1 -Coalesced [215] divr16u::rem#16 ? divr16u::rem#0 -Coalesced [231] sin8s_gen::x#4 ? sin8s_gen::x#1 -Coalesced [232] sin8s_gen::sintab#6 ? sin8s_gen::sintab#0 -Coalesced [233] sin8s_gen::i#4 ? sin8s_gen::i#1 -Coalesced [236] sin8s::x#9 ? sin8s::x#1 -Coalesced [240] sin8s::x#11 ? sin8s::x#2 -Coalesced [246] mulu8_sel::v1#10 ? mulu8_sel::v1#0 -Coalesced [247] mulu8_sel::v2#9 ? mulu8_sel::v2#0 -Coalesced [253] mulu8_sel::v1#6 ? mulu8_sel::v1#1 -Coalesced [254] mulu8_sel::v2#6 ? mulu8_sel::v2#1 -Coalesced [259] mulu8_sel::v1#7 ? mulu8_sel::v1#2 -Coalesced [266] mulu8_sel::v1#8 ? mulu8_sel::v1#3 -Coalesced [267] mulu8_sel::v2#7 ? mulu8_sel::v2#3 -Coalesced [273] mulu8_sel::v1#9 ? mulu8_sel::v1#4 -Coalesced [274] mulu8_sel::v2#8 ? mulu8_sel::v2#4 -Coalesced [282] sin8s::usinx#9 ? sin8s::usinx#2 -Coalesced [286] sin8s::return#6 ? sin8s::sinx#1 -Coalesced [290] sin8s::usinx#8 ? sin8s::usinx#1 -Coalesced [291] sin8s::x#10 ? sin8s::x#4 -Coalesced [292] sin8s::x#8 ? sin8s::x#0 -Coalesced [303] mul8u::a#7 ? mul8u::a#1 -Coalesced [304] mul8u::mb#6 ? mul8u::mb#0 -Coalesced [311] mul8u::res#9 ? mul8u::res#1 -Coalesced [315] mul8u::a#8 ? mul8u::a#0 -Coalesced [316] mul8u::res#7 ? mul8u::res#6 -Coalesced [317] mul8u::mb#7 ? mul8u::mb#1 -Coalesced (already) [318] mul8u::res#8 ? mul8u::res#2 +Coalesced [19] print_char_cursor#56 ← print_char_cursor#45 +Coalesced [21] print_char_cursor#55 ← print_char_cursor#2 +Coalesced [25] print_char_cursor#57 ← print_char_cursor#10 +Coalesced [30] main::i#8 ← main::i#1 +Coalesced [31] print_char_cursor#53 ← print_char_cursor#2 +Coalesced (already) [32] print_char_cursor#54 ← print_char_cursor#45 +Coalesced [34] print_str::str#6 ← print_str::str#5 +Coalesced (already) [35] print_char_cursor#58 ← print_char_cursor#47 +Coalesced [42] print_str::str#7 ← print_str::str#0 +Coalesced [43] print_char_cursor#59 ← print_char_cursor#1 +Coalesced [45] print_char_cursor#63 ← print_char_cursor#44 +Coalesced [47] print_sbyte::b#9 ← print_sbyte::b#1 +Coalesced (already) [51] print_char_cursor#62 ← print_char_cursor#44 +Coalesced [54] print_sbyte::b#8 ← print_sbyte::b#0 +Coalesced [61] print_char::ch#5 ← print_char::ch#2 +Coalesced (already) [62] print_char_cursor#60 ← print_char_cursor#10 +Coalesced [66] print_char::ch#6 ← print_char::ch#3 +Coalesced (already) [67] print_char_cursor#61 ← print_char_cursor#10 +Coalesced [76] print_cls::sc#3 ← print_cls::sc#1 +Coalesced [92] sin16s_gen::x#4 ← sin16s_gen::x#1 +Coalesced [93] sin16s_gen::sintab#6 ← sin16s_gen::sintab#0 +Coalesced [94] sin16s_gen::i#4 ← sin16s_gen::i#1 +Coalesced [97] sin16s::x#9 ← sin16s::x#1 +Coalesced [101] sin16s::x#11 ← sin16s::x#2 +Coalesced [107] mulu16_sel::v1#8 ← mulu16_sel::v1#0 +Coalesced [108] mulu16_sel::v2#8 ← mulu16_sel::v2#0 +Coalesced [114] mulu16_sel::v1#9 ← mulu16_sel::v1#1 +Coalesced [115] mulu16_sel::v2#9 ← mulu16_sel::v2#1 +Coalesced [120] mulu16_sel::v1#10 ← mulu16_sel::v1#2 +Coalesced [127] mulu16_sel::v1#6 ← mulu16_sel::v1#3 +Coalesced [128] mulu16_sel::v2#6 ← mulu16_sel::v2#3 +Coalesced [134] mulu16_sel::v1#7 ← mulu16_sel::v1#4 +Coalesced [135] mulu16_sel::v2#7 ← mulu16_sel::v2#4 +Coalesced [143] sin16s::return#6 ← sin16s::sinx#1 +Coalesced [147] sin16s::x#10 ← sin16s::x#4 +Coalesced [148] sin16s::x#8 ← sin16s::x#0 +Coalesced [159] mul16u::a#7 ← mul16u::a#1 +Coalesced [160] mul16u::mb#6 ← mul16u::mb#0 +Coalesced [167] mul16u::res#9 ← mul16u::res#1 +Coalesced [171] mul16u::a#8 ← mul16u::a#0 +Coalesced [172] mul16u::res#7 ← mul16u::res#6 +Coalesced [173] mul16u::mb#7 ← mul16u::mb#1 +Coalesced (already) [174] mul16u::res#8 ← mul16u::res#2 +Coalesced [180] divr16u::rem#13 ← divr16u::rem#5 +Coalesced [187] divr16u::rem#14 ← divr16u::rem#11 +Coalesced [188] divr16u::dividend#10 ← divr16u::dividend#6 +Coalesced [195] divr16u::rem#17 ← divr16u::rem#1 +Coalesced [202] divr16u::rem#19 ← divr16u::rem#2 +Coalesced [203] divr16u::return#10 ← divr16u::quotient#2 +Coalesced [209] divr16u::rem#15 ← divr16u::rem#10 +Coalesced [210] divr16u::dividend#11 ← divr16u::dividend#0 +Coalesced [211] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [212] divr16u::i#7 ← divr16u::i#1 +Coalesced [213] divr16u::rem#18 ← divr16u::rem#7 +Coalesced [214] divr16u::return#9 ← divr16u::quotient#1 +Coalesced [215] divr16u::rem#16 ← divr16u::rem#0 +Coalesced [231] sin8s_gen::x#4 ← sin8s_gen::x#1 +Coalesced [232] sin8s_gen::sintab#6 ← sin8s_gen::sintab#0 +Coalesced [233] sin8s_gen::i#4 ← sin8s_gen::i#1 +Coalesced [236] sin8s::x#9 ← sin8s::x#1 +Coalesced [240] sin8s::x#11 ← sin8s::x#2 +Coalesced [246] mulu8_sel::v1#10 ← mulu8_sel::v1#0 +Coalesced [247] mulu8_sel::v2#9 ← mulu8_sel::v2#0 +Coalesced [253] mulu8_sel::v1#6 ← mulu8_sel::v1#1 +Coalesced [254] mulu8_sel::v2#6 ← mulu8_sel::v2#1 +Coalesced [259] mulu8_sel::v1#7 ← mulu8_sel::v1#2 +Coalesced [266] mulu8_sel::v1#8 ← mulu8_sel::v1#3 +Coalesced [267] mulu8_sel::v2#7 ← mulu8_sel::v2#3 +Coalesced [273] mulu8_sel::v1#9 ← mulu8_sel::v1#4 +Coalesced [274] mulu8_sel::v2#8 ← mulu8_sel::v2#4 +Coalesced [282] sin8s::usinx#9 ← sin8s::usinx#2 +Coalesced [286] sin8s::return#6 ← sin8s::sinx#1 +Coalesced [290] sin8s::usinx#8 ← sin8s::usinx#1 +Coalesced [291] sin8s::x#10 ← sin8s::x#4 +Coalesced [292] sin8s::x#8 ← sin8s::x#0 +Coalesced [303] mul8u::a#7 ← mul8u::a#1 +Coalesced [304] mul8u::mb#6 ← mul8u::mb#0 +Coalesced [311] mul8u::res#9 ← mul8u::res#1 +Coalesced [315] mul8u::a#8 ← mul8u::a#0 +Coalesced [316] mul8u::res#7 ← mul8u::res#6 +Coalesced [317] mul8u::mb#7 ← mul8u::mb#1 +Coalesced (already) [318] mul8u::res#8 ← mul8u::res#2 Coalesced down to 35 phi equivalence classes Culled Empty Block (label) main::@11 Culled Empty Block (label) main::@12 @@ -2467,15 +2467,15 @@ main::@5: scope:[main] from main::@4 [9] call print_cls to:main::@1 main::@1: scope:[main] from main::@5 main::@7 - [10] (byte*) print_char_cursor#45 ? phi( main::@5/(const byte*) print_line_cursor#0 main::@7/(byte*) print_char_cursor#2 ) - [10] (byte) main::i#2 ? phi( main::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@7/(byte) main::i#1 ) - [11] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) - [12] (word~) main::$3 ? ((word)) (byte) main::i#2 - [13] (word~) main::$4 ? (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [14] (signed word*~) main::$5 ? (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 - [15] (signed word) main::sw#0 ? *((signed word*~) main::$5) - [16] (byte~) main::$6 ? > (signed word) main::sw#0 - [17] (signed byte) main::sd#0 ? (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 + [10] (byte*) print_char_cursor#45 ← phi( main::@5/(const byte*) print_line_cursor#0 main::@7/(byte*) print_char_cursor#2 ) + [10] (byte) main::i#2 ← phi( main::@5/(byte/signed byte/word/signed word/dword/signed dword) 0 main::@7/(byte) main::i#1 ) + [11] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) + [12] (word~) main::$3 ← ((word)) (byte) main::i#2 + [13] (word~) main::$4 ← (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [14] (signed word*~) main::$5 ← (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 + [15] (signed word) main::sw#0 ← *((signed word*~) main::$5) + [16] (byte~) main::$6 ← > (signed word) main::sw#0 + [17] (signed byte) main::sd#0 ← (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 [18] if((signed byte) main::sd#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto main::@2 to:main::@3 main::@3: scope:[main] from main::@1 @@ -2483,8 +2483,8 @@ main::@3: scope:[main] from main::@1 [20] call print_str to:main::@2 main::@2: scope:[main] from main::@1 main::@3 - [21] (byte*) print_char_cursor#44 ? phi( main::@1/(byte*) print_char_cursor#45 main::@3/(byte*) print_char_cursor#2 ) - [22] (signed byte) print_sbyte::b#1 ? (signed byte) main::sd#0 + [21] (byte*) print_char_cursor#44 ← phi( main::@1/(byte*) print_char_cursor#45 main::@3/(byte*) print_char_cursor#2 ) + [22] (signed byte) print_sbyte::b#1 ← (signed byte) main::sd#0 [23] call print_sbyte to:main::@6 main::@6: scope:[main] from main::@2 @@ -2492,28 +2492,28 @@ main::@6: scope:[main] from main::@2 [25] call print_str to:main::@7 main::@7: scope:[main] from main::@6 - [26] (byte) main::i#1 ? ++ (byte) main::i#2 + [26] (byte) main::i#1 ← ++ (byte) main::i#2 [27] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 to:main::@return main::@return: scope:[main] from main::@7 [28] return to:@return print_str: scope:[print_str] from main::@3 main::@6 - [29] (byte*) print_char_cursor#47 ? phi( main::@3/(byte*) print_char_cursor#45 main::@6/(byte*) print_char_cursor#10 ) - [29] (byte*) print_str::str#5 ? phi( main::@3/(const string) main::str1 main::@6/(const string) main::str ) + [29] (byte*) print_char_cursor#47 ← phi( main::@3/(byte*) print_char_cursor#45 main::@6/(byte*) print_char_cursor#10 ) + [29] (byte*) print_str::str#5 ← phi( main::@3/(const string) main::str1 main::@6/(const string) main::str ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [30] (byte*) print_char_cursor#2 ? phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) - [30] (byte*) print_str::str#3 ? phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) + [30] (byte*) print_char_cursor#2 ← phi( print_str/(byte*) print_char_cursor#47 print_str::@2/(byte*) print_char_cursor#1 ) + [30] (byte*) print_str::str#3 ← phi( print_str/(byte*) print_str::str#5 print_str::@2/(byte*) print_str::str#0 ) [31] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [32] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [33] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) - [34] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 - [35] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 + [33] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) + [34] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 + [35] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 to:print_str::@1 print_sbyte: scope:[print_sbyte] from main::@2 [36] if((signed byte) print_sbyte::b#1<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 @@ -2523,7 +2523,7 @@ print_sbyte::@3: scope:[print_sbyte] from print_sbyte [38] call print_char to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@3 print_sbyte::@4 - [39] (signed byte) print_sbyte::b#4 ? phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#1 ) + [39] (signed byte) print_sbyte::b#4 ← phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#1 ) [40] call print_byte to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@2 @@ -2534,25 +2534,25 @@ print_sbyte::@1: scope:[print_sbyte] from print_sbyte [43] call print_char to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@1 - [44] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 + [44] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 to:print_sbyte::@2 print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 - [45] (byte*) print_char_cursor#29 ? phi( print_byte/(byte*) print_char_cursor#10 print_byte::@1/(byte*) print_char_cursor#10 print_sbyte::@1/(byte*) print_char_cursor#44 print_sbyte::@3/(byte*) print_char_cursor#44 ) - [45] (byte) print_char::ch#4 ? phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' ) - [46] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 - [47] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 + [45] (byte*) print_char_cursor#29 ← phi( print_byte/(byte*) print_char_cursor#10 print_byte::@1/(byte*) print_char_cursor#10 print_sbyte::@1/(byte*) print_char_cursor#44 print_sbyte::@3/(byte*) print_char_cursor#44 ) + [45] (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' ) + [46] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 + [47] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 to:print_char::@return print_char::@return: scope:[print_char] from print_char [48] return to:@return print_byte: scope:[print_byte] from print_sbyte::@2 - [49] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [50] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [49] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [50] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [51] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [52] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f - [53] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [52] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f + [53] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [54] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 @@ -2562,9 +2562,9 @@ print_cls: scope:[print_cls] from main::@5 [56] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [57] (byte*) print_cls::sc#2 ? phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) - [58] *((byte*) print_cls::sc#2) ? (byte) ' ' - [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [57] (byte*) print_cls::sc#2 ← phi( print_cls/(const byte*) print_line_cursor#0 print_cls::@1/(byte*) print_cls::sc#1 ) + [58] *((byte*) print_cls::sc#2) ← (byte) ' ' + [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [60] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -2573,25 +2573,25 @@ print_cls::@return: scope:[print_cls] from print_cls::@1 sin16s_gen: scope:[sin16s_gen] from main::@4 [62] phi() [63] call div32u16u - [64] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + [64] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 to:sin16s_gen::@2 sin16s_gen::@2: scope:[sin16s_gen] from sin16s_gen - [65] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + [65] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 to:sin16s_gen::@1 sin16s_gen::@1: scope:[sin16s_gen] from sin16s_gen::@2 sin16s_gen::@3 - [66] (word) sin16s_gen::i#2 ? phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(word) sin16s_gen::i#1 ) - [66] (signed word*) sin16s_gen::sintab#2 ? phi( sin16s_gen::@2/(const signed word[$c0]) main::sintabw#0 sin16s_gen::@3/(signed word*) sin16s_gen::sintab#0 ) - [66] (dword) sin16s_gen::x#2 ? phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(dword) sin16s_gen::x#1 ) - [67] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 + [66] (word) sin16s_gen::i#2 ← phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(word) sin16s_gen::i#1 ) + [66] (signed word*) sin16s_gen::sintab#2 ← phi( sin16s_gen::@2/(const signed word[$c0]) main::sintabw#0 sin16s_gen::@3/(signed word*) sin16s_gen::sintab#0 ) + [66] (dword) sin16s_gen::x#2 ← phi( sin16s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s_gen::@3/(dword) sin16s_gen::x#1 ) + [67] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [68] call sin16s - [69] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + [69] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 to:sin16s_gen::@3 sin16s_gen::@3: scope:[sin16s_gen] from sin16s_gen::@1 - [70] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - [71] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 - [72] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 - [73] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 - [74] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 + [70] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + [71] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 + [72] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [73] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 + [74] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 [75] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 to:sin16s_gen::@return sin16s_gen::@return: scope:[sin16s_gen] from sin16s_gen::@3 @@ -2601,165 +2601,165 @@ sin16s: scope:[sin16s] from sin16s_gen::@1 [77] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 to:sin16s::@4 sin16s::@4: scope:[sin16s] from sin16s - [78] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 + [78] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 to:sin16s::@1 sin16s::@1: scope:[sin16s] from sin16s sin16s::@4 - [79] (byte) sin16s::isUpper#2 ? phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [79] (dword) sin16s::x#4 ? phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) + [79] (byte) sin16s::isUpper#2 ← phi( sin16s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [79] (dword) sin16s::x#4 ← phi( sin16s/(dword) sin16s::x#0 sin16s::@4/(dword) sin16s::x#1 ) [80] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 to:sin16s::@5 sin16s::@5: scope:[sin16s] from sin16s::@1 - [81] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 + [81] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 to:sin16s::@2 sin16s::@2: scope:[sin16s] from sin16s::@1 sin16s::@5 - [82] (dword) sin16s::x#6 ? phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) - [83] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [84] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 - [85] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 - [86] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 + [82] (dword) sin16s::x#6 ← phi( sin16s::@1/(dword) sin16s::x#4 sin16s::@5/(dword) sin16s::x#2 ) + [83] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [84] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 + [85] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 + [86] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [87] call mulu16_sel - [88] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + [88] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 to:sin16s::@7 sin16s::@7: scope:[sin16s] from sin16s::@2 - [89] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 - [90] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - [91] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 + [89] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 + [90] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + [91] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [92] call mulu16_sel - [93] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 + [93] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 to:sin16s::@8 sin16s::@8: scope:[sin16s] from sin16s::@7 - [94] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - [95] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + [94] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + [95] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [96] call mulu16_sel - [97] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + [97] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 to:sin16s::@9 sin16s::@9: scope:[sin16s] from sin16s::@8 - [98] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - [99] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 - [100] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - [101] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 + [98] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + [99] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 + [100] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + [101] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [102] call mulu16_sel - [103] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 + [103] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 to:sin16s::@10 sin16s::@10: scope:[sin16s] from sin16s::@9 - [104] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - [105] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - [106] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 + [104] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + [105] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + [106] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [107] call mulu16_sel - [108] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + [108] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 to:sin16s::@11 sin16s::@11: scope:[sin16s] from sin16s::@10 - [109] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - [110] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [111] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 + [109] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + [110] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [111] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [112] if((byte) sin16s::isUpper#2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin16s::@12 to:sin16s::@6 sin16s::@6: scope:[sin16s] from sin16s::@11 - [113] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 + [113] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 to:sin16s::@3 sin16s::@3: scope:[sin16s] from sin16s::@12 sin16s::@6 - [114] (signed word) sin16s::return#1 ? phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) + [114] (signed word) sin16s::return#1 ← phi( sin16s::@12/(signed word~) sin16s::return#5 sin16s::@6/(signed word) sin16s::sinx#1 ) to:sin16s::@return sin16s::@return: scope:[sin16s] from sin16s::@3 [115] return to:@return sin16s::@12: scope:[sin16s] from sin16s::@11 - [116] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + [116] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 to:sin16s::@3 mulu16_sel: scope:[mulu16_sel] from sin16s::@10 sin16s::@2 sin16s::@7 sin16s::@8 sin16s::@9 - [117] (byte) mulu16_sel::select#5 ? phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [117] (word) mulu16_sel::v2#5 ? phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) - [117] (word) mulu16_sel::v1#5 ? phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) - [118] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 - [119] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + [117] (byte) mulu16_sel::select#5 ← phi( sin16s::@9/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@10/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 1 sin16s::@8/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [117] (word) mulu16_sel::v2#5 ← phi( sin16s::@9/(word) mulu16_sel::v2#3 sin16s::@10/(word) mulu16_sel::v2#4 sin16s::@2/(word) mulu16_sel::v2#0 sin16s::@7/(word) mulu16_sel::v2#1 sin16s::@8/(dword/signed dword) $10000/(byte/signed byte/word/signed word/dword/signed dword) 6 ) + [117] (word) mulu16_sel::v1#5 ← phi( sin16s::@9/(word) mulu16_sel::v1#3 sin16s::@10/(word) mulu16_sel::v1#4 sin16s::@2/(word) mulu16_sel::v1#0 sin16s::@7/(word) mulu16_sel::v1#1 sin16s::@8/(word) mulu16_sel::v1#2 ) + [118] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 + [119] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 [120] call mul16u - [121] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + [121] (dword) mul16u::return#2 ← (dword) mul16u::res#2 to:mulu16_sel::@1 mulu16_sel::@1: scope:[mulu16_sel] from mulu16_sel - [122] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - [123] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 - [124] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 + [122] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + [123] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 + [124] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 to:mulu16_sel::@return mulu16_sel::@return: scope:[mulu16_sel] from mulu16_sel::@1 [125] return to:@return mul16u: scope:[mul16u] from mulu16_sel - [126] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 + [126] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@3 - [127] (dword) mul16u::mb#2 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) - [127] (dword) mul16u::res#2 ? phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) - [127] (word) mul16u::a#2 ? phi( mul16u/(word) mul16u::a#1 mul16u::@3/(word) mul16u::a#0 ) + [127] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) + [127] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) + [127] (word) mul16u::a#2 ← phi( mul16u/(word) mul16u::a#1 mul16u::@3/(word) mul16u::a#0 ) [128] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 to:mul16u::@return mul16u::@return: scope:[mul16u] from mul16u::@1 [129] return to:@return mul16u::@2: scope:[mul16u] from mul16u::@1 - [130] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [130] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [131] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 to:mul16u::@4 mul16u::@4: scope:[mul16u] from mul16u::@2 - [132] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 + [132] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 to:mul16u::@3 mul16u::@3: scope:[mul16u] from mul16u::@2 mul16u::@4 - [133] (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) - [134] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [135] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [133] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) + [134] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [135] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul16u::@1 div32u16u: scope:[div32u16u] from sin16s_gen [136] phi() [137] call divr16u - [138] (word) divr16u::return#3 ? (word) divr16u::return#0 + [138] (word) divr16u::return#3 ← (word) divr16u::return#0 to:div32u16u::@1 div32u16u::@1: scope:[div32u16u] from div32u16u - [139] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#3 - [140] (word) divr16u::rem#5 ? (word) rem16u#1 + [139] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#3 + [140] (word) divr16u::rem#5 ← (word) rem16u#1 [141] call divr16u - [142] (word) divr16u::return#4 ? (word) divr16u::return#0 + [142] (word) divr16u::return#4 ← (word) divr16u::return#0 to:div32u16u::@2 div32u16u::@2: scope:[div32u16u] from div32u16u::@1 - [143] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#4 - [144] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 + [143] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#4 + [144] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 to:div32u16u::@return div32u16u::@return: scope:[div32u16u] from div32u16u::@2 [145] return to:@return divr16u: scope:[divr16u] from div16u div32u16u div32u16u::@1 - [146] (word) divr16u::dividend#6 ? phi( div16u/(const word) PI2_u4f12#0 div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) - [146] (word) divr16u::rem#11 ? phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#5 ) + [146] (word) divr16u::dividend#6 ← phi( div16u/(const word) PI2_u4f12#0 div32u16u/>(const dword) PI2_u4f28#0 div32u16u::@1/<(const dword) PI2_u4f28#0 ) + [146] (word) divr16u::rem#11 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u/(byte/signed byte/word/signed word/dword/signed dword) 0 div32u16u::@1/(word) divr16u::rem#5 ) to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [147] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [147] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [147] (word) divr16u::dividend#4 ? phi( divr16u/(word) divr16u::dividend#6 divr16u::@3/(word) divr16u::dividend#0 ) - [147] (word) divr16u::rem#6 ? phi( divr16u/(word) divr16u::rem#11 divr16u::@3/(word) divr16u::rem#10 ) - [148] (word) divr16u::rem#0 ? (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [149] (byte~) divr16u::$1 ? > (word) divr16u::dividend#4 - [150] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [147] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [147] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [147] (word) divr16u::dividend#4 ← phi( divr16u/(word) divr16u::dividend#6 divr16u::@3/(word) divr16u::dividend#0 ) + [147] (word) divr16u::rem#6 ← phi( divr16u/(word) divr16u::rem#11 divr16u::@3/(word) divr16u::rem#10 ) + [148] (word) divr16u::rem#0 ← (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [149] (byte~) divr16u::$1 ← > (word) divr16u::dividend#4 + [150] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [151] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [152] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [152] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [153] (word) divr16u::rem#7 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [154] (word) divr16u::dividend#0 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [155] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [153] (word) divr16u::rem#7 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [154] (word) divr16u::dividend#0 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [155] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [156] if((word) divr16u::rem#7<(const word) main::wavelength#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [157] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [158] (word) divr16u::rem#2 ? (word) divr16u::rem#7 - (const word) main::wavelength#0 + [157] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [158] (word) divr16u::rem#2 ← (word) divr16u::rem#7 - (const word) main::wavelength#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [159] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [159] (word) divr16u::rem#10 ? phi( divr16u::@2/(word) divr16u::rem#7 divr16u::@5/(word) divr16u::rem#2 ) - [160] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [159] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [159] (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#7 divr16u::@5/(word) divr16u::rem#2 ) + [160] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [161] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [162] (word) rem16u#1 ? (word) divr16u::rem#10 + [162] (word) rem16u#1 ← (word) divr16u::rem#10 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [163] return @@ -2767,25 +2767,25 @@ divr16u::@return: scope:[divr16u] from divr16u::@6 sin8s_gen: scope:[sin8s_gen] from main [164] phi() [165] call div16u - [166] (word) div16u::return#2 ? (word) div16u::return#0 + [166] (word) div16u::return#2 ← (word) div16u::return#0 to:sin8s_gen::@2 sin8s_gen::@2: scope:[sin8s_gen] from sin8s_gen - [167] (word) sin8s_gen::step#0 ? (word) div16u::return#2 + [167] (word) sin8s_gen::step#0 ← (word) div16u::return#2 to:sin8s_gen::@1 sin8s_gen::@1: scope:[sin8s_gen] from sin8s_gen::@2 sin8s_gen::@3 - [168] (word) sin8s_gen::i#2 ? phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::i#1 ) - [168] (signed byte*) sin8s_gen::sintab#2 ? phi( sin8s_gen::@2/(const signed byte[$c0]) main::sintabb#0 sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#0 ) - [168] (word) sin8s_gen::x#2 ? phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::x#1 ) - [169] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 + [168] (word) sin8s_gen::i#2 ← phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::i#1 ) + [168] (signed byte*) sin8s_gen::sintab#2 ← phi( sin8s_gen::@2/(const signed byte[$c0]) main::sintabb#0 sin8s_gen::@3/(signed byte*) sin8s_gen::sintab#0 ) + [168] (word) sin8s_gen::x#2 ← phi( sin8s_gen::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s_gen::@3/(word) sin8s_gen::x#1 ) + [169] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 [170] call sin8s - [171] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 + [171] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 to:sin8s_gen::@3 sin8s_gen::@3: scope:[sin8s_gen] from sin8s_gen::@1 - [172] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 - [173] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 - [174] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 - [175] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 - [176] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 + [172] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 + [173] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 + [174] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 + [175] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 + [176] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 [177] if((word) sin8s_gen::i#1<(const word) main::wavelength#0) goto sin8s_gen::@1 to:sin8s_gen::@return sin8s_gen::@return: scope:[sin8s_gen] from sin8s_gen::@3 @@ -2795,126 +2795,126 @@ sin8s: scope:[sin8s] from sin8s_gen::@1 [179] if((word) sin8s::x#0<(const word) PI_u4f12#0) goto sin8s::@1 to:sin8s::@5 sin8s::@5: scope:[sin8s] from sin8s - [180] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 + [180] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 to:sin8s::@1 sin8s::@1: scope:[sin8s] from sin8s sin8s::@5 - [181] (byte) sin8s::isUpper#10 ? phi( sin8s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [181] (word) sin8s::x#4 ? phi( sin8s/(word) sin8s::x#0 sin8s::@5/(word) sin8s::x#1 ) + [181] (byte) sin8s::isUpper#10 ← phi( sin8s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [181] (word) sin8s::x#4 ← phi( sin8s/(word) sin8s::x#0 sin8s::@5/(word) sin8s::x#1 ) [182] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 to:sin8s::@6 sin8s::@6: scope:[sin8s] from sin8s::@1 - [183] (word) sin8s::x#2 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 + [183] (word) sin8s::x#2 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 to:sin8s::@2 sin8s::@2: scope:[sin8s] from sin8s::@1 sin8s::@6 - [184] (word) sin8s::x#6 ? phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) - [185] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [186] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 - [187] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 - [188] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 + [184] (word) sin8s::x#6 ← phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#2 ) + [185] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [186] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 + [187] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 + [188] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 [189] call mulu8_sel - [190] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + [190] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 to:sin8s::@9 sin8s::@9: scope:[sin8s] from sin8s::@2 - [191] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - [192] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 - [193] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 + [191] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + [192] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 + [193] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 [194] call mulu8_sel - [195] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + [195] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 to:sin8s::@10 sin8s::@10: scope:[sin8s] from sin8s::@9 - [196] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 - [197] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 + [196] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 + [197] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 [198] call mulu8_sel - [199] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + [199] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 to:sin8s::@11 sin8s::@11: scope:[sin8s] from sin8s::@10 - [200] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - [201] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 - [202] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 - [203] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 + [200] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + [201] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 + [202] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 + [203] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 [204] call mulu8_sel - [205] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + [205] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 to:sin8s::@12 sin8s::@12: scope:[sin8s] from sin8s::@11 - [206] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - [207] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 - [208] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 + [206] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + [207] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 + [208] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 [209] call mulu8_sel - [210] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + [210] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 to:sin8s::@13 sin8s::@13: scope:[sin8s] from sin8s::@12 - [211] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - [212] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [213] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 + [211] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + [212] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [213] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [214] if((byte) sin8s::usinx#1<(byte/word/signed word/dword/signed dword) $80) goto sin8s::@3 to:sin8s::@7 sin8s::@7: scope:[sin8s] from sin8s::@13 - [215] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 + [215] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 to:sin8s::@3 sin8s::@3: scope:[sin8s] from sin8s::@13 sin8s::@7 - [216] (byte) sin8s::usinx#4 ? phi( sin8s::@13/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) + [216] (byte) sin8s::usinx#4 ← phi( sin8s::@13/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) [217] if((byte) sin8s::isUpper#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin8s::@14 to:sin8s::@8 sin8s::@8: scope:[sin8s] from sin8s::@3 - [218] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 + [218] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 to:sin8s::@4 sin8s::@4: scope:[sin8s] from sin8s::@14 sin8s::@8 - [219] (signed byte) sin8s::return#1 ? phi( sin8s::@14/(signed byte~) sin8s::return#5 sin8s::@8/(signed byte) sin8s::sinx#1 ) + [219] (signed byte) sin8s::return#1 ← phi( sin8s::@14/(signed byte~) sin8s::return#5 sin8s::@8/(signed byte) sin8s::sinx#1 ) to:sin8s::@return sin8s::@return: scope:[sin8s] from sin8s::@4 [220] return to:@return sin8s::@14: scope:[sin8s] from sin8s::@3 - [221] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 + [221] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 to:sin8s::@4 mulu8_sel: scope:[mulu8_sel] from sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@2 sin8s::@9 - [222] (byte) mulu8_sel::select#5 ? phi( sin8s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@10/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [222] (byte) mulu8_sel::v2#5 ? phi( sin8s::@9/(byte) mulu8_sel::v2#1 sin8s::@10/(const byte) sin8s::DIV_6#0 sin8s::@11/(byte) mulu8_sel::v2#3 sin8s::@12/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) - [222] (byte) mulu8_sel::v1#5 ? phi( sin8s::@9/(byte) mulu8_sel::v1#1 sin8s::@10/(byte) mulu8_sel::v1#2 sin8s::@11/(byte) mulu8_sel::v1#3 sin8s::@12/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) - [223] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - [224] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 + [222] (byte) mulu8_sel::select#5 ← phi( sin8s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@10/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [222] (byte) mulu8_sel::v2#5 ← phi( sin8s::@9/(byte) mulu8_sel::v2#1 sin8s::@10/(const byte) sin8s::DIV_6#0 sin8s::@11/(byte) mulu8_sel::v2#3 sin8s::@12/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) + [222] (byte) mulu8_sel::v1#5 ← phi( sin8s::@9/(byte) mulu8_sel::v1#1 sin8s::@10/(byte) mulu8_sel::v1#2 sin8s::@11/(byte) mulu8_sel::v1#3 sin8s::@12/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) + [223] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + [224] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 [225] call mul8u - [226] (word) mul8u::return#2 ? (word) mul8u::res#2 + [226] (word) mul8u::return#2 ← (word) mul8u::res#2 to:mulu8_sel::@1 mulu8_sel::@1: scope:[mulu8_sel] from mulu8_sel - [227] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 - [228] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 - [229] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 + [227] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 + [228] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 + [229] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 to:mulu8_sel::@return mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@1 [230] return to:@return mul8u: scope:[mul8u] from mulu8_sel - [231] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 + [231] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@3 - [232] (word) mul8u::mb#2 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) - [232] (word) mul8u::res#2 ? phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) - [232] (byte) mul8u::a#2 ? phi( mul8u/(byte) mul8u::a#1 mul8u::@3/(byte) mul8u::a#0 ) + [232] (word) mul8u::mb#2 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) + [232] (word) mul8u::res#2 ← phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) + [232] (byte) mul8u::a#2 ← phi( mul8u/(byte) mul8u::a#1 mul8u::@3/(byte) mul8u::a#0 ) [233] if((byte) mul8u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 to:mul8u::@return mul8u::@return: scope:[mul8u] from mul8u::@1 [234] return to:@return mul8u::@2: scope:[mul8u] from mul8u::@1 - [235] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [235] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [236] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 to:mul8u::@4 mul8u::@4: scope:[mul8u] from mul8u::@2 - [237] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 + [237] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 to:mul8u::@3 mul8u::@3: scope:[mul8u] from mul8u::@2 mul8u::@4 - [238] (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) - [239] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [240] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [238] (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) + [239] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [240] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul8u::@1 div16u: scope:[div16u] from sin8s_gen [241] phi() [242] call divr16u - [243] (word) divr16u::return#2 ? (word) divr16u::return#0 + [243] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div16u::@1 div16u::@1: scope:[div16u] from div16u - [244] (word) div16u::return#0 ? (word) divr16u::return#2 + [244] (word) div16u::return#0 ← (word) divr16u::return#2 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@1 [245] return @@ -3615,23 +3615,23 @@ main: { jmp b1 //SEG27 main::@1 b1: - //SEG28 [11] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG28 [11] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda sintabb,y sta sb - //SEG29 [12] (word~) main::$3 ? ((word)) (byte) main::i#2 -- vwuz1=_word_vbuz2 + //SEG29 [12] (word~) main::$3 ← ((word)) (byte) main::i#2 -- vwuz1=_word_vbuz2 lda i sta _3 lda #0 sta _3+1 - //SEG30 [13] (word~) main::$4 ? (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 + //SEG30 [13] (word~) main::$4 ← (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz2_rol_1 lda _3 asl sta _4 lda _3+1 rol sta _4+1 - //SEG31 [14] (signed word*~) main::$5 ? (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 -- pwsz1=pwsc1_plus_vwuz2 + //SEG31 [14] (signed word*~) main::$5 ← (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 -- pwsz1=pwsc1_plus_vwuz2 lda _4 clc adc #sintabw sta _5+1 - //SEG32 [15] (signed word) main::sw#0 ? *((signed word*~) main::$5) -- vwsz1=_deref_pwsz2 + //SEG32 [15] (signed word) main::sw#0 ← *((signed word*~) main::$5) -- vwsz1=_deref_pwsz2 ldy #0 lda (_5),y sta sw iny lda (_5),y sta sw+1 - //SEG33 [16] (byte~) main::$6 ? > (signed word) main::sw#0 -- vbuz1=_hi_vwsz2 + //SEG33 [16] (byte~) main::$6 ← > (signed word) main::sw#0 -- vbuz1=_hi_vwsz2 lda sw+1 sta _6 - //SEG34 [17] (signed byte) main::sd#0 ? (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 -- vbsz1=vbsz2_minus_vbsz3 + //SEG34 [17] (signed byte) main::sd#0 ← (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 -- vbsz1=vbsz2_minus_vbsz3 lda sb sec sbc _6 @@ -3679,7 +3679,7 @@ main: { jmp b2 //SEG44 main::@2 b2: - //SEG45 [22] (signed byte) print_sbyte::b#1 ? (signed byte) main::sd#0 -- vbsz1=vbsz2 + //SEG45 [22] (signed byte) print_sbyte::b#1 ← (signed byte) main::sd#0 -- vbsz1=vbsz2 lda sd sta print_sbyte.b //SEG46 [23] call print_sbyte @@ -3702,7 +3702,7 @@ main: { jmp b7 //SEG53 main::@7 b7: - //SEG54 [26] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 + //SEG54 [26] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG55 [27] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$c0 @@ -3743,17 +3743,17 @@ print_str: { rts //SEG66 print_str::@2 b2: - //SEG67 [33] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG67 [33] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG68 [34] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG68 [34] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG69 [35] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG69 [35] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -3811,7 +3811,7 @@ print_sbyte: { jmp b4 //SEG90 print_sbyte::@4 b4: - //SEG91 [44] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG91 [44] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -3824,11 +3824,11 @@ print_sbyte: { // print_char(byte zeropage(6) ch) print_char: { .label ch = 6 - //SEG93 [46] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuz2 + //SEG93 [46] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG94 [47] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 + //SEG94 [47] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -3844,14 +3844,14 @@ print_char: { print_byte: { .label _0 = $4e .label _2 = $4f - //SEG98 [49] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG98 [49] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda print_sbyte.b lsr lsr lsr lsr sta _0 - //SEG99 [50] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG99 [50] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -3864,11 +3864,11 @@ print_byte: { jmp b1 //SEG104 print_byte::@1 b1: - //SEG105 [52] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG105 [52] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and print_sbyte.b sta _2 - //SEG106 [53] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG106 [53] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -3902,11 +3902,11 @@ print_cls: { jmp b1 //SEG118 print_cls::@1 b1: - //SEG119 [58] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG119 [58] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG120 [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG120 [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -3939,7 +3939,7 @@ sin16s_gen: { //SEG126 [136] phi from sin16s_gen to div32u16u [phi:sin16s_gen->div32u16u] div32u16u_from_sin16s_gen: jsr div32u16u - //SEG127 [64] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 -- vduz1=vduz2 + //SEG127 [64] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 -- vduz1=vduz2 lda div32u16u.return sta div32u16u.return_2 lda div32u16u.return+1 @@ -3951,7 +3951,7 @@ sin16s_gen: { jmp b2 //SEG128 sin16s_gen::@2 b2: - //SEG129 [65] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 -- vduz1=vduz2 + //SEG129 [65] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 -- vduz1=vduz2 lda div32u16u.return_2 sta step lda div32u16u.return_2+1 @@ -3989,7 +3989,7 @@ sin16s_gen: { jmp b1 //SEG138 sin16s_gen::@1 b1: - //SEG139 [67] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG139 [67] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -4000,7 +4000,7 @@ sin16s_gen: { sta sin16s.x+3 //SEG140 [68] call sin16s jsr sin16s - //SEG141 [69] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 -- vwsz1=vwsz2 + //SEG141 [69] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 -- vwsz1=vwsz2 lda sin16s.return_1 sta sin16s.return lda sin16s.return_1+1 @@ -4008,19 +4008,19 @@ sin16s_gen: { jmp b3 //SEG142 sin16s_gen::@3 b3: - //SEG143 [70] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 -- vwsz1=vwsz2 + //SEG143 [70] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 -- vwsz1=vwsz2 lda sin16s.return sta _1 lda sin16s.return+1 sta _1+1 - //SEG144 [71] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG144 [71] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG145 [72] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG145 [72] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -4028,7 +4028,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG146 [73] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG146 [73] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -4042,7 +4042,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG147 [74] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG147 [74] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4104,7 +4104,7 @@ sin16s: { jmp b4 //SEG153 sin16s::@4 b4: - //SEG154 [78] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG154 [78] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG169 [84] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG170 [85] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG170 [85] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG171 [86] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG171 [86] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4216,7 +4216,7 @@ sin16s: { //SEG175 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG176 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG177 [88] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG177 [88] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return lda mulu16_sel.return_12+1 @@ -4224,17 +4224,17 @@ sin16s: { jmp b7 //SEG178 sin16s::@7 b7: - //SEG179 [89] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG179 [89] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG180 [90] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 -- vwuz1=vwuz2 + //SEG180 [90] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 -- vwuz1=vwuz2 lda x2 sta mulu16_sel.v1 lda x2+1 sta mulu16_sel.v1+1 - //SEG181 [91] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG181 [91] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4248,7 +4248,7 @@ sin16s: { //SEG185 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG186 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG187 [93] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG187 [93] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_1 lda mulu16_sel.return_12+1 @@ -4256,12 +4256,12 @@ sin16s: { jmp b8 //SEG188 sin16s::@8 b8: - //SEG189 [94] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 -- vwuz1=vwuz2 + //SEG189 [94] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 -- vwuz1=vwuz2 lda mulu16_sel.return_1 sta x3 lda mulu16_sel.return_1+1 sta x3+1 - //SEG190 [95] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG190 [95] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 @@ -4279,7 +4279,7 @@ sin16s: { sta mulu16_sel.v2+1 //SEG195 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG196 [97] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG196 [97] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_2 lda mulu16_sel.return_12+1 @@ -4287,12 +4287,12 @@ sin16s: { jmp b9 //SEG197 sin16s::@9 b9: - //SEG198 [98] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 -- vwuz1=vwuz2 + //SEG198 [98] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 -- vwuz1=vwuz2 lda mulu16_sel.return_2 sta x3_6 lda mulu16_sel.return_2+1 sta x3_6+1 - //SEG199 [99] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG199 [99] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -4300,12 +4300,12 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG200 [100] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 -- vwuz1=vwuz2 + //SEG200 [100] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 -- vwuz1=vwuz2 lda x3 sta mulu16_sel.v1 lda x3+1 sta mulu16_sel.v1+1 - //SEG201 [101] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG201 [101] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4319,7 +4319,7 @@ sin16s: { //SEG205 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG206 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG207 [103] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG207 [103] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_10 lda mulu16_sel.return_12+1 @@ -4327,17 +4327,17 @@ sin16s: { jmp b10 //SEG208 sin16s::@10 b10: - //SEG209 [104] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 -- vwuz1=vwuz2 + //SEG209 [104] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 -- vwuz1=vwuz2 lda mulu16_sel.return_10 sta x4 lda mulu16_sel.return_10+1 sta x4+1 - //SEG210 [105] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 -- vwuz1=vwuz2 + //SEG210 [105] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 -- vwuz1=vwuz2 lda x4 sta mulu16_sel.v1 lda x4+1 sta mulu16_sel.v1+1 - //SEG211 [106] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG211 [106] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -4351,7 +4351,7 @@ sin16s: { //SEG215 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG216 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG217 [108] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG217 [108] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return_12 sta mulu16_sel.return_11 lda mulu16_sel.return_12+1 @@ -4359,12 +4359,12 @@ sin16s: { jmp b11 //SEG218 sin16s::@11 b11: - //SEG219 [109] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 -- vwuz1=vwuz2 + //SEG219 [109] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 -- vwuz1=vwuz2 lda mulu16_sel.return_11 sta x5 lda mulu16_sel.return_11+1 sta x5+1 - //SEG220 [110] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 + //SEG220 [110] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz2_ror_4 lda x5+1 sta x5_128+1 lda x5 @@ -4375,7 +4375,7 @@ sin16s: { ror x5_128 dey bne !- - //SEG221 [111] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 + //SEG221 [111] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz2_plus_vwuz3 lda usinx clc adc x5_128 @@ -4390,7 +4390,7 @@ sin16s: { jmp b6 //SEG223 sin16s::@6 b6: - //SEG224 [113] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 + //SEG224 [113] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz2 sec lda usinx_1 eor #$ff @@ -4414,7 +4414,7 @@ sin16s: { rts //SEG230 sin16s::@12 b12: - //SEG231 [116] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 + //SEG231 [116] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 -- vwsz1=vwsz2 lda usinx_1 sta return_5 lda usinx_1+1 @@ -4437,19 +4437,19 @@ mulu16_sel: { .label return_11 = $74 .label select = $1e .label return_12 = $8a - //SEG233 [118] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG233 [118] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG234 [119] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 + //SEG234 [119] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 -- vwuz1=vwuz2 lda v2 sta mul16u.b lda v2+1 sta mul16u.b+1 //SEG235 [120] call mul16u jsr mul16u - //SEG236 [121] (dword) mul16u::return#2 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG236 [121] (dword) mul16u::return#2 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return lda mul16u.res+1 @@ -4461,7 +4461,7 @@ mulu16_sel: { jmp b1 //SEG237 mulu16_sel::@1 b1: - //SEG238 [122] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 -- vduz1=vduz2 + //SEG238 [122] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 -- vduz1=vduz2 lda mul16u.return sta _0 lda mul16u.return+1 @@ -4470,7 +4470,7 @@ mulu16_sel: { sta _0+2 lda mul16u.return+3 sta _0+3 - //SEG239 [123] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 + //SEG239 [123] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -4489,7 +4489,7 @@ mulu16_sel: { dex bne !- !e: - //SEG240 [124] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG240 [124] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return_12 lda _1+3 @@ -4510,7 +4510,7 @@ mul16u: { .label res = $21 .label b = $7c .label return = $7e - //SEG244 [126] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG244 [126] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -4544,7 +4544,7 @@ mul16u: { rts //SEG253 mul16u::@2 b2: - //SEG254 [130] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 + //SEG254 [130] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 lda a and #1 sta _1 @@ -4555,7 +4555,7 @@ mul16u: { jmp b4 //SEG256 mul16u::@4 b4: - //SEG257 [132] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG257 [132] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -4576,11 +4576,11 @@ mul16u: { jmp b3 //SEG260 mul16u::@3 b3: - //SEG261 [134] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG261 [134] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG262 [135] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG262 [135] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -4614,7 +4614,7 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG272 [138] (word) divr16u::return#3 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG272 [138] (word) divr16u::return#3 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_3 lda divr16u.return+1 @@ -4622,12 +4622,12 @@ div32u16u: { jmp b1 //SEG273 div32u16u::@1 b1: - //SEG274 [139] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG274 [139] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return_3 sta quotient_hi lda divr16u.return_3+1 sta quotient_hi+1 - //SEG275 [140] (word) divr16u::rem#5 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG275 [140] (word) divr16u::rem#5 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta divr16u.rem lda rem16u+1 @@ -4642,7 +4642,7 @@ div32u16u: { sta divr16u.dividend+1 //SEG279 [146] phi (word) divr16u::rem#11 = (word) divr16u::rem#5 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG280 [142] (word) divr16u::return#4 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG280 [142] (word) divr16u::return#4 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_4 lda divr16u.return+1 @@ -4650,12 +4650,12 @@ div32u16u: { jmp b2 //SEG281 div32u16u::@2 b2: - //SEG282 [143] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#4 -- vwuz1=vwuz2 + //SEG282 [143] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#4 -- vwuz1=vwuz2 lda divr16u.return_4 sta quotient_lo lda divr16u.return_4+1 sta quotient_lo+1 - //SEG283 [144] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG283 [144] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -4709,13 +4709,13 @@ divr16u: { jmp b1 //SEG297 divr16u::@1 b1: - //SEG298 [148] (word) divr16u::rem#0 ? (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG298 [148] (word) divr16u::rem#0 ← (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG299 [149] (byte~) divr16u::$1 ? > (word) divr16u::dividend#4 -- vbuz1=_hi_vwuz2 + //SEG299 [149] (byte~) divr16u::$1 ← > (word) divr16u::dividend#4 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG300 [150] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG300 [150] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -4726,7 +4726,7 @@ divr16u: { jmp b4 //SEG302 divr16u::@4 b4: - //SEG303 [152] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG303 [152] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -4737,10 +4737,10 @@ divr16u: { jmp b2 //SEG306 divr16u::@2 b2: - //SEG307 [154] (word) divr16u::dividend#0 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG307 [154] (word) divr16u::dividend#0 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG308 [155] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG308 [155] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG309 [156] if((word) divr16u::rem#7<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -4755,12 +4755,12 @@ divr16u: { jmp b5 //SEG310 divr16u::@5 b5: - //SEG311 [157] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG311 [157] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG312 [158] (word) divr16u::rem#2 ? (word) divr16u::rem#7 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG312 [158] (word) divr16u::rem#2 ← (word) divr16u::rem#7 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #div16u] div16u_from_sin8s_gen: jsr div16u - //SEG326 [166] (word) div16u::return#2 ? (word) div16u::return#0 -- vwuz1=vwuz2 + //SEG326 [166] (word) div16u::return#2 ← (word) div16u::return#0 -- vwuz1=vwuz2 lda div16u.return sta div16u.return_2 lda div16u.return+1 @@ -4819,7 +4819,7 @@ sin8s_gen: { jmp b2 //SEG327 sin8s_gen::@2 b2: - //SEG328 [167] (word) sin8s_gen::step#0 ? (word) div16u::return#2 -- vwuz1=vwuz2 + //SEG328 [167] (word) sin8s_gen::step#0 ← (word) div16u::return#2 -- vwuz1=vwuz2 lda div16u.return_2 sta step lda div16u.return_2+1 @@ -4851,32 +4851,32 @@ sin8s_gen: { jmp b1 //SEG337 sin8s_gen::@1 b1: - //SEG338 [169] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 -- vwuz1=vwuz2 + //SEG338 [169] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG339 [170] call sin8s jsr sin8s - //SEG340 [171] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 -- vbsz1=vbsz2 + //SEG340 [171] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 -- vbsz1=vbsz2 lda sin8s.return_1 sta sin8s.return jmp b3 //SEG341 sin8s_gen::@3 b3: - //SEG342 [172] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 -- vbsz1=vbsz2 + //SEG342 [172] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 -- vbsz1=vbsz2 lda sin8s.return sta _1 - //SEG343 [173] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsz2 + //SEG343 [173] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsz2 lda _1 ldy #0 sta (sintab),y - //SEG344 [174] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 + //SEG344 [174] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 inc sintab bne !+ inc sintab+1 !: - //SEG345 [175] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG345 [175] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -4884,7 +4884,7 @@ sin8s_gen: { lda x+1 adc step+1 sta x+1 - //SEG346 [176] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG346 [176] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4942,7 +4942,7 @@ sin8s: { jmp b5 //SEG352 sin8s::@5 b5: - //SEG353 [180] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG353 [180] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc # (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG368 [186] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG369 [187] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG369 [187] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v1 - //SEG370 [188] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG370 [188] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG371 [189] call mulu8_sel @@ -5022,19 +5022,19 @@ sin8s: { //SEG374 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG375 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG376 [190] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG376 [190] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return jmp b9 //SEG377 sin8s::@9 b9: - //SEG378 [191] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 -- vbuz1=vbuz2 + //SEG378 [191] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 -- vbuz1=vbuz2 lda mulu8_sel.return sta x2 - //SEG379 [192] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuz1=vbuz2 + //SEG379 [192] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuz1=vbuz2 lda x2 sta mulu8_sel.v1 - //SEG380 [193] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG380 [193] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG381 [194] call mulu8_sel @@ -5046,16 +5046,16 @@ sin8s: { //SEG384 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG385 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG386 [195] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG386 [195] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_1 jmp b10 //SEG387 sin8s::@10 b10: - //SEG388 [196] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuz2 + //SEG388 [196] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuz2 lda mulu8_sel.return_1 sta x3 - //SEG389 [197] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuz1=vbuz2 + //SEG389 [197] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuz1=vbuz2 lda x3 sta mulu8_sel.v1 //SEG390 [198] call mulu8_sel @@ -5069,24 +5069,24 @@ sin8s: { sta mulu8_sel.v2 //SEG394 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG395 [199] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG395 [199] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_2 jmp b11 //SEG396 sin8s::@11 b11: - //SEG397 [200] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 -- vbuz1=vbuz2 + //SEG397 [200] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 -- vbuz1=vbuz2 lda mulu8_sel.return_2 sta x3_6 - //SEG398 [201] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG398 [201] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x3_6 sta usinx - //SEG399 [202] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuz1=vbuz2 + //SEG399 [202] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuz1=vbuz2 lda x3 sta mulu8_sel.v1 - //SEG400 [203] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG400 [203] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG401 [204] call mulu8_sel @@ -5098,19 +5098,19 @@ sin8s: { //SEG404 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG405 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG406 [205] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG406 [205] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_10 jmp b12 //SEG407 sin8s::@12 b12: - //SEG408 [206] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 -- vbuz1=vbuz2 + //SEG408 [206] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 -- vbuz1=vbuz2 lda mulu8_sel.return_10 sta x4 - //SEG409 [207] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuz1=vbuz2 + //SEG409 [207] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuz1=vbuz2 lda x4 sta mulu8_sel.v1 - //SEG410 [208] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG410 [208] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG411 [209] call mulu8_sel @@ -5122,23 +5122,23 @@ sin8s: { //SEG414 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG415 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG416 [210] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG416 [210] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_11 jmp b13 //SEG417 sin8s::@13 b13: - //SEG418 [211] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 -- vbuz1=vbuz2 + //SEG418 [211] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 -- vbuz1=vbuz2 lda mulu8_sel.return_11 sta x5 - //SEG419 [212] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG419 [212] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda x5 lsr lsr lsr lsr sta x5_128 - //SEG420 [213] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuz1=vbuz2_plus_vbuz3 + //SEG420 [213] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuz1=vbuz2_plus_vbuz3 lda usinx clc adc x5_128 @@ -5150,7 +5150,7 @@ sin8s: { jmp b7 //SEG422 sin8s::@7 b7: - //SEG423 [215] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuz1=_dec_vbuz1 + //SEG423 [215] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuz1=_dec_vbuz1 dec usinx_2 //SEG424 [216] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] b3_from_b13: @@ -5166,7 +5166,7 @@ sin8s: { jmp b8 //SEG428 sin8s::@8 b8: - //SEG429 [218] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsz1=_neg_vbsz2 + //SEG429 [218] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsz1=_neg_vbsz2 lda usinx_4 eor #$ff clc @@ -5186,7 +5186,7 @@ sin8s: { rts //SEG435 sin8s::@14 b14: - //SEG436 [221] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsz1=vbsz2 + //SEG436 [221] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsz1=vbsz2 lda usinx_4 sta return_5 jmp b4_from_b14 @@ -5207,15 +5207,15 @@ mulu8_sel: { .label return_11 = $af .label select = $3d .label return_12 = $b9 - //SEG438 [223] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 -- vbuz1=vbuz2 + //SEG438 [223] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 -- vbuz1=vbuz2 lda v1 sta mul8u.a - //SEG439 [224] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 -- vbuz1=vbuz2 + //SEG439 [224] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 -- vbuz1=vbuz2 lda v2 sta mul8u.b //SEG440 [225] call mul8u jsr mul8u - //SEG441 [226] (word) mul8u::return#2 ? (word) mul8u::res#2 -- vwuz1=vwuz2 + //SEG441 [226] (word) mul8u::return#2 ← (word) mul8u::res#2 -- vwuz1=vwuz2 lda mul8u.res sta mul8u.return lda mul8u.res+1 @@ -5223,12 +5223,12 @@ mulu8_sel: { jmp b1 //SEG442 mulu8_sel::@1 b1: - //SEG443 [227] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 -- vwuz1=vwuz2 + //SEG443 [227] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 -- vwuz1=vwuz2 lda mul8u.return sta _0 lda mul8u.return+1 sta _0+1 - //SEG444 [228] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz2_rol_vbuz3 + //SEG444 [228] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -5241,7 +5241,7 @@ mulu8_sel: { dey bne !- !e: - //SEG445 [229] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuz1=_hi_vwuz2 + //SEG445 [229] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuz1=_hi_vwuz2 lda _1+1 sta return_12 jmp breturn @@ -5260,7 +5260,7 @@ mul8u: { .label res = $3f .label b = $b2 .label return = $b3 - //SEG449 [231] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuz2 + //SEG449 [231] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuz2 lda b sta mb lda #0 @@ -5288,7 +5288,7 @@ mul8u: { rts //SEG458 mul8u::@2 b2: - //SEG459 [235] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 + //SEG459 [235] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 lda #1 and a sta _1 @@ -5299,7 +5299,7 @@ mul8u: { jmp b4 //SEG461 mul8u::@4 b4: - //SEG462 [237] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG462 [237] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -5314,9 +5314,9 @@ mul8u: { jmp b3 //SEG465 mul8u::@3 b3: - //SEG466 [239] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG466 [239] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr a - //SEG467 [240] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG467 [240] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG468 [232] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -5348,7 +5348,7 @@ div16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG477 [243] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG477 [243] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -5356,7 +5356,7 @@ div16u: { jmp b1 //SEG478 div16u::@1 b1: - //SEG479 [244] (word) div16u::return#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG479 [244] (word) div16u::return#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta return lda divr16u.return_2+1 @@ -5370,222 +5370,222 @@ div16u: { print_hextab: .text "0123456789abcdef" REGISTER UPLIFT POTENTIAL REGISTERS -Statement [12] (word~) main::$3 ? ((word)) (byte) main::i#2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ) always clobbers reg byte a +Statement [12] (word~) main::$3 ← ((word)) (byte) main::i#2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:67 [ main::sb#0 ] -Statement [13] (word~) main::$4 ? (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ) always clobbers reg byte a -Statement [14] (signed word*~) main::$5 ? (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ) always clobbers reg byte a -Statement [15] (signed word) main::sw#0 ? *((signed word*~) main::$5) [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ) always clobbers reg byte a reg byte y +Statement [13] (word~) main::$4 ← (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ) always clobbers reg byte a +Statement [14] (signed word*~) main::$5 ← (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ) always clobbers reg byte a +Statement [15] (signed word) main::sw#0 ← *((signed word*~) main::$5) [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ main::i#2 main::i#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:67 [ main::sb#0 ] -Statement [16] (byte~) main::$6 ? > (signed word) main::sw#0 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ) always clobbers reg byte a -Statement [17] (signed byte) main::sd#0 ? (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 [ main::i#2 print_char_cursor#45 main::sd#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sd#0 ] ) always clobbers reg byte a +Statement [16] (byte~) main::$6 ← > (signed word) main::sw#0 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ) always clobbers reg byte a +Statement [17] (signed byte) main::sd#0 ← (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 [ main::i#2 print_char_cursor#45 main::sd#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sd#0 ] ) always clobbers reg byte a Statement [31] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:20 [ main::i#2 main::sd#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:25 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:77 [ main::sd#0 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:77 [ main::sd#0 ] -Statement [33] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:20 [ main::i#2 main::sd#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:25 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [44] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 [ print_char_cursor#10 print_sbyte::b#0 ] ( main:2::print_sbyte:23 [ main::i#2 print_char_cursor#10 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [46] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 [ print_char_cursor#29 ] ( main:2::print_sbyte:23::print_char:38 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_char:43 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:51 [ main::i#2 print_sbyte::b#4 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:54 [ main::i#2 print_char_cursor#29 ] ) always clobbers reg byte y +Statement [33] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:20 [ main::i#2 main::sd#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:25 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y +Statement [44] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 [ print_char_cursor#10 print_sbyte::b#0 ] ( main:2::print_sbyte:23 [ main::i#2 print_char_cursor#10 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [46] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 [ print_char_cursor#29 ] ( main:2::print_sbyte:23::print_char:38 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_char:43 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:51 [ main::i#2 print_sbyte::b#4 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:54 [ main::i#2 print_char_cursor#29 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:5 [ print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 ] -Statement [49] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a +Statement [49] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 ] -Statement [52] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a -Statement [58] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [52] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a +Statement [58] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [60] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:9 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [64] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:7 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [65] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 ] ) always clobbers reg byte a -Statement [67] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [69] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [70] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a -Statement [71] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y -Statement [72] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a -Statement [73] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [64] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:7 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [65] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 ] ) always clobbers reg byte a +Statement [67] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [69] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [70] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a +Statement [71] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y +Statement [72] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [73] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a Statement [75] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ) always clobbers reg byte a Statement [77] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [78] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [78] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [80] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:19 [ sin16s::isUpper#2 ] -Statement [81] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [83] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [81] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [83] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:19 [ sin16s::isUpper#2 ] -Statement [84] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [85] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [86] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [88] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [89] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [90] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [91] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [93] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [94] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [95] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [97] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [98] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [99] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [100] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [101] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [103] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [104] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [105] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [106] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [108] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [109] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [110] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [111] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [113] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [116] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [118] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a +Statement [84] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [85] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [86] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [88] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [89] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [90] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [91] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [93] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [94] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [95] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [97] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [98] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [99] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [100] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [101] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [103] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [104] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [105] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [106] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [108] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [109] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [110] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [111] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [113] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [116] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [118] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ mulu16_sel::select#5 ] -Statement [119] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a -Statement [121] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a -Statement [122] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [123] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [124] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [126] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [119] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a +Statement [121] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a +Statement [122] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [123] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [124] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [126] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a Statement [128] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [130] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [132] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a -Statement [138] (word) divr16u::return#3 ? (word) divr16u::return#0 [ divr16u::return#3 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a -Statement [139] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [140] (word) divr16u::rem#5 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ) always clobbers reg byte a -Statement [142] (word) divr16u::return#4 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ) always clobbers reg byte a -Statement [143] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#4 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [144] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [149] (byte~) divr16u::$1 ? > (word) divr16u::dividend#4 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [130] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [132] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [138] (word) divr16u::return#3 ← (word) divr16u::return#0 [ divr16u::return#3 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a +Statement [139] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [140] (word) divr16u::rem#5 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ) always clobbers reg byte a +Statement [142] (word) divr16u::return#4 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ) always clobbers reg byte a +Statement [143] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#4 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [144] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [149] (byte~) divr16u::$1 ← > (word) divr16u::dividend#4 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:47 [ divr16u::i#2 divr16u::i#1 ] -Statement [152] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [152] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [156] if((word) divr16u::rem#7<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [158] (word) divr16u::rem#2 ? (word) divr16u::rem#7 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [162] (word) rem16u#1 ? (word) divr16u::rem#10 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [166] (word) div16u::return#2 ? (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a -Statement [167] (word) sin8s_gen::step#0 ? (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a -Statement [169] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [173] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y -Statement [175] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [158] (word) divr16u::rem#2 ← (word) divr16u::rem#7 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [162] (word) rem16u#1 ← (word) divr16u::rem#10 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [166] (word) div16u::return#2 ← (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a +Statement [167] (word) sin8s_gen::step#0 ← (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a +Statement [169] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a +Statement [173] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y +Statement [175] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a Statement [177] if((word) sin8s_gen::i#1<(const word) main::wavelength#0) goto sin8s_gen::@1 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ) always clobbers reg byte a Statement [179] if((word) sin8s::x#0<(const word) PI_u4f12#0) goto sin8s::@1 [ sin8s::x#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [180] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a +Statement [180] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a Statement [182] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 [ sin8s::x#4 sin8s::isUpper#10 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#4 sin8s::isUpper#10 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:54 [ sin8s::isUpper#10 ] -Statement [183] (word) sin8s::x#2 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a -Statement [185] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a -Statement [186] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a -Statement [201] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a +Statement [183] (word) sin8s::x#2 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a +Statement [185] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a +Statement [186] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a +Statement [201] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:165 [ sin8s::x1#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:169 [ sin8s::x3#0 ] -Statement [212] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a +Statement [212] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:172 [ sin8s::usinx#0 ] -Statement [213] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a -Statement [218] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a -Statement [226] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a +Statement [213] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a +Statement [218] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a +Statement [226] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:61 [ mulu8_sel::select#5 ] -Statement [227] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a -Statement [228] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a -Statement [229] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a -Statement [231] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [227] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a +Statement [228] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a +Statement [229] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a +Statement [231] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:62 [ mul8u::a#2 mul8u::a#1 mul8u::a#0 ] -Statement [235] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [237] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a -Statement [243] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:165 [ divr16u::return#2 ] ) always clobbers reg byte a -Statement [244] (word) div16u::return#0 ? (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:165 [ div16u::return#0 ] ) always clobbers reg byte a -Statement [12] (word~) main::$3 ? ((word)) (byte) main::i#2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ) always clobbers reg byte a -Statement [13] (word~) main::$4 ? (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ) always clobbers reg byte a -Statement [14] (signed word*~) main::$5 ? (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ) always clobbers reg byte a -Statement [15] (signed word) main::sw#0 ? *((signed word*~) main::$5) [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ) always clobbers reg byte a reg byte y -Statement [16] (byte~) main::$6 ? > (signed word) main::sw#0 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ) always clobbers reg byte a -Statement [17] (signed byte) main::sd#0 ? (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 [ main::i#2 print_char_cursor#45 main::sd#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sd#0 ] ) always clobbers reg byte a +Statement [235] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [237] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [243] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:165 [ divr16u::return#2 ] ) always clobbers reg byte a +Statement [244] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:165 [ div16u::return#0 ] ) always clobbers reg byte a +Statement [12] (word~) main::$3 ← ((word)) (byte) main::i#2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$3 ] ) always clobbers reg byte a +Statement [13] (word~) main::$4 ← (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$4 ] ) always clobbers reg byte a +Statement [14] (signed word*~) main::$5 ← (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$5 ] ) always clobbers reg byte a +Statement [15] (signed word) main::sw#0 ← *((signed word*~) main::$5) [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::sw#0 ] ) always clobbers reg byte a reg byte y +Statement [16] (byte~) main::$6 ← > (signed word) main::sw#0 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sb#0 main::$6 ] ) always clobbers reg byte a +Statement [17] (signed byte) main::sd#0 ← (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 [ main::i#2 print_char_cursor#45 main::sd#0 ] ( main:2 [ main::i#2 print_char_cursor#45 main::sd#0 ] ) always clobbers reg byte a Statement [31] if(*((byte*) print_str::str#3)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:20 [ main::i#2 main::sd#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:25 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [33] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:20 [ main::i#2 main::sd#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:25 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y -Statement [44] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 [ print_char_cursor#10 print_sbyte::b#0 ] ( main:2::print_sbyte:23 [ main::i#2 print_char_cursor#10 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [46] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 [ print_char_cursor#29 ] ( main:2::print_sbyte:23::print_char:38 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_char:43 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:51 [ main::i#2 print_sbyte::b#4 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:54 [ main::i#2 print_char_cursor#29 ] ) always clobbers reg byte y -Statement [49] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a -Statement [52] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a -Statement [58] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [33] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) [ print_char_cursor#2 print_str::str#3 ] ( main:2::print_str:20 [ main::i#2 main::sd#0 print_char_cursor#2 print_str::str#3 ] main:2::print_str:25 [ main::i#2 print_char_cursor#2 print_str::str#3 ] ) always clobbers reg byte a reg byte y +Statement [44] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 [ print_char_cursor#10 print_sbyte::b#0 ] ( main:2::print_sbyte:23 [ main::i#2 print_char_cursor#10 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [46] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 [ print_char_cursor#29 ] ( main:2::print_sbyte:23::print_char:38 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_char:43 [ main::i#2 print_sbyte::b#1 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:51 [ main::i#2 print_sbyte::b#4 print_char_cursor#29 ] main:2::print_sbyte:23::print_byte:40::print_char:54 [ main::i#2 print_char_cursor#29 ] ) always clobbers reg byte y +Statement [49] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_sbyte::b#4 print_byte::$0 ] ) always clobbers reg byte a +Statement [52] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#10 print_byte::$2 ] ( main:2::print_sbyte:23::print_byte:40 [ main::i#2 print_char_cursor#10 print_byte::$2 ] ) always clobbers reg byte a +Statement [58] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:9 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [60] if((byte*) print_cls::sc#1!=(const byte*) print_line_cursor#0+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:9 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [64] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:7 [ div32u16u::return#2 ] ) always clobbers reg byte a -Statement [65] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 ] ) always clobbers reg byte a -Statement [67] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [69] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a -Statement [70] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a -Statement [71] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y -Statement [72] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a -Statement [73] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [64] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 [ div32u16u::return#2 ] ( main:2::sin16s_gen:7 [ div32u16u::return#2 ] ) always clobbers reg byte a +Statement [65] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 [ sin16s_gen::step#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 ] ) always clobbers reg byte a +Statement [67] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a +Statement [69] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#0 ] ) always clobbers reg byte a +Statement [70] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s_gen::$1 ] ) always clobbers reg byte a +Statement [71] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 ] ) always clobbers reg byte a reg byte y +Statement [72] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::i#2 sin16s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [73] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::i#2 sin16s_gen::x#1 sin16s_gen::sintab#0 ] ) always clobbers reg byte a Statement [75] if((word) sin16s_gen::i#1<(const word) main::wavelength#0) goto sin16s_gen::@1 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ( main:2::sin16s_gen:7 [ sin16s_gen::step#0 sin16s_gen::x#1 sin16s_gen::sintab#0 sin16s_gen::i#1 ] ) always clobbers reg byte a Statement [77] if((dword) sin16s::x#0<(const dword) PI_u4f28#0) goto sin16s::@1 [ sin16s::x#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#0 ] ) always clobbers reg byte a -Statement [78] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a +Statement [78] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 [ sin16s::x#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#1 ] ) always clobbers reg byte a Statement [80] if((dword) sin16s::x#4<(const dword) PI_HALF_u4f28#0) goto sin16s::@2 [ sin16s::x#4 sin16s::isUpper#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::x#4 sin16s::isUpper#2 ] ) always clobbers reg byte a -Statement [81] (dword) sin16s::x#2 ? (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a -Statement [83] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y -Statement [84] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a -Statement [85] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a -Statement [86] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a -Statement [88] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a -Statement [89] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a -Statement [90] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a -Statement [91] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a -Statement [93] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a -Statement [94] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a -Statement [95] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a -Statement [97] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a -Statement [98] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a -Statement [99] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a -Statement [100] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a -Statement [101] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a -Statement [103] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a -Statement [104] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a -Statement [105] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a -Statement [106] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a -Statement [108] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a -Statement [109] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a -Statement [110] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y -Statement [111] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a -Statement [113] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a -Statement [116] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a -Statement [118] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a -Statement [119] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a -Statement [121] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a -Statement [122] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a -Statement [123] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a -Statement [124] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a -Statement [126] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [81] (dword) sin16s::x#2 ← (const dword) PI_u4f28#0 - (dword) sin16s::x#4 [ sin16s::isUpper#2 sin16s::x#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x#2 ] ) always clobbers reg byte a +Statement [83] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin16s::isUpper#2 sin16s::$4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::$4 ] ) always clobbers reg byte a reg byte y +Statement [84] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 [ sin16s::isUpper#2 sin16s::x1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 ] ) always clobbers reg byte a +Statement [85] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 ] ) always clobbers reg byte a +Statement [86] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#0 mulu16_sel::v2#0 ] ) always clobbers reg byte a +Statement [88] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#0 ] ) always clobbers reg byte a +Statement [89] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x2#0 ] ) always clobbers reg byte a +Statement [90] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 ] ) always clobbers reg byte a +Statement [91] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v1#1 mulu16_sel::v2#1 ] ) always clobbers reg byte a +Statement [93] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#1 ] ) always clobbers reg byte a +Statement [94] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 ] ) always clobbers reg byte a +Statement [95] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v1#2 ] ) always clobbers reg byte a +Statement [97] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#2 ] ) always clobbers reg byte a +Statement [98] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::x3_6#0 ] ) always clobbers reg byte a +Statement [99] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 sin16s::usinx#0 ] ) always clobbers reg byte a +Statement [100] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 ] ) always clobbers reg byte a +Statement [101] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#3 mulu16_sel::v2#3 ] ) always clobbers reg byte a +Statement [103] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#10 ] ) always clobbers reg byte a +Statement [104] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 sin16s::x4#0 ] ) always clobbers reg byte a +Statement [105] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 [ sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v1#4 ] ) always clobbers reg byte a +Statement [106] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v1#4 mulu16_sel::v2#4 ] ) always clobbers reg byte a +Statement [108] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 [ sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#11 ] ) always clobbers reg byte a +Statement [109] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5#0 ] ) always clobbers reg byte a +Statement [110] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 sin16s::x5_128#0 ] ) always clobbers reg byte a reg byte y +Statement [111] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 [ sin16s::isUpper#2 sin16s::usinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#1 ] ) always clobbers reg byte a +Statement [113] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 [ sin16s::sinx#1 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::sinx#1 ] ) always clobbers reg byte a +Statement [116] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 [ sin16s::return#5 ] ( main:2::sin16s_gen:7::sin16s:68 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::return#5 ] ) always clobbers reg byte a +Statement [118] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 [ mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::v2#5 mulu16_sel::select#5 mul16u::a#1 ] ) always clobbers reg byte a +Statement [119] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 [ mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::b#0 ] ) always clobbers reg byte a +Statement [121] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mulu16_sel::select#5 mul16u::return#2 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::return#2 ] ) always clobbers reg byte a +Statement [122] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 [ mulu16_sel::select#5 mulu16_sel::$0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mulu16_sel::$0 ] ) always clobbers reg byte a +Statement [123] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 [ mulu16_sel::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::$1 ] ) always clobbers reg byte a +Statement [124] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 [ mulu16_sel::return#12 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::return#12 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::return#12 ] ) always clobbers reg byte a +Statement [126] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 [ mul16u::a#1 mul16u::mb#0 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#1 mul16u::mb#0 ] ) always clobbers reg byte a Statement [128] if((word) mul16u::a#2!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [130] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [132] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a -Statement [138] (word) divr16u::return#3 ? (word) divr16u::return#0 [ divr16u::return#3 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a -Statement [139] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#3 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a -Statement [140] (word) divr16u::rem#5 ? (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ) always clobbers reg byte a -Statement [142] (word) divr16u::return#4 ? (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ) always clobbers reg byte a -Statement [143] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#4 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a -Statement [144] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::return#0 ] ) always clobbers reg byte a -Statement [149] (byte~) divr16u::$1 ? > (word) divr16u::dividend#4 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [152] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [130] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::res#2 mul16u::a#2 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [132] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ( main:2::sin16s_gen:7::sin16s:68::mulu16_sel:87::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:92::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:96::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::x3#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:102::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::x1#0 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] main:2::sin16s_gen:7::sin16s:68::mulu16_sel:107::mul16u:120 [ sin16s_gen::step#0 sin16s_gen::x#2 sin16s_gen::sintab#2 sin16s_gen::i#2 sin16s::isUpper#2 sin16s::usinx#0 mulu16_sel::select#5 mul16u::a#2 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [138] (word) divr16u::return#3 ← (word) divr16u::return#0 [ divr16u::return#3 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a +Statement [139] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#3 [ div32u16u::quotient_hi#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 rem16u#1 ] ) always clobbers reg byte a +Statement [140] (word) divr16u::rem#5 ← (word) rem16u#1 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::rem#5 ] ) always clobbers reg byte a +Statement [142] (word) divr16u::return#4 ← (word) divr16u::return#0 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 divr16u::return#4 ] ) always clobbers reg byte a +Statement [143] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#4 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::quotient_hi#0 div32u16u::quotient_lo#0 ] ) always clobbers reg byte a +Statement [144] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 [ div32u16u::return#0 ] ( main:2::sin16s_gen:7::div32u16u:63 [ div32u16u::return#0 ] ) always clobbers reg byte a +Statement [149] (byte~) divr16u::$1 ← > (word) divr16u::dividend#4 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [152] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::dividend#4 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [156] if((word) divr16u::rem#7<(const word) main::wavelength#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#7 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [158] (word) divr16u::rem#2 ? (word) divr16u::rem#7 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [162] (word) rem16u#1 ? (word) divr16u::rem#10 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [166] (word) div16u::return#2 ? (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a -Statement [167] (word) sin8s_gen::step#0 ? (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a -Statement [169] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [173] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y -Statement [175] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a +Statement [158] (word) divr16u::rem#2 ← (word) divr16u::rem#7 - (const word) main::wavelength#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [162] (word) rem16u#1 ← (word) divr16u::rem#10 [ divr16u::return#0 rem16u#1 ] ( main:2::sin16s_gen:7::div32u16u:63::divr16u:137 [ divr16u::return#0 rem16u#1 ] main:2::sin16s_gen:7::div32u16u:63::divr16u:141 [ div32u16u::quotient_hi#0 divr16u::return#0 rem16u#1 ] main:2::sin8s_gen:5::div16u:165::divr16u:242 [ divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [166] (word) div16u::return#2 ← (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8s_gen:5 [ div16u::return#2 ] ) always clobbers reg byte a +Statement [167] (word) sin8s_gen::step#0 ← (word) div16u::return#2 [ sin8s_gen::step#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 ] ) always clobbers reg byte a +Statement [169] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a +Statement [173] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 ] ) always clobbers reg byte y +Statement [175] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::i#2 sin8s_gen::x#1 sin8s_gen::sintab#0 ] ) always clobbers reg byte a Statement [177] if((word) sin8s_gen::i#1<(const word) main::wavelength#0) goto sin8s_gen::@1 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ( main:2::sin8s_gen:5 [ sin8s_gen::step#0 sin8s_gen::x#1 sin8s_gen::sintab#0 sin8s_gen::i#1 ] ) always clobbers reg byte a Statement [179] if((word) sin8s::x#0<(const word) PI_u4f12#0) goto sin8s::@1 [ sin8s::x#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#0 ] ) always clobbers reg byte a -Statement [180] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a +Statement [180] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 [ sin8s::x#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#1 ] ) always clobbers reg byte a Statement [182] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 [ sin8s::x#4 sin8s::isUpper#10 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::x#4 sin8s::isUpper#10 ] ) always clobbers reg byte a -Statement [183] (word) sin8s::x#2 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a -Statement [185] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a -Statement [186] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a -Statement [201] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a -Statement [212] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a -Statement [213] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a -Statement [218] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a -Statement [226] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a -Statement [227] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a -Statement [228] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a -Statement [229] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a -Statement [231] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a -Statement [235] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [237] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a -Statement [243] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:165 [ divr16u::return#2 ] ) always clobbers reg byte a -Statement [244] (word) div16u::return#0 ? (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:165 [ div16u::return#0 ] ) always clobbers reg byte a +Statement [183] (word) sin8s::x#2 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#2 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x#2 ] ) always clobbers reg byte a +Statement [185] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a +Statement [186] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a +Statement [201] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a +Statement [212] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a +Statement [213] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a +Statement [218] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8s_gen:5::sin8s:170 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::sinx#1 ] ) always clobbers reg byte a +Statement [226] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#2 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#2 ] ) always clobbers reg byte a +Statement [227] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a +Statement [228] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a +Statement [229] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a +Statement [231] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 [ mul8u::a#1 mul8u::mb#0 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#1 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [235] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#2 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [237] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8s_gen:5::sin8s:170::mulu8_sel:189::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:194::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:198::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:204::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] main:2::sin8s_gen:5::sin8s:170::mulu8_sel:209::mul8u:225 [ sin8s_gen::step#0 sin8s_gen::x#2 sin8s_gen::sintab#2 sin8s_gen::i#2 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#2 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [243] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8s_gen:5::div16u:165 [ divr16u::return#2 ] ) always clobbers reg byte a +Statement [244] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8s_gen:5::div16u:165 [ div16u::return#0 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ main::i#2 main::i#1 ] : zp ZP_BYTE:2 , reg byte x , Potential registers zp ZP_WORD:3 [ print_str::str#3 print_str::str#5 print_str::str#0 ] : zp ZP_WORD:3 , Potential registers zp ZP_BYTE:5 [ print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 ] : zp ZP_BYTE:5 , reg byte x , @@ -5926,18 +5926,18 @@ main: { jmp b1 //SEG27 main::@1 b1: - //SEG28 [11] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx + //SEG28 [11] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx lda sintabb,x sta sb - //SEG29 [12] (word~) main::$3 ? ((word)) (byte) main::i#2 -- vwuz1=_word_vbuxx + //SEG29 [12] (word~) main::$3 ← ((word)) (byte) main::i#2 -- vwuz1=_word_vbuxx txa sta _3 lda #0 sta _3+1 - //SEG30 [13] (word~) main::$4 ? (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG30 [13] (word~) main::$4 ← (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl _4 rol _4+1 - //SEG31 [14] (signed word*~) main::$5 ? (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 -- pwsz1=pwsc1_plus_vwuz1 + //SEG31 [14] (signed word*~) main::$5 ← (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 -- pwsz1=pwsc1_plus_vwuz1 clc lda _5 adc #sintabw sta _5+1 - //SEG32 [15] (signed word) main::sw#0 ? *((signed word*~) main::$5) -- vwsz1=_deref_pwsz2 + //SEG32 [15] (signed word) main::sw#0 ← *((signed word*~) main::$5) -- vwsz1=_deref_pwsz2 ldy #0 lda (_5),y sta sw iny lda (_5),y sta sw+1 - //SEG33 [16] (byte~) main::$6 ? > (signed word) main::sw#0 -- vbuaa=_hi_vwsz1 + //SEG33 [16] (byte~) main::$6 ← > (signed word) main::sw#0 -- vbuaa=_hi_vwsz1 lda sw+1 - //SEG34 [17] (signed byte) main::sd#0 ? (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 -- vbsz1=vbsz1_minus_vbsaa + //SEG34 [17] (signed byte) main::sd#0 ← (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 -- vbsz1=vbsz1_minus_vbsaa eor #$ff sec adc sd @@ -5984,7 +5984,7 @@ main: { jmp b2 //SEG44 main::@2 b2: - //SEG45 [22] (signed byte) print_sbyte::b#1 ? (signed byte) main::sd#0 + //SEG45 [22] (signed byte) print_sbyte::b#1 ← (signed byte) main::sd#0 //SEG46 [23] call print_sbyte jsr print_sbyte //SEG47 [24] phi from main::@2 to main::@6 [phi:main::@2->main::@6] @@ -6005,7 +6005,7 @@ main: { jmp b7 //SEG53 main::@7 b7: - //SEG54 [26] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG54 [26] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG55 [27] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$c0 @@ -6045,17 +6045,17 @@ print_str: { rts //SEG66 print_str::@2 b2: - //SEG67 [33] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG67 [33] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG68 [34] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG68 [34] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG69 [35] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG69 [35] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -6111,7 +6111,7 @@ print_sbyte: { jmp b4 //SEG90 print_sbyte::@4 b4: - //SEG91 [44] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG91 [44] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -6123,10 +6123,10 @@ print_sbyte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG93 [46] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa + //SEG93 [46] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG94 [47] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 + //SEG94 [47] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -6140,13 +6140,13 @@ print_char: { //SEG97 print_byte // Print a byte as HEX print_byte: { - //SEG98 [49] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG98 [49] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda print_sbyte.b lsr lsr lsr lsr - //SEG99 [50] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG99 [50] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG100 [51] call print_char @@ -6158,10 +6158,10 @@ print_byte: { jmp b1 //SEG104 print_byte::@1 b1: - //SEG105 [52] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG105 [52] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and print_sbyte.b - //SEG106 [53] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG106 [53] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG107 [54] call print_char @@ -6194,11 +6194,11 @@ print_cls: { jmp b1 //SEG118 print_cls::@1 b1: - //SEG119 [58] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG119 [58] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG120 [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG120 [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -6231,11 +6231,11 @@ sin16s_gen: { //SEG126 [136] phi from sin16s_gen to div32u16u [phi:sin16s_gen->div32u16u] div32u16u_from_sin16s_gen: jsr div32u16u - //SEG127 [64] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG127 [64] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 jmp b2 //SEG128 sin16s_gen::@2 b2: - //SEG129 [65] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + //SEG129 [65] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 //SEG130 [66] phi from sin16s_gen::@2 to sin16s_gen::@1 [phi:sin16s_gen::@2->sin16s_gen::@1] b1_from_b2: //SEG131 [66] phi (word) sin16s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen::@2->sin16s_gen::@1#0] -- vwuz1=vbuc1 @@ -6265,7 +6265,7 @@ sin16s_gen: { jmp b1 //SEG138 sin16s_gen::@1 b1: - //SEG139 [67] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG139 [67] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -6276,19 +6276,19 @@ sin16s_gen: { sta sin16s.x+3 //SEG140 [68] call sin16s jsr sin16s - //SEG141 [69] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG141 [69] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 jmp b3 //SEG142 sin16s_gen::@3 b3: - //SEG143 [70] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - //SEG144 [71] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG143 [70] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + //SEG144 [71] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG145 [72] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG145 [72] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -6296,7 +6296,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG146 [73] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG146 [73] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -6310,7 +6310,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG147 [74] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG147 [74] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -6369,7 +6369,7 @@ sin16s: { jmp b4 //SEG153 sin16s::@4 b4: - //SEG154 [78] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG154 [78] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc # (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG169 [84] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG170 [85] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG170 [85] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG171 [86] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG171 [86] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6472,17 +6472,17 @@ sin16s: { //SEG175 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG176 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG177 [88] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG177 [88] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 jmp b7 //SEG178 sin16s::@7 b7: - //SEG179 [89] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG179 [89] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG180 [90] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG181 [91] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG180 [90] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG181 [91] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6495,7 +6495,7 @@ sin16s: { //SEG185 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG186 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG187 [93] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG187 [93] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 @@ -6503,8 +6503,8 @@ sin16s: { jmp b8 //SEG188 sin16s::@8 b8: - //SEG189 [94] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG190 [95] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG189 [94] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG190 [95] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG191 [96] call mulu16_sel //SEG192 [117] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] mulu16_sel_from_b8: @@ -6517,12 +6517,12 @@ sin16s: { sta mulu16_sel.v2+1 //SEG195 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG196 [97] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG196 [97] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 jmp b9 //SEG197 sin16s::@9 b9: - //SEG198 [98] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG199 [99] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG198 [98] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG199 [99] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -6530,8 +6530,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG200 [100] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG201 [101] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG200 [100] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG201 [101] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6544,7 +6544,7 @@ sin16s: { //SEG205 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG206 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG207 [103] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG207 [103] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 @@ -6552,9 +6552,9 @@ sin16s: { jmp b10 //SEG208 sin16s::@10 b10: - //SEG209 [104] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG210 [105] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG211 [106] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG209 [104] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG210 [105] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG211 [106] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -6567,19 +6567,19 @@ sin16s: { //SEG215 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG216 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG217 [108] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG217 [108] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 jmp b11 //SEG218 sin16s::@11 b11: - //SEG219 [109] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG220 [110] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG219 [109] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG220 [110] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG221 [111] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG221 [111] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -6594,7 +6594,7 @@ sin16s: { jmp b6 //SEG223 sin16s::@6 b6: - //SEG224 [113] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG224 [113] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -6618,7 +6618,7 @@ sin16s: { rts //SEG230 sin16s::@12 b12: - //SEG231 [116] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG231 [116] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 jmp b3_from_b12 } //SEG232 mulu16_sel @@ -6633,20 +6633,20 @@ mulu16_sel: { .label return = $13 .label return_1 = $11 .label return_10 = $11 - //SEG233 [118] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG233 [118] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG234 [119] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + //SEG234 [119] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 //SEG235 [120] call mul16u jsr mul16u - //SEG236 [121] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG236 [121] (dword) mul16u::return#2 ← (dword) mul16u::res#2 jmp b1 //SEG237 mulu16_sel::@1 b1: - //SEG238 [122] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - //SEG239 [123] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG238 [122] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + //SEG239 [123] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -6657,7 +6657,7 @@ mulu16_sel: { dex bne !- !e: - //SEG240 [124] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG240 [124] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -6677,7 +6677,7 @@ mul16u: { .label res = $b .label b = $13 .label return = $b - //SEG244 [126] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG244 [126] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -6711,7 +6711,7 @@ mul16u: { rts //SEG253 mul16u::@2 b2: - //SEG254 [130] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG254 [130] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG255 [131] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 @@ -6720,7 +6720,7 @@ mul16u: { jmp b4 //SEG256 mul16u::@4 b4: - //SEG257 [132] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG257 [132] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -6741,11 +6741,11 @@ mul16u: { jmp b3 //SEG260 mul16u::@3 b3: - //SEG261 [134] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG261 [134] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG262 [135] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG262 [135] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -6778,16 +6778,16 @@ div32u16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG272 [138] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG272 [138] (word) divr16u::return#3 ← (word) divr16u::return#0 jmp b1 //SEG273 div32u16u::@1 b1: - //SEG274 [139] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG274 [139] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG275 [140] (word) divr16u::rem#5 ? (word) rem16u#1 + //SEG275 [140] (word) divr16u::rem#5 ← (word) rem16u#1 //SEG276 [141] call divr16u //SEG277 [146] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] divr16u_from_b1: @@ -6798,12 +6798,12 @@ div32u16u: { sta divr16u.dividend+1 //SEG279 [146] phi (word) divr16u::rem#11 = (word) divr16u::rem#5 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG280 [142] (word) divr16u::return#4 ? (word) divr16u::return#0 + //SEG280 [142] (word) divr16u::return#4 ← (word) divr16u::return#0 jmp b2 //SEG281 div32u16u::@2 b2: - //SEG282 [143] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#4 - //SEG283 [144] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG282 [143] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#4 + //SEG283 [144] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -6850,12 +6850,12 @@ divr16u: { jmp b1 //SEG297 divr16u::@1 b1: - //SEG298 [148] (word) divr16u::rem#0 ? (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG298 [148] (word) divr16u::rem#0 ← (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG299 [149] (byte~) divr16u::$1 ? > (word) divr16u::dividend#4 -- vbuaa=_hi_vwuz1 + //SEG299 [149] (byte~) divr16u::$1 ← > (word) divr16u::dividend#4 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG300 [150] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG300 [150] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG301 [151] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -6863,7 +6863,7 @@ divr16u: { jmp b4 //SEG302 divr16u::@4 b4: - //SEG303 [152] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG303 [152] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -6874,10 +6874,10 @@ divr16u: { jmp b2 //SEG306 divr16u::@2 b2: - //SEG307 [154] (word) divr16u::dividend#0 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG307 [154] (word) divr16u::dividend#0 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG308 [155] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG308 [155] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG309 [156] if((word) divr16u::rem#7<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -6892,12 +6892,12 @@ divr16u: { jmp b5 //SEG310 divr16u::@5 b5: - //SEG311 [157] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG311 [157] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG312 [158] (word) divr16u::rem#2 ? (word) divr16u::rem#7 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG312 [158] (word) divr16u::rem#2 ← (word) divr16u::rem#7 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #div16u] div16u_from_sin8s_gen: jsr div16u - //SEG326 [166] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG326 [166] (word) div16u::return#2 ← (word) div16u::return#0 jmp b2 //SEG327 sin8s_gen::@2 b2: - //SEG328 [167] (word) sin8s_gen::step#0 ? (word) div16u::return#2 + //SEG328 [167] (word) sin8s_gen::step#0 ← (word) div16u::return#2 //SEG329 [168] phi from sin8s_gen::@2 to sin8s_gen::@1 [phi:sin8s_gen::@2->sin8s_gen::@1] b1_from_b2: //SEG330 [168] phi (word) sin8s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin8s_gen::@2->sin8s_gen::@1#0] -- vwuz1=vbuc1 @@ -6974,27 +6974,27 @@ sin8s_gen: { jmp b1 //SEG337 sin8s_gen::@1 b1: - //SEG338 [169] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 -- vwuz1=vwuz2 + //SEG338 [169] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG339 [170] call sin8s jsr sin8s - //SEG340 [171] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 + //SEG340 [171] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 jmp b3 //SEG341 sin8s_gen::@3 b3: - //SEG342 [172] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 - //SEG343 [173] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa + //SEG342 [172] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 + //SEG343 [173] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa ldy #0 sta (sintab),y - //SEG344 [174] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 + //SEG344 [174] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 inc sintab bne !+ inc sintab+1 !: - //SEG345 [175] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG345 [175] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -7002,7 +7002,7 @@ sin8s_gen: { lda x+1 adc step+1 sta x+1 - //SEG346 [176] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG346 [176] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -7048,7 +7048,7 @@ sin8s: { jmp b5 //SEG352 sin8s::@5 b5: - //SEG353 [180] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG353 [180] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc # (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG368 [186] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG369 [187] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuxx=vbuz1 + //SEG369 [187] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG370 [188] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG370 [188] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG371 [189] call mulu8_sel //SEG372 [222] phi from sin8s::@2 to mulu8_sel [phi:sin8s::@2->mulu8_sel] @@ -7122,14 +7122,14 @@ sin8s: { //SEG374 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG375 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG376 [190] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + //SEG376 [190] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 jmp b9 //SEG377 sin8s::@9 b9: - //SEG378 [191] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - //SEG379 [192] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuxx=vbuaa + //SEG378 [191] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + //SEG379 [192] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuxx=vbuaa tax - //SEG380 [193] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG380 [193] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG381 [194] call mulu8_sel //SEG382 [222] phi from sin8s::@9 to mulu8_sel [phi:sin8s::@9->mulu8_sel] @@ -7140,13 +7140,13 @@ sin8s: { //SEG384 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG385 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG386 [195] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + //SEG386 [195] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 jmp b10 //SEG387 sin8s::@10 b10: - //SEG388 [196] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuaa + //SEG388 [196] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuaa sta x3 - //SEG389 [197] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG389 [197] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 //SEG390 [198] call mulu8_sel //SEG391 [222] phi from sin8s::@10 to mulu8_sel [phi:sin8s::@10->mulu8_sel] @@ -7158,19 +7158,19 @@ sin8s: { ldy #DIV_6 //SEG394 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG395 [199] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + //SEG395 [199] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 jmp b11 //SEG396 sin8s::@11 b11: - //SEG397 [200] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - //SEG398 [201] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa + //SEG397 [200] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + //SEG398 [201] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa eor #$ff sec adc x1 sta usinx - //SEG399 [202] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG399 [202] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 - //SEG400 [203] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG400 [203] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG401 [204] call mulu8_sel //SEG402 [222] phi from sin8s::@11 to mulu8_sel [phi:sin8s::@11->mulu8_sel] @@ -7181,14 +7181,14 @@ sin8s: { //SEG404 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG405 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG406 [205] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + //SEG406 [205] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 jmp b12 //SEG407 sin8s::@12 b12: - //SEG408 [206] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - //SEG409 [207] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuxx=vbuaa + //SEG408 [206] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + //SEG409 [207] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuxx=vbuaa tax - //SEG410 [208] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG410 [208] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG411 [209] call mulu8_sel //SEG412 [222] phi from sin8s::@12 to mulu8_sel [phi:sin8s::@12->mulu8_sel] @@ -7199,17 +7199,17 @@ sin8s: { //SEG414 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG415 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG416 [210] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + //SEG416 [210] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 jmp b13 //SEG417 sin8s::@13 b13: - //SEG418 [211] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - //SEG419 [212] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG418 [211] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + //SEG419 [212] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG420 [213] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa + //SEG420 [213] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa clc adc usinx tax @@ -7219,7 +7219,7 @@ sin8s: { jmp b7 //SEG422 sin8s::@7 b7: - //SEG423 [215] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx + //SEG423 [215] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx dex //SEG424 [216] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] b3_from_b13: @@ -7235,7 +7235,7 @@ sin8s: { jmp b8 //SEG428 sin8s::@8 b8: - //SEG429 [218] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx + //SEG429 [218] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx txa eor #$ff clc @@ -7254,7 +7254,7 @@ sin8s: { rts //SEG435 sin8s::@14 b14: - //SEG436 [221] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx + //SEG436 [221] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx txa jmp b4_from_b14 } @@ -7266,17 +7266,17 @@ mulu8_sel: { .label _0 = $13 .label _1 = $13 .label select = $1b - //SEG438 [223] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - //SEG439 [224] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy + //SEG438 [223] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + //SEG439 [224] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy tya //SEG440 [225] call mul8u jsr mul8u - //SEG441 [226] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG441 [226] (word) mul8u::return#2 ← (word) mul8u::res#2 jmp b1 //SEG442 mulu8_sel::@1 b1: - //SEG443 [227] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 - //SEG444 [228] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 + //SEG443 [227] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 + //SEG444 [228] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 ldy select beq !e+ !: @@ -7285,7 +7285,7 @@ mulu8_sel: { dey bne !- !e: - //SEG445 [229] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 + //SEG445 [229] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 lda _1+1 jmp breturn //SEG446 mulu8_sel::@return @@ -7300,7 +7300,7 @@ mul8u: { .label mb = $15 .label res = $13 .label return = $13 - //SEG449 [231] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa + //SEG449 [231] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -7326,7 +7326,7 @@ mul8u: { rts //SEG458 mul8u::@2 b2: - //SEG459 [235] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG459 [235] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG460 [236] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 @@ -7335,7 +7335,7 @@ mul8u: { jmp b4 //SEG461 mul8u::@4 b4: - //SEG462 [237] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG462 [237] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -7350,11 +7350,11 @@ mul8u: { jmp b3 //SEG465 mul8u::@3 b3: - //SEG466 [239] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG466 [239] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG467 [240] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG467 [240] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG468 [232] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -7385,11 +7385,11 @@ div16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG477 [243] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG477 [243] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG478 div16u::@1 b1: - //SEG479 [244] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG479 [244] (word) div16u::return#0 ← (word) divr16u::return#2 jmp breturn //SEG480 div16u::@return breturn: @@ -8189,18 +8189,18 @@ main: { //SEG26 [10] phi (byte) main::i#2 = (byte) main::i#1 [phi:main::@7->main::@1#1] -- register_copy //SEG27 main::@1 b1: - //SEG28 [11] (signed byte) main::sb#0 ? *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx + //SEG28 [11] (signed byte) main::sb#0 ← *((const signed byte[$c0]) main::sintabb#0 + (byte) main::i#2) -- vbsz1=pbsc1_derefidx_vbuxx lda sintabb,x sta sb - //SEG29 [12] (word~) main::$3 ? ((word)) (byte) main::i#2 -- vwuz1=_word_vbuxx + //SEG29 [12] (word~) main::$3 ← ((word)) (byte) main::i#2 -- vwuz1=_word_vbuxx txa sta _3 lda #0 sta _3+1 - //SEG30 [13] (word~) main::$4 ? (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG30 [13] (word~) main::$4 ← (word~) main::$3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl _4 rol _4+1 - //SEG31 [14] (signed word*~) main::$5 ? (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 -- pwsz1=pwsc1_plus_vwuz1 + //SEG31 [14] (signed word*~) main::$5 ← (const signed word[$c0]) main::sintabw#0 + (word~) main::$4 -- pwsz1=pwsc1_plus_vwuz1 clc lda _5 adc #sintabw sta _5+1 - //SEG32 [15] (signed word) main::sw#0 ? *((signed word*~) main::$5) -- vwsz1=_deref_pwsz2 + //SEG32 [15] (signed word) main::sw#0 ← *((signed word*~) main::$5) -- vwsz1=_deref_pwsz2 ldy #0 lda (_5),y sta sw iny lda (_5),y sta sw+1 - //SEG33 [16] (byte~) main::$6 ? > (signed word) main::sw#0 -- vbuaa=_hi_vwsz1 - //SEG34 [17] (signed byte) main::sd#0 ? (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 -- vbsz1=vbsz1_minus_vbsaa + //SEG33 [16] (byte~) main::$6 ← > (signed word) main::sw#0 -- vbuaa=_hi_vwsz1 + //SEG34 [17] (signed byte) main::sd#0 ← (signed byte) main::sb#0 - (signed byte)(byte~) main::$6 -- vbsz1=vbsz1_minus_vbsaa eor #$ff sec adc sd @@ -8238,7 +8238,7 @@ main: { //SEG43 [21] phi (byte*) print_char_cursor#44 = (byte*) print_char_cursor#45 [phi:main::@1/main::@3->main::@2#0] -- register_copy //SEG44 main::@2 b2: - //SEG45 [22] (signed byte) print_sbyte::b#1 ? (signed byte) main::sd#0 + //SEG45 [22] (signed byte) print_sbyte::b#1 ← (signed byte) main::sd#0 //SEG46 [23] call print_sbyte jsr print_sbyte //SEG47 [24] phi from main::@2 to main::@6 [phi:main::@2->main::@6] @@ -8253,7 +8253,7 @@ main: { sta print_str.str+1 jsr print_str //SEG53 main::@7 - //SEG54 [26] (byte) main::i#1 ? ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx + //SEG54 [26] (byte) main::i#1 ← ++ (byte) main::i#2 -- vbuxx=_inc_vbuxx inx //SEG55 [27] if((byte) main::i#1!=(byte/word/signed word/dword/signed dword) $c0) goto main::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$c0 @@ -8286,16 +8286,16 @@ print_str: { rts //SEG66 print_str::@2 b2: - //SEG67 [33] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 + //SEG67 [33] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#3) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG68 [34] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG68 [34] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG69 [35] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 + //SEG69 [35] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#3 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -8337,7 +8337,7 @@ print_sbyte: { lda #'-' jsr print_char //SEG90 print_sbyte::@4 - //SEG91 [44] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG91 [44] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -8349,10 +8349,10 @@ print_sbyte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG93 [46] *((byte*) print_char_cursor#29) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa + //SEG93 [46] *((byte*) print_char_cursor#29) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG94 [47] (byte*) print_char_cursor#10 ? ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 + //SEG94 [47] (byte*) print_char_cursor#10 ← ++ (byte*) print_char_cursor#29 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -8364,13 +8364,13 @@ print_char: { //SEG97 print_byte // Print a byte as HEX print_byte: { - //SEG98 [49] (byte~) print_byte::$0 ? (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG98 [49] (byte~) print_byte::$0 ← (byte)(signed byte) print_sbyte::b#4 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda print_sbyte.b lsr lsr lsr lsr - //SEG99 [50] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG99 [50] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG100 [51] call print_char @@ -8379,10 +8379,10 @@ print_byte: { //SEG103 [45] phi (byte) print_char::ch#4 = (byte) print_char::ch#2 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG104 print_byte::@1 - //SEG105 [52] (byte~) print_byte::$2 ? (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG105 [52] (byte~) print_byte::$2 ← (byte)(signed byte) print_sbyte::b#4 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and print_sbyte.b - //SEG106 [53] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG106 [53] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG107 [54] call print_char @@ -8408,11 +8408,11 @@ print_cls: { //SEG117 [57] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy //SEG118 print_cls::@1 b1: - //SEG119 [58] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG119 [58] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG120 [59] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG120 [59] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -8442,9 +8442,9 @@ sin16s_gen: { //SEG125 [63] call div32u16u //SEG126 [136] phi from sin16s_gen to div32u16u [phi:sin16s_gen->div32u16u] jsr div32u16u - //SEG127 [64] (dword) div32u16u::return#2 ? (dword) div32u16u::return#0 + //SEG127 [64] (dword) div32u16u::return#2 ← (dword) div32u16u::return#0 //SEG128 sin16s_gen::@2 - //SEG129 [65] (dword) sin16s_gen::step#0 ? (dword) div32u16u::return#2 + //SEG129 [65] (dword) sin16s_gen::step#0 ← (dword) div32u16u::return#2 //SEG130 [66] phi from sin16s_gen::@2 to sin16s_gen::@1 [phi:sin16s_gen::@2->sin16s_gen::@1] //SEG131 [66] phi (word) sin16s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin16s_gen::@2->sin16s_gen::@1#0] -- vwuz1=vbuc1 lda #0 @@ -8468,7 +8468,7 @@ sin16s_gen: { //SEG137 [66] phi (dword) sin16s_gen::x#2 = (dword) sin16s_gen::x#1 [phi:sin16s_gen::@3->sin16s_gen::@1#2] -- register_copy //SEG138 sin16s_gen::@1 b1: - //SEG139 [67] (dword) sin16s::x#0 ? (dword) sin16s_gen::x#2 -- vduz1=vduz2 + //SEG139 [67] (dword) sin16s::x#0 ← (dword) sin16s_gen::x#2 -- vduz1=vduz2 lda x sta sin16s.x lda x+1 @@ -8479,17 +8479,17 @@ sin16s_gen: { sta sin16s.x+3 //SEG140 [68] call sin16s jsr sin16s - //SEG141 [69] (signed word) sin16s::return#0 ? (signed word) sin16s::return#1 + //SEG141 [69] (signed word) sin16s::return#0 ← (signed word) sin16s::return#1 //SEG142 sin16s_gen::@3 - //SEG143 [70] (signed word~) sin16s_gen::$1 ? (signed word) sin16s::return#0 - //SEG144 [71] *((signed word*) sin16s_gen::sintab#2) ? (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 + //SEG143 [70] (signed word~) sin16s_gen::$1 ← (signed word) sin16s::return#0 + //SEG144 [71] *((signed word*) sin16s_gen::sintab#2) ← (signed word~) sin16s_gen::$1 -- _deref_pwsz1=vwsz2 ldy #0 lda _1 sta (sintab),y iny lda _1+1 sta (sintab),y - //SEG145 [72] (signed word*) sin16s_gen::sintab#0 ? (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 + //SEG145 [72] (signed word*) sin16s_gen::sintab#0 ← (signed word*) sin16s_gen::sintab#2 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- pwsz1=pwsz1_plus_2 lda sintab clc adc #2 @@ -8497,7 +8497,7 @@ sin16s_gen: { bcc !+ inc sintab+1 !: - //SEG146 [73] (dword) sin16s_gen::x#1 ? (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 + //SEG146 [73] (dword) sin16s_gen::x#1 ← (dword) sin16s_gen::x#2 + (dword) sin16s_gen::step#0 -- vduz1=vduz1_plus_vduz2 lda x clc adc step @@ -8511,7 +8511,7 @@ sin16s_gen: { lda x+3 adc step+3 sta x+3 - //SEG147 [74] (word) sin16s_gen::i#1 ? ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG147 [74] (word) sin16s_gen::i#1 ← ++ (word) sin16s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -8566,7 +8566,7 @@ sin16s: { bcc b4 !: //SEG153 sin16s::@4 - //SEG154 [78] (dword) sin16s::x#1 ? (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 + //SEG154 [78] (dword) sin16s::x#1 ← (dword) sin16s::x#0 - (const dword) PI_u4f28#0 -- vduz1=vduz1_minus_vduc1 lda x sec sbc #sin16s::@2#0] -- register_copy //SEG167 sin16s::@2 b2: - //SEG168 [83] (dword~) sin16s::$4 ? (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 + //SEG168 [83] (dword~) sin16s::$4 ← (dword) sin16s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vduz1=vduz1_rol_3 ldy #3 !: asl _4 @@ -8639,17 +8639,17 @@ sin16s: { rol _4+3 dey bne !- - //SEG169 [84] (word) sin16s::x1#0 ? > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 + //SEG169 [84] (word) sin16s::x1#0 ← > (dword~) sin16s::$4 -- vwuz1=_hi_vduz2 lda _4+2 sta x1 lda _4+3 sta x1+1 - //SEG170 [85] (word) mulu16_sel::v1#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG170 [85] (word) mulu16_sel::v1#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v1 lda x1+1 sta mulu16_sel.v1+1 - //SEG171 [86] (word) mulu16_sel::v2#0 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG171 [86] (word) mulu16_sel::v2#0 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8661,15 +8661,15 @@ sin16s: { //SEG175 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#0 [phi:sin16s::@2->mulu16_sel#1] -- register_copy //SEG176 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#0 [phi:sin16s::@2->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG177 [88] (word) mulu16_sel::return#0 ? (word) mulu16_sel::return#12 + //SEG177 [88] (word) mulu16_sel::return#0 ← (word) mulu16_sel::return#12 //SEG178 sin16s::@7 - //SEG179 [89] (word) sin16s::x2#0 ? (word) mulu16_sel::return#0 -- vwuz1=vwuz2 + //SEG179 [89] (word) sin16s::x2#0 ← (word) mulu16_sel::return#0 -- vwuz1=vwuz2 lda mulu16_sel.return sta x2 lda mulu16_sel.return+1 sta x2+1 - //SEG180 [90] (word) mulu16_sel::v1#1 ? (word) sin16s::x2#0 - //SEG181 [91] (word) mulu16_sel::v2#1 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG180 [90] (word) mulu16_sel::v1#1 ← (word) sin16s::x2#0 + //SEG181 [91] (word) mulu16_sel::v2#1 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8681,14 +8681,14 @@ sin16s: { //SEG185 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#1 [phi:sin16s::@7->mulu16_sel#1] -- register_copy //SEG186 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#1 [phi:sin16s::@7->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG187 [93] (word) mulu16_sel::return#1 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG187 [93] (word) mulu16_sel::return#1 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_1 lda mulu16_sel.return+1 sta mulu16_sel.return_1+1 //SEG188 sin16s::@8 - //SEG189 [94] (word) sin16s::x3#0 ? (word) mulu16_sel::return#1 - //SEG190 [95] (word) mulu16_sel::v1#2 ? (word) sin16s::x3#0 + //SEG189 [94] (word) sin16s::x3#0 ← (word) mulu16_sel::return#1 + //SEG190 [95] (word) mulu16_sel::v1#2 ← (word) sin16s::x3#0 //SEG191 [96] call mulu16_sel //SEG192 [117] phi from sin16s::@8 to mulu16_sel [phi:sin16s::@8->mulu16_sel] //SEG193 [117] phi (byte) mulu16_sel::select#5 = (byte/signed byte/word/signed word/dword/signed dword) 1 [phi:sin16s::@8->mulu16_sel#0] -- vbuxx=vbuc1 @@ -8700,10 +8700,10 @@ sin16s: { sta mulu16_sel.v2+1 //SEG195 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#2 [phi:sin16s::@8->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG196 [97] (word) mulu16_sel::return#2 ? (word) mulu16_sel::return#12 + //SEG196 [97] (word) mulu16_sel::return#2 ← (word) mulu16_sel::return#12 //SEG197 sin16s::@9 - //SEG198 [98] (word) sin16s::x3_6#0 ? (word) mulu16_sel::return#2 - //SEG199 [99] (word) sin16s::usinx#0 ? (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG198 [98] (word) sin16s::x3_6#0 ← (word) mulu16_sel::return#2 + //SEG199 [99] (word) sin16s::usinx#0 ← (word) sin16s::x1#0 - (word) sin16s::x3_6#0 -- vwuz1=vwuz2_minus_vwuz3 lda x1 sec sbc x3_6 @@ -8711,8 +8711,8 @@ sin16s: { lda x1+1 sbc x3_6+1 sta usinx+1 - //SEG200 [100] (word) mulu16_sel::v1#3 ? (word) sin16s::x3#0 - //SEG201 [101] (word) mulu16_sel::v2#3 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG200 [100] (word) mulu16_sel::v1#3 ← (word) sin16s::x3#0 + //SEG201 [101] (word) mulu16_sel::v2#3 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8724,15 +8724,15 @@ sin16s: { //SEG205 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#3 [phi:sin16s::@9->mulu16_sel#1] -- register_copy //SEG206 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#3 [phi:sin16s::@9->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG207 [103] (word) mulu16_sel::return#10 ? (word) mulu16_sel::return#12 -- vwuz1=vwuz2 + //SEG207 [103] (word) mulu16_sel::return#10 ← (word) mulu16_sel::return#12 -- vwuz1=vwuz2 lda mulu16_sel.return sta mulu16_sel.return_10 lda mulu16_sel.return+1 sta mulu16_sel.return_10+1 //SEG208 sin16s::@10 - //SEG209 [104] (word) sin16s::x4#0 ? (word) mulu16_sel::return#10 - //SEG210 [105] (word) mulu16_sel::v1#4 ? (word) sin16s::x4#0 - //SEG211 [106] (word) mulu16_sel::v2#4 ? (word) sin16s::x1#0 -- vwuz1=vwuz2 + //SEG209 [104] (word) sin16s::x4#0 ← (word) mulu16_sel::return#10 + //SEG210 [105] (word) mulu16_sel::v1#4 ← (word) sin16s::x4#0 + //SEG211 [106] (word) mulu16_sel::v2#4 ← (word) sin16s::x1#0 -- vwuz1=vwuz2 lda x1 sta mulu16_sel.v2 lda x1+1 @@ -8744,17 +8744,17 @@ sin16s: { //SEG215 [117] phi (word) mulu16_sel::v2#5 = (word) mulu16_sel::v2#4 [phi:sin16s::@10->mulu16_sel#1] -- register_copy //SEG216 [117] phi (word) mulu16_sel::v1#5 = (word) mulu16_sel::v1#4 [phi:sin16s::@10->mulu16_sel#2] -- register_copy jsr mulu16_sel - //SEG217 [108] (word) mulu16_sel::return#11 ? (word) mulu16_sel::return#12 + //SEG217 [108] (word) mulu16_sel::return#11 ← (word) mulu16_sel::return#12 //SEG218 sin16s::@11 - //SEG219 [109] (word) sin16s::x5#0 ? (word) mulu16_sel::return#11 - //SEG220 [110] (word) sin16s::x5_128#0 ? (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 + //SEG219 [109] (word) sin16s::x5#0 ← (word) mulu16_sel::return#11 + //SEG220 [110] (word) sin16s::x5_128#0 ← (word) sin16s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vwuz1=vwuz1_ror_4 ldy #4 !: lsr x5_128+1 ror x5_128 dey bne !- - //SEG221 [111] (word) sin16s::usinx#1 ? (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG221 [111] (word) sin16s::usinx#1 ← (word) sin16s::usinx#0 + (word) sin16s::x5_128#0 -- vwuz1=vwuz1_plus_vwuz2 lda usinx clc adc x5_128 @@ -8767,7 +8767,7 @@ sin16s: { cmp #0 beq b3 //SEG223 sin16s::@6 - //SEG224 [113] (signed word) sin16s::sinx#1 ? - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 + //SEG224 [113] (signed word) sin16s::sinx#1 ← - (signed word)(word) sin16s::usinx#1 -- vwsz1=_neg_vwsz1 sec lda sinx eor #$ff @@ -8785,7 +8785,7 @@ sin16s: { //SEG229 [115] return rts //SEG230 sin16s::@12 - //SEG231 [116] (signed word~) sin16s::return#5 ? (signed word)(word) sin16s::usinx#1 + //SEG231 [116] (signed word~) sin16s::return#5 ← (signed word)(word) sin16s::usinx#1 } //SEG232 mulu16_sel // Calculate val*val for two unsigned word values - the result is 16 selected bits of the 32-bit result. @@ -8799,18 +8799,18 @@ mulu16_sel: { .label return = $13 .label return_1 = $11 .label return_10 = $11 - //SEG233 [118] (word) mul16u::a#1 ? (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 + //SEG233 [118] (word) mul16u::a#1 ← (word) mulu16_sel::v1#5 -- vwuz1=vwuz2 lda v1 sta mul16u.a lda v1+1 sta mul16u.a+1 - //SEG234 [119] (word) mul16u::b#0 ? (word) mulu16_sel::v2#5 + //SEG234 [119] (word) mul16u::b#0 ← (word) mulu16_sel::v2#5 //SEG235 [120] call mul16u jsr mul16u - //SEG236 [121] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG236 [121] (dword) mul16u::return#2 ← (dword) mul16u::res#2 //SEG237 mulu16_sel::@1 - //SEG238 [122] (dword~) mulu16_sel::$0 ? (dword) mul16u::return#2 - //SEG239 [123] (dword~) mulu16_sel::$1 ? (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx + //SEG238 [122] (dword~) mulu16_sel::$0 ← (dword) mul16u::return#2 + //SEG239 [123] (dword~) mulu16_sel::$1 ← (dword~) mulu16_sel::$0 << (byte) mulu16_sel::select#5 -- vduz1=vduz1_rol_vbuxx cpx #0 beq !e+ !: @@ -8821,7 +8821,7 @@ mulu16_sel: { dex bne !- !e: - //SEG240 [124] (word) mulu16_sel::return#12 ? > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 + //SEG240 [124] (word) mulu16_sel::return#12 ← > (dword~) mulu16_sel::$1 -- vwuz1=_hi_vduz2 lda _1+2 sta return lda _1+3 @@ -8839,7 +8839,7 @@ mul16u: { .label res = $b .label b = $13 .label return = $b - //SEG244 [126] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 + //SEG244 [126] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#0 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -8867,14 +8867,14 @@ mul16u: { rts //SEG253 mul16u::@2 b2: - //SEG254 [130] (byte/word~) mul16u::$1 ? (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG254 [130] (byte/word~) mul16u::$1 ← (word) mul16u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG255 [131] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG256 mul16u::@4 - //SEG257 [132] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG257 [132] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -8892,11 +8892,11 @@ mul16u: { //SEG259 [133] phi (dword) mul16u::res#6 = (dword) mul16u::res#2 [phi:mul16u::@2/mul16u::@4->mul16u::@3#0] -- register_copy //SEG260 mul16u::@3 b3: - //SEG261 [134] (word) mul16u::a#0 ? (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG261 [134] (word) mul16u::a#0 ← (word) mul16u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG262 [135] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG262 [135] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -8926,14 +8926,14 @@ div32u16u: { sta divr16u.rem sta divr16u.rem+1 jsr divr16u - //SEG272 [138] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG272 [138] (word) divr16u::return#3 ← (word) divr16u::return#0 //SEG273 div32u16u::@1 - //SEG274 [139] (word) div32u16u::quotient_hi#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG274 [139] (word) div32u16u::quotient_hi#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return sta quotient_hi lda divr16u.return+1 sta quotient_hi+1 - //SEG275 [140] (word) divr16u::rem#5 ? (word) rem16u#1 + //SEG275 [140] (word) divr16u::rem#5 ← (word) rem16u#1 //SEG276 [141] call divr16u //SEG277 [146] phi from div32u16u::@1 to divr16u [phi:div32u16u::@1->divr16u] //SEG278 [146] phi (word) divr16u::dividend#6 = <(const dword) PI2_u4f28#0 [phi:div32u16u::@1->divr16u#0] -- vwuz1=vwuc1 @@ -8943,10 +8943,10 @@ div32u16u: { sta divr16u.dividend+1 //SEG279 [146] phi (word) divr16u::rem#11 = (word) divr16u::rem#5 [phi:div32u16u::@1->divr16u#1] -- register_copy jsr divr16u - //SEG280 [142] (word) divr16u::return#4 ? (word) divr16u::return#0 + //SEG280 [142] (word) divr16u::return#4 ← (word) divr16u::return#0 //SEG281 div32u16u::@2 - //SEG282 [143] (word) div32u16u::quotient_lo#0 ? (word) divr16u::return#4 - //SEG283 [144] (dword) div32u16u::return#0 ? (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 + //SEG282 [143] (word) div32u16u::quotient_lo#0 ← (word) divr16u::return#4 + //SEG283 [144] (dword) div32u16u::return#0 ← (word) div32u16u::quotient_hi#0 dw= (word) div32u16u::quotient_lo#0 -- vduz1=vwuz2_dword_vwuz3 lda quotient_hi sta return+2 lda quotient_hi+1 @@ -8986,18 +8986,18 @@ divr16u: { //SEG296 [147] phi (word) divr16u::rem#6 = (word) divr16u::rem#10 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG297 divr16u::@1 b1: - //SEG298 [148] (word) divr16u::rem#0 ? (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG298 [148] (word) divr16u::rem#0 ← (word) divr16u::rem#6 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG299 [149] (byte~) divr16u::$1 ? > (word) divr16u::dividend#4 -- vbuaa=_hi_vwuz1 + //SEG299 [149] (byte~) divr16u::$1 ← > (word) divr16u::dividend#4 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG300 [150] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG300 [150] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG301 [151] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG302 divr16u::@4 - //SEG303 [152] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG303 [152] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -9005,10 +9005,10 @@ divr16u: { //SEG305 [153] phi (word) divr16u::rem#7 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG306 divr16u::@2 b2: - //SEG307 [154] (word) divr16u::dividend#0 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG307 [154] (word) divr16u::dividend#0 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG308 [155] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG308 [155] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG309 [156] if((word) divr16u::rem#7<(const word) main::wavelength#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -9021,12 +9021,12 @@ divr16u: { bcc b3 !: //SEG310 divr16u::@5 - //SEG311 [157] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG311 [157] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG312 [158] (word) divr16u::rem#2 ? (word) divr16u::rem#7 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG312 [158] (word) divr16u::rem#2 ← (word) divr16u::rem#7 - (const word) main::wavelength#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #divr16u::@3#1] -- register_copy //SEG316 divr16u::@3 b3: - //SEG317 [160] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG317 [160] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG318 [161] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG319 divr16u::@6 - //SEG320 [162] (word) rem16u#1 ? (word) divr16u::rem#10 + //SEG320 [162] (word) rem16u#1 ← (word) divr16u::rem#10 //SEG321 divr16u::@return //SEG322 [163] return rts @@ -9063,9 +9063,9 @@ sin8s_gen: { //SEG324 [165] call div16u //SEG325 [241] phi from sin8s_gen to div16u [phi:sin8s_gen->div16u] jsr div16u - //SEG326 [166] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG326 [166] (word) div16u::return#2 ← (word) div16u::return#0 //SEG327 sin8s_gen::@2 - //SEG328 [167] (word) sin8s_gen::step#0 ? (word) div16u::return#2 + //SEG328 [167] (word) sin8s_gen::step#0 ← (word) div16u::return#2 //SEG329 [168] phi from sin8s_gen::@2 to sin8s_gen::@1 [phi:sin8s_gen::@2->sin8s_gen::@1] //SEG330 [168] phi (word) sin8s_gen::i#2 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:sin8s_gen::@2->sin8s_gen::@1#0] -- vwuz1=vbuc1 lda #0 @@ -9087,25 +9087,25 @@ sin8s_gen: { //SEG336 [168] phi (word) sin8s_gen::x#2 = (word) sin8s_gen::x#1 [phi:sin8s_gen::@3->sin8s_gen::@1#2] -- register_copy //SEG337 sin8s_gen::@1 b1: - //SEG338 [169] (word) sin8s::x#0 ? (word) sin8s_gen::x#2 -- vwuz1=vwuz2 + //SEG338 [169] (word) sin8s::x#0 ← (word) sin8s_gen::x#2 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG339 [170] call sin8s jsr sin8s - //SEG340 [171] (signed byte) sin8s::return#0 ? (signed byte) sin8s::return#1 + //SEG340 [171] (signed byte) sin8s::return#0 ← (signed byte) sin8s::return#1 //SEG341 sin8s_gen::@3 - //SEG342 [172] (signed byte~) sin8s_gen::$1 ? (signed byte) sin8s::return#0 - //SEG343 [173] *((signed byte*) sin8s_gen::sintab#2) ? (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa + //SEG342 [172] (signed byte~) sin8s_gen::$1 ← (signed byte) sin8s::return#0 + //SEG343 [173] *((signed byte*) sin8s_gen::sintab#2) ← (signed byte~) sin8s_gen::$1 -- _deref_pbsz1=vbsaa ldy #0 sta (sintab),y - //SEG344 [174] (signed byte*) sin8s_gen::sintab#0 ? ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 + //SEG344 [174] (signed byte*) sin8s_gen::sintab#0 ← ++ (signed byte*) sin8s_gen::sintab#2 -- pbsz1=_inc_pbsz1 inc sintab bne !+ inc sintab+1 !: - //SEG345 [175] (word) sin8s_gen::x#1 ? (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG345 [175] (word) sin8s_gen::x#1 ← (word) sin8s_gen::x#2 + (word) sin8s_gen::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -9113,7 +9113,7 @@ sin8s_gen: { lda x+1 adc step+1 sta x+1 - //SEG346 [176] (word) sin8s_gen::i#1 ? ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 + //SEG346 [176] (word) sin8s_gen::i#1 ← ++ (word) sin8s_gen::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -9155,7 +9155,7 @@ sin8s: { bcc b5 !: //SEG352 sin8s::@5 - //SEG353 [180] (word) sin8s::x#1 ? (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG353 [180] (word) sin8s::x#1 ← (word) sin8s::x#0 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc #sin8s::@2#0] -- register_copy //SEG366 sin8s::@2 b2: - //SEG367 [185] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 + //SEG367 [185] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 asl _4 rol _4+1 asl _4 rol _4+1 asl _4 rol _4+1 - //SEG368 [186] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG368 [186] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG369 [187] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuxx=vbuz1 + //SEG369 [187] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuxx=vbuz1 tax - //SEG370 [188] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG370 [188] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 tay //SEG371 [189] call mulu8_sel //SEG372 [222] phi from sin8s::@2 to mulu8_sel [phi:sin8s::@2->mulu8_sel] @@ -9221,12 +9221,12 @@ sin8s: { //SEG374 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG375 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG376 [190] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + //SEG376 [190] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 //SEG377 sin8s::@9 - //SEG378 [191] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - //SEG379 [192] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuxx=vbuaa + //SEG378 [191] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + //SEG379 [192] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuxx=vbuaa tax - //SEG380 [193] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG380 [193] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG381 [194] call mulu8_sel //SEG382 [222] phi from sin8s::@9 to mulu8_sel [phi:sin8s::@9->mulu8_sel] @@ -9236,11 +9236,11 @@ sin8s: { //SEG384 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG385 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG386 [195] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + //SEG386 [195] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 //SEG387 sin8s::@10 - //SEG388 [196] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuaa + //SEG388 [196] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuaa sta x3 - //SEG389 [197] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG389 [197] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 tax //SEG390 [198] call mulu8_sel //SEG391 [222] phi from sin8s::@10 to mulu8_sel [phi:sin8s::@10->mulu8_sel] @@ -9251,17 +9251,17 @@ sin8s: { ldy #DIV_6 //SEG394 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG395 [199] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + //SEG395 [199] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 //SEG396 sin8s::@11 - //SEG397 [200] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - //SEG398 [201] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa + //SEG397 [200] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + //SEG398 [201] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa eor #$ff sec adc x1 sta usinx - //SEG399 [202] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG399 [202] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 - //SEG400 [203] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG400 [203] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG401 [204] call mulu8_sel //SEG402 [222] phi from sin8s::@11 to mulu8_sel [phi:sin8s::@11->mulu8_sel] @@ -9271,12 +9271,12 @@ sin8s: { //SEG404 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG405 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG406 [205] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + //SEG406 [205] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 //SEG407 sin8s::@12 - //SEG408 [206] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - //SEG409 [207] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuxx=vbuaa + //SEG408 [206] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + //SEG409 [207] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuxx=vbuaa tax - //SEG410 [208] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG410 [208] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG411 [209] call mulu8_sel //SEG412 [222] phi from sin8s::@12 to mulu8_sel [phi:sin8s::@12->mulu8_sel] @@ -9286,15 +9286,15 @@ sin8s: { //SEG414 [222] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG415 [222] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG416 [210] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + //SEG416 [210] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 //SEG417 sin8s::@13 - //SEG418 [211] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - //SEG419 [212] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG418 [211] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + //SEG419 [212] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG420 [213] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa + //SEG420 [213] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa clc adc usinx tax @@ -9302,7 +9302,7 @@ sin8s: { cpx #$80 bcc b3 //SEG422 sin8s::@7 - //SEG423 [215] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx + //SEG423 [215] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx dex //SEG424 [216] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] //SEG425 [216] phi (byte) sin8s::usinx#4 = (byte) sin8s::usinx#1 [phi:sin8s::@13/sin8s::@7->sin8s::@3#0] -- register_copy @@ -9313,7 +9313,7 @@ sin8s: { cmp #0 beq b14 //SEG428 sin8s::@8 - //SEG429 [218] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx + //SEG429 [218] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx txa eor #$ff clc @@ -9326,7 +9326,7 @@ sin8s: { rts //SEG435 sin8s::@14 b14: - //SEG436 [221] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx + //SEG436 [221] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx txa rts } @@ -9338,15 +9338,15 @@ mulu8_sel: { .label _0 = $13 .label _1 = $13 .label select = $1b - //SEG438 [223] (byte) mul8u::a#1 ? (byte) mulu8_sel::v1#5 - //SEG439 [224] (byte) mul8u::b#0 ? (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy + //SEG438 [223] (byte) mul8u::a#1 ← (byte) mulu8_sel::v1#5 + //SEG439 [224] (byte) mul8u::b#0 ← (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy tya //SEG440 [225] call mul8u jsr mul8u - //SEG441 [226] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG441 [226] (word) mul8u::return#2 ← (word) mul8u::res#2 //SEG442 mulu8_sel::@1 - //SEG443 [227] (word~) mulu8_sel::$0 ? (word) mul8u::return#2 - //SEG444 [228] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 + //SEG443 [227] (word~) mulu8_sel::$0 ← (word) mul8u::return#2 + //SEG444 [228] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 ldy select beq !e+ !: @@ -9355,7 +9355,7 @@ mulu8_sel: { dey bne !- !e: - //SEG445 [229] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 + //SEG445 [229] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 lda _1+1 //SEG446 mulu8_sel::@return //SEG447 [230] return @@ -9368,7 +9368,7 @@ mul8u: { .label mb = $15 .label res = $13 .label return = $13 - //SEG449 [231] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa + //SEG449 [231] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#0 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -9388,14 +9388,14 @@ mul8u: { rts //SEG458 mul8u::@2 b2: - //SEG459 [235] (byte~) mul8u::$1 ? (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG459 [235] (byte~) mul8u::$1 ← (byte) mul8u::a#2 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG460 [236] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG461 mul8u::@4 - //SEG462 [237] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG462 [237] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -9407,11 +9407,11 @@ mul8u: { //SEG464 [238] phi (word) mul8u::res#6 = (word) mul8u::res#2 [phi:mul8u::@2/mul8u::@4->mul8u::@3#0] -- register_copy //SEG465 mul8u::@3 b3: - //SEG466 [239] (byte) mul8u::a#0 ? (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG466 [239] (byte) mul8u::a#0 ← (byte) mul8u::a#2 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG467 [240] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG467 [240] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG468 [232] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -9439,9 +9439,9 @@ div16u: { sta divr16u.rem sta divr16u.rem+1 jsr divr16u - //SEG477 [243] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG477 [243] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG478 div16u::@1 - //SEG479 [244] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG479 [244] (word) div16u::return#0 ← (word) divr16u::return#2 //SEG480 div16u::@return //SEG481 [245] return rts diff --git a/src/test/ref/sinusgenscale8.log b/src/test/ref/sinusgenscale8.log index 6633477de..0f7a444eb 100644 --- a/src/test/ref/sinusgenscale8.log +++ b/src/test/ref/sinusgenscale8.log @@ -2,1057 +2,1057 @@ Identified constant variable (word) main::tabsize CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@2 @2: scope:[] from @begin - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@5 divr16u: scope:[divr16u] from div16u - (word) divr16u::divisor#5 ? phi( div16u/(word) divr16u::divisor#0 ) - (word) divr16u::dividend#4 ? phi( div16u/(word) divr16u::dividend#1 ) - (word) divr16u::rem#9 ? phi( div16u/(word) divr16u::rem#3 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#5 ← phi( div16u/(word) divr16u::divisor#0 ) + (word) divr16u::dividend#4 ← phi( div16u/(word) divr16u::dividend#1 ) + (word) divr16u::rem#9 ← phi( div16u/(word) divr16u::rem#3 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#3 ? phi( divr16u/(word) divr16u::divisor#5 divr16u::@3/(word) divr16u::divisor#6 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#2 ? phi( divr16u/(word) divr16u::dividend#4 divr16u::@3/(word) divr16u::dividend#5 ) - (word) divr16u::rem#4 ? phi( divr16u/(word) divr16u::rem#9 divr16u::@3/(word) divr16u::rem#10 ) - (word~) divr16u::$0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#3 ← phi( divr16u/(word) divr16u::divisor#5 divr16u::@3/(word) divr16u::divisor#6 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#2 ← phi( divr16u/(word) divr16u::dividend#4 divr16u::@3/(word) divr16u::dividend#5 ) + (word) divr16u::rem#4 ← phi( divr16u/(word) divr16u::rem#9 divr16u::@3/(word) divr16u::rem#10 ) + (word~) divr16u::$0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#1 ? phi( divr16u::@1/(word) divr16u::divisor#3 divr16u::@4/(word) divr16u::divisor#4 ) - (word) divr16u::rem#5 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#3 ? phi( divr16u::@1/(word) divr16u::dividend#2 divr16u::@4/(word) divr16u::dividend#6 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#5 >= (word) divr16u::divisor#1 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#1 ← phi( divr16u::@1/(word) divr16u::divisor#3 divr16u::@4/(word) divr16u::divisor#4 ) + (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#3 ← phi( divr16u::@1/(word) divr16u::dividend#2 divr16u::@4/(word) divr16u::dividend#6 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#5 >= (word) divr16u::divisor#1 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#4 ? phi( divr16u::@1/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#6 ? phi( divr16u::@1/(word) divr16u::dividend#2 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#4 ← phi( divr16u::@1/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#6 ← phi( divr16u::@1/(word) divr16u::dividend#2 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#6 ? phi( divr16u::@2/(word) divr16u::divisor#1 divr16u::@5/(word) divr16u::divisor#2 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#5 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#7 ) - (word) divr16u::rem#10 ? phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#6 ← phi( divr16u::@2/(word) divr16u::divisor#1 divr16u::@5/(word) divr16u::divisor#2 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#5 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#7 ) + (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#7 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#2 ? phi( divr16u::@2/(word) divr16u::divisor#1 ) - (word) divr16u::rem#7 ? phi( divr16u::@2/(word) divr16u::rem#5 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#7 - (word) divr16u::divisor#2 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#7 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#2 ← phi( divr16u::@2/(word) divr16u::divisor#1 ) + (word) divr16u::rem#7 ← phi( divr16u::@2/(word) divr16u::rem#5 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#7 - (word) divr16u::divisor#2 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#8 ? phi( divr16u::@3/(word) divr16u::rem#10 ) - (word) rem16u#1 ? (word) divr16u::rem#8 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#8 ← phi( divr16u::@3/(word) divr16u::rem#10 ) + (word) rem16u#1 ← (word) divr16u::rem#8 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#10 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#3 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#3 - (word) rem16u#2 ? (word) rem16u#10 + (word) rem16u#10 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#3 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#3 + (word) rem16u#2 ← (word) rem16u#10 return to:@return div16u: scope:[div16u] from sin8u_table - (word) rem16u#18 ? phi( sin8u_table/(word) rem16u#20 ) - (word) div16u::divisor#1 ? phi( sin8u_table/(word) div16u::divisor#0 ) - (word) div16u::dividend#1 ? phi( sin8u_table/(word) div16u::dividend#0 ) - (word) divr16u::dividend#1 ? (word) div16u::dividend#1 - (word) divr16u::divisor#0 ? (word) div16u::divisor#1 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#18 ← phi( sin8u_table/(word) rem16u#20 ) + (word) div16u::divisor#1 ← phi( sin8u_table/(word) div16u::divisor#0 ) + (word) div16u::dividend#1 ← phi( sin8u_table/(word) div16u::dividend#0 ) + (word) divr16u::dividend#1 ← (word) div16u::dividend#1 + (word) divr16u::divisor#0 ← (word) div16u::divisor#1 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div16u::@2 div16u::@2: scope:[div16u] from div16u - (word) rem16u#11 ? phi( div16u/(word) rem16u#2 ) - (word) divr16u::return#4 ? phi( div16u/(word) divr16u::return#2 ) - (word~) div16u::$0 ? (word) divr16u::return#4 - (word) rem16u#3 ? (word) rem16u#11 - (word) div16u::return#0 ? (word~) div16u::$0 + (word) rem16u#11 ← phi( div16u/(word) rem16u#2 ) + (word) divr16u::return#4 ← phi( div16u/(word) divr16u::return#2 ) + (word~) div16u::$0 ← (word) divr16u::return#4 + (word) rem16u#3 ← (word) rem16u#11 + (word) div16u::return#0 ← (word~) div16u::$0 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@2 - (word) rem16u#12 ? phi( div16u::@2/(word) rem16u#3 ) - (word) div16u::return#3 ? phi( div16u::@2/(word) div16u::return#0 ) - (word) div16u::return#1 ? (word) div16u::return#3 - (word) rem16u#4 ? (word) rem16u#12 + (word) rem16u#12 ← phi( div16u::@2/(word) rem16u#3 ) + (word) div16u::return#3 ← phi( div16u::@2/(word) div16u::return#0 ) + (word) div16u::return#1 ← (word) div16u::return#3 + (word) rem16u#4 ← (word) rem16u#12 return to:@return @5: scope:[] from @2 - (word) rem16u#32 ? phi( @2/(word) rem16u#0 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#32 ← phi( @2/(word) rem16u#0 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@6 @6: scope:[] from @5 - (word) rem16u#30 ? phi( @5/(word) rem16u#32 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#30 ← phi( @5/(word) rem16u#32 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@13 mul8u: scope:[mul8u] from mul8su mulu8_sel - (byte) mul8u::a#6 ? phi( mul8su/(byte) mul8u::a#1 mulu8_sel/(byte) mul8u::a#2 ) - (byte) mul8u::b#2 ? phi( mul8su/(byte) mul8u::b#0 mulu8_sel/(byte) mul8u::b#1 ) - (word) mul8u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 + (byte) mul8u::a#6 ← phi( mul8su/(byte) mul8u::a#1 mulu8_sel/(byte) mul8u::a#2 ) + (byte) mul8u::b#2 ← phi( mul8su/(byte) mul8u::b#0 mulu8_sel/(byte) mul8u::b#1 ) + (word) mul8u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 - (word) mul8u::mb#5 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) - (word) mul8u::res#4 ? phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) - (byte) mul8u::a#3 ? phi( mul8u/(byte) mul8u::a#6 mul8u::@4/(byte) mul8u::a#0 ) - (bool~) mul8u::$0 ? (byte) mul8u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#5 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) + (word) mul8u::res#4 ← phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) + (byte) mul8u::a#3 ← phi( mul8u/(byte) mul8u::a#6 mul8u::@4/(byte) mul8u::a#0 ) + (bool~) mul8u::$0 ← (byte) mul8u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul8u::$0) goto mul8u::@2 to:mul8u::@3 mul8u::@2: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#5 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::mb#4 ? phi( mul8u::@1/(word) mul8u::mb#5 ) - (byte) mul8u::a#4 ? phi( mul8u::@1/(byte) mul8u::a#3 ) - (byte~) mul8u::$1 ? (byte) mul8u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8u::$3 ? ! (bool~) mul8u::$2 + (word) mul8u::res#5 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::mb#4 ← phi( mul8u::@1/(word) mul8u::mb#5 ) + (byte) mul8u::a#4 ← phi( mul8u::@1/(byte) mul8u::a#3 ) + (byte~) mul8u::$1 ← (byte) mul8u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8u::$3 ← ! (bool~) mul8u::$2 if((bool~) mul8u::$3) goto mul8u::@4 to:mul8u::@7 mul8u::@3: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#2 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::return#0 ? (word) mul8u::res#2 + (word) mul8u::res#2 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::return#0 ← (word) mul8u::res#2 to:mul8u::@return mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 - (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) - (word) mul8u::mb#2 ? phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) - (byte) mul8u::a#5 ? phi( mul8u::@2/(byte) mul8u::a#4 mul8u::@7/(byte) mul8u::a#7 ) - (byte~) mul8u::$5 ? (byte) mul8u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) mul8u::a#0 ? (byte~) mul8u::$5 - (word~) mul8u::$6 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul8u::mb#1 ? (word~) mul8u::$6 + (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) + (word) mul8u::mb#2 ← phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) + (byte) mul8u::a#5 ← phi( mul8u::@2/(byte) mul8u::a#4 mul8u::@7/(byte) mul8u::a#7 ) + (byte~) mul8u::$5 ← (byte) mul8u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mul8u::a#0 ← (byte~) mul8u::$5 + (word~) mul8u::$6 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul8u::mb#1 ← (word~) mul8u::$6 to:mul8u::@1 mul8u::@7: scope:[mul8u] from mul8u::@2 - (byte) mul8u::a#7 ? phi( mul8u::@2/(byte) mul8u::a#4 ) - (word) mul8u::mb#3 ? phi( mul8u::@2/(word) mul8u::mb#4 ) - (word) mul8u::res#3 ? phi( mul8u::@2/(word) mul8u::res#5 ) - (word~) mul8u::$4 ? (word) mul8u::res#3 + (word) mul8u::mb#3 - (word) mul8u::res#1 ? (word~) mul8u::$4 + (byte) mul8u::a#7 ← phi( mul8u::@2/(byte) mul8u::a#4 ) + (word) mul8u::mb#3 ← phi( mul8u::@2/(word) mul8u::mb#4 ) + (word) mul8u::res#3 ← phi( mul8u::@2/(word) mul8u::res#5 ) + (word~) mul8u::$4 ← (word) mul8u::res#3 + (word) mul8u::mb#3 + (word) mul8u::res#1 ← (word~) mul8u::$4 to:mul8u::@4 mul8u::@return: scope:[mul8u] from mul8u::@3 - (word) mul8u::return#4 ? phi( mul8u::@3/(word) mul8u::return#0 ) - (word) mul8u::return#1 ? (word) mul8u::return#4 + (word) mul8u::return#4 ← phi( mul8u::@3/(word) mul8u::return#0 ) + (word) mul8u::return#1 ← (word) mul8u::return#4 return to:@return mul8su: scope:[mul8su] from sin8u_table::@15 - (byte) mul8su::b#1 ? phi( sin8u_table::@15/(byte) mul8su::b#0 ) - (signed byte) mul8su::a#1 ? phi( sin8u_table::@15/(signed byte) mul8su::a#0 ) - (byte~) mul8su::$0 ? ((byte)) (signed byte) mul8su::a#1 - (byte~) mul8su::$1 ? ((byte)) (byte) mul8su::b#1 - (byte) mul8u::a#1 ? (byte~) mul8su::$0 - (byte) mul8u::b#0 ? (byte~) mul8su::$1 + (byte) mul8su::b#1 ← phi( sin8u_table::@15/(byte) mul8su::b#0 ) + (signed byte) mul8su::a#1 ← phi( sin8u_table::@15/(signed byte) mul8su::a#0 ) + (byte~) mul8su::$0 ← ((byte)) (signed byte) mul8su::a#1 + (byte~) mul8su::$1 ← ((byte)) (byte) mul8su::b#1 + (byte) mul8u::a#1 ← (byte~) mul8su::$0 + (byte) mul8u::b#0 ← (byte~) mul8su::$1 call mul8u - (word) mul8u::return#2 ? (word) mul8u::return#1 + (word) mul8u::return#2 ← (word) mul8u::return#1 to:mul8su::@4 mul8su::@4: scope:[mul8su] from mul8su - (byte) mul8su::b#3 ? phi( mul8su/(byte) mul8su::b#1 ) - (signed byte) mul8su::a#2 ? phi( mul8su/(signed byte) mul8su::a#1 ) - (word) mul8u::return#5 ? phi( mul8su/(word) mul8u::return#2 ) - (word~) mul8su::$2 ? (word) mul8u::return#5 - (word) mul8su::m#0 ? (word~) mul8su::$2 - (bool~) mul8su::$3 ? (signed byte) mul8su::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8su::$4 ? ! (bool~) mul8su::$3 + (byte) mul8su::b#3 ← phi( mul8su/(byte) mul8su::b#1 ) + (signed byte) mul8su::a#2 ← phi( mul8su/(signed byte) mul8su::a#1 ) + (word) mul8u::return#5 ← phi( mul8su/(word) mul8u::return#2 ) + (word~) mul8su::$2 ← (word) mul8u::return#5 + (word) mul8su::m#0 ← (word~) mul8su::$2 + (bool~) mul8su::$3 ← (signed byte) mul8su::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8su::$4 ← ! (bool~) mul8su::$3 if((bool~) mul8su::$4) goto mul8su::@1 to:mul8su::@2 mul8su::@1: scope:[mul8su] from mul8su::@2 mul8su::@4 - (word) mul8su::m#2 ? phi( mul8su::@2/(word) mul8su::m#1 mul8su::@4/(word) mul8su::m#0 ) - (signed word~) mul8su::$5 ? ((signed word)) (word) mul8su::m#2 - (signed word) mul8su::return#0 ? (signed word~) mul8su::$5 + (word) mul8su::m#2 ← phi( mul8su::@2/(word) mul8su::m#1 mul8su::@4/(word) mul8su::m#0 ) + (signed word~) mul8su::$5 ← ((signed word)) (word) mul8su::m#2 + (signed word) mul8su::return#0 ← (signed word~) mul8su::$5 to:mul8su::@return mul8su::@2: scope:[mul8su] from mul8su::@4 - (byte) mul8su::b#2 ? phi( mul8su::@4/(byte) mul8su::b#3 ) - (word) mul8su::m#3 ? phi( mul8su::@4/(word) mul8su::m#0 ) - (byte~) mul8su::$7 ? > (word) mul8su::m#3 - (byte~) mul8su::$8 ? ((byte)) (byte) mul8su::b#2 - (byte~) mul8su::$9 ? (byte~) mul8su::$7 - (byte~) mul8su::$8 - (byte~) mul8su::$10 ? (byte~) mul8su::$9 - (word) mul8su::m#1 ? (word) mul8su::m#3 hi= (byte~) mul8su::$10 + (byte) mul8su::b#2 ← phi( mul8su::@4/(byte) mul8su::b#3 ) + (word) mul8su::m#3 ← phi( mul8su::@4/(word) mul8su::m#0 ) + (byte~) mul8su::$7 ← > (word) mul8su::m#3 + (byte~) mul8su::$8 ← ((byte)) (byte) mul8su::b#2 + (byte~) mul8su::$9 ← (byte~) mul8su::$7 - (byte~) mul8su::$8 + (byte~) mul8su::$10 ← (byte~) mul8su::$9 + (word) mul8su::m#1 ← (word) mul8su::m#3 hi= (byte~) mul8su::$10 to:mul8su::@1 mul8su::@return: scope:[mul8su] from mul8su::@1 - (signed word) mul8su::return#3 ? phi( mul8su::@1/(signed word) mul8su::return#0 ) - (signed word) mul8su::return#1 ? (signed word) mul8su::return#3 + (signed word) mul8su::return#3 ← phi( mul8su::@1/(signed word) mul8su::return#0 ) + (signed word) mul8su::return#1 ← (signed word) mul8su::return#3 return to:@return @13: scope:[] from @6 - (word) rem16u#28 ? phi( @6/(word) rem16u#30 ) - (dword) PI2_u4f28#0 ? (dword/signed dword) $6487ed51 - (dword) PI_u4f28#0 ? (dword/signed dword) $3243f6a9 - (dword) PI_HALF_u4f28#0 ? (dword/signed dword) $1921fb54 - (word) PI2_u4f12#0 ? (word/signed word/dword/signed dword) $6488 - (word) PI_u4f12#0 ? (word/signed word/dword/signed dword) $3244 - (word) PI_HALF_u4f12#0 ? (word/signed word/dword/signed dword) $1922 + (word) rem16u#28 ← phi( @6/(word) rem16u#30 ) + (dword) PI2_u4f28#0 ← (dword/signed dword) $6487ed51 + (dword) PI_u4f28#0 ← (dword/signed dword) $3243f6a9 + (dword) PI_HALF_u4f28#0 ← (dword/signed dword) $1921fb54 + (word) PI2_u4f12#0 ← (word/signed word/dword/signed dword) $6488 + (word) PI_u4f12#0 ← (word/signed word/dword/signed dword) $3244 + (word) PI_HALF_u4f12#0 ← (word/signed word/dword/signed dword) $1922 to:@20 sin8s: scope:[sin8s] from sin8u_table::@1 - (word) sin8s::x#3 ? phi( sin8u_table::@1/(word) sin8s::x#2 ) - (byte) sin8s::isUpper#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin8s::$0 ? (word) sin8s::x#3 >= (word) PI_u4f12#0 - (bool~) sin8s::$1 ? ! (bool~) sin8s::$0 + (word) sin8s::x#3 ← phi( sin8u_table::@1/(word) sin8s::x#2 ) + (byte) sin8s::isUpper#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin8s::$0 ← (word) sin8s::x#3 >= (word) PI_u4f12#0 + (bool~) sin8s::$1 ← ! (bool~) sin8s::$0 if((bool~) sin8s::$1) goto sin8s::@1 to:sin8s::@5 sin8s::@1: scope:[sin8s] from sin8s sin8s::@5 - (byte) sin8s::isUpper#10 ? phi( sin8s/(byte) sin8s::isUpper#0 sin8s::@5/(byte) sin8s::isUpper#1 ) - (word) sin8s::x#4 ? phi( sin8s/(word) sin8s::x#3 sin8s::@5/(word) sin8s::x#0 ) - (bool~) sin8s::$2 ? (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 - (bool~) sin8s::$3 ? ! (bool~) sin8s::$2 + (byte) sin8s::isUpper#10 ← phi( sin8s/(byte) sin8s::isUpper#0 sin8s::@5/(byte) sin8s::isUpper#1 ) + (word) sin8s::x#4 ← phi( sin8s/(word) sin8s::x#3 sin8s::@5/(word) sin8s::x#0 ) + (bool~) sin8s::$2 ← (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 + (bool~) sin8s::$3 ← ! (bool~) sin8s::$2 if((bool~) sin8s::$3) goto sin8s::@2 to:sin8s::@6 sin8s::@5: scope:[sin8s] from sin8s - (word) sin8s::x#5 ? phi( sin8s/(word) sin8s::x#3 ) - (word~) sin8s::$19 ? (word) sin8s::x#5 - (word) PI_u4f12#0 - (word) sin8s::x#0 ? (word~) sin8s::$19 - (byte) sin8s::isUpper#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) sin8s::x#5 ← phi( sin8s/(word) sin8s::x#3 ) + (word~) sin8s::$19 ← (word) sin8s::x#5 - (word) PI_u4f12#0 + (word) sin8s::x#0 ← (word~) sin8s::$19 + (byte) sin8s::isUpper#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:sin8s::@1 sin8s::@2: scope:[sin8s] from sin8s::@1 sin8s::@6 - (byte) sin8s::isUpper#9 ? phi( sin8s::@1/(byte) sin8s::isUpper#10 sin8s::@6/(byte) sin8s::isUpper#11 ) - (word) sin8s::x#6 ? phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#1 ) - (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - (byte~) sin8s::$5 ? > (word~) sin8s::$4 - (byte) sin8s::x1#0 ? (byte~) sin8s::$5 - (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 - (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 - (byte) mulu8_sel::select#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#9 ← phi( sin8s::@1/(byte) sin8s::isUpper#10 sin8s::@6/(byte) sin8s::isUpper#11 ) + (word) sin8s::x#6 ← phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#1 ) + (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + (byte~) sin8s::$5 ← > (word~) sin8s::$4 + (byte) sin8s::x1#0 ← (byte~) sin8s::$5 + (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 + (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 + (byte) mulu8_sel::select#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#6 to:sin8s::@10 sin8s::@10: scope:[sin8s] from sin8s::@2 - (byte) sin8s::isUpper#8 ? phi( sin8s::@2/(byte) sin8s::isUpper#9 ) - (byte) sin8s::x1#1 ? phi( sin8s::@2/(byte) sin8s::x1#0 ) - (byte) mulu8_sel::return#7 ? phi( sin8s::@2/(byte) mulu8_sel::return#0 ) - (byte~) sin8s::$6 ? (byte) mulu8_sel::return#7 - (byte) sin8s::x2#0 ? (byte~) sin8s::$6 - (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 - (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#1 - (byte) mulu8_sel::select#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin8s::isUpper#8 ← phi( sin8s::@2/(byte) sin8s::isUpper#9 ) + (byte) sin8s::x1#1 ← phi( sin8s::@2/(byte) sin8s::x1#0 ) + (byte) mulu8_sel::return#7 ← phi( sin8s::@2/(byte) mulu8_sel::return#0 ) + (byte~) sin8s::$6 ← (byte) mulu8_sel::return#7 + (byte) sin8s::x2#0 ← (byte~) sin8s::$6 + (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 + (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#1 + (byte) mulu8_sel::select#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu8_sel - (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#6 to:sin8s::@11 sin8s::@11: scope:[sin8s] from sin8s::@10 - (byte) sin8s::isUpper#7 ? phi( sin8s::@10/(byte) sin8s::isUpper#8 ) - (byte) sin8s::x1#4 ? phi( sin8s::@10/(byte) sin8s::x1#1 ) - (byte) mulu8_sel::return#8 ? phi( sin8s::@10/(byte) mulu8_sel::return#1 ) - (byte~) sin8s::$7 ? (byte) mulu8_sel::return#8 - (byte) sin8s::x3#0 ? (byte~) sin8s::$7 - (byte) sin8s::DIV_6#0 ? (byte/signed byte/word/signed word/dword/signed dword) $2b - (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 - (byte) mulu8_sel::v2#2 ? (byte) sin8s::DIV_6#0 - (byte) mulu8_sel::select#2 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) sin8s::isUpper#7 ← phi( sin8s::@10/(byte) sin8s::isUpper#8 ) + (byte) sin8s::x1#4 ← phi( sin8s::@10/(byte) sin8s::x1#1 ) + (byte) mulu8_sel::return#8 ← phi( sin8s::@10/(byte) mulu8_sel::return#1 ) + (byte~) sin8s::$7 ← (byte) mulu8_sel::return#8 + (byte) sin8s::x3#0 ← (byte~) sin8s::$7 + (byte) sin8s::DIV_6#0 ← (byte/signed byte/word/signed word/dword/signed dword) $2b + (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 + (byte) mulu8_sel::v2#2 ← (byte) sin8s::DIV_6#0 + (byte) mulu8_sel::select#2 ← (byte/signed byte/word/signed word/dword/signed dword) 1 call mulu8_sel - (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#6 to:sin8s::@12 sin8s::@12: scope:[sin8s] from sin8s::@11 - (byte) sin8s::isUpper#6 ? phi( sin8s::@11/(byte) sin8s::isUpper#7 ) - (byte) sin8s::x3#1 ? phi( sin8s::@11/(byte) sin8s::x3#0 ) - (byte) sin8s::x1#2 ? phi( sin8s::@11/(byte) sin8s::x1#4 ) - (byte) mulu8_sel::return#9 ? phi( sin8s::@11/(byte) mulu8_sel::return#2 ) - (byte~) sin8s::$8 ? (byte) mulu8_sel::return#9 - (byte) sin8s::x3_6#0 ? (byte~) sin8s::$8 - (byte~) sin8s::$9 ? (byte) sin8s::x1#2 - (byte) sin8s::x3_6#0 - (byte) sin8s::usinx#0 ? (byte~) sin8s::$9 - (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#1 - (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#2 - (byte) mulu8_sel::select#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#6 ← phi( sin8s::@11/(byte) sin8s::isUpper#7 ) + (byte) sin8s::x3#1 ← phi( sin8s::@11/(byte) sin8s::x3#0 ) + (byte) sin8s::x1#2 ← phi( sin8s::@11/(byte) sin8s::x1#4 ) + (byte) mulu8_sel::return#9 ← phi( sin8s::@11/(byte) mulu8_sel::return#2 ) + (byte~) sin8s::$8 ← (byte) mulu8_sel::return#9 + (byte) sin8s::x3_6#0 ← (byte~) sin8s::$8 + (byte~) sin8s::$9 ← (byte) sin8s::x1#2 - (byte) sin8s::x3_6#0 + (byte) sin8s::usinx#0 ← (byte~) sin8s::$9 + (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#1 + (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#2 + (byte) mulu8_sel::select#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#3 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#3 ← (byte) mulu8_sel::return#6 to:sin8s::@13 sin8s::@13: scope:[sin8s] from sin8s::@12 - (byte) sin8s::isUpper#5 ? phi( sin8s::@12/(byte) sin8s::isUpper#6 ) - (byte) sin8s::usinx#7 ? phi( sin8s::@12/(byte) sin8s::usinx#0 ) - (byte) sin8s::x1#3 ? phi( sin8s::@12/(byte) sin8s::x1#2 ) - (byte) mulu8_sel::return#10 ? phi( sin8s::@12/(byte) mulu8_sel::return#3 ) - (byte~) sin8s::$10 ? (byte) mulu8_sel::return#10 - (byte) sin8s::x4#0 ? (byte~) sin8s::$10 - (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 - (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#3 - (byte) mulu8_sel::select#4 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) sin8s::isUpper#5 ← phi( sin8s::@12/(byte) sin8s::isUpper#6 ) + (byte) sin8s::usinx#7 ← phi( sin8s::@12/(byte) sin8s::usinx#0 ) + (byte) sin8s::x1#3 ← phi( sin8s::@12/(byte) sin8s::x1#2 ) + (byte) mulu8_sel::return#10 ← phi( sin8s::@12/(byte) mulu8_sel::return#3 ) + (byte~) sin8s::$10 ← (byte) mulu8_sel::return#10 + (byte) sin8s::x4#0 ← (byte~) sin8s::$10 + (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 + (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#3 + (byte) mulu8_sel::select#4 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call mulu8_sel - (byte) mulu8_sel::return#4 ? (byte) mulu8_sel::return#6 + (byte) mulu8_sel::return#4 ← (byte) mulu8_sel::return#6 to:sin8s::@14 sin8s::@14: scope:[sin8s] from sin8s::@13 - (byte) sin8s::isUpper#3 ? phi( sin8s::@13/(byte) sin8s::isUpper#5 ) - (byte) sin8s::usinx#3 ? phi( sin8s::@13/(byte) sin8s::usinx#7 ) - (byte) mulu8_sel::return#11 ? phi( sin8s::@13/(byte) mulu8_sel::return#4 ) - (byte~) sin8s::$11 ? (byte) mulu8_sel::return#11 - (byte) sin8s::x5#0 ? (byte~) sin8s::$11 - (byte~) sin8s::$12 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) sin8s::x5_128#0 ? (byte~) sin8s::$12 - (byte~) sin8s::$13 ? (byte) sin8s::usinx#3 + (byte) sin8s::x5_128#0 - (byte) sin8s::usinx#1 ? (byte~) sin8s::$13 - (bool~) sin8s::$14 ? (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 - (bool~) sin8s::$15 ? ! (bool~) sin8s::$14 + (byte) sin8s::isUpper#3 ← phi( sin8s::@13/(byte) sin8s::isUpper#5 ) + (byte) sin8s::usinx#3 ← phi( sin8s::@13/(byte) sin8s::usinx#7 ) + (byte) mulu8_sel::return#11 ← phi( sin8s::@13/(byte) mulu8_sel::return#4 ) + (byte~) sin8s::$11 ← (byte) mulu8_sel::return#11 + (byte) sin8s::x5#0 ← (byte~) sin8s::$11 + (byte~) sin8s::$12 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) sin8s::x5_128#0 ← (byte~) sin8s::$12 + (byte~) sin8s::$13 ← (byte) sin8s::usinx#3 + (byte) sin8s::x5_128#0 + (byte) sin8s::usinx#1 ← (byte~) sin8s::$13 + (bool~) sin8s::$14 ← (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 + (bool~) sin8s::$15 ← ! (bool~) sin8s::$14 if((bool~) sin8s::$15) goto sin8s::@3 to:sin8s::@7 sin8s::@6: scope:[sin8s] from sin8s::@1 - (byte) sin8s::isUpper#11 ? phi( sin8s::@1/(byte) sin8s::isUpper#10 ) - (word) sin8s::x#7 ? phi( sin8s::@1/(word) sin8s::x#4 ) - (word~) sin8s::$20 ? (word) PI_u4f12#0 - (word) sin8s::x#7 - (word) sin8s::x#1 ? (word~) sin8s::$20 + (byte) sin8s::isUpper#11 ← phi( sin8s::@1/(byte) sin8s::isUpper#10 ) + (word) sin8s::x#7 ← phi( sin8s::@1/(word) sin8s::x#4 ) + (word~) sin8s::$20 ← (word) PI_u4f12#0 - (word) sin8s::x#7 + (word) sin8s::x#1 ← (word~) sin8s::$20 to:sin8s::@2 sin8s::@3: scope:[sin8s] from sin8s::@14 sin8s::@7 - (byte) sin8s::isUpper#2 ? phi( sin8s::@14/(byte) sin8s::isUpper#3 sin8s::@7/(byte) sin8s::isUpper#4 ) - (byte) sin8s::usinx#4 ? phi( sin8s::@14/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) - (signed byte~) sin8s::$16 ? ((signed byte)) (byte) sin8s::usinx#4 - (signed byte) sin8s::sinx#0 ? (signed byte~) sin8s::$16 - (bool~) sin8s::$17 ? (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) sin8s::$18 ? ! (bool~) sin8s::$17 + (byte) sin8s::isUpper#2 ← phi( sin8s::@14/(byte) sin8s::isUpper#3 sin8s::@7/(byte) sin8s::isUpper#4 ) + (byte) sin8s::usinx#4 ← phi( sin8s::@14/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) + (signed byte~) sin8s::$16 ← ((signed byte)) (byte) sin8s::usinx#4 + (signed byte) sin8s::sinx#0 ← (signed byte~) sin8s::$16 + (bool~) sin8s::$17 ← (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) sin8s::$18 ← ! (bool~) sin8s::$17 if((bool~) sin8s::$18) goto sin8s::@4 to:sin8s::@8 sin8s::@7: scope:[sin8s] from sin8s::@14 - (byte) sin8s::isUpper#4 ? phi( sin8s::@14/(byte) sin8s::isUpper#3 ) - (byte) sin8s::usinx#5 ? phi( sin8s::@14/(byte) sin8s::usinx#1 ) - (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#5 + (byte) sin8s::isUpper#4 ← phi( sin8s::@14/(byte) sin8s::isUpper#3 ) + (byte) sin8s::usinx#5 ← phi( sin8s::@14/(byte) sin8s::usinx#1 ) + (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#5 to:sin8s::@3 sin8s::@4: scope:[sin8s] from sin8s::@3 sin8s::@8 - (signed byte) sin8s::sinx#2 ? phi( sin8s::@3/(signed byte) sin8s::sinx#0 sin8s::@8/(signed byte) sin8s::sinx#1 ) - (signed byte) sin8s::return#0 ? (signed byte) sin8s::sinx#2 + (signed byte) sin8s::sinx#2 ← phi( sin8s::@3/(signed byte) sin8s::sinx#0 sin8s::@8/(signed byte) sin8s::sinx#1 ) + (signed byte) sin8s::return#0 ← (signed byte) sin8s::sinx#2 to:sin8s::@return sin8s::@8: scope:[sin8s] from sin8s::@3 - (byte) sin8s::usinx#6 ? phi( sin8s::@3/(byte) sin8s::usinx#4 ) - (signed byte~) sin8s::$21 ? ((signed byte)) (byte) sin8s::usinx#6 - (signed byte~) sin8s::$22 ? - (signed byte~) sin8s::$21 - (signed byte) sin8s::sinx#1 ? (signed byte~) sin8s::$22 + (byte) sin8s::usinx#6 ← phi( sin8s::@3/(byte) sin8s::usinx#4 ) + (signed byte~) sin8s::$21 ← ((signed byte)) (byte) sin8s::usinx#6 + (signed byte~) sin8s::$22 ← - (signed byte~) sin8s::$21 + (signed byte) sin8s::sinx#1 ← (signed byte~) sin8s::$22 to:sin8s::@4 sin8s::@return: scope:[sin8s] from sin8s::@4 - (signed byte) sin8s::return#3 ? phi( sin8s::@4/(signed byte) sin8s::return#0 ) - (signed byte) sin8s::return#1 ? (signed byte) sin8s::return#3 + (signed byte) sin8s::return#3 ← phi( sin8s::@4/(signed byte) sin8s::return#0 ) + (signed byte) sin8s::return#1 ← (signed byte) sin8s::return#3 return to:@return mulu8_sel: scope:[mulu8_sel] from sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@13 sin8s::@2 - (byte) mulu8_sel::select#6 ? phi( sin8s::@10/(byte) mulu8_sel::select#1 sin8s::@11/(byte) mulu8_sel::select#2 sin8s::@12/(byte) mulu8_sel::select#3 sin8s::@13/(byte) mulu8_sel::select#4 sin8s::@2/(byte) mulu8_sel::select#0 ) - (byte) mulu8_sel::v2#5 ? phi( sin8s::@10/(byte) mulu8_sel::v2#1 sin8s::@11/(byte) mulu8_sel::v2#2 sin8s::@12/(byte) mulu8_sel::v2#3 sin8s::@13/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) - (byte) mulu8_sel::v1#5 ? phi( sin8s::@10/(byte) mulu8_sel::v1#1 sin8s::@11/(byte) mulu8_sel::v1#2 sin8s::@12/(byte) mulu8_sel::v1#3 sin8s::@13/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) - (byte) mul8u::a#2 ? (byte) mulu8_sel::v1#5 - (byte) mul8u::b#1 ? (byte) mulu8_sel::v2#5 + (byte) mulu8_sel::select#6 ← phi( sin8s::@10/(byte) mulu8_sel::select#1 sin8s::@11/(byte) mulu8_sel::select#2 sin8s::@12/(byte) mulu8_sel::select#3 sin8s::@13/(byte) mulu8_sel::select#4 sin8s::@2/(byte) mulu8_sel::select#0 ) + (byte) mulu8_sel::v2#5 ← phi( sin8s::@10/(byte) mulu8_sel::v2#1 sin8s::@11/(byte) mulu8_sel::v2#2 sin8s::@12/(byte) mulu8_sel::v2#3 sin8s::@13/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) + (byte) mulu8_sel::v1#5 ← phi( sin8s::@10/(byte) mulu8_sel::v1#1 sin8s::@11/(byte) mulu8_sel::v1#2 sin8s::@12/(byte) mulu8_sel::v1#3 sin8s::@13/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) + (byte) mul8u::a#2 ← (byte) mulu8_sel::v1#5 + (byte) mul8u::b#1 ← (byte) mulu8_sel::v2#5 call mul8u - (word) mul8u::return#3 ? (word) mul8u::return#1 + (word) mul8u::return#3 ← (word) mul8u::return#1 to:mulu8_sel::@2 mulu8_sel::@2: scope:[mulu8_sel] from mulu8_sel - (byte) mulu8_sel::select#5 ? phi( mulu8_sel/(byte) mulu8_sel::select#6 ) - (word) mul8u::return#6 ? phi( mulu8_sel/(word) mul8u::return#3 ) - (word~) mulu8_sel::$0 ? (word) mul8u::return#6 - (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 - (byte~) mulu8_sel::$2 ? > (word~) mulu8_sel::$1 - (byte) mulu8_sel::return#5 ? (byte~) mulu8_sel::$2 + (byte) mulu8_sel::select#5 ← phi( mulu8_sel/(byte) mulu8_sel::select#6 ) + (word) mul8u::return#6 ← phi( mulu8_sel/(word) mul8u::return#3 ) + (word~) mulu8_sel::$0 ← (word) mul8u::return#6 + (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 + (byte~) mulu8_sel::$2 ← > (word~) mulu8_sel::$1 + (byte) mulu8_sel::return#5 ← (byte~) mulu8_sel::$2 to:mulu8_sel::@return mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@2 - (byte) mulu8_sel::return#12 ? phi( mulu8_sel::@2/(byte) mulu8_sel::return#5 ) - (byte) mulu8_sel::return#6 ? (byte) mulu8_sel::return#12 + (byte) mulu8_sel::return#12 ← phi( mulu8_sel::@2/(byte) mulu8_sel::return#5 ) + (byte) mulu8_sel::return#6 ← (byte) mulu8_sel::return#12 return to:@return @20: scope:[] from @13 - (word) rem16u#26 ? phi( @13/(word) rem16u#28 ) - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (word) rem16u#26 ← phi( @13/(word) rem16u#28 ) + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@32 print_str: scope:[print_str] from sin8u_table::@11 sin8u_table::@16 sin8u_table::@18 sin8u_table::@20 sin8u_table::@22 sin8u_table::@3 sin8u_table::@5 sin8u_table::@7 sin8u_table::@9 - (byte*) print_char_cursor#105 ? phi( sin8u_table::@11/(byte*) print_char_cursor#32 sin8u_table::@16/(byte*) print_char_cursor#103 sin8u_table::@18/(byte*) print_char_cursor#37 sin8u_table::@20/(byte*) print_char_cursor#39 sin8u_table::@22/(byte*) print_char_cursor#41 sin8u_table::@3/(byte*) print_char_cursor#102 sin8u_table::@5/(byte*) print_char_cursor#26 sin8u_table::@7/(byte*) print_char_cursor#28 sin8u_table::@9/(byte*) print_char_cursor#30 ) - (byte*) print_str::str#12 ? phi( sin8u_table::@11/(byte*) print_str::str#5 sin8u_table::@16/(byte*) print_str::str#6 sin8u_table::@18/(byte*) print_str::str#7 sin8u_table::@20/(byte*) print_str::str#8 sin8u_table::@22/(byte*) print_str::str#9 sin8u_table::@3/(byte*) print_str::str#1 sin8u_table::@5/(byte*) print_str::str#2 sin8u_table::@7/(byte*) print_str::str#3 sin8u_table::@9/(byte*) print_str::str#4 ) + (byte*) print_char_cursor#105 ← phi( sin8u_table::@11/(byte*) print_char_cursor#32 sin8u_table::@16/(byte*) print_char_cursor#103 sin8u_table::@18/(byte*) print_char_cursor#37 sin8u_table::@20/(byte*) print_char_cursor#39 sin8u_table::@22/(byte*) print_char_cursor#41 sin8u_table::@3/(byte*) print_char_cursor#102 sin8u_table::@5/(byte*) print_char_cursor#26 sin8u_table::@7/(byte*) print_char_cursor#28 sin8u_table::@9/(byte*) print_char_cursor#30 ) + (byte*) print_str::str#12 ← phi( sin8u_table::@11/(byte*) print_str::str#5 sin8u_table::@16/(byte*) print_str::str#6 sin8u_table::@18/(byte*) print_str::str#7 sin8u_table::@20/(byte*) print_str::str#8 sin8u_table::@22/(byte*) print_str::str#9 sin8u_table::@3/(byte*) print_str::str#1 sin8u_table::@5/(byte*) print_str::str#2 sin8u_table::@7/(byte*) print_str::str#3 sin8u_table::@9/(byte*) print_str::str#4 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#92 ? phi( print_str/(byte*) print_char_cursor#105 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#10 ? phi( print_str/(byte*) print_str::str#12 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#10) != (byte) '@' + (byte*) print_char_cursor#92 ← phi( print_str/(byte*) print_char_cursor#105 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#10 ← phi( print_str/(byte*) print_str::str#12 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#10) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#47 ? phi( print_str::@1/(byte*) print_char_cursor#92 ) - (byte*) print_str::str#11 ? phi( print_str::@1/(byte*) print_str::str#10 ) - *((byte*) print_char_cursor#47) ? *((byte*) print_str::str#11) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#47 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#11 + (byte*) print_char_cursor#47 ← phi( print_str::@1/(byte*) print_char_cursor#92 ) + (byte*) print_str::str#11 ← phi( print_str::@1/(byte*) print_str::str#10 ) + *((byte*) print_char_cursor#47) ← *((byte*) print_str::str#11) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#47 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#11 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#48 ? phi( print_str::@1/(byte*) print_char_cursor#92 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#48 + (byte*) print_char_cursor#48 ← phi( print_str::@1/(byte*) print_char_cursor#92 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#48 return to:@return print_ln: scope:[print_ln] from sin8u_table::@13 sin8u_table::@24 - (byte*) print_char_cursor#93 ? phi( sin8u_table::@13/(byte*) print_char_cursor#34 sin8u_table::@24/(byte*) print_char_cursor#43 ) - (byte*) print_line_cursor#23 ? phi( sin8u_table::@13/(byte*) print_line_cursor#25 sin8u_table::@24/(byte*) print_line_cursor#26 ) + (byte*) print_char_cursor#93 ← phi( sin8u_table::@13/(byte*) print_char_cursor#34 sin8u_table::@24/(byte*) print_char_cursor#43 ) + (byte*) print_line_cursor#23 ← phi( sin8u_table::@13/(byte*) print_line_cursor#25 sin8u_table::@24/(byte*) print_line_cursor#26 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) print_char_cursor#49 ? phi( print_ln/(byte*) print_char_cursor#93 print_ln::@1/(byte*) print_char_cursor#49 ) - (byte*) print_line_cursor#12 ? phi( print_ln/(byte*) print_line_cursor#23 print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*~) print_ln::$0 ? (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) print_line_cursor#1 ? (byte*~) print_ln::$0 - (bool~) print_ln::$1 ? (byte*) print_line_cursor#1 < (byte*) print_char_cursor#49 + (byte*) print_char_cursor#49 ← phi( print_ln/(byte*) print_char_cursor#93 print_ln::@1/(byte*) print_char_cursor#49 ) + (byte*) print_line_cursor#12 ← phi( print_ln/(byte*) print_line_cursor#23 print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*~) print_ln::$0 ← (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) print_line_cursor#1 ← (byte*~) print_ln::$0 + (bool~) print_ln::$1 ← (byte*) print_line_cursor#1 < (byte*) print_char_cursor#49 if((bool~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) print_line_cursor#13 ? phi( print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*) print_char_cursor#3 ? (byte*) print_line_cursor#13 + (byte*) print_line_cursor#13 ← phi( print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*) print_char_cursor#3 ← (byte*) print_line_cursor#13 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) print_char_cursor#50 ? phi( print_ln::@2/(byte*) print_char_cursor#3 ) - (byte*) print_line_cursor#14 ? phi( print_ln::@2/(byte*) print_line_cursor#13 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#14 - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#50 + (byte*) print_char_cursor#50 ← phi( print_ln::@2/(byte*) print_char_cursor#3 ) + (byte*) print_line_cursor#14 ← phi( print_ln::@2/(byte*) print_line_cursor#13 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#14 + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#50 return to:@return print_sword: scope:[print_sword] from sin8u_table::@21 - (byte*) print_char_cursor#106 ? phi( sin8u_table::@21/(byte*) print_char_cursor#40 ) - (signed word) print_sword::w#2 ? phi( sin8u_table::@21/(signed word) print_sword::w#1 ) - (bool~) print_sword::$0 ? (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) print_sword::$1 ? ! (bool~) print_sword::$0 + (byte*) print_char_cursor#106 ← phi( sin8u_table::@21/(byte*) print_char_cursor#40 ) + (signed word) print_sword::w#2 ← phi( sin8u_table::@21/(signed word) print_sword::w#1 ) + (bool~) print_sword::$0 ← (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) print_sword::$1 ← ! (bool~) print_sword::$0 if((bool~) print_sword::$1) goto print_sword::@1 to:print_sword::@2 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - (byte*) print_char_cursor#94 ? phi( print_sword/(byte*) print_char_cursor#106 print_sword::@4/(byte*) print_char_cursor#6 ) - (signed word) print_sword::w#3 ? phi( print_sword/(signed word) print_sword::w#2 print_sword::@4/(signed word) print_sword::w#0 ) - (word~) print_sword::$2 ? ((word)) (signed word) print_sword::w#3 - (word) print_word::w#0 ? (word~) print_sword::$2 + (byte*) print_char_cursor#94 ← phi( print_sword/(byte*) print_char_cursor#106 print_sword::@4/(byte*) print_char_cursor#6 ) + (signed word) print_sword::w#3 ← phi( print_sword/(signed word) print_sword::w#2 print_sword::@4/(signed word) print_sword::w#0 ) + (word~) print_sword::$2 ← ((word)) (signed word) print_sword::w#3 + (word) print_word::w#0 ← (word~) print_sword::$2 call print_word to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@1 - (byte*) print_char_cursor#51 ? phi( print_sword::@1/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#51 + (byte*) print_char_cursor#51 ← phi( print_sword::@1/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#51 to:print_sword::@return print_sword::@2: scope:[print_sword] from print_sword - (signed word) print_sword::w#5 ? phi( print_sword/(signed word) print_sword::w#2 ) - (byte*) print_char_cursor#95 ? phi( print_sword/(byte*) print_char_cursor#106 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed word) print_sword::w#5 ← phi( print_sword/(signed word) print_sword::w#2 ) + (byte*) print_char_cursor#95 ← phi( print_sword/(byte*) print_char_cursor#106 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - (signed word) print_sword::w#4 ? phi( print_sword::@2/(signed word) print_sword::w#5 ) - (byte*) print_char_cursor#52 ? phi( print_sword::@2/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#52 - (signed word~) print_sword::$5 ? - (signed word) print_sword::w#4 - (signed word) print_sword::w#0 ? (signed word~) print_sword::$5 + (signed word) print_sword::w#4 ← phi( print_sword::@2/(signed word) print_sword::w#5 ) + (byte*) print_char_cursor#52 ← phi( print_sword::@2/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#52 + (signed word~) print_sword::$5 ← - (signed word) print_sword::w#4 + (signed word) print_sword::w#0 ← (signed word~) print_sword::$5 to:print_sword::@1 print_sword::@return: scope:[print_sword] from print_sword::@3 - (byte*) print_char_cursor#53 ? phi( print_sword::@3/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#53 + (byte*) print_char_cursor#53 ← phi( print_sword::@3/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#53 return to:@return print_sbyte: scope:[print_sbyte] from sin8u_table::@19 - (byte*) print_char_cursor#107 ? phi( sin8u_table::@19/(byte*) print_char_cursor#38 ) - (signed byte) print_sbyte::b#2 ? phi( sin8u_table::@19/(signed byte) print_sbyte::b#1 ) - (bool~) print_sbyte::$0 ? (signed byte) print_sbyte::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_char_cursor#107 ← phi( sin8u_table::@19/(byte*) print_char_cursor#38 ) + (signed byte) print_sbyte::b#2 ← phi( sin8u_table::@19/(signed byte) print_sbyte::b#1 ) + (bool~) print_sbyte::$0 ← (signed byte) print_sbyte::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) print_sbyte::$0) goto print_sbyte::@1 to:print_sbyte::@3 print_sbyte::@1: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#5 ? phi( print_sbyte/(signed byte) print_sbyte::b#2 ) - (byte*) print_char_cursor#96 ? phi( print_sbyte/(byte*) print_char_cursor#107 ) - (byte) print_char::ch#1 ? (byte) '-' + (signed byte) print_sbyte::b#5 ← phi( print_sbyte/(signed byte) print_sbyte::b#2 ) + (byte*) print_char_cursor#96 ← phi( print_sbyte/(byte*) print_char_cursor#107 ) + (byte) print_char::ch#1 ← (byte) '-' call print_char to:print_sbyte::@5 print_sbyte::@5: scope:[print_sbyte] from print_sbyte::@1 - (signed byte) print_sbyte::b#3 ? phi( print_sbyte::@1/(signed byte) print_sbyte::b#5 ) - (byte*) print_char_cursor#54 ? phi( print_sbyte::@1/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#54 - (signed byte~) print_sbyte::$5 ? - (signed byte) print_sbyte::b#3 - (signed byte) print_sbyte::b#0 ? (signed byte~) print_sbyte::$5 + (signed byte) print_sbyte::b#3 ← phi( print_sbyte::@1/(signed byte) print_sbyte::b#5 ) + (byte*) print_char_cursor#54 ← phi( print_sbyte::@1/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#54 + (signed byte~) print_sbyte::$5 ← - (signed byte) print_sbyte::b#3 + (signed byte) print_sbyte::b#0 ← (signed byte~) print_sbyte::$5 to:print_sbyte::@2 print_sbyte::@3: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#7 ? phi( print_sbyte/(signed byte) print_sbyte::b#2 ) - (byte*) print_char_cursor#97 ? phi( print_sbyte/(byte*) print_char_cursor#107 ) - (byte) print_char::ch#2 ? (byte) ' ' + (signed byte) print_sbyte::b#7 ← phi( print_sbyte/(signed byte) print_sbyte::b#2 ) + (byte*) print_char_cursor#97 ← phi( print_sbyte/(byte*) print_char_cursor#107 ) + (byte) print_char::ch#2 ← (byte) ' ' call print_char to:print_sbyte::@6 print_sbyte::@6: scope:[print_sbyte] from print_sbyte::@3 - (signed byte) print_sbyte::b#6 ? phi( print_sbyte::@3/(signed byte) print_sbyte::b#7 ) - (byte*) print_char_cursor#55 ? phi( print_sbyte::@3/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#55 + (signed byte) print_sbyte::b#6 ← phi( print_sbyte::@3/(signed byte) print_sbyte::b#7 ) + (byte*) print_char_cursor#55 ← phi( print_sbyte::@3/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#55 to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@5 print_sbyte::@6 - (byte*) print_char_cursor#98 ? phi( print_sbyte::@5/(byte*) print_char_cursor#8 print_sbyte::@6/(byte*) print_char_cursor#9 ) - (signed byte) print_sbyte::b#4 ? phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#6 ) - (byte~) print_sbyte::$1 ? ((byte)) (signed byte) print_sbyte::b#4 - (byte) print_byte::b#0 ? (byte~) print_sbyte::$1 + (byte*) print_char_cursor#98 ← phi( print_sbyte::@5/(byte*) print_char_cursor#8 print_sbyte::@6/(byte*) print_char_cursor#9 ) + (signed byte) print_sbyte::b#4 ← phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#6 ) + (byte~) print_sbyte::$1 ← ((byte)) (signed byte) print_sbyte::b#4 + (byte) print_byte::b#0 ← (byte~) print_sbyte::$1 call print_byte to:print_sbyte::@7 print_sbyte::@7: scope:[print_sbyte] from print_sbyte::@2 - (byte*) print_char_cursor#56 ? phi( print_sbyte::@2/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#56 + (byte*) print_char_cursor#56 ← phi( print_sbyte::@2/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#56 to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@7 - (byte*) print_char_cursor#57 ? phi( print_sbyte::@7/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#57 + (byte*) print_char_cursor#57 ← phi( print_sbyte::@7/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#57 return to:@return print_word: scope:[print_word] from print_sword::@1 sin8u_table::@17 sin8u_table::@4 - (byte*) print_char_cursor#99 ? phi( print_sword::@1/(byte*) print_char_cursor#94 sin8u_table::@17/(byte*) print_char_cursor#36 sin8u_table::@4/(byte*) print_char_cursor#25 ) - (word) print_word::w#3 ? phi( print_sword::@1/(word) print_word::w#0 sin8u_table::@17/(word) print_word::w#2 sin8u_table::@4/(word) print_word::w#1 ) - (byte~) print_word::$0 ? > (word) print_word::w#3 - (byte) print_byte::b#1 ? (byte~) print_word::$0 + (byte*) print_char_cursor#99 ← phi( print_sword::@1/(byte*) print_char_cursor#94 sin8u_table::@17/(byte*) print_char_cursor#36 sin8u_table::@4/(byte*) print_char_cursor#25 ) + (word) print_word::w#3 ← phi( print_sword::@1/(word) print_word::w#0 sin8u_table::@17/(word) print_word::w#2 sin8u_table::@4/(word) print_word::w#1 ) + (byte~) print_word::$0 ← > (word) print_word::w#3 + (byte) print_byte::b#1 ← (byte~) print_word::$0 call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - (word) print_word::w#4 ? phi( print_word/(word) print_word::w#3 ) - (byte*) print_char_cursor#58 ? phi( print_word/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#12 ? (byte*) print_char_cursor#58 - (byte~) print_word::$2 ? < (word) print_word::w#4 - (byte) print_byte::b#2 ? (byte~) print_word::$2 + (word) print_word::w#4 ← phi( print_word/(word) print_word::w#3 ) + (byte*) print_char_cursor#58 ← phi( print_word/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#58 + (byte~) print_word::$2 ← < (word) print_word::w#4 + (byte) print_byte::b#2 ← (byte~) print_word::$2 call print_byte to:print_word::@2 print_word::@2: scope:[print_word] from print_word::@1 - (byte*) print_char_cursor#59 ? phi( print_word::@1/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#59 + (byte*) print_char_cursor#59 ← phi( print_word::@1/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#59 to:print_word::@return print_word::@return: scope:[print_word] from print_word::@2 - (byte*) print_char_cursor#60 ? phi( print_word::@2/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#60 + (byte*) print_char_cursor#60 ← phi( print_word::@2/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#60 return to:@return @32: scope:[] from @20 - (byte*) print_screen#6 ? phi( @20/(byte*) print_screen#0 ) - (word) rem16u#25 ? phi( @20/(word) rem16u#26 ) - (byte*) print_char_cursor#110 ? phi( @20/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#30 ? phi( @20/(byte*) print_line_cursor#0 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#6 ← phi( @20/(byte*) print_screen#0 ) + (word) rem16u#25 ← phi( @20/(word) rem16u#26 ) + (byte*) print_char_cursor#110 ← phi( @20/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#30 ← phi( @20/(byte*) print_line_cursor#0 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@41 print_byte: scope:[print_byte] from print_sbyte::@2 print_word print_word::@1 sin8u_table::@10 sin8u_table::@12 sin8u_table::@23 sin8u_table::@6 sin8u_table::@8 - (byte*) print_char_cursor#100 ? phi( print_sbyte::@2/(byte*) print_char_cursor#98 print_word/(byte*) print_char_cursor#99 print_word::@1/(byte*) print_char_cursor#12 sin8u_table::@10/(byte*) print_char_cursor#31 sin8u_table::@12/(byte*) print_char_cursor#33 sin8u_table::@23/(byte*) print_char_cursor#42 sin8u_table::@6/(byte*) print_char_cursor#27 sin8u_table::@8/(byte*) print_char_cursor#29 ) - (byte) print_byte::b#8 ? phi( print_sbyte::@2/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 sin8u_table::@10/(byte) print_byte::b#5 sin8u_table::@12/(byte) print_byte::b#6 sin8u_table::@23/(byte) print_byte::b#7 sin8u_table::@6/(byte) print_byte::b#3 sin8u_table::@8/(byte) print_byte::b#4 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#3 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#100 ← phi( print_sbyte::@2/(byte*) print_char_cursor#98 print_word/(byte*) print_char_cursor#99 print_word::@1/(byte*) print_char_cursor#12 sin8u_table::@10/(byte*) print_char_cursor#31 sin8u_table::@12/(byte*) print_char_cursor#33 sin8u_table::@23/(byte*) print_char_cursor#42 sin8u_table::@6/(byte*) print_char_cursor#27 sin8u_table::@8/(byte*) print_char_cursor#29 ) + (byte) print_byte::b#8 ← phi( print_sbyte::@2/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 sin8u_table::@10/(byte) print_byte::b#5 sin8u_table::@12/(byte) print_byte::b#6 sin8u_table::@23/(byte) print_byte::b#7 sin8u_table::@6/(byte) print_byte::b#3 sin8u_table::@8/(byte) print_byte::b#4 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#3 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#9 ? phi( print_byte/(byte) print_byte::b#8 ) - (byte*) print_char_cursor#61 ? phi( print_byte/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#61 - (byte~) print_byte::$2 ? (byte) print_byte::b#9 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#4 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#9 ← phi( print_byte/(byte) print_byte::b#8 ) + (byte*) print_char_cursor#61 ← phi( print_byte/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#61 + (byte~) print_byte::$2 ← (byte) print_byte::b#9 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#4 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#62 ? phi( print_byte::@1/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#62 + (byte*) print_char_cursor#62 ← phi( print_byte::@1/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#62 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#63 ? phi( print_byte::@2/(byte*) print_char_cursor#16 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#63 + (byte*) print_char_cursor#63 ← phi( print_byte::@2/(byte*) print_char_cursor#16 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#63 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 print_sword::@2 - (byte*) print_char_cursor#64 ? phi( print_byte/(byte*) print_char_cursor#100 print_byte::@1/(byte*) print_char_cursor#15 print_sbyte::@1/(byte*) print_char_cursor#96 print_sbyte::@3/(byte*) print_char_cursor#97 print_sword::@2/(byte*) print_char_cursor#95 ) - (byte) print_char::ch#5 ? phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) print_char::ch#1 print_sbyte::@3/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) - *((byte*) print_char_cursor#64) ? (byte) print_char::ch#5 - (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#64 + (byte*) print_char_cursor#64 ← phi( print_byte/(byte*) print_char_cursor#100 print_byte::@1/(byte*) print_char_cursor#15 print_sbyte::@1/(byte*) print_char_cursor#96 print_sbyte::@3/(byte*) print_char_cursor#97 print_sword::@2/(byte*) print_char_cursor#95 ) + (byte) print_char::ch#5 ← phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) print_char::ch#1 print_sbyte::@3/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) + *((byte*) print_char_cursor#64) ← (byte) print_char::ch#5 + (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#64 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#65 ? phi( print_char/(byte*) print_char_cursor#18 ) - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#65 + (byte*) print_char_cursor#65 ← phi( print_char/(byte*) print_char_cursor#18 ) + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#65 return to:@return print_cls: scope:[print_cls] from main - (byte*) print_screen#1 ? phi( main/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_screen#3 - (byte*) print_char_cursor#20 ? (byte*) print_line_cursor#3 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_screen#3 + (byte*) print_char_cursor#20 ← (byte*) print_line_cursor#3 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#66 ? phi( print_cls::@2/(byte*) print_char_cursor#20 ) - (byte*) print_line_cursor#15 ? phi( print_cls::@2/(byte*) print_line_cursor#3 ) - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#15 - (byte*) print_char_cursor#21 ? (byte*) print_char_cursor#66 + (byte*) print_char_cursor#66 ← phi( print_cls::@2/(byte*) print_char_cursor#20 ) + (byte*) print_line_cursor#15 ← phi( print_cls::@2/(byte*) print_line_cursor#3 ) + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#15 + (byte*) print_char_cursor#21 ← (byte*) print_char_cursor#66 return to:@return main: scope:[main] from @41 - (word) rem16u#23 ? phi( @41/(word) rem16u#22 ) - (byte*) print_char_cursor#101 ? phi( @41/(byte*) print_char_cursor#104 ) - (byte*) print_line_cursor#24 ? phi( @41/(byte*) print_line_cursor#27 ) - (byte*) print_screen#4 ? phi( @41/(byte*) print_screen#5 ) - (word) main::tabsize#0 ? (byte/signed byte/word/signed word/dword/signed dword) $14 - (byte[$14]) main::sintab#0 ? { fill( $14, 0) } + (word) rem16u#23 ← phi( @41/(word) rem16u#22 ) + (byte*) print_char_cursor#101 ← phi( @41/(byte*) print_char_cursor#104 ) + (byte*) print_line_cursor#24 ← phi( @41/(byte*) print_line_cursor#27 ) + (byte*) print_screen#4 ← phi( @41/(byte*) print_screen#5 ) + (word) main::tabsize#0 ← (byte/signed byte/word/signed word/dword/signed dword) $14 + (byte[$14]) main::sintab#0 ← { fill( $14, 0) } call print_cls to:main::@1 main::@1: scope:[main] from main - (word) rem16u#19 ? phi( main/(word) rem16u#23 ) - (byte*) print_char_cursor#67 ? phi( main/(byte*) print_char_cursor#21 ) - (byte*) print_line_cursor#16 ? phi( main/(byte*) print_line_cursor#4 ) - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#16 - (byte*) print_char_cursor#22 ? (byte*) print_char_cursor#67 - (byte*) sin8u_table::sintab#0 ? (byte[$14]) main::sintab#0 - (word) sin8u_table::tabsize#0 ? (word) main::tabsize#0 - (byte) sin8u_table::min#0 ? (byte/signed byte/word/signed word/dword/signed dword) $a - (byte) sin8u_table::max#0 ? (byte/word/signed word/dword/signed dword) $ff + (word) rem16u#19 ← phi( main/(word) rem16u#23 ) + (byte*) print_char_cursor#67 ← phi( main/(byte*) print_char_cursor#21 ) + (byte*) print_line_cursor#16 ← phi( main/(byte*) print_line_cursor#4 ) + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#16 + (byte*) print_char_cursor#22 ← (byte*) print_char_cursor#67 + (byte*) sin8u_table::sintab#0 ← (byte[$14]) main::sintab#0 + (word) sin8u_table::tabsize#0 ← (word) main::tabsize#0 + (byte) sin8u_table::min#0 ← (byte/signed byte/word/signed word/dword/signed dword) $a + (byte) sin8u_table::max#0 ← (byte/word/signed word/dword/signed dword) $ff call sin8u_table to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) print_line_cursor#17 ? phi( main::@1/(byte*) print_line_cursor#10 ) - (byte*) print_char_cursor#68 ? phi( main::@1/(byte*) print_char_cursor#45 ) - (word) rem16u#13 ? phi( main::@1/(word) rem16u#8 ) - (word) rem16u#5 ? (word) rem16u#13 - (byte*) print_char_cursor#23 ? (byte*) print_char_cursor#68 - (byte*) print_line_cursor#6 ? (byte*) print_line_cursor#17 + (byte*) print_line_cursor#17 ← phi( main::@1/(byte*) print_line_cursor#10 ) + (byte*) print_char_cursor#68 ← phi( main::@1/(byte*) print_char_cursor#45 ) + (word) rem16u#13 ← phi( main::@1/(word) rem16u#8 ) + (word) rem16u#5 ← (word) rem16u#13 + (byte*) print_char_cursor#23 ← (byte*) print_char_cursor#68 + (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#17 to:main::@return main::@return: scope:[main] from main::@2 - (word) rem16u#14 ? phi( main::@2/(word) rem16u#5 ) - (byte*) print_char_cursor#69 ? phi( main::@2/(byte*) print_char_cursor#23 ) - (byte*) print_line_cursor#18 ? phi( main::@2/(byte*) print_line_cursor#6 ) - (byte*) print_line_cursor#7 ? (byte*) print_line_cursor#18 - (byte*) print_char_cursor#24 ? (byte*) print_char_cursor#69 - (word) rem16u#6 ? (word) rem16u#14 + (word) rem16u#14 ← phi( main::@2/(word) rem16u#5 ) + (byte*) print_char_cursor#69 ← phi( main::@2/(byte*) print_char_cursor#23 ) + (byte*) print_line_cursor#18 ← phi( main::@2/(byte*) print_line_cursor#6 ) + (byte*) print_line_cursor#7 ← (byte*) print_line_cursor#18 + (byte*) print_char_cursor#24 ← (byte*) print_char_cursor#69 + (word) rem16u#6 ← (word) rem16u#14 return to:@return sin8u_table: scope:[sin8u_table] from main::@1 - (byte*) sin8u_table::sintab#26 ? phi( main::@1/(byte*) sin8u_table::sintab#0 ) - (byte*) print_line_cursor#49 ? phi( main::@1/(byte*) print_line_cursor#5 ) - (byte*) print_char_cursor#108 ? phi( main::@1/(byte*) print_char_cursor#22 ) - (word) rem16u#20 ? phi( main::@1/(word) rem16u#19 ) - (word) sin8u_table::tabsize#1 ? phi( main::@1/(word) sin8u_table::tabsize#0 ) - (byte) sin8u_table::min#1 ? phi( main::@1/(byte) sin8u_table::min#0 ) - (byte) sin8u_table::max#1 ? phi( main::@1/(byte) sin8u_table::max#0 ) - (byte~) sin8u_table::$0 ? (byte) sin8u_table::max#1 - (byte) sin8u_table::min#1 - (byte) sin8u_table::amplitude#0 ? (byte~) sin8u_table::$0 - (word~) sin8u_table::$1 ? ((word)) (byte) sin8u_table::min#1 - (word~) sin8u_table::$2 ? (word~) sin8u_table::$1 + (byte) sin8u_table::max#1 - (word) sin8u_table::sum#0 ? (word~) sin8u_table::$2 - (word~) sin8u_table::$3 ? (word) sin8u_table::sum#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word/signed dword/dword~) sin8u_table::$4 ? (word~) sin8u_table::$3 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) sin8u_table::$5 ? ((byte)) (word/signed dword/dword~) sin8u_table::$4 - (byte) sin8u_table::mid#0 ? (byte~) sin8u_table::$5 - (word) div16u::dividend#0 ? (word) PI2_u4f12#0 - (word) div16u::divisor#0 ? (word) sin8u_table::tabsize#1 + (byte*) sin8u_table::sintab#26 ← phi( main::@1/(byte*) sin8u_table::sintab#0 ) + (byte*) print_line_cursor#49 ← phi( main::@1/(byte*) print_line_cursor#5 ) + (byte*) print_char_cursor#108 ← phi( main::@1/(byte*) print_char_cursor#22 ) + (word) rem16u#20 ← phi( main::@1/(word) rem16u#19 ) + (word) sin8u_table::tabsize#1 ← phi( main::@1/(word) sin8u_table::tabsize#0 ) + (byte) sin8u_table::min#1 ← phi( main::@1/(byte) sin8u_table::min#0 ) + (byte) sin8u_table::max#1 ← phi( main::@1/(byte) sin8u_table::max#0 ) + (byte~) sin8u_table::$0 ← (byte) sin8u_table::max#1 - (byte) sin8u_table::min#1 + (byte) sin8u_table::amplitude#0 ← (byte~) sin8u_table::$0 + (word~) sin8u_table::$1 ← ((word)) (byte) sin8u_table::min#1 + (word~) sin8u_table::$2 ← (word~) sin8u_table::$1 + (byte) sin8u_table::max#1 + (word) sin8u_table::sum#0 ← (word~) sin8u_table::$2 + (word~) sin8u_table::$3 ← (word) sin8u_table::sum#0 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word/signed dword/dword~) sin8u_table::$4 ← (word~) sin8u_table::$3 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) sin8u_table::$5 ← ((byte)) (word/signed dword/dword~) sin8u_table::$4 + (byte) sin8u_table::mid#0 ← (byte~) sin8u_table::$5 + (word) div16u::dividend#0 ← (word) PI2_u4f12#0 + (word) div16u::divisor#0 ← (word) sin8u_table::tabsize#1 call div16u - (word) div16u::return#2 ? (word) div16u::return#1 + (word) div16u::return#2 ← (word) div16u::return#1 to:sin8u_table::@3 sin8u_table::@3: scope:[sin8u_table] from sin8u_table - (word) sin8u_table::tabsize#25 ? phi( sin8u_table/(word) sin8u_table::tabsize#1 ) - (byte*) sin8u_table::sintab#25 ? phi( sin8u_table/(byte*) sin8u_table::sintab#26 ) - (byte*) print_line_cursor#47 ? phi( sin8u_table/(byte*) print_line_cursor#49 ) - (byte) sin8u_table::mid#21 ? phi( sin8u_table/(byte) sin8u_table::mid#0 ) - (byte) sin8u_table::amplitude#19 ? phi( sin8u_table/(byte) sin8u_table::amplitude#0 ) - (byte) sin8u_table::max#7 ? phi( sin8u_table/(byte) sin8u_table::max#1 ) - (byte) sin8u_table::min#5 ? phi( sin8u_table/(byte) sin8u_table::min#1 ) - (byte*) print_char_cursor#102 ? phi( sin8u_table/(byte*) print_char_cursor#108 ) - (word) rem16u#15 ? phi( sin8u_table/(word) rem16u#4 ) - (word) div16u::return#4 ? phi( sin8u_table/(word) div16u::return#2 ) - (word~) sin8u_table::$6 ? (word) div16u::return#4 - (word) rem16u#7 ? (word) rem16u#15 - (word) sin8u_table::step#0 ? (word~) sin8u_table::$6 - (byte*) print_str::str#1 ? (const string) sin8u_table::str + (word) sin8u_table::tabsize#25 ← phi( sin8u_table/(word) sin8u_table::tabsize#1 ) + (byte*) sin8u_table::sintab#25 ← phi( sin8u_table/(byte*) sin8u_table::sintab#26 ) + (byte*) print_line_cursor#47 ← phi( sin8u_table/(byte*) print_line_cursor#49 ) + (byte) sin8u_table::mid#21 ← phi( sin8u_table/(byte) sin8u_table::mid#0 ) + (byte) sin8u_table::amplitude#19 ← phi( sin8u_table/(byte) sin8u_table::amplitude#0 ) + (byte) sin8u_table::max#7 ← phi( sin8u_table/(byte) sin8u_table::max#1 ) + (byte) sin8u_table::min#5 ← phi( sin8u_table/(byte) sin8u_table::min#1 ) + (byte*) print_char_cursor#102 ← phi( sin8u_table/(byte*) print_char_cursor#108 ) + (word) rem16u#15 ← phi( sin8u_table/(word) rem16u#4 ) + (word) div16u::return#4 ← phi( sin8u_table/(word) div16u::return#2 ) + (word~) sin8u_table::$6 ← (word) div16u::return#4 + (word) rem16u#7 ← (word) rem16u#15 + (word) sin8u_table::step#0 ← (word~) sin8u_table::$6 + (byte*) print_str::str#1 ← (const string) sin8u_table::str call print_str to:sin8u_table::@4 sin8u_table::@4: scope:[sin8u_table] from sin8u_table::@3 - (word) rem16u#50 ? phi( sin8u_table::@3/(word) rem16u#7 ) - (word) sin8u_table::tabsize#24 ? phi( sin8u_table::@3/(word) sin8u_table::tabsize#25 ) - (byte*) sin8u_table::sintab#24 ? phi( sin8u_table::@3/(byte*) sin8u_table::sintab#25 ) - (byte*) print_line_cursor#45 ? phi( sin8u_table::@3/(byte*) print_line_cursor#47 ) - (byte) sin8u_table::mid#19 ? phi( sin8u_table::@3/(byte) sin8u_table::mid#21 ) - (byte) sin8u_table::amplitude#17 ? phi( sin8u_table::@3/(byte) sin8u_table::amplitude#19 ) - (byte) sin8u_table::max#6 ? phi( sin8u_table::@3/(byte) sin8u_table::max#7 ) - (byte) sin8u_table::min#4 ? phi( sin8u_table::@3/(byte) sin8u_table::min#5 ) - (word) sin8u_table::step#1 ? phi( sin8u_table::@3/(word) sin8u_table::step#0 ) - (byte*) print_char_cursor#70 ? phi( sin8u_table::@3/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#25 ? (byte*) print_char_cursor#70 - (word) print_word::w#1 ? (word) sin8u_table::step#1 + (word) rem16u#50 ← phi( sin8u_table::@3/(word) rem16u#7 ) + (word) sin8u_table::tabsize#24 ← phi( sin8u_table::@3/(word) sin8u_table::tabsize#25 ) + (byte*) sin8u_table::sintab#24 ← phi( sin8u_table::@3/(byte*) sin8u_table::sintab#25 ) + (byte*) print_line_cursor#45 ← phi( sin8u_table::@3/(byte*) print_line_cursor#47 ) + (byte) sin8u_table::mid#19 ← phi( sin8u_table::@3/(byte) sin8u_table::mid#21 ) + (byte) sin8u_table::amplitude#17 ← phi( sin8u_table::@3/(byte) sin8u_table::amplitude#19 ) + (byte) sin8u_table::max#6 ← phi( sin8u_table::@3/(byte) sin8u_table::max#7 ) + (byte) sin8u_table::min#4 ← phi( sin8u_table::@3/(byte) sin8u_table::min#5 ) + (word) sin8u_table::step#1 ← phi( sin8u_table::@3/(word) sin8u_table::step#0 ) + (byte*) print_char_cursor#70 ← phi( sin8u_table::@3/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#25 ← (byte*) print_char_cursor#70 + (word) print_word::w#1 ← (word) sin8u_table::step#1 call print_word to:sin8u_table::@5 sin8u_table::@5: scope:[sin8u_table] from sin8u_table::@4 - (word) rem16u#49 ? phi( sin8u_table::@4/(word) rem16u#50 ) - (word) sin8u_table::tabsize#23 ? phi( sin8u_table::@4/(word) sin8u_table::tabsize#24 ) - (word) sin8u_table::step#23 ? phi( sin8u_table::@4/(word) sin8u_table::step#1 ) - (byte*) sin8u_table::sintab#23 ? phi( sin8u_table::@4/(byte*) sin8u_table::sintab#24 ) - (byte*) print_line_cursor#43 ? phi( sin8u_table::@4/(byte*) print_line_cursor#45 ) - (byte) sin8u_table::mid#17 ? phi( sin8u_table::@4/(byte) sin8u_table::mid#19 ) - (byte) sin8u_table::amplitude#14 ? phi( sin8u_table::@4/(byte) sin8u_table::amplitude#17 ) - (byte) sin8u_table::max#5 ? phi( sin8u_table::@4/(byte) sin8u_table::max#6 ) - (byte) sin8u_table::min#3 ? phi( sin8u_table::@4/(byte) sin8u_table::min#4 ) - (byte*) print_char_cursor#71 ? phi( sin8u_table::@4/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#26 ? (byte*) print_char_cursor#71 - (byte*) print_str::str#2 ? (const string) sin8u_table::str1 + (word) rem16u#49 ← phi( sin8u_table::@4/(word) rem16u#50 ) + (word) sin8u_table::tabsize#23 ← phi( sin8u_table::@4/(word) sin8u_table::tabsize#24 ) + (word) sin8u_table::step#23 ← phi( sin8u_table::@4/(word) sin8u_table::step#1 ) + (byte*) sin8u_table::sintab#23 ← phi( sin8u_table::@4/(byte*) sin8u_table::sintab#24 ) + (byte*) print_line_cursor#43 ← phi( sin8u_table::@4/(byte*) print_line_cursor#45 ) + (byte) sin8u_table::mid#17 ← phi( sin8u_table::@4/(byte) sin8u_table::mid#19 ) + (byte) sin8u_table::amplitude#14 ← phi( sin8u_table::@4/(byte) sin8u_table::amplitude#17 ) + (byte) sin8u_table::max#5 ← phi( sin8u_table::@4/(byte) sin8u_table::max#6 ) + (byte) sin8u_table::min#3 ← phi( sin8u_table::@4/(byte) sin8u_table::min#4 ) + (byte*) print_char_cursor#71 ← phi( sin8u_table::@4/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#26 ← (byte*) print_char_cursor#71 + (byte*) print_str::str#2 ← (const string) sin8u_table::str1 call print_str to:sin8u_table::@6 sin8u_table::@6: scope:[sin8u_table] from sin8u_table::@5 - (word) rem16u#48 ? phi( sin8u_table::@5/(word) rem16u#49 ) - (word) sin8u_table::tabsize#22 ? phi( sin8u_table::@5/(word) sin8u_table::tabsize#23 ) - (word) sin8u_table::step#22 ? phi( sin8u_table::@5/(word) sin8u_table::step#23 ) - (byte*) sin8u_table::sintab#21 ? phi( sin8u_table::@5/(byte*) sin8u_table::sintab#23 ) - (byte*) print_line_cursor#41 ? phi( sin8u_table::@5/(byte*) print_line_cursor#43 ) - (byte) sin8u_table::mid#15 ? phi( sin8u_table::@5/(byte) sin8u_table::mid#17 ) - (byte) sin8u_table::amplitude#11 ? phi( sin8u_table::@5/(byte) sin8u_table::amplitude#14 ) - (byte) sin8u_table::max#4 ? phi( sin8u_table::@5/(byte) sin8u_table::max#5 ) - (byte) sin8u_table::min#2 ? phi( sin8u_table::@5/(byte) sin8u_table::min#3 ) - (byte*) print_char_cursor#72 ? phi( sin8u_table::@5/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#27 ? (byte*) print_char_cursor#72 - (byte) print_byte::b#3 ? (byte) sin8u_table::min#2 + (word) rem16u#48 ← phi( sin8u_table::@5/(word) rem16u#49 ) + (word) sin8u_table::tabsize#22 ← phi( sin8u_table::@5/(word) sin8u_table::tabsize#23 ) + (word) sin8u_table::step#22 ← phi( sin8u_table::@5/(word) sin8u_table::step#23 ) + (byte*) sin8u_table::sintab#21 ← phi( sin8u_table::@5/(byte*) sin8u_table::sintab#23 ) + (byte*) print_line_cursor#41 ← phi( sin8u_table::@5/(byte*) print_line_cursor#43 ) + (byte) sin8u_table::mid#15 ← phi( sin8u_table::@5/(byte) sin8u_table::mid#17 ) + (byte) sin8u_table::amplitude#11 ← phi( sin8u_table::@5/(byte) sin8u_table::amplitude#14 ) + (byte) sin8u_table::max#4 ← phi( sin8u_table::@5/(byte) sin8u_table::max#5 ) + (byte) sin8u_table::min#2 ← phi( sin8u_table::@5/(byte) sin8u_table::min#3 ) + (byte*) print_char_cursor#72 ← phi( sin8u_table::@5/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#27 ← (byte*) print_char_cursor#72 + (byte) print_byte::b#3 ← (byte) sin8u_table::min#2 call print_byte to:sin8u_table::@7 sin8u_table::@7: scope:[sin8u_table] from sin8u_table::@6 - (word) rem16u#47 ? phi( sin8u_table::@6/(word) rem16u#48 ) - (word) sin8u_table::tabsize#21 ? phi( sin8u_table::@6/(word) sin8u_table::tabsize#22 ) - (word) sin8u_table::step#21 ? phi( sin8u_table::@6/(word) sin8u_table::step#22 ) - (byte*) sin8u_table::sintab#19 ? phi( sin8u_table::@6/(byte*) sin8u_table::sintab#21 ) - (byte*) print_line_cursor#39 ? phi( sin8u_table::@6/(byte*) print_line_cursor#41 ) - (byte) sin8u_table::mid#13 ? phi( sin8u_table::@6/(byte) sin8u_table::mid#15 ) - (byte) sin8u_table::amplitude#8 ? phi( sin8u_table::@6/(byte) sin8u_table::amplitude#11 ) - (byte) sin8u_table::max#3 ? phi( sin8u_table::@6/(byte) sin8u_table::max#4 ) - (byte*) print_char_cursor#73 ? phi( sin8u_table::@6/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#28 ? (byte*) print_char_cursor#73 - (byte*) print_str::str#3 ? (const string) sin8u_table::str2 + (word) rem16u#47 ← phi( sin8u_table::@6/(word) rem16u#48 ) + (word) sin8u_table::tabsize#21 ← phi( sin8u_table::@6/(word) sin8u_table::tabsize#22 ) + (word) sin8u_table::step#21 ← phi( sin8u_table::@6/(word) sin8u_table::step#22 ) + (byte*) sin8u_table::sintab#19 ← phi( sin8u_table::@6/(byte*) sin8u_table::sintab#21 ) + (byte*) print_line_cursor#39 ← phi( sin8u_table::@6/(byte*) print_line_cursor#41 ) + (byte) sin8u_table::mid#13 ← phi( sin8u_table::@6/(byte) sin8u_table::mid#15 ) + (byte) sin8u_table::amplitude#8 ← phi( sin8u_table::@6/(byte) sin8u_table::amplitude#11 ) + (byte) sin8u_table::max#3 ← phi( sin8u_table::@6/(byte) sin8u_table::max#4 ) + (byte*) print_char_cursor#73 ← phi( sin8u_table::@6/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#28 ← (byte*) print_char_cursor#73 + (byte*) print_str::str#3 ← (const string) sin8u_table::str2 call print_str to:sin8u_table::@8 sin8u_table::@8: scope:[sin8u_table] from sin8u_table::@7 - (word) rem16u#46 ? phi( sin8u_table::@7/(word) rem16u#47 ) - (word) sin8u_table::tabsize#20 ? phi( sin8u_table::@7/(word) sin8u_table::tabsize#21 ) - (word) sin8u_table::step#20 ? phi( sin8u_table::@7/(word) sin8u_table::step#21 ) - (byte*) sin8u_table::sintab#17 ? phi( sin8u_table::@7/(byte*) sin8u_table::sintab#19 ) - (byte*) print_line_cursor#37 ? phi( sin8u_table::@7/(byte*) print_line_cursor#39 ) - (byte) sin8u_table::mid#10 ? phi( sin8u_table::@7/(byte) sin8u_table::mid#13 ) - (byte) sin8u_table::amplitude#5 ? phi( sin8u_table::@7/(byte) sin8u_table::amplitude#8 ) - (byte) sin8u_table::max#2 ? phi( sin8u_table::@7/(byte) sin8u_table::max#3 ) - (byte*) print_char_cursor#74 ? phi( sin8u_table::@7/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#29 ? (byte*) print_char_cursor#74 - (byte) print_byte::b#4 ? (byte) sin8u_table::max#2 + (word) rem16u#46 ← phi( sin8u_table::@7/(word) rem16u#47 ) + (word) sin8u_table::tabsize#20 ← phi( sin8u_table::@7/(word) sin8u_table::tabsize#21 ) + (word) sin8u_table::step#20 ← phi( sin8u_table::@7/(word) sin8u_table::step#21 ) + (byte*) sin8u_table::sintab#17 ← phi( sin8u_table::@7/(byte*) sin8u_table::sintab#19 ) + (byte*) print_line_cursor#37 ← phi( sin8u_table::@7/(byte*) print_line_cursor#39 ) + (byte) sin8u_table::mid#10 ← phi( sin8u_table::@7/(byte) sin8u_table::mid#13 ) + (byte) sin8u_table::amplitude#5 ← phi( sin8u_table::@7/(byte) sin8u_table::amplitude#8 ) + (byte) sin8u_table::max#2 ← phi( sin8u_table::@7/(byte) sin8u_table::max#3 ) + (byte*) print_char_cursor#74 ← phi( sin8u_table::@7/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#29 ← (byte*) print_char_cursor#74 + (byte) print_byte::b#4 ← (byte) sin8u_table::max#2 call print_byte to:sin8u_table::@9 sin8u_table::@9: scope:[sin8u_table] from sin8u_table::@8 - (word) rem16u#45 ? phi( sin8u_table::@8/(word) rem16u#46 ) - (word) sin8u_table::tabsize#19 ? phi( sin8u_table::@8/(word) sin8u_table::tabsize#20 ) - (word) sin8u_table::step#19 ? phi( sin8u_table::@8/(word) sin8u_table::step#20 ) - (byte*) sin8u_table::sintab#15 ? phi( sin8u_table::@8/(byte*) sin8u_table::sintab#17 ) - (byte*) print_line_cursor#35 ? phi( sin8u_table::@8/(byte*) print_line_cursor#37 ) - (byte) sin8u_table::mid#7 ? phi( sin8u_table::@8/(byte) sin8u_table::mid#10 ) - (byte) sin8u_table::amplitude#3 ? phi( sin8u_table::@8/(byte) sin8u_table::amplitude#5 ) - (byte*) print_char_cursor#75 ? phi( sin8u_table::@8/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#30 ? (byte*) print_char_cursor#75 - (byte*) print_str::str#4 ? (const string) sin8u_table::str3 + (word) rem16u#45 ← phi( sin8u_table::@8/(word) rem16u#46 ) + (word) sin8u_table::tabsize#19 ← phi( sin8u_table::@8/(word) sin8u_table::tabsize#20 ) + (word) sin8u_table::step#19 ← phi( sin8u_table::@8/(word) sin8u_table::step#20 ) + (byte*) sin8u_table::sintab#15 ← phi( sin8u_table::@8/(byte*) sin8u_table::sintab#17 ) + (byte*) print_line_cursor#35 ← phi( sin8u_table::@8/(byte*) print_line_cursor#37 ) + (byte) sin8u_table::mid#7 ← phi( sin8u_table::@8/(byte) sin8u_table::mid#10 ) + (byte) sin8u_table::amplitude#3 ← phi( sin8u_table::@8/(byte) sin8u_table::amplitude#5 ) + (byte*) print_char_cursor#75 ← phi( sin8u_table::@8/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#30 ← (byte*) print_char_cursor#75 + (byte*) print_str::str#4 ← (const string) sin8u_table::str3 call print_str to:sin8u_table::@10 sin8u_table::@10: scope:[sin8u_table] from sin8u_table::@9 - (word) rem16u#44 ? phi( sin8u_table::@9/(word) rem16u#45 ) - (word) sin8u_table::tabsize#18 ? phi( sin8u_table::@9/(word) sin8u_table::tabsize#19 ) - (word) sin8u_table::step#18 ? phi( sin8u_table::@9/(word) sin8u_table::step#19 ) - (byte*) sin8u_table::sintab#13 ? phi( sin8u_table::@9/(byte*) sin8u_table::sintab#15 ) - (byte*) print_line_cursor#33 ? phi( sin8u_table::@9/(byte*) print_line_cursor#35 ) - (byte) sin8u_table::mid#5 ? phi( sin8u_table::@9/(byte) sin8u_table::mid#7 ) - (byte) sin8u_table::amplitude#1 ? phi( sin8u_table::@9/(byte) sin8u_table::amplitude#3 ) - (byte*) print_char_cursor#76 ? phi( sin8u_table::@9/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#31 ? (byte*) print_char_cursor#76 - (byte) print_byte::b#5 ? (byte) sin8u_table::amplitude#1 + (word) rem16u#44 ← phi( sin8u_table::@9/(word) rem16u#45 ) + (word) sin8u_table::tabsize#18 ← phi( sin8u_table::@9/(word) sin8u_table::tabsize#19 ) + (word) sin8u_table::step#18 ← phi( sin8u_table::@9/(word) sin8u_table::step#19 ) + (byte*) sin8u_table::sintab#13 ← phi( sin8u_table::@9/(byte*) sin8u_table::sintab#15 ) + (byte*) print_line_cursor#33 ← phi( sin8u_table::@9/(byte*) print_line_cursor#35 ) + (byte) sin8u_table::mid#5 ← phi( sin8u_table::@9/(byte) sin8u_table::mid#7 ) + (byte) sin8u_table::amplitude#1 ← phi( sin8u_table::@9/(byte) sin8u_table::amplitude#3 ) + (byte*) print_char_cursor#76 ← phi( sin8u_table::@9/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#31 ← (byte*) print_char_cursor#76 + (byte) print_byte::b#5 ← (byte) sin8u_table::amplitude#1 call print_byte to:sin8u_table::@11 sin8u_table::@11: scope:[sin8u_table] from sin8u_table::@10 - (word) rem16u#43 ? phi( sin8u_table::@10/(word) rem16u#44 ) - (word) sin8u_table::tabsize#17 ? phi( sin8u_table::@10/(word) sin8u_table::tabsize#18 ) - (word) sin8u_table::step#17 ? phi( sin8u_table::@10/(word) sin8u_table::step#18 ) - (byte*) sin8u_table::sintab#11 ? phi( sin8u_table::@10/(byte*) sin8u_table::sintab#13 ) - (byte) sin8u_table::amplitude#15 ? phi( sin8u_table::@10/(byte) sin8u_table::amplitude#1 ) - (byte*) print_line_cursor#31 ? phi( sin8u_table::@10/(byte*) print_line_cursor#33 ) - (byte) sin8u_table::mid#3 ? phi( sin8u_table::@10/(byte) sin8u_table::mid#5 ) - (byte*) print_char_cursor#77 ? phi( sin8u_table::@10/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#32 ? (byte*) print_char_cursor#77 - (byte*) print_str::str#5 ? (const string) sin8u_table::str4 + (word) rem16u#43 ← phi( sin8u_table::@10/(word) rem16u#44 ) + (word) sin8u_table::tabsize#17 ← phi( sin8u_table::@10/(word) sin8u_table::tabsize#18 ) + (word) sin8u_table::step#17 ← phi( sin8u_table::@10/(word) sin8u_table::step#18 ) + (byte*) sin8u_table::sintab#11 ← phi( sin8u_table::@10/(byte*) sin8u_table::sintab#13 ) + (byte) sin8u_table::amplitude#15 ← phi( sin8u_table::@10/(byte) sin8u_table::amplitude#1 ) + (byte*) print_line_cursor#31 ← phi( sin8u_table::@10/(byte*) print_line_cursor#33 ) + (byte) sin8u_table::mid#3 ← phi( sin8u_table::@10/(byte) sin8u_table::mid#5 ) + (byte*) print_char_cursor#77 ← phi( sin8u_table::@10/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#32 ← (byte*) print_char_cursor#77 + (byte*) print_str::str#5 ← (const string) sin8u_table::str4 call print_str to:sin8u_table::@12 sin8u_table::@12: scope:[sin8u_table] from sin8u_table::@11 - (word) rem16u#42 ? phi( sin8u_table::@11/(word) rem16u#43 ) - (word) sin8u_table::tabsize#16 ? phi( sin8u_table::@11/(word) sin8u_table::tabsize#17 ) - (word) sin8u_table::step#16 ? phi( sin8u_table::@11/(word) sin8u_table::step#17 ) - (byte*) sin8u_table::sintab#9 ? phi( sin8u_table::@11/(byte*) sin8u_table::sintab#11 ) - (byte) sin8u_table::amplitude#12 ? phi( sin8u_table::@11/(byte) sin8u_table::amplitude#15 ) - (byte*) print_line_cursor#28 ? phi( sin8u_table::@11/(byte*) print_line_cursor#31 ) - (byte) sin8u_table::mid#1 ? phi( sin8u_table::@11/(byte) sin8u_table::mid#3 ) - (byte*) print_char_cursor#78 ? phi( sin8u_table::@11/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#33 ? (byte*) print_char_cursor#78 - (byte) print_byte::b#6 ? (byte) sin8u_table::mid#1 + (word) rem16u#42 ← phi( sin8u_table::@11/(word) rem16u#43 ) + (word) sin8u_table::tabsize#16 ← phi( sin8u_table::@11/(word) sin8u_table::tabsize#17 ) + (word) sin8u_table::step#16 ← phi( sin8u_table::@11/(word) sin8u_table::step#17 ) + (byte*) sin8u_table::sintab#9 ← phi( sin8u_table::@11/(byte*) sin8u_table::sintab#11 ) + (byte) sin8u_table::amplitude#12 ← phi( sin8u_table::@11/(byte) sin8u_table::amplitude#15 ) + (byte*) print_line_cursor#28 ← phi( sin8u_table::@11/(byte*) print_line_cursor#31 ) + (byte) sin8u_table::mid#1 ← phi( sin8u_table::@11/(byte) sin8u_table::mid#3 ) + (byte*) print_char_cursor#78 ← phi( sin8u_table::@11/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#33 ← (byte*) print_char_cursor#78 + (byte) print_byte::b#6 ← (byte) sin8u_table::mid#1 call print_byte to:sin8u_table::@13 sin8u_table::@13: scope:[sin8u_table] from sin8u_table::@12 - (word) rem16u#41 ? phi( sin8u_table::@12/(word) rem16u#42 ) - (word) sin8u_table::tabsize#15 ? phi( sin8u_table::@12/(word) sin8u_table::tabsize#16 ) - (word) sin8u_table::step#15 ? phi( sin8u_table::@12/(word) sin8u_table::step#16 ) - (byte*) sin8u_table::sintab#7 ? phi( sin8u_table::@12/(byte*) sin8u_table::sintab#9 ) - (byte) sin8u_table::mid#11 ? phi( sin8u_table::@12/(byte) sin8u_table::mid#1 ) - (byte) sin8u_table::amplitude#9 ? phi( sin8u_table::@12/(byte) sin8u_table::amplitude#12 ) - (byte*) print_line_cursor#25 ? phi( sin8u_table::@12/(byte*) print_line_cursor#28 ) - (byte*) print_char_cursor#79 ? phi( sin8u_table::@12/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#34 ? (byte*) print_char_cursor#79 + (word) rem16u#41 ← phi( sin8u_table::@12/(word) rem16u#42 ) + (word) sin8u_table::tabsize#15 ← phi( sin8u_table::@12/(word) sin8u_table::tabsize#16 ) + (word) sin8u_table::step#15 ← phi( sin8u_table::@12/(word) sin8u_table::step#16 ) + (byte*) sin8u_table::sintab#7 ← phi( sin8u_table::@12/(byte*) sin8u_table::sintab#9 ) + (byte) sin8u_table::mid#11 ← phi( sin8u_table::@12/(byte) sin8u_table::mid#1 ) + (byte) sin8u_table::amplitude#9 ← phi( sin8u_table::@12/(byte) sin8u_table::amplitude#12 ) + (byte*) print_line_cursor#25 ← phi( sin8u_table::@12/(byte*) print_line_cursor#28 ) + (byte*) print_char_cursor#79 ← phi( sin8u_table::@12/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#34 ← (byte*) print_char_cursor#79 call print_ln to:sin8u_table::@14 sin8u_table::@14: scope:[sin8u_table] from sin8u_table::@13 - (word) rem16u#40 ? phi( sin8u_table::@13/(word) rem16u#41 ) - (word) sin8u_table::tabsize#14 ? phi( sin8u_table::@13/(word) sin8u_table::tabsize#15 ) - (word) sin8u_table::step#14 ? phi( sin8u_table::@13/(word) sin8u_table::step#15 ) - (byte*) sin8u_table::sintab#5 ? phi( sin8u_table::@13/(byte*) sin8u_table::sintab#7 ) - (byte) sin8u_table::mid#8 ? phi( sin8u_table::@13/(byte) sin8u_table::mid#11 ) - (byte) sin8u_table::amplitude#6 ? phi( sin8u_table::@13/(byte) sin8u_table::amplitude#9 ) - (byte*) print_char_cursor#80 ? phi( sin8u_table::@13/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#19 ? phi( sin8u_table::@13/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#8 ? (byte*) print_line_cursor#19 - (byte*) print_char_cursor#35 ? (byte*) print_char_cursor#80 - (word) sin8u_table::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) sin8u_table::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#40 ← phi( sin8u_table::@13/(word) rem16u#41 ) + (word) sin8u_table::tabsize#14 ← phi( sin8u_table::@13/(word) sin8u_table::tabsize#15 ) + (word) sin8u_table::step#14 ← phi( sin8u_table::@13/(word) sin8u_table::step#15 ) + (byte*) sin8u_table::sintab#5 ← phi( sin8u_table::@13/(byte*) sin8u_table::sintab#7 ) + (byte) sin8u_table::mid#8 ← phi( sin8u_table::@13/(byte) sin8u_table::mid#11 ) + (byte) sin8u_table::amplitude#6 ← phi( sin8u_table::@13/(byte) sin8u_table::amplitude#9 ) + (byte*) print_char_cursor#80 ← phi( sin8u_table::@13/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#19 ← phi( sin8u_table::@13/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#19 + (byte*) print_char_cursor#35 ← (byte*) print_char_cursor#80 + (word) sin8u_table::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) sin8u_table::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:sin8u_table::@1 sin8u_table::@1: scope:[sin8u_table] from sin8u_table::@14 sin8u_table::@25 - (word) rem16u#39 ? phi( sin8u_table::@14/(word) rem16u#40 sin8u_table::@25/(word) rem16u#21 ) - (word) sin8u_table::tabsize#13 ? phi( sin8u_table::@14/(word) sin8u_table::tabsize#14 sin8u_table::@25/(word) sin8u_table::tabsize#2 ) - (word) sin8u_table::i#13 ? phi( sin8u_table::@14/(word) sin8u_table::i#0 sin8u_table::@25/(word) sin8u_table::i#1 ) - (word) sin8u_table::step#13 ? phi( sin8u_table::@14/(word) sin8u_table::step#14 sin8u_table::@25/(word) sin8u_table::step#2 ) - (byte*) print_line_cursor#48 ? phi( sin8u_table::@14/(byte*) print_line_cursor#8 sin8u_table::@25/(byte*) print_line_cursor#9 ) - (byte*) print_char_cursor#111 ? phi( sin8u_table::@14/(byte*) print_char_cursor#35 sin8u_table::@25/(byte*) print_char_cursor#44 ) - (byte*) sin8u_table::sintab#4 ? phi( sin8u_table::@14/(byte*) sin8u_table::sintab#5 sin8u_table::@25/(byte*) sin8u_table::sintab#6 ) - (byte) sin8u_table::mid#6 ? phi( sin8u_table::@14/(byte) sin8u_table::mid#8 sin8u_table::@25/(byte) sin8u_table::mid#9 ) - (byte) sin8u_table::amplitude#4 ? phi( sin8u_table::@14/(byte) sin8u_table::amplitude#6 sin8u_table::@25/(byte) sin8u_table::amplitude#7 ) - (word) sin8u_table::x#2 ? phi( sin8u_table::@14/(word) sin8u_table::x#0 sin8u_table::@25/(word) sin8u_table::x#1 ) - (word) sin8s::x#2 ? (word) sin8u_table::x#2 + (word) rem16u#39 ← phi( sin8u_table::@14/(word) rem16u#40 sin8u_table::@25/(word) rem16u#21 ) + (word) sin8u_table::tabsize#13 ← phi( sin8u_table::@14/(word) sin8u_table::tabsize#14 sin8u_table::@25/(word) sin8u_table::tabsize#2 ) + (word) sin8u_table::i#13 ← phi( sin8u_table::@14/(word) sin8u_table::i#0 sin8u_table::@25/(word) sin8u_table::i#1 ) + (word) sin8u_table::step#13 ← phi( sin8u_table::@14/(word) sin8u_table::step#14 sin8u_table::@25/(word) sin8u_table::step#2 ) + (byte*) print_line_cursor#48 ← phi( sin8u_table::@14/(byte*) print_line_cursor#8 sin8u_table::@25/(byte*) print_line_cursor#9 ) + (byte*) print_char_cursor#111 ← phi( sin8u_table::@14/(byte*) print_char_cursor#35 sin8u_table::@25/(byte*) print_char_cursor#44 ) + (byte*) sin8u_table::sintab#4 ← phi( sin8u_table::@14/(byte*) sin8u_table::sintab#5 sin8u_table::@25/(byte*) sin8u_table::sintab#6 ) + (byte) sin8u_table::mid#6 ← phi( sin8u_table::@14/(byte) sin8u_table::mid#8 sin8u_table::@25/(byte) sin8u_table::mid#9 ) + (byte) sin8u_table::amplitude#4 ← phi( sin8u_table::@14/(byte) sin8u_table::amplitude#6 sin8u_table::@25/(byte) sin8u_table::amplitude#7 ) + (word) sin8u_table::x#2 ← phi( sin8u_table::@14/(word) sin8u_table::x#0 sin8u_table::@25/(word) sin8u_table::x#1 ) + (word) sin8s::x#2 ← (word) sin8u_table::x#2 call sin8s - (signed byte) sin8s::return#2 ? (signed byte) sin8s::return#1 + (signed byte) sin8s::return#2 ← (signed byte) sin8s::return#1 to:sin8u_table::@15 sin8u_table::@15: scope:[sin8u_table] from sin8u_table::@1 - (word) rem16u#38 ? phi( sin8u_table::@1/(word) rem16u#39 ) - (word) sin8u_table::tabsize#12 ? phi( sin8u_table::@1/(word) sin8u_table::tabsize#13 ) - (word) sin8u_table::i#12 ? phi( sin8u_table::@1/(word) sin8u_table::i#13 ) - (word) sin8u_table::step#12 ? phi( sin8u_table::@1/(word) sin8u_table::step#13 ) - (byte*) print_line_cursor#46 ? phi( sin8u_table::@1/(byte*) print_line_cursor#48 ) - (word) sin8u_table::x#7 ? phi( sin8u_table::@1/(word) sin8u_table::x#2 ) - (byte*) print_char_cursor#109 ? phi( sin8u_table::@1/(byte*) print_char_cursor#111 ) - (byte*) sin8u_table::sintab#3 ? phi( sin8u_table::@1/(byte*) sin8u_table::sintab#4 ) - (byte) sin8u_table::mid#4 ? phi( sin8u_table::@1/(byte) sin8u_table::mid#6 ) - (byte) sin8u_table::amplitude#2 ? phi( sin8u_table::@1/(byte) sin8u_table::amplitude#4 ) - (signed byte) sin8s::return#4 ? phi( sin8u_table::@1/(signed byte) sin8s::return#2 ) - (signed byte~) sin8u_table::$18 ? (signed byte) sin8s::return#4 - (signed byte) sin8u_table::sinx#0 ? (signed byte~) sin8u_table::$18 - (byte/signed word/word/dword/signed dword~) sin8u_table::$19 ? (byte) sin8u_table::amplitude#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (signed byte) mul8su::a#0 ? (signed byte) sin8u_table::sinx#0 - (byte) mul8su::b#0 ? (byte/signed word/word/dword/signed dword~) sin8u_table::$19 + (word) rem16u#38 ← phi( sin8u_table::@1/(word) rem16u#39 ) + (word) sin8u_table::tabsize#12 ← phi( sin8u_table::@1/(word) sin8u_table::tabsize#13 ) + (word) sin8u_table::i#12 ← phi( sin8u_table::@1/(word) sin8u_table::i#13 ) + (word) sin8u_table::step#12 ← phi( sin8u_table::@1/(word) sin8u_table::step#13 ) + (byte*) print_line_cursor#46 ← phi( sin8u_table::@1/(byte*) print_line_cursor#48 ) + (word) sin8u_table::x#7 ← phi( sin8u_table::@1/(word) sin8u_table::x#2 ) + (byte*) print_char_cursor#109 ← phi( sin8u_table::@1/(byte*) print_char_cursor#111 ) + (byte*) sin8u_table::sintab#3 ← phi( sin8u_table::@1/(byte*) sin8u_table::sintab#4 ) + (byte) sin8u_table::mid#4 ← phi( sin8u_table::@1/(byte) sin8u_table::mid#6 ) + (byte) sin8u_table::amplitude#2 ← phi( sin8u_table::@1/(byte) sin8u_table::amplitude#4 ) + (signed byte) sin8s::return#4 ← phi( sin8u_table::@1/(signed byte) sin8s::return#2 ) + (signed byte~) sin8u_table::$18 ← (signed byte) sin8s::return#4 + (signed byte) sin8u_table::sinx#0 ← (signed byte~) sin8u_table::$18 + (byte/signed word/word/dword/signed dword~) sin8u_table::$19 ← (byte) sin8u_table::amplitude#2 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (signed byte) mul8su::a#0 ← (signed byte) sin8u_table::sinx#0 + (byte) mul8su::b#0 ← (byte/signed word/word/dword/signed dword~) sin8u_table::$19 call mul8su - (signed word) mul8su::return#2 ? (signed word) mul8su::return#1 + (signed word) mul8su::return#2 ← (signed word) mul8su::return#1 to:sin8u_table::@16 sin8u_table::@16: scope:[sin8u_table] from sin8u_table::@15 - (byte) sin8u_table::amplitude#24 ? phi( sin8u_table::@15/(byte) sin8u_table::amplitude#2 ) - (word) rem16u#37 ? phi( sin8u_table::@15/(word) rem16u#38 ) - (word) sin8u_table::tabsize#11 ? phi( sin8u_table::@15/(word) sin8u_table::tabsize#12 ) - (word) sin8u_table::i#11 ? phi( sin8u_table::@15/(word) sin8u_table::i#12 ) - (word) sin8u_table::step#11 ? phi( sin8u_table::@15/(word) sin8u_table::step#12 ) - (byte*) print_line_cursor#44 ? phi( sin8u_table::@15/(byte*) print_line_cursor#46 ) - (signed byte) sin8u_table::sinx#4 ? phi( sin8u_table::@15/(signed byte) sin8u_table::sinx#0 ) - (word) sin8u_table::x#5 ? phi( sin8u_table::@15/(word) sin8u_table::x#7 ) - (byte*) print_char_cursor#103 ? phi( sin8u_table::@15/(byte*) print_char_cursor#109 ) - (byte*) sin8u_table::sintab#2 ? phi( sin8u_table::@15/(byte*) sin8u_table::sintab#3 ) - (byte) sin8u_table::mid#2 ? phi( sin8u_table::@15/(byte) sin8u_table::mid#4 ) - (signed word) mul8su::return#4 ? phi( sin8u_table::@15/(signed word) mul8su::return#2 ) - (signed word~) sin8u_table::$20 ? (signed word) mul8su::return#4 - (signed word) sin8u_table::sinx_sc#0 ? (signed word~) sin8u_table::$20 - (byte~) sin8u_table::$21 ? > (signed word) sin8u_table::sinx_sc#0 - (byte~) sin8u_table::$22 ? (byte) sin8u_table::mid#2 + (byte~) sin8u_table::$21 - (byte) sin8u_table::sinx_tr#0 ? (byte~) sin8u_table::$22 - *((byte*) sin8u_table::sintab#2) ? (byte) sin8u_table::sinx_tr#0 - (byte*) sin8u_table::sintab#1 ? ++ (byte*) sin8u_table::sintab#2 - (byte*) print_str::str#6 ? (const string) sin8u_table::str5 + (byte) sin8u_table::amplitude#24 ← phi( sin8u_table::@15/(byte) sin8u_table::amplitude#2 ) + (word) rem16u#37 ← phi( sin8u_table::@15/(word) rem16u#38 ) + (word) sin8u_table::tabsize#11 ← phi( sin8u_table::@15/(word) sin8u_table::tabsize#12 ) + (word) sin8u_table::i#11 ← phi( sin8u_table::@15/(word) sin8u_table::i#12 ) + (word) sin8u_table::step#11 ← phi( sin8u_table::@15/(word) sin8u_table::step#12 ) + (byte*) print_line_cursor#44 ← phi( sin8u_table::@15/(byte*) print_line_cursor#46 ) + (signed byte) sin8u_table::sinx#4 ← phi( sin8u_table::@15/(signed byte) sin8u_table::sinx#0 ) + (word) sin8u_table::x#5 ← phi( sin8u_table::@15/(word) sin8u_table::x#7 ) + (byte*) print_char_cursor#103 ← phi( sin8u_table::@15/(byte*) print_char_cursor#109 ) + (byte*) sin8u_table::sintab#2 ← phi( sin8u_table::@15/(byte*) sin8u_table::sintab#3 ) + (byte) sin8u_table::mid#2 ← phi( sin8u_table::@15/(byte) sin8u_table::mid#4 ) + (signed word) mul8su::return#4 ← phi( sin8u_table::@15/(signed word) mul8su::return#2 ) + (signed word~) sin8u_table::$20 ← (signed word) mul8su::return#4 + (signed word) sin8u_table::sinx_sc#0 ← (signed word~) sin8u_table::$20 + (byte~) sin8u_table::$21 ← > (signed word) sin8u_table::sinx_sc#0 + (byte~) sin8u_table::$22 ← (byte) sin8u_table::mid#2 + (byte~) sin8u_table::$21 + (byte) sin8u_table::sinx_tr#0 ← (byte~) sin8u_table::$22 + *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 + (byte*) sin8u_table::sintab#1 ← ++ (byte*) sin8u_table::sintab#2 + (byte*) print_str::str#6 ← (const string) sin8u_table::str5 call print_str to:sin8u_table::@17 sin8u_table::@17: scope:[sin8u_table] from sin8u_table::@16 - (byte*) sin8u_table::sintab#22 ? phi( sin8u_table::@16/(byte*) sin8u_table::sintab#1 ) - (byte) sin8u_table::mid#24 ? phi( sin8u_table::@16/(byte) sin8u_table::mid#2 ) - (byte) sin8u_table::amplitude#23 ? phi( sin8u_table::@16/(byte) sin8u_table::amplitude#24 ) - (word) rem16u#36 ? phi( sin8u_table::@16/(word) rem16u#37 ) - (word) sin8u_table::tabsize#10 ? phi( sin8u_table::@16/(word) sin8u_table::tabsize#11 ) - (word) sin8u_table::i#10 ? phi( sin8u_table::@16/(word) sin8u_table::i#11 ) - (word) sin8u_table::step#10 ? phi( sin8u_table::@16/(word) sin8u_table::step#11 ) - (byte*) print_line_cursor#42 ? phi( sin8u_table::@16/(byte*) print_line_cursor#44 ) - (byte) sin8u_table::sinx_tr#7 ? phi( sin8u_table::@16/(byte) sin8u_table::sinx_tr#0 ) - (signed word) sin8u_table::sinx_sc#5 ? phi( sin8u_table::@16/(signed word) sin8u_table::sinx_sc#0 ) - (signed byte) sin8u_table::sinx#3 ? phi( sin8u_table::@16/(signed byte) sin8u_table::sinx#4 ) - (word) sin8u_table::x#3 ? phi( sin8u_table::@16/(word) sin8u_table::x#5 ) - (byte*) print_char_cursor#81 ? phi( sin8u_table::@16/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#36 ? (byte*) print_char_cursor#81 - (word) print_word::w#2 ? (word) sin8u_table::x#3 + (byte*) sin8u_table::sintab#22 ← phi( sin8u_table::@16/(byte*) sin8u_table::sintab#1 ) + (byte) sin8u_table::mid#24 ← phi( sin8u_table::@16/(byte) sin8u_table::mid#2 ) + (byte) sin8u_table::amplitude#23 ← phi( sin8u_table::@16/(byte) sin8u_table::amplitude#24 ) + (word) rem16u#36 ← phi( sin8u_table::@16/(word) rem16u#37 ) + (word) sin8u_table::tabsize#10 ← phi( sin8u_table::@16/(word) sin8u_table::tabsize#11 ) + (word) sin8u_table::i#10 ← phi( sin8u_table::@16/(word) sin8u_table::i#11 ) + (word) sin8u_table::step#10 ← phi( sin8u_table::@16/(word) sin8u_table::step#11 ) + (byte*) print_line_cursor#42 ← phi( sin8u_table::@16/(byte*) print_line_cursor#44 ) + (byte) sin8u_table::sinx_tr#7 ← phi( sin8u_table::@16/(byte) sin8u_table::sinx_tr#0 ) + (signed word) sin8u_table::sinx_sc#5 ← phi( sin8u_table::@16/(signed word) sin8u_table::sinx_sc#0 ) + (signed byte) sin8u_table::sinx#3 ← phi( sin8u_table::@16/(signed byte) sin8u_table::sinx#4 ) + (word) sin8u_table::x#3 ← phi( sin8u_table::@16/(word) sin8u_table::x#5 ) + (byte*) print_char_cursor#81 ← phi( sin8u_table::@16/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#36 ← (byte*) print_char_cursor#81 + (word) print_word::w#2 ← (word) sin8u_table::x#3 call print_word to:sin8u_table::@18 sin8u_table::@18: scope:[sin8u_table] from sin8u_table::@17 - (byte*) sin8u_table::sintab#20 ? phi( sin8u_table::@17/(byte*) sin8u_table::sintab#22 ) - (byte) sin8u_table::mid#23 ? phi( sin8u_table::@17/(byte) sin8u_table::mid#24 ) - (byte) sin8u_table::amplitude#22 ? phi( sin8u_table::@17/(byte) sin8u_table::amplitude#23 ) - (word) rem16u#35 ? phi( sin8u_table::@17/(word) rem16u#36 ) - (word) sin8u_table::tabsize#9 ? phi( sin8u_table::@17/(word) sin8u_table::tabsize#10 ) - (word) sin8u_table::i#9 ? phi( sin8u_table::@17/(word) sin8u_table::i#10 ) - (word) sin8u_table::step#9 ? phi( sin8u_table::@17/(word) sin8u_table::step#10 ) - (word) sin8u_table::x#13 ? phi( sin8u_table::@17/(word) sin8u_table::x#3 ) - (byte*) print_line_cursor#40 ? phi( sin8u_table::@17/(byte*) print_line_cursor#42 ) - (byte) sin8u_table::sinx_tr#6 ? phi( sin8u_table::@17/(byte) sin8u_table::sinx_tr#7 ) - (signed word) sin8u_table::sinx_sc#4 ? phi( sin8u_table::@17/(signed word) sin8u_table::sinx_sc#5 ) - (signed byte) sin8u_table::sinx#2 ? phi( sin8u_table::@17/(signed byte) sin8u_table::sinx#3 ) - (byte*) print_char_cursor#82 ? phi( sin8u_table::@17/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#37 ? (byte*) print_char_cursor#82 - (byte*) print_str::str#7 ? (const string) sin8u_table::str6 + (byte*) sin8u_table::sintab#20 ← phi( sin8u_table::@17/(byte*) sin8u_table::sintab#22 ) + (byte) sin8u_table::mid#23 ← phi( sin8u_table::@17/(byte) sin8u_table::mid#24 ) + (byte) sin8u_table::amplitude#22 ← phi( sin8u_table::@17/(byte) sin8u_table::amplitude#23 ) + (word) rem16u#35 ← phi( sin8u_table::@17/(word) rem16u#36 ) + (word) sin8u_table::tabsize#9 ← phi( sin8u_table::@17/(word) sin8u_table::tabsize#10 ) + (word) sin8u_table::i#9 ← phi( sin8u_table::@17/(word) sin8u_table::i#10 ) + (word) sin8u_table::step#9 ← phi( sin8u_table::@17/(word) sin8u_table::step#10 ) + (word) sin8u_table::x#13 ← phi( sin8u_table::@17/(word) sin8u_table::x#3 ) + (byte*) print_line_cursor#40 ← phi( sin8u_table::@17/(byte*) print_line_cursor#42 ) + (byte) sin8u_table::sinx_tr#6 ← phi( sin8u_table::@17/(byte) sin8u_table::sinx_tr#7 ) + (signed word) sin8u_table::sinx_sc#4 ← phi( sin8u_table::@17/(signed word) sin8u_table::sinx_sc#5 ) + (signed byte) sin8u_table::sinx#2 ← phi( sin8u_table::@17/(signed byte) sin8u_table::sinx#3 ) + (byte*) print_char_cursor#82 ← phi( sin8u_table::@17/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#37 ← (byte*) print_char_cursor#82 + (byte*) print_str::str#7 ← (const string) sin8u_table::str6 call print_str to:sin8u_table::@19 sin8u_table::@19: scope:[sin8u_table] from sin8u_table::@18 - (byte*) sin8u_table::sintab#18 ? phi( sin8u_table::@18/(byte*) sin8u_table::sintab#20 ) - (byte) sin8u_table::mid#22 ? phi( sin8u_table::@18/(byte) sin8u_table::mid#23 ) - (byte) sin8u_table::amplitude#21 ? phi( sin8u_table::@18/(byte) sin8u_table::amplitude#22 ) - (word) rem16u#34 ? phi( sin8u_table::@18/(word) rem16u#35 ) - (word) sin8u_table::tabsize#8 ? phi( sin8u_table::@18/(word) sin8u_table::tabsize#9 ) - (word) sin8u_table::i#8 ? phi( sin8u_table::@18/(word) sin8u_table::i#9 ) - (word) sin8u_table::step#8 ? phi( sin8u_table::@18/(word) sin8u_table::step#9 ) - (word) sin8u_table::x#12 ? phi( sin8u_table::@18/(word) sin8u_table::x#13 ) - (byte*) print_line_cursor#38 ? phi( sin8u_table::@18/(byte*) print_line_cursor#40 ) - (byte) sin8u_table::sinx_tr#5 ? phi( sin8u_table::@18/(byte) sin8u_table::sinx_tr#6 ) - (signed word) sin8u_table::sinx_sc#3 ? phi( sin8u_table::@18/(signed word) sin8u_table::sinx_sc#4 ) - (signed byte) sin8u_table::sinx#1 ? phi( sin8u_table::@18/(signed byte) sin8u_table::sinx#2 ) - (byte*) print_char_cursor#83 ? phi( sin8u_table::@18/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#38 ? (byte*) print_char_cursor#83 - (signed byte) print_sbyte::b#1 ? (signed byte) sin8u_table::sinx#1 + (byte*) sin8u_table::sintab#18 ← phi( sin8u_table::@18/(byte*) sin8u_table::sintab#20 ) + (byte) sin8u_table::mid#22 ← phi( sin8u_table::@18/(byte) sin8u_table::mid#23 ) + (byte) sin8u_table::amplitude#21 ← phi( sin8u_table::@18/(byte) sin8u_table::amplitude#22 ) + (word) rem16u#34 ← phi( sin8u_table::@18/(word) rem16u#35 ) + (word) sin8u_table::tabsize#8 ← phi( sin8u_table::@18/(word) sin8u_table::tabsize#9 ) + (word) sin8u_table::i#8 ← phi( sin8u_table::@18/(word) sin8u_table::i#9 ) + (word) sin8u_table::step#8 ← phi( sin8u_table::@18/(word) sin8u_table::step#9 ) + (word) sin8u_table::x#12 ← phi( sin8u_table::@18/(word) sin8u_table::x#13 ) + (byte*) print_line_cursor#38 ← phi( sin8u_table::@18/(byte*) print_line_cursor#40 ) + (byte) sin8u_table::sinx_tr#5 ← phi( sin8u_table::@18/(byte) sin8u_table::sinx_tr#6 ) + (signed word) sin8u_table::sinx_sc#3 ← phi( sin8u_table::@18/(signed word) sin8u_table::sinx_sc#4 ) + (signed byte) sin8u_table::sinx#1 ← phi( sin8u_table::@18/(signed byte) sin8u_table::sinx#2 ) + (byte*) print_char_cursor#83 ← phi( sin8u_table::@18/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#38 ← (byte*) print_char_cursor#83 + (signed byte) print_sbyte::b#1 ← (signed byte) sin8u_table::sinx#1 call print_sbyte to:sin8u_table::@20 sin8u_table::@20: scope:[sin8u_table] from sin8u_table::@19 - (byte*) sin8u_table::sintab#16 ? phi( sin8u_table::@19/(byte*) sin8u_table::sintab#18 ) - (byte) sin8u_table::mid#20 ? phi( sin8u_table::@19/(byte) sin8u_table::mid#22 ) - (byte) sin8u_table::amplitude#20 ? phi( sin8u_table::@19/(byte) sin8u_table::amplitude#21 ) - (word) rem16u#33 ? phi( sin8u_table::@19/(word) rem16u#34 ) - (word) sin8u_table::tabsize#7 ? phi( sin8u_table::@19/(word) sin8u_table::tabsize#8 ) - (word) sin8u_table::i#7 ? phi( sin8u_table::@19/(word) sin8u_table::i#8 ) - (word) sin8u_table::step#7 ? phi( sin8u_table::@19/(word) sin8u_table::step#8 ) - (word) sin8u_table::x#11 ? phi( sin8u_table::@19/(word) sin8u_table::x#12 ) - (byte*) print_line_cursor#36 ? phi( sin8u_table::@19/(byte*) print_line_cursor#38 ) - (byte) sin8u_table::sinx_tr#4 ? phi( sin8u_table::@19/(byte) sin8u_table::sinx_tr#5 ) - (signed word) sin8u_table::sinx_sc#2 ? phi( sin8u_table::@19/(signed word) sin8u_table::sinx_sc#3 ) - (byte*) print_char_cursor#84 ? phi( sin8u_table::@19/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#39 ? (byte*) print_char_cursor#84 - (byte*) print_str::str#8 ? (const string) sin8u_table::str7 + (byte*) sin8u_table::sintab#16 ← phi( sin8u_table::@19/(byte*) sin8u_table::sintab#18 ) + (byte) sin8u_table::mid#20 ← phi( sin8u_table::@19/(byte) sin8u_table::mid#22 ) + (byte) sin8u_table::amplitude#20 ← phi( sin8u_table::@19/(byte) sin8u_table::amplitude#21 ) + (word) rem16u#33 ← phi( sin8u_table::@19/(word) rem16u#34 ) + (word) sin8u_table::tabsize#7 ← phi( sin8u_table::@19/(word) sin8u_table::tabsize#8 ) + (word) sin8u_table::i#7 ← phi( sin8u_table::@19/(word) sin8u_table::i#8 ) + (word) sin8u_table::step#7 ← phi( sin8u_table::@19/(word) sin8u_table::step#8 ) + (word) sin8u_table::x#11 ← phi( sin8u_table::@19/(word) sin8u_table::x#12 ) + (byte*) print_line_cursor#36 ← phi( sin8u_table::@19/(byte*) print_line_cursor#38 ) + (byte) sin8u_table::sinx_tr#4 ← phi( sin8u_table::@19/(byte) sin8u_table::sinx_tr#5 ) + (signed word) sin8u_table::sinx_sc#2 ← phi( sin8u_table::@19/(signed word) sin8u_table::sinx_sc#3 ) + (byte*) print_char_cursor#84 ← phi( sin8u_table::@19/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#39 ← (byte*) print_char_cursor#84 + (byte*) print_str::str#8 ← (const string) sin8u_table::str7 call print_str to:sin8u_table::@21 sin8u_table::@21: scope:[sin8u_table] from sin8u_table::@20 - (byte*) sin8u_table::sintab#14 ? phi( sin8u_table::@20/(byte*) sin8u_table::sintab#16 ) - (byte) sin8u_table::mid#18 ? phi( sin8u_table::@20/(byte) sin8u_table::mid#20 ) - (byte) sin8u_table::amplitude#18 ? phi( sin8u_table::@20/(byte) sin8u_table::amplitude#20 ) - (word) rem16u#31 ? phi( sin8u_table::@20/(word) rem16u#33 ) - (word) sin8u_table::tabsize#6 ? phi( sin8u_table::@20/(word) sin8u_table::tabsize#7 ) - (word) sin8u_table::i#6 ? phi( sin8u_table::@20/(word) sin8u_table::i#7 ) - (word) sin8u_table::step#6 ? phi( sin8u_table::@20/(word) sin8u_table::step#7 ) - (word) sin8u_table::x#10 ? phi( sin8u_table::@20/(word) sin8u_table::x#11 ) - (byte*) print_line_cursor#34 ? phi( sin8u_table::@20/(byte*) print_line_cursor#36 ) - (byte) sin8u_table::sinx_tr#3 ? phi( sin8u_table::@20/(byte) sin8u_table::sinx_tr#4 ) - (signed word) sin8u_table::sinx_sc#1 ? phi( sin8u_table::@20/(signed word) sin8u_table::sinx_sc#2 ) - (byte*) print_char_cursor#85 ? phi( sin8u_table::@20/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#40 ? (byte*) print_char_cursor#85 - (signed word) print_sword::w#1 ? (signed word) sin8u_table::sinx_sc#1 + (byte*) sin8u_table::sintab#14 ← phi( sin8u_table::@20/(byte*) sin8u_table::sintab#16 ) + (byte) sin8u_table::mid#18 ← phi( sin8u_table::@20/(byte) sin8u_table::mid#20 ) + (byte) sin8u_table::amplitude#18 ← phi( sin8u_table::@20/(byte) sin8u_table::amplitude#20 ) + (word) rem16u#31 ← phi( sin8u_table::@20/(word) rem16u#33 ) + (word) sin8u_table::tabsize#6 ← phi( sin8u_table::@20/(word) sin8u_table::tabsize#7 ) + (word) sin8u_table::i#6 ← phi( sin8u_table::@20/(word) sin8u_table::i#7 ) + (word) sin8u_table::step#6 ← phi( sin8u_table::@20/(word) sin8u_table::step#7 ) + (word) sin8u_table::x#10 ← phi( sin8u_table::@20/(word) sin8u_table::x#11 ) + (byte*) print_line_cursor#34 ← phi( sin8u_table::@20/(byte*) print_line_cursor#36 ) + (byte) sin8u_table::sinx_tr#3 ← phi( sin8u_table::@20/(byte) sin8u_table::sinx_tr#4 ) + (signed word) sin8u_table::sinx_sc#1 ← phi( sin8u_table::@20/(signed word) sin8u_table::sinx_sc#2 ) + (byte*) print_char_cursor#85 ← phi( sin8u_table::@20/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#40 ← (byte*) print_char_cursor#85 + (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#1 call print_sword to:sin8u_table::@22 sin8u_table::@22: scope:[sin8u_table] from sin8u_table::@21 - (byte*) sin8u_table::sintab#12 ? phi( sin8u_table::@21/(byte*) sin8u_table::sintab#14 ) - (byte) sin8u_table::mid#16 ? phi( sin8u_table::@21/(byte) sin8u_table::mid#18 ) - (byte) sin8u_table::amplitude#16 ? phi( sin8u_table::@21/(byte) sin8u_table::amplitude#18 ) - (word) rem16u#29 ? phi( sin8u_table::@21/(word) rem16u#31 ) - (word) sin8u_table::tabsize#5 ? phi( sin8u_table::@21/(word) sin8u_table::tabsize#6 ) - (word) sin8u_table::i#5 ? phi( sin8u_table::@21/(word) sin8u_table::i#6 ) - (word) sin8u_table::step#5 ? phi( sin8u_table::@21/(word) sin8u_table::step#6 ) - (word) sin8u_table::x#9 ? phi( sin8u_table::@21/(word) sin8u_table::x#10 ) - (byte*) print_line_cursor#32 ? phi( sin8u_table::@21/(byte*) print_line_cursor#34 ) - (byte) sin8u_table::sinx_tr#2 ? phi( sin8u_table::@21/(byte) sin8u_table::sinx_tr#3 ) - (byte*) print_char_cursor#86 ? phi( sin8u_table::@21/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#41 ? (byte*) print_char_cursor#86 - (byte*) print_str::str#9 ? (const string) sin8u_table::str8 + (byte*) sin8u_table::sintab#12 ← phi( sin8u_table::@21/(byte*) sin8u_table::sintab#14 ) + (byte) sin8u_table::mid#16 ← phi( sin8u_table::@21/(byte) sin8u_table::mid#18 ) + (byte) sin8u_table::amplitude#16 ← phi( sin8u_table::@21/(byte) sin8u_table::amplitude#18 ) + (word) rem16u#29 ← phi( sin8u_table::@21/(word) rem16u#31 ) + (word) sin8u_table::tabsize#5 ← phi( sin8u_table::@21/(word) sin8u_table::tabsize#6 ) + (word) sin8u_table::i#5 ← phi( sin8u_table::@21/(word) sin8u_table::i#6 ) + (word) sin8u_table::step#5 ← phi( sin8u_table::@21/(word) sin8u_table::step#6 ) + (word) sin8u_table::x#9 ← phi( sin8u_table::@21/(word) sin8u_table::x#10 ) + (byte*) print_line_cursor#32 ← phi( sin8u_table::@21/(byte*) print_line_cursor#34 ) + (byte) sin8u_table::sinx_tr#2 ← phi( sin8u_table::@21/(byte) sin8u_table::sinx_tr#3 ) + (byte*) print_char_cursor#86 ← phi( sin8u_table::@21/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#41 ← (byte*) print_char_cursor#86 + (byte*) print_str::str#9 ← (const string) sin8u_table::str8 call print_str to:sin8u_table::@23 sin8u_table::@23: scope:[sin8u_table] from sin8u_table::@22 - (byte*) sin8u_table::sintab#10 ? phi( sin8u_table::@22/(byte*) sin8u_table::sintab#12 ) - (byte) sin8u_table::mid#14 ? phi( sin8u_table::@22/(byte) sin8u_table::mid#16 ) - (byte) sin8u_table::amplitude#13 ? phi( sin8u_table::@22/(byte) sin8u_table::amplitude#16 ) - (word) rem16u#27 ? phi( sin8u_table::@22/(word) rem16u#29 ) - (word) sin8u_table::tabsize#4 ? phi( sin8u_table::@22/(word) sin8u_table::tabsize#5 ) - (word) sin8u_table::i#4 ? phi( sin8u_table::@22/(word) sin8u_table::i#5 ) - (word) sin8u_table::step#4 ? phi( sin8u_table::@22/(word) sin8u_table::step#5 ) - (word) sin8u_table::x#8 ? phi( sin8u_table::@22/(word) sin8u_table::x#9 ) - (byte*) print_line_cursor#29 ? phi( sin8u_table::@22/(byte*) print_line_cursor#32 ) - (byte) sin8u_table::sinx_tr#1 ? phi( sin8u_table::@22/(byte) sin8u_table::sinx_tr#2 ) - (byte*) print_char_cursor#87 ? phi( sin8u_table::@22/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#42 ? (byte*) print_char_cursor#87 - (byte) print_byte::b#7 ? (byte) sin8u_table::sinx_tr#1 + (byte*) sin8u_table::sintab#10 ← phi( sin8u_table::@22/(byte*) sin8u_table::sintab#12 ) + (byte) sin8u_table::mid#14 ← phi( sin8u_table::@22/(byte) sin8u_table::mid#16 ) + (byte) sin8u_table::amplitude#13 ← phi( sin8u_table::@22/(byte) sin8u_table::amplitude#16 ) + (word) rem16u#27 ← phi( sin8u_table::@22/(word) rem16u#29 ) + (word) sin8u_table::tabsize#4 ← phi( sin8u_table::@22/(word) sin8u_table::tabsize#5 ) + (word) sin8u_table::i#4 ← phi( sin8u_table::@22/(word) sin8u_table::i#5 ) + (word) sin8u_table::step#4 ← phi( sin8u_table::@22/(word) sin8u_table::step#5 ) + (word) sin8u_table::x#8 ← phi( sin8u_table::@22/(word) sin8u_table::x#9 ) + (byte*) print_line_cursor#29 ← phi( sin8u_table::@22/(byte*) print_line_cursor#32 ) + (byte) sin8u_table::sinx_tr#1 ← phi( sin8u_table::@22/(byte) sin8u_table::sinx_tr#2 ) + (byte*) print_char_cursor#87 ← phi( sin8u_table::@22/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#42 ← (byte*) print_char_cursor#87 + (byte) print_byte::b#7 ← (byte) sin8u_table::sinx_tr#1 call print_byte to:sin8u_table::@24 sin8u_table::@24: scope:[sin8u_table] from sin8u_table::@23 - (byte*) sin8u_table::sintab#8 ? phi( sin8u_table::@23/(byte*) sin8u_table::sintab#10 ) - (byte) sin8u_table::mid#12 ? phi( sin8u_table::@23/(byte) sin8u_table::mid#14 ) - (byte) sin8u_table::amplitude#10 ? phi( sin8u_table::@23/(byte) sin8u_table::amplitude#13 ) - (word) rem16u#24 ? phi( sin8u_table::@23/(word) rem16u#27 ) - (word) sin8u_table::tabsize#3 ? phi( sin8u_table::@23/(word) sin8u_table::tabsize#4 ) - (word) sin8u_table::i#3 ? phi( sin8u_table::@23/(word) sin8u_table::i#4 ) - (word) sin8u_table::step#3 ? phi( sin8u_table::@23/(word) sin8u_table::step#4 ) - (word) sin8u_table::x#6 ? phi( sin8u_table::@23/(word) sin8u_table::x#8 ) - (byte*) print_line_cursor#26 ? phi( sin8u_table::@23/(byte*) print_line_cursor#29 ) - (byte*) print_char_cursor#88 ? phi( sin8u_table::@23/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#43 ? (byte*) print_char_cursor#88 + (byte*) sin8u_table::sintab#8 ← phi( sin8u_table::@23/(byte*) sin8u_table::sintab#10 ) + (byte) sin8u_table::mid#12 ← phi( sin8u_table::@23/(byte) sin8u_table::mid#14 ) + (byte) sin8u_table::amplitude#10 ← phi( sin8u_table::@23/(byte) sin8u_table::amplitude#13 ) + (word) rem16u#24 ← phi( sin8u_table::@23/(word) rem16u#27 ) + (word) sin8u_table::tabsize#3 ← phi( sin8u_table::@23/(word) sin8u_table::tabsize#4 ) + (word) sin8u_table::i#3 ← phi( sin8u_table::@23/(word) sin8u_table::i#4 ) + (word) sin8u_table::step#3 ← phi( sin8u_table::@23/(word) sin8u_table::step#4 ) + (word) sin8u_table::x#6 ← phi( sin8u_table::@23/(word) sin8u_table::x#8 ) + (byte*) print_line_cursor#26 ← phi( sin8u_table::@23/(byte*) print_line_cursor#29 ) + (byte*) print_char_cursor#88 ← phi( sin8u_table::@23/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#43 ← (byte*) print_char_cursor#88 call print_ln to:sin8u_table::@25 sin8u_table::@25: scope:[sin8u_table] from sin8u_table::@24 - (byte*) sin8u_table::sintab#6 ? phi( sin8u_table::@24/(byte*) sin8u_table::sintab#8 ) - (byte) sin8u_table::mid#9 ? phi( sin8u_table::@24/(byte) sin8u_table::mid#12 ) - (byte) sin8u_table::amplitude#7 ? phi( sin8u_table::@24/(byte) sin8u_table::amplitude#10 ) - (word) rem16u#21 ? phi( sin8u_table::@24/(word) rem16u#24 ) - (word) sin8u_table::tabsize#2 ? phi( sin8u_table::@24/(word) sin8u_table::tabsize#3 ) - (word) sin8u_table::i#2 ? phi( sin8u_table::@24/(word) sin8u_table::i#3 ) - (word) sin8u_table::step#2 ? phi( sin8u_table::@24/(word) sin8u_table::step#3 ) - (word) sin8u_table::x#4 ? phi( sin8u_table::@24/(word) sin8u_table::x#6 ) - (byte*) print_char_cursor#89 ? phi( sin8u_table::@24/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#20 ? phi( sin8u_table::@24/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#9 ? (byte*) print_line_cursor#20 - (byte*) print_char_cursor#44 ? (byte*) print_char_cursor#89 - (word~) sin8u_table::$32 ? (word) sin8u_table::x#4 + (word) sin8u_table::step#2 - (word) sin8u_table::x#1 ? (word~) sin8u_table::$32 - (word) sin8u_table::i#1 ? ++ (word) sin8u_table::i#2 - (bool~) sin8u_table::$33 ? (word) sin8u_table::i#1 < (word) sin8u_table::tabsize#2 + (byte*) sin8u_table::sintab#6 ← phi( sin8u_table::@24/(byte*) sin8u_table::sintab#8 ) + (byte) sin8u_table::mid#9 ← phi( sin8u_table::@24/(byte) sin8u_table::mid#12 ) + (byte) sin8u_table::amplitude#7 ← phi( sin8u_table::@24/(byte) sin8u_table::amplitude#10 ) + (word) rem16u#21 ← phi( sin8u_table::@24/(word) rem16u#24 ) + (word) sin8u_table::tabsize#2 ← phi( sin8u_table::@24/(word) sin8u_table::tabsize#3 ) + (word) sin8u_table::i#2 ← phi( sin8u_table::@24/(word) sin8u_table::i#3 ) + (word) sin8u_table::step#2 ← phi( sin8u_table::@24/(word) sin8u_table::step#3 ) + (word) sin8u_table::x#4 ← phi( sin8u_table::@24/(word) sin8u_table::x#6 ) + (byte*) print_char_cursor#89 ← phi( sin8u_table::@24/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#20 ← phi( sin8u_table::@24/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#20 + (byte*) print_char_cursor#44 ← (byte*) print_char_cursor#89 + (word~) sin8u_table::$32 ← (word) sin8u_table::x#4 + (word) sin8u_table::step#2 + (word) sin8u_table::x#1 ← (word~) sin8u_table::$32 + (word) sin8u_table::i#1 ← ++ (word) sin8u_table::i#2 + (bool~) sin8u_table::$33 ← (word) sin8u_table::i#1 < (word) sin8u_table::tabsize#2 if((bool~) sin8u_table::$33) goto sin8u_table::@1 to:sin8u_table::@return sin8u_table::@return: scope:[sin8u_table] from sin8u_table::@25 - (byte*) print_line_cursor#21 ? phi( sin8u_table::@25/(byte*) print_line_cursor#9 ) - (byte*) print_char_cursor#90 ? phi( sin8u_table::@25/(byte*) print_char_cursor#44 ) - (word) rem16u#16 ? phi( sin8u_table::@25/(word) rem16u#21 ) - (word) rem16u#8 ? (word) rem16u#16 - (byte*) print_char_cursor#45 ? (byte*) print_char_cursor#90 - (byte*) print_line_cursor#10 ? (byte*) print_line_cursor#21 + (byte*) print_line_cursor#21 ← phi( sin8u_table::@25/(byte*) print_line_cursor#9 ) + (byte*) print_char_cursor#90 ← phi( sin8u_table::@25/(byte*) print_char_cursor#44 ) + (word) rem16u#16 ← phi( sin8u_table::@25/(word) rem16u#21 ) + (word) rem16u#8 ← (word) rem16u#16 + (byte*) print_char_cursor#45 ← (byte*) print_char_cursor#90 + (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#21 return to:@return @41: scope:[] from @32 - (byte*) print_screen#5 ? phi( @32/(byte*) print_screen#6 ) - (word) rem16u#22 ? phi( @32/(word) rem16u#25 ) - (byte*) print_char_cursor#104 ? phi( @32/(byte*) print_char_cursor#110 ) - (byte*) print_line_cursor#27 ? phi( @32/(byte*) print_line_cursor#30 ) + (byte*) print_screen#5 ← phi( @32/(byte*) print_screen#6 ) + (word) rem16u#22 ← phi( @32/(word) rem16u#25 ) + (byte*) print_char_cursor#104 ← phi( @32/(byte*) print_char_cursor#110 ) + (byte*) print_line_cursor#27 ← phi( @32/(byte*) print_line_cursor#30 ) call main to:@42 @42: scope:[] from @41 - (word) rem16u#17 ? phi( @41/(word) rem16u#6 ) - (byte*) print_char_cursor#91 ? phi( @41/(byte*) print_char_cursor#24 ) - (byte*) print_line_cursor#22 ? phi( @41/(byte*) print_line_cursor#7 ) - (byte*) print_line_cursor#11 ? (byte*) print_line_cursor#22 - (byte*) print_char_cursor#46 ? (byte*) print_char_cursor#91 - (word) rem16u#9 ? (word) rem16u#17 + (word) rem16u#17 ← phi( @41/(word) rem16u#6 ) + (byte*) print_char_cursor#91 ← phi( @41/(byte*) print_char_cursor#24 ) + (byte*) print_line_cursor#22 ← phi( @41/(byte*) print_line_cursor#7 ) + (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#22 + (byte*) print_char_cursor#46 ← (byte*) print_char_cursor#91 + (word) rem16u#9 ← (word) rem16u#17 to:@end @end: scope:[] from @42 @@ -1998,15 +1998,15 @@ SYMBOL TABLE SSA (word) sin8u_table::x#8 (word) sin8u_table::x#9 -Inversing boolean not [11] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [19] (bool~) divr16u::$9 ? (word) divr16u::rem#5 < (word) divr16u::divisor#1 from [18] (bool~) divr16u::$8 ? (word) divr16u::rem#5 >= (word) divr16u::divisor#1 -Inversing boolean not [66] (bool~) mul8u::$3 ? (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [65] (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [92] (bool~) mul8su::$4 ? (signed byte) mul8su::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [91] (bool~) mul8su::$3 ? (signed byte) mul8su::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [116] (bool~) sin8s::$1 ? (word) sin8s::x#3 < (word) PI_u4f12#0 from [115] (bool~) sin8s::$0 ? (word) sin8s::x#3 >= (word) PI_u4f12#0 -Inversing boolean not [120] (bool~) sin8s::$3 ? (word) sin8s::x#4 < (word) PI_HALF_u4f12#0 from [119] (bool~) sin8s::$2 ? (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 -Inversing boolean not [178] (bool~) sin8s::$15 ? (byte) sin8s::usinx#1 < (byte/word/signed word/dword/signed dword) $80 from [177] (bool~) sin8s::$14 ? (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 -Inversing boolean not [187] (bool~) sin8s::$18 ? (byte) sin8s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [186] (bool~) sin8s::$17 ? (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [242] (bool~) print_sword::$1 ? (signed word) print_sword::w#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [241] (bool~) print_sword::$0 ? (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [11] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [10] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [19] (bool~) divr16u::$9 ← (word) divr16u::rem#5 < (word) divr16u::divisor#1 from [18] (bool~) divr16u::$8 ← (word) divr16u::rem#5 >= (word) divr16u::divisor#1 +Inversing boolean not [66] (bool~) mul8u::$3 ← (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [65] (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [92] (bool~) mul8su::$4 ← (signed byte) mul8su::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [91] (bool~) mul8su::$3 ← (signed byte) mul8su::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [116] (bool~) sin8s::$1 ← (word) sin8s::x#3 < (word) PI_u4f12#0 from [115] (bool~) sin8s::$0 ← (word) sin8s::x#3 >= (word) PI_u4f12#0 +Inversing boolean not [120] (bool~) sin8s::$3 ← (word) sin8s::x#4 < (word) PI_HALF_u4f12#0 from [119] (bool~) sin8s::$2 ← (word) sin8s::x#4 >= (word) PI_HALF_u4f12#0 +Inversing boolean not [178] (bool~) sin8s::$15 ← (byte) sin8s::usinx#1 < (byte/word/signed word/dword/signed dword) $80 from [177] (bool~) sin8s::$14 ← (byte) sin8s::usinx#1 >= (byte/word/signed word/dword/signed dword) $80 +Inversing boolean not [187] (bool~) sin8s::$18 ← (byte) sin8s::isUpper#2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [186] (bool~) sin8s::$17 ← (byte) sin8s::isUpper#2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [242] (bool~) print_sword::$1 ← (signed word) print_sword::w#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [241] (bool~) print_sword::$0 ← (signed word) print_sword::w#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (word) divr16u::rem#0 = (word~) divr16u::$0 (word) divr16u::rem#6 Alias (word) divr16u::dividend#0 = (word~) divr16u::$6 (word) divr16u::dividend#7 @@ -2344,14 +2344,14 @@ Successful SSA optimization Pass2ConstantIdentification Constant (const byte) print_byte::b#6 = sin8u_table::mid#0 Successful SSA optimization Pass2ConstantIdentification Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (byte) mul8u::a#1 ? ((byte)) (signed byte) mul8su::a#0 -Eliminating Noop Cast (signed word) mul8su::return#0 ? ((signed word)) (word) mul8su::m#2 -Eliminating Noop Cast (signed byte) sin8s::sinx#0 ? ((signed byte)) (byte) sin8s::usinx#4 -Eliminating Noop Cast (signed byte~) sin8s::$21 ? ((signed byte)) (byte) sin8s::usinx#4 -Eliminating Noop Cast (word) print_word::w#0 ? ((word)) (signed word) print_sword::w#3 -Eliminating Noop Cast (byte) print_byte::b#0 ? ((byte)) (signed byte) print_sbyte::b#4 +Eliminating Noop Cast (byte) mul8u::a#1 ← ((byte)) (signed byte) mul8su::a#0 +Eliminating Noop Cast (signed word) mul8su::return#0 ← ((signed word)) (word) mul8su::m#2 +Eliminating Noop Cast (signed byte) sin8s::sinx#0 ← ((signed byte)) (byte) sin8s::usinx#4 +Eliminating Noop Cast (signed byte~) sin8s::$21 ← ((signed byte)) (byte) sin8s::usinx#4 +Eliminating Noop Cast (word) print_word::w#0 ← ((word)) (signed word) print_sword::w#3 +Eliminating Noop Cast (byte) print_byte::b#0 ← ((byte)) (signed byte) print_sbyte::b#4 Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 Culled Empty Block (label) @2 Culled Empty Block (label) @5 @@ -2490,91 +2490,91 @@ Calls in [mulu8_sel] to mul8u:242 Calls in [div16u] to divr16u:249 Created 41 initial phi equivalence classes -Coalesced [15] print_word::w#7 ? print_word::w#1 -Coalesced [16] print_char_cursor#139 ? print_char_cursor#2 -Coalesced [18] print_char_cursor#130 ? print_char_cursor#18 -Coalesced [20] print_char_cursor#118 ? print_char_cursor#2 -Coalesced (already) [22] print_char_cursor#131 ? print_char_cursor#18 -Coalesced (already) [24] print_char_cursor#119 ? print_char_cursor#2 -Coalesced (already) [26] print_char_cursor#132 ? print_char_cursor#18 -Coalesced (already) [28] print_char_cursor#115 ? print_char_cursor#2 -Coalesced (already) [30] print_char_cursor#125 ? print_char_cursor#18 -Coalesced (already) [32] print_char_cursor#116 ? print_char_cursor#2 -Not coalescing [49] print_char_cursor#126 ? print_line_cursor#1 -Coalesced [52] print_word::w#6 ? print_word::w#2 -Coalesced (already) [53] print_char_cursor#138 ? print_char_cursor#2 -Coalesced (already) [55] print_char_cursor#127 ? print_char_cursor#18 -Coalesced (already) [59] print_char_cursor#128 ? print_char_cursor#18 -Coalesced (already) [63] print_char_cursor#129 ? print_char_cursor#18 -Coalesced [66] print_byte::b#13 ? print_byte::b#7 -Coalesced (already) [67] print_char_cursor#117 ? print_char_cursor#2 -Coalesced [69] print_line_cursor#50 ? print_line_cursor#1 -Coalesced [75] sin8u_table::x#14 ? sin8u_table::x#1 -Coalesced [76] sin8u_table::sintab#27 ? sin8u_table::sintab#1 -Coalesced [77] sin8u_table::i#14 ? sin8u_table::i#1 -Coalesced [79] print_line_cursor#51 ? print_line_cursor#23 -Coalesced (already) [84] print_line_cursor#52 ? print_line_cursor#1 -Coalesced [88] print_char::ch#6 ? print_char::ch#3 -Coalesced [89] print_char_cursor#120 ? print_char_cursor#100 -Coalesced [93] print_char::ch#7 ? print_char::ch#4 -Coalesced [94] print_char_cursor#121 ? print_char_cursor#18 -Coalesced [102] print_str::str#13 ? print_str::str#12 -Coalesced (already) [103] print_char_cursor#133 ? print_char_cursor#105 -Coalesced [110] print_str::str#14 ? print_str::str#0 -Coalesced [111] print_char_cursor#134 ? print_char_cursor#1 -Coalesced (already) [113] print_char_cursor#124 ? print_char_cursor#2 -Coalesced [116] print_sword::w#7 ? print_sword::w#0 -Coalesced [117] print_char_cursor#136 ? print_char_cursor#18 -Coalesced (already) [120] print_char_cursor#137 ? print_char_cursor#94 -Coalesced [123] print_sword::w#6 ? print_sword::w#1 -Coalesced (already) [124] print_char_cursor#135 ? print_char_cursor#2 -Coalesced [127] print_byte::b#11 ? print_byte::b#1 -Coalesced (already) [128] print_char_cursor#113 ? print_char_cursor#99 -Coalesced [131] print_byte::b#12 ? print_byte::b#2 -Coalesced (already) [132] print_char_cursor#114 ? print_char_cursor#18 -Coalesced (already) [136] print_char_cursor#123 ? print_char_cursor#2 -Coalesced [138] print_sbyte::b#9 ? print_sbyte::b#1 -Coalesced (already) [141] print_char_cursor#112 ? print_char_cursor#18 -Coalesced (already) [144] print_char_cursor#122 ? print_char_cursor#2 -Coalesced [147] print_sbyte::b#8 ? print_sbyte::b#0 -Coalesced [156] mul8su::m#4 ? mul8su::m#1 -Coalesced [159] mul8su::m#5 ? mul8su::m#0 -Coalesced [162] mul8u::a#10 ? mul8u::a#6 -Coalesced [163] mul8u::mb#6 ? mul8u::mb#0 -Coalesced [170] mul8u::res#9 ? mul8u::res#1 -Coalesced [174] mul8u::a#11 ? mul8u::a#0 -Coalesced [175] mul8u::res#7 ? mul8u::res#6 -Coalesced [176] mul8u::mb#7 ? mul8u::mb#1 -Coalesced (already) [177] mul8u::res#8 ? mul8u::res#2 -Coalesced [180] sin8s::x#9 ? sin8s::x#0 -Coalesced [184] sin8s::x#11 ? sin8s::x#1 -Coalesced [190] mulu8_sel::v1#10 ? mulu8_sel::v1#0 -Coalesced [191] mulu8_sel::v2#9 ? mulu8_sel::v2#0 -Coalesced [197] mulu8_sel::v1#6 ? mulu8_sel::v1#1 -Coalesced [198] mulu8_sel::v2#6 ? mulu8_sel::v2#1 -Coalesced [203] mulu8_sel::v1#7 ? mulu8_sel::v1#2 -Coalesced [210] mulu8_sel::v1#8 ? mulu8_sel::v1#3 -Coalesced [211] mulu8_sel::v2#7 ? mulu8_sel::v2#3 -Coalesced [217] mulu8_sel::v1#9 ? mulu8_sel::v1#4 -Coalesced [218] mulu8_sel::v2#8 ? mulu8_sel::v2#4 -Coalesced [226] sin8s::usinx#9 ? sin8s::usinx#2 -Coalesced [230] sin8s::return#6 ? sin8s::sinx#1 -Coalesced [234] sin8s::usinx#8 ? sin8s::usinx#1 -Coalesced [235] sin8s::x#10 ? sin8s::x#4 -Coalesced [236] sin8s::x#8 ? sin8s::x#2 -Coalesced [240] mul8u::b#3 ? mul8u::b#1 -Coalesced [241] mul8u::a#9 ? mul8u::a#2 -Coalesced [260] divr16u::rem#13 ? divr16u::rem#1 -Coalesced [267] divr16u::rem#15 ? divr16u::rem#2 -Coalesced [268] divr16u::return#6 ? divr16u::quotient#2 -Coalesced [274] divr16u::rem#11 ? divr16u::rem#10 -Coalesced [275] divr16u::dividend#8 ? divr16u::dividend#0 -Coalesced [276] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [277] divr16u::i#7 ? divr16u::i#1 -Coalesced [278] divr16u::rem#14 ? divr16u::rem#5 -Coalesced [279] divr16u::return#5 ? divr16u::quotient#1 -Coalesced [280] divr16u::rem#12 ? divr16u::rem#0 -Coalesced [287] print_cls::sc#3 ? print_cls::sc#1 +Coalesced [15] print_word::w#7 ← print_word::w#1 +Coalesced [16] print_char_cursor#139 ← print_char_cursor#2 +Coalesced [18] print_char_cursor#130 ← print_char_cursor#18 +Coalesced [20] print_char_cursor#118 ← print_char_cursor#2 +Coalesced (already) [22] print_char_cursor#131 ← print_char_cursor#18 +Coalesced (already) [24] print_char_cursor#119 ← print_char_cursor#2 +Coalesced (already) [26] print_char_cursor#132 ← print_char_cursor#18 +Coalesced (already) [28] print_char_cursor#115 ← print_char_cursor#2 +Coalesced (already) [30] print_char_cursor#125 ← print_char_cursor#18 +Coalesced (already) [32] print_char_cursor#116 ← print_char_cursor#2 +Not coalescing [49] print_char_cursor#126 ← print_line_cursor#1 +Coalesced [52] print_word::w#6 ← print_word::w#2 +Coalesced (already) [53] print_char_cursor#138 ← print_char_cursor#2 +Coalesced (already) [55] print_char_cursor#127 ← print_char_cursor#18 +Coalesced (already) [59] print_char_cursor#128 ← print_char_cursor#18 +Coalesced (already) [63] print_char_cursor#129 ← print_char_cursor#18 +Coalesced [66] print_byte::b#13 ← print_byte::b#7 +Coalesced (already) [67] print_char_cursor#117 ← print_char_cursor#2 +Coalesced [69] print_line_cursor#50 ← print_line_cursor#1 +Coalesced [75] sin8u_table::x#14 ← sin8u_table::x#1 +Coalesced [76] sin8u_table::sintab#27 ← sin8u_table::sintab#1 +Coalesced [77] sin8u_table::i#14 ← sin8u_table::i#1 +Coalesced [79] print_line_cursor#51 ← print_line_cursor#23 +Coalesced (already) [84] print_line_cursor#52 ← print_line_cursor#1 +Coalesced [88] print_char::ch#6 ← print_char::ch#3 +Coalesced [89] print_char_cursor#120 ← print_char_cursor#100 +Coalesced [93] print_char::ch#7 ← print_char::ch#4 +Coalesced [94] print_char_cursor#121 ← print_char_cursor#18 +Coalesced [102] print_str::str#13 ← print_str::str#12 +Coalesced (already) [103] print_char_cursor#133 ← print_char_cursor#105 +Coalesced [110] print_str::str#14 ← print_str::str#0 +Coalesced [111] print_char_cursor#134 ← print_char_cursor#1 +Coalesced (already) [113] print_char_cursor#124 ← print_char_cursor#2 +Coalesced [116] print_sword::w#7 ← print_sword::w#0 +Coalesced [117] print_char_cursor#136 ← print_char_cursor#18 +Coalesced (already) [120] print_char_cursor#137 ← print_char_cursor#94 +Coalesced [123] print_sword::w#6 ← print_sword::w#1 +Coalesced (already) [124] print_char_cursor#135 ← print_char_cursor#2 +Coalesced [127] print_byte::b#11 ← print_byte::b#1 +Coalesced (already) [128] print_char_cursor#113 ← print_char_cursor#99 +Coalesced [131] print_byte::b#12 ← print_byte::b#2 +Coalesced (already) [132] print_char_cursor#114 ← print_char_cursor#18 +Coalesced (already) [136] print_char_cursor#123 ← print_char_cursor#2 +Coalesced [138] print_sbyte::b#9 ← print_sbyte::b#1 +Coalesced (already) [141] print_char_cursor#112 ← print_char_cursor#18 +Coalesced (already) [144] print_char_cursor#122 ← print_char_cursor#2 +Coalesced [147] print_sbyte::b#8 ← print_sbyte::b#0 +Coalesced [156] mul8su::m#4 ← mul8su::m#1 +Coalesced [159] mul8su::m#5 ← mul8su::m#0 +Coalesced [162] mul8u::a#10 ← mul8u::a#6 +Coalesced [163] mul8u::mb#6 ← mul8u::mb#0 +Coalesced [170] mul8u::res#9 ← mul8u::res#1 +Coalesced [174] mul8u::a#11 ← mul8u::a#0 +Coalesced [175] mul8u::res#7 ← mul8u::res#6 +Coalesced [176] mul8u::mb#7 ← mul8u::mb#1 +Coalesced (already) [177] mul8u::res#8 ← mul8u::res#2 +Coalesced [180] sin8s::x#9 ← sin8s::x#0 +Coalesced [184] sin8s::x#11 ← sin8s::x#1 +Coalesced [190] mulu8_sel::v1#10 ← mulu8_sel::v1#0 +Coalesced [191] mulu8_sel::v2#9 ← mulu8_sel::v2#0 +Coalesced [197] mulu8_sel::v1#6 ← mulu8_sel::v1#1 +Coalesced [198] mulu8_sel::v2#6 ← mulu8_sel::v2#1 +Coalesced [203] mulu8_sel::v1#7 ← mulu8_sel::v1#2 +Coalesced [210] mulu8_sel::v1#8 ← mulu8_sel::v1#3 +Coalesced [211] mulu8_sel::v2#7 ← mulu8_sel::v2#3 +Coalesced [217] mulu8_sel::v1#9 ← mulu8_sel::v1#4 +Coalesced [218] mulu8_sel::v2#8 ← mulu8_sel::v2#4 +Coalesced [226] sin8s::usinx#9 ← sin8s::usinx#2 +Coalesced [230] sin8s::return#6 ← sin8s::sinx#1 +Coalesced [234] sin8s::usinx#8 ← sin8s::usinx#1 +Coalesced [235] sin8s::x#10 ← sin8s::x#4 +Coalesced [236] sin8s::x#8 ← sin8s::x#2 +Coalesced [240] mul8u::b#3 ← mul8u::b#1 +Coalesced [241] mul8u::a#9 ← mul8u::a#2 +Coalesced [260] divr16u::rem#13 ← divr16u::rem#1 +Coalesced [267] divr16u::rem#15 ← divr16u::rem#2 +Coalesced [268] divr16u::return#6 ← divr16u::quotient#2 +Coalesced [274] divr16u::rem#11 ← divr16u::rem#10 +Coalesced [275] divr16u::dividend#8 ← divr16u::dividend#0 +Coalesced [276] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [277] divr16u::i#7 ← divr16u::i#1 +Coalesced [278] divr16u::rem#14 ← divr16u::rem#5 +Coalesced [279] divr16u::return#5 ← divr16u::quotient#1 +Coalesced [280] divr16u::rem#12 ← divr16u::rem#0 +Coalesced [287] print_cls::sc#3 ← print_cls::sc#1 Coalesced down to 28 phi equivalence classes Culled Empty Block (label) sin8u_table::@26 Culled Empty Block (label) print_ln::@3 @@ -2674,14 +2674,14 @@ main::@return: scope:[main] from main::@1 sin8u_table: scope:[sin8u_table] from main::@1 [9] phi() [10] call div16u - [11] (word) div16u::return#2 ? (word) div16u::return#0 + [11] (word) div16u::return#2 ← (word) div16u::return#0 to:sin8u_table::@2 sin8u_table::@2: scope:[sin8u_table] from sin8u_table - [12] (word) sin8u_table::step#0 ? (word) div16u::return#2 + [12] (word) sin8u_table::step#0 ← (word) div16u::return#2 [13] call print_str to:sin8u_table::@3 sin8u_table::@3: scope:[sin8u_table] from sin8u_table::@2 - [14] (word) print_word::w#1 ? (word) sin8u_table::step#0 + [14] (word) print_word::w#1 ← (word) sin8u_table::step#0 [15] call print_word to:sin8u_table::@4 sin8u_table::@4: scope:[sin8u_table] from sin8u_table::@3 @@ -2721,30 +2721,30 @@ sin8u_table::@12: scope:[sin8u_table] from sin8u_table::@11 [33] call print_ln to:sin8u_table::@1 sin8u_table::@1: scope:[sin8u_table] from sin8u_table::@12 sin8u_table::@23 - [34] (word) sin8u_table::i#10 ? phi( sin8u_table::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8u_table::@23/(word) sin8u_table::i#1 ) - [34] (byte*) sin8u_table::sintab#2 ? phi( sin8u_table::@12/(const byte[$14]) main::sintab#0 sin8u_table::@23/(byte*) sin8u_table::sintab#1 ) - [34] (word) sin8u_table::x#10 ? phi( sin8u_table::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8u_table::@23/(word) sin8u_table::x#1 ) - [35] (word) sin8s::x#2 ? (word) sin8u_table::x#10 + [34] (word) sin8u_table::i#10 ← phi( sin8u_table::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8u_table::@23/(word) sin8u_table::i#1 ) + [34] (byte*) sin8u_table::sintab#2 ← phi( sin8u_table::@12/(const byte[$14]) main::sintab#0 sin8u_table::@23/(byte*) sin8u_table::sintab#1 ) + [34] (word) sin8u_table::x#10 ← phi( sin8u_table::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8u_table::@23/(word) sin8u_table::x#1 ) + [35] (word) sin8s::x#2 ← (word) sin8u_table::x#10 [36] call sin8s - [37] (signed byte) sin8s::return#2 ? (signed byte) sin8s::return#0 + [37] (signed byte) sin8s::return#2 ← (signed byte) sin8s::return#0 to:sin8u_table::@13 sin8u_table::@13: scope:[sin8u_table] from sin8u_table::@1 - [38] (signed byte) sin8u_table::sinx#0 ? (signed byte) sin8s::return#2 - [39] (signed byte) mul8su::a#0 ? (signed byte) sin8u_table::sinx#0 + [38] (signed byte) sin8u_table::sinx#0 ← (signed byte) sin8s::return#2 + [39] (signed byte) mul8su::a#0 ← (signed byte) sin8u_table::sinx#0 [40] call mul8su - [41] (signed word) mul8su::return#2 ? (signed word)(word) mul8su::m#2 + [41] (signed word) mul8su::return#2 ← (signed word)(word) mul8su::m#2 to:sin8u_table::@14 sin8u_table::@14: scope:[sin8u_table] from sin8u_table::@13 - [42] (signed word) sin8u_table::sinx_sc#0 ? (signed word) mul8su::return#2 - [43] (byte~) sin8u_table::$21 ? > (signed word) sin8u_table::sinx_sc#0 - [44] (byte) sin8u_table::sinx_tr#0 ? (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 - [45] *((byte*) sin8u_table::sintab#2) ? (byte) sin8u_table::sinx_tr#0 - [46] (byte*) sin8u_table::sintab#1 ? ++ (byte*) sin8u_table::sintab#2 - [47] (byte*~) print_char_cursor#126 ? (byte*) print_line_cursor#1 + [42] (signed word) sin8u_table::sinx_sc#0 ← (signed word) mul8su::return#2 + [43] (byte~) sin8u_table::$21 ← > (signed word) sin8u_table::sinx_sc#0 + [44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 + [45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 + [46] (byte*) sin8u_table::sintab#1 ← ++ (byte*) sin8u_table::sintab#2 + [47] (byte*~) print_char_cursor#126 ← (byte*) print_line_cursor#1 [48] call print_str to:sin8u_table::@15 sin8u_table::@15: scope:[sin8u_table] from sin8u_table::@14 - [49] (word) print_word::w#2 ? (word) sin8u_table::x#10 + [49] (word) print_word::w#2 ← (word) sin8u_table::x#10 [50] call print_word to:sin8u_table::@16 sin8u_table::@16: scope:[sin8u_table] from sin8u_table::@15 @@ -2752,7 +2752,7 @@ sin8u_table::@16: scope:[sin8u_table] from sin8u_table::@15 [52] call print_str to:sin8u_table::@17 sin8u_table::@17: scope:[sin8u_table] from sin8u_table::@16 - [53] (signed byte) print_sbyte::b#1 ? (signed byte) sin8u_table::sinx#0 + [53] (signed byte) print_sbyte::b#1 ← (signed byte) sin8u_table::sinx#0 [54] call print_sbyte to:sin8u_table::@18 sin8u_table::@18: scope:[sin8u_table] from sin8u_table::@17 @@ -2760,7 +2760,7 @@ sin8u_table::@18: scope:[sin8u_table] from sin8u_table::@17 [56] call print_str to:sin8u_table::@19 sin8u_table::@19: scope:[sin8u_table] from sin8u_table::@18 - [57] (signed word) print_sword::w#1 ? (signed word) sin8u_table::sinx_sc#0 + [57] (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#0 [58] call print_sword to:sin8u_table::@20 sin8u_table::@20: scope:[sin8u_table] from sin8u_table::@19 @@ -2768,7 +2768,7 @@ sin8u_table::@20: scope:[sin8u_table] from sin8u_table::@19 [60] call print_str to:sin8u_table::@21 sin8u_table::@21: scope:[sin8u_table] from sin8u_table::@20 - [61] (byte) print_byte::b#7 ? (byte) sin8u_table::sinx_tr#0 + [61] (byte) print_byte::b#7 ← (byte) sin8u_table::sinx_tr#0 [62] call print_byte to:sin8u_table::@22 sin8u_table::@22: scope:[sin8u_table] from sin8u_table::@21 @@ -2776,64 +2776,64 @@ sin8u_table::@22: scope:[sin8u_table] from sin8u_table::@21 [64] call print_ln to:sin8u_table::@23 sin8u_table::@23: scope:[sin8u_table] from sin8u_table::@22 - [65] (word) sin8u_table::x#1 ? (word) sin8u_table::x#10 + (word) sin8u_table::step#0 - [66] (word) sin8u_table::i#1 ? ++ (word) sin8u_table::i#10 + [65] (word) sin8u_table::x#1 ← (word) sin8u_table::x#10 + (word) sin8u_table::step#0 + [66] (word) sin8u_table::i#1 ← ++ (word) sin8u_table::i#10 [67] if((word) sin8u_table::i#1<(const word) main::tabsize#0) goto sin8u_table::@1 to:sin8u_table::@return sin8u_table::@return: scope:[sin8u_table] from sin8u_table::@23 [68] return to:@return print_ln: scope:[print_ln] from sin8u_table::@12 sin8u_table::@22 - [69] (byte*) print_line_cursor#23 ? phi( sin8u_table::@12/((byte*))(word/signed word/dword/signed dword) $400 sin8u_table::@22/(byte*) print_line_cursor#1 ) + [69] (byte*) print_line_cursor#23 ← phi( sin8u_table::@12/((byte*))(word/signed word/dword/signed dword) $400 sin8u_table::@22/(byte*) print_line_cursor#1 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [70] (byte*) print_line_cursor#12 ? phi( print_ln/(byte*) print_line_cursor#23 print_ln::@1/(byte*) print_line_cursor#1 ) - [71] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [70] (byte*) print_line_cursor#12 ← phi( print_ln/(byte*) print_line_cursor#23 print_ln::@1/(byte*) print_line_cursor#1 ) + [71] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 [72] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#18) goto print_ln::@1 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 [73] return to:@return print_byte: scope:[print_byte] from print_sbyte::@2 print_word print_word::@1 sin8u_table::@11 sin8u_table::@21 sin8u_table::@5 sin8u_table::@7 sin8u_table::@9 - [74] (byte*) print_char_cursor#100 ? phi( print_sbyte::@2/(byte*) print_char_cursor#18 print_word/(byte*) print_char_cursor#99 print_word::@1/(byte*) print_char_cursor#18 sin8u_table::@9/(byte*) print_char_cursor#2 sin8u_table::@11/(byte*) print_char_cursor#2 sin8u_table::@21/(byte*) print_char_cursor#2 sin8u_table::@5/(byte*) print_char_cursor#2 sin8u_table::@7/(byte*) print_char_cursor#2 ) - [74] (byte) print_byte::b#8 ? phi( print_sbyte::@2/(byte~) print_byte::b#10 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 sin8u_table::@9/(const byte) sin8u_table::amplitude#0 sin8u_table::@11/(const byte) sin8u_table::mid#0 sin8u_table::@21/(byte) print_byte::b#7 sin8u_table::@5/(const byte) sin8u_table::min#0 sin8u_table::@7/(const byte) sin8u_table::max#0 ) - [75] (byte~) print_byte::$0 ? (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [76] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [74] (byte*) print_char_cursor#100 ← phi( print_sbyte::@2/(byte*) print_char_cursor#18 print_word/(byte*) print_char_cursor#99 print_word::@1/(byte*) print_char_cursor#18 sin8u_table::@9/(byte*) print_char_cursor#2 sin8u_table::@11/(byte*) print_char_cursor#2 sin8u_table::@21/(byte*) print_char_cursor#2 sin8u_table::@5/(byte*) print_char_cursor#2 sin8u_table::@7/(byte*) print_char_cursor#2 ) + [74] (byte) print_byte::b#8 ← phi( print_sbyte::@2/(byte~) print_byte::b#10 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 sin8u_table::@9/(const byte) sin8u_table::amplitude#0 sin8u_table::@11/(const byte) sin8u_table::mid#0 sin8u_table::@21/(byte) print_byte::b#7 sin8u_table::@5/(const byte) sin8u_table::min#0 sin8u_table::@7/(const byte) sin8u_table::max#0 ) + [75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [76] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [77] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [78] (byte~) print_byte::$2 ? (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f - [79] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f + [79] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [80] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 [81] return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 print_sword::@2 - [82] (byte*) print_char_cursor#64 ? phi( print_byte/(byte*) print_char_cursor#100 print_byte::@1/(byte*) print_char_cursor#18 print_sbyte::@1/(byte*) print_char_cursor#2 print_sbyte::@3/(byte*) print_char_cursor#2 print_sword::@2/(byte*) print_char_cursor#2 ) - [82] (byte) print_char::ch#5 ? phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' print_sword::@2/(byte) '-' ) - [83] *((byte*) print_char_cursor#64) ? (byte) print_char::ch#5 - [84] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#64 + [82] (byte*) print_char_cursor#64 ← phi( print_byte/(byte*) print_char_cursor#100 print_byte::@1/(byte*) print_char_cursor#18 print_sbyte::@1/(byte*) print_char_cursor#2 print_sbyte::@3/(byte*) print_char_cursor#2 print_sword::@2/(byte*) print_char_cursor#2 ) + [82] (byte) print_char::ch#5 ← phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' print_sword::@2/(byte) '-' ) + [83] *((byte*) print_char_cursor#64) ← (byte) print_char::ch#5 + [84] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#64 to:print_char::@return print_char::@return: scope:[print_char] from print_char [85] return to:@return print_str: scope:[print_str] from sin8u_table::@10 sin8u_table::@14 sin8u_table::@16 sin8u_table::@18 sin8u_table::@2 sin8u_table::@20 sin8u_table::@4 sin8u_table::@6 sin8u_table::@8 - [86] (byte*) print_char_cursor#105 ? phi( sin8u_table::@10/(byte*) print_char_cursor#18 sin8u_table::@14/(byte*~) print_char_cursor#126 sin8u_table::@16/(byte*) print_char_cursor#18 sin8u_table::@18/(byte*) print_char_cursor#18 sin8u_table::@20/(byte*) print_char_cursor#18 sin8u_table::@2/((byte*))(word/signed word/dword/signed dword) $400 sin8u_table::@4/(byte*) print_char_cursor#18 sin8u_table::@6/(byte*) print_char_cursor#18 sin8u_table::@8/(byte*) print_char_cursor#18 ) - [86] (byte*) print_str::str#12 ? phi( sin8u_table::@10/(const string) sin8u_table::str4 sin8u_table::@14/(const string) sin8u_table::str5 sin8u_table::@16/(const string) sin8u_table::str6 sin8u_table::@18/(const string) sin8u_table::str7 sin8u_table::@20/(const string) sin8u_table::str8 sin8u_table::@2/(const string) sin8u_table::str sin8u_table::@4/(const string) sin8u_table::str1 sin8u_table::@6/(const string) sin8u_table::str2 sin8u_table::@8/(const string) sin8u_table::str3 ) + [86] (byte*) print_char_cursor#105 ← phi( sin8u_table::@10/(byte*) print_char_cursor#18 sin8u_table::@14/(byte*~) print_char_cursor#126 sin8u_table::@16/(byte*) print_char_cursor#18 sin8u_table::@18/(byte*) print_char_cursor#18 sin8u_table::@20/(byte*) print_char_cursor#18 sin8u_table::@2/((byte*))(word/signed word/dword/signed dword) $400 sin8u_table::@4/(byte*) print_char_cursor#18 sin8u_table::@6/(byte*) print_char_cursor#18 sin8u_table::@8/(byte*) print_char_cursor#18 ) + [86] (byte*) print_str::str#12 ← phi( sin8u_table::@10/(const string) sin8u_table::str4 sin8u_table::@14/(const string) sin8u_table::str5 sin8u_table::@16/(const string) sin8u_table::str6 sin8u_table::@18/(const string) sin8u_table::str7 sin8u_table::@20/(const string) sin8u_table::str8 sin8u_table::@2/(const string) sin8u_table::str sin8u_table::@4/(const string) sin8u_table::str1 sin8u_table::@6/(const string) sin8u_table::str2 sin8u_table::@8/(const string) sin8u_table::str3 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [87] (byte*) print_char_cursor#2 ? phi( print_str/(byte*) print_char_cursor#105 print_str::@2/(byte*) print_char_cursor#1 ) - [87] (byte*) print_str::str#10 ? phi( print_str/(byte*) print_str::str#12 print_str::@2/(byte*) print_str::str#0 ) + [87] (byte*) print_char_cursor#2 ← phi( print_str/(byte*) print_char_cursor#105 print_str::@2/(byte*) print_char_cursor#1 ) + [87] (byte*) print_str::str#10 ← phi( print_str/(byte*) print_str::str#12 print_str::@2/(byte*) print_str::str#0 ) [88] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [89] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [90] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#10) - [91] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 - [92] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#10 + [90] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#10) + [91] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 + [92] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 to:print_str::@1 print_sword: scope:[print_sword] from sin8u_table::@19 [93] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 @@ -2843,25 +2843,25 @@ print_sword::@2: scope:[print_sword] from print_sword [95] call print_char to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@2 - [96] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 + [96] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@3 - [97] (byte*) print_char_cursor#94 ? phi( print_sword/(byte*) print_char_cursor#2 print_sword::@3/(byte*) print_char_cursor#18 ) - [97] (signed word) print_sword::w#3 ? phi( print_sword/(signed word) print_sword::w#1 print_sword::@3/(signed word) print_sword::w#0 ) - [98] (word~) print_word::w#5 ? (word)(signed word) print_sword::w#3 + [97] (byte*) print_char_cursor#94 ← phi( print_sword/(byte*) print_char_cursor#2 print_sword::@3/(byte*) print_char_cursor#18 ) + [97] (signed word) print_sword::w#3 ← phi( print_sword/(signed word) print_sword::w#1 print_sword::@3/(signed word) print_sword::w#0 ) + [98] (word~) print_word::w#5 ← (word)(signed word) print_sword::w#3 [99] call print_word to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 [100] return to:@return print_word: scope:[print_word] from print_sword::@1 sin8u_table::@15 sin8u_table::@3 - [101] (byte*) print_char_cursor#99 ? phi( print_sword::@1/(byte*) print_char_cursor#94 sin8u_table::@15/(byte*) print_char_cursor#2 sin8u_table::@3/(byte*) print_char_cursor#2 ) - [101] (word) print_word::w#3 ? phi( print_sword::@1/(word~) print_word::w#5 sin8u_table::@15/(word) print_word::w#2 sin8u_table::@3/(word) print_word::w#1 ) - [102] (byte) print_byte::b#1 ? > (word) print_word::w#3 + [101] (byte*) print_char_cursor#99 ← phi( print_sword::@1/(byte*) print_char_cursor#94 sin8u_table::@15/(byte*) print_char_cursor#2 sin8u_table::@3/(byte*) print_char_cursor#2 ) + [101] (word) print_word::w#3 ← phi( print_sword::@1/(word~) print_word::w#5 sin8u_table::@15/(word) print_word::w#2 sin8u_table::@3/(word) print_word::w#1 ) + [102] (byte) print_byte::b#1 ← > (word) print_word::w#3 [103] call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [104] (byte) print_byte::b#2 ? < (word) print_word::w#3 + [104] (byte) print_byte::b#2 ← < (word) print_word::w#3 [105] call print_byte to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 @@ -2875,8 +2875,8 @@ print_sbyte::@3: scope:[print_sbyte] from print_sbyte [109] call print_char to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@3 print_sbyte::@4 - [110] (signed byte) print_sbyte::b#4 ? phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#1 ) - [111] (byte~) print_byte::b#10 ? (byte)(signed byte) print_sbyte::b#4 + [110] (signed byte) print_sbyte::b#4 ← phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#1 ) + [111] (byte~) print_byte::b#10 ← (byte)(signed byte) print_sbyte::b#4 [112] call print_byte to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@2 @@ -2887,143 +2887,143 @@ print_sbyte::@1: scope:[print_sbyte] from print_sbyte [115] call print_char to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@1 - [116] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 + [116] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 to:print_sbyte::@2 mul8su: scope:[mul8su] from sin8u_table::@13 - [117] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8su::a#0 + [117] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8su::a#0 [118] call mul8u - [119] (word) mul8u::return#2 ? (word) mul8u::res#2 + [119] (word) mul8u::return#2 ← (word) mul8u::res#2 to:mul8su::@3 mul8su::@3: scope:[mul8su] from mul8su - [120] (word) mul8su::m#0 ? (word) mul8u::return#2 + [120] (word) mul8su::m#0 ← (word) mul8u::return#2 [121] if((signed byte) mul8su::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8su::@1 to:mul8su::@2 mul8su::@2: scope:[mul8su] from mul8su::@3 - [122] (byte~) mul8su::$7 ? > (word) mul8su::m#0 - [123] (byte~) mul8su::$10 ? (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 - [124] (word) mul8su::m#1 ? (word) mul8su::m#0 hi= (byte~) mul8su::$10 + [122] (byte~) mul8su::$7 ← > (word) mul8su::m#0 + [123] (byte~) mul8su::$10 ← (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 + [124] (word) mul8su::m#1 ← (word) mul8su::m#0 hi= (byte~) mul8su::$10 to:mul8su::@1 mul8su::@1: scope:[mul8su] from mul8su::@2 mul8su::@3 - [125] (word) mul8su::m#2 ? phi( mul8su::@2/(word) mul8su::m#1 mul8su::@3/(word) mul8su::m#0 ) + [125] (word) mul8su::m#2 ← phi( mul8su::@2/(word) mul8su::m#1 mul8su::@3/(word) mul8su::m#0 ) to:mul8su::@return mul8su::@return: scope:[mul8su] from mul8su::@1 [126] return to:@return mul8u: scope:[mul8u] from mul8su mulu8_sel - [127] (byte) mul8u::a#6 ? phi( mul8su/(byte~) mul8u::a#8 mulu8_sel/(byte) mul8u::a#2 ) - [127] (byte) mul8u::b#2 ? phi( mul8su/((byte))(const byte) mul8su::b#0 mulu8_sel/(byte) mul8u::b#1 ) - [128] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 + [127] (byte) mul8u::a#6 ← phi( mul8su/(byte~) mul8u::a#8 mulu8_sel/(byte) mul8u::a#2 ) + [127] (byte) mul8u::b#2 ← phi( mul8su/((byte))(const byte) mul8su::b#0 mulu8_sel/(byte) mul8u::b#1 ) + [128] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@3 - [129] (word) mul8u::mb#2 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) - [129] (word) mul8u::res#2 ? phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) - [129] (byte) mul8u::a#3 ? phi( mul8u/(byte) mul8u::a#6 mul8u::@3/(byte) mul8u::a#0 ) + [129] (word) mul8u::mb#2 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) + [129] (word) mul8u::res#2 ← phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) + [129] (byte) mul8u::a#3 ← phi( mul8u/(byte) mul8u::a#6 mul8u::@3/(byte) mul8u::a#0 ) [130] if((byte) mul8u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 to:mul8u::@return mul8u::@return: scope:[mul8u] from mul8u::@1 [131] return to:@return mul8u::@2: scope:[mul8u] from mul8u::@1 - [132] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [132] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [133] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 to:mul8u::@4 mul8u::@4: scope:[mul8u] from mul8u::@2 - [134] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 + [134] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 to:mul8u::@3 mul8u::@3: scope:[mul8u] from mul8u::@2 mul8u::@4 - [135] (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) - [136] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [137] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [135] (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) + [136] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [137] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul8u::@1 sin8s: scope:[sin8s] from sin8u_table::@1 [138] if((word) sin8s::x#2<(const word) PI_u4f12#0) goto sin8s::@1 to:sin8s::@5 sin8s::@5: scope:[sin8s] from sin8s - [139] (word) sin8s::x#0 ? (word) sin8s::x#2 - (const word) PI_u4f12#0 + [139] (word) sin8s::x#0 ← (word) sin8s::x#2 - (const word) PI_u4f12#0 to:sin8s::@1 sin8s::@1: scope:[sin8s] from sin8s sin8s::@5 - [140] (byte) sin8s::isUpper#10 ? phi( sin8s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [140] (word) sin8s::x#4 ? phi( sin8s/(word) sin8s::x#2 sin8s::@5/(word) sin8s::x#0 ) + [140] (byte) sin8s::isUpper#10 ← phi( sin8s/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@5/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [140] (word) sin8s::x#4 ← phi( sin8s/(word) sin8s::x#2 sin8s::@5/(word) sin8s::x#0 ) [141] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 to:sin8s::@6 sin8s::@6: scope:[sin8s] from sin8s::@1 - [142] (word) sin8s::x#1 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 + [142] (word) sin8s::x#1 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 to:sin8s::@2 sin8s::@2: scope:[sin8s] from sin8s::@1 sin8s::@6 - [143] (word) sin8s::x#6 ? phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#1 ) - [144] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 - [145] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 - [146] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 - [147] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 + [143] (word) sin8s::x#6 ← phi( sin8s::@1/(word) sin8s::x#4 sin8s::@6/(word) sin8s::x#1 ) + [144] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 + [145] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 + [146] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 + [147] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 [148] call mulu8_sel - [149] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + [149] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 to:sin8s::@9 sin8s::@9: scope:[sin8s] from sin8s::@2 - [150] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - [151] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 - [152] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 + [150] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + [151] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 + [152] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 [153] call mulu8_sel - [154] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + [154] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 to:sin8s::@10 sin8s::@10: scope:[sin8s] from sin8s::@9 - [155] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 - [156] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 + [155] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 + [156] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 [157] call mulu8_sel - [158] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + [158] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 to:sin8s::@11 sin8s::@11: scope:[sin8s] from sin8s::@10 - [159] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - [160] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 - [161] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 - [162] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 + [159] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + [160] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 + [161] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 + [162] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 [163] call mulu8_sel - [164] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + [164] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 to:sin8s::@12 sin8s::@12: scope:[sin8s] from sin8s::@11 - [165] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - [166] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 - [167] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 + [165] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + [166] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 + [167] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 [168] call mulu8_sel - [169] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + [169] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 to:sin8s::@13 sin8s::@13: scope:[sin8s] from sin8s::@12 - [170] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - [171] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [172] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 + [170] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + [171] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [172] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [173] if((byte) sin8s::usinx#1<(byte/word/signed word/dword/signed dword) $80) goto sin8s::@3 to:sin8s::@7 sin8s::@7: scope:[sin8s] from sin8s::@13 - [174] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 + [174] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 to:sin8s::@3 sin8s::@3: scope:[sin8s] from sin8s::@13 sin8s::@7 - [175] (byte) sin8s::usinx#4 ? phi( sin8s::@13/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) + [175] (byte) sin8s::usinx#4 ← phi( sin8s::@13/(byte) sin8s::usinx#1 sin8s::@7/(byte) sin8s::usinx#2 ) [176] if((byte) sin8s::isUpper#10==(byte/signed byte/word/signed word/dword/signed dword) 0) goto sin8s::@14 to:sin8s::@8 sin8s::@8: scope:[sin8s] from sin8s::@3 - [177] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 + [177] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 to:sin8s::@4 sin8s::@4: scope:[sin8s] from sin8s::@14 sin8s::@8 - [178] (signed byte) sin8s::return#0 ? phi( sin8s::@14/(signed byte~) sin8s::return#5 sin8s::@8/(signed byte) sin8s::sinx#1 ) + [178] (signed byte) sin8s::return#0 ← phi( sin8s::@14/(signed byte~) sin8s::return#5 sin8s::@8/(signed byte) sin8s::sinx#1 ) to:sin8s::@return sin8s::@return: scope:[sin8s] from sin8s::@4 [179] return to:@return sin8s::@14: scope:[sin8s] from sin8s::@3 - [180] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 + [180] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 to:sin8s::@4 mulu8_sel: scope:[mulu8_sel] from sin8s::@10 sin8s::@11 sin8s::@12 sin8s::@2 sin8s::@9 - [181] (byte) mulu8_sel::select#5 ? phi( sin8s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@10/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) - [181] (byte) mulu8_sel::v2#5 ? phi( sin8s::@9/(byte) mulu8_sel::v2#1 sin8s::@10/(const byte) sin8s::DIV_6#0 sin8s::@11/(byte) mulu8_sel::v2#3 sin8s::@12/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) - [181] (byte) mulu8_sel::v1#5 ? phi( sin8s::@9/(byte) mulu8_sel::v1#1 sin8s::@10/(byte) mulu8_sel::v1#2 sin8s::@11/(byte) mulu8_sel::v1#3 sin8s::@12/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) - [182] (byte) mul8u::a#2 ? (byte) mulu8_sel::v1#5 - [183] (byte) mul8u::b#1 ? (byte) mulu8_sel::v2#5 + [181] (byte) mulu8_sel::select#5 ← phi( sin8s::@9/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@10/(byte/signed byte/word/signed word/dword/signed dword) 1 sin8s::@11/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@12/(byte/signed byte/word/signed word/dword/signed dword) 0 sin8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [181] (byte) mulu8_sel::v2#5 ← phi( sin8s::@9/(byte) mulu8_sel::v2#1 sin8s::@10/(const byte) sin8s::DIV_6#0 sin8s::@11/(byte) mulu8_sel::v2#3 sin8s::@12/(byte) mulu8_sel::v2#4 sin8s::@2/(byte) mulu8_sel::v2#0 ) + [181] (byte) mulu8_sel::v1#5 ← phi( sin8s::@9/(byte) mulu8_sel::v1#1 sin8s::@10/(byte) mulu8_sel::v1#2 sin8s::@11/(byte) mulu8_sel::v1#3 sin8s::@12/(byte) mulu8_sel::v1#4 sin8s::@2/(byte) mulu8_sel::v1#0 ) + [182] (byte) mul8u::a#2 ← (byte) mulu8_sel::v1#5 + [183] (byte) mul8u::b#1 ← (byte) mulu8_sel::v2#5 [184] call mul8u - [185] (word) mul8u::return#3 ? (word) mul8u::res#2 + [185] (word) mul8u::return#3 ← (word) mul8u::res#2 to:mulu8_sel::@1 mulu8_sel::@1: scope:[mulu8_sel] from mulu8_sel - [186] (word~) mulu8_sel::$0 ? (word) mul8u::return#3 - [187] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 - [188] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 + [186] (word~) mulu8_sel::$0 ← (word) mul8u::return#3 + [187] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 + [188] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 to:mulu8_sel::@return mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@1 [189] return @@ -3031,10 +3031,10 @@ mulu8_sel::@return: scope:[mulu8_sel] from mulu8_sel::@1 div16u: scope:[div16u] from sin8u_table [190] phi() [191] call divr16u - [192] (word) divr16u::return#2 ? (word) divr16u::return#0 + [192] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div16u::@1 div16u::@1: scope:[div16u] from div16u - [193] (word) div16u::return#0 ? (word) divr16u::return#2 + [193] (word) div16u::return#0 ← (word) divr16u::return#2 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@1 [194] return @@ -3043,36 +3043,36 @@ divr16u: scope:[divr16u] from div16u [195] phi() to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [196] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [196] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [196] (word) divr16u::dividend#2 ? phi( divr16u/(const word) PI2_u4f12#0 divr16u::@3/(word) divr16u::dividend#0 ) - [196] (word) divr16u::rem#4 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::rem#10 ) - [197] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [198] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 - [199] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [196] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [196] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [196] (word) divr16u::dividend#2 ← phi( divr16u/(const word) PI2_u4f12#0 divr16u::@3/(word) divr16u::dividend#0 ) + [196] (word) divr16u::rem#4 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::rem#10 ) + [197] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [198] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 + [199] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [200] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [201] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [201] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [202] (word) divr16u::rem#5 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [203] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [204] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [202] (word) divr16u::rem#5 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [203] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [204] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [205] if((word) divr16u::rem#5<(const word) main::tabsize#0) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [206] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [207] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::tabsize#0 + [206] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [207] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::tabsize#0 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [208] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [208] (word) divr16u::rem#10 ? phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) - [209] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [208] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [208] (word) divr16u::rem#10 ← phi( divr16u::@2/(word) divr16u::rem#5 divr16u::@5/(word) divr16u::rem#2 ) + [209] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [210] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [211] (word) rem16u#1 ? (word) divr16u::rem#10 + [211] (word) rem16u#1 ← (word) divr16u::rem#10 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [212] return @@ -3081,9 +3081,9 @@ print_cls: scope:[print_cls] from main [213] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [214] (byte*) print_cls::sc#2 ? phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) - [215] *((byte*) print_cls::sc#2) ? (byte) ' ' - [216] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [214] (byte*) print_cls::sc#2 ← phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) + [215] *((byte*) print_cls::sc#2) ← (byte) ' ' + [216] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [217] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -3594,7 +3594,7 @@ sin8u_table: { //SEG21 [190] phi from sin8u_table to div16u [phi:sin8u_table->div16u] div16u_from_sin8u_table: jsr div16u - //SEG22 [11] (word) div16u::return#2 ? (word) div16u::return#0 -- vwuz1=vwuz2 + //SEG22 [11] (word) div16u::return#2 ← (word) div16u::return#0 -- vwuz1=vwuz2 lda div16u.return sta div16u.return_2 lda div16u.return+1 @@ -3602,7 +3602,7 @@ sin8u_table: { jmp b2 //SEG23 sin8u_table::@2 b2: - //SEG24 [12] (word) sin8u_table::step#0 ? (word) div16u::return#2 -- vwuz1=vwuz2 + //SEG24 [12] (word) sin8u_table::step#0 ← (word) div16u::return#2 -- vwuz1=vwuz2 lda div16u.return_2 sta step lda div16u.return_2+1 @@ -3624,7 +3624,7 @@ sin8u_table: { jmp b3 //SEG29 sin8u_table::@3 b3: - //SEG30 [14] (word) print_word::w#1 ? (word) sin8u_table::step#0 -- vwuz1=vwuz2 + //SEG30 [14] (word) print_word::w#1 ← (word) sin8u_table::step#0 -- vwuz1=vwuz2 lda step sta print_word.w lda step+1 @@ -3788,28 +3788,28 @@ sin8u_table: { jmp b1 //SEG96 sin8u_table::@1 b1: - //SEG97 [35] (word) sin8s::x#2 ? (word) sin8u_table::x#10 -- vwuz1=vwuz2 + //SEG97 [35] (word) sin8s::x#2 ← (word) sin8u_table::x#10 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG98 [36] call sin8s jsr sin8s - //SEG99 [37] (signed byte) sin8s::return#2 ? (signed byte) sin8s::return#0 -- vbsz1=vbsz2 + //SEG99 [37] (signed byte) sin8s::return#2 ← (signed byte) sin8s::return#0 -- vbsz1=vbsz2 lda sin8s.return sta sin8s.return_2 jmp b13 //SEG100 sin8u_table::@13 b13: - //SEG101 [38] (signed byte) sin8u_table::sinx#0 ? (signed byte) sin8s::return#2 -- vbsz1=vbsz2 + //SEG101 [38] (signed byte) sin8u_table::sinx#0 ← (signed byte) sin8s::return#2 -- vbsz1=vbsz2 lda sin8s.return_2 sta sinx - //SEG102 [39] (signed byte) mul8su::a#0 ? (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 + //SEG102 [39] (signed byte) mul8su::a#0 ← (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 lda sinx sta mul8su.a //SEG103 [40] call mul8su jsr mul8su - //SEG104 [41] (signed word) mul8su::return#2 ? (signed word)(word) mul8su::m#2 -- vwsz1=vwsz2 + //SEG104 [41] (signed word) mul8su::return#2 ← (signed word)(word) mul8su::m#2 -- vwsz1=vwsz2 lda mul8su.m sta mul8su.return lda mul8su.m+1 @@ -3817,28 +3817,28 @@ sin8u_table: { jmp b14 //SEG105 sin8u_table::@14 b14: - //SEG106 [42] (signed word) sin8u_table::sinx_sc#0 ? (signed word) mul8su::return#2 -- vwsz1=vwsz2 + //SEG106 [42] (signed word) sin8u_table::sinx_sc#0 ← (signed word) mul8su::return#2 -- vwsz1=vwsz2 lda mul8su.return sta sinx_sc lda mul8su.return+1 sta sinx_sc+1 - //SEG107 [43] (byte~) sin8u_table::$21 ? > (signed word) sin8u_table::sinx_sc#0 -- vbuz1=_hi_vwsz2 + //SEG107 [43] (byte~) sin8u_table::$21 ← > (signed word) sin8u_table::sinx_sc#0 -- vbuz1=_hi_vwsz2 lda sinx_sc+1 sta _21 - //SEG108 [44] (byte) sin8u_table::sinx_tr#0 ? (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 -- vbuz1=vbuc1_plus_vbuz2 + //SEG108 [44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 -- vbuz1=vbuc1_plus_vbuz2 lax _21 axs #-[mid] stx sinx_tr - //SEG109 [45] *((byte*) sin8u_table::sintab#2) ? (byte) sin8u_table::sinx_tr#0 -- _deref_pbuz1=vbuz2 + //SEG109 [45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 -- _deref_pbuz1=vbuz2 lda sinx_tr ldy #0 sta (sintab),y - //SEG110 [46] (byte*) sin8u_table::sintab#1 ? ++ (byte*) sin8u_table::sintab#2 -- pbuz1=_inc_pbuz1 + //SEG110 [46] (byte*) sin8u_table::sintab#1 ← ++ (byte*) sin8u_table::sintab#2 -- pbuz1=_inc_pbuz1 inc sintab bne !+ inc sintab+1 !: - //SEG111 [47] (byte*~) print_char_cursor#126 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG111 [47] (byte*~) print_char_cursor#126 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -3856,7 +3856,7 @@ sin8u_table: { jmp b15 //SEG116 sin8u_table::@15 b15: - //SEG117 [49] (word) print_word::w#2 ? (word) sin8u_table::x#10 -- vwuz1=vwuz2 + //SEG117 [49] (word) print_word::w#2 ← (word) sin8u_table::x#10 -- vwuz1=vwuz2 lda x sta print_word.w lda x+1 @@ -3885,7 +3885,7 @@ sin8u_table: { jmp b17 //SEG128 sin8u_table::@17 b17: - //SEG129 [53] (signed byte) print_sbyte::b#1 ? (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 + //SEG129 [53] (signed byte) print_sbyte::b#1 ← (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 lda sinx sta print_sbyte.b //SEG130 [54] call print_sbyte @@ -3908,7 +3908,7 @@ sin8u_table: { jmp b19 //SEG137 sin8u_table::@19 b19: - //SEG138 [57] (signed word) print_sword::w#1 ? (signed word) sin8u_table::sinx_sc#0 -- vwsz1=vwsz2 + //SEG138 [57] (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#0 -- vwsz1=vwsz2 lda sinx_sc sta print_sword.w lda sinx_sc+1 @@ -3933,7 +3933,7 @@ sin8u_table: { jmp b21 //SEG146 sin8u_table::@21 b21: - //SEG147 [61] (byte) print_byte::b#7 ? (byte) sin8u_table::sinx_tr#0 -- vbuz1=vbuz2 + //SEG147 [61] (byte) print_byte::b#7 ← (byte) sin8u_table::sinx_tr#0 -- vbuz1=vbuz2 lda sinx_tr sta print_byte.b //SEG148 [62] call print_byte @@ -3955,7 +3955,7 @@ sin8u_table: { jmp b23 //SEG157 sin8u_table::@23 b23: - //SEG158 [65] (word) sin8u_table::x#1 ? (word) sin8u_table::x#10 + (word) sin8u_table::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG158 [65] (word) sin8u_table::x#1 ← (word) sin8u_table::x#10 + (word) sin8u_table::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -3963,7 +3963,7 @@ sin8u_table: { lda x+1 adc step+1 sta x+1 - //SEG159 [66] (word) sin8u_table::i#1 ? ++ (word) sin8u_table::i#10 -- vwuz1=_inc_vwuz1 + //SEG159 [66] (word) sin8u_table::i#1 ← ++ (word) sin8u_table::i#10 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -4002,7 +4002,7 @@ print_ln: { jmp b1 //SEG166 print_ln::@1 b1: - //SEG167 [71] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG167 [71] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -4032,14 +4032,14 @@ print_byte: { .label _0 = $3b .label _2 = $3c .label b = $a - //SEG172 [75] (byte~) print_byte::$0 ? (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG172 [75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG173 [76] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG173 [76] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -4052,11 +4052,11 @@ print_byte: { jmp b1 //SEG178 print_byte::@1 b1: - //SEG179 [78] (byte~) print_byte::$2 ? (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG179 [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG180 [79] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG180 [79] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -4077,11 +4077,11 @@ print_byte: { // print_char(byte zeropage($b) ch) print_char: { .label ch = $b - //SEG188 [83] *((byte*) print_char_cursor#64) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuz2 + //SEG188 [83] *((byte*) print_char_cursor#64) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG189 [84] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#64 -- pbuz1=_inc_pbuz1 + //SEG189 [84] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#64 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -4117,17 +4117,17 @@ print_str: { rts //SEG200 print_str::@2 b2: - //SEG201 [90] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#10) -- _deref_pbuz1=_deref_pbuz2 + //SEG201 [90] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#10) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG202 [91] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG202 [91] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG203 [92] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#10 -- pbuz1=_inc_pbuz1 + //SEG203 [92] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -4158,7 +4158,7 @@ print_sword: { jmp b3 //SEG212 print_sword::@3 b3: - //SEG213 [96] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG213 [96] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -4176,7 +4176,7 @@ print_sword: { jmp b1 //SEG217 print_sword::@1 b1: - //SEG218 [98] (word~) print_word::w#5 ? (word)(signed word) print_sword::w#3 -- vwuz1=vwuz2 + //SEG218 [98] (word~) print_word::w#5 ← (word)(signed word) print_sword::w#3 -- vwuz1=vwuz2 lda w sta print_word.w lda w+1 @@ -4198,7 +4198,7 @@ print_sword: { // print_word(word zeropage($12) w) print_word: { .label w = $12 - //SEG226 [102] (byte) print_byte::b#1 ? > (word) print_word::w#3 -- vbuz1=_hi_vwuz2 + //SEG226 [102] (byte) print_byte::b#1 ← > (word) print_word::w#3 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG227 [103] call print_byte @@ -4210,7 +4210,7 @@ print_word: { jmp b1 //SEG231 print_word::@1 b1: - //SEG232 [104] (byte) print_byte::b#2 ? < (word) print_word::w#3 -- vbuz1=_lo_vwuz2 + //SEG232 [104] (byte) print_byte::b#2 ← < (word) print_word::w#3 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG233 [105] call print_byte @@ -4253,7 +4253,7 @@ print_sbyte: { jmp b2 //SEG249 print_sbyte::@2 b2: - //SEG250 [111] (byte~) print_byte::b#10 ? (byte)(signed byte) print_sbyte::b#4 -- vbuz1=vbuz2 + //SEG250 [111] (byte~) print_byte::b#10 ← (byte)(signed byte) print_sbyte::b#4 -- vbuz1=vbuz2 lda b sta print_byte.b //SEG251 [112] call print_byte @@ -4283,7 +4283,7 @@ print_sbyte: { jmp b4 //SEG263 print_sbyte::@4 b4: - //SEG264 [116] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG264 [116] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -4302,7 +4302,7 @@ mul8su: { .label m = $15 .label a = $34 .label return = $35 - //SEG266 [117] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8su::a#0 -- vbuz1=vbuz2 + //SEG266 [117] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8su::a#0 -- vbuz1=vbuz2 lda a sta mul8u.a //SEG267 [118] call mul8u @@ -4313,7 +4313,7 @@ mul8su: { lda #b sta mul8u.b jsr mul8u - //SEG271 [119] (word) mul8u::return#2 ? (word) mul8u::res#2 -- vwuz1=vwuz2 + //SEG271 [119] (word) mul8u::return#2 ← (word) mul8u::res#2 -- vwuz1=vwuz2 lda mul8u.res sta mul8u.return lda mul8u.res+1 @@ -4321,7 +4321,7 @@ mul8su: { jmp b3 //SEG272 mul8su::@3 b3: - //SEG273 [120] (word) mul8su::m#0 ? (word) mul8u::return#2 -- vwuz1=vwuz2 + //SEG273 [120] (word) mul8su::m#0 ← (word) mul8u::return#2 -- vwuz1=vwuz2 lda mul8u.return sta m lda mul8u.return+1 @@ -4333,14 +4333,14 @@ mul8su: { jmp b2 //SEG275 mul8su::@2 b2: - //SEG276 [122] (byte~) mul8su::$7 ? > (word) mul8su::m#0 -- vbuz1=_hi_vwuz2 + //SEG276 [122] (byte~) mul8su::$7 ← > (word) mul8su::m#0 -- vbuz1=_hi_vwuz2 lda m+1 sta _7 - //SEG277 [123] (byte~) mul8su::$10 ? (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 -- vbuz1=vbuz2_minus_vbuc1 + //SEG277 [123] (byte~) mul8su::$10 ← (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 -- vbuz1=vbuz2_minus_vbuc1 lax _7 axs #b stx _10 - //SEG278 [124] (word) mul8su::m#1 ? (word) mul8su::m#0 hi= (byte~) mul8su::$10 -- vwuz1=vwuz1_sethi_vbuz2 + //SEG278 [124] (word) mul8su::m#1 ← (word) mul8su::m#0 hi= (byte~) mul8su::$10 -- vwuz1=vwuz1_sethi_vbuz2 lda _10 sta m+1 //SEG279 [125] phi from mul8su::@2 mul8su::@3 to mul8su::@1 [phi:mul8su::@2/mul8su::@3->mul8su::@1] @@ -4367,7 +4367,7 @@ mul8u: { .label return = $3d .label b = $17 .label return_3 = $51 - //SEG285 [128] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuz2 + //SEG285 [128] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuz2 lda b sta mb lda #0 @@ -4395,7 +4395,7 @@ mul8u: { rts //SEG294 mul8u::@2 b2: - //SEG295 [132] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 + //SEG295 [132] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 lda #1 and a sta _1 @@ -4406,7 +4406,7 @@ mul8u: { jmp b4 //SEG297 mul8u::@4 b4: - //SEG298 [134] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG298 [134] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -4421,9 +4421,9 @@ mul8u: { jmp b3 //SEG301 mul8u::@3 b3: - //SEG302 [136] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG302 [136] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr a - //SEG303 [137] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG303 [137] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG304 [129] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -4470,7 +4470,7 @@ sin8s: { jmp b5 //SEG310 sin8s::@5 b5: - //SEG311 [139] (word) sin8s::x#0 ? (word) sin8s::x#2 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG311 [139] (word) sin8s::x#0 ← (word) sin8s::x#2 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc # (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG326 [145] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG327 [146] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG327 [146] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v1 - //SEG328 [147] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG328 [147] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG329 [148] call mulu8_sel @@ -4550,19 +4550,19 @@ sin8s: { //SEG332 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG333 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG334 [149] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG334 [149] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return jmp b9 //SEG335 sin8s::@9 b9: - //SEG336 [150] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 -- vbuz1=vbuz2 + //SEG336 [150] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 -- vbuz1=vbuz2 lda mulu8_sel.return sta x2 - //SEG337 [151] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuz1=vbuz2 + //SEG337 [151] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuz1=vbuz2 lda x2 sta mulu8_sel.v1 - //SEG338 [152] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG338 [152] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG339 [153] call mulu8_sel @@ -4574,16 +4574,16 @@ sin8s: { //SEG342 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG343 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG344 [154] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG344 [154] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_1 jmp b10 //SEG345 sin8s::@10 b10: - //SEG346 [155] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuz2 + //SEG346 [155] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuz2 lda mulu8_sel.return_1 sta x3 - //SEG347 [156] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuz1=vbuz2 + //SEG347 [156] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuz1=vbuz2 lda x3 sta mulu8_sel.v1 //SEG348 [157] call mulu8_sel @@ -4597,24 +4597,24 @@ sin8s: { sta mulu8_sel.v2 //SEG352 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG353 [158] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG353 [158] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_2 jmp b11 //SEG354 sin8s::@11 b11: - //SEG355 [159] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 -- vbuz1=vbuz2 + //SEG355 [159] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 -- vbuz1=vbuz2 lda mulu8_sel.return_2 sta x3_6 - //SEG356 [160] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG356 [160] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuz3 lda x1 sec sbc x3_6 sta usinx - //SEG357 [161] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuz1=vbuz2 + //SEG357 [161] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuz1=vbuz2 lda x3 sta mulu8_sel.v1 - //SEG358 [162] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG358 [162] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG359 [163] call mulu8_sel @@ -4626,19 +4626,19 @@ sin8s: { //SEG362 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG363 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG364 [164] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG364 [164] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_10 jmp b12 //SEG365 sin8s::@12 b12: - //SEG366 [165] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 -- vbuz1=vbuz2 + //SEG366 [165] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 -- vbuz1=vbuz2 lda mulu8_sel.return_10 sta x4 - //SEG367 [166] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuz1=vbuz2 + //SEG367 [166] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuz1=vbuz2 lda x4 sta mulu8_sel.v1 - //SEG368 [167] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuz1=vbuz2 + //SEG368 [167] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuz1=vbuz2 lda x1 sta mulu8_sel.v2 //SEG369 [168] call mulu8_sel @@ -4650,23 +4650,23 @@ sin8s: { //SEG372 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG373 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG374 [169] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 + //SEG374 [169] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 -- vbuz1=vbuz2 lda mulu8_sel.return_12 sta mulu8_sel.return_11 jmp b13 //SEG375 sin8s::@13 b13: - //SEG376 [170] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 -- vbuz1=vbuz2 + //SEG376 [170] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 -- vbuz1=vbuz2 lda mulu8_sel.return_11 sta x5 - //SEG377 [171] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG377 [171] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda x5 lsr lsr lsr lsr sta x5_128 - //SEG378 [172] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuz1=vbuz2_plus_vbuz3 + //SEG378 [172] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuz1=vbuz2_plus_vbuz3 lda usinx clc adc x5_128 @@ -4678,7 +4678,7 @@ sin8s: { jmp b7 //SEG380 sin8s::@7 b7: - //SEG381 [174] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuz1=_dec_vbuz1 + //SEG381 [174] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuz1=_dec_vbuz1 dec usinx_2 //SEG382 [175] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] b3_from_b13: @@ -4694,7 +4694,7 @@ sin8s: { jmp b8 //SEG386 sin8s::@8 b8: - //SEG387 [177] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsz1=_neg_vbsz2 + //SEG387 [177] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsz1=_neg_vbsz2 lda usinx_4 eor #$ff clc @@ -4714,7 +4714,7 @@ sin8s: { rts //SEG393 sin8s::@14 b14: - //SEG394 [180] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsz1=vbsz2 + //SEG394 [180] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsz1=vbsz2 lda usinx_4 sta return jmp b4_from_b14 @@ -4735,10 +4735,10 @@ mulu8_sel: { .label return_11 = $4e .label select = $24 .label return_12 = $57 - //SEG396 [182] (byte) mul8u::a#2 ? (byte) mulu8_sel::v1#5 -- vbuz1=vbuz2 + //SEG396 [182] (byte) mul8u::a#2 ← (byte) mulu8_sel::v1#5 -- vbuz1=vbuz2 lda v1 sta mul8u.a - //SEG397 [183] (byte) mul8u::b#1 ? (byte) mulu8_sel::v2#5 -- vbuz1=vbuz2 + //SEG397 [183] (byte) mul8u::b#1 ← (byte) mulu8_sel::v2#5 -- vbuz1=vbuz2 lda v2 sta mul8u.b //SEG398 [184] call mul8u @@ -4747,7 +4747,7 @@ mulu8_sel: { //SEG400 [127] phi (byte) mul8u::a#6 = (byte) mul8u::a#2 [phi:mulu8_sel->mul8u#0] -- register_copy //SEG401 [127] phi (byte) mul8u::b#2 = (byte) mul8u::b#1 [phi:mulu8_sel->mul8u#1] -- register_copy jsr mul8u - //SEG402 [185] (word) mul8u::return#3 ? (word) mul8u::res#2 -- vwuz1=vwuz2 + //SEG402 [185] (word) mul8u::return#3 ← (word) mul8u::res#2 -- vwuz1=vwuz2 lda mul8u.res sta mul8u.return_3 lda mul8u.res+1 @@ -4755,12 +4755,12 @@ mulu8_sel: { jmp b1 //SEG403 mulu8_sel::@1 b1: - //SEG404 [186] (word~) mulu8_sel::$0 ? (word) mul8u::return#3 -- vwuz1=vwuz2 + //SEG404 [186] (word~) mulu8_sel::$0 ← (word) mul8u::return#3 -- vwuz1=vwuz2 lda mul8u.return_3 sta _0 lda mul8u.return_3+1 sta _0+1 - //SEG405 [187] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz2_rol_vbuz3 + //SEG405 [187] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz2_rol_vbuz3 lda _0 sta _1 lda _0+1 @@ -4773,7 +4773,7 @@ mulu8_sel: { dey bne !- !e: - //SEG406 [188] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuz1=_hi_vwuz2 + //SEG406 [188] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuz1=_hi_vwuz2 lda _1+1 sta return_12 jmp breturn @@ -4794,7 +4794,7 @@ div16u: { //SEG411 [195] phi from div16u to divr16u [phi:div16u->divr16u] divr16u_from_div16u: jsr divr16u - //SEG412 [192] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG412 [192] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -4802,7 +4802,7 @@ div16u: { jmp b1 //SEG413 div16u::@1 b1: - //SEG414 [193] (word) div16u::return#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG414 [193] (word) div16u::return#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta return lda divr16u.return_2+1 @@ -4858,13 +4858,13 @@ divr16u: { jmp b1 //SEG428 divr16u::@1 b1: - //SEG429 [197] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG429 [197] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG430 [198] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuz1=_hi_vwuz2 + //SEG430 [198] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG431 [199] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG431 [199] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -4875,7 +4875,7 @@ divr16u: { jmp b4 //SEG433 divr16u::@4 b4: - //SEG434 [201] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG434 [201] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -4886,10 +4886,10 @@ divr16u: { jmp b2 //SEG437 divr16u::@2 b2: - //SEG438 [203] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG438 [203] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG439 [204] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG439 [204] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG440 [205] if((word) divr16u::rem#5<(const word) main::tabsize#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -4904,12 +4904,12 @@ divr16u: { jmp b5 //SEG441 divr16u::@5 b5: - //SEG442 [206] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG442 [206] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG443 [207] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::tabsize#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG443 [207] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::tabsize#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ) always clobbers reg byte a +Statement [75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:10 [ print_byte::b#8 print_byte::b#10 print_byte::b#1 print_byte::b#2 print_byte::b#7 ] -Statement [78] (byte~) print_byte::$2 ? (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a -Statement [83] *((byte*) print_char_cursor#64) ? (byte) print_char::ch#5 [ print_char_cursor#64 ] ( main:2::sin8u_table:7::print_byte:19::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:77 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:19::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:80 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_char:95 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:109 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:115 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] ) always clobbers reg byte y +Statement [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a +Statement [83] *((byte*) print_char_cursor#64) ← (byte) print_char::ch#5 [ print_char_cursor#64 ] ( main:2::sin8u_table:7::print_byte:19::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:77 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:19::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:80 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_char:95 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:109 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:115 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:10 [ print_byte::b#8 print_byte::b#10 print_byte::b#1 print_byte::b#2 print_byte::b#7 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:20 [ print_sbyte::b#4 print_sbyte::b#0 print_sbyte::b#1 ] Statement [88] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#10 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y -Statement [90] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#10) [ print_char_cursor#2 print_str::str#10 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y +Statement [90] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#10) [ print_char_cursor#2 print_str::str#10 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y Statement [93] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_sword::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ) always clobbers reg byte a -Statement [96] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a -Statement [98] (word~) print_word::w#5 ? (word)(signed word) print_sword::w#3 [ print_char_cursor#94 print_word::w#5 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#94 print_word::w#5 ] ) always clobbers reg byte a -Statement [102] (byte) print_byte::b#1 ? > (word) print_word::w#3 [ print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ) always clobbers reg byte a -Statement [104] (byte) print_byte::b#2 ? < (word) print_word::w#3 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a -Statement [116] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::sin8u_table:7::print_sbyte:54 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [119] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mul8su::a#0 mul8u::return#2 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::return#2 ] ) always clobbers reg byte a +Statement [96] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a +Statement [98] (word~) print_word::w#5 ← (word)(signed word) print_sword::w#3 [ print_char_cursor#94 print_word::w#5 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#94 print_word::w#5 ] ) always clobbers reg byte a +Statement [102] (byte) print_byte::b#1 ← > (word) print_word::w#3 [ print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ) always clobbers reg byte a +Statement [104] (byte) print_byte::b#2 ← < (word) print_word::w#3 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a +Statement [116] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::sin8u_table:7::print_sbyte:54 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [119] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mul8su::a#0 mul8u::return#2 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::return#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ mul8su::a#0 ] -Statement [120] (word) mul8su::m#0 ? (word) mul8u::return#2 [ mul8su::a#0 mul8su::m#0 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8su::m#0 ] ) always clobbers reg byte a -Statement [122] (byte~) mul8su::$7 ? > (word) mul8su::m#0 [ mul8su::m#0 mul8su::$7 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::m#0 mul8su::$7 ] ) always clobbers reg byte a -Statement [128] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [120] (word) mul8su::m#0 ← (word) mul8u::return#2 [ mul8su::a#0 mul8su::m#0 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8su::m#0 ] ) always clobbers reg byte a +Statement [122] (byte~) mul8su::$7 ← > (word) mul8su::m#0 [ mul8su::m#0 mul8su::$7 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::m#0 mul8su::$7 ] ) always clobbers reg byte a +Statement [128] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:24 [ mul8u::a#3 mul8u::a#6 mul8u::a#8 mul8u::a#2 mul8u::a#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:29 [ sin8s::isUpper#10 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:68 [ sin8s::x1#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ mulu8_sel::select#5 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:72 [ sin8s::x3#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:75 [ sin8s::usinx#0 ] -Statement [132] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [134] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [132] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [134] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a Statement [138] if((word) sin8s::x#2<(const word) PI_u4f12#0) goto sin8s::@1 [ sin8s::x#2 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#2 ] ) always clobbers reg byte a -Statement [139] (word) sin8s::x#0 ? (word) sin8s::x#2 - (const word) PI_u4f12#0 [ sin8s::x#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#0 ] ) always clobbers reg byte a +Statement [139] (word) sin8s::x#0 ← (word) sin8s::x#2 - (const word) PI_u4f12#0 [ sin8s::x#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#0 ] ) always clobbers reg byte a Statement [141] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 [ sin8s::x#4 sin8s::isUpper#10 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#4 sin8s::isUpper#10 ] ) always clobbers reg byte a -Statement [142] (word) sin8s::x#1 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x#1 ] ) always clobbers reg byte a -Statement [144] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a -Statement [145] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a -Statement [160] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a -Statement [171] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a -Statement [172] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a -Statement [177] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::sinx#1 ] ) always clobbers reg byte a -Statement [185] (word) mul8u::return#3 ? (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#3 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] ) always clobbers reg byte a -Statement [186] (word~) mulu8_sel::$0 ? (word) mul8u::return#3 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a -Statement [187] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a -Statement [188] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a -Statement [192] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8u_table:7::div16u:10 [ divr16u::return#2 ] ) always clobbers reg byte a -Statement [193] (word) div16u::return#0 ? (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8u_table:7::div16u:10 [ div16u::return#0 ] ) always clobbers reg byte a -Statement [198] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [142] (word) sin8s::x#1 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x#1 ] ) always clobbers reg byte a +Statement [144] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a +Statement [145] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a +Statement [160] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a +Statement [171] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a +Statement [172] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a +Statement [177] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::sinx#1 ] ) always clobbers reg byte a +Statement [185] (word) mul8u::return#3 ← (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#3 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] ) always clobbers reg byte a +Statement [186] (word~) mulu8_sel::$0 ← (word) mul8u::return#3 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a +Statement [187] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a +Statement [188] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a +Statement [192] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8u_table:7::div16u:10 [ divr16u::return#2 ] ) always clobbers reg byte a +Statement [193] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8u_table:7::div16u:10 [ div16u::return#0 ] ) always clobbers reg byte a +Statement [198] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:43 [ divr16u::i#2 divr16u::i#1 ] -Statement [201] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [201] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [205] if((word) divr16u::rem#5<(const word) main::tabsize#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [207] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::tabsize#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [211] (word) rem16u#1 ? (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::return#0 ] ) always clobbers reg byte a -Statement [215] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [207] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::tabsize#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [211] (word) rem16u#1 ← (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::return#0 ] ) always clobbers reg byte a +Statement [215] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [217] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [11] (word) div16u::return#2 ? (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8u_table:7 [ div16u::return#2 ] ) always clobbers reg byte a -Statement [12] (word) sin8u_table::step#0 ? (word) div16u::return#2 [ sin8u_table::step#0 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 ] ) always clobbers reg byte a -Statement [14] (word) print_word::w#1 ? (word) sin8u_table::step#0 [ sin8u_table::step#0 print_word::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 print_word::w#1 print_char_cursor#2 ] ) always clobbers reg byte a -Statement [35] (word) sin8s::x#2 ? (word) sin8u_table::x#10 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8s::x#2 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8s::x#2 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [41] (signed word) mul8su::return#2 ? (signed word)(word) mul8su::m#2 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 mul8su::return#2 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 mul8su::return#2 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [42] (signed word) sin8u_table::sinx_sc#0 ? (signed word) mul8su::return#2 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [45] *((byte*) sin8u_table::sintab#2) ? (byte) sin8u_table::sinx_tr#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ) always clobbers reg byte a reg byte y -Statement [47] (byte*~) print_char_cursor#126 ? (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#126 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#126 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [49] (word) print_word::w#2 ? (word) sin8u_table::x#10 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ) always clobbers reg byte a -Statement [57] (signed word) print_sword::w#1 ? (signed word) sin8u_table::sinx_sc#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ) always clobbers reg byte a -Statement [65] (word) sin8u_table::x#1 ? (word) sin8u_table::x#10 + (word) sin8u_table::step#0 [ sin8u_table::step#0 sin8u_table::i#10 sin8u_table::x#1 sin8u_table::sintab#1 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::i#10 sin8u_table::x#1 sin8u_table::sintab#1 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [11] (word) div16u::return#2 ← (word) div16u::return#0 [ div16u::return#2 ] ( main:2::sin8u_table:7 [ div16u::return#2 ] ) always clobbers reg byte a +Statement [12] (word) sin8u_table::step#0 ← (word) div16u::return#2 [ sin8u_table::step#0 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 ] ) always clobbers reg byte a +Statement [14] (word) print_word::w#1 ← (word) sin8u_table::step#0 [ sin8u_table::step#0 print_word::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 print_word::w#1 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [35] (word) sin8s::x#2 ← (word) sin8u_table::x#10 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8s::x#2 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8s::x#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [41] (signed word) mul8su::return#2 ← (signed word)(word) mul8su::m#2 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 mul8su::return#2 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 mul8su::return#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [42] (signed word) sin8u_table::sinx_sc#0 ← (signed word) mul8su::return#2 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 ] ) always clobbers reg byte a reg byte y +Statement [47] (byte*~) print_char_cursor#126 ← (byte*) print_line_cursor#1 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#126 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_char_cursor#126 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [49] (word) print_word::w#2 ← (word) sin8u_table::x#10 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#2 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [57] (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#0 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ) always clobbers reg byte a +Statement [65] (word) sin8u_table::x#1 ← (word) sin8u_table::x#10 + (word) sin8u_table::step#0 [ sin8u_table::step#0 sin8u_table::i#10 sin8u_table::x#1 sin8u_table::sintab#1 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::i#10 sin8u_table::x#1 sin8u_table::sintab#1 print_line_cursor#1 ] ) always clobbers reg byte a Statement [67] if((word) sin8u_table::i#1<(const word) main::tabsize#0) goto sin8u_table::@1 [ sin8u_table::step#0 sin8u_table::x#1 sin8u_table::sintab#1 sin8u_table::i#1 print_line_cursor#1 ] ( main:2::sin8u_table:7 [ sin8u_table::step#0 sin8u_table::x#1 sin8u_table::sintab#1 sin8u_table::i#1 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [71] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::sin8u_table:7::print_ln:33 [ sin8u_table::step#0 print_line_cursor#1 print_char_cursor#18 ] main:2::sin8u_table:7::print_ln:64 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a +Statement [71] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::sin8u_table:7::print_ln:33 [ sin8u_table::step#0 print_line_cursor#1 print_char_cursor#18 ] main:2::sin8u_table:7::print_ln:64 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a Statement [72] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#18) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::sin8u_table:7::print_ln:33 [ sin8u_table::step#0 print_line_cursor#1 print_char_cursor#18 ] main:2::sin8u_table:7::print_ln:64 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a -Statement [75] (byte~) print_byte::$0 ? (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ) always clobbers reg byte a -Statement [78] (byte~) print_byte::$2 ? (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a -Statement [83] *((byte*) print_char_cursor#64) ? (byte) print_char::ch#5 [ print_char_cursor#64 ] ( main:2::sin8u_table:7::print_byte:19::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:77 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:19::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:80 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_char:95 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:109 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:115 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] ) always clobbers reg byte y +Statement [75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#100 print_byte::$0 ] ) always clobbers reg byte a +Statement [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::sin8u_table:7::print_byte:19 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:23 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:27 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:31 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_byte:62 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:103 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:15::print_byte:105 [ sin8u_table::step#0 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_word:50::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a +Statement [83] *((byte*) print_char_cursor#64) ← (byte) print_char::ch#5 [ print_char_cursor#64 ] ( main:2::sin8u_table:7::print_byte:19::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:77 [ sin8u_table::step#0 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:77 [ sin8u_table::step#0 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:77 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#8 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:19::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:23::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:27::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:31::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_byte:62::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:103::print_char:80 [ sin8u_table::step#0 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:103::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_word::w#3 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:15::print_byte:105::print_char:80 [ sin8u_table::step#0 print_char_cursor#64 ] main:2::sin8u_table:7::print_word:50::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_word:99::print_byte:105::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_byte:112::print_char:80 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sword:58::print_char:95 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:109 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] main:2::sin8u_table:7::print_sbyte:54::print_char:115 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sbyte::b#1 print_char_cursor#64 ] ) always clobbers reg byte y Statement [88] if(*((byte*) print_str::str#10)!=(byte) '@') goto print_str::@2 [ print_char_cursor#2 print_str::str#10 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y -Statement [90] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#10) [ print_char_cursor#2 print_str::str#10 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y +Statement [90] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#10) [ print_char_cursor#2 print_str::str#10 ] ( main:2::sin8u_table:7::print_str:13 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:17 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:21 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:25 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:29 [ sin8u_table::step#0 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:48 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:52 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:56 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] main:2::sin8u_table:7::print_str:60 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#2 print_str::str#10 ] ) always clobbers reg byte a reg byte y Statement [93] if((signed word) print_sword::w#1>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_sword::w#1 print_char_cursor#2 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_sword::w#1 print_char_cursor#2 ] ) always clobbers reg byte a -Statement [96] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a -Statement [98] (word~) print_word::w#5 ? (word)(signed word) print_sword::w#3 [ print_char_cursor#94 print_word::w#5 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#94 print_word::w#5 ] ) always clobbers reg byte a -Statement [102] (byte) print_byte::b#1 ? > (word) print_word::w#3 [ print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ) always clobbers reg byte a -Statement [104] (byte) print_byte::b#2 ? < (word) print_word::w#3 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a -Statement [116] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::sin8u_table:7::print_sbyte:54 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [119] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mul8su::a#0 mul8u::return#2 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::return#2 ] ) always clobbers reg byte a -Statement [120] (word) mul8su::m#0 ? (word) mul8u::return#2 [ mul8su::a#0 mul8su::m#0 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8su::m#0 ] ) always clobbers reg byte a -Statement [122] (byte~) mul8su::$7 ? > (word) mul8su::m#0 [ mul8su::m#0 mul8su::$7 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::m#0 mul8su::$7 ] ) always clobbers reg byte a -Statement [128] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a -Statement [132] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [134] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [96] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a +Statement [98] (word~) print_word::w#5 ← (word)(signed word) print_sword::w#3 [ print_char_cursor#94 print_word::w#5 ] ( main:2::sin8u_table:7::print_sword:58 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#94 print_word::w#5 ] ) always clobbers reg byte a +Statement [102] (byte) print_byte::b#1 ← > (word) print_word::w#3 [ print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_byte::b#1 print_char_cursor#99 print_word::w#3 ] ) always clobbers reg byte a +Statement [104] (byte) print_byte::b#2 ← < (word) print_word::w#3 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::sin8u_table:7::print_word:15 [ sin8u_table::step#0 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_word:50 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx#0 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::sin8u_table:7::print_sword:58::print_word:99 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a +Statement [116] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::sin8u_table:7::print_sbyte:54 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::i#10 sin8u_table::sintab#1 sin8u_table::sinx_sc#0 sin8u_table::sinx_tr#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [119] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mul8su::a#0 mul8u::return#2 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::return#2 ] ) always clobbers reg byte a +Statement [120] (word) mul8su::m#0 ← (word) mul8u::return#2 [ mul8su::a#0 mul8su::m#0 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8su::m#0 ] ) always clobbers reg byte a +Statement [122] (byte~) mul8su::$7 ← > (word) mul8su::m#0 [ mul8su::m#0 mul8su::$7 ] ( main:2::sin8u_table:7::mul8su:40 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::m#0 mul8su::$7 ] ) always clobbers reg byte a +Statement [128] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [132] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [134] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::sin8u_table:7::mul8su:40::mul8u:118 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 sin8u_table::sinx#0 print_line_cursor#1 mul8su::a#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:148::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168::mul8u:184 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a Statement [138] if((word) sin8s::x#2<(const word) PI_u4f12#0) goto sin8s::@1 [ sin8s::x#2 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#2 ] ) always clobbers reg byte a -Statement [139] (word) sin8s::x#0 ? (word) sin8s::x#2 - (const word) PI_u4f12#0 [ sin8s::x#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#0 ] ) always clobbers reg byte a +Statement [139] (word) sin8s::x#0 ← (word) sin8s::x#2 - (const word) PI_u4f12#0 [ sin8s::x#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#0 ] ) always clobbers reg byte a Statement [141] if((word) sin8s::x#4<(const word) PI_HALF_u4f12#0) goto sin8s::@2 [ sin8s::x#4 sin8s::isUpper#10 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::x#4 sin8s::isUpper#10 ] ) always clobbers reg byte a -Statement [142] (word) sin8s::x#1 ? (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x#1 ] ) always clobbers reg byte a -Statement [144] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a -Statement [145] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a -Statement [160] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a -Statement [171] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a -Statement [172] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a -Statement [177] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::sinx#1 ] ) always clobbers reg byte a -Statement [185] (word) mul8u::return#3 ? (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#3 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] ) always clobbers reg byte a -Statement [186] (word~) mulu8_sel::$0 ? (word) mul8u::return#3 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a -Statement [187] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a -Statement [188] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a -Statement [192] (word) divr16u::return#2 ? (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8u_table:7::div16u:10 [ divr16u::return#2 ] ) always clobbers reg byte a -Statement [193] (word) div16u::return#0 ? (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8u_table:7::div16u:10 [ div16u::return#0 ] ) always clobbers reg byte a -Statement [198] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [201] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [142] (word) sin8s::x#1 ← (const word) PI_u4f12#0 - (word) sin8s::x#4 [ sin8s::isUpper#10 sin8s::x#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x#1 ] ) always clobbers reg byte a +Statement [144] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 [ sin8s::isUpper#10 sin8s::$4 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::$4 ] ) always clobbers reg byte a +Statement [145] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 [ sin8s::isUpper#10 sin8s::x1#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 ] ) always clobbers reg byte a +Statement [160] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 [ sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 sin8s::usinx#0 ] ) always clobbers reg byte a +Statement [171] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 sin8s::x5_128#0 ] ) always clobbers reg byte a +Statement [172] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 [ sin8s::isUpper#10 sin8s::usinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#1 ] ) always clobbers reg byte a +Statement [177] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 [ sin8s::sinx#1 ] ( main:2::sin8u_table:7::sin8s:36 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::sinx#1 ] ) always clobbers reg byte a +Statement [185] (word) mul8u::return#3 ← (word) mul8u::res#2 [ mulu8_sel::select#5 mul8u::return#3 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mul8u::return#3 ] ) always clobbers reg byte a +Statement [186] (word~) mulu8_sel::$0 ← (word) mul8u::return#3 [ mulu8_sel::select#5 mulu8_sel::$0 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::select#5 mulu8_sel::$0 ] ) always clobbers reg byte a +Statement [187] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 [ mulu8_sel::$1 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::$1 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::$1 ] ) always clobbers reg byte a +Statement [188] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 [ mulu8_sel::return#12 ] ( main:2::sin8u_table:7::sin8s:36::mulu8_sel:148 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:153 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:157 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::x3#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:163 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::x1#0 sin8s::usinx#0 mulu8_sel::return#12 ] main:2::sin8u_table:7::sin8s:36::mulu8_sel:168 [ sin8u_table::step#0 sin8u_table::x#10 sin8u_table::sintab#2 sin8u_table::i#10 print_line_cursor#1 sin8s::isUpper#10 sin8s::usinx#0 mulu8_sel::return#12 ] ) always clobbers reg byte a +Statement [192] (word) divr16u::return#2 ← (word) divr16u::return#0 [ divr16u::return#2 ] ( main:2::sin8u_table:7::div16u:10 [ divr16u::return#2 ] ) always clobbers reg byte a +Statement [193] (word) div16u::return#0 ← (word) divr16u::return#2 [ div16u::return#0 ] ( main:2::sin8u_table:7::div16u:10 [ div16u::return#0 ] ) always clobbers reg byte a +Statement [198] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [201] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::dividend#2 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [205] if((word) divr16u::rem#5<(const word) main::tabsize#0) goto divr16u::@3 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::i#2 divr16u::dividend#0 divr16u::rem#5 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [207] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::tabsize#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [211] (word) rem16u#1 ? (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::return#0 ] ) always clobbers reg byte a -Statement [215] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [207] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::tabsize#0 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [211] (word) rem16u#1 ← (word) divr16u::rem#10 [ divr16u::return#0 ] ( main:2::sin8u_table:7::div16u:10::divr16u:191 [ divr16u::return#0 ] ) always clobbers reg byte a +Statement [215] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [217] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a Potential registers zp ZP_WORD:2 [ sin8u_table::x#10 sin8u_table::x#1 ] : zp ZP_WORD:2 , Potential registers zp ZP_WORD:4 [ sin8u_table::sintab#2 sin8u_table::sintab#1 ] : zp ZP_WORD:4 , @@ -5361,11 +5361,11 @@ sin8u_table: { //SEG21 [190] phi from sin8u_table to div16u [phi:sin8u_table->div16u] div16u_from_sin8u_table: jsr div16u - //SEG22 [11] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG22 [11] (word) div16u::return#2 ← (word) div16u::return#0 jmp b2 //SEG23 sin8u_table::@2 b2: - //SEG24 [12] (word) sin8u_table::step#0 ? (word) div16u::return#2 + //SEG24 [12] (word) sin8u_table::step#0 ← (word) div16u::return#2 //SEG25 [13] call print_str //SEG26 [86] phi from sin8u_table::@2 to print_str [phi:sin8u_table::@2->print_str] print_str_from_b2: @@ -5383,7 +5383,7 @@ sin8u_table: { jmp b3 //SEG29 sin8u_table::@3 b3: - //SEG30 [14] (word) print_word::w#1 ? (word) sin8u_table::step#0 -- vwuz1=vwuz2 + //SEG30 [14] (word) print_word::w#1 ← (word) sin8u_table::step#0 -- vwuz1=vwuz2 lda step sta print_word.w lda step+1 @@ -5547,43 +5547,43 @@ sin8u_table: { jmp b1 //SEG96 sin8u_table::@1 b1: - //SEG97 [35] (word) sin8s::x#2 ? (word) sin8u_table::x#10 -- vwuz1=vwuz2 + //SEG97 [35] (word) sin8s::x#2 ← (word) sin8u_table::x#10 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG98 [36] call sin8s jsr sin8s - //SEG99 [37] (signed byte) sin8s::return#2 ? (signed byte) sin8s::return#0 + //SEG99 [37] (signed byte) sin8s::return#2 ← (signed byte) sin8s::return#0 jmp b13 //SEG100 sin8u_table::@13 b13: - //SEG101 [38] (signed byte) sin8u_table::sinx#0 ? (signed byte) sin8s::return#2 -- vbsz1=vbsaa + //SEG101 [38] (signed byte) sin8u_table::sinx#0 ← (signed byte) sin8s::return#2 -- vbsz1=vbsaa sta sinx - //SEG102 [39] (signed byte) mul8su::a#0 ? (signed byte) sin8u_table::sinx#0 -- vbsyy=vbsz1 + //SEG102 [39] (signed byte) mul8su::a#0 ← (signed byte) sin8u_table::sinx#0 -- vbsyy=vbsz1 ldy sinx //SEG103 [40] call mul8su jsr mul8su - //SEG104 [41] (signed word) mul8su::return#2 ? (signed word)(word) mul8su::m#2 + //SEG104 [41] (signed word) mul8su::return#2 ← (signed word)(word) mul8su::m#2 jmp b14 //SEG105 sin8u_table::@14 b14: - //SEG106 [42] (signed word) sin8u_table::sinx_sc#0 ? (signed word) mul8su::return#2 - //SEG107 [43] (byte~) sin8u_table::$21 ? > (signed word) sin8u_table::sinx_sc#0 -- vbuaa=_hi_vwsz1 + //SEG106 [42] (signed word) sin8u_table::sinx_sc#0 ← (signed word) mul8su::return#2 + //SEG107 [43] (byte~) sin8u_table::$21 ← > (signed word) sin8u_table::sinx_sc#0 -- vbuaa=_hi_vwsz1 lda sinx_sc+1 - //SEG108 [44] (byte) sin8u_table::sinx_tr#0 ? (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 -- vbuxx=vbuc1_plus_vbuaa + //SEG108 [44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 -- vbuxx=vbuc1_plus_vbuaa tax axs #-[mid] - //SEG109 [45] *((byte*) sin8u_table::sintab#2) ? (byte) sin8u_table::sinx_tr#0 -- _deref_pbuz1=vbuxx + //SEG109 [45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 -- _deref_pbuz1=vbuxx txa ldy #0 sta (sintab),y - //SEG110 [46] (byte*) sin8u_table::sintab#1 ? ++ (byte*) sin8u_table::sintab#2 -- pbuz1=_inc_pbuz1 + //SEG110 [46] (byte*) sin8u_table::sintab#1 ← ++ (byte*) sin8u_table::sintab#2 -- pbuz1=_inc_pbuz1 inc sintab bne !+ inc sintab+1 !: - //SEG111 [47] (byte*~) print_char_cursor#126 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG111 [47] (byte*~) print_char_cursor#126 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -5601,7 +5601,7 @@ sin8u_table: { jmp b15 //SEG116 sin8u_table::@15 b15: - //SEG117 [49] (word) print_word::w#2 ? (word) sin8u_table::x#10 -- vwuz1=vwuz2 + //SEG117 [49] (word) print_word::w#2 ← (word) sin8u_table::x#10 -- vwuz1=vwuz2 lda x sta print_word.w lda x+1 @@ -5630,7 +5630,7 @@ sin8u_table: { jmp b17 //SEG128 sin8u_table::@17 b17: - //SEG129 [53] (signed byte) print_sbyte::b#1 ? (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 + //SEG129 [53] (signed byte) print_sbyte::b#1 ← (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 lda sinx sta print_sbyte.b //SEG130 [54] call print_sbyte @@ -5653,7 +5653,7 @@ sin8u_table: { jmp b19 //SEG137 sin8u_table::@19 b19: - //SEG138 [57] (signed word) print_sword::w#1 ? (signed word) sin8u_table::sinx_sc#0 -- vwsz1=vwsz2 + //SEG138 [57] (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#0 -- vwsz1=vwsz2 lda sinx_sc sta print_sword.w lda sinx_sc+1 @@ -5678,7 +5678,7 @@ sin8u_table: { jmp b21 //SEG146 sin8u_table::@21 b21: - //SEG147 [61] (byte) print_byte::b#7 ? (byte) sin8u_table::sinx_tr#0 -- vbuz1=vbuxx + //SEG147 [61] (byte) print_byte::b#7 ← (byte) sin8u_table::sinx_tr#0 -- vbuz1=vbuxx stx print_byte.b //SEG148 [62] call print_byte //SEG149 [74] phi from sin8u_table::@21 to print_byte [phi:sin8u_table::@21->print_byte] @@ -5699,7 +5699,7 @@ sin8u_table: { jmp b23 //SEG157 sin8u_table::@23 b23: - //SEG158 [65] (word) sin8u_table::x#1 ? (word) sin8u_table::x#10 + (word) sin8u_table::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG158 [65] (word) sin8u_table::x#1 ← (word) sin8u_table::x#10 + (word) sin8u_table::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -5707,7 +5707,7 @@ sin8u_table: { lda x+1 adc step+1 sta x+1 - //SEG159 [66] (word) sin8u_table::i#1 ? ++ (word) sin8u_table::i#10 -- vwuz1=_inc_vwuz1 + //SEG159 [66] (word) sin8u_table::i#1 ← ++ (word) sin8u_table::i#10 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -5746,7 +5746,7 @@ print_ln: { jmp b1 //SEG166 print_ln::@1 b1: - //SEG167 [71] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG167 [71] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -5774,13 +5774,13 @@ print_ln: { // print_byte(byte zeropage($a) b) print_byte: { .label b = $a - //SEG172 [75] (byte~) print_byte::$0 ? (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG172 [75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG173 [76] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG173 [76] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG174 [77] call print_char @@ -5792,10 +5792,10 @@ print_byte: { jmp b1 //SEG178 print_byte::@1 b1: - //SEG179 [78] (byte~) print_byte::$2 ? (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG179 [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG180 [79] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG180 [79] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG181 [80] call print_char @@ -5814,10 +5814,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG188 [83] *((byte*) print_char_cursor#64) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa + //SEG188 [83] *((byte*) print_char_cursor#64) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG189 [84] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#64 -- pbuz1=_inc_pbuz1 + //SEG189 [84] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#64 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -5853,17 +5853,17 @@ print_str: { rts //SEG200 print_str::@2 b2: - //SEG201 [90] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#10) -- _deref_pbuz1=_deref_pbuz2 + //SEG201 [90] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#10) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG202 [91] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG202 [91] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG203 [92] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#10 -- pbuz1=_inc_pbuz1 + //SEG203 [92] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -5893,7 +5893,7 @@ print_sword: { jmp b3 //SEG212 print_sword::@3 b3: - //SEG213 [96] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG213 [96] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -5911,7 +5911,7 @@ print_sword: { jmp b1 //SEG217 print_sword::@1 b1: - //SEG218 [98] (word~) print_word::w#5 ? (word)(signed word) print_sword::w#3 + //SEG218 [98] (word~) print_word::w#5 ← (word)(signed word) print_sword::w#3 //SEG219 [99] call print_word //SEG220 [101] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] print_word_from_b1: @@ -5929,7 +5929,7 @@ print_sword: { // print_word(word zeropage($b) w) print_word: { .label w = $b - //SEG226 [102] (byte) print_byte::b#1 ? > (word) print_word::w#3 -- vbuz1=_hi_vwuz2 + //SEG226 [102] (byte) print_byte::b#1 ← > (word) print_word::w#3 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG227 [103] call print_byte @@ -5941,7 +5941,7 @@ print_word: { jmp b1 //SEG231 print_word::@1 b1: - //SEG232 [104] (byte) print_byte::b#2 ? < (word) print_word::w#3 -- vbuz1=_lo_vwuz2 + //SEG232 [104] (byte) print_byte::b#2 ← < (word) print_word::w#3 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG233 [105] call print_byte @@ -5983,7 +5983,7 @@ print_sbyte: { jmp b2 //SEG249 print_sbyte::@2 b2: - //SEG250 [111] (byte~) print_byte::b#10 ? (byte)(signed byte) print_sbyte::b#4 + //SEG250 [111] (byte~) print_byte::b#10 ← (byte)(signed byte) print_sbyte::b#4 //SEG251 [112] call print_byte //SEG252 [74] phi from print_sbyte::@2 to print_byte [phi:print_sbyte::@2->print_byte] print_byte_from_b2: @@ -6010,7 +6010,7 @@ print_sbyte: { jmp b4 //SEG263 print_sbyte::@4 b4: - //SEG264 [116] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG264 [116] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -6026,7 +6026,7 @@ mul8su: { .const b = sin8u_table.amplitude+1 .label m = $f .label return = $f - //SEG266 [117] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8su::a#0 -- vbuxx=vbuyy + //SEG266 [117] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8su::a#0 -- vbuxx=vbuyy tya tax //SEG267 [118] call mul8u @@ -6036,23 +6036,23 @@ mul8su: { //SEG270 [127] phi (byte) mul8u::b#2 = ((byte))(const byte) mul8su::b#0 [phi:mul8su->mul8u#1] -- vbuaa=vbuc1 lda #b jsr mul8u - //SEG271 [119] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG271 [119] (word) mul8u::return#2 ← (word) mul8u::res#2 jmp b3 //SEG272 mul8su::@3 b3: - //SEG273 [120] (word) mul8su::m#0 ? (word) mul8u::return#2 + //SEG273 [120] (word) mul8su::m#0 ← (word) mul8u::return#2 //SEG274 [121] if((signed byte) mul8su::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8su::@1 -- vbsyy_ge_0_then_la1 cpy #0 bpl b1_from_b3 jmp b2 //SEG275 mul8su::@2 b2: - //SEG276 [122] (byte~) mul8su::$7 ? > (word) mul8su::m#0 -- vbuaa=_hi_vwuz1 + //SEG276 [122] (byte~) mul8su::$7 ← > (word) mul8su::m#0 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG277 [123] (byte~) mul8su::$10 ? (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 -- vbuaa=vbuaa_minus_vbuc1 + //SEG277 [123] (byte~) mul8su::$10 ← (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 -- vbuaa=vbuaa_minus_vbuc1 sec sbc #b - //SEG278 [124] (word) mul8su::m#1 ? (word) mul8su::m#0 hi= (byte~) mul8su::$10 -- vwuz1=vwuz1_sethi_vbuaa + //SEG278 [124] (word) mul8su::m#1 ← (word) mul8su::m#0 hi= (byte~) mul8su::$10 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG279 [125] phi from mul8su::@2 mul8su::@3 to mul8su::@1 [phi:mul8su::@2/mul8su::@3->mul8su::@1] b1_from_b2: @@ -6074,7 +6074,7 @@ mul8u: { .label mb = $b .label res = $f .label return = $f - //SEG285 [128] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa + //SEG285 [128] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -6100,7 +6100,7 @@ mul8u: { rts //SEG294 mul8u::@2 b2: - //SEG295 [132] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG295 [132] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG296 [133] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 @@ -6109,7 +6109,7 @@ mul8u: { jmp b4 //SEG297 mul8u::@4 b4: - //SEG298 [134] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG298 [134] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -6124,11 +6124,11 @@ mul8u: { jmp b3 //SEG301 mul8u::@3 b3: - //SEG302 [136] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG302 [136] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG303 [137] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG303 [137] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG304 [129] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -6164,7 +6164,7 @@ sin8s: { jmp b5 //SEG310 sin8s::@5 b5: - //SEG311 [139] (word) sin8s::x#0 ? (word) sin8s::x#2 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG311 [139] (word) sin8s::x#0 ← (word) sin8s::x#2 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc # (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG326 [145] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG327 [146] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuxx=vbuz1 + //SEG327 [146] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuxx=vbuz1 ldx x1 - //SEG328 [147] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG328 [147] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG329 [148] call mulu8_sel //SEG330 [181] phi from sin8s::@2 to mulu8_sel [phi:sin8s::@2->mulu8_sel] @@ -6238,14 +6238,14 @@ sin8s: { //SEG332 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG333 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG334 [149] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + //SEG334 [149] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 jmp b9 //SEG335 sin8s::@9 b9: - //SEG336 [150] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - //SEG337 [151] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuxx=vbuaa + //SEG336 [150] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + //SEG337 [151] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuxx=vbuaa tax - //SEG338 [152] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG338 [152] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG339 [153] call mulu8_sel //SEG340 [181] phi from sin8s::@9 to mulu8_sel [phi:sin8s::@9->mulu8_sel] @@ -6256,13 +6256,13 @@ sin8s: { //SEG342 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG343 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG344 [154] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + //SEG344 [154] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 jmp b10 //SEG345 sin8s::@10 b10: - //SEG346 [155] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuaa + //SEG346 [155] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuaa sta x3 - //SEG347 [156] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG347 [156] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 //SEG348 [157] call mulu8_sel //SEG349 [181] phi from sin8s::@10 to mulu8_sel [phi:sin8s::@10->mulu8_sel] @@ -6274,19 +6274,19 @@ sin8s: { ldy #DIV_6 //SEG352 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG353 [158] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + //SEG353 [158] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 jmp b11 //SEG354 sin8s::@11 b11: - //SEG355 [159] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - //SEG356 [160] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa + //SEG355 [159] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + //SEG356 [160] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa eor #$ff sec adc x1 sta usinx - //SEG357 [161] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG357 [161] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 - //SEG358 [162] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG358 [162] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG359 [163] call mulu8_sel //SEG360 [181] phi from sin8s::@11 to mulu8_sel [phi:sin8s::@11->mulu8_sel] @@ -6297,14 +6297,14 @@ sin8s: { //SEG362 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG363 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG364 [164] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + //SEG364 [164] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 jmp b12 //SEG365 sin8s::@12 b12: - //SEG366 [165] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - //SEG367 [166] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuxx=vbuaa + //SEG366 [165] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + //SEG367 [166] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuxx=vbuaa tax - //SEG368 [167] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG368 [167] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG369 [168] call mulu8_sel //SEG370 [181] phi from sin8s::@12 to mulu8_sel [phi:sin8s::@12->mulu8_sel] @@ -6315,17 +6315,17 @@ sin8s: { //SEG372 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG373 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG374 [169] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + //SEG374 [169] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 jmp b13 //SEG375 sin8s::@13 b13: - //SEG376 [170] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - //SEG377 [171] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG376 [170] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + //SEG377 [171] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG378 [172] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa + //SEG378 [172] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa clc adc usinx tax @@ -6335,7 +6335,7 @@ sin8s: { jmp b7 //SEG380 sin8s::@7 b7: - //SEG381 [174] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx + //SEG381 [174] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx dex //SEG382 [175] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] b3_from_b13: @@ -6351,7 +6351,7 @@ sin8s: { jmp b8 //SEG386 sin8s::@8 b8: - //SEG387 [177] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx + //SEG387 [177] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx txa eor #$ff clc @@ -6370,7 +6370,7 @@ sin8s: { rts //SEG393 sin8s::@14 b14: - //SEG394 [180] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx + //SEG394 [180] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx txa jmp b4_from_b14 } @@ -6382,8 +6382,8 @@ mulu8_sel: { .label _0 = $f .label _1 = $f .label select = $11 - //SEG396 [182] (byte) mul8u::a#2 ? (byte) mulu8_sel::v1#5 - //SEG397 [183] (byte) mul8u::b#1 ? (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy + //SEG396 [182] (byte) mul8u::a#2 ← (byte) mulu8_sel::v1#5 + //SEG397 [183] (byte) mul8u::b#1 ← (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy tya //SEG398 [184] call mul8u //SEG399 [127] phi from mulu8_sel to mul8u [phi:mulu8_sel->mul8u] @@ -6391,12 +6391,12 @@ mulu8_sel: { //SEG400 [127] phi (byte) mul8u::a#6 = (byte) mul8u::a#2 [phi:mulu8_sel->mul8u#0] -- register_copy //SEG401 [127] phi (byte) mul8u::b#2 = (byte) mul8u::b#1 [phi:mulu8_sel->mul8u#1] -- register_copy jsr mul8u - //SEG402 [185] (word) mul8u::return#3 ? (word) mul8u::res#2 + //SEG402 [185] (word) mul8u::return#3 ← (word) mul8u::res#2 jmp b1 //SEG403 mulu8_sel::@1 b1: - //SEG404 [186] (word~) mulu8_sel::$0 ? (word) mul8u::return#3 - //SEG405 [187] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 + //SEG404 [186] (word~) mulu8_sel::$0 ← (word) mul8u::return#3 + //SEG405 [187] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 ldy select beq !e+ !: @@ -6405,7 +6405,7 @@ mulu8_sel: { dey bne !- !e: - //SEG406 [188] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 + //SEG406 [188] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 lda _1+1 jmp breturn //SEG407 mulu8_sel::@return @@ -6424,11 +6424,11 @@ div16u: { //SEG411 [195] phi from div16u to divr16u [phi:div16u->divr16u] divr16u_from_div16u: jsr divr16u - //SEG412 [192] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG412 [192] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG413 div16u::@1 b1: - //SEG414 [193] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG414 [193] (word) div16u::return#0 ← (word) divr16u::return#2 jmp breturn //SEG415 div16u::@return breturn: @@ -6475,12 +6475,12 @@ divr16u: { jmp b1 //SEG428 divr16u::@1 b1: - //SEG429 [197] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG429 [197] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG430 [198] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 + //SEG430 [198] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG431 [199] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG431 [199] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG432 [200] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -6488,7 +6488,7 @@ divr16u: { jmp b4 //SEG433 divr16u::@4 b4: - //SEG434 [201] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG434 [201] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -6499,10 +6499,10 @@ divr16u: { jmp b2 //SEG437 divr16u::@2 b2: - //SEG438 [203] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG438 [203] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG439 [204] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG439 [204] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG440 [205] if((word) divr16u::rem#5<(const word) main::tabsize#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -6517,12 +6517,12 @@ divr16u: { jmp b5 //SEG441 divr16u::@5 b5: - //SEG442 [206] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG442 [206] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG443 [207] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::tabsize#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG443 [207] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::tabsize#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #div16u] jsr div16u - //SEG22 [11] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG22 [11] (word) div16u::return#2 ← (word) div16u::return#0 //SEG23 sin8u_table::@2 - //SEG24 [12] (word) sin8u_table::step#0 ? (word) div16u::return#2 + //SEG24 [12] (word) sin8u_table::step#0 ← (word) div16u::return#2 //SEG25 [13] call print_str //SEG26 [86] phi from sin8u_table::@2 to print_str [phi:sin8u_table::@2->print_str] //SEG27 [86] phi (byte*) print_char_cursor#105 = ((byte*))(word/signed word/dword/signed dword) $400 [phi:sin8u_table::@2->print_str#0] -- pbuz1=pbuc1 @@ -7339,7 +7339,7 @@ sin8u_table: { sta print_str.str+1 jsr print_str //SEG29 sin8u_table::@3 - //SEG30 [14] (word) print_word::w#1 ? (word) sin8u_table::step#0 -- vwuz1=vwuz2 + //SEG30 [14] (word) print_word::w#1 ← (word) sin8u_table::step#0 -- vwuz1=vwuz2 lda step sta print_word.w lda step+1 @@ -7460,39 +7460,39 @@ sin8u_table: { //SEG95 [34] phi (word) sin8u_table::x#10 = (word) sin8u_table::x#1 [phi:sin8u_table::@23->sin8u_table::@1#2] -- register_copy //SEG96 sin8u_table::@1 b1: - //SEG97 [35] (word) sin8s::x#2 ? (word) sin8u_table::x#10 -- vwuz1=vwuz2 + //SEG97 [35] (word) sin8s::x#2 ← (word) sin8u_table::x#10 -- vwuz1=vwuz2 lda x sta sin8s.x lda x+1 sta sin8s.x+1 //SEG98 [36] call sin8s jsr sin8s - //SEG99 [37] (signed byte) sin8s::return#2 ? (signed byte) sin8s::return#0 + //SEG99 [37] (signed byte) sin8s::return#2 ← (signed byte) sin8s::return#0 //SEG100 sin8u_table::@13 - //SEG101 [38] (signed byte) sin8u_table::sinx#0 ? (signed byte) sin8s::return#2 -- vbsz1=vbsaa + //SEG101 [38] (signed byte) sin8u_table::sinx#0 ← (signed byte) sin8s::return#2 -- vbsz1=vbsaa sta sinx - //SEG102 [39] (signed byte) mul8su::a#0 ? (signed byte) sin8u_table::sinx#0 -- vbsyy=vbsz1 + //SEG102 [39] (signed byte) mul8su::a#0 ← (signed byte) sin8u_table::sinx#0 -- vbsyy=vbsz1 tay //SEG103 [40] call mul8su jsr mul8su - //SEG104 [41] (signed word) mul8su::return#2 ? (signed word)(word) mul8su::m#2 + //SEG104 [41] (signed word) mul8su::return#2 ← (signed word)(word) mul8su::m#2 //SEG105 sin8u_table::@14 - //SEG106 [42] (signed word) sin8u_table::sinx_sc#0 ? (signed word) mul8su::return#2 - //SEG107 [43] (byte~) sin8u_table::$21 ? > (signed word) sin8u_table::sinx_sc#0 -- vbuaa=_hi_vwsz1 + //SEG106 [42] (signed word) sin8u_table::sinx_sc#0 ← (signed word) mul8su::return#2 + //SEG107 [43] (byte~) sin8u_table::$21 ← > (signed word) sin8u_table::sinx_sc#0 -- vbuaa=_hi_vwsz1 lda sinx_sc+1 - //SEG108 [44] (byte) sin8u_table::sinx_tr#0 ? (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 -- vbuxx=vbuc1_plus_vbuaa + //SEG108 [44] (byte) sin8u_table::sinx_tr#0 ← (const byte) sin8u_table::mid#0 + (byte~) sin8u_table::$21 -- vbuxx=vbuc1_plus_vbuaa tax axs #-[mid] - //SEG109 [45] *((byte*) sin8u_table::sintab#2) ? (byte) sin8u_table::sinx_tr#0 -- _deref_pbuz1=vbuxx + //SEG109 [45] *((byte*) sin8u_table::sintab#2) ← (byte) sin8u_table::sinx_tr#0 -- _deref_pbuz1=vbuxx txa ldy #0 sta (sintab),y - //SEG110 [46] (byte*) sin8u_table::sintab#1 ? ++ (byte*) sin8u_table::sintab#2 -- pbuz1=_inc_pbuz1 + //SEG110 [46] (byte*) sin8u_table::sintab#1 ← ++ (byte*) sin8u_table::sintab#2 -- pbuz1=_inc_pbuz1 inc sintab bne !+ inc sintab+1 !: - //SEG111 [47] (byte*~) print_char_cursor#126 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG111 [47] (byte*~) print_char_cursor#126 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -7507,7 +7507,7 @@ sin8u_table: { sta print_str.str+1 jsr print_str //SEG116 sin8u_table::@15 - //SEG117 [49] (word) print_word::w#2 ? (word) sin8u_table::x#10 -- vwuz1=vwuz2 + //SEG117 [49] (word) print_word::w#2 ← (word) sin8u_table::x#10 -- vwuz1=vwuz2 lda x sta print_word.w lda x+1 @@ -7529,7 +7529,7 @@ sin8u_table: { sta print_str.str+1 jsr print_str //SEG128 sin8u_table::@17 - //SEG129 [53] (signed byte) print_sbyte::b#1 ? (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 + //SEG129 [53] (signed byte) print_sbyte::b#1 ← (signed byte) sin8u_table::sinx#0 -- vbsz1=vbsz2 lda sinx sta print_sbyte.b //SEG130 [54] call print_sbyte @@ -7546,7 +7546,7 @@ sin8u_table: { sta print_str.str+1 jsr print_str //SEG137 sin8u_table::@19 - //SEG138 [57] (signed word) print_sword::w#1 ? (signed word) sin8u_table::sinx_sc#0 -- vwsz1=vwsz2 + //SEG138 [57] (signed word) print_sword::w#1 ← (signed word) sin8u_table::sinx_sc#0 -- vwsz1=vwsz2 lda sinx_sc sta print_sword.w lda sinx_sc+1 @@ -7565,7 +7565,7 @@ sin8u_table: { sta print_str.str+1 jsr print_str //SEG146 sin8u_table::@21 - //SEG147 [61] (byte) print_byte::b#7 ? (byte) sin8u_table::sinx_tr#0 -- vbuz1=vbuxx + //SEG147 [61] (byte) print_byte::b#7 ← (byte) sin8u_table::sinx_tr#0 -- vbuz1=vbuxx stx print_byte.b //SEG148 [62] call print_byte //SEG149 [74] phi from sin8u_table::@21 to print_byte [phi:sin8u_table::@21->print_byte] @@ -7579,7 +7579,7 @@ sin8u_table: { //SEG156 [69] phi (byte*) print_line_cursor#23 = (byte*) print_line_cursor#1 [phi:sin8u_table::@22->print_ln#0] -- register_copy jsr print_ln //SEG157 sin8u_table::@23 - //SEG158 [65] (word) sin8u_table::x#1 ? (word) sin8u_table::x#10 + (word) sin8u_table::step#0 -- vwuz1=vwuz1_plus_vwuz2 + //SEG158 [65] (word) sin8u_table::x#1 ← (word) sin8u_table::x#10 + (word) sin8u_table::step#0 -- vwuz1=vwuz1_plus_vwuz2 lda x clc adc step @@ -7587,7 +7587,7 @@ sin8u_table: { lda x+1 adc step+1 sta x+1 - //SEG159 [66] (word) sin8u_table::i#1 ? ++ (word) sin8u_table::i#10 -- vwuz1=_inc_vwuz1 + //SEG159 [66] (word) sin8u_table::i#1 ← ++ (word) sin8u_table::i#10 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -7625,7 +7625,7 @@ print_ln: { //SEG165 [70] phi (byte*) print_line_cursor#12 = (byte*) print_line_cursor#23 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy //SEG166 print_ln::@1 b1: - //SEG167 [71] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG167 [71] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#12 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -7651,13 +7651,13 @@ print_ln: { // print_byte(byte zeropage($a) b) print_byte: { .label b = $a - //SEG172 [75] (byte~) print_byte::$0 ? (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG172 [75] (byte~) print_byte::$0 ← (byte) print_byte::b#8 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG173 [76] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG173 [76] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG174 [77] call print_char @@ -7666,10 +7666,10 @@ print_byte: { //SEG177 [82] phi (byte) print_char::ch#5 = (byte) print_char::ch#3 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG178 print_byte::@1 - //SEG179 [78] (byte~) print_byte::$2 ? (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG179 [78] (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG180 [79] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG180 [79] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG181 [80] call print_char @@ -7685,10 +7685,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG188 [83] *((byte*) print_char_cursor#64) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa + //SEG188 [83] *((byte*) print_char_cursor#64) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG189 [84] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#64 -- pbuz1=_inc_pbuz1 + //SEG189 [84] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#64 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -7717,16 +7717,16 @@ print_str: { rts //SEG200 print_str::@2 b2: - //SEG201 [90] *((byte*) print_char_cursor#2) ? *((byte*) print_str::str#10) -- _deref_pbuz1=_deref_pbuz2 + //SEG201 [90] *((byte*) print_char_cursor#2) ← *((byte*) print_str::str#10) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG202 [91] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 + //SEG202 [91] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#2 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG203 [92] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#10 -- pbuz1=_inc_pbuz1 + //SEG203 [92] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#10 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -7750,7 +7750,7 @@ print_sword: { lda #'-' jsr print_char //SEG212 print_sword::@3 - //SEG213 [96] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 + //SEG213 [96] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#1 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -7765,7 +7765,7 @@ print_sword: { //SEG216 [97] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#1 [phi:print_sword/print_sword::@3->print_sword::@1#1] -- register_copy //SEG217 print_sword::@1 b1: - //SEG218 [98] (word~) print_word::w#5 ? (word)(signed word) print_sword::w#3 + //SEG218 [98] (word~) print_word::w#5 ← (word)(signed word) print_sword::w#3 //SEG219 [99] call print_word //SEG220 [101] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] //SEG221 [101] phi (byte*) print_char_cursor#99 = (byte*) print_char_cursor#94 [phi:print_sword::@1->print_word#0] -- register_copy @@ -7780,7 +7780,7 @@ print_sword: { // print_word(word zeropage($b) w) print_word: { .label w = $b - //SEG226 [102] (byte) print_byte::b#1 ? > (word) print_word::w#3 -- vbuz1=_hi_vwuz2 + //SEG226 [102] (byte) print_byte::b#1 ← > (word) print_word::w#3 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG227 [103] call print_byte @@ -7789,7 +7789,7 @@ print_word: { //SEG230 [74] phi (byte) print_byte::b#8 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy jsr print_byte //SEG231 print_word::@1 - //SEG232 [104] (byte) print_byte::b#2 ? < (word) print_word::w#3 -- vbuz1=_lo_vwuz2 + //SEG232 [104] (byte) print_byte::b#2 ← < (word) print_word::w#3 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG233 [105] call print_byte @@ -7821,7 +7821,7 @@ print_sbyte: { //SEG248 [110] phi (signed byte) print_sbyte::b#4 = (signed byte) print_sbyte::b#1 [phi:print_sbyte::@3/print_sbyte::@4->print_sbyte::@2#0] -- register_copy //SEG249 print_sbyte::@2 b2: - //SEG250 [111] (byte~) print_byte::b#10 ? (byte)(signed byte) print_sbyte::b#4 + //SEG250 [111] (byte~) print_byte::b#10 ← (byte)(signed byte) print_sbyte::b#4 //SEG251 [112] call print_byte //SEG252 [74] phi from print_sbyte::@2 to print_byte [phi:print_sbyte::@2->print_byte] //SEG253 [74] phi (byte*) print_char_cursor#100 = (byte*) print_char_cursor#18 [phi:print_sbyte::@2->print_byte#0] -- register_copy @@ -7840,7 +7840,7 @@ print_sbyte: { lda #'-' jsr print_char //SEG263 print_sbyte::@4 - //SEG264 [116] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 + //SEG264 [116] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#1 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -7856,7 +7856,7 @@ mul8su: { .const b = sin8u_table.amplitude+1 .label m = $f .label return = $f - //SEG266 [117] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8su::a#0 -- vbuxx=vbuyy + //SEG266 [117] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8su::a#0 -- vbuxx=vbuyy tya tax //SEG267 [118] call mul8u @@ -7865,19 +7865,19 @@ mul8su: { //SEG270 [127] phi (byte) mul8u::b#2 = ((byte))(const byte) mul8su::b#0 [phi:mul8su->mul8u#1] -- vbuaa=vbuc1 lda #b jsr mul8u - //SEG271 [119] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG271 [119] (word) mul8u::return#2 ← (word) mul8u::res#2 //SEG272 mul8su::@3 - //SEG273 [120] (word) mul8su::m#0 ? (word) mul8u::return#2 + //SEG273 [120] (word) mul8su::m#0 ← (word) mul8u::return#2 //SEG274 [121] if((signed byte) mul8su::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8su::@1 -- vbsyy_ge_0_then_la1 cpy #0 bpl b1 //SEG275 mul8su::@2 - //SEG276 [122] (byte~) mul8su::$7 ? > (word) mul8su::m#0 -- vbuaa=_hi_vwuz1 + //SEG276 [122] (byte~) mul8su::$7 ← > (word) mul8su::m#0 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG277 [123] (byte~) mul8su::$10 ? (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 -- vbuaa=vbuaa_minus_vbuc1 + //SEG277 [123] (byte~) mul8su::$10 ← (byte~) mul8su::$7 - ((byte))(const byte) mul8su::b#0 -- vbuaa=vbuaa_minus_vbuc1 sec sbc #b - //SEG278 [124] (word) mul8su::m#1 ? (word) mul8su::m#0 hi= (byte~) mul8su::$10 -- vwuz1=vwuz1_sethi_vbuaa + //SEG278 [124] (word) mul8su::m#1 ← (word) mul8su::m#0 hi= (byte~) mul8su::$10 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG279 [125] phi from mul8su::@2 mul8su::@3 to mul8su::@1 [phi:mul8su::@2/mul8su::@3->mul8su::@1] //SEG280 [125] phi (word) mul8su::m#2 = (word) mul8su::m#1 [phi:mul8su::@2/mul8su::@3->mul8su::@1#0] -- register_copy @@ -7894,7 +7894,7 @@ mul8u: { .label mb = $b .label res = $f .label return = $f - //SEG285 [128] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa + //SEG285 [128] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -7914,14 +7914,14 @@ mul8u: { rts //SEG294 mul8u::@2 b2: - //SEG295 [132] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG295 [132] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG296 [133] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG297 mul8u::@4 - //SEG298 [134] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG298 [134] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -7933,11 +7933,11 @@ mul8u: { //SEG300 [135] phi (word) mul8u::res#6 = (word) mul8u::res#2 [phi:mul8u::@2/mul8u::@4->mul8u::@3#0] -- register_copy //SEG301 mul8u::@3 b3: - //SEG302 [136] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG302 [136] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG303 [137] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG303 [137] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG304 [129] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -7970,7 +7970,7 @@ sin8s: { bcc b5 !: //SEG310 sin8s::@5 - //SEG311 [139] (word) sin8s::x#0 ? (word) sin8s::x#2 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG311 [139] (word) sin8s::x#0 ← (word) sin8s::x#2 - (const word) PI_u4f12#0 -- vwuz1=vwuz1_minus_vwuc1 lda x sec sbc #sin8s::@2#0] -- register_copy //SEG324 sin8s::@2 b2: - //SEG325 [144] (word~) sin8s::$4 ? (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 + //SEG325 [144] (word~) sin8s::$4 ← (word) sin8s::x#6 << (byte/signed byte/word/signed word/dword/signed dword) 3 -- vwuz1=vwuz1_rol_3 asl _4 rol _4+1 asl _4 rol _4+1 asl _4 rol _4+1 - //SEG326 [145] (byte) sin8s::x1#0 ? > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 + //SEG326 [145] (byte) sin8s::x1#0 ← > (word~) sin8s::$4 -- vbuz1=_hi_vwuz2 lda _4+1 sta x1 - //SEG327 [146] (byte) mulu8_sel::v1#0 ? (byte) sin8s::x1#0 -- vbuxx=vbuz1 + //SEG327 [146] (byte) mulu8_sel::v1#0 ← (byte) sin8s::x1#0 -- vbuxx=vbuz1 tax - //SEG328 [147] (byte) mulu8_sel::v2#0 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG328 [147] (byte) mulu8_sel::v2#0 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 tay //SEG329 [148] call mulu8_sel //SEG330 [181] phi from sin8s::@2 to mulu8_sel [phi:sin8s::@2->mulu8_sel] @@ -8036,12 +8036,12 @@ sin8s: { //SEG332 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#0 [phi:sin8s::@2->mulu8_sel#1] -- register_copy //SEG333 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#0 [phi:sin8s::@2->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG334 [149] (byte) mulu8_sel::return#0 ? (byte) mulu8_sel::return#12 + //SEG334 [149] (byte) mulu8_sel::return#0 ← (byte) mulu8_sel::return#12 //SEG335 sin8s::@9 - //SEG336 [150] (byte) sin8s::x2#0 ? (byte) mulu8_sel::return#0 - //SEG337 [151] (byte) mulu8_sel::v1#1 ? (byte) sin8s::x2#0 -- vbuxx=vbuaa + //SEG336 [150] (byte) sin8s::x2#0 ← (byte) mulu8_sel::return#0 + //SEG337 [151] (byte) mulu8_sel::v1#1 ← (byte) sin8s::x2#0 -- vbuxx=vbuaa tax - //SEG338 [152] (byte) mulu8_sel::v2#1 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG338 [152] (byte) mulu8_sel::v2#1 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG339 [153] call mulu8_sel //SEG340 [181] phi from sin8s::@9 to mulu8_sel [phi:sin8s::@9->mulu8_sel] @@ -8051,11 +8051,11 @@ sin8s: { //SEG342 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#1 [phi:sin8s::@9->mulu8_sel#1] -- register_copy //SEG343 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#1 [phi:sin8s::@9->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG344 [154] (byte) mulu8_sel::return#1 ? (byte) mulu8_sel::return#12 + //SEG344 [154] (byte) mulu8_sel::return#1 ← (byte) mulu8_sel::return#12 //SEG345 sin8s::@10 - //SEG346 [155] (byte) sin8s::x3#0 ? (byte) mulu8_sel::return#1 -- vbuz1=vbuaa + //SEG346 [155] (byte) sin8s::x3#0 ← (byte) mulu8_sel::return#1 -- vbuz1=vbuaa sta x3 - //SEG347 [156] (byte) mulu8_sel::v1#2 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG347 [156] (byte) mulu8_sel::v1#2 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 tax //SEG348 [157] call mulu8_sel //SEG349 [181] phi from sin8s::@10 to mulu8_sel [phi:sin8s::@10->mulu8_sel] @@ -8066,17 +8066,17 @@ sin8s: { ldy #DIV_6 //SEG352 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#2 [phi:sin8s::@10->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG353 [158] (byte) mulu8_sel::return#2 ? (byte) mulu8_sel::return#12 + //SEG353 [158] (byte) mulu8_sel::return#2 ← (byte) mulu8_sel::return#12 //SEG354 sin8s::@11 - //SEG355 [159] (byte) sin8s::x3_6#0 ? (byte) mulu8_sel::return#2 - //SEG356 [160] (byte) sin8s::usinx#0 ? (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa + //SEG355 [159] (byte) sin8s::x3_6#0 ← (byte) mulu8_sel::return#2 + //SEG356 [160] (byte) sin8s::usinx#0 ← (byte) sin8s::x1#0 - (byte) sin8s::x3_6#0 -- vbuz1=vbuz2_minus_vbuaa eor #$ff sec adc x1 sta usinx - //SEG357 [161] (byte) mulu8_sel::v1#3 ? (byte) sin8s::x3#0 -- vbuxx=vbuz1 + //SEG357 [161] (byte) mulu8_sel::v1#3 ← (byte) sin8s::x3#0 -- vbuxx=vbuz1 ldx x3 - //SEG358 [162] (byte) mulu8_sel::v2#3 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG358 [162] (byte) mulu8_sel::v2#3 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG359 [163] call mulu8_sel //SEG360 [181] phi from sin8s::@11 to mulu8_sel [phi:sin8s::@11->mulu8_sel] @@ -8086,12 +8086,12 @@ sin8s: { //SEG362 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#3 [phi:sin8s::@11->mulu8_sel#1] -- register_copy //SEG363 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#3 [phi:sin8s::@11->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG364 [164] (byte) mulu8_sel::return#10 ? (byte) mulu8_sel::return#12 + //SEG364 [164] (byte) mulu8_sel::return#10 ← (byte) mulu8_sel::return#12 //SEG365 sin8s::@12 - //SEG366 [165] (byte) sin8s::x4#0 ? (byte) mulu8_sel::return#10 - //SEG367 [166] (byte) mulu8_sel::v1#4 ? (byte) sin8s::x4#0 -- vbuxx=vbuaa + //SEG366 [165] (byte) sin8s::x4#0 ← (byte) mulu8_sel::return#10 + //SEG367 [166] (byte) mulu8_sel::v1#4 ← (byte) sin8s::x4#0 -- vbuxx=vbuaa tax - //SEG368 [167] (byte) mulu8_sel::v2#4 ? (byte) sin8s::x1#0 -- vbuyy=vbuz1 + //SEG368 [167] (byte) mulu8_sel::v2#4 ← (byte) sin8s::x1#0 -- vbuyy=vbuz1 ldy x1 //SEG369 [168] call mulu8_sel //SEG370 [181] phi from sin8s::@12 to mulu8_sel [phi:sin8s::@12->mulu8_sel] @@ -8101,15 +8101,15 @@ sin8s: { //SEG372 [181] phi (byte) mulu8_sel::v2#5 = (byte) mulu8_sel::v2#4 [phi:sin8s::@12->mulu8_sel#1] -- register_copy //SEG373 [181] phi (byte) mulu8_sel::v1#5 = (byte) mulu8_sel::v1#4 [phi:sin8s::@12->mulu8_sel#2] -- register_copy jsr mulu8_sel - //SEG374 [169] (byte) mulu8_sel::return#11 ? (byte) mulu8_sel::return#12 + //SEG374 [169] (byte) mulu8_sel::return#11 ← (byte) mulu8_sel::return#12 //SEG375 sin8s::@13 - //SEG376 [170] (byte) sin8s::x5#0 ? (byte) mulu8_sel::return#11 - //SEG377 [171] (byte) sin8s::x5_128#0 ? (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 + //SEG376 [170] (byte) sin8s::x5#0 ← (byte) mulu8_sel::return#11 + //SEG377 [171] (byte) sin8s::x5_128#0 ← (byte) sin8s::x5#0 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuaa_ror_4 lsr lsr lsr lsr - //SEG378 [172] (byte) sin8s::usinx#1 ? (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa + //SEG378 [172] (byte) sin8s::usinx#1 ← (byte) sin8s::usinx#0 + (byte) sin8s::x5_128#0 -- vbuxx=vbuz1_plus_vbuaa clc adc usinx tax @@ -8117,7 +8117,7 @@ sin8s: { cpx #$80 bcc b3 //SEG380 sin8s::@7 - //SEG381 [174] (byte) sin8s::usinx#2 ? -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx + //SEG381 [174] (byte) sin8s::usinx#2 ← -- (byte) sin8s::usinx#1 -- vbuxx=_dec_vbuxx dex //SEG382 [175] phi from sin8s::@13 sin8s::@7 to sin8s::@3 [phi:sin8s::@13/sin8s::@7->sin8s::@3] //SEG383 [175] phi (byte) sin8s::usinx#4 = (byte) sin8s::usinx#1 [phi:sin8s::@13/sin8s::@7->sin8s::@3#0] -- register_copy @@ -8128,7 +8128,7 @@ sin8s: { cmp #0 beq b14 //SEG386 sin8s::@8 - //SEG387 [177] (signed byte) sin8s::sinx#1 ? - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx + //SEG387 [177] (signed byte) sin8s::sinx#1 ← - (signed byte)(byte) sin8s::usinx#4 -- vbsaa=_neg_vbsxx txa eor #$ff clc @@ -8141,7 +8141,7 @@ sin8s: { rts //SEG393 sin8s::@14 b14: - //SEG394 [180] (signed byte~) sin8s::return#5 ? (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx + //SEG394 [180] (signed byte~) sin8s::return#5 ← (signed byte)(byte) sin8s::usinx#4 -- vbsaa=vbsxx txa rts } @@ -8153,18 +8153,18 @@ mulu8_sel: { .label _0 = $f .label _1 = $f .label select = $11 - //SEG396 [182] (byte) mul8u::a#2 ? (byte) mulu8_sel::v1#5 - //SEG397 [183] (byte) mul8u::b#1 ? (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy + //SEG396 [182] (byte) mul8u::a#2 ← (byte) mulu8_sel::v1#5 + //SEG397 [183] (byte) mul8u::b#1 ← (byte) mulu8_sel::v2#5 -- vbuaa=vbuyy tya //SEG398 [184] call mul8u //SEG399 [127] phi from mulu8_sel to mul8u [phi:mulu8_sel->mul8u] //SEG400 [127] phi (byte) mul8u::a#6 = (byte) mul8u::a#2 [phi:mulu8_sel->mul8u#0] -- register_copy //SEG401 [127] phi (byte) mul8u::b#2 = (byte) mul8u::b#1 [phi:mulu8_sel->mul8u#1] -- register_copy jsr mul8u - //SEG402 [185] (word) mul8u::return#3 ? (word) mul8u::res#2 + //SEG402 [185] (word) mul8u::return#3 ← (word) mul8u::res#2 //SEG403 mulu8_sel::@1 - //SEG404 [186] (word~) mulu8_sel::$0 ? (word) mul8u::return#3 - //SEG405 [187] (word~) mulu8_sel::$1 ? (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 + //SEG404 [186] (word~) mulu8_sel::$0 ← (word) mul8u::return#3 + //SEG405 [187] (word~) mulu8_sel::$1 ← (word~) mulu8_sel::$0 << (byte) mulu8_sel::select#5 -- vwuz1=vwuz1_rol_vbuz2 ldy select beq !e+ !: @@ -8173,7 +8173,7 @@ mulu8_sel: { dey bne !- !e: - //SEG406 [188] (byte) mulu8_sel::return#12 ? > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 + //SEG406 [188] (byte) mulu8_sel::return#12 ← > (word~) mulu8_sel::$1 -- vbuaa=_hi_vwuz1 lda _1+1 //SEG407 mulu8_sel::@return //SEG408 [189] return @@ -8189,9 +8189,9 @@ div16u: { //SEG410 [191] call divr16u //SEG411 [195] phi from div16u to divr16u [phi:div16u->divr16u] jsr divr16u - //SEG412 [192] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG412 [192] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG413 div16u::@1 - //SEG414 [193] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG414 [193] (word) div16u::return#0 ← (word) divr16u::return#2 //SEG415 div16u::@return //SEG416 [194] return rts @@ -8230,18 +8230,18 @@ divr16u: { //SEG427 [196] phi (word) divr16u::rem#4 = (word) divr16u::rem#10 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG428 divr16u::@1 b1: - //SEG429 [197] (word) divr16u::rem#0 ? (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG429 [197] (word) divr16u::rem#0 ← (word) divr16u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG430 [198] (byte~) divr16u::$1 ? > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 + //SEG430 [198] (byte~) divr16u::$1 ← > (word) divr16u::dividend#2 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG431 [199] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG431 [199] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG432 [200] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG433 divr16u::@4 - //SEG434 [201] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG434 [201] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -8249,10 +8249,10 @@ divr16u: { //SEG436 [202] phi (word) divr16u::rem#5 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG437 divr16u::@2 b2: - //SEG438 [203] (word) divr16u::dividend#0 ? (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG438 [203] (word) divr16u::dividend#0 ← (word) divr16u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG439 [204] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG439 [204] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG440 [205] if((word) divr16u::rem#5<(const word) main::tabsize#0) goto divr16u::@3 -- vwuz1_lt_vwuc1_then_la1 @@ -8265,12 +8265,12 @@ divr16u: { bcc b3 !: //SEG441 divr16u::@5 - //SEG442 [206] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG442 [206] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG443 [207] (word) divr16u::rem#2 ? (word) divr16u::rem#5 - (const word) main::tabsize#0 -- vwuz1=vwuz1_minus_vwuc1 + //SEG443 [207] (word) divr16u::rem#2 ← (word) divr16u::rem#5 - (const word) main::tabsize#0 -- vwuz1=vwuz1_minus_vwuc1 lda rem sec sbc #divr16u::@3#1] -- register_copy //SEG447 divr16u::@3 b3: - //SEG448 [209] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG448 [209] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG449 [210] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG450 divr16u::@6 - //SEG451 [211] (word) rem16u#1 ? (word) divr16u::rem#10 + //SEG451 [211] (word) rem16u#1 ← (word) divr16u::rem#10 //SEG452 divr16u::@return //SEG453 [212] return rts @@ -8308,11 +8308,11 @@ print_cls: { //SEG458 [214] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy //SEG459 print_cls::@1 b1: - //SEG460 [215] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG460 [215] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG461 [216] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG461 [216] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 diff --git a/src/test/ref/test-division.log b/src/test/ref/test-division.log index 031ebbea9..a8e26b81b 100644 --- a/src/test/ref/test-division.log +++ b/src/test/ref/test-division.log @@ -2,1342 +2,1342 @@ Identified constant variable (byte) test_8u::rem CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@12 print_str: scope:[print_str] from test_16s::@4 test_16s::@6 test_16s::@8 test_16u::@4 test_16u::@6 test_16u::@8 test_8s::@4 test_8s::@6 test_8s::@8 test_8u::@4 test_8u::@6 test_8u::@8 - (byte*) print_char_cursor#143 ? phi( test_16s::@4/(byte*) print_char_cursor#55 test_16s::@6/(byte*) print_char_cursor#57 test_16s::@8/(byte*) print_char_cursor#59 test_16u::@4/(byte*) print_char_cursor#37 test_16u::@6/(byte*) print_char_cursor#39 test_16u::@8/(byte*) print_char_cursor#41 test_8s::@4/(byte*) print_char_cursor#46 test_8s::@6/(byte*) print_char_cursor#48 test_8s::@8/(byte*) print_char_cursor#50 test_8u::@4/(byte*) print_char_cursor#28 test_8u::@6/(byte*) print_char_cursor#30 test_8u::@8/(byte*) print_char_cursor#32 ) - (byte*) print_str::str#15 ? phi( test_16s::@4/(byte*) print_str::str#10 test_16s::@6/(byte*) print_str::str#11 test_16s::@8/(byte*) print_str::str#12 test_16u::@4/(byte*) print_str::str#4 test_16u::@6/(byte*) print_str::str#5 test_16u::@8/(byte*) print_str::str#6 test_8s::@4/(byte*) print_str::str#7 test_8s::@6/(byte*) print_str::str#8 test_8s::@8/(byte*) print_str::str#9 test_8u::@4/(byte*) print_str::str#1 test_8u::@6/(byte*) print_str::str#2 test_8u::@8/(byte*) print_str::str#3 ) + (byte*) print_char_cursor#143 ← phi( test_16s::@4/(byte*) print_char_cursor#55 test_16s::@6/(byte*) print_char_cursor#57 test_16s::@8/(byte*) print_char_cursor#59 test_16u::@4/(byte*) print_char_cursor#37 test_16u::@6/(byte*) print_char_cursor#39 test_16u::@8/(byte*) print_char_cursor#41 test_8s::@4/(byte*) print_char_cursor#46 test_8s::@6/(byte*) print_char_cursor#48 test_8s::@8/(byte*) print_char_cursor#50 test_8u::@4/(byte*) print_char_cursor#28 test_8u::@6/(byte*) print_char_cursor#30 test_8u::@8/(byte*) print_char_cursor#32 ) + (byte*) print_str::str#15 ← phi( test_16s::@4/(byte*) print_str::str#10 test_16s::@6/(byte*) print_str::str#11 test_16s::@8/(byte*) print_str::str#12 test_16u::@4/(byte*) print_str::str#4 test_16u::@6/(byte*) print_str::str#5 test_16u::@8/(byte*) print_str::str#6 test_8s::@4/(byte*) print_str::str#7 test_8s::@6/(byte*) print_str::str#8 test_8s::@8/(byte*) print_str::str#9 test_8u::@4/(byte*) print_str::str#1 test_8u::@6/(byte*) print_str::str#2 test_8u::@8/(byte*) print_str::str#3 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#128 ? phi( print_str/(byte*) print_char_cursor#143 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#13 ? phi( print_str/(byte*) print_str::str#15 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#13) != (byte) '@' + (byte*) print_char_cursor#128 ← phi( print_str/(byte*) print_char_cursor#143 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#13 ← phi( print_str/(byte*) print_str::str#15 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#13) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#65 ? phi( print_str::@1/(byte*) print_char_cursor#128 ) - (byte*) print_str::str#14 ? phi( print_str::@1/(byte*) print_str::str#13 ) - *((byte*) print_char_cursor#65) ? *((byte*) print_str::str#14) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#65 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#14 + (byte*) print_char_cursor#65 ← phi( print_str::@1/(byte*) print_char_cursor#128 ) + (byte*) print_str::str#14 ← phi( print_str::@1/(byte*) print_str::str#13 ) + *((byte*) print_char_cursor#65) ← *((byte*) print_str::str#14) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#65 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#14 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#66 ? phi( print_str::@1/(byte*) print_char_cursor#128 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#66 + (byte*) print_char_cursor#66 ← phi( print_str::@1/(byte*) print_char_cursor#128 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#66 return to:@return print_ln: scope:[print_ln] from test_16s::@10 test_16u::@10 test_8s::@10 test_8u::@10 - (byte*) print_char_cursor#129 ? phi( test_16s::@10/(byte*) print_char_cursor#61 test_16u::@10/(byte*) print_char_cursor#43 test_8s::@10/(byte*) print_char_cursor#52 test_8u::@10/(byte*) print_char_cursor#34 ) - (byte*) print_line_cursor#39 ? phi( test_16s::@10/(byte*) print_line_cursor#44 test_16u::@10/(byte*) print_line_cursor#42 test_8s::@10/(byte*) print_line_cursor#43 test_8u::@10/(byte*) print_line_cursor#41 ) + (byte*) print_char_cursor#129 ← phi( test_16s::@10/(byte*) print_char_cursor#61 test_16u::@10/(byte*) print_char_cursor#43 test_8s::@10/(byte*) print_char_cursor#52 test_8u::@10/(byte*) print_char_cursor#34 ) + (byte*) print_line_cursor#39 ← phi( test_16s::@10/(byte*) print_line_cursor#44 test_16u::@10/(byte*) print_line_cursor#42 test_8s::@10/(byte*) print_line_cursor#43 test_8u::@10/(byte*) print_line_cursor#41 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) print_char_cursor#67 ? phi( print_ln/(byte*) print_char_cursor#129 print_ln::@1/(byte*) print_char_cursor#67 ) - (byte*) print_line_cursor#20 ? phi( print_ln/(byte*) print_line_cursor#39 print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*~) print_ln::$0 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) print_line_cursor#1 ? (byte*~) print_ln::$0 - (bool~) print_ln::$1 ? (byte*) print_line_cursor#1 < (byte*) print_char_cursor#67 + (byte*) print_char_cursor#67 ← phi( print_ln/(byte*) print_char_cursor#129 print_ln::@1/(byte*) print_char_cursor#67 ) + (byte*) print_line_cursor#20 ← phi( print_ln/(byte*) print_line_cursor#39 print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*~) print_ln::$0 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) print_line_cursor#1 ← (byte*~) print_ln::$0 + (bool~) print_ln::$1 ← (byte*) print_line_cursor#1 < (byte*) print_char_cursor#67 if((bool~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) print_line_cursor#21 ? phi( print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*) print_char_cursor#3 ? (byte*) print_line_cursor#21 + (byte*) print_line_cursor#21 ← phi( print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*) print_char_cursor#3 ← (byte*) print_line_cursor#21 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) print_char_cursor#68 ? phi( print_ln::@2/(byte*) print_char_cursor#3 ) - (byte*) print_line_cursor#22 ? phi( print_ln::@2/(byte*) print_line_cursor#21 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#22 - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#68 + (byte*) print_char_cursor#68 ← phi( print_ln::@2/(byte*) print_char_cursor#3 ) + (byte*) print_line_cursor#22 ← phi( print_ln::@2/(byte*) print_line_cursor#21 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#22 + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#68 return to:@return print_sword: scope:[print_sword] from test_16s::@3 test_16s::@5 test_16s::@7 test_16s::@9 - (byte*) print_char_cursor#144 ? phi( test_16s::@3/(byte*) print_char_cursor#141 test_16s::@5/(byte*) print_char_cursor#56 test_16s::@7/(byte*) print_char_cursor#58 test_16s::@9/(byte*) print_char_cursor#60 ) - (signed word) print_sword::w#5 ? phi( test_16s::@3/(signed word) print_sword::w#1 test_16s::@5/(signed word) print_sword::w#2 test_16s::@7/(signed word) print_sword::w#3 test_16s::@9/(signed word) print_sword::w#4 ) - (bool~) print_sword::$0 ? (signed word) print_sword::w#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) print_sword::$1 ? ! (bool~) print_sword::$0 + (byte*) print_char_cursor#144 ← phi( test_16s::@3/(byte*) print_char_cursor#141 test_16s::@5/(byte*) print_char_cursor#56 test_16s::@7/(byte*) print_char_cursor#58 test_16s::@9/(byte*) print_char_cursor#60 ) + (signed word) print_sword::w#5 ← phi( test_16s::@3/(signed word) print_sword::w#1 test_16s::@5/(signed word) print_sword::w#2 test_16s::@7/(signed word) print_sword::w#3 test_16s::@9/(signed word) print_sword::w#4 ) + (bool~) print_sword::$0 ← (signed word) print_sword::w#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) print_sword::$1 ← ! (bool~) print_sword::$0 if((bool~) print_sword::$1) goto print_sword::@1 to:print_sword::@2 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - (byte*) print_char_cursor#130 ? phi( print_sword/(byte*) print_char_cursor#144 print_sword::@4/(byte*) print_char_cursor#6 ) - (signed word) print_sword::w#6 ? phi( print_sword/(signed word) print_sword::w#5 print_sword::@4/(signed word) print_sword::w#0 ) - (word~) print_sword::$2 ? ((word)) (signed word) print_sword::w#6 - (word) print_word::w#0 ? (word~) print_sword::$2 + (byte*) print_char_cursor#130 ← phi( print_sword/(byte*) print_char_cursor#144 print_sword::@4/(byte*) print_char_cursor#6 ) + (signed word) print_sword::w#6 ← phi( print_sword/(signed word) print_sword::w#5 print_sword::@4/(signed word) print_sword::w#0 ) + (word~) print_sword::$2 ← ((word)) (signed word) print_sword::w#6 + (word) print_word::w#0 ← (word~) print_sword::$2 call print_word to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@1 - (byte*) print_char_cursor#69 ? phi( print_sword::@1/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#69 + (byte*) print_char_cursor#69 ← phi( print_sword::@1/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#69 to:print_sword::@return print_sword::@2: scope:[print_sword] from print_sword - (signed word) print_sword::w#8 ? phi( print_sword/(signed word) print_sword::w#5 ) - (byte*) print_char_cursor#131 ? phi( print_sword/(byte*) print_char_cursor#144 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed word) print_sword::w#8 ← phi( print_sword/(signed word) print_sword::w#5 ) + (byte*) print_char_cursor#131 ← phi( print_sword/(byte*) print_char_cursor#144 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - (signed word) print_sword::w#7 ? phi( print_sword::@2/(signed word) print_sword::w#8 ) - (byte*) print_char_cursor#70 ? phi( print_sword::@2/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#70 - (signed word~) print_sword::$5 ? - (signed word) print_sword::w#7 - (signed word) print_sword::w#0 ? (signed word~) print_sword::$5 + (signed word) print_sword::w#7 ← phi( print_sword::@2/(signed word) print_sword::w#8 ) + (byte*) print_char_cursor#70 ← phi( print_sword::@2/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#70 + (signed word~) print_sword::$5 ← - (signed word) print_sword::w#7 + (signed word) print_sword::w#0 ← (signed word~) print_sword::$5 to:print_sword::@1 print_sword::@return: scope:[print_sword] from print_sword::@3 - (byte*) print_char_cursor#71 ? phi( print_sword::@3/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#71 + (byte*) print_char_cursor#71 ← phi( print_sword::@3/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#71 return to:@return print_sbyte: scope:[print_sbyte] from test_8s::@3 test_8s::@5 test_8s::@7 test_8s::@9 - (byte*) print_char_cursor#145 ? phi( test_8s::@3/(byte*) print_char_cursor#140 test_8s::@5/(byte*) print_char_cursor#47 test_8s::@7/(byte*) print_char_cursor#49 test_8s::@9/(byte*) print_char_cursor#51 ) - (signed byte) print_sbyte::b#5 ? phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) - (bool~) print_sbyte::$0 ? (signed byte) print_sbyte::b#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_char_cursor#145 ← phi( test_8s::@3/(byte*) print_char_cursor#140 test_8s::@5/(byte*) print_char_cursor#47 test_8s::@7/(byte*) print_char_cursor#49 test_8s::@9/(byte*) print_char_cursor#51 ) + (signed byte) print_sbyte::b#5 ← phi( test_8s::@3/(signed byte) print_sbyte::b#1 test_8s::@5/(signed byte) print_sbyte::b#2 test_8s::@7/(signed byte) print_sbyte::b#3 test_8s::@9/(signed byte) print_sbyte::b#4 ) + (bool~) print_sbyte::$0 ← (signed byte) print_sbyte::b#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) print_sbyte::$0) goto print_sbyte::@1 to:print_sbyte::@3 print_sbyte::@1: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#8 ? phi( print_sbyte/(signed byte) print_sbyte::b#5 ) - (byte*) print_char_cursor#132 ? phi( print_sbyte/(byte*) print_char_cursor#145 ) - (byte) print_char::ch#1 ? (byte) '-' + (signed byte) print_sbyte::b#8 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 ) + (byte*) print_char_cursor#132 ← phi( print_sbyte/(byte*) print_char_cursor#145 ) + (byte) print_char::ch#1 ← (byte) '-' call print_char to:print_sbyte::@5 print_sbyte::@5: scope:[print_sbyte] from print_sbyte::@1 - (signed byte) print_sbyte::b#6 ? phi( print_sbyte::@1/(signed byte) print_sbyte::b#8 ) - (byte*) print_char_cursor#72 ? phi( print_sbyte::@1/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#72 - (signed byte~) print_sbyte::$5 ? - (signed byte) print_sbyte::b#6 - (signed byte) print_sbyte::b#0 ? (signed byte~) print_sbyte::$5 + (signed byte) print_sbyte::b#6 ← phi( print_sbyte::@1/(signed byte) print_sbyte::b#8 ) + (byte*) print_char_cursor#72 ← phi( print_sbyte::@1/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#72 + (signed byte~) print_sbyte::$5 ← - (signed byte) print_sbyte::b#6 + (signed byte) print_sbyte::b#0 ← (signed byte~) print_sbyte::$5 to:print_sbyte::@2 print_sbyte::@3: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#10 ? phi( print_sbyte/(signed byte) print_sbyte::b#5 ) - (byte*) print_char_cursor#133 ? phi( print_sbyte/(byte*) print_char_cursor#145 ) - (byte) print_char::ch#2 ? (byte) ' ' + (signed byte) print_sbyte::b#10 ← phi( print_sbyte/(signed byte) print_sbyte::b#5 ) + (byte*) print_char_cursor#133 ← phi( print_sbyte/(byte*) print_char_cursor#145 ) + (byte) print_char::ch#2 ← (byte) ' ' call print_char to:print_sbyte::@6 print_sbyte::@6: scope:[print_sbyte] from print_sbyte::@3 - (signed byte) print_sbyte::b#9 ? phi( print_sbyte::@3/(signed byte) print_sbyte::b#10 ) - (byte*) print_char_cursor#73 ? phi( print_sbyte::@3/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#73 + (signed byte) print_sbyte::b#9 ← phi( print_sbyte::@3/(signed byte) print_sbyte::b#10 ) + (byte*) print_char_cursor#73 ← phi( print_sbyte::@3/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#73 to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@5 print_sbyte::@6 - (byte*) print_char_cursor#134 ? phi( print_sbyte::@5/(byte*) print_char_cursor#8 print_sbyte::@6/(byte*) print_char_cursor#9 ) - (signed byte) print_sbyte::b#7 ? phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#9 ) - (byte~) print_sbyte::$1 ? ((byte)) (signed byte) print_sbyte::b#7 - (byte) print_byte::b#0 ? (byte~) print_sbyte::$1 + (byte*) print_char_cursor#134 ← phi( print_sbyte::@5/(byte*) print_char_cursor#8 print_sbyte::@6/(byte*) print_char_cursor#9 ) + (signed byte) print_sbyte::b#7 ← phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#9 ) + (byte~) print_sbyte::$1 ← ((byte)) (signed byte) print_sbyte::b#7 + (byte) print_byte::b#0 ← (byte~) print_sbyte::$1 call print_byte to:print_sbyte::@7 print_sbyte::@7: scope:[print_sbyte] from print_sbyte::@2 - (byte*) print_char_cursor#74 ? phi( print_sbyte::@2/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#74 + (byte*) print_char_cursor#74 ← phi( print_sbyte::@2/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#74 to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@7 - (byte*) print_char_cursor#75 ? phi( print_sbyte::@7/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#75 + (byte*) print_char_cursor#75 ← phi( print_sbyte::@7/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#75 return to:@return print_word: scope:[print_word] from print_sword::@1 test_16u::@3 test_16u::@5 test_16u::@7 test_16u::@9 - (byte*) print_char_cursor#135 ? phi( print_sword::@1/(byte*) print_char_cursor#130 test_16u::@3/(byte*) print_char_cursor#139 test_16u::@5/(byte*) print_char_cursor#38 test_16u::@7/(byte*) print_char_cursor#40 test_16u::@9/(byte*) print_char_cursor#42 ) - (word) print_word::w#5 ? phi( print_sword::@1/(word) print_word::w#0 test_16u::@3/(word) print_word::w#1 test_16u::@5/(word) print_word::w#2 test_16u::@7/(word) print_word::w#3 test_16u::@9/(word) print_word::w#4 ) - (byte~) print_word::$0 ? > (word) print_word::w#5 - (byte) print_byte::b#1 ? (byte~) print_word::$0 + (byte*) print_char_cursor#135 ← phi( print_sword::@1/(byte*) print_char_cursor#130 test_16u::@3/(byte*) print_char_cursor#139 test_16u::@5/(byte*) print_char_cursor#38 test_16u::@7/(byte*) print_char_cursor#40 test_16u::@9/(byte*) print_char_cursor#42 ) + (word) print_word::w#5 ← phi( print_sword::@1/(word) print_word::w#0 test_16u::@3/(word) print_word::w#1 test_16u::@5/(word) print_word::w#2 test_16u::@7/(word) print_word::w#3 test_16u::@9/(word) print_word::w#4 ) + (byte~) print_word::$0 ← > (word) print_word::w#5 + (byte) print_byte::b#1 ← (byte~) print_word::$0 call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - (word) print_word::w#6 ? phi( print_word/(word) print_word::w#5 ) - (byte*) print_char_cursor#76 ? phi( print_word/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#12 ? (byte*) print_char_cursor#76 - (byte~) print_word::$2 ? < (word) print_word::w#6 - (byte) print_byte::b#2 ? (byte~) print_word::$2 + (word) print_word::w#6 ← phi( print_word/(word) print_word::w#5 ) + (byte*) print_char_cursor#76 ← phi( print_word/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#76 + (byte~) print_word::$2 ← < (word) print_word::w#6 + (byte) print_byte::b#2 ← (byte~) print_word::$2 call print_byte to:print_word::@2 print_word::@2: scope:[print_word] from print_word::@1 - (byte*) print_char_cursor#77 ? phi( print_word::@1/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#77 + (byte*) print_char_cursor#77 ← phi( print_word::@1/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#77 to:print_word::@return print_word::@return: scope:[print_word] from print_word::@2 - (byte*) print_char_cursor#78 ? phi( print_word::@2/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#78 + (byte*) print_char_cursor#78 ← phi( print_word::@2/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#78 return to:@return @12: scope:[] from @begin - (byte*) print_screen#10 ? phi( @begin/(byte*) print_screen#0 ) - (byte*) print_char_cursor#158 ? phi( @begin/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#66 ? phi( @begin/(byte*) print_line_cursor#0 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#10 ← phi( @begin/(byte*) print_screen#0 ) + (byte*) print_char_cursor#158 ← phi( @begin/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#66 ← phi( @begin/(byte*) print_line_cursor#0 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@19 print_byte: scope:[print_byte] from print_sbyte::@2 print_word print_word::@1 test_8u::@3 test_8u::@5 test_8u::@7 test_8u::@9 - (byte*) print_char_cursor#136 ? phi( print_sbyte::@2/(byte*) print_char_cursor#134 print_word/(byte*) print_char_cursor#135 print_word::@1/(byte*) print_char_cursor#12 test_8u::@3/(byte*) print_char_cursor#138 test_8u::@5/(byte*) print_char_cursor#29 test_8u::@7/(byte*) print_char_cursor#31 test_8u::@9/(byte*) print_char_cursor#33 ) - (byte) print_byte::b#7 ? phi( print_sbyte::@2/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@3/(byte) print_byte::b#3 test_8u::@5/(byte) print_byte::b#4 test_8u::@7/(byte) print_byte::b#5 test_8u::@9/(byte) print_byte::b#6 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#3 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#136 ← phi( print_sbyte::@2/(byte*) print_char_cursor#134 print_word/(byte*) print_char_cursor#135 print_word::@1/(byte*) print_char_cursor#12 test_8u::@3/(byte*) print_char_cursor#138 test_8u::@5/(byte*) print_char_cursor#29 test_8u::@7/(byte*) print_char_cursor#31 test_8u::@9/(byte*) print_char_cursor#33 ) + (byte) print_byte::b#7 ← phi( print_sbyte::@2/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@3/(byte) print_byte::b#3 test_8u::@5/(byte) print_byte::b#4 test_8u::@7/(byte) print_byte::b#5 test_8u::@9/(byte) print_byte::b#6 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#3 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#8 ? phi( print_byte/(byte) print_byte::b#7 ) - (byte*) print_char_cursor#79 ? phi( print_byte/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#79 - (byte~) print_byte::$2 ? (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#4 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#8 ← phi( print_byte/(byte) print_byte::b#7 ) + (byte*) print_char_cursor#79 ← phi( print_byte/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#79 + (byte~) print_byte::$2 ← (byte) print_byte::b#8 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#4 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#80 ? phi( print_byte::@1/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#80 + (byte*) print_char_cursor#80 ← phi( print_byte::@1/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#80 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#81 ? phi( print_byte::@2/(byte*) print_char_cursor#16 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#81 + (byte*) print_char_cursor#81 ← phi( print_byte::@2/(byte*) print_char_cursor#16 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#81 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 print_sword::@2 - (byte*) print_char_cursor#82 ? phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#15 print_sbyte::@1/(byte*) print_char_cursor#132 print_sbyte::@3/(byte*) print_char_cursor#133 print_sword::@2/(byte*) print_char_cursor#131 ) - (byte) print_char::ch#5 ? phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) print_char::ch#1 print_sbyte::@3/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) - *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 - (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#82 + (byte*) print_char_cursor#82 ← phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#15 print_sbyte::@1/(byte*) print_char_cursor#132 print_sbyte::@3/(byte*) print_char_cursor#133 print_sword::@2/(byte*) print_char_cursor#131 ) + (byte) print_char::ch#5 ← phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) print_char::ch#1 print_sbyte::@3/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) + *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 + (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#82 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#83 ? phi( print_char/(byte*) print_char_cursor#18 ) - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#83 + (byte*) print_char_cursor#83 ← phi( print_char/(byte*) print_char_cursor#18 ) + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#83 return to:@return print_cls: scope:[print_cls] from main - (byte*) print_screen#1 ? phi( main/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_screen#3 - (byte*) print_char_cursor#20 ? (byte*) print_line_cursor#3 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_screen#3 + (byte*) print_char_cursor#20 ← (byte*) print_line_cursor#3 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#84 ? phi( print_cls::@2/(byte*) print_char_cursor#20 ) - (byte*) print_line_cursor#23 ? phi( print_cls::@2/(byte*) print_line_cursor#3 ) - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#23 - (byte*) print_char_cursor#21 ? (byte*) print_char_cursor#84 + (byte*) print_char_cursor#84 ← phi( print_cls::@2/(byte*) print_char_cursor#20 ) + (byte*) print_line_cursor#23 ← phi( print_cls::@2/(byte*) print_line_cursor#3 ) + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#23 + (byte*) print_char_cursor#21 ← (byte*) print_char_cursor#84 return to:@return @19: scope:[] from @12 - (byte*) print_screen#9 ? phi( @12/(byte*) print_screen#10 ) - (byte*) print_char_cursor#157 ? phi( @12/(byte*) print_char_cursor#158 ) - (byte*) print_line_cursor#61 ? phi( @12/(byte*) print_line_cursor#66 ) - (byte) rem8u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_screen#9 ← phi( @12/(byte*) print_screen#10 ) + (byte*) print_char_cursor#157 ← phi( @12/(byte*) print_char_cursor#158 ) + (byte*) print_line_cursor#61 ← phi( @12/(byte*) print_line_cursor#66 ) + (byte) rem8u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@21 div8u: scope:[div8u] from div8s::@4 test_8u::@1 - (byte) rem8u#31 ? phi( div8s::@4/(byte) rem8u#32 test_8u::@1/(byte) rem8u#36 ) - (byte) div8u::divisor#2 ? phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) - (byte) div8u::dividend#2 ? phi( div8s::@4/(byte) div8u::dividend#0 test_8u::@1/(byte) div8u::dividend#1 ) - (byte) divr8u::dividend#0 ? (byte) div8u::dividend#2 - (byte) divr8u::divisor#0 ? (byte) div8u::divisor#2 - (byte) divr8u::rem#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#31 ← phi( div8s::@4/(byte) rem8u#32 test_8u::@1/(byte) rem8u#36 ) + (byte) div8u::divisor#2 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) + (byte) div8u::dividend#2 ← phi( div8s::@4/(byte) div8u::dividend#0 test_8u::@1/(byte) div8u::dividend#1 ) + (byte) divr8u::dividend#0 ← (byte) div8u::dividend#2 + (byte) divr8u::divisor#0 ← (byte) div8u::divisor#2 + (byte) divr8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr8u - (byte) divr8u::return#0 ? (byte) divr8u::return#2 + (byte) divr8u::return#0 ← (byte) divr8u::return#2 to:div8u::@2 div8u::@2: scope:[div8u] from div8u - (byte) rem8u#15 ? phi( div8u/(byte) rem8u#4 ) - (byte) divr8u::return#3 ? phi( div8u/(byte) divr8u::return#0 ) - (byte~) div8u::$0 ? (byte) divr8u::return#3 - (byte) rem8u#1 ? (byte) rem8u#15 - (byte) div8u::return#0 ? (byte~) div8u::$0 + (byte) rem8u#15 ← phi( div8u/(byte) rem8u#4 ) + (byte) divr8u::return#3 ← phi( div8u/(byte) divr8u::return#0 ) + (byte~) div8u::$0 ← (byte) divr8u::return#3 + (byte) rem8u#1 ← (byte) rem8u#15 + (byte) div8u::return#0 ← (byte~) div8u::$0 to:div8u::@return div8u::@return: scope:[div8u] from div8u::@2 - (byte) rem8u#16 ? phi( div8u::@2/(byte) rem8u#1 ) - (byte) div8u::return#4 ? phi( div8u::@2/(byte) div8u::return#0 ) - (byte) div8u::return#1 ? (byte) div8u::return#4 - (byte) rem8u#2 ? (byte) rem8u#16 + (byte) rem8u#16 ← phi( div8u::@2/(byte) rem8u#1 ) + (byte) div8u::return#4 ← phi( div8u::@2/(byte) div8u::return#0 ) + (byte) div8u::return#1 ← (byte) div8u::return#4 + (byte) rem8u#2 ← (byte) rem8u#16 return to:@return divr8u: scope:[divr8u] from div8u - (byte) divr8u::divisor#5 ? phi( div8u/(byte) divr8u::divisor#0 ) - (byte) divr8u::dividend#4 ? phi( div8u/(byte) divr8u::dividend#0 ) - (byte) divr8u::rem#9 ? phi( div8u/(byte) divr8u::rem#0 ) - (byte) divr8u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr8u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr8u::divisor#5 ← phi( div8u/(byte) divr8u::divisor#0 ) + (byte) divr8u::dividend#4 ← phi( div8u/(byte) divr8u::dividend#0 ) + (byte) divr8u::rem#9 ← phi( div8u/(byte) divr8u::rem#0 ) + (byte) divr8u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr8u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr8u::@1 divr8u::@1: scope:[divr8u] from divr8u divr8u::@3 - (byte) divr8u::i#5 ? phi( divr8u/(byte) divr8u::i#0 divr8u::@3/(byte) divr8u::i#1 ) - (byte) divr8u::divisor#3 ? phi( divr8u/(byte) divr8u::divisor#5 divr8u::@3/(byte) divr8u::divisor#6 ) - (byte) divr8u::quotient#6 ? phi( divr8u/(byte) divr8u::quotient#0 divr8u::@3/(byte) divr8u::quotient#8 ) - (byte) divr8u::dividend#2 ? phi( divr8u/(byte) divr8u::dividend#4 divr8u::@3/(byte) divr8u::dividend#5 ) - (byte) divr8u::rem#4 ? phi( divr8u/(byte) divr8u::rem#9 divr8u::@3/(byte) divr8u::rem#10 ) - (byte~) divr8u::$0 ? (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) divr8u::rem#1 ? (byte~) divr8u::$0 - (byte~) divr8u::$1 ? (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr8u::$2 ? (byte~) divr8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr8u::$3 ? ! (bool~) divr8u::$2 + (byte) divr8u::i#5 ← phi( divr8u/(byte) divr8u::i#0 divr8u::@3/(byte) divr8u::i#1 ) + (byte) divr8u::divisor#3 ← phi( divr8u/(byte) divr8u::divisor#5 divr8u::@3/(byte) divr8u::divisor#6 ) + (byte) divr8u::quotient#6 ← phi( divr8u/(byte) divr8u::quotient#0 divr8u::@3/(byte) divr8u::quotient#8 ) + (byte) divr8u::dividend#2 ← phi( divr8u/(byte) divr8u::dividend#4 divr8u::@3/(byte) divr8u::dividend#5 ) + (byte) divr8u::rem#4 ← phi( divr8u/(byte) divr8u::rem#9 divr8u::@3/(byte) divr8u::rem#10 ) + (byte~) divr8u::$0 ← (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) divr8u::rem#1 ← (byte~) divr8u::$0 + (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr8u::$2 ← (byte~) divr8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr8u::$3 ← ! (bool~) divr8u::$2 if((bool~) divr8u::$3) goto divr8u::@2 to:divr8u::@4 divr8u::@2: scope:[divr8u] from divr8u::@1 divr8u::@4 - (byte) divr8u::i#3 ? phi( divr8u::@1/(byte) divr8u::i#5 divr8u::@4/(byte) divr8u::i#6 ) - (byte) divr8u::divisor#1 ? phi( divr8u::@1/(byte) divr8u::divisor#3 divr8u::@4/(byte) divr8u::divisor#4 ) - (byte) divr8u::rem#5 ? phi( divr8u::@1/(byte) divr8u::rem#1 divr8u::@4/(byte) divr8u::rem#2 ) - (byte) divr8u::quotient#3 ? phi( divr8u::@1/(byte) divr8u::quotient#6 divr8u::@4/(byte) divr8u::quotient#7 ) - (byte) divr8u::dividend#3 ? phi( divr8u::@1/(byte) divr8u::dividend#2 divr8u::@4/(byte) divr8u::dividend#6 ) - (byte~) divr8u::$5 ? (byte) divr8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) divr8u::dividend#1 ? (byte~) divr8u::$5 - (byte~) divr8u::$6 ? (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) divr8u::quotient#1 ? (byte~) divr8u::$6 - (bool~) divr8u::$7 ? (byte) divr8u::rem#5 >= (byte) divr8u::divisor#1 - (bool~) divr8u::$8 ? ! (bool~) divr8u::$7 + (byte) divr8u::i#3 ← phi( divr8u::@1/(byte) divr8u::i#5 divr8u::@4/(byte) divr8u::i#6 ) + (byte) divr8u::divisor#1 ← phi( divr8u::@1/(byte) divr8u::divisor#3 divr8u::@4/(byte) divr8u::divisor#4 ) + (byte) divr8u::rem#5 ← phi( divr8u::@1/(byte) divr8u::rem#1 divr8u::@4/(byte) divr8u::rem#2 ) + (byte) divr8u::quotient#3 ← phi( divr8u::@1/(byte) divr8u::quotient#6 divr8u::@4/(byte) divr8u::quotient#7 ) + (byte) divr8u::dividend#3 ← phi( divr8u::@1/(byte) divr8u::dividend#2 divr8u::@4/(byte) divr8u::dividend#6 ) + (byte~) divr8u::$5 ← (byte) divr8u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) divr8u::dividend#1 ← (byte~) divr8u::$5 + (byte~) divr8u::$6 ← (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) divr8u::quotient#1 ← (byte~) divr8u::$6 + (bool~) divr8u::$7 ← (byte) divr8u::rem#5 >= (byte) divr8u::divisor#1 + (bool~) divr8u::$8 ← ! (bool~) divr8u::$7 if((bool~) divr8u::$8) goto divr8u::@3 to:divr8u::@5 divr8u::@4: scope:[divr8u] from divr8u::@1 - (byte) divr8u::i#6 ? phi( divr8u::@1/(byte) divr8u::i#5 ) - (byte) divr8u::divisor#4 ? phi( divr8u::@1/(byte) divr8u::divisor#3 ) - (byte) divr8u::quotient#7 ? phi( divr8u::@1/(byte) divr8u::quotient#6 ) - (byte) divr8u::dividend#6 ? phi( divr8u::@1/(byte) divr8u::dividend#2 ) - (byte) divr8u::rem#6 ? phi( divr8u::@1/(byte) divr8u::rem#1 ) - (byte/word/dword~) divr8u::$4 ? (byte) divr8u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) divr8u::rem#2 ? (byte/word/dword~) divr8u::$4 + (byte) divr8u::i#6 ← phi( divr8u::@1/(byte) divr8u::i#5 ) + (byte) divr8u::divisor#4 ← phi( divr8u::@1/(byte) divr8u::divisor#3 ) + (byte) divr8u::quotient#7 ← phi( divr8u::@1/(byte) divr8u::quotient#6 ) + (byte) divr8u::dividend#6 ← phi( divr8u::@1/(byte) divr8u::dividend#2 ) + (byte) divr8u::rem#6 ← phi( divr8u::@1/(byte) divr8u::rem#1 ) + (byte/word/dword~) divr8u::$4 ← (byte) divr8u::rem#6 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) divr8u::rem#2 ← (byte/word/dword~) divr8u::$4 to:divr8u::@2 divr8u::@3: scope:[divr8u] from divr8u::@2 divr8u::@5 - (byte) divr8u::divisor#6 ? phi( divr8u::@2/(byte) divr8u::divisor#1 divr8u::@5/(byte) divr8u::divisor#2 ) - (byte) divr8u::quotient#8 ? phi( divr8u::@2/(byte) divr8u::quotient#1 divr8u::@5/(byte) divr8u::quotient#2 ) - (byte) divr8u::dividend#5 ? phi( divr8u::@2/(byte) divr8u::dividend#1 divr8u::@5/(byte) divr8u::dividend#7 ) - (byte) divr8u::rem#10 ? phi( divr8u::@2/(byte) divr8u::rem#5 divr8u::@5/(byte) divr8u::rem#3 ) - (byte) divr8u::i#2 ? phi( divr8u::@2/(byte) divr8u::i#3 divr8u::@5/(byte) divr8u::i#4 ) - (byte) divr8u::i#1 ? (byte) divr8u::i#2 + rangenext(0,7) - (bool~) divr8u::$10 ? (byte) divr8u::i#1 != rangelast(0,7) + (byte) divr8u::divisor#6 ← phi( divr8u::@2/(byte) divr8u::divisor#1 divr8u::@5/(byte) divr8u::divisor#2 ) + (byte) divr8u::quotient#8 ← phi( divr8u::@2/(byte) divr8u::quotient#1 divr8u::@5/(byte) divr8u::quotient#2 ) + (byte) divr8u::dividend#5 ← phi( divr8u::@2/(byte) divr8u::dividend#1 divr8u::@5/(byte) divr8u::dividend#7 ) + (byte) divr8u::rem#10 ← phi( divr8u::@2/(byte) divr8u::rem#5 divr8u::@5/(byte) divr8u::rem#3 ) + (byte) divr8u::i#2 ← phi( divr8u::@2/(byte) divr8u::i#3 divr8u::@5/(byte) divr8u::i#4 ) + (byte) divr8u::i#1 ← (byte) divr8u::i#2 + rangenext(0,7) + (bool~) divr8u::$10 ← (byte) divr8u::i#1 != rangelast(0,7) if((bool~) divr8u::$10) goto divr8u::@1 to:divr8u::@6 divr8u::@5: scope:[divr8u] from divr8u::@2 - (byte) divr8u::dividend#7 ? phi( divr8u::@2/(byte) divr8u::dividend#1 ) - (byte) divr8u::i#4 ? phi( divr8u::@2/(byte) divr8u::i#3 ) - (byte) divr8u::divisor#2 ? phi( divr8u::@2/(byte) divr8u::divisor#1 ) - (byte) divr8u::rem#7 ? phi( divr8u::@2/(byte) divr8u::rem#5 ) - (byte) divr8u::quotient#4 ? phi( divr8u::@2/(byte) divr8u::quotient#1 ) - (byte) divr8u::quotient#2 ? ++ (byte) divr8u::quotient#4 - (byte~) divr8u::$9 ? (byte) divr8u::rem#7 - (byte) divr8u::divisor#2 - (byte) divr8u::rem#3 ? (byte~) divr8u::$9 + (byte) divr8u::dividend#7 ← phi( divr8u::@2/(byte) divr8u::dividend#1 ) + (byte) divr8u::i#4 ← phi( divr8u::@2/(byte) divr8u::i#3 ) + (byte) divr8u::divisor#2 ← phi( divr8u::@2/(byte) divr8u::divisor#1 ) + (byte) divr8u::rem#7 ← phi( divr8u::@2/(byte) divr8u::rem#5 ) + (byte) divr8u::quotient#4 ← phi( divr8u::@2/(byte) divr8u::quotient#1 ) + (byte) divr8u::quotient#2 ← ++ (byte) divr8u::quotient#4 + (byte~) divr8u::$9 ← (byte) divr8u::rem#7 - (byte) divr8u::divisor#2 + (byte) divr8u::rem#3 ← (byte~) divr8u::$9 to:divr8u::@3 divr8u::@6: scope:[divr8u] from divr8u::@3 - (byte) divr8u::quotient#5 ? phi( divr8u::@3/(byte) divr8u::quotient#8 ) - (byte) divr8u::rem#8 ? phi( divr8u::@3/(byte) divr8u::rem#10 ) - (byte) rem8u#3 ? (byte) divr8u::rem#8 - (byte) divr8u::return#1 ? (byte) divr8u::quotient#5 + (byte) divr8u::quotient#5 ← phi( divr8u::@3/(byte) divr8u::quotient#8 ) + (byte) divr8u::rem#8 ← phi( divr8u::@3/(byte) divr8u::rem#10 ) + (byte) rem8u#3 ← (byte) divr8u::rem#8 + (byte) divr8u::return#1 ← (byte) divr8u::quotient#5 to:divr8u::@return divr8u::@return: scope:[divr8u] from divr8u::@6 - (byte) rem8u#17 ? phi( divr8u::@6/(byte) rem8u#3 ) - (byte) divr8u::return#4 ? phi( divr8u::@6/(byte) divr8u::return#1 ) - (byte) divr8u::return#2 ? (byte) divr8u::return#4 - (byte) rem8u#4 ? (byte) rem8u#17 + (byte) rem8u#17 ← phi( divr8u::@6/(byte) rem8u#3 ) + (byte) divr8u::return#4 ← phi( divr8u::@6/(byte) divr8u::return#1 ) + (byte) divr8u::return#2 ← (byte) divr8u::return#4 + (byte) rem8u#4 ← (byte) rem8u#17 return to:@return @21: scope:[] from @19 - (byte*) print_screen#8 ? phi( @19/(byte*) print_screen#9 ) - (byte) rem8u#55 ? phi( @19/(byte) rem8u#0 ) - (byte*) print_char_cursor#156 ? phi( @19/(byte*) print_char_cursor#157 ) - (byte*) print_line_cursor#56 ? phi( @19/(byte*) print_line_cursor#61 ) - (word) rem16u#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_screen#8 ← phi( @19/(byte*) print_screen#9 ) + (byte) rem8u#55 ← phi( @19/(byte) rem8u#0 ) + (byte*) print_char_cursor#156 ← phi( @19/(byte*) print_char_cursor#157 ) + (byte*) print_line_cursor#56 ← phi( @19/(byte*) print_line_cursor#61 ) + (word) rem16u#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@24 divr16u: scope:[divr16u] from div16u divr16s::@4 - (word) divr16u::divisor#6 ? phi( div16u/(word) divr16u::divisor#0 divr16s::@4/(word) divr16u::divisor#1 ) - (word) divr16u::dividend#5 ? phi( div16u/(word) divr16u::dividend#1 divr16s::@4/(word) divr16u::dividend#2 ) - (word) divr16u::rem#10 ? phi( div16u/(word) divr16u::rem#3 divr16s::@4/(word) divr16u::rem#4 ) - (word) divr16u::quotient#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) divr16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16u::divisor#6 ← phi( div16u/(word) divr16u::divisor#0 divr16s::@4/(word) divr16u::divisor#1 ) + (word) divr16u::dividend#5 ← phi( div16u/(word) divr16u::dividend#1 divr16s::@4/(word) divr16u::dividend#2 ) + (word) divr16u::rem#10 ← phi( div16u/(word) divr16u::rem#3 divr16s::@4/(word) divr16u::rem#4 ) + (word) divr16u::quotient#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - (byte) divr16u::i#5 ? phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) - (word) divr16u::divisor#4 ? phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) - (word) divr16u::quotient#6 ? phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) - (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - (word~) divr16u::$0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#0 ? (word~) divr16u::$0 - (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 - (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16u::$4 ? ! (bool~) divr16u::$3 + (byte) divr16u::i#5 ← phi( divr16u/(byte) divr16u::i#0 divr16u::@3/(byte) divr16u::i#1 ) + (word) divr16u::divisor#4 ← phi( divr16u/(word) divr16u::divisor#6 divr16u::@3/(word) divr16u::divisor#7 ) + (word) divr16u::quotient#6 ← phi( divr16u/(word) divr16u::quotient#0 divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#6 ) + (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + (word~) divr16u::$0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#0 ← (word~) divr16u::$0 + (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16u::$4 ← ! (bool~) divr16u::$3 if((bool~) divr16u::$4) goto divr16u::@2 to:divr16u::@4 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - (byte) divr16u::i#3 ? phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) - (word) divr16u::divisor#2 ? phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) - (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - (word) divr16u::quotient#3 ? phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) - (word) divr16u::dividend#4 ? phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) - (word~) divr16u::$6 ? (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::dividend#0 ? (word~) divr16u::$6 - (word~) divr16u::$7 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::quotient#1 ? (word~) divr16u::$7 - (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 - (bool~) divr16u::$9 ? ! (bool~) divr16u::$8 + (byte) divr16u::i#3 ← phi( divr16u::@1/(byte) divr16u::i#5 divr16u::@4/(byte) divr16u::i#6 ) + (word) divr16u::divisor#2 ← phi( divr16u::@1/(word) divr16u::divisor#4 divr16u::@4/(word) divr16u::divisor#5 ) + (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + (word) divr16u::quotient#3 ← phi( divr16u::@1/(word) divr16u::quotient#6 divr16u::@4/(word) divr16u::quotient#7 ) + (word) divr16u::dividend#4 ← phi( divr16u::@1/(word) divr16u::dividend#3 divr16u::@4/(word) divr16u::dividend#7 ) + (word~) divr16u::$6 ← (word) divr16u::dividend#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::dividend#0 ← (word~) divr16u::$6 + (word~) divr16u::$7 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::quotient#1 ← (word~) divr16u::$7 + (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 + (bool~) divr16u::$9 ← ! (bool~) divr16u::$8 if((bool~) divr16u::$9) goto divr16u::@3 to:divr16u::@5 divr16u::@4: scope:[divr16u] from divr16u::@1 - (byte) divr16u::i#6 ? phi( divr16u::@1/(byte) divr16u::i#5 ) - (word) divr16u::divisor#5 ? phi( divr16u::@1/(word) divr16u::divisor#4 ) - (word) divr16u::quotient#7 ? phi( divr16u::@1/(word) divr16u::quotient#6 ) - (word) divr16u::dividend#7 ? phi( divr16u::@1/(word) divr16u::dividend#3 ) - (word) divr16u::rem#7 ? phi( divr16u::@1/(word) divr16u::rem#0 ) - (word/dword~) divr16u::$5 ? (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) divr16u::rem#1 ? (word/dword~) divr16u::$5 + (byte) divr16u::i#6 ← phi( divr16u::@1/(byte) divr16u::i#5 ) + (word) divr16u::divisor#5 ← phi( divr16u::@1/(word) divr16u::divisor#4 ) + (word) divr16u::quotient#7 ← phi( divr16u::@1/(word) divr16u::quotient#6 ) + (word) divr16u::dividend#7 ← phi( divr16u::@1/(word) divr16u::dividend#3 ) + (word) divr16u::rem#7 ← phi( divr16u::@1/(word) divr16u::rem#0 ) + (word/dword~) divr16u::$5 ← (word) divr16u::rem#7 | (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) divr16u::rem#1 ← (word/dword~) divr16u::$5 to:divr16u::@2 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - (word) divr16u::divisor#7 ? phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) - (word) divr16u::quotient#8 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - (word) divr16u::dividend#6 ? phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) - (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - (byte) divr16u::i#2 ? phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) - (byte) divr16u::i#1 ? (byte) divr16u::i#2 + rangenext(0,$f) - (bool~) divr16u::$11 ? (byte) divr16u::i#1 != rangelast(0,$f) + (word) divr16u::divisor#7 ← phi( divr16u::@2/(word) divr16u::divisor#2 divr16u::@5/(word) divr16u::divisor#3 ) + (word) divr16u::quotient#8 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + (word) divr16u::dividend#6 ← phi( divr16u::@2/(word) divr16u::dividend#0 divr16u::@5/(word) divr16u::dividend#8 ) + (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + (byte) divr16u::i#2 ← phi( divr16u::@2/(byte) divr16u::i#3 divr16u::@5/(byte) divr16u::i#4 ) + (byte) divr16u::i#1 ← (byte) divr16u::i#2 + rangenext(0,$f) + (bool~) divr16u::$11 ← (byte) divr16u::i#1 != rangelast(0,$f) if((bool~) divr16u::$11) goto divr16u::@1 to:divr16u::@6 divr16u::@5: scope:[divr16u] from divr16u::@2 - (word) divr16u::dividend#8 ? phi( divr16u::@2/(word) divr16u::dividend#0 ) - (byte) divr16u::i#4 ? phi( divr16u::@2/(byte) divr16u::i#3 ) - (word) divr16u::divisor#3 ? phi( divr16u::@2/(word) divr16u::divisor#2 ) - (word) divr16u::rem#8 ? phi( divr16u::@2/(word) divr16u::rem#6 ) - (word) divr16u::quotient#4 ? phi( divr16u::@2/(word) divr16u::quotient#1 ) - (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#4 - (word~) divr16u::$10 ? (word) divr16u::rem#8 - (word) divr16u::divisor#3 - (word) divr16u::rem#2 ? (word~) divr16u::$10 + (word) divr16u::dividend#8 ← phi( divr16u::@2/(word) divr16u::dividend#0 ) + (byte) divr16u::i#4 ← phi( divr16u::@2/(byte) divr16u::i#3 ) + (word) divr16u::divisor#3 ← phi( divr16u::@2/(word) divr16u::divisor#2 ) + (word) divr16u::rem#8 ← phi( divr16u::@2/(word) divr16u::rem#6 ) + (word) divr16u::quotient#4 ← phi( divr16u::@2/(word) divr16u::quotient#1 ) + (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#4 + (word~) divr16u::$10 ← (word) divr16u::rem#8 - (word) divr16u::divisor#3 + (word) divr16u::rem#2 ← (word~) divr16u::$10 to:divr16u::@3 divr16u::@6: scope:[divr16u] from divr16u::@3 - (word) divr16u::quotient#5 ? phi( divr16u::@3/(word) divr16u::quotient#8 ) - (word) divr16u::rem#9 ? phi( divr16u::@3/(word) divr16u::rem#11 ) - (word) rem16u#1 ? (word) divr16u::rem#9 - (word) divr16u::return#0 ? (word) divr16u::quotient#5 + (word) divr16u::quotient#5 ← phi( divr16u::@3/(word) divr16u::quotient#8 ) + (word) divr16u::rem#9 ← phi( divr16u::@3/(word) divr16u::rem#11 ) + (word) rem16u#1 ← (word) divr16u::rem#9 + (word) divr16u::return#0 ← (word) divr16u::quotient#5 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 - (word) rem16u#17 ? phi( divr16u::@6/(word) rem16u#1 ) - (word) divr16u::return#4 ? phi( divr16u::@6/(word) divr16u::return#0 ) - (word) divr16u::return#1 ? (word) divr16u::return#4 - (word) rem16u#2 ? (word) rem16u#17 + (word) rem16u#17 ← phi( divr16u::@6/(word) rem16u#1 ) + (word) divr16u::return#4 ← phi( divr16u::@6/(word) divr16u::return#0 ) + (word) divr16u::return#1 ← (word) divr16u::return#4 + (word) rem16u#2 ← (word) rem16u#17 return to:@return div16u: scope:[div16u] from test_16u::@1 - (word) rem16u#35 ? phi( test_16u::@1/(word) rem16u#40 ) - (word) div16u::divisor#1 ? phi( test_16u::@1/(word) div16u::divisor#0 ) - (word) div16u::dividend#1 ? phi( test_16u::@1/(word) div16u::dividend#0 ) - (word) divr16u::dividend#1 ? (word) div16u::dividend#1 - (word) divr16u::divisor#0 ? (word) div16u::divisor#1 - (word) divr16u::rem#3 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#35 ← phi( test_16u::@1/(word) rem16u#40 ) + (word) div16u::divisor#1 ← phi( test_16u::@1/(word) div16u::divisor#0 ) + (word) div16u::dividend#1 ← phi( test_16u::@1/(word) div16u::dividend#0 ) + (word) divr16u::dividend#1 ← (word) div16u::dividend#1 + (word) divr16u::divisor#0 ← (word) div16u::divisor#1 + (word) divr16u::rem#3 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16u - (word) divr16u::return#2 ? (word) divr16u::return#1 + (word) divr16u::return#2 ← (word) divr16u::return#1 to:div16u::@2 div16u::@2: scope:[div16u] from div16u - (word) rem16u#18 ? phi( div16u/(word) rem16u#2 ) - (word) divr16u::return#5 ? phi( div16u/(word) divr16u::return#2 ) - (word~) div16u::$0 ? (word) divr16u::return#5 - (word) rem16u#3 ? (word) rem16u#18 - (word) div16u::return#0 ? (word~) div16u::$0 + (word) rem16u#18 ← phi( div16u/(word) rem16u#2 ) + (word) divr16u::return#5 ← phi( div16u/(word) divr16u::return#2 ) + (word~) div16u::$0 ← (word) divr16u::return#5 + (word) rem16u#3 ← (word) rem16u#18 + (word) div16u::return#0 ← (word~) div16u::$0 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@2 - (word) rem16u#19 ? phi( div16u::@2/(word) rem16u#3 ) - (word) div16u::return#3 ? phi( div16u::@2/(word) div16u::return#0 ) - (word) div16u::return#1 ? (word) div16u::return#3 - (word) rem16u#4 ? (word) rem16u#19 + (word) rem16u#19 ← phi( div16u::@2/(word) rem16u#3 ) + (word) div16u::return#3 ← phi( div16u::@2/(word) div16u::return#0 ) + (word) div16u::return#1 ← (word) div16u::return#3 + (word) rem16u#4 ← (word) rem16u#19 return to:@return @24: scope:[] from @21 - (byte*) print_screen#7 ? phi( @21/(byte*) print_screen#8 ) - (word) rem16u#55 ? phi( @21/(word) rem16u#0 ) - (byte) rem8u#52 ? phi( @21/(byte) rem8u#55 ) - (byte*) print_char_cursor#151 ? phi( @21/(byte*) print_char_cursor#156 ) - (byte*) print_line_cursor#51 ? phi( @21/(byte*) print_line_cursor#56 ) - (signed byte) rem8s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_screen#7 ← phi( @21/(byte*) print_screen#8 ) + (word) rem16u#55 ← phi( @21/(word) rem16u#0 ) + (byte) rem8u#52 ← phi( @21/(byte) rem8u#55 ) + (byte*) print_char_cursor#151 ← phi( @21/(byte*) print_char_cursor#156 ) + (byte*) print_line_cursor#51 ← phi( @21/(byte*) print_line_cursor#56 ) + (signed byte) rem8s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@25 div8s: scope:[div8s] from test_8s::@1 - (byte) rem8u#60 ? phi( test_8s::@1/(byte) rem8u#39 ) - (signed byte) div8s::divisor#6 ? phi( test_8s::@1/(signed byte) div8s::divisor#0 ) - (signed byte) div8s::dividend#1 ? phi( test_8s::@1/(signed byte) div8s::dividend#0 ) - (byte) div8s::neg#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) div8s::dividendu#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) div8s::$0 ? (signed byte) div8s::dividend#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#60 ← phi( test_8s::@1/(byte) rem8u#39 ) + (signed byte) div8s::divisor#6 ← phi( test_8s::@1/(signed byte) div8s::divisor#0 ) + (signed byte) div8s::dividend#1 ← phi( test_8s::@1/(signed byte) div8s::dividend#0 ) + (byte) div8s::neg#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) div8s::dividendu#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) div8s::$0 ← (signed byte) div8s::dividend#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) div8s::$0) goto div8s::@1 to:div8s::@7 div8s::@1: scope:[div8s] from div8s - (byte) rem8u#56 ? phi( div8s/(byte) rem8u#60 ) - (signed byte) div8s::divisor#4 ? phi( div8s/(signed byte) div8s::divisor#6 ) - (signed byte) div8s::dividend#2 ? phi( div8s/(signed byte) div8s::dividend#1 ) - (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#2 - (byte~) div8s::$6 ? ((byte)) (signed byte~) div8s::$5 - (byte) div8s::dividendu#1 ? (byte~) div8s::$6 - (byte) div8s::neg#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) rem8u#56 ← phi( div8s/(byte) rem8u#60 ) + (signed byte) div8s::divisor#4 ← phi( div8s/(signed byte) div8s::divisor#6 ) + (signed byte) div8s::dividend#2 ← phi( div8s/(signed byte) div8s::dividend#1 ) + (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#2 + (byte~) div8s::$6 ← ((byte)) (signed byte~) div8s::$5 + (byte) div8s::dividendu#1 ← (byte~) div8s::$6 + (byte) div8s::neg#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:div8s::@2 div8s::@7: scope:[div8s] from div8s - (byte) rem8u#57 ? phi( div8s/(byte) rem8u#60 ) - (byte) div8s::neg#7 ? phi( div8s/(byte) div8s::neg#0 ) - (signed byte) div8s::divisor#5 ? phi( div8s/(signed byte) div8s::divisor#6 ) - (signed byte) div8s::dividend#3 ? phi( div8s/(signed byte) div8s::dividend#1 ) - (byte~) div8s::$4 ? ((byte)) (signed byte) div8s::dividend#3 - (byte) div8s::dividendu#2 ? (byte~) div8s::$4 + (byte) rem8u#57 ← phi( div8s/(byte) rem8u#60 ) + (byte) div8s::neg#7 ← phi( div8s/(byte) div8s::neg#0 ) + (signed byte) div8s::divisor#5 ← phi( div8s/(signed byte) div8s::divisor#6 ) + (signed byte) div8s::dividend#3 ← phi( div8s/(signed byte) div8s::dividend#1 ) + (byte~) div8s::$4 ← ((byte)) (signed byte) div8s::dividend#3 + (byte) div8s::dividendu#2 ← (byte~) div8s::$4 to:div8s::@2 div8s::@2: scope:[div8s] from div8s::@1 div8s::@7 - (byte) rem8u#51 ? phi( div8s::@1/(byte) rem8u#56 div8s::@7/(byte) rem8u#57 ) - (byte) div8s::dividendu#6 ? phi( div8s::@1/(byte) div8s::dividendu#1 div8s::@7/(byte) div8s::dividendu#2 ) - (byte) div8s::neg#5 ? phi( div8s::@1/(byte) div8s::neg#1 div8s::@7/(byte) div8s::neg#7 ) - (signed byte) div8s::divisor#1 ? phi( div8s::@1/(signed byte) div8s::divisor#4 div8s::@7/(signed byte) div8s::divisor#5 ) - (byte) div8s::divisoru#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) div8s::$1 ? (signed byte) div8s::divisor#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) rem8u#51 ← phi( div8s::@1/(byte) rem8u#56 div8s::@7/(byte) rem8u#57 ) + (byte) div8s::dividendu#6 ← phi( div8s::@1/(byte) div8s::dividendu#1 div8s::@7/(byte) div8s::dividendu#2 ) + (byte) div8s::neg#5 ← phi( div8s::@1/(byte) div8s::neg#1 div8s::@7/(byte) div8s::neg#7 ) + (signed byte) div8s::divisor#1 ← phi( div8s::@1/(signed byte) div8s::divisor#4 div8s::@7/(signed byte) div8s::divisor#5 ) + (byte) div8s::divisoru#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) div8s::$1 ← (signed byte) div8s::divisor#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) div8s::$1) goto div8s::@3 to:div8s::@9 div8s::@3: scope:[div8s] from div8s::@2 - (byte) rem8u#42 ? phi( div8s::@2/(byte) rem8u#51 ) - (byte) div8s::dividendu#4 ? phi( div8s::@2/(byte) div8s::dividendu#6 ) - (byte) div8s::neg#3 ? phi( div8s::@2/(byte) div8s::neg#5 ) - (signed byte) div8s::divisor#2 ? phi( div8s::@2/(signed byte) div8s::divisor#1 ) - (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#2 - (byte~) div8s::$9 ? ((byte)) (signed byte~) div8s::$8 - (byte) div8s::divisoru#1 ? (byte~) div8s::$9 - (byte/word/dword~) div8s::$10 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) div8s::neg#2 ? (byte/word/dword~) div8s::$10 + (byte) rem8u#42 ← phi( div8s::@2/(byte) rem8u#51 ) + (byte) div8s::dividendu#4 ← phi( div8s::@2/(byte) div8s::dividendu#6 ) + (byte) div8s::neg#3 ← phi( div8s::@2/(byte) div8s::neg#5 ) + (signed byte) div8s::divisor#2 ← phi( div8s::@2/(signed byte) div8s::divisor#1 ) + (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#2 + (byte~) div8s::$9 ← ((byte)) (signed byte~) div8s::$8 + (byte) div8s::divisoru#1 ← (byte~) div8s::$9 + (byte/word/dword~) div8s::$10 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) div8s::neg#2 ← (byte/word/dword~) div8s::$10 to:div8s::@4 div8s::@9: scope:[div8s] from div8s::@2 - (byte) div8s::neg#8 ? phi( div8s::@2/(byte) div8s::neg#5 ) - (byte) rem8u#43 ? phi( div8s::@2/(byte) rem8u#51 ) - (byte) div8s::dividendu#5 ? phi( div8s::@2/(byte) div8s::dividendu#6 ) - (signed byte) div8s::divisor#3 ? phi( div8s::@2/(signed byte) div8s::divisor#1 ) - (byte~) div8s::$7 ? ((byte)) (signed byte) div8s::divisor#3 - (byte) div8s::divisoru#2 ? (byte~) div8s::$7 + (byte) div8s::neg#8 ← phi( div8s::@2/(byte) div8s::neg#5 ) + (byte) rem8u#43 ← phi( div8s::@2/(byte) rem8u#51 ) + (byte) div8s::dividendu#5 ← phi( div8s::@2/(byte) div8s::dividendu#6 ) + (signed byte) div8s::divisor#3 ← phi( div8s::@2/(signed byte) div8s::divisor#1 ) + (byte~) div8s::$7 ← ((byte)) (signed byte) div8s::divisor#3 + (byte) div8s::divisoru#2 ← (byte~) div8s::$7 to:div8s::@4 div8s::@4: scope:[div8s] from div8s::@3 div8s::@9 - (byte) div8s::neg#6 ? phi( div8s::@3/(byte) div8s::neg#2 div8s::@9/(byte) div8s::neg#8 ) - (byte) rem8u#32 ? phi( div8s::@3/(byte) rem8u#42 div8s::@9/(byte) rem8u#43 ) - (byte) div8s::divisoru#3 ? phi( div8s::@3/(byte) div8s::divisoru#1 div8s::@9/(byte) div8s::divisoru#2 ) - (byte) div8s::dividendu#3 ? phi( div8s::@3/(byte) div8s::dividendu#4 div8s::@9/(byte) div8s::dividendu#5 ) - (byte) div8u::dividend#0 ? (byte) div8s::dividendu#3 - (byte) div8u::divisor#0 ? (byte) div8s::divisoru#3 + (byte) div8s::neg#6 ← phi( div8s::@3/(byte) div8s::neg#2 div8s::@9/(byte) div8s::neg#8 ) + (byte) rem8u#32 ← phi( div8s::@3/(byte) rem8u#42 div8s::@9/(byte) rem8u#43 ) + (byte) div8s::divisoru#3 ← phi( div8s::@3/(byte) div8s::divisoru#1 div8s::@9/(byte) div8s::divisoru#2 ) + (byte) div8s::dividendu#3 ← phi( div8s::@3/(byte) div8s::dividendu#4 div8s::@9/(byte) div8s::dividendu#5 ) + (byte) div8u::dividend#0 ← (byte) div8s::dividendu#3 + (byte) div8u::divisor#0 ← (byte) div8s::divisoru#3 call div8u - (byte) div8u::return#2 ? (byte) div8u::return#1 + (byte) div8u::return#2 ← (byte) div8u::return#1 to:div8s::@15 div8s::@15: scope:[div8s] from div8s::@4 - (byte) div8s::neg#4 ? phi( div8s::@4/(byte) div8s::neg#6 ) - (byte) rem8u#18 ? phi( div8s::@4/(byte) rem8u#2 ) - (byte) div8u::return#5 ? phi( div8s::@4/(byte) div8u::return#2 ) - (byte~) div8s::$2 ? (byte) div8u::return#5 - (byte) rem8u#5 ? (byte) rem8u#18 - (byte) div8s::resultu#0 ? (byte~) div8s::$2 - (bool~) div8s::$3 ? (byte) div8s::neg#4 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) div8s::neg#4 ← phi( div8s::@4/(byte) div8s::neg#6 ) + (byte) rem8u#18 ← phi( div8s::@4/(byte) rem8u#2 ) + (byte) div8u::return#5 ← phi( div8s::@4/(byte) div8u::return#2 ) + (byte~) div8s::$2 ← (byte) div8u::return#5 + (byte) rem8u#5 ← (byte) rem8u#18 + (byte) div8s::resultu#0 ← (byte~) div8s::$2 + (bool~) div8s::$3 ← (byte) div8s::neg#4 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) div8s::$3) goto div8s::@5 to:div8s::@11 div8s::@5: scope:[div8s] from div8s::@15 - (byte) div8s::resultu#1 ? phi( div8s::@15/(byte) div8s::resultu#0 ) - (byte) rem8u#19 ? phi( div8s::@15/(byte) rem8u#5 ) - (signed byte~) div8s::$15 ? ((signed byte)) (byte) rem8u#19 - (signed byte) rem8s#1 ? (signed byte~) div8s::$15 - (signed byte~) div8s::$16 ? ((signed byte)) (byte) div8s::resultu#1 - (signed byte) div8s::return#0 ? (signed byte~) div8s::$16 + (byte) div8s::resultu#1 ← phi( div8s::@15/(byte) div8s::resultu#0 ) + (byte) rem8u#19 ← phi( div8s::@15/(byte) rem8u#5 ) + (signed byte~) div8s::$15 ← ((signed byte)) (byte) rem8u#19 + (signed byte) rem8s#1 ← (signed byte~) div8s::$15 + (signed byte~) div8s::$16 ← ((signed byte)) (byte) div8s::resultu#1 + (signed byte) div8s::return#0 ← (signed byte~) div8s::$16 to:div8s::@return div8s::@11: scope:[div8s] from div8s::@15 - (byte) div8s::resultu#2 ? phi( div8s::@15/(byte) div8s::resultu#0 ) - (byte) rem8u#20 ? phi( div8s::@15/(byte) rem8u#5 ) - (signed byte~) div8s::$11 ? ((signed byte)) (byte) rem8u#20 - (signed byte~) div8s::$12 ? - (signed byte~) div8s::$11 - (signed byte) rem8s#2 ? (signed byte~) div8s::$12 - (signed byte~) div8s::$13 ? ((signed byte)) (byte) div8s::resultu#2 - (signed byte~) div8s::$14 ? - (signed byte~) div8s::$13 - (signed byte) div8s::return#1 ? (signed byte~) div8s::$14 + (byte) div8s::resultu#2 ← phi( div8s::@15/(byte) div8s::resultu#0 ) + (byte) rem8u#20 ← phi( div8s::@15/(byte) rem8u#5 ) + (signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u#20 + (signed byte~) div8s::$12 ← - (signed byte~) div8s::$11 + (signed byte) rem8s#2 ← (signed byte~) div8s::$12 + (signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu#2 + (signed byte~) div8s::$14 ← - (signed byte~) div8s::$13 + (signed byte) div8s::return#1 ← (signed byte~) div8s::$14 to:div8s::@return div8s::@return: scope:[div8s] from div8s::@11 div8s::@5 - (signed byte) rem8s#9 ? phi( div8s::@11/(signed byte) rem8s#2 div8s::@5/(signed byte) rem8s#1 ) - (byte) rem8u#21 ? phi( div8s::@11/(byte) rem8u#20 div8s::@5/(byte) rem8u#19 ) - (signed byte) div8s::return#4 ? phi( div8s::@11/(signed byte) div8s::return#1 div8s::@5/(signed byte) div8s::return#0 ) - (signed byte) div8s::return#2 ? (signed byte) div8s::return#4 - (byte) rem8u#6 ? (byte) rem8u#21 - (signed byte) rem8s#3 ? (signed byte) rem8s#9 + (signed byte) rem8s#9 ← phi( div8s::@11/(signed byte) rem8s#2 div8s::@5/(signed byte) rem8s#1 ) + (byte) rem8u#21 ← phi( div8s::@11/(byte) rem8u#20 div8s::@5/(byte) rem8u#19 ) + (signed byte) div8s::return#4 ← phi( div8s::@11/(signed byte) div8s::return#1 div8s::@5/(signed byte) div8s::return#0 ) + (signed byte) div8s::return#2 ← (signed byte) div8s::return#4 + (byte) rem8u#6 ← (byte) rem8u#21 + (signed byte) rem8s#3 ← (signed byte) rem8s#9 return to:@return @25: scope:[] from @24 - (byte*) print_screen#6 ? phi( @24/(byte*) print_screen#7 ) - (signed byte) rem8s#26 ? phi( @24/(signed byte) rem8s#0 ) - (word) rem16u#54 ? phi( @24/(word) rem16u#55 ) - (byte) rem8u#50 ? phi( @24/(byte) rem8u#52 ) - (byte*) print_char_cursor#150 ? phi( @24/(byte*) print_char_cursor#151 ) - (byte*) print_line_cursor#50 ? phi( @24/(byte*) print_line_cursor#51 ) - (signed word) rem16s#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_screen#6 ← phi( @24/(byte*) print_screen#7 ) + (signed byte) rem8s#26 ← phi( @24/(signed byte) rem8s#0 ) + (word) rem16u#54 ← phi( @24/(word) rem16u#55 ) + (byte) rem8u#50 ← phi( @24/(byte) rem8u#52 ) + (byte*) print_char_cursor#150 ← phi( @24/(byte*) print_char_cursor#151 ) + (byte*) print_line_cursor#50 ← phi( @24/(byte*) print_line_cursor#51 ) + (signed word) rem16s#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:@32 divr16s: scope:[divr16s] from div16s - (word) rem16u#64 ? phi( div16s/(word) rem16u#37 ) - (signed word) divr16s::divisor#6 ? phi( div16s/(signed word) divr16s::divisor#0 ) - (signed word) divr16s::rem#1 ? phi( div16s/(signed word) divr16s::rem#0 ) - (signed word) divr16s::dividend#1 ? phi( div16s/(signed word) divr16s::dividend#0 ) - (byte) divr16s::neg#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) divr16s::dividendu#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) divr16s::remu#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$0 ? (signed word) divr16s::dividend#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$1 ? (signed word) divr16s::rem#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$2 ? (bool~) divr16s::$0 || (bool~) divr16s::$1 + (word) rem16u#64 ← phi( div16s/(word) rem16u#37 ) + (signed word) divr16s::divisor#6 ← phi( div16s/(signed word) divr16s::divisor#0 ) + (signed word) divr16s::rem#1 ← phi( div16s/(signed word) divr16s::rem#0 ) + (signed word) divr16s::dividend#1 ← phi( div16s/(signed word) divr16s::dividend#0 ) + (byte) divr16s::neg#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16s::dividendu#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) divr16s::remu#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$0 ← (signed word) divr16s::dividend#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$1 ← (signed word) divr16s::rem#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$2 ← (bool~) divr16s::$0 || (bool~) divr16s::$1 if((bool~) divr16s::$2) goto divr16s::@1 to:divr16s::@7 divr16s::@1: scope:[divr16s] from divr16s - (word) rem16u#60 ? phi( divr16s/(word) rem16u#64 ) - (signed word) divr16s::divisor#4 ? phi( divr16s/(signed word) divr16s::divisor#6 ) - (signed word) divr16s::rem#2 ? phi( divr16s/(signed word) divr16s::rem#1 ) - (signed word) divr16s::dividend#2 ? phi( divr16s/(signed word) divr16s::dividend#1 ) - (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#2 - (word~) divr16s::$9 ? ((word)) (signed word~) divr16s::$8 - (word) divr16s::dividendu#1 ? (word~) divr16s::$9 - (signed word~) divr16s::$10 ? - (signed word) divr16s::rem#2 - (word~) divr16s::$11 ? ((word)) (signed word~) divr16s::$10 - (word) divr16s::remu#1 ? (word~) divr16s::$11 - (byte) divr16s::neg#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) rem16u#60 ← phi( divr16s/(word) rem16u#64 ) + (signed word) divr16s::divisor#4 ← phi( divr16s/(signed word) divr16s::divisor#6 ) + (signed word) divr16s::rem#2 ← phi( divr16s/(signed word) divr16s::rem#1 ) + (signed word) divr16s::dividend#2 ← phi( divr16s/(signed word) divr16s::dividend#1 ) + (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#2 + (word~) divr16s::$9 ← ((word)) (signed word~) divr16s::$8 + (word) divr16s::dividendu#1 ← (word~) divr16s::$9 + (signed word~) divr16s::$10 ← - (signed word) divr16s::rem#2 + (word~) divr16s::$11 ← ((word)) (signed word~) divr16s::$10 + (word) divr16s::remu#1 ← (word~) divr16s::$11 + (byte) divr16s::neg#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16s::@2 divr16s::@7: scope:[divr16s] from divr16s - (word) rem16u#61 ? phi( divr16s/(word) rem16u#64 ) - (byte) divr16s::neg#7 ? phi( divr16s/(byte) divr16s::neg#0 ) - (signed word) divr16s::divisor#5 ? phi( divr16s/(signed word) divr16s::divisor#6 ) - (signed word) divr16s::rem#3 ? phi( divr16s/(signed word) divr16s::rem#1 ) - (signed word) divr16s::dividend#3 ? phi( divr16s/(signed word) divr16s::dividend#1 ) - (word~) divr16s::$6 ? ((word)) (signed word) divr16s::dividend#3 - (word) divr16s::dividendu#2 ? (word~) divr16s::$6 - (word~) divr16s::$7 ? ((word)) (signed word) divr16s::rem#3 - (word) divr16s::remu#2 ? (word~) divr16s::$7 + (word) rem16u#61 ← phi( divr16s/(word) rem16u#64 ) + (byte) divr16s::neg#7 ← phi( divr16s/(byte) divr16s::neg#0 ) + (signed word) divr16s::divisor#5 ← phi( divr16s/(signed word) divr16s::divisor#6 ) + (signed word) divr16s::rem#3 ← phi( divr16s/(signed word) divr16s::rem#1 ) + (signed word) divr16s::dividend#3 ← phi( divr16s/(signed word) divr16s::dividend#1 ) + (word~) divr16s::$6 ← ((word)) (signed word) divr16s::dividend#3 + (word) divr16s::dividendu#2 ← (word~) divr16s::$6 + (word~) divr16s::$7 ← ((word)) (signed word) divr16s::rem#3 + (word) divr16s::remu#2 ← (word~) divr16s::$7 to:divr16s::@2 divr16s::@2: scope:[divr16s] from divr16s::@1 divr16s::@7 - (word) rem16u#56 ? phi( divr16s::@1/(word) rem16u#60 divr16s::@7/(word) rem16u#61 ) - (word) divr16s::remu#6 ? phi( divr16s::@1/(word) divr16s::remu#1 divr16s::@7/(word) divr16s::remu#2 ) - (word) divr16s::dividendu#6 ? phi( divr16s::@1/(word) divr16s::dividendu#1 divr16s::@7/(word) divr16s::dividendu#2 ) - (byte) divr16s::neg#5 ? phi( divr16s::@1/(byte) divr16s::neg#1 divr16s::@7/(byte) divr16s::neg#7 ) - (signed word) divr16s::divisor#1 ? phi( divr16s::@1/(signed word) divr16s::divisor#4 divr16s::@7/(signed word) divr16s::divisor#5 ) - (word) divr16s::divisoru#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) divr16s::$3 ? (signed word) divr16s::divisor#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) rem16u#56 ← phi( divr16s::@1/(word) rem16u#60 divr16s::@7/(word) rem16u#61 ) + (word) divr16s::remu#6 ← phi( divr16s::@1/(word) divr16s::remu#1 divr16s::@7/(word) divr16s::remu#2 ) + (word) divr16s::dividendu#6 ← phi( divr16s::@1/(word) divr16s::dividendu#1 divr16s::@7/(word) divr16s::dividendu#2 ) + (byte) divr16s::neg#5 ← phi( divr16s::@1/(byte) divr16s::neg#1 divr16s::@7/(byte) divr16s::neg#7 ) + (signed word) divr16s::divisor#1 ← phi( divr16s::@1/(signed word) divr16s::divisor#4 divr16s::@7/(signed word) divr16s::divisor#5 ) + (word) divr16s::divisoru#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) divr16s::$3 ← (signed word) divr16s::divisor#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) divr16s::$3) goto divr16s::@3 to:divr16s::@9 divr16s::@3: scope:[divr16s] from divr16s::@2 - (word) rem16u#46 ? phi( divr16s::@2/(word) rem16u#56 ) - (word) divr16s::remu#4 ? phi( divr16s::@2/(word) divr16s::remu#6 ) - (word) divr16s::dividendu#4 ? phi( divr16s::@2/(word) divr16s::dividendu#6 ) - (byte) divr16s::neg#3 ? phi( divr16s::@2/(byte) divr16s::neg#5 ) - (signed word) divr16s::divisor#2 ? phi( divr16s::@2/(signed word) divr16s::divisor#1 ) - (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#2 - (word~) divr16s::$14 ? ((word)) (signed word~) divr16s::$13 - (word) divr16s::divisoru#1 ? (word~) divr16s::$14 - (byte/word/dword~) divr16s::$15 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) divr16s::neg#2 ? (byte/word/dword~) divr16s::$15 + (word) rem16u#46 ← phi( divr16s::@2/(word) rem16u#56 ) + (word) divr16s::remu#4 ← phi( divr16s::@2/(word) divr16s::remu#6 ) + (word) divr16s::dividendu#4 ← phi( divr16s::@2/(word) divr16s::dividendu#6 ) + (byte) divr16s::neg#3 ← phi( divr16s::@2/(byte) divr16s::neg#5 ) + (signed word) divr16s::divisor#2 ← phi( divr16s::@2/(signed word) divr16s::divisor#1 ) + (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#2 + (word~) divr16s::$14 ← ((word)) (signed word~) divr16s::$13 + (word) divr16s::divisoru#1 ← (word~) divr16s::$14 + (byte/word/dword~) divr16s::$15 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) divr16s::neg#2 ← (byte/word/dword~) divr16s::$15 to:divr16s::@4 divr16s::@9: scope:[divr16s] from divr16s::@2 - (byte) divr16s::neg#8 ? phi( divr16s::@2/(byte) divr16s::neg#5 ) - (word) rem16u#47 ? phi( divr16s::@2/(word) rem16u#56 ) - (word) divr16s::remu#5 ? phi( divr16s::@2/(word) divr16s::remu#6 ) - (word) divr16s::dividendu#5 ? phi( divr16s::@2/(word) divr16s::dividendu#6 ) - (signed word) divr16s::divisor#3 ? phi( divr16s::@2/(signed word) divr16s::divisor#1 ) - (word~) divr16s::$12 ? ((word)) (signed word) divr16s::divisor#3 - (word) divr16s::divisoru#2 ? (word~) divr16s::$12 + (byte) divr16s::neg#8 ← phi( divr16s::@2/(byte) divr16s::neg#5 ) + (word) rem16u#47 ← phi( divr16s::@2/(word) rem16u#56 ) + (word) divr16s::remu#5 ← phi( divr16s::@2/(word) divr16s::remu#6 ) + (word) divr16s::dividendu#5 ← phi( divr16s::@2/(word) divr16s::dividendu#6 ) + (signed word) divr16s::divisor#3 ← phi( divr16s::@2/(signed word) divr16s::divisor#1 ) + (word~) divr16s::$12 ← ((word)) (signed word) divr16s::divisor#3 + (word) divr16s::divisoru#2 ← (word~) divr16s::$12 to:divr16s::@4 divr16s::@4: scope:[divr16s] from divr16s::@3 divr16s::@9 - (byte) divr16s::neg#6 ? phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@9/(byte) divr16s::neg#8 ) - (word) rem16u#36 ? phi( divr16s::@3/(word) rem16u#46 divr16s::@9/(word) rem16u#47 ) - (word) divr16s::remu#3 ? phi( divr16s::@3/(word) divr16s::remu#4 divr16s::@9/(word) divr16s::remu#5 ) - (word) divr16s::divisoru#3 ? phi( divr16s::@3/(word) divr16s::divisoru#1 divr16s::@9/(word) divr16s::divisoru#2 ) - (word) divr16s::dividendu#3 ? phi( divr16s::@3/(word) divr16s::dividendu#4 divr16s::@9/(word) divr16s::dividendu#5 ) - (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 - (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 - (word) divr16u::rem#4 ? (word) divr16s::remu#3 + (byte) divr16s::neg#6 ← phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@9/(byte) divr16s::neg#8 ) + (word) rem16u#36 ← phi( divr16s::@3/(word) rem16u#46 divr16s::@9/(word) rem16u#47 ) + (word) divr16s::remu#3 ← phi( divr16s::@3/(word) divr16s::remu#4 divr16s::@9/(word) divr16s::remu#5 ) + (word) divr16s::divisoru#3 ← phi( divr16s::@3/(word) divr16s::divisoru#1 divr16s::@9/(word) divr16s::divisoru#2 ) + (word) divr16s::dividendu#3 ← phi( divr16s::@3/(word) divr16s::dividendu#4 divr16s::@9/(word) divr16s::dividendu#5 ) + (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 + (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 + (word) divr16u::rem#4 ← (word) divr16s::remu#3 call divr16u - (word) divr16u::return#3 ? (word) divr16u::return#1 + (word) divr16u::return#3 ← (word) divr16u::return#1 to:divr16s::@15 divr16s::@15: scope:[divr16s] from divr16s::@4 - (byte) divr16s::neg#4 ? phi( divr16s::@4/(byte) divr16s::neg#6 ) - (word) rem16u#20 ? phi( divr16s::@4/(word) rem16u#2 ) - (word) divr16u::return#6 ? phi( divr16s::@4/(word) divr16u::return#3 ) - (word~) divr16s::$4 ? (word) divr16u::return#6 - (word) rem16u#5 ? (word) rem16u#20 - (word) divr16s::resultu#0 ? (word~) divr16s::$4 - (bool~) divr16s::$5 ? (byte) divr16s::neg#4 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) divr16s::neg#4 ← phi( divr16s::@4/(byte) divr16s::neg#6 ) + (word) rem16u#20 ← phi( divr16s::@4/(word) rem16u#2 ) + (word) divr16u::return#6 ← phi( divr16s::@4/(word) divr16u::return#3 ) + (word~) divr16s::$4 ← (word) divr16u::return#6 + (word) rem16u#5 ← (word) rem16u#20 + (word) divr16s::resultu#0 ← (word~) divr16s::$4 + (bool~) divr16s::$5 ← (byte) divr16s::neg#4 == (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) divr16s::$5) goto divr16s::@5 to:divr16s::@11 divr16s::@5: scope:[divr16s] from divr16s::@15 - (word) divr16s::resultu#1 ? phi( divr16s::@15/(word) divr16s::resultu#0 ) - (word) rem16u#21 ? phi( divr16s::@15/(word) rem16u#5 ) - (signed word~) divr16s::$20 ? ((signed word)) (word) rem16u#21 - (signed word) rem16s#1 ? (signed word~) divr16s::$20 - (signed word~) divr16s::$21 ? ((signed word)) (word) divr16s::resultu#1 - (signed word) divr16s::return#0 ? (signed word~) divr16s::$21 + (word) divr16s::resultu#1 ← phi( divr16s::@15/(word) divr16s::resultu#0 ) + (word) rem16u#21 ← phi( divr16s::@15/(word) rem16u#5 ) + (signed word~) divr16s::$20 ← ((signed word)) (word) rem16u#21 + (signed word) rem16s#1 ← (signed word~) divr16s::$20 + (signed word~) divr16s::$21 ← ((signed word)) (word) divr16s::resultu#1 + (signed word) divr16s::return#0 ← (signed word~) divr16s::$21 to:divr16s::@return divr16s::@11: scope:[divr16s] from divr16s::@15 - (word) divr16s::resultu#2 ? phi( divr16s::@15/(word) divr16s::resultu#0 ) - (word) rem16u#22 ? phi( divr16s::@15/(word) rem16u#5 ) - (signed word~) divr16s::$16 ? ((signed word)) (word) rem16u#22 - (signed word~) divr16s::$17 ? - (signed word~) divr16s::$16 - (signed word) rem16s#2 ? (signed word~) divr16s::$17 - (signed word~) divr16s::$18 ? ((signed word)) (word) divr16s::resultu#2 - (signed word~) divr16s::$19 ? - (signed word~) divr16s::$18 - (signed word) divr16s::return#1 ? (signed word~) divr16s::$19 + (word) divr16s::resultu#2 ← phi( divr16s::@15/(word) divr16s::resultu#0 ) + (word) rem16u#22 ← phi( divr16s::@15/(word) rem16u#5 ) + (signed word~) divr16s::$16 ← ((signed word)) (word) rem16u#22 + (signed word~) divr16s::$17 ← - (signed word~) divr16s::$16 + (signed word) rem16s#2 ← (signed word~) divr16s::$17 + (signed word~) divr16s::$18 ← ((signed word)) (word) divr16s::resultu#2 + (signed word~) divr16s::$19 ← - (signed word~) divr16s::$18 + (signed word) divr16s::return#1 ← (signed word~) divr16s::$19 to:divr16s::@return divr16s::@return: scope:[divr16s] from divr16s::@11 divr16s::@5 - (signed word) rem16s#11 ? phi( divr16s::@11/(signed word) rem16s#2 divr16s::@5/(signed word) rem16s#1 ) - (word) rem16u#23 ? phi( divr16s::@11/(word) rem16u#22 divr16s::@5/(word) rem16u#21 ) - (signed word) divr16s::return#4 ? phi( divr16s::@11/(signed word) divr16s::return#1 divr16s::@5/(signed word) divr16s::return#0 ) - (signed word) divr16s::return#2 ? (signed word) divr16s::return#4 - (word) rem16u#6 ? (word) rem16u#23 - (signed word) rem16s#3 ? (signed word) rem16s#11 + (signed word) rem16s#11 ← phi( divr16s::@11/(signed word) rem16s#2 divr16s::@5/(signed word) rem16s#1 ) + (word) rem16u#23 ← phi( divr16s::@11/(word) rem16u#22 divr16s::@5/(word) rem16u#21 ) + (signed word) divr16s::return#4 ← phi( divr16s::@11/(signed word) divr16s::return#1 divr16s::@5/(signed word) divr16s::return#0 ) + (signed word) divr16s::return#2 ← (signed word) divr16s::return#4 + (word) rem16u#6 ← (word) rem16u#23 + (signed word) rem16s#3 ← (signed word) rem16s#11 return to:@return div16s: scope:[div16s] from test_16s::@1 - (signed word) rem16s#20 ? phi( test_16s::@1/(signed word) rem16s#22 ) - (word) rem16u#37 ? phi( test_16s::@1/(word) rem16u#43 ) - (signed word) div16s::divisor#1 ? phi( test_16s::@1/(signed word) div16s::divisor#0 ) - (signed word) div16s::dividend#1 ? phi( test_16s::@1/(signed word) div16s::dividend#0 ) - (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#1 - (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#1 - (signed word) divr16s::rem#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) rem16s#20 ← phi( test_16s::@1/(signed word) rem16s#22 ) + (word) rem16u#37 ← phi( test_16s::@1/(word) rem16u#43 ) + (signed word) div16s::divisor#1 ← phi( test_16s::@1/(signed word) div16s::divisor#0 ) + (signed word) div16s::dividend#1 ← phi( test_16s::@1/(signed word) div16s::dividend#0 ) + (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#1 + (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#1 + (signed word) divr16s::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 call divr16s - (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 to:div16s::@2 div16s::@2: scope:[div16s] from div16s - (signed word) rem16s#12 ? phi( div16s/(signed word) rem16s#3 ) - (word) rem16u#24 ? phi( div16s/(word) rem16u#6 ) - (signed word) divr16s::return#5 ? phi( div16s/(signed word) divr16s::return#3 ) - (signed word~) div16s::$0 ? (signed word) divr16s::return#5 - (word) rem16u#7 ? (word) rem16u#24 - (signed word) rem16s#4 ? (signed word) rem16s#12 - (signed word) div16s::return#0 ? (signed word~) div16s::$0 + (signed word) rem16s#12 ← phi( div16s/(signed word) rem16s#3 ) + (word) rem16u#24 ← phi( div16s/(word) rem16u#6 ) + (signed word) divr16s::return#5 ← phi( div16s/(signed word) divr16s::return#3 ) + (signed word~) div16s::$0 ← (signed word) divr16s::return#5 + (word) rem16u#7 ← (word) rem16u#24 + (signed word) rem16s#4 ← (signed word) rem16s#12 + (signed word) div16s::return#0 ← (signed word~) div16s::$0 to:div16s::@return div16s::@return: scope:[div16s] from div16s::@2 - (signed word) rem16s#13 ? phi( div16s::@2/(signed word) rem16s#4 ) - (word) rem16u#25 ? phi( div16s::@2/(word) rem16u#7 ) - (signed word) div16s::return#3 ? phi( div16s::@2/(signed word) div16s::return#0 ) - (signed word) div16s::return#1 ? (signed word) div16s::return#3 - (word) rem16u#8 ? (word) rem16u#25 - (signed word) rem16s#5 ? (signed word) rem16s#13 + (signed word) rem16s#13 ← phi( div16s::@2/(signed word) rem16s#4 ) + (word) rem16u#25 ← phi( div16s::@2/(word) rem16u#7 ) + (signed word) div16s::return#3 ← phi( div16s::@2/(signed word) div16s::return#0 ) + (signed word) div16s::return#1 ← (signed word) div16s::return#3 + (word) rem16u#8 ← (word) rem16u#25 + (signed word) rem16s#5 ← (signed word) rem16s#13 return to:@return main: scope:[main] from @32 - (signed word) rem16s#34 ? phi( @32/(signed word) rem16s#25 ) - (signed byte) rem8s#29 ? phi( @32/(signed byte) rem8s#21 ) - (word) rem16u#57 ? phi( @32/(word) rem16u#45 ) - (byte) rem8u#44 ? phi( @32/(byte) rem8u#41 ) - (byte*) print_char_cursor#137 ? phi( @32/(byte*) print_char_cursor#142 ) - (byte*) print_line_cursor#40 ? phi( @32/(byte*) print_line_cursor#45 ) - (byte*) print_screen#4 ? phi( @32/(byte*) print_screen#5 ) + (signed word) rem16s#34 ← phi( @32/(signed word) rem16s#25 ) + (signed byte) rem8s#29 ← phi( @32/(signed byte) rem8s#21 ) + (word) rem16u#57 ← phi( @32/(word) rem16u#45 ) + (byte) rem8u#44 ← phi( @32/(byte) rem8u#41 ) + (byte*) print_char_cursor#137 ← phi( @32/(byte*) print_char_cursor#142 ) + (byte*) print_line_cursor#40 ← phi( @32/(byte*) print_line_cursor#45 ) + (byte*) print_screen#4 ← phi( @32/(byte*) print_screen#5 ) call print_cls to:main::@1 main::@1: scope:[main] from main - (signed word) rem16s#32 ? phi( main/(signed word) rem16s#34 ) - (signed byte) rem8s#27 ? phi( main/(signed byte) rem8s#29 ) - (word) rem16u#48 ? phi( main/(word) rem16u#57 ) - (byte) rem8u#33 ? phi( main/(byte) rem8u#44 ) - (byte*) print_char_cursor#85 ? phi( main/(byte*) print_char_cursor#21 ) - (byte*) print_line_cursor#24 ? phi( main/(byte*) print_line_cursor#4 ) - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#24 - (byte*) print_char_cursor#22 ? (byte*) print_char_cursor#85 + (signed word) rem16s#32 ← phi( main/(signed word) rem16s#34 ) + (signed byte) rem8s#27 ← phi( main/(signed byte) rem8s#29 ) + (word) rem16u#48 ← phi( main/(word) rem16u#57 ) + (byte) rem8u#33 ← phi( main/(byte) rem8u#44 ) + (byte*) print_char_cursor#85 ← phi( main/(byte*) print_char_cursor#21 ) + (byte*) print_line_cursor#24 ← phi( main/(byte*) print_line_cursor#4 ) + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#24 + (byte*) print_char_cursor#22 ← (byte*) print_char_cursor#85 call test_8u to:main::@2 main::@2: scope:[main] from main::@1 - (signed word) rem16s#30 ? phi( main::@1/(signed word) rem16s#32 ) - (signed byte) rem8s#22 ? phi( main::@1/(signed byte) rem8s#27 ) - (word) rem16u#38 ? phi( main::@1/(word) rem16u#48 ) - (byte*) print_line_cursor#25 ? phi( main::@1/(byte*) print_line_cursor#12 ) - (byte*) print_char_cursor#86 ? phi( main::@1/(byte*) print_char_cursor#36 ) - (byte) rem8u#22 ? phi( main::@1/(byte) rem8u#11 ) - (byte) rem8u#7 ? (byte) rem8u#22 - (byte*) print_char_cursor#23 ? (byte*) print_char_cursor#86 - (byte*) print_line_cursor#6 ? (byte*) print_line_cursor#25 + (signed word) rem16s#30 ← phi( main::@1/(signed word) rem16s#32 ) + (signed byte) rem8s#22 ← phi( main::@1/(signed byte) rem8s#27 ) + (word) rem16u#38 ← phi( main::@1/(word) rem16u#48 ) + (byte*) print_line_cursor#25 ← phi( main::@1/(byte*) print_line_cursor#12 ) + (byte*) print_char_cursor#86 ← phi( main::@1/(byte*) print_char_cursor#36 ) + (byte) rem8u#22 ← phi( main::@1/(byte) rem8u#11 ) + (byte) rem8u#7 ← (byte) rem8u#22 + (byte*) print_char_cursor#23 ← (byte*) print_char_cursor#86 + (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#25 call test_16u to:main::@3 main::@3: scope:[main] from main::@2 - (signed word) rem16s#26 ? phi( main::@2/(signed word) rem16s#30 ) - (signed byte) rem8s#16 ? phi( main::@2/(signed byte) rem8s#22 ) - (byte) rem8u#34 ? phi( main::@2/(byte) rem8u#7 ) - (byte*) print_line_cursor#26 ? phi( main::@2/(byte*) print_line_cursor#14 ) - (byte*) print_char_cursor#87 ? phi( main::@2/(byte*) print_char_cursor#45 ) - (word) rem16u#26 ? phi( main::@2/(word) rem16u#13 ) - (word) rem16u#9 ? (word) rem16u#26 - (byte*) print_char_cursor#24 ? (byte*) print_char_cursor#87 - (byte*) print_line_cursor#7 ? (byte*) print_line_cursor#26 + (signed word) rem16s#26 ← phi( main::@2/(signed word) rem16s#30 ) + (signed byte) rem8s#16 ← phi( main::@2/(signed byte) rem8s#22 ) + (byte) rem8u#34 ← phi( main::@2/(byte) rem8u#7 ) + (byte*) print_line_cursor#26 ← phi( main::@2/(byte*) print_line_cursor#14 ) + (byte*) print_char_cursor#87 ← phi( main::@2/(byte*) print_char_cursor#45 ) + (word) rem16u#26 ← phi( main::@2/(word) rem16u#13 ) + (word) rem16u#9 ← (word) rem16u#26 + (byte*) print_char_cursor#24 ← (byte*) print_char_cursor#87 + (byte*) print_line_cursor#7 ← (byte*) print_line_cursor#26 call test_8s to:main::@4 main::@4: scope:[main] from main::@3 - (signed word) rem16s#21 ? phi( main::@3/(signed word) rem16s#26 ) - (word) rem16u#39 ? phi( main::@3/(word) rem16u#9 ) - (byte*) print_line_cursor#27 ? phi( main::@3/(byte*) print_line_cursor#16 ) - (byte*) print_char_cursor#88 ? phi( main::@3/(byte*) print_char_cursor#54 ) - (signed byte) rem8s#10 ? phi( main::@3/(signed byte) rem8s#7 ) - (byte) rem8u#23 ? phi( main::@3/(byte) rem8u#13 ) - (byte) rem8u#8 ? (byte) rem8u#23 - (signed byte) rem8s#4 ? (signed byte) rem8s#10 - (byte*) print_char_cursor#25 ? (byte*) print_char_cursor#88 - (byte*) print_line_cursor#8 ? (byte*) print_line_cursor#27 + (signed word) rem16s#21 ← phi( main::@3/(signed word) rem16s#26 ) + (word) rem16u#39 ← phi( main::@3/(word) rem16u#9 ) + (byte*) print_line_cursor#27 ← phi( main::@3/(byte*) print_line_cursor#16 ) + (byte*) print_char_cursor#88 ← phi( main::@3/(byte*) print_char_cursor#54 ) + (signed byte) rem8s#10 ← phi( main::@3/(signed byte) rem8s#7 ) + (byte) rem8u#23 ← phi( main::@3/(byte) rem8u#13 ) + (byte) rem8u#8 ← (byte) rem8u#23 + (signed byte) rem8s#4 ← (signed byte) rem8s#10 + (byte*) print_char_cursor#25 ← (byte*) print_char_cursor#88 + (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#27 call test_16s to:main::@5 main::@5: scope:[main] from main::@4 - (signed byte) rem8s#17 ? phi( main::@4/(signed byte) rem8s#4 ) - (byte) rem8u#35 ? phi( main::@4/(byte) rem8u#8 ) - (byte*) print_line_cursor#28 ? phi( main::@4/(byte*) print_line_cursor#18 ) - (byte*) print_char_cursor#89 ? phi( main::@4/(byte*) print_char_cursor#63 ) - (signed word) rem16s#14 ? phi( main::@4/(signed word) rem16s#9 ) - (word) rem16u#27 ? phi( main::@4/(word) rem16u#15 ) - (word) rem16u#10 ? (word) rem16u#27 - (signed word) rem16s#6 ? (signed word) rem16s#14 - (byte*) print_char_cursor#26 ? (byte*) print_char_cursor#89 - (byte*) print_line_cursor#9 ? (byte*) print_line_cursor#28 + (signed byte) rem8s#17 ← phi( main::@4/(signed byte) rem8s#4 ) + (byte) rem8u#35 ← phi( main::@4/(byte) rem8u#8 ) + (byte*) print_line_cursor#28 ← phi( main::@4/(byte*) print_line_cursor#18 ) + (byte*) print_char_cursor#89 ← phi( main::@4/(byte*) print_char_cursor#63 ) + (signed word) rem16s#14 ← phi( main::@4/(signed word) rem16s#9 ) + (word) rem16u#27 ← phi( main::@4/(word) rem16u#15 ) + (word) rem16u#10 ← (word) rem16u#27 + (signed word) rem16s#6 ← (signed word) rem16s#14 + (byte*) print_char_cursor#26 ← (byte*) print_char_cursor#89 + (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#28 to:main::@return main::@return: scope:[main] from main::@5 - (signed word) rem16s#15 ? phi( main::@5/(signed word) rem16s#6 ) - (signed byte) rem8s#11 ? phi( main::@5/(signed byte) rem8s#17 ) - (word) rem16u#28 ? phi( main::@5/(word) rem16u#10 ) - (byte) rem8u#24 ? phi( main::@5/(byte) rem8u#35 ) - (byte*) print_char_cursor#90 ? phi( main::@5/(byte*) print_char_cursor#26 ) - (byte*) print_line_cursor#29 ? phi( main::@5/(byte*) print_line_cursor#9 ) - (byte*) print_line_cursor#10 ? (byte*) print_line_cursor#29 - (byte*) print_char_cursor#27 ? (byte*) print_char_cursor#90 - (byte) rem8u#9 ? (byte) rem8u#24 - (word) rem16u#11 ? (word) rem16u#28 - (signed byte) rem8s#5 ? (signed byte) rem8s#11 - (signed word) rem16s#7 ? (signed word) rem16s#15 + (signed word) rem16s#15 ← phi( main::@5/(signed word) rem16s#6 ) + (signed byte) rem8s#11 ← phi( main::@5/(signed byte) rem8s#17 ) + (word) rem16u#28 ← phi( main::@5/(word) rem16u#10 ) + (byte) rem8u#24 ← phi( main::@5/(byte) rem8u#35 ) + (byte*) print_char_cursor#90 ← phi( main::@5/(byte*) print_char_cursor#26 ) + (byte*) print_line_cursor#29 ← phi( main::@5/(byte*) print_line_cursor#9 ) + (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#29 + (byte*) print_char_cursor#27 ← (byte*) print_char_cursor#90 + (byte) rem8u#9 ← (byte) rem8u#24 + (word) rem16u#11 ← (word) rem16u#28 + (signed byte) rem8s#5 ← (signed byte) rem8s#11 + (signed word) rem16s#7 ← (signed word) rem16s#15 return to:@return test_8u: scope:[test_8u] from main::@1 - (byte*) print_line_cursor#83 ? phi( main::@1/(byte*) print_line_cursor#5 ) - (byte*) print_char_cursor#152 ? phi( main::@1/(byte*) print_char_cursor#22 ) - (byte) rem8u#45 ? phi( main::@1/(byte) rem8u#33 ) - (byte[]) test_8u::dividends#0 ? { (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff } - (byte[]) test_8u::divisors#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $13 } - (byte) test_8u::rem#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) test_8u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#83 ← phi( main::@1/(byte*) print_line_cursor#5 ) + (byte*) print_char_cursor#152 ← phi( main::@1/(byte*) print_char_cursor#22 ) + (byte) rem8u#45 ← phi( main::@1/(byte) rem8u#33 ) + (byte[]) test_8u::dividends#0 ← { (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff, (byte/word/signed word/dword/signed dword) $ff } + (byte[]) test_8u::divisors#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $13 } + (byte) test_8u::rem#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) test_8u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:test_8u::@1 test_8u::@1: scope:[test_8u] from test_8u test_8u::@11 - (byte*) print_line_cursor#79 ? phi( test_8u/(byte*) print_line_cursor#83 test_8u::@11/(byte*) print_line_cursor#11 ) - (byte*) print_char_cursor#146 ? phi( test_8u/(byte*) print_char_cursor#152 test_8u::@11/(byte*) print_char_cursor#35 ) - (byte) rem8u#36 ? phi( test_8u/(byte) rem8u#45 test_8u::@11/(byte) rem8u#38 ) - (byte) test_8u::i#2 ? phi( test_8u/(byte) test_8u::i#0 test_8u::@11/(byte) test_8u::i#1 ) - (byte) test_8u::dividend#0 ? *((byte[]) test_8u::dividends#0 + (byte) test_8u::i#2) - (byte) test_8u::divisor#0 ? *((byte[]) test_8u::divisors#0 + (byte) test_8u::i#2) - (byte) div8u::dividend#1 ? (byte) test_8u::dividend#0 - (byte) div8u::divisor#1 ? (byte) test_8u::divisor#0 + (byte*) print_line_cursor#79 ← phi( test_8u/(byte*) print_line_cursor#83 test_8u::@11/(byte*) print_line_cursor#11 ) + (byte*) print_char_cursor#146 ← phi( test_8u/(byte*) print_char_cursor#152 test_8u::@11/(byte*) print_char_cursor#35 ) + (byte) rem8u#36 ← phi( test_8u/(byte) rem8u#45 test_8u::@11/(byte) rem8u#38 ) + (byte) test_8u::i#2 ← phi( test_8u/(byte) test_8u::i#0 test_8u::@11/(byte) test_8u::i#1 ) + (byte) test_8u::dividend#0 ← *((byte[]) test_8u::dividends#0 + (byte) test_8u::i#2) + (byte) test_8u::divisor#0 ← *((byte[]) test_8u::divisors#0 + (byte) test_8u::i#2) + (byte) div8u::dividend#1 ← (byte) test_8u::dividend#0 + (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 call div8u - (byte) div8u::return#3 ? (byte) div8u::return#1 + (byte) div8u::return#3 ← (byte) div8u::return#1 to:test_8u::@3 test_8u::@3: scope:[test_8u] from test_8u::@1 - (byte) test_8u::i#11 ? phi( test_8u::@1/(byte) test_8u::i#2 ) - (byte*) print_line_cursor#75 ? phi( test_8u::@1/(byte*) print_line_cursor#79 ) - (byte) test_8u::divisor#3 ? phi( test_8u::@1/(byte) test_8u::divisor#0 ) - (byte*) print_char_cursor#138 ? phi( test_8u::@1/(byte*) print_char_cursor#146 ) - (byte) test_8u::dividend#1 ? phi( test_8u::@1/(byte) test_8u::dividend#0 ) - (byte) rem8u#25 ? phi( test_8u::@1/(byte) rem8u#2 ) - (byte) div8u::return#6 ? phi( test_8u::@1/(byte) div8u::return#3 ) - (byte~) test_8u::$0 ? (byte) div8u::return#6 - (byte) rem8u#10 ? (byte) rem8u#25 - (byte) test_8u::res#0 ? (byte~) test_8u::$0 - (byte) print_byte::b#3 ? (byte) test_8u::dividend#1 + (byte) test_8u::i#11 ← phi( test_8u::@1/(byte) test_8u::i#2 ) + (byte*) print_line_cursor#75 ← phi( test_8u::@1/(byte*) print_line_cursor#79 ) + (byte) test_8u::divisor#3 ← phi( test_8u::@1/(byte) test_8u::divisor#0 ) + (byte*) print_char_cursor#138 ← phi( test_8u::@1/(byte*) print_char_cursor#146 ) + (byte) test_8u::dividend#1 ← phi( test_8u::@1/(byte) test_8u::dividend#0 ) + (byte) rem8u#25 ← phi( test_8u::@1/(byte) rem8u#2 ) + (byte) div8u::return#6 ← phi( test_8u::@1/(byte) div8u::return#3 ) + (byte~) test_8u::$0 ← (byte) div8u::return#6 + (byte) rem8u#10 ← (byte) rem8u#25 + (byte) test_8u::res#0 ← (byte~) test_8u::$0 + (byte) print_byte::b#3 ← (byte) test_8u::dividend#1 call print_byte to:test_8u::@4 test_8u::@4: scope:[test_8u] from test_8u::@3 - (byte) test_8u::i#10 ? phi( test_8u::@3/(byte) test_8u::i#11 ) - (byte*) print_line_cursor#71 ? phi( test_8u::@3/(byte*) print_line_cursor#75 ) - (byte) rem8u#61 ? phi( test_8u::@3/(byte) rem8u#10 ) - (byte) test_8u::res#4 ? phi( test_8u::@3/(byte) test_8u::res#0 ) - (byte) test_8u::divisor#2 ? phi( test_8u::@3/(byte) test_8u::divisor#3 ) - (byte*) print_char_cursor#91 ? phi( test_8u::@3/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#28 ? (byte*) print_char_cursor#91 - (byte*) print_str::str#1 ? (const string) test_8u::str + (byte) test_8u::i#10 ← phi( test_8u::@3/(byte) test_8u::i#11 ) + (byte*) print_line_cursor#71 ← phi( test_8u::@3/(byte*) print_line_cursor#75 ) + (byte) rem8u#61 ← phi( test_8u::@3/(byte) rem8u#10 ) + (byte) test_8u::res#4 ← phi( test_8u::@3/(byte) test_8u::res#0 ) + (byte) test_8u::divisor#2 ← phi( test_8u::@3/(byte) test_8u::divisor#3 ) + (byte*) print_char_cursor#91 ← phi( test_8u::@3/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#28 ← (byte*) print_char_cursor#91 + (byte*) print_str::str#1 ← (const string) test_8u::str call print_str to:test_8u::@5 test_8u::@5: scope:[test_8u] from test_8u::@4 - (byte) test_8u::i#9 ? phi( test_8u::@4/(byte) test_8u::i#10 ) - (byte*) print_line_cursor#67 ? phi( test_8u::@4/(byte*) print_line_cursor#71 ) - (byte) rem8u#58 ? phi( test_8u::@4/(byte) rem8u#61 ) - (byte) test_8u::res#3 ? phi( test_8u::@4/(byte) test_8u::res#4 ) - (byte) test_8u::divisor#1 ? phi( test_8u::@4/(byte) test_8u::divisor#2 ) - (byte*) print_char_cursor#92 ? phi( test_8u::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#29 ? (byte*) print_char_cursor#92 - (byte) print_byte::b#4 ? (byte) test_8u::divisor#1 + (byte) test_8u::i#9 ← phi( test_8u::@4/(byte) test_8u::i#10 ) + (byte*) print_line_cursor#67 ← phi( test_8u::@4/(byte*) print_line_cursor#71 ) + (byte) rem8u#58 ← phi( test_8u::@4/(byte) rem8u#61 ) + (byte) test_8u::res#3 ← phi( test_8u::@4/(byte) test_8u::res#4 ) + (byte) test_8u::divisor#1 ← phi( test_8u::@4/(byte) test_8u::divisor#2 ) + (byte*) print_char_cursor#92 ← phi( test_8u::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#29 ← (byte*) print_char_cursor#92 + (byte) print_byte::b#4 ← (byte) test_8u::divisor#1 call print_byte to:test_8u::@6 test_8u::@6: scope:[test_8u] from test_8u::@5 - (byte) test_8u::i#8 ? phi( test_8u::@5/(byte) test_8u::i#9 ) - (byte*) print_line_cursor#62 ? phi( test_8u::@5/(byte*) print_line_cursor#67 ) - (byte) rem8u#53 ? phi( test_8u::@5/(byte) rem8u#58 ) - (byte) test_8u::res#2 ? phi( test_8u::@5/(byte) test_8u::res#3 ) - (byte*) print_char_cursor#93 ? phi( test_8u::@5/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#30 ? (byte*) print_char_cursor#93 - (byte*) print_str::str#2 ? (const string) test_8u::str1 + (byte) test_8u::i#8 ← phi( test_8u::@5/(byte) test_8u::i#9 ) + (byte*) print_line_cursor#62 ← phi( test_8u::@5/(byte*) print_line_cursor#67 ) + (byte) rem8u#53 ← phi( test_8u::@5/(byte) rem8u#58 ) + (byte) test_8u::res#2 ← phi( test_8u::@5/(byte) test_8u::res#3 ) + (byte*) print_char_cursor#93 ← phi( test_8u::@5/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#30 ← (byte*) print_char_cursor#93 + (byte*) print_str::str#2 ← (const string) test_8u::str1 call print_str to:test_8u::@7 test_8u::@7: scope:[test_8u] from test_8u::@6 - (byte) test_8u::i#7 ? phi( test_8u::@6/(byte) test_8u::i#8 ) - (byte*) print_line_cursor#57 ? phi( test_8u::@6/(byte*) print_line_cursor#62 ) - (byte) rem8u#46 ? phi( test_8u::@6/(byte) rem8u#53 ) - (byte) test_8u::res#1 ? phi( test_8u::@6/(byte) test_8u::res#2 ) - (byte*) print_char_cursor#94 ? phi( test_8u::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#31 ? (byte*) print_char_cursor#94 - (byte) print_byte::b#5 ? (byte) test_8u::res#1 + (byte) test_8u::i#7 ← phi( test_8u::@6/(byte) test_8u::i#8 ) + (byte*) print_line_cursor#57 ← phi( test_8u::@6/(byte*) print_line_cursor#62 ) + (byte) rem8u#46 ← phi( test_8u::@6/(byte) rem8u#53 ) + (byte) test_8u::res#1 ← phi( test_8u::@6/(byte) test_8u::res#2 ) + (byte*) print_char_cursor#94 ← phi( test_8u::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#31 ← (byte*) print_char_cursor#94 + (byte) print_byte::b#5 ← (byte) test_8u::res#1 call print_byte to:test_8u::@8 test_8u::@8: scope:[test_8u] from test_8u::@7 - (byte) test_8u::i#6 ? phi( test_8u::@7/(byte) test_8u::i#7 ) - (byte*) print_line_cursor#52 ? phi( test_8u::@7/(byte*) print_line_cursor#57 ) - (byte) rem8u#37 ? phi( test_8u::@7/(byte) rem8u#46 ) - (byte*) print_char_cursor#95 ? phi( test_8u::@7/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#32 ? (byte*) print_char_cursor#95 - (byte*) print_str::str#3 ? (const string) test_8u::str2 + (byte) test_8u::i#6 ← phi( test_8u::@7/(byte) test_8u::i#7 ) + (byte*) print_line_cursor#52 ← phi( test_8u::@7/(byte*) print_line_cursor#57 ) + (byte) rem8u#37 ← phi( test_8u::@7/(byte) rem8u#46 ) + (byte*) print_char_cursor#95 ← phi( test_8u::@7/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#32 ← (byte*) print_char_cursor#95 + (byte*) print_str::str#3 ← (const string) test_8u::str2 call print_str to:test_8u::@9 test_8u::@9: scope:[test_8u] from test_8u::@8 - (byte) test_8u::i#5 ? phi( test_8u::@8/(byte) test_8u::i#6 ) - (byte*) print_line_cursor#46 ? phi( test_8u::@8/(byte*) print_line_cursor#52 ) - (byte) rem8u#26 ? phi( test_8u::@8/(byte) rem8u#37 ) - (byte*) print_char_cursor#96 ? phi( test_8u::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#33 ? (byte*) print_char_cursor#96 - (byte) print_byte::b#6 ? (byte) rem8u#26 + (byte) test_8u::i#5 ← phi( test_8u::@8/(byte) test_8u::i#6 ) + (byte*) print_line_cursor#46 ← phi( test_8u::@8/(byte*) print_line_cursor#52 ) + (byte) rem8u#26 ← phi( test_8u::@8/(byte) rem8u#37 ) + (byte*) print_char_cursor#96 ← phi( test_8u::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#33 ← (byte*) print_char_cursor#96 + (byte) print_byte::b#6 ← (byte) rem8u#26 call print_byte to:test_8u::@10 test_8u::@10: scope:[test_8u] from test_8u::@9 - (byte) rem8u#47 ? phi( test_8u::@9/(byte) rem8u#26 ) - (byte) test_8u::i#4 ? phi( test_8u::@9/(byte) test_8u::i#5 ) - (byte*) print_line_cursor#41 ? phi( test_8u::@9/(byte*) print_line_cursor#46 ) - (byte*) print_char_cursor#97 ? phi( test_8u::@9/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#34 ? (byte*) print_char_cursor#97 + (byte) rem8u#47 ← phi( test_8u::@9/(byte) rem8u#26 ) + (byte) test_8u::i#4 ← phi( test_8u::@9/(byte) test_8u::i#5 ) + (byte*) print_line_cursor#41 ← phi( test_8u::@9/(byte*) print_line_cursor#46 ) + (byte*) print_char_cursor#97 ← phi( test_8u::@9/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#34 ← (byte*) print_char_cursor#97 call print_ln to:test_8u::@11 test_8u::@11: scope:[test_8u] from test_8u::@10 - (byte) rem8u#38 ? phi( test_8u::@10/(byte) rem8u#47 ) - (byte) test_8u::i#3 ? phi( test_8u::@10/(byte) test_8u::i#4 ) - (byte*) print_char_cursor#98 ? phi( test_8u::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#30 ? phi( test_8u::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#11 ? (byte*) print_line_cursor#30 - (byte*) print_char_cursor#35 ? (byte*) print_char_cursor#98 - (byte) test_8u::i#1 ? (byte) test_8u::i#3 + rangenext(0,5) - (bool~) test_8u::$9 ? (byte) test_8u::i#1 != rangelast(0,5) + (byte) rem8u#38 ← phi( test_8u::@10/(byte) rem8u#47 ) + (byte) test_8u::i#3 ← phi( test_8u::@10/(byte) test_8u::i#4 ) + (byte*) print_char_cursor#98 ← phi( test_8u::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#30 ← phi( test_8u::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#30 + (byte*) print_char_cursor#35 ← (byte*) print_char_cursor#98 + (byte) test_8u::i#1 ← (byte) test_8u::i#3 + rangenext(0,5) + (bool~) test_8u::$9 ← (byte) test_8u::i#1 != rangelast(0,5) if((bool~) test_8u::$9) goto test_8u::@1 to:test_8u::@return test_8u::@return: scope:[test_8u] from test_8u::@11 - (byte*) print_line_cursor#31 ? phi( test_8u::@11/(byte*) print_line_cursor#11 ) - (byte*) print_char_cursor#99 ? phi( test_8u::@11/(byte*) print_char_cursor#35 ) - (byte) rem8u#27 ? phi( test_8u::@11/(byte) rem8u#38 ) - (byte) rem8u#11 ? (byte) rem8u#27 - (byte*) print_char_cursor#36 ? (byte*) print_char_cursor#99 - (byte*) print_line_cursor#12 ? (byte*) print_line_cursor#31 + (byte*) print_line_cursor#31 ← phi( test_8u::@11/(byte*) print_line_cursor#11 ) + (byte*) print_char_cursor#99 ← phi( test_8u::@11/(byte*) print_char_cursor#35 ) + (byte) rem8u#27 ← phi( test_8u::@11/(byte) rem8u#38 ) + (byte) rem8u#11 ← (byte) rem8u#27 + (byte*) print_char_cursor#36 ← (byte*) print_char_cursor#99 + (byte*) print_line_cursor#12 ← (byte*) print_line_cursor#31 return to:@return test_16u: scope:[test_16u] from main::@2 - (byte*) print_line_cursor#84 ? phi( main::@2/(byte*) print_line_cursor#6 ) - (byte*) print_char_cursor#153 ? phi( main::@2/(byte*) print_char_cursor#23 ) - (word) rem16u#49 ? phi( main::@2/(word) rem16u#38 ) - (word[]) test_16u::dividends#0 ? { (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff } - (word[]) test_16u::divisors#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $13 } - (byte) test_16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#84 ← phi( main::@2/(byte*) print_line_cursor#6 ) + (byte*) print_char_cursor#153 ← phi( main::@2/(byte*) print_char_cursor#23 ) + (word) rem16u#49 ← phi( main::@2/(word) rem16u#38 ) + (word[]) test_16u::dividends#0 ← { (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff, (word/dword/signed dword) $ffff } + (word[]) test_16u::divisors#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (byte/signed byte/word/signed word/dword/signed dword) $b, (byte/signed byte/word/signed word/dword/signed dword) $d, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $13 } + (byte) test_16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:test_16u::@1 test_16u::@1: scope:[test_16u] from test_16u test_16u::@11 - (byte*) print_line_cursor#80 ? phi( test_16u/(byte*) print_line_cursor#84 test_16u::@11/(byte*) print_line_cursor#13 ) - (byte*) print_char_cursor#147 ? phi( test_16u/(byte*) print_char_cursor#153 test_16u::@11/(byte*) print_char_cursor#44 ) - (word) rem16u#40 ? phi( test_16u/(word) rem16u#49 test_16u::@11/(word) rem16u#42 ) - (byte) test_16u::i#2 ? phi( test_16u/(byte) test_16u::i#0 test_16u::@11/(byte) test_16u::i#1 ) - (word) test_16u::dividend#0 ? *((word[]) test_16u::dividends#0 + (byte) test_16u::i#2) - (word) test_16u::divisor#0 ? *((word[]) test_16u::divisors#0 + (byte) test_16u::i#2) - (word) div16u::dividend#0 ? (word) test_16u::dividend#0 - (word) div16u::divisor#0 ? (word) test_16u::divisor#0 + (byte*) print_line_cursor#80 ← phi( test_16u/(byte*) print_line_cursor#84 test_16u::@11/(byte*) print_line_cursor#13 ) + (byte*) print_char_cursor#147 ← phi( test_16u/(byte*) print_char_cursor#153 test_16u::@11/(byte*) print_char_cursor#44 ) + (word) rem16u#40 ← phi( test_16u/(word) rem16u#49 test_16u::@11/(word) rem16u#42 ) + (byte) test_16u::i#2 ← phi( test_16u/(byte) test_16u::i#0 test_16u::@11/(byte) test_16u::i#1 ) + (word) test_16u::dividend#0 ← *((word[]) test_16u::dividends#0 + (byte) test_16u::i#2) + (word) test_16u::divisor#0 ← *((word[]) test_16u::divisors#0 + (byte) test_16u::i#2) + (word) div16u::dividend#0 ← (word) test_16u::dividend#0 + (word) div16u::divisor#0 ← (word) test_16u::divisor#0 call div16u - (word) div16u::return#2 ? (word) div16u::return#1 + (word) div16u::return#2 ← (word) div16u::return#1 to:test_16u::@3 test_16u::@3: scope:[test_16u] from test_16u::@1 - (byte) test_16u::i#11 ? phi( test_16u::@1/(byte) test_16u::i#2 ) - (byte*) print_line_cursor#76 ? phi( test_16u::@1/(byte*) print_line_cursor#80 ) - (word) test_16u::divisor#3 ? phi( test_16u::@1/(word) test_16u::divisor#0 ) - (byte*) print_char_cursor#139 ? phi( test_16u::@1/(byte*) print_char_cursor#147 ) - (word) test_16u::dividend#1 ? phi( test_16u::@1/(word) test_16u::dividend#0 ) - (word) rem16u#29 ? phi( test_16u::@1/(word) rem16u#4 ) - (word) div16u::return#4 ? phi( test_16u::@1/(word) div16u::return#2 ) - (word~) test_16u::$0 ? (word) div16u::return#4 - (word) rem16u#12 ? (word) rem16u#29 - (word) test_16u::res#0 ? (word~) test_16u::$0 - (word) print_word::w#1 ? (word) test_16u::dividend#1 + (byte) test_16u::i#11 ← phi( test_16u::@1/(byte) test_16u::i#2 ) + (byte*) print_line_cursor#76 ← phi( test_16u::@1/(byte*) print_line_cursor#80 ) + (word) test_16u::divisor#3 ← phi( test_16u::@1/(word) test_16u::divisor#0 ) + (byte*) print_char_cursor#139 ← phi( test_16u::@1/(byte*) print_char_cursor#147 ) + (word) test_16u::dividend#1 ← phi( test_16u::@1/(word) test_16u::dividend#0 ) + (word) rem16u#29 ← phi( test_16u::@1/(word) rem16u#4 ) + (word) div16u::return#4 ← phi( test_16u::@1/(word) div16u::return#2 ) + (word~) test_16u::$0 ← (word) div16u::return#4 + (word) rem16u#12 ← (word) rem16u#29 + (word) test_16u::res#0 ← (word~) test_16u::$0 + (word) print_word::w#1 ← (word) test_16u::dividend#1 call print_word to:test_16u::@4 test_16u::@4: scope:[test_16u] from test_16u::@3 - (byte) test_16u::i#10 ? phi( test_16u::@3/(byte) test_16u::i#11 ) - (byte*) print_line_cursor#72 ? phi( test_16u::@3/(byte*) print_line_cursor#76 ) - (word) rem16u#65 ? phi( test_16u::@3/(word) rem16u#12 ) - (word) test_16u::res#4 ? phi( test_16u::@3/(word) test_16u::res#0 ) - (word) test_16u::divisor#2 ? phi( test_16u::@3/(word) test_16u::divisor#3 ) - (byte*) print_char_cursor#100 ? phi( test_16u::@3/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#37 ? (byte*) print_char_cursor#100 - (byte*) print_str::str#4 ? (const string) test_16u::str + (byte) test_16u::i#10 ← phi( test_16u::@3/(byte) test_16u::i#11 ) + (byte*) print_line_cursor#72 ← phi( test_16u::@3/(byte*) print_line_cursor#76 ) + (word) rem16u#65 ← phi( test_16u::@3/(word) rem16u#12 ) + (word) test_16u::res#4 ← phi( test_16u::@3/(word) test_16u::res#0 ) + (word) test_16u::divisor#2 ← phi( test_16u::@3/(word) test_16u::divisor#3 ) + (byte*) print_char_cursor#100 ← phi( test_16u::@3/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#37 ← (byte*) print_char_cursor#100 + (byte*) print_str::str#4 ← (const string) test_16u::str call print_str to:test_16u::@5 test_16u::@5: scope:[test_16u] from test_16u::@4 - (byte) test_16u::i#9 ? phi( test_16u::@4/(byte) test_16u::i#10 ) - (byte*) print_line_cursor#68 ? phi( test_16u::@4/(byte*) print_line_cursor#72 ) - (word) rem16u#62 ? phi( test_16u::@4/(word) rem16u#65 ) - (word) test_16u::res#3 ? phi( test_16u::@4/(word) test_16u::res#4 ) - (word) test_16u::divisor#1 ? phi( test_16u::@4/(word) test_16u::divisor#2 ) - (byte*) print_char_cursor#101 ? phi( test_16u::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#38 ? (byte*) print_char_cursor#101 - (word) print_word::w#2 ? (word) test_16u::divisor#1 + (byte) test_16u::i#9 ← phi( test_16u::@4/(byte) test_16u::i#10 ) + (byte*) print_line_cursor#68 ← phi( test_16u::@4/(byte*) print_line_cursor#72 ) + (word) rem16u#62 ← phi( test_16u::@4/(word) rem16u#65 ) + (word) test_16u::res#3 ← phi( test_16u::@4/(word) test_16u::res#4 ) + (word) test_16u::divisor#1 ← phi( test_16u::@4/(word) test_16u::divisor#2 ) + (byte*) print_char_cursor#101 ← phi( test_16u::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#38 ← (byte*) print_char_cursor#101 + (word) print_word::w#2 ← (word) test_16u::divisor#1 call print_word to:test_16u::@6 test_16u::@6: scope:[test_16u] from test_16u::@5 - (byte) test_16u::i#8 ? phi( test_16u::@5/(byte) test_16u::i#9 ) - (byte*) print_line_cursor#63 ? phi( test_16u::@5/(byte*) print_line_cursor#68 ) - (word) rem16u#58 ? phi( test_16u::@5/(word) rem16u#62 ) - (word) test_16u::res#2 ? phi( test_16u::@5/(word) test_16u::res#3 ) - (byte*) print_char_cursor#102 ? phi( test_16u::@5/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#39 ? (byte*) print_char_cursor#102 - (byte*) print_str::str#5 ? (const string) test_16u::str1 + (byte) test_16u::i#8 ← phi( test_16u::@5/(byte) test_16u::i#9 ) + (byte*) print_line_cursor#63 ← phi( test_16u::@5/(byte*) print_line_cursor#68 ) + (word) rem16u#58 ← phi( test_16u::@5/(word) rem16u#62 ) + (word) test_16u::res#2 ← phi( test_16u::@5/(word) test_16u::res#3 ) + (byte*) print_char_cursor#102 ← phi( test_16u::@5/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#39 ← (byte*) print_char_cursor#102 + (byte*) print_str::str#5 ← (const string) test_16u::str1 call print_str to:test_16u::@7 test_16u::@7: scope:[test_16u] from test_16u::@6 - (byte) test_16u::i#7 ? phi( test_16u::@6/(byte) test_16u::i#8 ) - (byte*) print_line_cursor#58 ? phi( test_16u::@6/(byte*) print_line_cursor#63 ) - (word) rem16u#50 ? phi( test_16u::@6/(word) rem16u#58 ) - (word) test_16u::res#1 ? phi( test_16u::@6/(word) test_16u::res#2 ) - (byte*) print_char_cursor#103 ? phi( test_16u::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#40 ? (byte*) print_char_cursor#103 - (word) print_word::w#3 ? (word) test_16u::res#1 + (byte) test_16u::i#7 ← phi( test_16u::@6/(byte) test_16u::i#8 ) + (byte*) print_line_cursor#58 ← phi( test_16u::@6/(byte*) print_line_cursor#63 ) + (word) rem16u#50 ← phi( test_16u::@6/(word) rem16u#58 ) + (word) test_16u::res#1 ← phi( test_16u::@6/(word) test_16u::res#2 ) + (byte*) print_char_cursor#103 ← phi( test_16u::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#40 ← (byte*) print_char_cursor#103 + (word) print_word::w#3 ← (word) test_16u::res#1 call print_word to:test_16u::@8 test_16u::@8: scope:[test_16u] from test_16u::@7 - (byte) test_16u::i#6 ? phi( test_16u::@7/(byte) test_16u::i#7 ) - (byte*) print_line_cursor#53 ? phi( test_16u::@7/(byte*) print_line_cursor#58 ) - (word) rem16u#41 ? phi( test_16u::@7/(word) rem16u#50 ) - (byte*) print_char_cursor#104 ? phi( test_16u::@7/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#41 ? (byte*) print_char_cursor#104 - (byte*) print_str::str#6 ? (const string) test_16u::str2 + (byte) test_16u::i#6 ← phi( test_16u::@7/(byte) test_16u::i#7 ) + (byte*) print_line_cursor#53 ← phi( test_16u::@7/(byte*) print_line_cursor#58 ) + (word) rem16u#41 ← phi( test_16u::@7/(word) rem16u#50 ) + (byte*) print_char_cursor#104 ← phi( test_16u::@7/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#41 ← (byte*) print_char_cursor#104 + (byte*) print_str::str#6 ← (const string) test_16u::str2 call print_str to:test_16u::@9 test_16u::@9: scope:[test_16u] from test_16u::@8 - (byte) test_16u::i#5 ? phi( test_16u::@8/(byte) test_16u::i#6 ) - (byte*) print_line_cursor#47 ? phi( test_16u::@8/(byte*) print_line_cursor#53 ) - (word) rem16u#30 ? phi( test_16u::@8/(word) rem16u#41 ) - (byte*) print_char_cursor#105 ? phi( test_16u::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#42 ? (byte*) print_char_cursor#105 - (word) print_word::w#4 ? (word) rem16u#30 + (byte) test_16u::i#5 ← phi( test_16u::@8/(byte) test_16u::i#6 ) + (byte*) print_line_cursor#47 ← phi( test_16u::@8/(byte*) print_line_cursor#53 ) + (word) rem16u#30 ← phi( test_16u::@8/(word) rem16u#41 ) + (byte*) print_char_cursor#105 ← phi( test_16u::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#42 ← (byte*) print_char_cursor#105 + (word) print_word::w#4 ← (word) rem16u#30 call print_word to:test_16u::@10 test_16u::@10: scope:[test_16u] from test_16u::@9 - (word) rem16u#51 ? phi( test_16u::@9/(word) rem16u#30 ) - (byte) test_16u::i#4 ? phi( test_16u::@9/(byte) test_16u::i#5 ) - (byte*) print_line_cursor#42 ? phi( test_16u::@9/(byte*) print_line_cursor#47 ) - (byte*) print_char_cursor#106 ? phi( test_16u::@9/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#43 ? (byte*) print_char_cursor#106 + (word) rem16u#51 ← phi( test_16u::@9/(word) rem16u#30 ) + (byte) test_16u::i#4 ← phi( test_16u::@9/(byte) test_16u::i#5 ) + (byte*) print_line_cursor#42 ← phi( test_16u::@9/(byte*) print_line_cursor#47 ) + (byte*) print_char_cursor#106 ← phi( test_16u::@9/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#43 ← (byte*) print_char_cursor#106 call print_ln to:test_16u::@11 test_16u::@11: scope:[test_16u] from test_16u::@10 - (word) rem16u#42 ? phi( test_16u::@10/(word) rem16u#51 ) - (byte) test_16u::i#3 ? phi( test_16u::@10/(byte) test_16u::i#4 ) - (byte*) print_char_cursor#107 ? phi( test_16u::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#32 ? phi( test_16u::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#13 ? (byte*) print_line_cursor#32 - (byte*) print_char_cursor#44 ? (byte*) print_char_cursor#107 - (byte/signed word/word/dword/signed dword~) test_16u::$9 ? (byte) test_16u::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) test_16u::i#1 ? (byte/signed word/word/dword/signed dword~) test_16u::$9 - (bool~) test_16u::$10 ? (byte) test_16u::i#1 != (byte/signed byte/word/signed word/dword/signed dword) $c + (word) rem16u#42 ← phi( test_16u::@10/(word) rem16u#51 ) + (byte) test_16u::i#3 ← phi( test_16u::@10/(byte) test_16u::i#4 ) + (byte*) print_char_cursor#107 ← phi( test_16u::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#32 ← phi( test_16u::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#13 ← (byte*) print_line_cursor#32 + (byte*) print_char_cursor#44 ← (byte*) print_char_cursor#107 + (byte/signed word/word/dword/signed dword~) test_16u::$9 ← (byte) test_16u::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) test_16u::i#1 ← (byte/signed word/word/dword/signed dword~) test_16u::$9 + (bool~) test_16u::$10 ← (byte) test_16u::i#1 != (byte/signed byte/word/signed word/dword/signed dword) $c if((bool~) test_16u::$10) goto test_16u::@1 to:test_16u::@return test_16u::@return: scope:[test_16u] from test_16u::@11 - (byte*) print_line_cursor#33 ? phi( test_16u::@11/(byte*) print_line_cursor#13 ) - (byte*) print_char_cursor#108 ? phi( test_16u::@11/(byte*) print_char_cursor#44 ) - (word) rem16u#31 ? phi( test_16u::@11/(word) rem16u#42 ) - (word) rem16u#13 ? (word) rem16u#31 - (byte*) print_char_cursor#45 ? (byte*) print_char_cursor#108 - (byte*) print_line_cursor#14 ? (byte*) print_line_cursor#33 + (byte*) print_line_cursor#33 ← phi( test_16u::@11/(byte*) print_line_cursor#13 ) + (byte*) print_char_cursor#108 ← phi( test_16u::@11/(byte*) print_char_cursor#44 ) + (word) rem16u#31 ← phi( test_16u::@11/(word) rem16u#42 ) + (word) rem16u#13 ← (word) rem16u#31 + (byte*) print_char_cursor#45 ← (byte*) print_char_cursor#108 + (byte*) print_line_cursor#14 ← (byte*) print_line_cursor#33 return to:@return test_8s: scope:[test_8s] from main::@3 - (byte*) print_line_cursor#85 ? phi( main::@3/(byte*) print_line_cursor#7 ) - (byte*) print_char_cursor#154 ? phi( main::@3/(byte*) print_char_cursor#24 ) - (signed byte) rem8s#23 ? phi( main::@3/(signed byte) rem8s#16 ) - (byte) rem8u#48 ? phi( main::@3/(byte) rem8u#34 ) - (signed byte/signed word/signed dword~) test_8s::$0 ? - (byte/signed byte/word/signed word/dword/signed dword) $7f - (signed byte/signed word/signed dword~) test_8s::$1 ? - (byte/signed byte/word/signed word/dword/signed dword) $7f - (signed byte[]) test_8s::dividends#0 ? { (byte/signed byte/word/signed word/dword/signed dword) $7f, (signed byte/signed word/signed dword~) test_8s::$0, (signed byte/signed word/signed dword~) test_8s::$1, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f } - (signed byte/signed word/signed dword~) test_8s::$2 ? - (byte/signed byte/word/signed word/dword/signed dword) $b - (signed byte/signed word/signed dword~) test_8s::$3 ? - (byte/signed byte/word/signed word/dword/signed dword) $d - (signed byte[]) test_8s::divisors#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (signed byte/signed word/signed dword~) test_8s::$2, (signed byte/signed word/signed dword~) test_8s::$3, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $13 } - (byte) test_8s::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#85 ← phi( main::@3/(byte*) print_line_cursor#7 ) + (byte*) print_char_cursor#154 ← phi( main::@3/(byte*) print_char_cursor#24 ) + (signed byte) rem8s#23 ← phi( main::@3/(signed byte) rem8s#16 ) + (byte) rem8u#48 ← phi( main::@3/(byte) rem8u#34 ) + (signed byte/signed word/signed dword~) test_8s::$0 ← - (byte/signed byte/word/signed word/dword/signed dword) $7f + (signed byte/signed word/signed dword~) test_8s::$1 ← - (byte/signed byte/word/signed word/dword/signed dword) $7f + (signed byte[]) test_8s::dividends#0 ← { (byte/signed byte/word/signed word/dword/signed dword) $7f, (signed byte/signed word/signed dword~) test_8s::$0, (signed byte/signed word/signed dword~) test_8s::$1, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f, (byte/signed byte/word/signed word/dword/signed dword) $7f } + (signed byte/signed word/signed dword~) test_8s::$2 ← - (byte/signed byte/word/signed word/dword/signed dword) $b + (signed byte/signed word/signed dword~) test_8s::$3 ← - (byte/signed byte/word/signed word/dword/signed dword) $d + (signed byte[]) test_8s::divisors#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7, (signed byte/signed word/signed dword~) test_8s::$2, (signed byte/signed word/signed dword~) test_8s::$3, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $13 } + (byte) test_8s::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:test_8s::@1 test_8s::@1: scope:[test_8s] from test_8s test_8s::@11 - (byte*) print_line_cursor#81 ? phi( test_8s/(byte*) print_line_cursor#85 test_8s::@11/(byte*) print_line_cursor#15 ) - (byte*) print_char_cursor#148 ? phi( test_8s/(byte*) print_char_cursor#154 test_8s::@11/(byte*) print_char_cursor#53 ) - (signed byte) rem8s#18 ? phi( test_8s/(signed byte) rem8s#23 test_8s::@11/(signed byte) rem8s#20 ) - (byte) rem8u#39 ? phi( test_8s/(byte) rem8u#48 test_8s::@11/(byte) rem8u#40 ) - (byte) test_8s::i#2 ? phi( test_8s/(byte) test_8s::i#0 test_8s::@11/(byte) test_8s::i#1 ) - (signed byte) test_8s::dividend#0 ? *((signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#2) - (signed byte) test_8s::divisor#0 ? *((signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#2) - (signed byte) div8s::dividend#0 ? (signed byte) test_8s::dividend#0 - (signed byte) div8s::divisor#0 ? (signed byte) test_8s::divisor#0 + (byte*) print_line_cursor#81 ← phi( test_8s/(byte*) print_line_cursor#85 test_8s::@11/(byte*) print_line_cursor#15 ) + (byte*) print_char_cursor#148 ← phi( test_8s/(byte*) print_char_cursor#154 test_8s::@11/(byte*) print_char_cursor#53 ) + (signed byte) rem8s#18 ← phi( test_8s/(signed byte) rem8s#23 test_8s::@11/(signed byte) rem8s#20 ) + (byte) rem8u#39 ← phi( test_8s/(byte) rem8u#48 test_8s::@11/(byte) rem8u#40 ) + (byte) test_8s::i#2 ← phi( test_8s/(byte) test_8s::i#0 test_8s::@11/(byte) test_8s::i#1 ) + (signed byte) test_8s::dividend#0 ← *((signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#2) + (signed byte) test_8s::divisor#0 ← *((signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#2) + (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 + (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 call div8s - (signed byte) div8s::return#3 ? (signed byte) div8s::return#2 + (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 to:test_8s::@3 test_8s::@3: scope:[test_8s] from test_8s::@1 - (byte) test_8s::i#11 ? phi( test_8s::@1/(byte) test_8s::i#2 ) - (byte*) print_line_cursor#77 ? phi( test_8s::@1/(byte*) print_line_cursor#81 ) - (signed byte) test_8s::divisor#3 ? phi( test_8s::@1/(signed byte) test_8s::divisor#0 ) - (byte*) print_char_cursor#140 ? phi( test_8s::@1/(byte*) print_char_cursor#148 ) - (signed byte) test_8s::dividend#1 ? phi( test_8s::@1/(signed byte) test_8s::dividend#0 ) - (signed byte) rem8s#12 ? phi( test_8s::@1/(signed byte) rem8s#3 ) - (byte) rem8u#28 ? phi( test_8s::@1/(byte) rem8u#6 ) - (signed byte) div8s::return#5 ? phi( test_8s::@1/(signed byte) div8s::return#3 ) - (signed byte~) test_8s::$4 ? (signed byte) div8s::return#5 - (byte) rem8u#12 ? (byte) rem8u#28 - (signed byte) rem8s#6 ? (signed byte) rem8s#12 - (signed byte) test_8s::res#0 ? (signed byte~) test_8s::$4 - (signed byte) print_sbyte::b#1 ? (signed byte) test_8s::dividend#1 + (byte) test_8s::i#11 ← phi( test_8s::@1/(byte) test_8s::i#2 ) + (byte*) print_line_cursor#77 ← phi( test_8s::@1/(byte*) print_line_cursor#81 ) + (signed byte) test_8s::divisor#3 ← phi( test_8s::@1/(signed byte) test_8s::divisor#0 ) + (byte*) print_char_cursor#140 ← phi( test_8s::@1/(byte*) print_char_cursor#148 ) + (signed byte) test_8s::dividend#1 ← phi( test_8s::@1/(signed byte) test_8s::dividend#0 ) + (signed byte) rem8s#12 ← phi( test_8s::@1/(signed byte) rem8s#3 ) + (byte) rem8u#28 ← phi( test_8s::@1/(byte) rem8u#6 ) + (signed byte) div8s::return#5 ← phi( test_8s::@1/(signed byte) div8s::return#3 ) + (signed byte~) test_8s::$4 ← (signed byte) div8s::return#5 + (byte) rem8u#12 ← (byte) rem8u#28 + (signed byte) rem8s#6 ← (signed byte) rem8s#12 + (signed byte) test_8s::res#0 ← (signed byte~) test_8s::$4 + (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#1 call print_sbyte to:test_8s::@4 test_8s::@4: scope:[test_8s] from test_8s::@3 - (byte) rem8u#65 ? phi( test_8s::@3/(byte) rem8u#12 ) - (byte) test_8s::i#10 ? phi( test_8s::@3/(byte) test_8s::i#11 ) - (byte*) print_line_cursor#73 ? phi( test_8s::@3/(byte*) print_line_cursor#77 ) - (signed byte) rem8s#31 ? phi( test_8s::@3/(signed byte) rem8s#6 ) - (signed byte) test_8s::res#4 ? phi( test_8s::@3/(signed byte) test_8s::res#0 ) - (signed byte) test_8s::divisor#2 ? phi( test_8s::@3/(signed byte) test_8s::divisor#3 ) - (byte*) print_char_cursor#109 ? phi( test_8s::@3/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#46 ? (byte*) print_char_cursor#109 - (byte*) print_str::str#7 ? (const string) test_8s::str + (byte) rem8u#65 ← phi( test_8s::@3/(byte) rem8u#12 ) + (byte) test_8s::i#10 ← phi( test_8s::@3/(byte) test_8s::i#11 ) + (byte*) print_line_cursor#73 ← phi( test_8s::@3/(byte*) print_line_cursor#77 ) + (signed byte) rem8s#31 ← phi( test_8s::@3/(signed byte) rem8s#6 ) + (signed byte) test_8s::res#4 ← phi( test_8s::@3/(signed byte) test_8s::res#0 ) + (signed byte) test_8s::divisor#2 ← phi( test_8s::@3/(signed byte) test_8s::divisor#3 ) + (byte*) print_char_cursor#109 ← phi( test_8s::@3/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#46 ← (byte*) print_char_cursor#109 + (byte*) print_str::str#7 ← (const string) test_8s::str call print_str to:test_8s::@5 test_8s::@5: scope:[test_8s] from test_8s::@4 - (byte) rem8u#64 ? phi( test_8s::@4/(byte) rem8u#65 ) - (byte) test_8s::i#9 ? phi( test_8s::@4/(byte) test_8s::i#10 ) - (byte*) print_line_cursor#69 ? phi( test_8s::@4/(byte*) print_line_cursor#73 ) - (signed byte) rem8s#30 ? phi( test_8s::@4/(signed byte) rem8s#31 ) - (signed byte) test_8s::res#3 ? phi( test_8s::@4/(signed byte) test_8s::res#4 ) - (signed byte) test_8s::divisor#1 ? phi( test_8s::@4/(signed byte) test_8s::divisor#2 ) - (byte*) print_char_cursor#110 ? phi( test_8s::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#47 ? (byte*) print_char_cursor#110 - (signed byte) print_sbyte::b#2 ? (signed byte) test_8s::divisor#1 + (byte) rem8u#64 ← phi( test_8s::@4/(byte) rem8u#65 ) + (byte) test_8s::i#9 ← phi( test_8s::@4/(byte) test_8s::i#10 ) + (byte*) print_line_cursor#69 ← phi( test_8s::@4/(byte*) print_line_cursor#73 ) + (signed byte) rem8s#30 ← phi( test_8s::@4/(signed byte) rem8s#31 ) + (signed byte) test_8s::res#3 ← phi( test_8s::@4/(signed byte) test_8s::res#4 ) + (signed byte) test_8s::divisor#1 ← phi( test_8s::@4/(signed byte) test_8s::divisor#2 ) + (byte*) print_char_cursor#110 ← phi( test_8s::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#47 ← (byte*) print_char_cursor#110 + (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#1 call print_sbyte to:test_8s::@6 test_8s::@6: scope:[test_8s] from test_8s::@5 - (byte) rem8u#63 ? phi( test_8s::@5/(byte) rem8u#64 ) - (byte) test_8s::i#8 ? phi( test_8s::@5/(byte) test_8s::i#9 ) - (byte*) print_line_cursor#64 ? phi( test_8s::@5/(byte*) print_line_cursor#69 ) - (signed byte) rem8s#28 ? phi( test_8s::@5/(signed byte) rem8s#30 ) - (signed byte) test_8s::res#2 ? phi( test_8s::@5/(signed byte) test_8s::res#3 ) - (byte*) print_char_cursor#111 ? phi( test_8s::@5/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#48 ? (byte*) print_char_cursor#111 - (byte*) print_str::str#8 ? (const string) test_8s::str1 + (byte) rem8u#63 ← phi( test_8s::@5/(byte) rem8u#64 ) + (byte) test_8s::i#8 ← phi( test_8s::@5/(byte) test_8s::i#9 ) + (byte*) print_line_cursor#64 ← phi( test_8s::@5/(byte*) print_line_cursor#69 ) + (signed byte) rem8s#28 ← phi( test_8s::@5/(signed byte) rem8s#30 ) + (signed byte) test_8s::res#2 ← phi( test_8s::@5/(signed byte) test_8s::res#3 ) + (byte*) print_char_cursor#111 ← phi( test_8s::@5/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#48 ← (byte*) print_char_cursor#111 + (byte*) print_str::str#8 ← (const string) test_8s::str1 call print_str to:test_8s::@7 test_8s::@7: scope:[test_8s] from test_8s::@6 - (byte) rem8u#62 ? phi( test_8s::@6/(byte) rem8u#63 ) - (byte) test_8s::i#7 ? phi( test_8s::@6/(byte) test_8s::i#8 ) - (byte*) print_line_cursor#59 ? phi( test_8s::@6/(byte*) print_line_cursor#64 ) - (signed byte) rem8s#24 ? phi( test_8s::@6/(signed byte) rem8s#28 ) - (signed byte) test_8s::res#1 ? phi( test_8s::@6/(signed byte) test_8s::res#2 ) - (byte*) print_char_cursor#112 ? phi( test_8s::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#49 ? (byte*) print_char_cursor#112 - (signed byte) print_sbyte::b#3 ? (signed byte) test_8s::res#1 + (byte) rem8u#62 ← phi( test_8s::@6/(byte) rem8u#63 ) + (byte) test_8s::i#7 ← phi( test_8s::@6/(byte) test_8s::i#8 ) + (byte*) print_line_cursor#59 ← phi( test_8s::@6/(byte*) print_line_cursor#64 ) + (signed byte) rem8s#24 ← phi( test_8s::@6/(signed byte) rem8s#28 ) + (signed byte) test_8s::res#1 ← phi( test_8s::@6/(signed byte) test_8s::res#2 ) + (byte*) print_char_cursor#112 ← phi( test_8s::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#49 ← (byte*) print_char_cursor#112 + (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#1 call print_sbyte to:test_8s::@8 test_8s::@8: scope:[test_8s] from test_8s::@7 - (byte) rem8u#59 ? phi( test_8s::@7/(byte) rem8u#62 ) - (byte) test_8s::i#6 ? phi( test_8s::@7/(byte) test_8s::i#7 ) - (byte*) print_line_cursor#54 ? phi( test_8s::@7/(byte*) print_line_cursor#59 ) - (signed byte) rem8s#19 ? phi( test_8s::@7/(signed byte) rem8s#24 ) - (byte*) print_char_cursor#113 ? phi( test_8s::@7/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#50 ? (byte*) print_char_cursor#113 - (byte*) print_str::str#9 ? (const string) test_8s::str2 + (byte) rem8u#59 ← phi( test_8s::@7/(byte) rem8u#62 ) + (byte) test_8s::i#6 ← phi( test_8s::@7/(byte) test_8s::i#7 ) + (byte*) print_line_cursor#54 ← phi( test_8s::@7/(byte*) print_line_cursor#59 ) + (signed byte) rem8s#19 ← phi( test_8s::@7/(signed byte) rem8s#24 ) + (byte*) print_char_cursor#113 ← phi( test_8s::@7/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#50 ← (byte*) print_char_cursor#113 + (byte*) print_str::str#9 ← (const string) test_8s::str2 call print_str to:test_8s::@9 test_8s::@9: scope:[test_8s] from test_8s::@8 - (byte) rem8u#54 ? phi( test_8s::@8/(byte) rem8u#59 ) - (byte) test_8s::i#5 ? phi( test_8s::@8/(byte) test_8s::i#6 ) - (byte*) print_line_cursor#48 ? phi( test_8s::@8/(byte*) print_line_cursor#54 ) - (signed byte) rem8s#13 ? phi( test_8s::@8/(signed byte) rem8s#19 ) - (byte*) print_char_cursor#114 ? phi( test_8s::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#51 ? (byte*) print_char_cursor#114 - (signed byte) print_sbyte::b#4 ? (signed byte) rem8s#13 + (byte) rem8u#54 ← phi( test_8s::@8/(byte) rem8u#59 ) + (byte) test_8s::i#5 ← phi( test_8s::@8/(byte) test_8s::i#6 ) + (byte*) print_line_cursor#48 ← phi( test_8s::@8/(byte*) print_line_cursor#54 ) + (signed byte) rem8s#13 ← phi( test_8s::@8/(signed byte) rem8s#19 ) + (byte*) print_char_cursor#114 ← phi( test_8s::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#51 ← (byte*) print_char_cursor#114 + (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#13 call print_sbyte to:test_8s::@10 test_8s::@10: scope:[test_8s] from test_8s::@9 - (signed byte) rem8s#25 ? phi( test_8s::@9/(signed byte) rem8s#13 ) - (byte) rem8u#49 ? phi( test_8s::@9/(byte) rem8u#54 ) - (byte) test_8s::i#4 ? phi( test_8s::@9/(byte) test_8s::i#5 ) - (byte*) print_line_cursor#43 ? phi( test_8s::@9/(byte*) print_line_cursor#48 ) - (byte*) print_char_cursor#115 ? phi( test_8s::@9/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#52 ? (byte*) print_char_cursor#115 + (signed byte) rem8s#25 ← phi( test_8s::@9/(signed byte) rem8s#13 ) + (byte) rem8u#49 ← phi( test_8s::@9/(byte) rem8u#54 ) + (byte) test_8s::i#4 ← phi( test_8s::@9/(byte) test_8s::i#5 ) + (byte*) print_line_cursor#43 ← phi( test_8s::@9/(byte*) print_line_cursor#48 ) + (byte*) print_char_cursor#115 ← phi( test_8s::@9/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#52 ← (byte*) print_char_cursor#115 call print_ln to:test_8s::@11 test_8s::@11: scope:[test_8s] from test_8s::@10 - (signed byte) rem8s#20 ? phi( test_8s::@10/(signed byte) rem8s#25 ) - (byte) rem8u#40 ? phi( test_8s::@10/(byte) rem8u#49 ) - (byte) test_8s::i#3 ? phi( test_8s::@10/(byte) test_8s::i#4 ) - (byte*) print_char_cursor#116 ? phi( test_8s::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#34 ? phi( test_8s::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#15 ? (byte*) print_line_cursor#34 - (byte*) print_char_cursor#53 ? (byte*) print_char_cursor#116 - (byte) test_8s::i#1 ? (byte) test_8s::i#3 + rangenext(0,5) - (bool~) test_8s::$13 ? (byte) test_8s::i#1 != rangelast(0,5) + (signed byte) rem8s#20 ← phi( test_8s::@10/(signed byte) rem8s#25 ) + (byte) rem8u#40 ← phi( test_8s::@10/(byte) rem8u#49 ) + (byte) test_8s::i#3 ← phi( test_8s::@10/(byte) test_8s::i#4 ) + (byte*) print_char_cursor#116 ← phi( test_8s::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#34 ← phi( test_8s::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#15 ← (byte*) print_line_cursor#34 + (byte*) print_char_cursor#53 ← (byte*) print_char_cursor#116 + (byte) test_8s::i#1 ← (byte) test_8s::i#3 + rangenext(0,5) + (bool~) test_8s::$13 ← (byte) test_8s::i#1 != rangelast(0,5) if((bool~) test_8s::$13) goto test_8s::@1 to:test_8s::@return test_8s::@return: scope:[test_8s] from test_8s::@11 - (byte*) print_line_cursor#35 ? phi( test_8s::@11/(byte*) print_line_cursor#15 ) - (byte*) print_char_cursor#117 ? phi( test_8s::@11/(byte*) print_char_cursor#53 ) - (signed byte) rem8s#14 ? phi( test_8s::@11/(signed byte) rem8s#20 ) - (byte) rem8u#29 ? phi( test_8s::@11/(byte) rem8u#40 ) - (byte) rem8u#13 ? (byte) rem8u#29 - (signed byte) rem8s#7 ? (signed byte) rem8s#14 - (byte*) print_char_cursor#54 ? (byte*) print_char_cursor#117 - (byte*) print_line_cursor#16 ? (byte*) print_line_cursor#35 + (byte*) print_line_cursor#35 ← phi( test_8s::@11/(byte*) print_line_cursor#15 ) + (byte*) print_char_cursor#117 ← phi( test_8s::@11/(byte*) print_char_cursor#53 ) + (signed byte) rem8s#14 ← phi( test_8s::@11/(signed byte) rem8s#20 ) + (byte) rem8u#29 ← phi( test_8s::@11/(byte) rem8u#40 ) + (byte) rem8u#13 ← (byte) rem8u#29 + (signed byte) rem8s#7 ← (signed byte) rem8s#14 + (byte*) print_char_cursor#54 ← (byte*) print_char_cursor#117 + (byte*) print_line_cursor#16 ← (byte*) print_line_cursor#35 return to:@return test_16s: scope:[test_16s] from main::@4 - (byte*) print_line_cursor#86 ? phi( main::@4/(byte*) print_line_cursor#8 ) - (byte*) print_char_cursor#155 ? phi( main::@4/(byte*) print_char_cursor#25 ) - (signed word) rem16s#27 ? phi( main::@4/(signed word) rem16s#21 ) - (word) rem16u#52 ? phi( main::@4/(word) rem16u#39 ) - (signed word/signed dword~) test_16s::$0 ? - (word/signed word/dword/signed dword) $7fff - (signed word/signed dword~) test_16s::$1 ? - (word/signed word/dword/signed dword) $7fff - (signed word/signed dword~) test_16s::$2 ? - (word/signed word/dword/signed dword) $7fff - (signed word[]) test_16s::dividends#0 ? { (word/signed word/dword/signed dword) $7fff, (word/signed word/dword/signed dword) $7fff, (signed word/signed dword~) test_16s::$0, (signed word/signed dword~) test_16s::$1, (word/signed word/dword/signed dword) $7fff, (signed word/signed dword~) test_16s::$2 } - (signed byte/signed word/signed dword~) test_16s::$3 ? - (byte/signed byte/word/signed word/dword/signed dword) 7 - (signed byte/signed word/signed dword~) test_16s::$4 ? - (byte/signed byte/word/signed word/dword/signed dword) $d - (signed byte/signed word/signed dword~) test_16s::$5 ? - (byte/signed byte/word/signed word/dword/signed dword) $11 - (signed word[]) test_16s::divisors#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 5, (signed byte/signed word/signed dword~) test_16s::$3, (byte/signed byte/word/signed word/dword/signed dword) $b, (signed byte/signed word/signed dword~) test_16s::$4, (signed byte/signed word/signed dword~) test_16s::$5, (byte/signed byte/word/signed word/dword/signed dword) $13 } - (byte) test_16s::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#86 ← phi( main::@4/(byte*) print_line_cursor#8 ) + (byte*) print_char_cursor#155 ← phi( main::@4/(byte*) print_char_cursor#25 ) + (signed word) rem16s#27 ← phi( main::@4/(signed word) rem16s#21 ) + (word) rem16u#52 ← phi( main::@4/(word) rem16u#39 ) + (signed word/signed dword~) test_16s::$0 ← - (word/signed word/dword/signed dword) $7fff + (signed word/signed dword~) test_16s::$1 ← - (word/signed word/dword/signed dword) $7fff + (signed word/signed dword~) test_16s::$2 ← - (word/signed word/dword/signed dword) $7fff + (signed word[]) test_16s::dividends#0 ← { (word/signed word/dword/signed dword) $7fff, (word/signed word/dword/signed dword) $7fff, (signed word/signed dword~) test_16s::$0, (signed word/signed dword~) test_16s::$1, (word/signed word/dword/signed dword) $7fff, (signed word/signed dword~) test_16s::$2 } + (signed byte/signed word/signed dword~) test_16s::$3 ← - (byte/signed byte/word/signed word/dword/signed dword) 7 + (signed byte/signed word/signed dword~) test_16s::$4 ← - (byte/signed byte/word/signed word/dword/signed dword) $d + (signed byte/signed word/signed dword~) test_16s::$5 ← - (byte/signed byte/word/signed word/dword/signed dword) $11 + (signed word[]) test_16s::divisors#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (signed byte/signed word/signed dword~) test_16s::$3, (byte/signed byte/word/signed word/dword/signed dword) $b, (signed byte/signed word/signed dword~) test_16s::$4, (signed byte/signed word/signed dword~) test_16s::$5, (byte/signed byte/word/signed word/dword/signed dword) $13 } + (byte) test_16s::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:test_16s::@1 test_16s::@1: scope:[test_16s] from test_16s test_16s::@11 - (byte*) print_line_cursor#82 ? phi( test_16s/(byte*) print_line_cursor#86 test_16s::@11/(byte*) print_line_cursor#17 ) - (byte*) print_char_cursor#149 ? phi( test_16s/(byte*) print_char_cursor#155 test_16s::@11/(byte*) print_char_cursor#62 ) - (signed word) rem16s#22 ? phi( test_16s/(signed word) rem16s#27 test_16s::@11/(signed word) rem16s#24 ) - (word) rem16u#43 ? phi( test_16s/(word) rem16u#52 test_16s::@11/(word) rem16u#44 ) - (byte) test_16s::i#2 ? phi( test_16s/(byte) test_16s::i#0 test_16s::@11/(byte) test_16s::i#1 ) - (signed word) test_16s::dividend#0 ? *((signed word[]) test_16s::dividends#0 + (byte) test_16s::i#2) - (signed word) test_16s::divisor#0 ? *((signed word[]) test_16s::divisors#0 + (byte) test_16s::i#2) - (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 - (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 + (byte*) print_line_cursor#82 ← phi( test_16s/(byte*) print_line_cursor#86 test_16s::@11/(byte*) print_line_cursor#17 ) + (byte*) print_char_cursor#149 ← phi( test_16s/(byte*) print_char_cursor#155 test_16s::@11/(byte*) print_char_cursor#62 ) + (signed word) rem16s#22 ← phi( test_16s/(signed word) rem16s#27 test_16s::@11/(signed word) rem16s#24 ) + (word) rem16u#43 ← phi( test_16s/(word) rem16u#52 test_16s::@11/(word) rem16u#44 ) + (byte) test_16s::i#2 ← phi( test_16s/(byte) test_16s::i#0 test_16s::@11/(byte) test_16s::i#1 ) + (signed word) test_16s::dividend#0 ← *((signed word[]) test_16s::dividends#0 + (byte) test_16s::i#2) + (signed word) test_16s::divisor#0 ← *((signed word[]) test_16s::divisors#0 + (byte) test_16s::i#2) + (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 + (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 call div16s - (signed word) div16s::return#2 ? (signed word) div16s::return#1 + (signed word) div16s::return#2 ← (signed word) div16s::return#1 to:test_16s::@3 test_16s::@3: scope:[test_16s] from test_16s::@1 - (byte) test_16s::i#11 ? phi( test_16s::@1/(byte) test_16s::i#2 ) - (byte*) print_line_cursor#78 ? phi( test_16s::@1/(byte*) print_line_cursor#82 ) - (signed word) test_16s::divisor#3 ? phi( test_16s::@1/(signed word) test_16s::divisor#0 ) - (byte*) print_char_cursor#141 ? phi( test_16s::@1/(byte*) print_char_cursor#149 ) - (signed word) test_16s::dividend#1 ? phi( test_16s::@1/(signed word) test_16s::dividend#0 ) - (signed word) rem16s#16 ? phi( test_16s::@1/(signed word) rem16s#5 ) - (word) rem16u#32 ? phi( test_16s::@1/(word) rem16u#8 ) - (signed word) div16s::return#4 ? phi( test_16s::@1/(signed word) div16s::return#2 ) - (signed word~) test_16s::$6 ? (signed word) div16s::return#4 - (word) rem16u#14 ? (word) rem16u#32 - (signed word) rem16s#8 ? (signed word) rem16s#16 - (signed word) test_16s::res#0 ? (signed word~) test_16s::$6 - (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#1 + (byte) test_16s::i#11 ← phi( test_16s::@1/(byte) test_16s::i#2 ) + (byte*) print_line_cursor#78 ← phi( test_16s::@1/(byte*) print_line_cursor#82 ) + (signed word) test_16s::divisor#3 ← phi( test_16s::@1/(signed word) test_16s::divisor#0 ) + (byte*) print_char_cursor#141 ← phi( test_16s::@1/(byte*) print_char_cursor#149 ) + (signed word) test_16s::dividend#1 ← phi( test_16s::@1/(signed word) test_16s::dividend#0 ) + (signed word) rem16s#16 ← phi( test_16s::@1/(signed word) rem16s#5 ) + (word) rem16u#32 ← phi( test_16s::@1/(word) rem16u#8 ) + (signed word) div16s::return#4 ← phi( test_16s::@1/(signed word) div16s::return#2 ) + (signed word~) test_16s::$6 ← (signed word) div16s::return#4 + (word) rem16u#14 ← (word) rem16u#32 + (signed word) rem16s#8 ← (signed word) rem16s#16 + (signed word) test_16s::res#0 ← (signed word~) test_16s::$6 + (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#1 call print_sword to:test_16s::@4 test_16s::@4: scope:[test_16s] from test_16s::@3 - (word) rem16u#69 ? phi( test_16s::@3/(word) rem16u#14 ) - (byte) test_16s::i#10 ? phi( test_16s::@3/(byte) test_16s::i#11 ) - (byte*) print_line_cursor#74 ? phi( test_16s::@3/(byte*) print_line_cursor#78 ) - (signed word) rem16s#35 ? phi( test_16s::@3/(signed word) rem16s#8 ) - (signed word) test_16s::res#4 ? phi( test_16s::@3/(signed word) test_16s::res#0 ) - (signed word) test_16s::divisor#2 ? phi( test_16s::@3/(signed word) test_16s::divisor#3 ) - (byte*) print_char_cursor#118 ? phi( test_16s::@3/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#55 ? (byte*) print_char_cursor#118 - (byte*) print_str::str#10 ? (const string) test_16s::str + (word) rem16u#69 ← phi( test_16s::@3/(word) rem16u#14 ) + (byte) test_16s::i#10 ← phi( test_16s::@3/(byte) test_16s::i#11 ) + (byte*) print_line_cursor#74 ← phi( test_16s::@3/(byte*) print_line_cursor#78 ) + (signed word) rem16s#35 ← phi( test_16s::@3/(signed word) rem16s#8 ) + (signed word) test_16s::res#4 ← phi( test_16s::@3/(signed word) test_16s::res#0 ) + (signed word) test_16s::divisor#2 ← phi( test_16s::@3/(signed word) test_16s::divisor#3 ) + (byte*) print_char_cursor#118 ← phi( test_16s::@3/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#55 ← (byte*) print_char_cursor#118 + (byte*) print_str::str#10 ← (const string) test_16s::str call print_str to:test_16s::@5 test_16s::@5: scope:[test_16s] from test_16s::@4 - (word) rem16u#68 ? phi( test_16s::@4/(word) rem16u#69 ) - (byte) test_16s::i#9 ? phi( test_16s::@4/(byte) test_16s::i#10 ) - (byte*) print_line_cursor#70 ? phi( test_16s::@4/(byte*) print_line_cursor#74 ) - (signed word) rem16s#33 ? phi( test_16s::@4/(signed word) rem16s#35 ) - (signed word) test_16s::res#3 ? phi( test_16s::@4/(signed word) test_16s::res#4 ) - (signed word) test_16s::divisor#1 ? phi( test_16s::@4/(signed word) test_16s::divisor#2 ) - (byte*) print_char_cursor#119 ? phi( test_16s::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#56 ? (byte*) print_char_cursor#119 - (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#1 + (word) rem16u#68 ← phi( test_16s::@4/(word) rem16u#69 ) + (byte) test_16s::i#9 ← phi( test_16s::@4/(byte) test_16s::i#10 ) + (byte*) print_line_cursor#70 ← phi( test_16s::@4/(byte*) print_line_cursor#74 ) + (signed word) rem16s#33 ← phi( test_16s::@4/(signed word) rem16s#35 ) + (signed word) test_16s::res#3 ← phi( test_16s::@4/(signed word) test_16s::res#4 ) + (signed word) test_16s::divisor#1 ← phi( test_16s::@4/(signed word) test_16s::divisor#2 ) + (byte*) print_char_cursor#119 ← phi( test_16s::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#56 ← (byte*) print_char_cursor#119 + (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#1 call print_sword to:test_16s::@6 test_16s::@6: scope:[test_16s] from test_16s::@5 - (word) rem16u#67 ? phi( test_16s::@5/(word) rem16u#68 ) - (byte) test_16s::i#8 ? phi( test_16s::@5/(byte) test_16s::i#9 ) - (byte*) print_line_cursor#65 ? phi( test_16s::@5/(byte*) print_line_cursor#70 ) - (signed word) rem16s#31 ? phi( test_16s::@5/(signed word) rem16s#33 ) - (signed word) test_16s::res#2 ? phi( test_16s::@5/(signed word) test_16s::res#3 ) - (byte*) print_char_cursor#120 ? phi( test_16s::@5/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#57 ? (byte*) print_char_cursor#120 - (byte*) print_str::str#11 ? (const string) test_16s::str1 + (word) rem16u#67 ← phi( test_16s::@5/(word) rem16u#68 ) + (byte) test_16s::i#8 ← phi( test_16s::@5/(byte) test_16s::i#9 ) + (byte*) print_line_cursor#65 ← phi( test_16s::@5/(byte*) print_line_cursor#70 ) + (signed word) rem16s#31 ← phi( test_16s::@5/(signed word) rem16s#33 ) + (signed word) test_16s::res#2 ← phi( test_16s::@5/(signed word) test_16s::res#3 ) + (byte*) print_char_cursor#120 ← phi( test_16s::@5/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#57 ← (byte*) print_char_cursor#120 + (byte*) print_str::str#11 ← (const string) test_16s::str1 call print_str to:test_16s::@7 test_16s::@7: scope:[test_16s] from test_16s::@6 - (word) rem16u#66 ? phi( test_16s::@6/(word) rem16u#67 ) - (byte) test_16s::i#7 ? phi( test_16s::@6/(byte) test_16s::i#8 ) - (byte*) print_line_cursor#60 ? phi( test_16s::@6/(byte*) print_line_cursor#65 ) - (signed word) rem16s#28 ? phi( test_16s::@6/(signed word) rem16s#31 ) - (signed word) test_16s::res#1 ? phi( test_16s::@6/(signed word) test_16s::res#2 ) - (byte*) print_char_cursor#121 ? phi( test_16s::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#58 ? (byte*) print_char_cursor#121 - (signed word) print_sword::w#3 ? (signed word) test_16s::res#1 + (word) rem16u#66 ← phi( test_16s::@6/(word) rem16u#67 ) + (byte) test_16s::i#7 ← phi( test_16s::@6/(byte) test_16s::i#8 ) + (byte*) print_line_cursor#60 ← phi( test_16s::@6/(byte*) print_line_cursor#65 ) + (signed word) rem16s#28 ← phi( test_16s::@6/(signed word) rem16s#31 ) + (signed word) test_16s::res#1 ← phi( test_16s::@6/(signed word) test_16s::res#2 ) + (byte*) print_char_cursor#121 ← phi( test_16s::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#58 ← (byte*) print_char_cursor#121 + (signed word) print_sword::w#3 ← (signed word) test_16s::res#1 call print_sword to:test_16s::@8 test_16s::@8: scope:[test_16s] from test_16s::@7 - (word) rem16u#63 ? phi( test_16s::@7/(word) rem16u#66 ) - (byte) test_16s::i#6 ? phi( test_16s::@7/(byte) test_16s::i#7 ) - (byte*) print_line_cursor#55 ? phi( test_16s::@7/(byte*) print_line_cursor#60 ) - (signed word) rem16s#23 ? phi( test_16s::@7/(signed word) rem16s#28 ) - (byte*) print_char_cursor#122 ? phi( test_16s::@7/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#59 ? (byte*) print_char_cursor#122 - (byte*) print_str::str#12 ? (const string) test_16s::str2 + (word) rem16u#63 ← phi( test_16s::@7/(word) rem16u#66 ) + (byte) test_16s::i#6 ← phi( test_16s::@7/(byte) test_16s::i#7 ) + (byte*) print_line_cursor#55 ← phi( test_16s::@7/(byte*) print_line_cursor#60 ) + (signed word) rem16s#23 ← phi( test_16s::@7/(signed word) rem16s#28 ) + (byte*) print_char_cursor#122 ← phi( test_16s::@7/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#59 ← (byte*) print_char_cursor#122 + (byte*) print_str::str#12 ← (const string) test_16s::str2 call print_str to:test_16s::@9 test_16s::@9: scope:[test_16s] from test_16s::@8 - (word) rem16u#59 ? phi( test_16s::@8/(word) rem16u#63 ) - (byte) test_16s::i#5 ? phi( test_16s::@8/(byte) test_16s::i#6 ) - (byte*) print_line_cursor#49 ? phi( test_16s::@8/(byte*) print_line_cursor#55 ) - (signed word) rem16s#17 ? phi( test_16s::@8/(signed word) rem16s#23 ) - (byte*) print_char_cursor#123 ? phi( test_16s::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#60 ? (byte*) print_char_cursor#123 - (signed word) print_sword::w#4 ? (signed word) rem16s#17 + (word) rem16u#59 ← phi( test_16s::@8/(word) rem16u#63 ) + (byte) test_16s::i#5 ← phi( test_16s::@8/(byte) test_16s::i#6 ) + (byte*) print_line_cursor#49 ← phi( test_16s::@8/(byte*) print_line_cursor#55 ) + (signed word) rem16s#17 ← phi( test_16s::@8/(signed word) rem16s#23 ) + (byte*) print_char_cursor#123 ← phi( test_16s::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#60 ← (byte*) print_char_cursor#123 + (signed word) print_sword::w#4 ← (signed word) rem16s#17 call print_sword to:test_16s::@10 test_16s::@10: scope:[test_16s] from test_16s::@9 - (signed word) rem16s#29 ? phi( test_16s::@9/(signed word) rem16s#17 ) - (word) rem16u#53 ? phi( test_16s::@9/(word) rem16u#59 ) - (byte) test_16s::i#4 ? phi( test_16s::@9/(byte) test_16s::i#5 ) - (byte*) print_line_cursor#44 ? phi( test_16s::@9/(byte*) print_line_cursor#49 ) - (byte*) print_char_cursor#124 ? phi( test_16s::@9/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#61 ? (byte*) print_char_cursor#124 + (signed word) rem16s#29 ← phi( test_16s::@9/(signed word) rem16s#17 ) + (word) rem16u#53 ← phi( test_16s::@9/(word) rem16u#59 ) + (byte) test_16s::i#4 ← phi( test_16s::@9/(byte) test_16s::i#5 ) + (byte*) print_line_cursor#44 ← phi( test_16s::@9/(byte*) print_line_cursor#49 ) + (byte*) print_char_cursor#124 ← phi( test_16s::@9/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#61 ← (byte*) print_char_cursor#124 call print_ln to:test_16s::@11 test_16s::@11: scope:[test_16s] from test_16s::@10 - (signed word) rem16s#24 ? phi( test_16s::@10/(signed word) rem16s#29 ) - (word) rem16u#44 ? phi( test_16s::@10/(word) rem16u#53 ) - (byte) test_16s::i#3 ? phi( test_16s::@10/(byte) test_16s::i#4 ) - (byte*) print_char_cursor#125 ? phi( test_16s::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#36 ? phi( test_16s::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#17 ? (byte*) print_line_cursor#36 - (byte*) print_char_cursor#62 ? (byte*) print_char_cursor#125 - (byte/signed word/word/dword/signed dword~) test_16s::$15 ? (byte) test_16s::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) test_16s::i#1 ? (byte/signed word/word/dword/signed dword~) test_16s::$15 - (bool~) test_16s::$16 ? (byte) test_16s::i#1 != (byte/signed byte/word/signed word/dword/signed dword) $c + (signed word) rem16s#24 ← phi( test_16s::@10/(signed word) rem16s#29 ) + (word) rem16u#44 ← phi( test_16s::@10/(word) rem16u#53 ) + (byte) test_16s::i#3 ← phi( test_16s::@10/(byte) test_16s::i#4 ) + (byte*) print_char_cursor#125 ← phi( test_16s::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#36 ← phi( test_16s::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#17 ← (byte*) print_line_cursor#36 + (byte*) print_char_cursor#62 ← (byte*) print_char_cursor#125 + (byte/signed word/word/dword/signed dword~) test_16s::$15 ← (byte) test_16s::i#3 + (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) test_16s::i#1 ← (byte/signed word/word/dword/signed dword~) test_16s::$15 + (bool~) test_16s::$16 ← (byte) test_16s::i#1 != (byte/signed byte/word/signed word/dword/signed dword) $c if((bool~) test_16s::$16) goto test_16s::@1 to:test_16s::@return test_16s::@return: scope:[test_16s] from test_16s::@11 - (byte*) print_line_cursor#37 ? phi( test_16s::@11/(byte*) print_line_cursor#17 ) - (byte*) print_char_cursor#126 ? phi( test_16s::@11/(byte*) print_char_cursor#62 ) - (signed word) rem16s#18 ? phi( test_16s::@11/(signed word) rem16s#24 ) - (word) rem16u#33 ? phi( test_16s::@11/(word) rem16u#44 ) - (word) rem16u#15 ? (word) rem16u#33 - (signed word) rem16s#9 ? (signed word) rem16s#18 - (byte*) print_char_cursor#63 ? (byte*) print_char_cursor#126 - (byte*) print_line_cursor#18 ? (byte*) print_line_cursor#37 + (byte*) print_line_cursor#37 ← phi( test_16s::@11/(byte*) print_line_cursor#17 ) + (byte*) print_char_cursor#126 ← phi( test_16s::@11/(byte*) print_char_cursor#62 ) + (signed word) rem16s#18 ← phi( test_16s::@11/(signed word) rem16s#24 ) + (word) rem16u#33 ← phi( test_16s::@11/(word) rem16u#44 ) + (word) rem16u#15 ← (word) rem16u#33 + (signed word) rem16s#9 ← (signed word) rem16s#18 + (byte*) print_char_cursor#63 ← (byte*) print_char_cursor#126 + (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#37 return to:@return @32: scope:[] from @25 - (byte*) print_screen#5 ? phi( @25/(byte*) print_screen#6 ) - (signed word) rem16s#25 ? phi( @25/(signed word) rem16s#0 ) - (signed byte) rem8s#21 ? phi( @25/(signed byte) rem8s#26 ) - (word) rem16u#45 ? phi( @25/(word) rem16u#54 ) - (byte) rem8u#41 ? phi( @25/(byte) rem8u#50 ) - (byte*) print_char_cursor#142 ? phi( @25/(byte*) print_char_cursor#150 ) - (byte*) print_line_cursor#45 ? phi( @25/(byte*) print_line_cursor#50 ) + (byte*) print_screen#5 ← phi( @25/(byte*) print_screen#6 ) + (signed word) rem16s#25 ← phi( @25/(signed word) rem16s#0 ) + (signed byte) rem8s#21 ← phi( @25/(signed byte) rem8s#26 ) + (word) rem16u#45 ← phi( @25/(word) rem16u#54 ) + (byte) rem8u#41 ← phi( @25/(byte) rem8u#50 ) + (byte*) print_char_cursor#142 ← phi( @25/(byte*) print_char_cursor#150 ) + (byte*) print_line_cursor#45 ← phi( @25/(byte*) print_line_cursor#50 ) call main to:@33 @33: scope:[] from @32 - (signed word) rem16s#19 ? phi( @32/(signed word) rem16s#7 ) - (signed byte) rem8s#15 ? phi( @32/(signed byte) rem8s#5 ) - (word) rem16u#34 ? phi( @32/(word) rem16u#11 ) - (byte) rem8u#30 ? phi( @32/(byte) rem8u#9 ) - (byte*) print_char_cursor#127 ? phi( @32/(byte*) print_char_cursor#27 ) - (byte*) print_line_cursor#38 ? phi( @32/(byte*) print_line_cursor#10 ) - (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#38 - (byte*) print_char_cursor#64 ? (byte*) print_char_cursor#127 - (byte) rem8u#14 ? (byte) rem8u#30 - (word) rem16u#16 ? (word) rem16u#34 - (signed byte) rem8s#8 ? (signed byte) rem8s#15 - (signed word) rem16s#10 ? (signed word) rem16s#19 + (signed word) rem16s#19 ← phi( @32/(signed word) rem16s#7 ) + (signed byte) rem8s#15 ← phi( @32/(signed byte) rem8s#5 ) + (word) rem16u#34 ← phi( @32/(word) rem16u#11 ) + (byte) rem8u#30 ← phi( @32/(byte) rem8u#9 ) + (byte*) print_char_cursor#127 ← phi( @32/(byte*) print_char_cursor#27 ) + (byte*) print_line_cursor#38 ← phi( @32/(byte*) print_line_cursor#10 ) + (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#38 + (byte*) print_char_cursor#64 ← (byte*) print_char_cursor#127 + (byte) rem8u#14 ← (byte) rem8u#30 + (word) rem16u#16 ← (word) rem16u#34 + (signed byte) rem8s#8 ← (signed byte) rem8s#15 + (signed word) rem16s#10 ← (signed word) rem16s#19 to:@end @end: scope:[] from @33 @@ -2526,11 +2526,11 @@ SYMBOL TABLE SSA (const string) test_8u::str1 = (string) " = @" (const string) test_8u::str2 = (string) " @" -Inversing boolean not [28] (bool~) print_sword::$1 ? (signed word) print_sword::w#5 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [27] (bool~) print_sword::$0 ? (signed word) print_sword::w#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [145] (bool~) divr8u::$3 ? (byte~) divr8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [144] (bool~) divr8u::$2 ? (byte~) divr8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [153] (bool~) divr8u::$8 ? (byte) divr8u::rem#5 < (byte) divr8u::divisor#1 from [152] (bool~) divr8u::$7 ? (byte) divr8u::rem#5 >= (byte) divr8u::divisor#1 -Inversing boolean not [184] (bool~) divr16u::$4 ? (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [183] (bool~) divr16u::$3 ? (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [192] (bool~) divr16u::$9 ? (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [191] (bool~) divr16u::$8 ? (word) divr16u::rem#6 >= (word) divr16u::divisor#2 +Inversing boolean not [28] (bool~) print_sword::$1 ← (signed word) print_sword::w#5 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [27] (bool~) print_sword::$0 ← (signed word) print_sword::w#5 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [145] (bool~) divr8u::$3 ← (byte~) divr8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [144] (bool~) divr8u::$2 ← (byte~) divr8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [153] (bool~) divr8u::$8 ← (byte) divr8u::rem#5 < (byte) divr8u::divisor#1 from [152] (bool~) divr8u::$7 ← (byte) divr8u::rem#5 >= (byte) divr8u::divisor#1 +Inversing boolean not [184] (bool~) divr16u::$4 ← (byte~) divr16u::$2 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [183] (bool~) divr16u::$3 ← (byte~) divr16u::$2 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [192] (bool~) divr16u::$9 ← (word) divr16u::rem#6 < (word) divr16u::divisor#2 from [191] (bool~) divr16u::$8 ← (word) divr16u::rem#6 >= (word) divr16u::divisor#2 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#66 (byte*) print_char_cursor#158 (byte*) print_screen#10 (byte*) print_line_cursor#61 (byte*) print_char_cursor#157 (byte*) print_screen#9 (byte*) print_line_cursor#56 (byte*) print_char_cursor#156 (byte*) print_screen#8 (byte*) print_line_cursor#51 (byte*) print_char_cursor#151 (byte*) print_screen#7 (byte*) print_line_cursor#50 (byte*) print_char_cursor#150 (byte*) print_screen#6 (byte*) print_line_cursor#45 (byte*) print_char_cursor#142 (byte*) print_screen#5 Alias (byte*) print_str::str#13 = (byte*) print_str::str#14 @@ -2935,7 +2935,7 @@ Simple Condition (bool~) test_16u::$10 [504] if((byte) test_16u::i#1!=(byte/sign Simple Condition (bool~) test_8s::$13 [564] if((byte) test_8s::i#1!=rangelast(0,5)) goto test_8s::@1 Simple Condition (bool~) test_16s::$16 [628] if((byte) test_16s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $c) goto test_16s::@1 Successful SSA optimization Pass2ConditionalJumpSimplification -Rewriting || if()-condition to two if()s [290] (bool~) divr16s::$2 ? (bool~) divr16s::$0 || (bool~) divr16s::$1 +Rewriting || if()-condition to two if()s [290] (bool~) divr16s::$2 ← (bool~) divr16s::$0 || (bool~) divr16s::$1 Successful SSA optimization Pass2ConditionalAndOrRewriting Constant (const byte*) print_line_cursor#0 = ((byte*))$400 Constant (const byte) print_char::ch#0 = '-' @@ -3012,32 +3012,32 @@ Successful SSA optimization Pass2ConstantStringConsolidation Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars Successful SSA optimization PassNEliminateUnusedVars -Eliminating Noop Cast (word) print_word::w#0 ? ((word)) (signed word) print_sword::w#6 -Eliminating Noop Cast (byte) print_byte::b#0 ? ((byte)) (signed byte) print_sbyte::b#7 -Eliminating Noop Cast (byte) div8s::dividendu#1 ? ((byte)) (signed byte~) div8s::$5 -Eliminating Noop Cast (byte) div8s::dividendu#2 ? ((byte)) (signed byte) div8s::dividend#0 -Eliminating Noop Cast (byte) div8s::divisoru#1 ? ((byte)) (signed byte~) div8s::$8 -Eliminating Noop Cast (byte) div8s::divisoru#2 ? ((byte)) (signed byte) div8s::divisor#0 -Eliminating Noop Cast (signed byte) rem8s#1 ? ((signed byte)) (byte) rem8u#17 -Eliminating Noop Cast (signed byte) div8s::return#0 ? ((signed byte)) (byte) div8s::resultu#0 -Eliminating Noop Cast (signed byte~) div8s::$11 ? ((signed byte)) (byte) rem8u#17 -Eliminating Noop Cast (signed byte~) div8s::$13 ? ((signed byte)) (byte) div8s::resultu#0 -Eliminating Noop Cast (word) divr16s::dividendu#1 ? ((word)) (signed word~) divr16s::$8 -Eliminating Noop Cast (word) divr16s::dividendu#2 ? ((word)) (signed word) divr16s::dividend#0 -Eliminating Noop Cast (word) divr16s::divisoru#1 ? ((word)) (signed word~) divr16s::$13 -Eliminating Noop Cast (word) divr16s::divisoru#2 ? ((word)) (signed word) divr16s::divisor#0 -Eliminating Noop Cast (signed word) rem16s#1 ? ((signed word)) (word) rem16u#1 -Eliminating Noop Cast (signed word) divr16s::return#0 ? ((signed word)) (word) divr16s::resultu#0 -Eliminating Noop Cast (signed word~) divr16s::$16 ? ((signed word)) (word) rem16u#1 -Eliminating Noop Cast (signed word~) divr16s::$18 ? ((signed word)) (word) divr16s::resultu#0 +Eliminating Noop Cast (word) print_word::w#0 ← ((word)) (signed word) print_sword::w#6 +Eliminating Noop Cast (byte) print_byte::b#0 ← ((byte)) (signed byte) print_sbyte::b#7 +Eliminating Noop Cast (byte) div8s::dividendu#1 ← ((byte)) (signed byte~) div8s::$5 +Eliminating Noop Cast (byte) div8s::dividendu#2 ← ((byte)) (signed byte) div8s::dividend#0 +Eliminating Noop Cast (byte) div8s::divisoru#1 ← ((byte)) (signed byte~) div8s::$8 +Eliminating Noop Cast (byte) div8s::divisoru#2 ← ((byte)) (signed byte) div8s::divisor#0 +Eliminating Noop Cast (signed byte) rem8s#1 ← ((signed byte)) (byte) rem8u#17 +Eliminating Noop Cast (signed byte) div8s::return#0 ← ((signed byte)) (byte) div8s::resultu#0 +Eliminating Noop Cast (signed byte~) div8s::$11 ← ((signed byte)) (byte) rem8u#17 +Eliminating Noop Cast (signed byte~) div8s::$13 ← ((signed byte)) (byte) div8s::resultu#0 +Eliminating Noop Cast (word) divr16s::dividendu#1 ← ((word)) (signed word~) divr16s::$8 +Eliminating Noop Cast (word) divr16s::dividendu#2 ← ((word)) (signed word) divr16s::dividend#0 +Eliminating Noop Cast (word) divr16s::divisoru#1 ← ((word)) (signed word~) divr16s::$13 +Eliminating Noop Cast (word) divr16s::divisoru#2 ← ((word)) (signed word) divr16s::divisor#0 +Eliminating Noop Cast (signed word) rem16s#1 ← ((signed word)) (word) rem16u#1 +Eliminating Noop Cast (signed word) divr16s::return#0 ← ((signed word)) (word) divr16s::resultu#0 +Eliminating Noop Cast (signed word~) divr16s::$16 ← ((signed word)) (word) rem16u#1 +Eliminating Noop Cast (signed word~) divr16s::$18 ← ((signed word)) (word) divr16s::resultu#0 Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value divr8u::i#1 ? ++ divr8u::i#2 to ++ +Resolved ranged next value divr8u::i#1 ← ++ divr8u::i#2 to ++ Resolved ranged comparison value if(divr8u::i#1!=rangelast(0,7)) goto divr8u::@1 to (byte/signed byte/word/signed word/dword/signed dword) 8 -Resolved ranged next value divr16u::i#1 ? ++ divr16u::i#2 to ++ +Resolved ranged next value divr16u::i#1 ← ++ divr16u::i#2 to ++ Resolved ranged comparison value if(divr16u::i#1!=rangelast(0,$f)) goto divr16u::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value test_8u::i#1 ? ++ test_8u::i#10 to ++ +Resolved ranged next value test_8u::i#1 ← ++ test_8u::i#10 to ++ Resolved ranged comparison value if(test_8u::i#1!=rangelast(0,5)) goto test_8u::@1 to (byte/signed byte/word/signed word/dword/signed dword) 6 -Resolved ranged next value test_8s::i#1 ? ++ test_8s::i#10 to ++ +Resolved ranged next value test_8s::i#1 ← ++ test_8s::i#10 to ++ Resolved ranged comparison value if(test_8s::i#1!=rangelast(0,5)) goto test_8s::@1 to (byte/signed byte/word/signed word/dword/signed dword) 6 Culled Empty Block (label) print_ln::@2 Culled Empty Block (label) print_sword::@3 @@ -3220,114 +3220,114 @@ Calls in [div16u] to divr16u:332 Calls in [test_8u] to div8u:344 print_byte:350 print_str:352 print_byte:356 print_str:358 print_byte:362 print_str:364 print_byte:368 print_ln:370 Created 57 initial phi equivalence classes -Coalesced [25] print_sword::w#9 ? print_sword::w#1 -Not coalescing [26] print_char_cursor#159 ? print_line_cursor#1 -Coalesced [31] print_sword::w#10 ? print_sword::w#2 -Coalesced [32] print_char_cursor#160 ? print_char_cursor#128 -Coalesced [37] print_sword::w#11 ? print_sword::w#3 -Coalesced (already) [38] print_char_cursor#161 ? print_char_cursor#128 -Coalesced [43] print_sword::w#12 ? print_sword::w#4 -Coalesced (already) [44] print_char_cursor#162 ? print_char_cursor#128 -Coalesced [46] print_line_cursor#87 ? print_line_cursor#1 -Coalesced [51] test_16s::i#12 ? test_16s::i#1 -Coalesced [53] print_line_cursor#91 ? print_line_cursor#39 -Coalesced (already) [58] print_line_cursor#92 ? print_line_cursor#1 -Coalesced [61] print_char_cursor#181 ? print_char_cursor#131 -Coalesced [64] print_sword::w#14 ? print_sword::w#0 -Coalesced [65] print_char_cursor#164 ? print_char_cursor#18 -Coalesced [68] print_char_cursor#165 ? print_char_cursor#130 -Coalesced [71] print_sword::w#13 ? print_sword::w#5 -Coalesced [72] print_char_cursor#163 ? print_char_cursor#131 -Coalesced [75] print_byte::b#10 ? print_byte::b#1 -Coalesced [76] print_char_cursor#171 ? print_char_cursor#135 -Coalesced [79] print_byte::b#11 ? print_byte::b#2 -Coalesced (already) [80] print_char_cursor#172 ? print_char_cursor#18 -Coalesced [86] print_char::ch#6 ? print_char::ch#3 -Coalesced (already) [87] print_char_cursor#177 ? print_char_cursor#136 -Coalesced [91] print_char::ch#7 ? print_char::ch#4 -Coalesced (already) [92] print_char_cursor#178 ? print_char_cursor#18 -Coalesced [100] print_str::str#16 ? print_str::str#15 -Coalesced (already) [101] print_char_cursor#182 ? print_char_cursor#18 -Coalesced [108] print_str::str#17 ? print_str::str#0 -Coalesced [109] print_char_cursor#183 ? print_char_cursor#1 -Coalesced [121] divr16s::neg#10 ? divr16s::neg#3 -Coalesced [126] divr16u::rem#12 ? divr16u::rem#4 -Coalesced [127] divr16u::dividend#10 ? divr16u::dividend#2 -Coalesced [128] divr16u::divisor#9 ? divr16u::divisor#1 -Coalesced [135] divr16s::return#6 ? divr16s::return#1 -Coalesced [136] rem16s#36 ? rem16s#2 -Coalesced [144] divr16s::neg#9 ? divr16s::neg#2 -Coalesced [148] divr16u::rem#13 ? divr16u::rem#10 -Coalesced [149] divr16u::dividend#11 ? divr16u::dividend#5 -Coalesced [156] divr16u::rem#16 ? divr16u::rem#1 -Coalesced [163] divr16u::rem#18 ? divr16u::rem#2 -Coalesced [164] divr16u::return#8 ? divr16u::quotient#2 -Coalesced [170] divr16u::rem#14 ? divr16u::rem#11 -Coalesced [171] divr16u::dividend#12 ? divr16u::dividend#0 -Coalesced [172] divr16u::quotient#9 ? divr16u::return#0 -Coalesced [173] divr16u::i#7 ? divr16u::i#1 -Coalesced [174] divr16u::rem#17 ? divr16u::rem#6 -Coalesced [175] divr16u::return#7 ? divr16u::quotient#1 -Coalesced [176] divr16u::rem#15 ? divr16u::rem#0 -Coalesced [187] print_sbyte::b#11 ? print_sbyte::b#1 -Not coalescing [188] print_char_cursor#184 ? print_line_cursor#1 -Coalesced [193] print_sbyte::b#12 ? print_sbyte::b#2 -Coalesced [194] print_char_cursor#185 ? print_char_cursor#128 -Coalesced [199] print_sbyte::b#13 ? print_sbyte::b#3 -Coalesced (already) [200] print_char_cursor#186 ? print_char_cursor#128 -Coalesced [205] print_sbyte::b#14 ? print_sbyte::b#4 -Coalesced (already) [206] print_char_cursor#187 ? print_char_cursor#128 -Coalesced (already) [208] print_line_cursor#89 ? print_line_cursor#1 -Coalesced [213] test_8s::i#12 ? test_8s::i#1 -Coalesced (already) [216] print_char_cursor#180 ? print_char_cursor#132 -Coalesced [218] print_sbyte::b#16 ? print_sbyte::b#10 -Coalesced (already) [221] print_char_cursor#170 ? print_char_cursor#18 -Coalesced (already) [224] print_char_cursor#179 ? print_char_cursor#132 -Coalesced [227] print_sbyte::b#15 ? print_sbyte::b#0 -Coalesced [233] div8s::neg#10 ? div8s::neg#3 -Coalesced [237] div8u::dividend#3 ? div8u::dividend#0 -Coalesced [238] div8u::divisor#3 ? div8u::divisor#0 -Coalesced [245] div8s::return#6 ? div8s::return#1 -Coalesced [246] rem8s#32 ? rem8s#2 -Coalesced [254] div8s::neg#9 ? div8s::neg#2 -Coalesced [264] divr8u::dividend#8 ? divr8u::dividend#0 -Coalesced [270] divr8u::rem#13 ? divr8u::rem#2 -Coalesced [277] divr8u::rem#15 ? divr8u::rem#3 -Coalesced [278] divr8u::return#6 ? divr8u::quotient#2 -Coalesced [284] divr8u::rem#11 ? divr8u::rem#10 -Coalesced [285] divr8u::dividend#9 ? divr8u::dividend#1 -Coalesced [286] divr8u::quotient#9 ? divr8u::return#1 -Coalesced [287] divr8u::i#7 ? divr8u::i#1 -Coalesced [288] divr8u::rem#14 ? divr8u::rem#5 -Coalesced [289] divr8u::return#5 ? divr8u::quotient#1 -Coalesced [290] divr8u::rem#12 ? divr8u::rem#1 -Coalesced [301] print_word::w#8 ? print_word::w#1 -Not coalescing [302] print_char_cursor#166 ? print_line_cursor#1 -Coalesced [307] print_word::w#9 ? print_word::w#2 -Coalesced (already) [308] print_char_cursor#167 ? print_char_cursor#128 -Coalesced [313] print_word::w#10 ? print_word::w#3 -Coalesced (already) [314] print_char_cursor#168 ? print_char_cursor#128 -Coalesced [319] print_word::w#11 ? print_word::w#4 -Coalesced (already) [320] print_char_cursor#169 ? print_char_cursor#128 -Coalesced (already) [322] print_line_cursor#88 ? print_line_cursor#1 -Coalesced [327] test_16u::i#12 ? test_16u::i#1 -Coalesced [330] divr16u::dividend#9 ? divr16u::dividend#1 -Coalesced [331] divr16u::divisor#8 ? divr16u::divisor#0 -Coalesced [342] div8u::dividend#4 ? div8u::dividend#1 -Coalesced [343] div8u::divisor#4 ? div8u::divisor#1 -Coalesced [348] print_byte::b#12 ? print_byte::b#3 -Coalesced [349] print_char_cursor#173 ? print_char_cursor#138 -Coalesced [354] print_byte::b#13 ? print_byte::b#4 -Coalesced (already) [355] print_char_cursor#174 ? print_char_cursor#128 -Coalesced [360] print_byte::b#14 ? print_byte::b#5 -Coalesced (already) [361] print_char_cursor#175 ? print_char_cursor#128 -Coalesced [366] print_byte::b#15 ? print_byte::b#6 -Coalesced (already) [367] print_char_cursor#176 ? print_char_cursor#128 -Coalesced [369] print_line_cursor#90 ? print_line_cursor#41 -Coalesced [374] test_8u::i#12 ? test_8u::i#1 -Not coalescing [375] print_char_cursor#188 ? print_line_cursor#1 -Coalesced (already) [376] print_line_cursor#93 ? print_line_cursor#1 -Coalesced [383] print_cls::sc#3 ? print_cls::sc#1 +Coalesced [25] print_sword::w#9 ← print_sword::w#1 +Not coalescing [26] print_char_cursor#159 ← print_line_cursor#1 +Coalesced [31] print_sword::w#10 ← print_sword::w#2 +Coalesced [32] print_char_cursor#160 ← print_char_cursor#128 +Coalesced [37] print_sword::w#11 ← print_sword::w#3 +Coalesced (already) [38] print_char_cursor#161 ← print_char_cursor#128 +Coalesced [43] print_sword::w#12 ← print_sword::w#4 +Coalesced (already) [44] print_char_cursor#162 ← print_char_cursor#128 +Coalesced [46] print_line_cursor#87 ← print_line_cursor#1 +Coalesced [51] test_16s::i#12 ← test_16s::i#1 +Coalesced [53] print_line_cursor#91 ← print_line_cursor#39 +Coalesced (already) [58] print_line_cursor#92 ← print_line_cursor#1 +Coalesced [61] print_char_cursor#181 ← print_char_cursor#131 +Coalesced [64] print_sword::w#14 ← print_sword::w#0 +Coalesced [65] print_char_cursor#164 ← print_char_cursor#18 +Coalesced [68] print_char_cursor#165 ← print_char_cursor#130 +Coalesced [71] print_sword::w#13 ← print_sword::w#5 +Coalesced [72] print_char_cursor#163 ← print_char_cursor#131 +Coalesced [75] print_byte::b#10 ← print_byte::b#1 +Coalesced [76] print_char_cursor#171 ← print_char_cursor#135 +Coalesced [79] print_byte::b#11 ← print_byte::b#2 +Coalesced (already) [80] print_char_cursor#172 ← print_char_cursor#18 +Coalesced [86] print_char::ch#6 ← print_char::ch#3 +Coalesced (already) [87] print_char_cursor#177 ← print_char_cursor#136 +Coalesced [91] print_char::ch#7 ← print_char::ch#4 +Coalesced (already) [92] print_char_cursor#178 ← print_char_cursor#18 +Coalesced [100] print_str::str#16 ← print_str::str#15 +Coalesced (already) [101] print_char_cursor#182 ← print_char_cursor#18 +Coalesced [108] print_str::str#17 ← print_str::str#0 +Coalesced [109] print_char_cursor#183 ← print_char_cursor#1 +Coalesced [121] divr16s::neg#10 ← divr16s::neg#3 +Coalesced [126] divr16u::rem#12 ← divr16u::rem#4 +Coalesced [127] divr16u::dividend#10 ← divr16u::dividend#2 +Coalesced [128] divr16u::divisor#9 ← divr16u::divisor#1 +Coalesced [135] divr16s::return#6 ← divr16s::return#1 +Coalesced [136] rem16s#36 ← rem16s#2 +Coalesced [144] divr16s::neg#9 ← divr16s::neg#2 +Coalesced [148] divr16u::rem#13 ← divr16u::rem#10 +Coalesced [149] divr16u::dividend#11 ← divr16u::dividend#5 +Coalesced [156] divr16u::rem#16 ← divr16u::rem#1 +Coalesced [163] divr16u::rem#18 ← divr16u::rem#2 +Coalesced [164] divr16u::return#8 ← divr16u::quotient#2 +Coalesced [170] divr16u::rem#14 ← divr16u::rem#11 +Coalesced [171] divr16u::dividend#12 ← divr16u::dividend#0 +Coalesced [172] divr16u::quotient#9 ← divr16u::return#0 +Coalesced [173] divr16u::i#7 ← divr16u::i#1 +Coalesced [174] divr16u::rem#17 ← divr16u::rem#6 +Coalesced [175] divr16u::return#7 ← divr16u::quotient#1 +Coalesced [176] divr16u::rem#15 ← divr16u::rem#0 +Coalesced [187] print_sbyte::b#11 ← print_sbyte::b#1 +Not coalescing [188] print_char_cursor#184 ← print_line_cursor#1 +Coalesced [193] print_sbyte::b#12 ← print_sbyte::b#2 +Coalesced [194] print_char_cursor#185 ← print_char_cursor#128 +Coalesced [199] print_sbyte::b#13 ← print_sbyte::b#3 +Coalesced (already) [200] print_char_cursor#186 ← print_char_cursor#128 +Coalesced [205] print_sbyte::b#14 ← print_sbyte::b#4 +Coalesced (already) [206] print_char_cursor#187 ← print_char_cursor#128 +Coalesced (already) [208] print_line_cursor#89 ← print_line_cursor#1 +Coalesced [213] test_8s::i#12 ← test_8s::i#1 +Coalesced (already) [216] print_char_cursor#180 ← print_char_cursor#132 +Coalesced [218] print_sbyte::b#16 ← print_sbyte::b#10 +Coalesced (already) [221] print_char_cursor#170 ← print_char_cursor#18 +Coalesced (already) [224] print_char_cursor#179 ← print_char_cursor#132 +Coalesced [227] print_sbyte::b#15 ← print_sbyte::b#0 +Coalesced [233] div8s::neg#10 ← div8s::neg#3 +Coalesced [237] div8u::dividend#3 ← div8u::dividend#0 +Coalesced [238] div8u::divisor#3 ← div8u::divisor#0 +Coalesced [245] div8s::return#6 ← div8s::return#1 +Coalesced [246] rem8s#32 ← rem8s#2 +Coalesced [254] div8s::neg#9 ← div8s::neg#2 +Coalesced [264] divr8u::dividend#8 ← divr8u::dividend#0 +Coalesced [270] divr8u::rem#13 ← divr8u::rem#2 +Coalesced [277] divr8u::rem#15 ← divr8u::rem#3 +Coalesced [278] divr8u::return#6 ← divr8u::quotient#2 +Coalesced [284] divr8u::rem#11 ← divr8u::rem#10 +Coalesced [285] divr8u::dividend#9 ← divr8u::dividend#1 +Coalesced [286] divr8u::quotient#9 ← divr8u::return#1 +Coalesced [287] divr8u::i#7 ← divr8u::i#1 +Coalesced [288] divr8u::rem#14 ← divr8u::rem#5 +Coalesced [289] divr8u::return#5 ← divr8u::quotient#1 +Coalesced [290] divr8u::rem#12 ← divr8u::rem#1 +Coalesced [301] print_word::w#8 ← print_word::w#1 +Not coalescing [302] print_char_cursor#166 ← print_line_cursor#1 +Coalesced [307] print_word::w#9 ← print_word::w#2 +Coalesced (already) [308] print_char_cursor#167 ← print_char_cursor#128 +Coalesced [313] print_word::w#10 ← print_word::w#3 +Coalesced (already) [314] print_char_cursor#168 ← print_char_cursor#128 +Coalesced [319] print_word::w#11 ← print_word::w#4 +Coalesced (already) [320] print_char_cursor#169 ← print_char_cursor#128 +Coalesced (already) [322] print_line_cursor#88 ← print_line_cursor#1 +Coalesced [327] test_16u::i#12 ← test_16u::i#1 +Coalesced [330] divr16u::dividend#9 ← divr16u::dividend#1 +Coalesced [331] divr16u::divisor#8 ← divr16u::divisor#0 +Coalesced [342] div8u::dividend#4 ← div8u::dividend#1 +Coalesced [343] div8u::divisor#4 ← div8u::divisor#1 +Coalesced [348] print_byte::b#12 ← print_byte::b#3 +Coalesced [349] print_char_cursor#173 ← print_char_cursor#138 +Coalesced [354] print_byte::b#13 ← print_byte::b#4 +Coalesced (already) [355] print_char_cursor#174 ← print_char_cursor#128 +Coalesced [360] print_byte::b#14 ← print_byte::b#5 +Coalesced (already) [361] print_char_cursor#175 ← print_char_cursor#128 +Coalesced [366] print_byte::b#15 ← print_byte::b#6 +Coalesced (already) [367] print_char_cursor#176 ← print_char_cursor#128 +Coalesced [369] print_line_cursor#90 ← print_line_cursor#41 +Coalesced [374] test_8u::i#12 ← test_8u::i#1 +Not coalescing [375] print_char_cursor#188 ← print_line_cursor#1 +Coalesced (already) [376] print_line_cursor#93 ← print_line_cursor#1 +Coalesced [383] print_cls::sc#3 ← print_cls::sc#1 Coalesced down to 35 phi equivalence classes Culled Empty Block (label) test_16s::@12 Culled Empty Block (label) print_ln::@3 @@ -3465,18 +3465,18 @@ test_16s: scope:[test_16s] from main::@4 [15] phi() to:test_16s::@1 test_16s::@1: scope:[test_16s] from test_16s test_16s::@10 - [16] (byte) test_16s::i#10 ? phi( test_16s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_16s::@10/(byte) test_16s::i#1 ) - [17] (signed word) test_16s::dividend#0 ? *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) - [18] (signed word) test_16s::divisor#0 ? *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) - [19] (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 - [20] (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 + [16] (byte) test_16s::i#10 ← phi( test_16s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_16s::@10/(byte) test_16s::i#1 ) + [17] (signed word) test_16s::dividend#0 ← *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) + [18] (signed word) test_16s::divisor#0 ← *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) + [19] (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 + [20] (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 [21] call div16s - [22] (signed word) div16s::return#2 ? (signed word) div16s::return#0 + [22] (signed word) div16s::return#2 ← (signed word) div16s::return#0 to:test_16s::@2 test_16s::@2: scope:[test_16s] from test_16s::@1 - [23] (signed word) test_16s::res#0 ? (signed word) div16s::return#2 - [24] (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#0 - [25] (byte*~) print_char_cursor#159 ? (byte*) print_line_cursor#1 + [23] (signed word) test_16s::res#0 ← (signed word) div16s::return#2 + [24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 + [25] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 [26] call print_sword to:test_16s::@3 test_16s::@3: scope:[test_16s] from test_16s::@2 @@ -3484,7 +3484,7 @@ test_16s::@3: scope:[test_16s] from test_16s::@2 [28] call print_str to:test_16s::@4 test_16s::@4: scope:[test_16s] from test_16s::@3 - [29] (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#0 + [29] (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#0 [30] call print_sword to:test_16s::@5 test_16s::@5: scope:[test_16s] from test_16s::@4 @@ -3492,7 +3492,7 @@ test_16s::@5: scope:[test_16s] from test_16s::@4 [32] call print_str to:test_16s::@6 test_16s::@6: scope:[test_16s] from test_16s::@5 - [33] (signed word) print_sword::w#3 ? (signed word) test_16s::res#0 + [33] (signed word) print_sword::w#3 ← (signed word) test_16s::res#0 [34] call print_sword to:test_16s::@7 test_16s::@7: scope:[test_16s] from test_16s::@6 @@ -3500,7 +3500,7 @@ test_16s::@7: scope:[test_16s] from test_16s::@6 [36] call print_str to:test_16s::@8 test_16s::@8: scope:[test_16s] from test_16s::@7 - [37] (signed word) print_sword::w#4 ? (signed word) rem16s#11 + [37] (signed word) print_sword::w#4 ← (signed word) rem16s#11 [38] call print_sword to:test_16s::@9 test_16s::@9: scope:[test_16s] from test_16s::@8 @@ -3508,26 +3508,26 @@ test_16s::@9: scope:[test_16s] from test_16s::@8 [40] call print_ln to:test_16s::@10 test_16s::@10: scope:[test_16s] from test_16s::@9 - [41] (byte) test_16s::i#1 ? (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [41] (byte) test_16s::i#1 ← (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [42] if((byte) test_16s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $c) goto test_16s::@1 to:test_16s::@return test_16s::@return: scope:[test_16s] from test_16s::@10 [43] return to:@return print_ln: scope:[print_ln] from test_16s::@9 test_16u::@9 test_8s::@9 test_8u::@9 - [44] (byte*) print_line_cursor#39 ? phi( test_16s::@9/(byte*) print_line_cursor#1 test_16u::@9/(byte*) print_line_cursor#1 test_8s::@9/(byte*) print_line_cursor#1 test_8u::@9/(byte*) print_line_cursor#41 ) + [44] (byte*) print_line_cursor#39 ← phi( test_16s::@9/(byte*) print_line_cursor#1 test_16u::@9/(byte*) print_line_cursor#1 test_8s::@9/(byte*) print_line_cursor#1 test_8u::@9/(byte*) print_line_cursor#41 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [45] (byte*) print_line_cursor#20 ? phi( print_ln/(byte*) print_line_cursor#39 print_ln::@1/(byte*) print_line_cursor#1 ) - [46] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [45] (byte*) print_line_cursor#20 ← phi( print_ln/(byte*) print_line_cursor#39 print_ln::@1/(byte*) print_line_cursor#1 ) + [46] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 [47] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#18) goto print_ln::@1 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 [48] return to:@return print_sword: scope:[print_sword] from test_16s::@2 test_16s::@4 test_16s::@6 test_16s::@8 - [49] (byte*) print_char_cursor#131 ? phi( test_16s::@2/(byte*~) print_char_cursor#159 test_16s::@4/(byte*) print_char_cursor#128 test_16s::@6/(byte*) print_char_cursor#128 test_16s::@8/(byte*) print_char_cursor#128 ) - [49] (signed word) print_sword::w#5 ? phi( test_16s::@2/(signed word) print_sword::w#1 test_16s::@4/(signed word) print_sword::w#2 test_16s::@6/(signed word) print_sword::w#3 test_16s::@8/(signed word) print_sword::w#4 ) + [49] (byte*) print_char_cursor#131 ← phi( test_16s::@2/(byte*~) print_char_cursor#159 test_16s::@4/(byte*) print_char_cursor#128 test_16s::@6/(byte*) print_char_cursor#128 test_16s::@8/(byte*) print_char_cursor#128 ) + [49] (signed word) print_sword::w#5 ← phi( test_16s::@2/(signed word) print_sword::w#1 test_16s::@4/(signed word) print_sword::w#2 test_16s::@6/(signed word) print_sword::w#3 test_16s::@8/(signed word) print_sword::w#4 ) [50] if((signed word) print_sword::w#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 to:print_sword::@2 print_sword::@2: scope:[print_sword] from print_sword @@ -3535,78 +3535,78 @@ print_sword::@2: scope:[print_sword] from print_sword [52] call print_char to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@2 - [53] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#5 + [53] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#5 to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@3 - [54] (byte*) print_char_cursor#130 ? phi( print_sword/(byte*) print_char_cursor#131 print_sword::@3/(byte*) print_char_cursor#18 ) - [54] (signed word) print_sword::w#6 ? phi( print_sword/(signed word) print_sword::w#5 print_sword::@3/(signed word) print_sword::w#0 ) - [55] (word~) print_word::w#7 ? (word)(signed word) print_sword::w#6 + [54] (byte*) print_char_cursor#130 ← phi( print_sword/(byte*) print_char_cursor#131 print_sword::@3/(byte*) print_char_cursor#18 ) + [54] (signed word) print_sword::w#6 ← phi( print_sword/(signed word) print_sword::w#5 print_sword::@3/(signed word) print_sword::w#0 ) + [55] (word~) print_word::w#7 ← (word)(signed word) print_sword::w#6 [56] call print_word to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 [57] return to:@return print_word: scope:[print_word] from print_sword::@1 test_16u::@2 test_16u::@4 test_16u::@6 test_16u::@8 - [58] (byte*) print_char_cursor#135 ? phi( print_sword::@1/(byte*) print_char_cursor#130 test_16u::@2/(byte*~) print_char_cursor#166 test_16u::@4/(byte*) print_char_cursor#128 test_16u::@6/(byte*) print_char_cursor#128 test_16u::@8/(byte*) print_char_cursor#128 ) - [58] (word) print_word::w#5 ? phi( print_sword::@1/(word~) print_word::w#7 test_16u::@2/(word) print_word::w#1 test_16u::@4/(word) print_word::w#2 test_16u::@6/(word) print_word::w#3 test_16u::@8/(word) print_word::w#4 ) - [59] (byte) print_byte::b#1 ? > (word) print_word::w#5 + [58] (byte*) print_char_cursor#135 ← phi( print_sword::@1/(byte*) print_char_cursor#130 test_16u::@2/(byte*~) print_char_cursor#166 test_16u::@4/(byte*) print_char_cursor#128 test_16u::@6/(byte*) print_char_cursor#128 test_16u::@8/(byte*) print_char_cursor#128 ) + [58] (word) print_word::w#5 ← phi( print_sword::@1/(word~) print_word::w#7 test_16u::@2/(word) print_word::w#1 test_16u::@4/(word) print_word::w#2 test_16u::@6/(word) print_word::w#3 test_16u::@8/(word) print_word::w#4 ) + [59] (byte) print_byte::b#1 ← > (word) print_word::w#5 [60] call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [61] (byte) print_byte::b#2 ? < (word) print_word::w#5 + [61] (byte) print_byte::b#2 ← < (word) print_word::w#5 [62] call print_byte to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 [63] return to:@return print_byte: scope:[print_byte] from print_sbyte::@2 print_word print_word::@1 test_8u::@2 test_8u::@4 test_8u::@6 test_8u::@8 - [64] (byte*) print_char_cursor#136 ? phi( print_sbyte::@2/(byte*) print_char_cursor#18 print_word/(byte*) print_char_cursor#135 print_word::@1/(byte*) print_char_cursor#18 test_8u::@2/(byte*) print_char_cursor#138 test_8u::@4/(byte*) print_char_cursor#128 test_8u::@6/(byte*) print_char_cursor#128 test_8u::@8/(byte*) print_char_cursor#128 ) - [64] (byte) print_byte::b#7 ? phi( print_sbyte::@2/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@2/(byte) print_byte::b#3 test_8u::@4/(byte) print_byte::b#4 test_8u::@6/(byte) print_byte::b#5 test_8u::@8/(byte) print_byte::b#6 ) - [65] (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [66] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [64] (byte*) print_char_cursor#136 ← phi( print_sbyte::@2/(byte*) print_char_cursor#18 print_word/(byte*) print_char_cursor#135 print_word::@1/(byte*) print_char_cursor#18 test_8u::@2/(byte*) print_char_cursor#138 test_8u::@4/(byte*) print_char_cursor#128 test_8u::@6/(byte*) print_char_cursor#128 test_8u::@8/(byte*) print_char_cursor#128 ) + [64] (byte) print_byte::b#7 ← phi( print_sbyte::@2/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 test_8u::@2/(byte) print_byte::b#3 test_8u::@4/(byte) print_byte::b#4 test_8u::@6/(byte) print_byte::b#5 test_8u::@8/(byte) print_byte::b#6 ) + [65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [66] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [67] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [68] (byte~) print_byte::$2 ? (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f - [69] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f + [69] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [70] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 [71] return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 print_sword::@2 - [72] (byte*) print_char_cursor#82 ? phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#18 print_sbyte::@1/(byte*) print_char_cursor#132 print_sbyte::@3/(byte*) print_char_cursor#132 print_sword::@2/(byte*) print_char_cursor#131 ) - [72] (byte) print_char::ch#5 ? phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' print_sword::@2/(byte) '-' ) - [73] *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 - [74] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#82 + [72] (byte*) print_char_cursor#82 ← phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#18 print_sbyte::@1/(byte*) print_char_cursor#132 print_sbyte::@3/(byte*) print_char_cursor#132 print_sword::@2/(byte*) print_char_cursor#131 ) + [72] (byte) print_char::ch#5 ← phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' print_sword::@2/(byte) '-' ) + [73] *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 + [74] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#82 to:print_char::@return print_char::@return: scope:[print_char] from print_char [75] return to:@return print_str: scope:[print_str] from test_16s::@3 test_16s::@5 test_16s::@7 test_16u::@3 test_16u::@5 test_16u::@7 test_8s::@3 test_8s::@5 test_8s::@7 test_8u::@3 test_8u::@5 test_8u::@7 - [76] (byte*) print_str::str#15 ? phi( test_16s::@3/(const string) str test_16s::@5/(const string) str1 test_16s::@7/(const string) str2 test_16u::@3/(const string) str test_16u::@5/(const string) str1 test_16u::@7/(const string) str2 test_8s::@3/(const string) str test_8s::@5/(const string) str1 test_8s::@7/(const string) str2 test_8u::@3/(const string) str test_8u::@5/(const string) str1 test_8u::@7/(const string) str2 ) + [76] (byte*) print_str::str#15 ← phi( test_16s::@3/(const string) str test_16s::@5/(const string) str1 test_16s::@7/(const string) str2 test_16u::@3/(const string) str test_16u::@5/(const string) str1 test_16u::@7/(const string) str2 test_8s::@3/(const string) str test_8s::@5/(const string) str1 test_8s::@7/(const string) str2 test_8u::@3/(const string) str test_8u::@5/(const string) str1 test_8u::@7/(const string) str2 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [77] (byte*) print_char_cursor#128 ? phi( print_str/(byte*) print_char_cursor#18 print_str::@2/(byte*) print_char_cursor#1 ) - [77] (byte*) print_str::str#13 ? phi( print_str/(byte*) print_str::str#15 print_str::@2/(byte*) print_str::str#0 ) + [77] (byte*) print_char_cursor#128 ← phi( print_str/(byte*) print_char_cursor#18 print_str::@2/(byte*) print_char_cursor#1 ) + [77] (byte*) print_str::str#13 ← phi( print_str/(byte*) print_str::str#15 print_str::@2/(byte*) print_str::str#0 ) [78] if(*((byte*) print_str::str#13)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [79] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [80] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#13) - [81] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 - [82] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#13 + [80] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#13) + [81] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 + [82] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#13 to:print_str::@1 div16s: scope:[div16s] from test_16s::@1 - [83] (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#0 - [84] (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#0 + [83] (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#0 + [84] (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#0 [85] call divr16s - [86] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + [86] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 to:div16s::@1 div16s::@1: scope:[div16s] from div16s - [87] (signed word) div16s::return#0 ? (signed word) divr16s::return#3 + [87] (signed word) div16s::return#0 ← (signed word) divr16s::return#3 to:div16s::@return div16s::@return: scope:[div16s] from div16s::@1 [88] return @@ -3615,88 +3615,88 @@ divr16s: scope:[divr16s] from div16s [89] if((signed word) divr16s::dividend#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@1 to:divr16s::@7 divr16s::@7: scope:[divr16s] from divr16s - [90] (word~) divr16s::dividendu#8 ? (word)(signed word) divr16s::dividend#0 + [90] (word~) divr16s::dividendu#8 ← (word)(signed word) divr16s::dividend#0 to:divr16s::@2 divr16s::@2: scope:[divr16s] from divr16s::@1 divr16s::@7 - [91] (word) divr16s::remu#3 ? phi( divr16s::@1/((word))-(const signed word) divr16s::rem#0 divr16s::@7/((word))(const signed word) divr16s::rem#0 ) - [91] (word) divr16s::dividendu#3 ? phi( divr16s::@1/(word~) divr16s::dividendu#7 divr16s::@7/(word~) divr16s::dividendu#8 ) - [91] (byte) divr16s::neg#3 ? phi( divr16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 divr16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [91] (word) divr16s::remu#3 ← phi( divr16s::@1/((word))-(const signed word) divr16s::rem#0 divr16s::@7/((word))(const signed word) divr16s::rem#0 ) + [91] (word) divr16s::dividendu#3 ← phi( divr16s::@1/(word~) divr16s::dividendu#7 divr16s::@7/(word~) divr16s::dividendu#8 ) + [91] (byte) divr16s::neg#3 ← phi( divr16s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 divr16s::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [92] if((signed word) divr16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@3 to:divr16s::@8 divr16s::@8: scope:[divr16s] from divr16s::@2 - [93] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 + [93] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 to:divr16s::@4 divr16s::@4: scope:[divr16s] from divr16s::@3 divr16s::@8 - [94] (byte) divr16s::neg#4 ? phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@8/(byte) divr16s::neg#3 ) - [94] (word) divr16s::divisoru#3 ? phi( divr16s::@3/(word~) divr16s::divisoru#4 divr16s::@8/(word~) divr16s::divisoru#5 ) - [95] (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 - [96] (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 - [97] (word) divr16u::rem#4 ? (word) divr16s::remu#3 + [94] (byte) divr16s::neg#4 ← phi( divr16s::@3/(byte) divr16s::neg#2 divr16s::@8/(byte) divr16s::neg#3 ) + [94] (word) divr16s::divisoru#3 ← phi( divr16s::@3/(word~) divr16s::divisoru#4 divr16s::@8/(word~) divr16s::divisoru#5 ) + [95] (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 + [96] (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 + [97] (word) divr16u::rem#4 ← (word) divr16s::remu#3 [98] call divr16u - [99] (word) divr16u::return#3 ? (word) divr16u::return#0 + [99] (word) divr16u::return#3 ← (word) divr16u::return#0 to:divr16s::@6 divr16s::@6: scope:[divr16s] from divr16s::@4 - [100] (word) divr16s::resultu#0 ? (word) divr16u::return#3 + [100] (word) divr16s::resultu#0 ← (word) divr16u::return#3 [101] if((byte) divr16s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@9 to:divr16s::@5 divr16s::@5: scope:[divr16s] from divr16s::@6 - [102] (signed word) rem16s#2 ? - (signed word)(word) rem16u#1 - [103] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 + [102] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 + [103] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 to:divr16s::@return divr16s::@return: scope:[divr16s] from divr16s::@5 divr16s::@9 - [104] (signed word) rem16s#11 ? phi( divr16s::@5/(signed word) rem16s#2 divr16s::@9/(signed word~) rem16s#37 ) - [104] (signed word) divr16s::return#2 ? phi( divr16s::@5/(signed word) divr16s::return#1 divr16s::@9/(signed word~) divr16s::return#7 ) + [104] (signed word) rem16s#11 ← phi( divr16s::@5/(signed word) rem16s#2 divr16s::@9/(signed word~) rem16s#37 ) + [104] (signed word) divr16s::return#2 ← phi( divr16s::@5/(signed word) divr16s::return#1 divr16s::@9/(signed word~) divr16s::return#7 ) [105] return to:@return divr16s::@9: scope:[divr16s] from divr16s::@6 - [106] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 - [107] (signed word~) rem16s#37 ? (signed word)(word) rem16u#1 + [106] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 + [107] (signed word~) rem16s#37 ← (signed word)(word) rem16u#1 to:divr16s::@return divr16s::@3: scope:[divr16s] from divr16s::@2 - [108] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 - [109] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 - [110] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 + [108] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 + [109] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 + [110] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 to:divr16s::@4 divr16s::@1: scope:[divr16s] from divr16s - [111] (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#0 - [112] (word~) divr16s::dividendu#7 ? (word)(signed word~) divr16s::$8 + [111] (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#0 + [112] (word~) divr16s::dividendu#7 ← (word)(signed word~) divr16s::$8 to:divr16s::@2 divr16u: scope:[divr16u] from div16u divr16s::@4 - [113] (word) divr16u::divisor#6 ? phi( div16u/(word) divr16u::divisor#0 divr16s::@4/(word) divr16u::divisor#1 ) - [113] (word) divr16u::dividend#5 ? phi( div16u/(word) divr16u::dividend#1 divr16s::@4/(word) divr16u::dividend#2 ) - [113] (word) divr16u::rem#10 ? phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16s::@4/(word) divr16u::rem#4 ) + [113] (word) divr16u::divisor#6 ← phi( div16u/(word) divr16u::divisor#0 divr16s::@4/(word) divr16u::divisor#1 ) + [113] (word) divr16u::dividend#5 ← phi( div16u/(word) divr16u::dividend#1 divr16s::@4/(word) divr16u::dividend#2 ) + [113] (word) divr16u::rem#10 ← phi( div16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16s::@4/(word) divr16u::rem#4 ) to:divr16u::@1 divr16u::@1: scope:[divr16u] from divr16u divr16u::@3 - [114] (byte) divr16u::i#2 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) - [114] (word) divr16u::quotient#3 ? phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) - [114] (word) divr16u::dividend#3 ? phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) - [114] (word) divr16u::rem#5 ? phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) - [115] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [116] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 - [117] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 + [114] (byte) divr16u::i#2 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(byte) divr16u::i#1 ) + [114] (word) divr16u::quotient#3 ← phi( divr16u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr16u::@3/(word) divr16u::return#0 ) + [114] (word) divr16u::dividend#3 ← phi( divr16u/(word) divr16u::dividend#5 divr16u::@3/(word) divr16u::dividend#0 ) + [114] (word) divr16u::rem#5 ← phi( divr16u/(word) divr16u::rem#10 divr16u::@3/(word) divr16u::rem#11 ) + [115] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 + [117] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 [118] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 to:divr16u::@4 divr16u::@4: scope:[divr16u] from divr16u::@1 - [119] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr16u::@2 divr16u::@2: scope:[divr16u] from divr16u::@1 divr16u::@4 - [120] (word) divr16u::rem#6 ? phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) - [121] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [122] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [120] (word) divr16u::rem#6 ← phi( divr16u::@1/(word) divr16u::rem#0 divr16u::@4/(word) divr16u::rem#1 ) + [121] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [122] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [123] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 to:divr16u::@5 divr16u::@5: scope:[divr16u] from divr16u::@2 - [124] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 - [125] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (word) divr16u::divisor#6 + [124] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 + [125] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 to:divr16u::@3 divr16u::@3: scope:[divr16u] from divr16u::@2 divr16u::@5 - [126] (word) divr16u::return#0 ? phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) - [126] (word) divr16u::rem#11 ? phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) - [127] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 + [126] (word) divr16u::return#0 ← phi( divr16u::@2/(word) divr16u::quotient#1 divr16u::@5/(word) divr16u::quotient#2 ) + [126] (word) divr16u::rem#11 ← phi( divr16u::@2/(word) divr16u::rem#6 divr16u::@5/(word) divr16u::rem#2 ) + [127] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 [128] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 to:divr16u::@6 divr16u::@6: scope:[divr16u] from divr16u::@3 - [129] (word) rem16u#1 ? (word) divr16u::rem#11 + [129] (word) rem16u#1 ← (word) divr16u::rem#11 to:divr16u::@return divr16u::@return: scope:[divr16u] from divr16u::@6 [130] return @@ -3705,18 +3705,18 @@ test_8s: scope:[test_8s] from main::@3 [131] phi() to:test_8s::@1 test_8s::@1: scope:[test_8s] from test_8s test_8s::@10 - [132] (byte) test_8s::i#10 ? phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@10/(byte) test_8s::i#1 ) - [133] (signed byte) test_8s::dividend#0 ? *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) - [134] (signed byte) test_8s::divisor#0 ? *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) - [135] (signed byte) div8s::dividend#0 ? (signed byte) test_8s::dividend#0 - [136] (signed byte) div8s::divisor#0 ? (signed byte) test_8s::divisor#0 + [132] (byte) test_8s::i#10 ← phi( test_8s/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8s::@10/(byte) test_8s::i#1 ) + [133] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) + [134] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) + [135] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 + [136] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 [137] call div8s - [138] (signed byte) div8s::return#3 ? (signed byte) div8s::return#2 + [138] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 to:test_8s::@2 test_8s::@2: scope:[test_8s] from test_8s::@1 - [139] (signed byte) test_8s::res#0 ? (signed byte) div8s::return#3 - [140] (signed byte) print_sbyte::b#1 ? (signed byte) test_8s::dividend#0 - [141] (byte*~) print_char_cursor#184 ? (byte*) print_line_cursor#1 + [139] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 + [140] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 + [141] (byte*~) print_char_cursor#184 ← (byte*) print_line_cursor#1 [142] call print_sbyte to:test_8s::@3 test_8s::@3: scope:[test_8s] from test_8s::@2 @@ -3724,7 +3724,7 @@ test_8s::@3: scope:[test_8s] from test_8s::@2 [144] call print_str to:test_8s::@4 test_8s::@4: scope:[test_8s] from test_8s::@3 - [145] (signed byte) print_sbyte::b#2 ? (signed byte) test_8s::divisor#0 + [145] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 [146] call print_sbyte to:test_8s::@5 test_8s::@5: scope:[test_8s] from test_8s::@4 @@ -3732,7 +3732,7 @@ test_8s::@5: scope:[test_8s] from test_8s::@4 [148] call print_str to:test_8s::@6 test_8s::@6: scope:[test_8s] from test_8s::@5 - [149] (signed byte) print_sbyte::b#3 ? (signed byte) test_8s::res#0 + [149] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 [150] call print_sbyte to:test_8s::@7 test_8s::@7: scope:[test_8s] from test_8s::@6 @@ -3740,7 +3740,7 @@ test_8s::@7: scope:[test_8s] from test_8s::@6 [152] call print_str to:test_8s::@8 test_8s::@8: scope:[test_8s] from test_8s::@7 - [153] (signed byte) print_sbyte::b#4 ? (signed byte) rem8s#3 + [153] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 [154] call print_sbyte to:test_8s::@9 test_8s::@9: scope:[test_8s] from test_8s::@8 @@ -3748,15 +3748,15 @@ test_8s::@9: scope:[test_8s] from test_8s::@8 [156] call print_ln to:test_8s::@10 test_8s::@10: scope:[test_8s] from test_8s::@9 - [157] (byte) test_8s::i#1 ? ++ (byte) test_8s::i#10 + [157] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 [158] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@1 to:test_8s::@return test_8s::@return: scope:[test_8s] from test_8s::@10 [159] return to:@return print_sbyte: scope:[print_sbyte] from test_8s::@2 test_8s::@4 test_8s::@6 test_8s::@8 - [160] (byte*) print_char_cursor#132 ? phi( test_8s::@2/(byte*~) print_char_cursor#184 test_8s::@4/(byte*) print_char_cursor#128 test_8s::@6/(byte*) print_char_cursor#128 test_8s::@8/(byte*) print_char_cursor#128 ) - [160] (signed byte) print_sbyte::b#10 ? phi( test_8s::@2/(signed byte) print_sbyte::b#1 test_8s::@4/(signed byte) print_sbyte::b#2 test_8s::@6/(signed byte) print_sbyte::b#3 test_8s::@8/(signed byte) print_sbyte::b#4 ) + [160] (byte*) print_char_cursor#132 ← phi( test_8s::@2/(byte*~) print_char_cursor#184 test_8s::@4/(byte*) print_char_cursor#128 test_8s::@6/(byte*) print_char_cursor#128 test_8s::@8/(byte*) print_char_cursor#128 ) + [160] (signed byte) print_sbyte::b#10 ← phi( test_8s::@2/(signed byte) print_sbyte::b#1 test_8s::@4/(signed byte) print_sbyte::b#2 test_8s::@6/(signed byte) print_sbyte::b#3 test_8s::@8/(signed byte) print_sbyte::b#4 ) [161] if((signed byte) print_sbyte::b#10<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 to:print_sbyte::@3 print_sbyte::@3: scope:[print_sbyte] from print_sbyte @@ -3764,8 +3764,8 @@ print_sbyte::@3: scope:[print_sbyte] from print_sbyte [163] call print_char to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@3 print_sbyte::@4 - [164] (signed byte) print_sbyte::b#7 ? phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#10 ) - [165] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#7 + [164] (signed byte) print_sbyte::b#7 ← phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#10 ) + [165] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#7 [166] call print_byte to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@2 @@ -3776,66 +3776,66 @@ print_sbyte::@1: scope:[print_sbyte] from print_sbyte [169] call print_char to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@1 - [170] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#10 + [170] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#10 to:print_sbyte::@2 div8s: scope:[div8s] from test_8s::@1 [171] if((signed byte) div8s::dividend#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@1 to:div8s::@7 div8s::@7: scope:[div8s] from div8s - [172] (byte~) div8s::dividendu#8 ? (byte)(signed byte) div8s::dividend#0 + [172] (byte~) div8s::dividendu#8 ← (byte)(signed byte) div8s::dividend#0 to:div8s::@2 div8s::@2: scope:[div8s] from div8s::@1 div8s::@7 - [173] (byte) div8s::dividendu#3 ? phi( div8s::@1/(byte~) div8s::dividendu#7 div8s::@7/(byte~) div8s::dividendu#8 ) - [173] (byte) div8s::neg#3 ? phi( div8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 div8s::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [173] (byte) div8s::dividendu#3 ← phi( div8s::@1/(byte~) div8s::dividendu#7 div8s::@7/(byte~) div8s::dividendu#8 ) + [173] (byte) div8s::neg#3 ← phi( div8s::@1/(byte/signed byte/word/signed word/dword/signed dword) 1 div8s::@7/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [174] if((signed byte) div8s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@3 to:div8s::@8 div8s::@8: scope:[div8s] from div8s::@2 - [175] (byte~) div8s::divisoru#5 ? (byte)(signed byte) div8s::divisor#0 + [175] (byte~) div8s::divisoru#5 ← (byte)(signed byte) div8s::divisor#0 to:div8s::@4 div8s::@4: scope:[div8s] from div8s::@3 div8s::@8 - [176] (byte) div8s::neg#4 ? phi( div8s::@3/(byte) div8s::neg#2 div8s::@8/(byte) div8s::neg#3 ) - [176] (byte) div8s::divisoru#3 ? phi( div8s::@3/(byte~) div8s::divisoru#4 div8s::@8/(byte~) div8s::divisoru#5 ) - [177] (byte) div8u::dividend#0 ? (byte) div8s::dividendu#3 - [178] (byte) div8u::divisor#0 ? (byte) div8s::divisoru#3 + [176] (byte) div8s::neg#4 ← phi( div8s::@3/(byte) div8s::neg#2 div8s::@8/(byte) div8s::neg#3 ) + [176] (byte) div8s::divisoru#3 ← phi( div8s::@3/(byte~) div8s::divisoru#4 div8s::@8/(byte~) div8s::divisoru#5 ) + [177] (byte) div8u::dividend#0 ← (byte) div8s::dividendu#3 + [178] (byte) div8u::divisor#0 ← (byte) div8s::divisoru#3 [179] call div8u - [180] (byte) div8u::return#2 ? (byte) div8u::return#0 + [180] (byte) div8u::return#2 ← (byte) div8u::return#0 to:div8s::@6 div8s::@6: scope:[div8s] from div8s::@4 - [181] (byte) div8s::resultu#0 ? (byte) div8u::return#2 + [181] (byte) div8s::resultu#0 ← (byte) div8u::return#2 [182] if((byte) div8s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@9 to:div8s::@5 div8s::@5: scope:[div8s] from div8s::@6 - [183] (signed byte) rem8s#2 ? - (signed byte)(byte) rem8u#17 - [184] (signed byte) div8s::return#1 ? - (signed byte)(byte) div8s::resultu#0 + [183] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 + [184] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 to:div8s::@return div8s::@return: scope:[div8s] from div8s::@5 div8s::@9 - [185] (signed byte) rem8s#3 ? phi( div8s::@5/(signed byte) rem8s#2 div8s::@9/(signed byte~) rem8s#33 ) - [185] (signed byte) div8s::return#2 ? phi( div8s::@5/(signed byte) div8s::return#1 div8s::@9/(signed byte~) div8s::return#7 ) + [185] (signed byte) rem8s#3 ← phi( div8s::@5/(signed byte) rem8s#2 div8s::@9/(signed byte~) rem8s#33 ) + [185] (signed byte) div8s::return#2 ← phi( div8s::@5/(signed byte) div8s::return#1 div8s::@9/(signed byte~) div8s::return#7 ) [186] return to:@return div8s::@9: scope:[div8s] from div8s::@6 - [187] (signed byte~) div8s::return#7 ? (signed byte)(byte) div8s::resultu#0 - [188] (signed byte~) rem8s#33 ? (signed byte)(byte) rem8u#17 + [187] (signed byte~) div8s::return#7 ← (signed byte)(byte) div8s::resultu#0 + [188] (signed byte~) rem8s#33 ← (signed byte)(byte) rem8u#17 to:div8s::@return div8s::@3: scope:[div8s] from div8s::@2 - [189] (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#0 - [190] (byte) div8s::neg#2 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 - [191] (byte~) div8s::divisoru#4 ? (byte)(signed byte~) div8s::$8 + [189] (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#0 + [190] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 + [191] (byte~) div8s::divisoru#4 ← (byte)(signed byte~) div8s::$8 to:div8s::@4 div8s::@1: scope:[div8s] from div8s - [192] (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#0 - [193] (byte~) div8s::dividendu#7 ? (byte)(signed byte~) div8s::$5 + [192] (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#0 + [193] (byte~) div8s::dividendu#7 ← (byte)(signed byte~) div8s::$5 to:div8s::@2 div8u: scope:[div8u] from div8s::@4 test_8u::@1 - [194] (byte) div8u::divisor#2 ? phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) - [194] (byte) div8u::dividend#2 ? phi( div8s::@4/(byte) div8u::dividend#0 test_8u::@1/(byte) div8u::dividend#1 ) - [195] (byte) divr8u::dividend#0 ? (byte) div8u::dividend#2 - [196] (byte) divr8u::divisor#0 ? (byte) div8u::divisor#2 + [194] (byte) div8u::divisor#2 ← phi( div8s::@4/(byte) div8u::divisor#0 test_8u::@1/(byte) div8u::divisor#1 ) + [194] (byte) div8u::dividend#2 ← phi( div8s::@4/(byte) div8u::dividend#0 test_8u::@1/(byte) div8u::dividend#1 ) + [195] (byte) divr8u::dividend#0 ← (byte) div8u::dividend#2 + [196] (byte) divr8u::divisor#0 ← (byte) div8u::divisor#2 [197] call divr8u - [198] (byte) divr8u::return#0 ? (byte) divr8u::return#1 + [198] (byte) divr8u::return#0 ← (byte) divr8u::return#1 to:div8u::@1 div8u::@1: scope:[div8u] from div8u - [199] (byte) div8u::return#0 ? (byte) divr8u::return#0 + [199] (byte) div8u::return#0 ← (byte) divr8u::return#0 to:div8u::@return div8u::@return: scope:[div8u] from div8u::@1 [200] return @@ -3844,35 +3844,35 @@ divr8u: scope:[divr8u] from div8u [201] phi() to:divr8u::@1 divr8u::@1: scope:[divr8u] from divr8u divr8u::@3 - [202] (byte) divr8u::i#2 ? phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::i#1 ) - [202] (byte) divr8u::quotient#3 ? phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::return#1 ) - [202] (byte) divr8u::dividend#2 ? phi( divr8u/(byte) divr8u::dividend#0 divr8u::@3/(byte) divr8u::dividend#1 ) - [202] (byte) divr8u::rem#4 ? phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::rem#10 ) - [203] (byte) divr8u::rem#1 ? (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [204] (byte~) divr8u::$1 ? (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 + [202] (byte) divr8u::i#2 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::i#1 ) + [202] (byte) divr8u::quotient#3 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::return#1 ) + [202] (byte) divr8u::dividend#2 ← phi( divr8u/(byte) divr8u::dividend#0 divr8u::@3/(byte) divr8u::dividend#1 ) + [202] (byte) divr8u::rem#4 ← phi( divr8u/(byte/signed byte/word/signed word/dword/signed dword) 0 divr8u::@3/(byte) divr8u::rem#10 ) + [203] (byte) divr8u::rem#1 ← (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [204] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 [205] if((byte~) divr8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr8u::@2 to:divr8u::@4 divr8u::@4: scope:[divr8u] from divr8u::@1 - [206] (byte) divr8u::rem#2 ? (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 + [206] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 to:divr8u::@2 divr8u::@2: scope:[divr8u] from divr8u::@1 divr8u::@4 - [207] (byte) divr8u::rem#5 ? phi( divr8u::@1/(byte) divr8u::rem#1 divr8u::@4/(byte) divr8u::rem#2 ) - [208] (byte) divr8u::dividend#1 ? (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - [209] (byte) divr8u::quotient#1 ? (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [207] (byte) divr8u::rem#5 ← phi( divr8u::@1/(byte) divr8u::rem#1 divr8u::@4/(byte) divr8u::rem#2 ) + [208] (byte) divr8u::dividend#1 ← (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [209] (byte) divr8u::quotient#1 ← (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 [210] if((byte) divr8u::rem#5<(byte) divr8u::divisor#0) goto divr8u::@3 to:divr8u::@5 divr8u::@5: scope:[divr8u] from divr8u::@2 - [211] (byte) divr8u::quotient#2 ? ++ (byte) divr8u::quotient#1 - [212] (byte) divr8u::rem#3 ? (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 + [211] (byte) divr8u::quotient#2 ← ++ (byte) divr8u::quotient#1 + [212] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 to:divr8u::@3 divr8u::@3: scope:[divr8u] from divr8u::@2 divr8u::@5 - [213] (byte) divr8u::return#1 ? phi( divr8u::@2/(byte) divr8u::quotient#1 divr8u::@5/(byte) divr8u::quotient#2 ) - [213] (byte) divr8u::rem#10 ? phi( divr8u::@2/(byte) divr8u::rem#5 divr8u::@5/(byte) divr8u::rem#3 ) - [214] (byte) divr8u::i#1 ? ++ (byte) divr8u::i#2 + [213] (byte) divr8u::return#1 ← phi( divr8u::@2/(byte) divr8u::quotient#1 divr8u::@5/(byte) divr8u::quotient#2 ) + [213] (byte) divr8u::rem#10 ← phi( divr8u::@2/(byte) divr8u::rem#5 divr8u::@5/(byte) divr8u::rem#3 ) + [214] (byte) divr8u::i#1 ← ++ (byte) divr8u::i#2 [215] if((byte) divr8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto divr8u::@1 to:divr8u::@6 divr8u::@6: scope:[divr8u] from divr8u::@3 - [216] (byte) rem8u#17 ? (byte) divr8u::rem#10 + [216] (byte) rem8u#17 ← (byte) divr8u::rem#10 to:divr8u::@return divr8u::@return: scope:[divr8u] from divr8u::@6 [217] return @@ -3881,18 +3881,18 @@ test_16u: scope:[test_16u] from main::@2 [218] phi() to:test_16u::@1 test_16u::@1: scope:[test_16u] from test_16u test_16u::@10 - [219] (byte) test_16u::i#10 ? phi( test_16u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_16u::@10/(byte) test_16u::i#1 ) - [220] (word) test_16u::dividend#0 ? *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) - [221] (word) test_16u::divisor#0 ? *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) - [222] (word) div16u::dividend#0 ? (word) test_16u::dividend#0 - [223] (word) div16u::divisor#0 ? (word) test_16u::divisor#0 + [219] (byte) test_16u::i#10 ← phi( test_16u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_16u::@10/(byte) test_16u::i#1 ) + [220] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) + [221] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) + [222] (word) div16u::dividend#0 ← (word) test_16u::dividend#0 + [223] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [224] call div16u - [225] (word) div16u::return#2 ? (word) div16u::return#0 + [225] (word) div16u::return#2 ← (word) div16u::return#0 to:test_16u::@2 test_16u::@2: scope:[test_16u] from test_16u::@1 - [226] (word) test_16u::res#0 ? (word) div16u::return#2 - [227] (word) print_word::w#1 ? (word) test_16u::dividend#0 - [228] (byte*~) print_char_cursor#166 ? (byte*) print_line_cursor#1 + [226] (word) test_16u::res#0 ← (word) div16u::return#2 + [227] (word) print_word::w#1 ← (word) test_16u::dividend#0 + [228] (byte*~) print_char_cursor#166 ← (byte*) print_line_cursor#1 [229] call print_word to:test_16u::@3 test_16u::@3: scope:[test_16u] from test_16u::@2 @@ -3900,7 +3900,7 @@ test_16u::@3: scope:[test_16u] from test_16u::@2 [231] call print_str to:test_16u::@4 test_16u::@4: scope:[test_16u] from test_16u::@3 - [232] (word) print_word::w#2 ? (word) test_16u::divisor#0 + [232] (word) print_word::w#2 ← (word) test_16u::divisor#0 [233] call print_word to:test_16u::@5 test_16u::@5: scope:[test_16u] from test_16u::@4 @@ -3908,7 +3908,7 @@ test_16u::@5: scope:[test_16u] from test_16u::@4 [235] call print_str to:test_16u::@6 test_16u::@6: scope:[test_16u] from test_16u::@5 - [236] (word) print_word::w#3 ? (word) test_16u::res#0 + [236] (word) print_word::w#3 ← (word) test_16u::res#0 [237] call print_word to:test_16u::@7 test_16u::@7: scope:[test_16u] from test_16u::@6 @@ -3916,7 +3916,7 @@ test_16u::@7: scope:[test_16u] from test_16u::@6 [239] call print_str to:test_16u::@8 test_16u::@8: scope:[test_16u] from test_16u::@7 - [240] (word) print_word::w#4 ? (word) rem16u#1 + [240] (word) print_word::w#4 ← (word) rem16u#1 [241] call print_word to:test_16u::@9 test_16u::@9: scope:[test_16u] from test_16u::@8 @@ -3924,20 +3924,20 @@ test_16u::@9: scope:[test_16u] from test_16u::@8 [243] call print_ln to:test_16u::@10 test_16u::@10: scope:[test_16u] from test_16u::@9 - [244] (byte) test_16u::i#1 ? (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 + [244] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 [245] if((byte) test_16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $c) goto test_16u::@1 to:test_16u::@return test_16u::@return: scope:[test_16u] from test_16u::@10 [246] return to:@return div16u: scope:[div16u] from test_16u::@1 - [247] (word) divr16u::dividend#1 ? (word) div16u::dividend#0 - [248] (word) divr16u::divisor#0 ? (word) div16u::divisor#0 + [247] (word) divr16u::dividend#1 ← (word) div16u::dividend#0 + [248] (word) divr16u::divisor#0 ← (word) div16u::divisor#0 [249] call divr16u - [250] (word) divr16u::return#2 ? (word) divr16u::return#0 + [250] (word) divr16u::return#2 ← (word) divr16u::return#0 to:div16u::@1 div16u::@1: scope:[div16u] from div16u - [251] (word) div16u::return#0 ? (word) divr16u::return#2 + [251] (word) div16u::return#0 ← (word) divr16u::return#2 to:div16u::@return div16u::@return: scope:[div16u] from div16u::@1 [252] return @@ -3946,19 +3946,19 @@ test_8u: scope:[test_8u] from main::@1 [253] phi() to:test_8u::@1 test_8u::@1: scope:[test_8u] from test_8u test_8u::@11 - [254] (byte*) print_line_cursor#41 ? phi( test_8u/((byte*))(word/signed word/dword/signed dword) $400 test_8u::@11/(byte*) print_line_cursor#1 ) - [254] (byte*) print_char_cursor#138 ? phi( test_8u/((byte*))(word/signed word/dword/signed dword) $400 test_8u::@11/(byte*~) print_char_cursor#188 ) - [254] (byte) test_8u::i#10 ? phi( test_8u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8u::@11/(byte) test_8u::i#1 ) - [255] (byte) test_8u::dividend#0 ? *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) - [256] (byte) test_8u::divisor#0 ? *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) - [257] (byte) div8u::dividend#1 ? (byte) test_8u::dividend#0 - [258] (byte) div8u::divisor#1 ? (byte) test_8u::divisor#0 + [254] (byte*) print_line_cursor#41 ← phi( test_8u/((byte*))(word/signed word/dword/signed dword) $400 test_8u::@11/(byte*) print_line_cursor#1 ) + [254] (byte*) print_char_cursor#138 ← phi( test_8u/((byte*))(word/signed word/dword/signed dword) $400 test_8u::@11/(byte*~) print_char_cursor#188 ) + [254] (byte) test_8u::i#10 ← phi( test_8u/(byte/signed byte/word/signed word/dword/signed dword) 0 test_8u::@11/(byte) test_8u::i#1 ) + [255] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) + [256] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) + [257] (byte) div8u::dividend#1 ← (byte) test_8u::dividend#0 + [258] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 [259] call div8u - [260] (byte) div8u::return#3 ? (byte) div8u::return#0 + [260] (byte) div8u::return#3 ← (byte) div8u::return#0 to:test_8u::@2 test_8u::@2: scope:[test_8u] from test_8u::@1 - [261] (byte) test_8u::res#0 ? (byte) div8u::return#3 - [262] (byte) print_byte::b#3 ? (byte) test_8u::dividend#0 + [261] (byte) test_8u::res#0 ← (byte) div8u::return#3 + [262] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 [263] call print_byte to:test_8u::@3 test_8u::@3: scope:[test_8u] from test_8u::@2 @@ -3966,7 +3966,7 @@ test_8u::@3: scope:[test_8u] from test_8u::@2 [265] call print_str to:test_8u::@4 test_8u::@4: scope:[test_8u] from test_8u::@3 - [266] (byte) print_byte::b#4 ? (byte) test_8u::divisor#0 + [266] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 [267] call print_byte to:test_8u::@5 test_8u::@5: scope:[test_8u] from test_8u::@4 @@ -3974,7 +3974,7 @@ test_8u::@5: scope:[test_8u] from test_8u::@4 [269] call print_str to:test_8u::@6 test_8u::@6: scope:[test_8u] from test_8u::@5 - [270] (byte) print_byte::b#5 ? (byte) test_8u::res#0 + [270] (byte) print_byte::b#5 ← (byte) test_8u::res#0 [271] call print_byte to:test_8u::@7 test_8u::@7: scope:[test_8u] from test_8u::@6 @@ -3982,7 +3982,7 @@ test_8u::@7: scope:[test_8u] from test_8u::@6 [273] call print_str to:test_8u::@8 test_8u::@8: scope:[test_8u] from test_8u::@7 - [274] (byte) print_byte::b#6 ? (byte) rem8u#17 + [274] (byte) print_byte::b#6 ← (byte) rem8u#17 [275] call print_byte to:test_8u::@9 test_8u::@9: scope:[test_8u] from test_8u::@8 @@ -3990,22 +3990,22 @@ test_8u::@9: scope:[test_8u] from test_8u::@8 [277] call print_ln to:test_8u::@10 test_8u::@10: scope:[test_8u] from test_8u::@9 - [278] (byte) test_8u::i#1 ? ++ (byte) test_8u::i#10 + [278] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 [279] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@11 to:test_8u::@return test_8u::@return: scope:[test_8u] from test_8u::@10 [280] return to:@return test_8u::@11: scope:[test_8u] from test_8u::@10 - [281] (byte*~) print_char_cursor#188 ? (byte*) print_line_cursor#1 + [281] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 to:test_8u::@1 print_cls: scope:[print_cls] from main [282] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [283] (byte*) print_cls::sc#2 ? phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) - [284] *((byte*) print_cls::sc#2) ? (byte) ' ' - [285] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [283] (byte*) print_cls::sc#2 ← phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) + [284] *((byte*) print_cls::sc#2) ← (byte) ' ' + [285] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [286] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -4636,31 +4636,31 @@ test_16s: { jmp b1 //SEG36 test_16s::@1 b1: - //SEG37 [17] (signed word) test_16s::dividend#0 ? *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 + //SEG37 [17] (signed word) test_16s::dividend#0 ← *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend lda dividends+1,y sta dividend+1 - //SEG38 [18] (signed word) test_16s::divisor#0 ? *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 + //SEG38 [18] (signed word) test_16s::divisor#0 ← *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor lda divisors+1,y sta divisor+1 - //SEG39 [19] (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 -- vwsz1=vwsz2 + //SEG39 [19] (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 -- vwsz1=vwsz2 lda dividend sta div16s.dividend lda dividend+1 sta div16s.dividend+1 - //SEG40 [20] (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 + //SEG40 [20] (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 lda divisor sta div16s.divisor lda divisor+1 sta div16s.divisor+1 //SEG41 [21] call div16s jsr div16s - //SEG42 [22] (signed word) div16s::return#2 ? (signed word) div16s::return#0 -- vwsz1=vwsz2 + //SEG42 [22] (signed word) div16s::return#2 ← (signed word) div16s::return#0 -- vwsz1=vwsz2 lda div16s.return sta div16s.return_2 lda div16s.return+1 @@ -4668,17 +4668,17 @@ test_16s: { jmp b2 //SEG43 test_16s::@2 b2: - //SEG44 [23] (signed word) test_16s::res#0 ? (signed word) div16s::return#2 -- vwsz1=vwsz2 + //SEG44 [23] (signed word) test_16s::res#0 ← (signed word) div16s::return#2 -- vwsz1=vwsz2 lda div16s.return_2 sta res lda div16s.return_2+1 sta res+1 - //SEG45 [24] (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#0 -- vwsz1=vwsz2 + //SEG45 [24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 -- vwsz1=vwsz2 lda dividend sta print_sword.w lda dividend+1 sta print_sword.w+1 - //SEG46 [25] (byte*~) print_char_cursor#159 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG46 [25] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -4706,7 +4706,7 @@ test_16s: { jmp b4 //SEG56 test_16s::@4 b4: - //SEG57 [29] (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 + //SEG57 [29] (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 lda divisor sta print_sword.w lda divisor+1 @@ -4734,7 +4734,7 @@ test_16s: { jmp b6 //SEG67 test_16s::@6 b6: - //SEG68 [33] (signed word) print_sword::w#3 ? (signed word) test_16s::res#0 -- vwsz1=vwsz2 + //SEG68 [33] (signed word) print_sword::w#3 ← (signed word) test_16s::res#0 -- vwsz1=vwsz2 lda res sta print_sword.w lda res+1 @@ -4762,7 +4762,7 @@ test_16s: { jmp b8 //SEG78 test_16s::@8 b8: - //SEG79 [37] (signed word) print_sword::w#4 ? (signed word) rem16s#11 -- vwsz1=vwsz2 + //SEG79 [37] (signed word) print_sword::w#4 ← (signed word) rem16s#11 -- vwsz1=vwsz2 lda rem16s sta print_sword.w lda rem16s+1 @@ -4786,7 +4786,7 @@ test_16s: { jmp b10 //SEG89 test_16s::@10 b10: - //SEG90 [41] (byte) test_16s::i#1 ? (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG90 [41] (byte) test_16s::i#1 ← (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -4813,7 +4813,7 @@ print_ln: { jmp b1 //SEG97 print_ln::@1 b1: - //SEG98 [46] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG98 [46] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -4860,7 +4860,7 @@ print_sword: { jmp b3 //SEG110 print_sword::@3 b3: - //SEG111 [53] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#5 -- vwsz1=_neg_vwsz1 + //SEG111 [53] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#5 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -4878,7 +4878,7 @@ print_sword: { jmp b1 //SEG115 print_sword::@1 b1: - //SEG116 [55] (word~) print_word::w#7 ? (word)(signed word) print_sword::w#6 -- vwuz1=vwuz2 + //SEG116 [55] (word~) print_word::w#7 ← (word)(signed word) print_sword::w#6 -- vwuz1=vwuz2 lda w sta print_word.w lda w+1 @@ -4900,7 +4900,7 @@ print_sword: { // print_word(word zeropage(7) w) print_word: { .label w = 7 - //SEG124 [59] (byte) print_byte::b#1 ? > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 + //SEG124 [59] (byte) print_byte::b#1 ← > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG125 [60] call print_byte @@ -4912,7 +4912,7 @@ print_word: { jmp b1 //SEG129 print_word::@1 b1: - //SEG130 [61] (byte) print_byte::b#2 ? < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 + //SEG130 [61] (byte) print_byte::b#2 ← < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG131 [62] call print_byte @@ -4934,14 +4934,14 @@ print_byte: { .label _0 = $40 .label _2 = $41 .label b = 9 - //SEG138 [65] (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG138 [65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG139 [66] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG139 [66] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -4954,11 +4954,11 @@ print_byte: { jmp b1 //SEG144 print_byte::@1 b1: - //SEG145 [68] (byte~) print_byte::$2 ? (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG145 [68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG146 [69] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG146 [69] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -4979,11 +4979,11 @@ print_byte: { // print_char(byte zeropage($a) ch) print_char: { .label ch = $a - //SEG154 [73] *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuz2 + //SEG154 [73] *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG155 [74] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#82 -- pbuz1=_inc_pbuz1 + //SEG155 [74] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#82 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -5019,17 +5019,17 @@ print_str: { rts //SEG166 print_str::@2 b2: - //SEG167 [80] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#13) -- _deref_pbuz1=_deref_pbuz2 + //SEG167 [80] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#13) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG168 [81] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 + //SEG168 [81] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG169 [82] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#13 -- pbuz1=_inc_pbuz1 + //SEG169 [82] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#13 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -5049,19 +5049,19 @@ div16s: { .label dividend = $38 .label divisor = $3a .label return_2 = $3c - //SEG171 [83] (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#0 -- vwsz1=vwsz2 + //SEG171 [83] (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#0 -- vwsz1=vwsz2 lda dividend sta divr16s.dividend lda dividend+1 sta divr16s.dividend+1 - //SEG172 [84] (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#0 -- vwsz1=vwsz2 + //SEG172 [84] (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#0 -- vwsz1=vwsz2 lda divisor sta divr16s.divisor lda divisor+1 sta divr16s.divisor+1 //SEG173 [85] call divr16s jsr divr16s - //SEG174 [86] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 -- vwsz1=vwsz2 + //SEG174 [86] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 -- vwsz1=vwsz2 lda divr16s.return sta divr16s.return_3 lda divr16s.return+1 @@ -5069,7 +5069,7 @@ div16s: { jmp b1 //SEG175 div16s::@1 b1: - //SEG176 [87] (signed word) div16s::return#0 ? (signed word) divr16s::return#3 -- vwsz1=vwsz2 + //SEG176 [87] (signed word) div16s::return#0 ← (signed word) divr16s::return#3 -- vwsz1=vwsz2 lda divr16s.return_3 sta return lda divr16s.return_3+1 @@ -5106,7 +5106,7 @@ divr16s: { jmp b7 //SEG181 divr16s::@7 b7: - //SEG182 [90] (word~) divr16s::dividendu#8 ? (word)(signed word) divr16s::dividend#0 -- vwuz1=vwuz2 + //SEG182 [90] (word~) divr16s::dividendu#8 ← (word)(signed word) divr16s::dividend#0 -- vwuz1=vwuz2 lda dividend sta dividendu lda dividend+1 @@ -5131,7 +5131,7 @@ divr16s: { jmp b8 //SEG189 divr16s::@8 b8: - //SEG190 [93] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 -- vwuz1=vwuz2 + //SEG190 [93] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 -- vwuz1=vwuz2 lda divisor sta divisoru lda divisor+1 @@ -5144,17 +5144,17 @@ divr16s: { jmp b4 //SEG194 divr16s::@4 b4: - //SEG195 [95] (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 -- vwuz1=vwuz2 + //SEG195 [95] (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 -- vwuz1=vwuz2 lda dividendu sta divr16u.dividend lda dividendu+1 sta divr16u.dividend+1 - //SEG196 [96] (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 -- vwuz1=vwuz2 + //SEG196 [96] (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 -- vwuz1=vwuz2 lda divisoru sta divr16u.divisor lda divisoru+1 sta divr16u.divisor+1 - //SEG197 [97] (word) divr16u::rem#4 ? (word) divr16s::remu#3 -- vwuz1=vwuz2 + //SEG197 [97] (word) divr16u::rem#4 ← (word) divr16s::remu#3 -- vwuz1=vwuz2 lda remu sta divr16u.rem lda remu+1 @@ -5166,7 +5166,7 @@ divr16s: { //SEG201 [113] phi (word) divr16u::dividend#5 = (word) divr16u::dividend#2 [phi:divr16s::@4->divr16u#1] -- register_copy //SEG202 [113] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:divr16s::@4->divr16u#2] -- register_copy jsr divr16u - //SEG203 [99] (word) divr16u::return#3 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG203 [99] (word) divr16u::return#3 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_3 lda divr16u.return+1 @@ -5174,7 +5174,7 @@ divr16s: { jmp b6 //SEG204 divr16s::@6 b6: - //SEG205 [100] (word) divr16s::resultu#0 ? (word) divr16u::return#3 -- vwuz1=vwuz2 + //SEG205 [100] (word) divr16s::resultu#0 ← (word) divr16u::return#3 -- vwuz1=vwuz2 lda divr16u.return_3 sta resultu lda divr16u.return_3+1 @@ -5186,7 +5186,7 @@ divr16s: { jmp b5 //SEG207 divr16s::@5 b5: - //SEG208 [102] (signed word) rem16s#2 ? - (signed word)(word) rem16u#1 -- vwsz1=_neg_vwsz2 + //SEG208 [102] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 -- vwsz1=_neg_vwsz2 sec lda rem16u eor #$ff @@ -5196,7 +5196,7 @@ divr16s: { eor #$ff adc #0 sta rem16s+1 - //SEG209 [103] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz2 + //SEG209 [103] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz2 sec lda resultu eor #$ff @@ -5218,12 +5218,12 @@ divr16s: { rts //SEG215 divr16s::@9 b9: - //SEG216 [106] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 -- vwsz1=vwsz2 + //SEG216 [106] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 -- vwsz1=vwsz2 lda resultu sta return lda resultu+1 sta return+1 - //SEG217 [107] (signed word~) rem16s#37 ? (signed word)(word) rem16u#1 -- vwsz1=vwsz2 + //SEG217 [107] (signed word~) rem16s#37 ← (signed word)(word) rem16u#1 -- vwsz1=vwsz2 lda rem16u sta rem16s lda rem16u+1 @@ -5231,7 +5231,7 @@ divr16s: { jmp breturn_from_b9 //SEG218 divr16s::@3 b3: - //SEG219 [108] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz2 + //SEG219 [108] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz2 sec lda divisor eor #$ff @@ -5241,11 +5241,11 @@ divr16s: { eor #$ff adc #0 sta _13+1 - //SEG220 [109] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG220 [109] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG221 [110] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 -- vwuz1=vwuz2 + //SEG221 [110] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 -- vwuz1=vwuz2 lda _13 sta divisoru lda _13+1 @@ -5253,7 +5253,7 @@ divr16s: { jmp b4_from_b3 //SEG222 divr16s::@1 b1: - //SEG223 [111] (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#0 -- vwsz1=_neg_vwsz2 + //SEG223 [111] (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#0 -- vwsz1=_neg_vwsz2 sec lda dividend eor #$ff @@ -5263,7 +5263,7 @@ divr16s: { eor #$ff adc #0 sta _8+1 - //SEG224 [112] (word~) divr16s::dividendu#7 ? (word)(signed word~) divr16s::$8 -- vwuz1=vwuz2 + //SEG224 [112] (word~) divr16s::dividendu#7 ← (word)(signed word~) divr16s::$8 -- vwuz1=vwuz2 lda _8 sta dividendu lda _8+1 @@ -5320,13 +5320,13 @@ divr16u: { jmp b1 //SEG240 divr16u::@1 b1: - //SEG241 [115] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG241 [115] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG242 [116] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 + //SEG242 [116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuz1=_hi_vwuz2 lda dividend+1 sta _1 - //SEG243 [117] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG243 [117] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and _1 sta _2 @@ -5337,7 +5337,7 @@ divr16u: { jmp b4 //SEG245 divr16u::@4 b4: - //SEG246 [119] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG246 [119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -5348,10 +5348,10 @@ divr16u: { jmp b2 //SEG249 divr16u::@2 b2: - //SEG250 [121] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG250 [121] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG251 [122] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG251 [122] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG252 [123] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 -- vwuz1_lt_vwuz2_then_la1 @@ -5366,12 +5366,12 @@ divr16u: { jmp b5 //SEG253 divr16u::@5 b5: - //SEG254 [124] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG254 [124] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG255 [125] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (word) divr16u::divisor#6 -- vwuz1=vwuz1_minus_vwuz2 + //SEG255 [125] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 -- vwuz1=vwuz1_minus_vwuz2 lda rem sec sbc divisor @@ -5387,7 +5387,7 @@ divr16u: { jmp b3 //SEG259 divr16u::@3 b3: - //SEG260 [127] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuz1=_inc_vbuz1 + //SEG260 [127] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG261 [128] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -5396,7 +5396,7 @@ divr16u: { jmp b6 //SEG262 divr16u::@6 b6: - //SEG263 [129] (word) rem16u#1 ? (word) divr16u::rem#11 -- vwuz1=vwuz2 + //SEG263 [129] (word) rem16u#1 ← (word) divr16u::rem#11 -- vwuz1=vwuz2 lda rem sta rem16u lda rem+1 @@ -5425,35 +5425,35 @@ test_8s: { jmp b1 //SEG271 test_8s::@1 b1: - //SEG272 [133] (signed byte) test_8s::dividend#0 ? *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG272 [133] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG273 [134] (signed byte) test_8s::divisor#0 ? *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG273 [134] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG274 [135] (signed byte) div8s::dividend#0 ? (signed byte) test_8s::dividend#0 -- vbsz1=vbsz2 + //SEG274 [135] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 -- vbsz1=vbsz2 lda dividend sta div8s.dividend - //SEG275 [136] (signed byte) div8s::divisor#0 ? (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 + //SEG275 [136] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 lda divisor sta div8s.divisor //SEG276 [137] call div8s jsr div8s - //SEG277 [138] (signed byte) div8s::return#3 ? (signed byte) div8s::return#2 -- vbsz1=vbsz2 + //SEG277 [138] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 -- vbsz1=vbsz2 lda div8s.return sta div8s.return_3 jmp b2 //SEG278 test_8s::@2 b2: - //SEG279 [139] (signed byte) test_8s::res#0 ? (signed byte) div8s::return#3 -- vbsz1=vbsz2 + //SEG279 [139] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 -- vbsz1=vbsz2 lda div8s.return_3 sta res - //SEG280 [140] (signed byte) print_sbyte::b#1 ? (signed byte) test_8s::dividend#0 -- vbsz1=vbsz2 + //SEG280 [140] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 -- vbsz1=vbsz2 lda dividend sta print_sbyte.b - //SEG281 [141] (byte*~) print_char_cursor#184 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG281 [141] (byte*~) print_char_cursor#184 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -5481,7 +5481,7 @@ test_8s: { jmp b4 //SEG291 test_8s::@4 b4: - //SEG292 [145] (signed byte) print_sbyte::b#2 ? (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 + //SEG292 [145] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 lda divisor sta print_sbyte.b //SEG293 [146] call print_sbyte @@ -5507,7 +5507,7 @@ test_8s: { jmp b6 //SEG302 test_8s::@6 b6: - //SEG303 [149] (signed byte) print_sbyte::b#3 ? (signed byte) test_8s::res#0 -- vbsz1=vbsz2 + //SEG303 [149] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 -- vbsz1=vbsz2 lda res sta print_sbyte.b //SEG304 [150] call print_sbyte @@ -5533,7 +5533,7 @@ test_8s: { jmp b8 //SEG313 test_8s::@8 b8: - //SEG314 [153] (signed byte) print_sbyte::b#4 ? (signed byte) rem8s#3 -- vbsz1=vbsz2 + //SEG314 [153] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 -- vbsz1=vbsz2 lda rem8s sta print_sbyte.b //SEG315 [154] call print_sbyte @@ -5555,7 +5555,7 @@ test_8s: { jmp b10 //SEG324 test_8s::@10 b10: - //SEG325 [157] (byte) test_8s::i#1 ? ++ (byte) test_8s::i#10 -- vbuz1=_inc_vbuz1 + //SEG325 [157] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 -- vbuz1=_inc_vbuz1 inc i //SEG326 [158] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@1 -- vbuz1_neq_vbuc1_then_la1 lda #6 @@ -5597,7 +5597,7 @@ print_sbyte: { jmp b2 //SEG339 print_sbyte::@2 b2: - //SEG340 [165] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#7 -- vbuz1=vbuz2 + //SEG340 [165] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#7 -- vbuz1=vbuz2 lda b sta print_byte.b //SEG341 [166] call print_byte @@ -5627,7 +5627,7 @@ print_sbyte: { jmp b4 //SEG353 print_sbyte::@4 b4: - //SEG354 [170] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#10 -- vbsz1=_neg_vbsz1 + //SEG354 [170] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#10 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -5660,7 +5660,7 @@ div8s: { jmp b7 //SEG357 div8s::@7 b7: - //SEG358 [172] (byte~) div8s::dividendu#8 ? (byte)(signed byte) div8s::dividend#0 -- vbuz1=vbuz2 + //SEG358 [172] (byte~) div8s::dividendu#8 ← (byte)(signed byte) div8s::dividend#0 -- vbuz1=vbuz2 lda dividend sta dividendu //SEG359 [173] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] @@ -5678,7 +5678,7 @@ div8s: { jmp b8 //SEG364 div8s::@8 b8: - //SEG365 [175] (byte~) div8s::divisoru#5 ? (byte)(signed byte) div8s::divisor#0 -- vbuz1=vbuz2 + //SEG365 [175] (byte~) div8s::divisoru#5 ← (byte)(signed byte) div8s::divisor#0 -- vbuz1=vbuz2 lda divisor sta divisoru //SEG366 [176] phi from div8s::@3 div8s::@8 to div8s::@4 [phi:div8s::@3/div8s::@8->div8s::@4] @@ -5689,10 +5689,10 @@ div8s: { jmp b4 //SEG369 div8s::@4 b4: - //SEG370 [177] (byte) div8u::dividend#0 ? (byte) div8s::dividendu#3 -- vbuz1=vbuz2 + //SEG370 [177] (byte) div8u::dividend#0 ← (byte) div8s::dividendu#3 -- vbuz1=vbuz2 lda dividendu sta div8u.dividend - //SEG371 [178] (byte) div8u::divisor#0 ? (byte) div8s::divisoru#3 -- vbuz1=vbuz2 + //SEG371 [178] (byte) div8u::divisor#0 ← (byte) div8s::divisoru#3 -- vbuz1=vbuz2 lda divisoru sta div8u.divisor //SEG372 [179] call div8u @@ -5701,13 +5701,13 @@ div8s: { //SEG374 [194] phi (byte) div8u::divisor#2 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#0] -- register_copy //SEG375 [194] phi (byte) div8u::dividend#2 = (byte) div8u::dividend#0 [phi:div8s::@4->div8u#1] -- register_copy jsr div8u - //SEG376 [180] (byte) div8u::return#2 ? (byte) div8u::return#0 -- vbuz1=vbuz2 + //SEG376 [180] (byte) div8u::return#2 ← (byte) div8u::return#0 -- vbuz1=vbuz2 lda div8u.return sta div8u.return_2 jmp b6 //SEG377 div8s::@6 b6: - //SEG378 [181] (byte) div8s::resultu#0 ? (byte) div8u::return#2 -- vbuz1=vbuz2 + //SEG378 [181] (byte) div8s::resultu#0 ← (byte) div8u::return#2 -- vbuz1=vbuz2 lda div8u.return_2 sta resultu //SEG379 [182] if((byte) div8s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@9 -- vbuz1_eq_0_then_la1 @@ -5717,13 +5717,13 @@ div8s: { jmp b5 //SEG380 div8s::@5 b5: - //SEG381 [183] (signed byte) rem8s#2 ? - (signed byte)(byte) rem8u#17 -- vbsz1=_neg_vbsz2 + //SEG381 [183] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 -- vbsz1=_neg_vbsz2 lda rem8u eor #$ff clc adc #1 sta rem8s - //SEG382 [184] (signed byte) div8s::return#1 ? - (signed byte)(byte) div8s::resultu#0 -- vbsz1=_neg_vbsz2 + //SEG382 [184] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 -- vbsz1=_neg_vbsz2 lda resultu eor #$ff clc @@ -5741,38 +5741,38 @@ div8s: { rts //SEG388 div8s::@9 b9: - //SEG389 [187] (signed byte~) div8s::return#7 ? (signed byte)(byte) div8s::resultu#0 -- vbsz1=vbsz2 + //SEG389 [187] (signed byte~) div8s::return#7 ← (signed byte)(byte) div8s::resultu#0 -- vbsz1=vbsz2 lda resultu sta return - //SEG390 [188] (signed byte~) rem8s#33 ? (signed byte)(byte) rem8u#17 -- vbsz1=vbsz2 + //SEG390 [188] (signed byte~) rem8s#33 ← (signed byte)(byte) rem8u#17 -- vbsz1=vbsz2 lda rem8u sta rem8s jmp breturn_from_b9 //SEG391 div8s::@3 b3: - //SEG392 [189] (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#0 -- vbsz1=_neg_vbsz2 + //SEG392 [189] (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#0 -- vbsz1=_neg_vbsz2 lda divisor eor #$ff clc adc #1 sta _8 - //SEG393 [190] (byte) div8s::neg#2 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG393 [190] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG394 [191] (byte~) div8s::divisoru#4 ? (byte)(signed byte~) div8s::$8 -- vbuz1=vbuz2 + //SEG394 [191] (byte~) div8s::divisoru#4 ← (byte)(signed byte~) div8s::$8 -- vbuz1=vbuz2 lda _8 sta divisoru jmp b4_from_b3 //SEG395 div8s::@1 b1: - //SEG396 [192] (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#0 -- vbsz1=_neg_vbsz2 + //SEG396 [192] (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#0 -- vbsz1=_neg_vbsz2 lda dividend eor #$ff clc adc #1 sta _5 - //SEG397 [193] (byte~) div8s::dividendu#7 ? (byte)(signed byte~) div8s::$5 -- vbuz1=vbuz2 + //SEG397 [193] (byte~) div8s::dividendu#7 ← (byte)(signed byte~) div8s::$5 -- vbuz1=vbuz2 lda _5 sta dividendu //SEG398 [173] phi from div8s::@1 to div8s::@2 [phi:div8s::@1->div8s::@2] @@ -5795,23 +5795,23 @@ div8u: { .label divisor = $2b .label return_2 = $5c .label return_3 = $77 - //SEG402 [195] (byte) divr8u::dividend#0 ? (byte) div8u::dividend#2 -- vbuz1=vbuz2 + //SEG402 [195] (byte) divr8u::dividend#0 ← (byte) div8u::dividend#2 -- vbuz1=vbuz2 lda dividend sta divr8u.dividend - //SEG403 [196] (byte) divr8u::divisor#0 ? (byte) div8u::divisor#2 -- vbuz1=vbuz2 + //SEG403 [196] (byte) divr8u::divisor#0 ← (byte) div8u::divisor#2 -- vbuz1=vbuz2 lda divisor sta divr8u.divisor //SEG404 [197] call divr8u //SEG405 [201] phi from div8u to divr8u [phi:div8u->divr8u] divr8u_from_div8u: jsr divr8u - //SEG406 [198] (byte) divr8u::return#0 ? (byte) divr8u::return#1 -- vbuz1=vbuz2 + //SEG406 [198] (byte) divr8u::return#0 ← (byte) divr8u::return#1 -- vbuz1=vbuz2 lda divr8u.return_1 sta divr8u.return jmp b1 //SEG407 div8u::@1 b1: - //SEG408 [199] (byte) div8u::return#0 ? (byte) divr8u::return#0 -- vbuz1=vbuz2 + //SEG408 [199] (byte) div8u::return#0 ← (byte) divr8u::return#0 -- vbuz1=vbuz2 lda divr8u.return sta return jmp breturn @@ -5857,9 +5857,9 @@ divr8u: { jmp b1 //SEG422 divr8u::@1 b1: - //SEG423 [203] (byte) divr8u::rem#1 ? (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG423 [203] (byte) divr8u::rem#1 ← (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl rem - //SEG424 [204] (byte~) divr8u::$1 ? (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 + //SEG424 [204] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuz1=vbuz2_band_vbuc1 lda #$80 and dividend sta _1 @@ -5870,7 +5870,7 @@ divr8u: { jmp b4 //SEG426 divr8u::@4 b4: - //SEG427 [206] (byte) divr8u::rem#2 ? (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bor_vbuc1 + //SEG427 [206] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -5881,9 +5881,9 @@ divr8u: { jmp b2 //SEG430 divr8u::@2 b2: - //SEG431 [208] (byte) divr8u::dividend#1 ? (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG431 [208] (byte) divr8u::dividend#1 ← (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl dividend - //SEG432 [209] (byte) divr8u::quotient#1 ? (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG432 [209] (byte) divr8u::quotient#1 ← (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl quotient //SEG433 [210] if((byte) divr8u::rem#5<(byte) divr8u::divisor#0) goto divr8u::@3 -- vbuz1_lt_vbuz2_then_la1 lda rem @@ -5892,9 +5892,9 @@ divr8u: { jmp b5 //SEG434 divr8u::@5 b5: - //SEG435 [211] (byte) divr8u::quotient#2 ? ++ (byte) divr8u::quotient#1 -- vbuz1=_inc_vbuz1 + //SEG435 [211] (byte) divr8u::quotient#2 ← ++ (byte) divr8u::quotient#1 -- vbuz1=_inc_vbuz1 inc quotient - //SEG436 [212] (byte) divr8u::rem#3 ? (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 -- vbuz1=vbuz1_minus_vbuz2 + //SEG436 [212] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 -- vbuz1=vbuz1_minus_vbuz2 lda rem sec sbc divisor @@ -5907,7 +5907,7 @@ divr8u: { jmp b3 //SEG440 divr8u::@3 b3: - //SEG441 [214] (byte) divr8u::i#1 ? ++ (byte) divr8u::i#2 -- vbuz1=_inc_vbuz1 + //SEG441 [214] (byte) divr8u::i#1 ← ++ (byte) divr8u::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG442 [215] if((byte) divr8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto divr8u::@1 -- vbuz1_neq_vbuc1_then_la1 lda #8 @@ -5916,7 +5916,7 @@ divr8u: { jmp b6 //SEG443 divr8u::@6 b6: - //SEG444 [216] (byte) rem8u#17 ? (byte) divr8u::rem#10 -- vbuz1=vbuz2 + //SEG444 [216] (byte) rem8u#17 ← (byte) divr8u::rem#10 -- vbuz1=vbuz2 lda rem sta rem8u jmp breturn @@ -5943,31 +5943,31 @@ test_16u: { jmp b1 //SEG452 test_16u::@1 b1: - //SEG453 [220] (word) test_16u::dividend#0 ? *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG453 [220] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend lda dividends+1,y sta dividend+1 - //SEG454 [221] (word) test_16u::divisor#0 ? *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG454 [221] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor lda divisors+1,y sta divisor+1 - //SEG455 [222] (word) div16u::dividend#0 ? (word) test_16u::dividend#0 -- vwuz1=vwuz2 + //SEG455 [222] (word) div16u::dividend#0 ← (word) test_16u::dividend#0 -- vwuz1=vwuz2 lda dividend sta div16u.dividend lda dividend+1 sta div16u.dividend+1 - //SEG456 [223] (word) div16u::divisor#0 ? (word) test_16u::divisor#0 -- vwuz1=vwuz2 + //SEG456 [223] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 -- vwuz1=vwuz2 lda divisor sta div16u.divisor lda divisor+1 sta div16u.divisor+1 //SEG457 [224] call div16u jsr div16u - //SEG458 [225] (word) div16u::return#2 ? (word) div16u::return#0 -- vwuz1=vwuz2 + //SEG458 [225] (word) div16u::return#2 ← (word) div16u::return#0 -- vwuz1=vwuz2 lda div16u.return sta div16u.return_2 lda div16u.return+1 @@ -5975,17 +5975,17 @@ test_16u: { jmp b2 //SEG459 test_16u::@2 b2: - //SEG460 [226] (word) test_16u::res#0 ? (word) div16u::return#2 -- vwuz1=vwuz2 + //SEG460 [226] (word) test_16u::res#0 ← (word) div16u::return#2 -- vwuz1=vwuz2 lda div16u.return_2 sta res lda div16u.return_2+1 sta res+1 - //SEG461 [227] (word) print_word::w#1 ? (word) test_16u::dividend#0 -- vwuz1=vwuz2 + //SEG461 [227] (word) print_word::w#1 ← (word) test_16u::dividend#0 -- vwuz1=vwuz2 lda dividend sta print_word.w lda dividend+1 sta print_word.w+1 - //SEG462 [228] (byte*~) print_char_cursor#166 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG462 [228] (byte*~) print_char_cursor#166 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -6013,7 +6013,7 @@ test_16u: { jmp b4 //SEG472 test_16u::@4 b4: - //SEG473 [232] (word) print_word::w#2 ? (word) test_16u::divisor#0 -- vwuz1=vwuz2 + //SEG473 [232] (word) print_word::w#2 ← (word) test_16u::divisor#0 -- vwuz1=vwuz2 lda divisor sta print_word.w lda divisor+1 @@ -6041,7 +6041,7 @@ test_16u: { jmp b6 //SEG483 test_16u::@6 b6: - //SEG484 [236] (word) print_word::w#3 ? (word) test_16u::res#0 -- vwuz1=vwuz2 + //SEG484 [236] (word) print_word::w#3 ← (word) test_16u::res#0 -- vwuz1=vwuz2 lda res sta print_word.w lda res+1 @@ -6069,7 +6069,7 @@ test_16u: { jmp b8 //SEG494 test_16u::@8 b8: - //SEG495 [240] (word) print_word::w#4 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG495 [240] (word) print_word::w#4 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta print_word.w lda rem16u+1 @@ -6093,7 +6093,7 @@ test_16u: { jmp b10 //SEG505 test_16u::@10 b10: - //SEG506 [244] (byte) test_16u::i#1 ? (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG506 [244] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -6121,12 +6121,12 @@ div16u: { .label dividend = $69 .label divisor = $6b .label return_2 = $6d - //SEG511 [247] (word) divr16u::dividend#1 ? (word) div16u::dividend#0 -- vwuz1=vwuz2 + //SEG511 [247] (word) divr16u::dividend#1 ← (word) div16u::dividend#0 -- vwuz1=vwuz2 lda dividend sta divr16u.dividend lda dividend+1 sta divr16u.dividend+1 - //SEG512 [248] (word) divr16u::divisor#0 ? (word) div16u::divisor#0 -- vwuz1=vwuz2 + //SEG512 [248] (word) divr16u::divisor#0 ← (word) div16u::divisor#0 -- vwuz1=vwuz2 lda divisor sta divr16u.divisor lda divisor+1 @@ -6142,7 +6142,7 @@ div16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG518 [250] (word) divr16u::return#2 ? (word) divr16u::return#0 -- vwuz1=vwuz2 + //SEG518 [250] (word) divr16u::return#2 ← (word) divr16u::return#0 -- vwuz1=vwuz2 lda divr16u.return sta divr16u.return_2 lda divr16u.return+1 @@ -6150,7 +6150,7 @@ div16u: { jmp b1 //SEG519 div16u::@1 b1: - //SEG520 [251] (word) div16u::return#0 ? (word) divr16u::return#2 -- vwuz1=vwuz2 + //SEG520 [251] (word) div16u::return#0 ← (word) divr16u::return#2 -- vwuz1=vwuz2 lda divr16u.return_2 sta return lda divr16u.return_2+1 @@ -6185,18 +6185,18 @@ test_8u: { jmp b1 //SEG528 test_8u::@1 b1: - //SEG529 [255] (byte) test_8u::dividend#0 ? *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG529 [255] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG530 [256] (byte) test_8u::divisor#0 ? *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG530 [256] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG531 [257] (byte) div8u::dividend#1 ? (byte) test_8u::dividend#0 -- vbuz1=vbuz2 + //SEG531 [257] (byte) div8u::dividend#1 ← (byte) test_8u::dividend#0 -- vbuz1=vbuz2 lda dividend sta div8u.dividend - //SEG532 [258] (byte) div8u::divisor#1 ? (byte) test_8u::divisor#0 -- vbuz1=vbuz2 + //SEG532 [258] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 -- vbuz1=vbuz2 lda divisor sta div8u.divisor //SEG533 [259] call div8u @@ -6205,16 +6205,16 @@ test_8u: { //SEG535 [194] phi (byte) div8u::divisor#2 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#0] -- register_copy //SEG536 [194] phi (byte) div8u::dividend#2 = (byte) div8u::dividend#1 [phi:test_8u::@1->div8u#1] -- register_copy jsr div8u - //SEG537 [260] (byte) div8u::return#3 ? (byte) div8u::return#0 -- vbuz1=vbuz2 + //SEG537 [260] (byte) div8u::return#3 ← (byte) div8u::return#0 -- vbuz1=vbuz2 lda div8u.return sta div8u.return_3 jmp b2 //SEG538 test_8u::@2 b2: - //SEG539 [261] (byte) test_8u::res#0 ? (byte) div8u::return#3 -- vbuz1=vbuz2 + //SEG539 [261] (byte) test_8u::res#0 ← (byte) div8u::return#3 -- vbuz1=vbuz2 lda div8u.return_3 sta res - //SEG540 [262] (byte) print_byte::b#3 ? (byte) test_8u::dividend#0 -- vbuz1=vbuz2 + //SEG540 [262] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 -- vbuz1=vbuz2 lda dividend sta print_byte.b //SEG541 [263] call print_byte @@ -6240,7 +6240,7 @@ test_8u: { jmp b4 //SEG550 test_8u::@4 b4: - //SEG551 [266] (byte) print_byte::b#4 ? (byte) test_8u::divisor#0 -- vbuz1=vbuz2 + //SEG551 [266] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 -- vbuz1=vbuz2 lda divisor sta print_byte.b //SEG552 [267] call print_byte @@ -6266,7 +6266,7 @@ test_8u: { jmp b6 //SEG561 test_8u::@6 b6: - //SEG562 [270] (byte) print_byte::b#5 ? (byte) test_8u::res#0 -- vbuz1=vbuz2 + //SEG562 [270] (byte) print_byte::b#5 ← (byte) test_8u::res#0 -- vbuz1=vbuz2 lda res sta print_byte.b //SEG563 [271] call print_byte @@ -6292,7 +6292,7 @@ test_8u: { jmp b8 //SEG572 test_8u::@8 b8: - //SEG573 [274] (byte) print_byte::b#6 ? (byte) rem8u#17 -- vbuz1=vbuz2 + //SEG573 [274] (byte) print_byte::b#6 ← (byte) rem8u#17 -- vbuz1=vbuz2 lda rem8u sta print_byte.b //SEG574 [275] call print_byte @@ -6314,7 +6314,7 @@ test_8u: { jmp b10 //SEG583 test_8u::@10 b10: - //SEG584 [278] (byte) test_8u::i#1 ? ++ (byte) test_8u::i#10 -- vbuz1=_inc_vbuz1 + //SEG584 [278] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 -- vbuz1=_inc_vbuz1 inc i //SEG585 [279] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@11 -- vbuz1_neq_vbuc1_then_la1 lda #6 @@ -6327,7 +6327,7 @@ test_8u: { rts //SEG588 test_8u::@11 b11: - //SEG589 [281] (byte*~) print_char_cursor#188 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG589 [281] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -6359,11 +6359,11 @@ print_cls: { jmp b1 //SEG599 print_cls::@1 b1: - //SEG600 [284] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG600 [284] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG601 [285] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG601 [285] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -6387,29 +6387,29 @@ print_cls: { str1: .text " = @" REGISTER UPLIFT POTENTIAL REGISTERS -Statement [17] (signed word) test_16s::dividend#0 ? *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [17] (signed word) test_16s::dividend#0 ← *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ test_16s::i#10 test_16s::i#1 ] -Statement [18] (signed word) test_16s::divisor#0 ? *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [19] (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [20] (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [22] (signed word) div16s::return#2 ? (signed word) div16s::return#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [23] (signed word) test_16s::res#0 ? (signed word) div16s::return#2 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [24] (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [25] (byte*~) print_char_cursor#159 ? (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [29] (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [33] (signed word) print_sword::w#3 ? (signed word) test_16s::res#0 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [37] (signed word) print_sword::w#4 ? (signed word) rem16s#11 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [46] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a +Statement [18] (signed word) test_16s::divisor#0 ← *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [19] (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [20] (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [22] (signed word) div16s::return#2 ← (signed word) div16s::return#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [23] (signed word) test_16s::res#0 ← (signed word) div16s::return#2 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [25] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [29] (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [33] (signed word) print_sword::w#3 ← (signed word) test_16s::res#0 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [37] (signed word) print_sword::w#4 ← (signed word) rem16s#11 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [46] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:35 [ test_8s::i#10 test_8s::i#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:48 [ test_16u::i#10 test_16u::i#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:49 [ test_8u::i#10 test_8u::i#1 ] Statement [47] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#18) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a Statement [50] if((signed word) print_sword::w#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_sword::w#5 print_char_cursor#131 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#131 ] ) always clobbers reg byte a -Statement [53] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#5 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a -Statement [55] (word~) print_word::w#7 ? (word)(signed word) print_sword::w#6 [ print_char_cursor#130 print_word::w#7 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#130 print_word::w#7 ] ) always clobbers reg byte a -Statement [59] (byte) print_byte::b#1 ? > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ) always clobbers reg byte a -Statement [61] (byte) print_byte::b#2 ? < (word) print_word::w#5 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a -Statement [65] (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a +Statement [53] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#5 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a +Statement [55] (word~) print_word::w#7 ← (word)(signed word) print_sword::w#6 [ print_char_cursor#130 print_word::w#7 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#130 print_word::w#7 ] ) always clobbers reg byte a +Statement [59] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ) always clobbers reg byte a +Statement [61] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a +Statement [65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:87 [ test_8s::divisor#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:91 [ test_8s::res#0 ] @@ -6417,8 +6417,8 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:41 [ r Removing always clobbered register reg byte a as potential for zp ZP_BYTE:100 [ rem8u#17 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:118 [ test_8u::divisor#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:120 [ test_8u::res#0 ] -Statement [68] (byte~) print_byte::$2 ? (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a -Statement [73] *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 [ print_char_cursor#82 ] ( main:2::test_16s:13::print_sword:26::print_char:52 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_char:52 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_char:52 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_char:52 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:67 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:70 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:163 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:163 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:169 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:169 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] ) always clobbers reg byte y +Statement [68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a +Statement [73] *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 [ print_char_cursor#82 ] ( main:2::test_16s:13::print_sword:26::print_char:52 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_char:52 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_char:52 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_char:52 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:67 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:70 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:163 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:163 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:169 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:169 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ test_16s::i#10 test_16s::i#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:9 [ print_byte::b#7 print_byte::b#9 print_byte::b#1 print_byte::b#2 print_byte::b#3 print_byte::b#4 print_byte::b#5 print_byte::b#6 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:48 [ test_16u::i#10 test_16u::i#1 ] @@ -6432,231 +6432,231 @@ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:118 [ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:120 [ test_8u::res#0 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:36 [ print_sbyte::b#7 print_sbyte::b#0 print_sbyte::b#10 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 ] Statement [78] if(*((byte*) print_str::str#13)!=(byte) '@') goto print_str::@2 [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y -Statement [80] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#13) [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y -Statement [83] (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#0 [ div16s::divisor#0 divr16s::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 divr16s::dividend#0 ] ) always clobbers reg byte a -Statement [84] (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#0 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [86] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 [ rem16s#11 divr16s::return#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#11 divr16s::return#3 ] ) always clobbers reg byte a -Statement [87] (signed word) div16s::return#0 ? (signed word) divr16s::return#3 [ div16s::return#0 rem16s#11 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#0 rem16s#11 ] ) always clobbers reg byte a +Statement [80] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#13) [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y +Statement [83] (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#0 [ div16s::divisor#0 divr16s::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 divr16s::dividend#0 ] ) always clobbers reg byte a +Statement [84] (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#0 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a +Statement [86] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 [ rem16s#11 divr16s::return#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#11 divr16s::return#3 ] ) always clobbers reg byte a +Statement [87] (signed word) div16s::return#0 ← (signed word) divr16s::return#3 [ div16s::return#0 rem16s#11 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#0 rem16s#11 ] ) always clobbers reg byte a Statement [89] if((signed word) divr16s::dividend#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@1 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [90] (word~) divr16s::dividendu#8 ? (word)(signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#8 ] ) always clobbers reg byte a +Statement [90] (word~) divr16s::dividendu#8 ← (word)(signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#8 ] ) always clobbers reg byte a Statement [92] if((signed word) divr16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@3 [ divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ divr16s::neg#4 divr16s::neg#2 divr16s::neg#3 ] -Statement [93] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a -Statement [95] (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ) always clobbers reg byte a -Statement [96] (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ) always clobbers reg byte a -Statement [97] (word) divr16u::rem#4 ? (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [99] (word) divr16u::return#3 ? (word) divr16u::return#0 [ divr16s::neg#4 divr16u::return#3 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a -Statement [100] (word) divr16s::resultu#0 ? (word) divr16u::return#3 [ divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ) always clobbers reg byte a -Statement [102] (signed word) rem16s#2 ? - (signed word)(word) rem16u#1 [ divr16s::resultu#0 rem16s#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a -Statement [103] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 [ rem16s#2 divr16s::return#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a -Statement [106] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 [ rem16u#1 divr16s::return#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16u#1 divr16s::return#7 ] ) always clobbers reg byte a -Statement [107] (signed word~) rem16s#37 ? (signed word)(word) rem16u#1 [ divr16s::return#7 rem16s#37 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::return#7 rem16s#37 ] ) always clobbers reg byte a -Statement [108] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a -Statement [109] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a -Statement [110] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a -Statement [111] (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::$8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::$8 ] ) always clobbers reg byte a -Statement [112] (word~) divr16s::dividendu#7 ? (word)(signed word~) divr16s::$8 [ divr16s::divisor#0 divr16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#7 ] ) always clobbers reg byte a -Statement [116] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [93] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a +Statement [95] (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ) always clobbers reg byte a +Statement [96] (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ) always clobbers reg byte a +Statement [97] (word) divr16u::rem#4 ← (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [99] (word) divr16u::return#3 ← (word) divr16u::return#0 [ divr16s::neg#4 divr16u::return#3 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a +Statement [100] (word) divr16s::resultu#0 ← (word) divr16u::return#3 [ divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ) always clobbers reg byte a +Statement [102] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 [ divr16s::resultu#0 rem16s#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a +Statement [103] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 [ rem16s#2 divr16s::return#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a +Statement [106] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 [ rem16u#1 divr16s::return#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16u#1 divr16s::return#7 ] ) always clobbers reg byte a +Statement [107] (signed word~) rem16s#37 ← (signed word)(word) rem16u#1 [ divr16s::return#7 rem16s#37 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::return#7 rem16s#37 ] ) always clobbers reg byte a +Statement [108] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a +Statement [109] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a +Statement [110] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a +Statement [111] (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::$8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::$8 ] ) always clobbers reg byte a +Statement [112] (word~) divr16s::dividendu#7 ← (word)(signed word~) divr16s::$8 [ divr16s::divisor#0 divr16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#7 ] ) always clobbers reg byte a +Statement [116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:34 [ divr16u::i#2 divr16u::i#1 ] -Statement [119] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [123] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [125] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (word) divr16u::divisor#6 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [129] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [141] (byte*~) print_char_cursor#184 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ) always clobbers reg byte a +Statement [125] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [129] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [141] (byte*~) print_char_cursor#184 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ print_sbyte::b#7 print_sbyte::b#0 print_sbyte::b#10 print_sbyte::b#1 print_sbyte::b#2 print_sbyte::b#3 print_sbyte::b#4 ] -Statement [170] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#10 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [183] (signed byte) rem8s#2 ? - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#2 ] ) always clobbers reg byte a +Statement [170] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#10 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [183] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:86 [ test_8s::dividend#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:93 [ div8s::resultu#0 ] -Statement [184] (signed byte) div8s::return#1 ? - (signed byte)(byte) div8s::resultu#0 [ rem8s#2 div8s::return#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8s#2 div8s::return#1 ] ) always clobbers reg byte a -Statement [189] (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ) always clobbers reg byte a +Statement [184] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 [ rem8s#2 div8s::return#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8s#2 div8s::return#1 ] ) always clobbers reg byte a +Statement [189] (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:39 [ div8s::neg#4 div8s::neg#2 div8s::neg#3 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:37 [ div8s::dividendu#3 div8s::dividendu#7 div8s::dividendu#8 ] -Statement [190] (byte) div8s::neg#2 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ) always clobbers reg byte a +Statement [190] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:94 [ div8s::$8 ] -Statement [192] (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$5 ] ) always clobbers reg byte a +Statement [192] (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$5 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:89 [ div8s::divisor#0 ] -Statement [206] (byte) divr8u::rem#2 ? (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ) always clobbers reg byte a +Statement [206] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:96 [ divr8u::divisor#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:45 [ divr8u::dividend#2 divr8u::dividend#0 divr8u::dividend#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:46 [ divr8u::quotient#3 divr8u::return#1 divr8u::quotient#1 divr8u::quotient#2 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:47 [ divr8u::i#2 divr8u::i#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:117 [ test_8u::dividend#0 ] -Statement [212] (byte) divr8u::rem#3 ? (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ) always clobbers reg byte a -Statement [220] (word) test_16u::dividend#0 ? *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ) always clobbers reg byte a -Statement [221] (word) test_16u::divisor#0 ? *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ) always clobbers reg byte a -Statement [222] (word) div16u::dividend#0 ? (word) test_16u::dividend#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ) always clobbers reg byte a -Statement [223] (word) div16u::divisor#0 ? (word) test_16u::divisor#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ) always clobbers reg byte a -Statement [225] (word) div16u::return#2 ? (word) div16u::return#0 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ) always clobbers reg byte a -Statement [226] (word) test_16u::res#0 ? (word) div16u::return#2 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [227] (word) print_word::w#1 ? (word) test_16u::dividend#0 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [228] (byte*~) print_char_cursor#166 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [232] (word) print_word::w#2 ? (word) test_16u::divisor#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ) always clobbers reg byte a -Statement [236] (word) print_word::w#3 ? (word) test_16u::res#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ) always clobbers reg byte a -Statement [240] (word) print_word::w#4 ? (word) rem16u#1 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ) always clobbers reg byte a -Statement [247] (word) divr16u::dividend#1 ? (word) div16u::dividend#0 [ divr16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 div16u::divisor#0 ] ) always clobbers reg byte a -Statement [248] (word) divr16u::divisor#0 ? (word) div16u::divisor#0 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a -Statement [250] (word) divr16u::return#2 ? (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] ) always clobbers reg byte a -Statement [251] (word) div16u::return#0 ? (word) divr16u::return#2 [ rem16u#1 div16u::return#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 div16u::return#0 ] ) always clobbers reg byte a -Statement [281] (byte*~) print_char_cursor#188 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ) always clobbers reg byte a -Statement [284] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [212] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ) always clobbers reg byte a +Statement [220] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ) always clobbers reg byte a +Statement [221] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ) always clobbers reg byte a +Statement [222] (word) div16u::dividend#0 ← (word) test_16u::dividend#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ) always clobbers reg byte a +Statement [223] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ) always clobbers reg byte a +Statement [225] (word) div16u::return#2 ← (word) div16u::return#0 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ) always clobbers reg byte a +Statement [226] (word) test_16u::res#0 ← (word) div16u::return#2 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [227] (word) print_word::w#1 ← (word) test_16u::dividend#0 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [228] (byte*~) print_char_cursor#166 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [232] (word) print_word::w#2 ← (word) test_16u::divisor#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ) always clobbers reg byte a +Statement [236] (word) print_word::w#3 ← (word) test_16u::res#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ) always clobbers reg byte a +Statement [240] (word) print_word::w#4 ← (word) rem16u#1 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ) always clobbers reg byte a +Statement [247] (word) divr16u::dividend#1 ← (word) div16u::dividend#0 [ divr16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 div16u::divisor#0 ] ) always clobbers reg byte a +Statement [248] (word) divr16u::divisor#0 ← (word) div16u::divisor#0 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a +Statement [250] (word) divr16u::return#2 ← (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] ) always clobbers reg byte a +Statement [251] (word) div16u::return#0 ← (word) divr16u::return#2 [ rem16u#1 div16u::return#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 div16u::return#0 ] ) always clobbers reg byte a +Statement [281] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ) always clobbers reg byte a +Statement [284] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [286] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [17] (signed word) test_16s::dividend#0 ? *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [18] (signed word) test_16s::divisor#0 ? *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [19] (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [20] (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [22] (signed word) div16s::return#2 ? (signed word) div16s::return#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [23] (signed word) test_16s::res#0 ? (signed word) div16s::return#2 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [24] (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [25] (byte*~) print_char_cursor#159 ? (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [29] (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [33] (signed word) print_sword::w#3 ? (signed word) test_16s::res#0 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [37] (signed word) print_sword::w#4 ? (signed word) rem16s#11 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [46] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a +Statement [17] (signed word) test_16s::dividend#0 ← *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [18] (signed word) test_16s::divisor#0 ← *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [19] (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [20] (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [22] (signed word) div16s::return#2 ← (signed word) div16s::return#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [23] (signed word) test_16s::res#0 ← (signed word) div16s::return#2 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [25] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [29] (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [33] (signed word) print_sword::w#3 ← (signed word) test_16s::res#0 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [37] (signed word) print_sword::w#4 ← (signed word) rem16s#11 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [46] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a Statement [47] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#18) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a Statement [50] if((signed word) print_sword::w#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_sword::w#5 print_char_cursor#131 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#131 ] ) always clobbers reg byte a -Statement [53] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#5 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a -Statement [55] (word~) print_word::w#7 ? (word)(signed word) print_sword::w#6 [ print_char_cursor#130 print_word::w#7 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#130 print_word::w#7 ] ) always clobbers reg byte a -Statement [59] (byte) print_byte::b#1 ? > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ) always clobbers reg byte a -Statement [61] (byte) print_byte::b#2 ? < (word) print_word::w#5 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a -Statement [65] (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a -Statement [68] (byte~) print_byte::$2 ? (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a -Statement [73] *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 [ print_char_cursor#82 ] ( main:2::test_16s:13::print_sword:26::print_char:52 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_char:52 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_char:52 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_char:52 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:67 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:70 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:163 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:163 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:169 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:169 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] ) always clobbers reg byte y +Statement [53] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#5 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a +Statement [55] (word~) print_word::w#7 ← (word)(signed word) print_sword::w#6 [ print_char_cursor#130 print_word::w#7 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#130 print_word::w#7 ] ) always clobbers reg byte a +Statement [59] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ) always clobbers reg byte a +Statement [61] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a +Statement [65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a +Statement [68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a +Statement [73] *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 [ print_char_cursor#82 ] ( main:2::test_16s:13::print_sword:26::print_char:52 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_char:52 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_char:52 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_char:52 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:67 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:70 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:163 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:163 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:169 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:169 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] ) always clobbers reg byte y Statement [78] if(*((byte*) print_str::str#13)!=(byte) '@') goto print_str::@2 [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y -Statement [80] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#13) [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y -Statement [83] (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#0 [ div16s::divisor#0 divr16s::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 divr16s::dividend#0 ] ) always clobbers reg byte a -Statement [84] (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#0 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [86] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 [ rem16s#11 divr16s::return#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#11 divr16s::return#3 ] ) always clobbers reg byte a -Statement [87] (signed word) div16s::return#0 ? (signed word) divr16s::return#3 [ div16s::return#0 rem16s#11 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#0 rem16s#11 ] ) always clobbers reg byte a +Statement [80] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#13) [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y +Statement [83] (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#0 [ div16s::divisor#0 divr16s::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 divr16s::dividend#0 ] ) always clobbers reg byte a +Statement [84] (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#0 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a +Statement [86] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 [ rem16s#11 divr16s::return#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#11 divr16s::return#3 ] ) always clobbers reg byte a +Statement [87] (signed word) div16s::return#0 ← (signed word) divr16s::return#3 [ div16s::return#0 rem16s#11 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#0 rem16s#11 ] ) always clobbers reg byte a Statement [89] if((signed word) divr16s::dividend#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@1 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [90] (word~) divr16s::dividendu#8 ? (word)(signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#8 ] ) always clobbers reg byte a +Statement [90] (word~) divr16s::dividendu#8 ← (word)(signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#8 ] ) always clobbers reg byte a Statement [92] if((signed word) divr16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@3 [ divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ) always clobbers reg byte a -Statement [93] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a -Statement [95] (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ) always clobbers reg byte a -Statement [96] (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ) always clobbers reg byte a -Statement [97] (word) divr16u::rem#4 ? (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [99] (word) divr16u::return#3 ? (word) divr16u::return#0 [ divr16s::neg#4 divr16u::return#3 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a -Statement [100] (word) divr16s::resultu#0 ? (word) divr16u::return#3 [ divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ) always clobbers reg byte a -Statement [102] (signed word) rem16s#2 ? - (signed word)(word) rem16u#1 [ divr16s::resultu#0 rem16s#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a -Statement [103] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 [ rem16s#2 divr16s::return#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a -Statement [106] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 [ rem16u#1 divr16s::return#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16u#1 divr16s::return#7 ] ) always clobbers reg byte a -Statement [107] (signed word~) rem16s#37 ? (signed word)(word) rem16u#1 [ divr16s::return#7 rem16s#37 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::return#7 rem16s#37 ] ) always clobbers reg byte a -Statement [108] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a -Statement [109] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a -Statement [110] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a -Statement [111] (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::$8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::$8 ] ) always clobbers reg byte a -Statement [112] (word~) divr16s::dividendu#7 ? (word)(signed word~) divr16s::$8 [ divr16s::divisor#0 divr16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#7 ] ) always clobbers reg byte a -Statement [116] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [119] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [93] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a +Statement [95] (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ) always clobbers reg byte a +Statement [96] (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ) always clobbers reg byte a +Statement [97] (word) divr16u::rem#4 ← (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [99] (word) divr16u::return#3 ← (word) divr16u::return#0 [ divr16s::neg#4 divr16u::return#3 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a +Statement [100] (word) divr16s::resultu#0 ← (word) divr16u::return#3 [ divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ) always clobbers reg byte a +Statement [102] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 [ divr16s::resultu#0 rem16s#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a +Statement [103] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 [ rem16s#2 divr16s::return#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a +Statement [106] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 [ rem16u#1 divr16s::return#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16u#1 divr16s::return#7 ] ) always clobbers reg byte a +Statement [107] (signed word~) rem16s#37 ← (signed word)(word) rem16u#1 [ divr16s::return#7 rem16s#37 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::return#7 rem16s#37 ] ) always clobbers reg byte a +Statement [108] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a +Statement [109] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a +Statement [110] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a +Statement [111] (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::$8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::$8 ] ) always clobbers reg byte a +Statement [112] (word~) divr16s::dividendu#7 ← (word)(signed word~) divr16s::$8 [ divr16s::divisor#0 divr16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#7 ] ) always clobbers reg byte a +Statement [116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [123] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [125] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (word) divr16u::divisor#6 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [129] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [141] (byte*~) print_char_cursor#184 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ) always clobbers reg byte a -Statement [170] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#10 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [183] (signed byte) rem8s#2 ? - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#2 ] ) always clobbers reg byte a -Statement [184] (signed byte) div8s::return#1 ? - (signed byte)(byte) div8s::resultu#0 [ rem8s#2 div8s::return#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8s#2 div8s::return#1 ] ) always clobbers reg byte a -Statement [189] (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ) always clobbers reg byte a -Statement [190] (byte) div8s::neg#2 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ) always clobbers reg byte a -Statement [192] (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$5 ] ) always clobbers reg byte a -Statement [204] (byte~) divr8u::$1 ? (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ) always clobbers reg byte a +Statement [125] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [129] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [141] (byte*~) print_char_cursor#184 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ) always clobbers reg byte a +Statement [170] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#10 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [183] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#2 ] ) always clobbers reg byte a +Statement [184] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 [ rem8s#2 div8s::return#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8s#2 div8s::return#1 ] ) always clobbers reg byte a +Statement [189] (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ) always clobbers reg byte a +Statement [190] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ) always clobbers reg byte a +Statement [192] (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$5 ] ) always clobbers reg byte a +Statement [204] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:44 [ divr8u::rem#4 divr8u::rem#10 divr8u::rem#5 divr8u::rem#1 divr8u::rem#2 divr8u::rem#3 ] -Statement [206] (byte) divr8u::rem#2 ? (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ) always clobbers reg byte a -Statement [212] (byte) divr8u::rem#3 ? (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ) always clobbers reg byte a -Statement [220] (word) test_16u::dividend#0 ? *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ) always clobbers reg byte a -Statement [221] (word) test_16u::divisor#0 ? *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ) always clobbers reg byte a -Statement [222] (word) div16u::dividend#0 ? (word) test_16u::dividend#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ) always clobbers reg byte a -Statement [223] (word) div16u::divisor#0 ? (word) test_16u::divisor#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ) always clobbers reg byte a -Statement [225] (word) div16u::return#2 ? (word) div16u::return#0 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ) always clobbers reg byte a -Statement [226] (word) test_16u::res#0 ? (word) div16u::return#2 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [227] (word) print_word::w#1 ? (word) test_16u::dividend#0 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [228] (byte*~) print_char_cursor#166 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [232] (word) print_word::w#2 ? (word) test_16u::divisor#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ) always clobbers reg byte a -Statement [236] (word) print_word::w#3 ? (word) test_16u::res#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ) always clobbers reg byte a -Statement [240] (word) print_word::w#4 ? (word) rem16u#1 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ) always clobbers reg byte a -Statement [247] (word) divr16u::dividend#1 ? (word) div16u::dividend#0 [ divr16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 div16u::divisor#0 ] ) always clobbers reg byte a -Statement [248] (word) divr16u::divisor#0 ? (word) div16u::divisor#0 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a -Statement [250] (word) divr16u::return#2 ? (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] ) always clobbers reg byte a -Statement [251] (word) div16u::return#0 ? (word) divr16u::return#2 [ rem16u#1 div16u::return#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 div16u::return#0 ] ) always clobbers reg byte a -Statement [281] (byte*~) print_char_cursor#188 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ) always clobbers reg byte a -Statement [284] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [206] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ) always clobbers reg byte a +Statement [212] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ) always clobbers reg byte a +Statement [220] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ) always clobbers reg byte a +Statement [221] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ) always clobbers reg byte a +Statement [222] (word) div16u::dividend#0 ← (word) test_16u::dividend#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ) always clobbers reg byte a +Statement [223] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ) always clobbers reg byte a +Statement [225] (word) div16u::return#2 ← (word) div16u::return#0 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ) always clobbers reg byte a +Statement [226] (word) test_16u::res#0 ← (word) div16u::return#2 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [227] (word) print_word::w#1 ← (word) test_16u::dividend#0 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [228] (byte*~) print_char_cursor#166 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [232] (word) print_word::w#2 ← (word) test_16u::divisor#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ) always clobbers reg byte a +Statement [236] (word) print_word::w#3 ← (word) test_16u::res#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ) always clobbers reg byte a +Statement [240] (word) print_word::w#4 ← (word) rem16u#1 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ) always clobbers reg byte a +Statement [247] (word) divr16u::dividend#1 ← (word) div16u::dividend#0 [ divr16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 div16u::divisor#0 ] ) always clobbers reg byte a +Statement [248] (word) divr16u::divisor#0 ← (word) div16u::divisor#0 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a +Statement [250] (word) divr16u::return#2 ← (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] ) always clobbers reg byte a +Statement [251] (word) div16u::return#0 ← (word) divr16u::return#2 [ rem16u#1 div16u::return#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 div16u::return#0 ] ) always clobbers reg byte a +Statement [281] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ) always clobbers reg byte a +Statement [284] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [286] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [17] (signed word) test_16s::dividend#0 ? *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [18] (signed word) test_16s::divisor#0 ? *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [19] (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [20] (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [22] (signed word) div16s::return#2 ? (signed word) div16s::return#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [23] (signed word) test_16s::res#0 ? (signed word) div16s::return#2 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [24] (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [25] (byte*~) print_char_cursor#159 ? (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a -Statement [29] (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [33] (signed word) print_sword::w#3 ? (signed word) test_16s::res#0 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [37] (signed word) print_sword::w#4 ? (signed word) rem16s#11 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ) always clobbers reg byte a -Statement [46] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a +Statement [17] (signed word) test_16s::dividend#0 ← *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [18] (signed word) test_16s::divisor#0 ← *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [19] (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [20] (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::dividend#0 div16s::divisor#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [22] (signed word) div16s::return#2 ← (signed word) div16s::return#0 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 div16s::return#2 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [23] (signed word) test_16s::res#0 ← (signed word) div16s::return#2 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [25] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_sword::w#1 print_char_cursor#159 print_line_cursor#1 rem16s#11 ] ) always clobbers reg byte a +Statement [29] (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#0 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 print_sword::w#2 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [33] (signed word) print_sword::w#3 ← (signed word) test_16s::res#0 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#3 rem16s#11 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [37] (signed word) print_sword::w#4 ← (signed word) rem16s#11 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ( main:2::test_16s:13 [ test_16s::i#10 print_line_cursor#1 print_sword::w#4 print_char_cursor#128 ] ) always clobbers reg byte a +Statement [46] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a Statement [47] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#18) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#18 ] ( main:2::test_16s:13::print_ln:40 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8s:11::print_ln:156 [ test_8s::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_16u:9::print_ln:243 [ test_16u::i#10 print_line_cursor#1 print_char_cursor#18 ] main:2::test_8u:7::print_ln:277 [ test_8u::i#10 print_line_cursor#1 print_char_cursor#18 ] ) always clobbers reg byte a Statement [50] if((signed word) print_sword::w#5>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_sword::w#5 print_char_cursor#131 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#131 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#131 ] ) always clobbers reg byte a -Statement [53] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#5 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a -Statement [55] (word~) print_word::w#7 ? (word)(signed word) print_sword::w#6 [ print_char_cursor#130 print_word::w#7 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#130 print_word::w#7 ] ) always clobbers reg byte a -Statement [59] (byte) print_byte::b#1 ? > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ) always clobbers reg byte a -Statement [61] (byte) print_byte::b#2 ? < (word) print_word::w#5 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a -Statement [65] (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a -Statement [68] (byte~) print_byte::$2 ? (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a -Statement [73] *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 [ print_char_cursor#82 ] ( main:2::test_16s:13::print_sword:26::print_char:52 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_char:52 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_char:52 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_char:52 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:67 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:70 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:163 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:163 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:169 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:169 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] ) always clobbers reg byte y +Statement [53] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#5 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_sword::w#0 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a +Statement [55] (word~) print_word::w#7 ← (word)(signed word) print_sword::w#6 [ print_char_cursor#130 print_word::w#7 ] ( main:2::test_16s:13::print_sword:26 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:30 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:34 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#130 print_word::w#7 ] main:2::test_16s:13::print_sword:38 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#130 print_word::w#7 ] ) always clobbers reg byte a +Statement [59] (byte) print_byte::b#1 ← > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#135 print_byte::b#1 ] ) always clobbers reg byte a +Statement [61] (byte) print_byte::b#2 ← < (word) print_word::w#5 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::test_16s:13::print_sword:26::print_word:56 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:30::print_word:56 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:34::print_word:56 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::b#2 ] main:2::test_16s:13::print_sword:38::print_word:56 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:229 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:233 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:237 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] main:2::test_16u:9::print_word:241 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a +Statement [65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a +Statement [68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:60 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:60 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#18 print_byte::$2 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:229::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:233::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:237::print_byte:62 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_16u:9::print_word:241::print_byte:62 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:142::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:146::print_byte:166 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:150::print_byte:166 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_byte::$2 ] main:2::test_8s:11::print_sbyte:154::print_byte:166 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:263 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:267 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:271 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] main:2::test_8u:7::print_byte:275 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a +Statement [73] *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 [ print_char_cursor#82 ] ( main:2::test_16s:13::print_sword:26::print_char:52 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_char:52 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_char:52 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_char:52 [ test_16s::i#10 print_line_cursor#1 print_sword::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:67 [ test_16s::i#10 print_line_cursor#1 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:67 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:67 [ print_line_cursor#1 test_16u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_byte::b#7 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:67 [ print_line_cursor#1 test_8s::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:67 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:67 [ print_line_cursor#41 test_8u::i#10 print_byte::b#7 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:60::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:60::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:60::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_word::w#5 print_char_cursor#82 ] main:2::test_16s:13::print_sword:26::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:30::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:34::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#82 ] main:2::test_16s:13::print_sword:38::print_word:56::print_byte:62::print_char:70 [ test_16s::i#10 print_line_cursor#1 print_char_cursor#82 ] main:2::test_16u:9::print_word:229::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:233::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#82 ] main:2::test_16u:9::print_word:237::print_byte:62::print_char:70 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_16u:9::print_word:241::print_byte:62::print_char:70 [ print_line_cursor#1 test_16u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_byte:166::print_char:70 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:263::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:267::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#82 ] main:2::test_8u:7::print_byte:271::print_char:70 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#82 ] main:2::test_8u:7::print_byte:275::print_char:70 [ print_line_cursor#41 test_8u::i#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:163 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:163 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:163 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:142::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:146::print_char:169 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:150::print_char:169 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_sbyte::b#10 print_char_cursor#82 ] main:2::test_8s:11::print_sbyte:154::print_char:169 [ print_line_cursor#1 test_8s::i#10 print_sbyte::b#10 print_char_cursor#82 ] ) always clobbers reg byte y Statement [78] if(*((byte*) print_str::str#13)!=(byte) '@') goto print_str::@2 [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y -Statement [80] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#13) [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y -Statement [83] (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#0 [ div16s::divisor#0 divr16s::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 divr16s::dividend#0 ] ) always clobbers reg byte a -Statement [84] (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#0 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [86] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 [ rem16s#11 divr16s::return#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#11 divr16s::return#3 ] ) always clobbers reg byte a -Statement [87] (signed word) div16s::return#0 ? (signed word) divr16s::return#3 [ div16s::return#0 rem16s#11 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#0 rem16s#11 ] ) always clobbers reg byte a +Statement [80] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#13) [ print_char_cursor#128 print_str::str#13 ] ( main:2::test_16s:13::print_str:28 [ test_16s::i#10 test_16s::divisor#0 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:32 [ test_16s::i#10 test_16s::res#0 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_16s:13::print_str:36 [ test_16s::i#10 print_line_cursor#1 rem16s#11 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:144 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:148 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_8s:11::print_str:152 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:231 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:235 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_16u:9::print_str:239 [ print_line_cursor#1 rem16u#1 test_16u::i#10 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:265 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::divisor#0 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:269 [ print_line_cursor#41 rem8u#17 test_8u::i#10 test_8u::res#0 print_char_cursor#128 print_str::str#13 ] main:2::test_8u:7::print_str:273 [ print_line_cursor#41 rem8u#17 test_8u::i#10 print_char_cursor#128 print_str::str#13 ] ) always clobbers reg byte a reg byte y +Statement [83] (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#0 [ div16s::divisor#0 divr16s::dividend#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::divisor#0 divr16s::dividend#0 ] ) always clobbers reg byte a +Statement [84] (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#0 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a +Statement [86] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 [ rem16s#11 divr16s::return#3 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#11 divr16s::return#3 ] ) always clobbers reg byte a +Statement [87] (signed word) div16s::return#0 ← (signed word) divr16s::return#3 [ div16s::return#0 rem16s#11 ] ( main:2::test_16s:13::div16s:21 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 div16s::return#0 rem16s#11 ] ) always clobbers reg byte a Statement [89] if((signed word) divr16s::dividend#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@1 [ divr16s::dividend#0 divr16s::divisor#0 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividend#0 divr16s::divisor#0 ] ) always clobbers reg byte a -Statement [90] (word~) divr16s::dividendu#8 ? (word)(signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#8 ] ) always clobbers reg byte a +Statement [90] (word~) divr16s::dividendu#8 ← (word)(signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::dividendu#8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#8 ] ) always clobbers reg byte a Statement [92] if((signed word) divr16s::divisor#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@3 [ divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 ] ) always clobbers reg byte a -Statement [93] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a -Statement [95] (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ) always clobbers reg byte a -Statement [96] (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ) always clobbers reg byte a -Statement [97] (word) divr16u::rem#4 ? (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ) always clobbers reg byte a -Statement [99] (word) divr16u::return#3 ? (word) divr16u::return#0 [ divr16s::neg#4 divr16u::return#3 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a -Statement [100] (word) divr16s::resultu#0 ? (word) divr16u::return#3 [ divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ) always clobbers reg byte a -Statement [102] (signed word) rem16s#2 ? - (signed word)(word) rem16u#1 [ divr16s::resultu#0 rem16s#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a -Statement [103] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 [ rem16s#2 divr16s::return#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a -Statement [106] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 [ rem16u#1 divr16s::return#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16u#1 divr16s::return#7 ] ) always clobbers reg byte a -Statement [107] (signed word~) rem16s#37 ? (signed word)(word) rem16u#1 [ divr16s::return#7 rem16s#37 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::return#7 rem16s#37 ] ) always clobbers reg byte a -Statement [108] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a -Statement [109] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a -Statement [110] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a -Statement [111] (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::$8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::$8 ] ) always clobbers reg byte a -Statement [112] (word~) divr16s::dividendu#7 ? (word)(signed word~) divr16s::$8 [ divr16s::divisor#0 divr16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#7 ] ) always clobbers reg byte a -Statement [116] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a -Statement [119] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a +Statement [93] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#5 ] ) always clobbers reg byte a +Statement [95] (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 [ divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::divisoru#3 divr16s::neg#4 divr16u::dividend#2 ] ) always clobbers reg byte a +Statement [96] (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 [ divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::remu#3 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 ] ) always clobbers reg byte a +Statement [97] (word) divr16u::rem#4 ← (word) divr16s::remu#3 [ divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::dividend#2 divr16u::divisor#1 divr16u::rem#4 ] ) always clobbers reg byte a +Statement [99] (word) divr16u::return#3 ← (word) divr16u::return#0 [ divr16s::neg#4 divr16u::return#3 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#3 rem16u#1 ] ) always clobbers reg byte a +Statement [100] (word) divr16s::resultu#0 ← (word) divr16u::return#3 [ divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16s::resultu#0 rem16u#1 ] ) always clobbers reg byte a +Statement [102] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 [ divr16s::resultu#0 rem16s#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::resultu#0 rem16s#2 ] ) always clobbers reg byte a +Statement [103] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 [ rem16s#2 divr16s::return#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16s#2 divr16s::return#1 ] ) always clobbers reg byte a +Statement [106] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 [ rem16u#1 divr16s::return#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 rem16u#1 divr16s::return#7 ] ) always clobbers reg byte a +Statement [107] (signed word~) rem16s#37 ← (signed word)(word) rem16u#1 [ divr16s::return#7 rem16s#37 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::return#7 rem16s#37 ] ) always clobbers reg byte a +Statement [108] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 [ divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#3 divr16s::dividendu#3 divr16s::remu#3 divr16s::$13 ] ) always clobbers reg byte a +Statement [109] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::neg#2 divr16s::$13 ] ) always clobbers reg byte a +Statement [110] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 [ divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::dividendu#3 divr16s::remu#3 divr16s::divisoru#4 divr16s::neg#2 ] ) always clobbers reg byte a +Statement [111] (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#0 [ divr16s::divisor#0 divr16s::$8 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::$8 ] ) always clobbers reg byte a +Statement [112] (word~) divr16s::dividendu#7 ← (word)(signed word~) divr16s::$8 [ divr16s::divisor#0 divr16s::dividendu#7 ] ( main:2::test_16s:13::div16s:21::divr16s:85 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::divisor#0 divr16s::dividendu#7 ] ) always clobbers reg byte a +Statement [116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#0 divr16u::$1 ] ) always clobbers reg byte a +Statement [119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::dividend#3 divr16u::quotient#3 divr16u::i#2 divr16u::rem#1 ] ) always clobbers reg byte a Statement [123] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::rem#6 divr16u::quotient#1 ] ) always clobbers reg byte a -Statement [125] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (word) divr16u::divisor#6 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a -Statement [129] (word) rem16u#1 ? (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a -Statement [141] (byte*~) print_char_cursor#184 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ) always clobbers reg byte a -Statement [170] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#10 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [183] (signed byte) rem8s#2 ? - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#2 ] ) always clobbers reg byte a -Statement [184] (signed byte) div8s::return#1 ? - (signed byte)(byte) div8s::resultu#0 [ rem8s#2 div8s::return#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8s#2 div8s::return#1 ] ) always clobbers reg byte a -Statement [189] (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ) always clobbers reg byte a -Statement [190] (byte) div8s::neg#2 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ) always clobbers reg byte a -Statement [192] (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$5 ] ) always clobbers reg byte a -Statement [204] (byte~) divr8u::$1 ? (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ) always clobbers reg byte a -Statement [206] (byte) divr8u::rem#2 ? (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ) always clobbers reg byte a -Statement [212] (byte) divr8u::rem#3 ? (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ) always clobbers reg byte a -Statement [220] (word) test_16u::dividend#0 ? *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ) always clobbers reg byte a -Statement [221] (word) test_16u::divisor#0 ? *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ) always clobbers reg byte a -Statement [222] (word) div16u::dividend#0 ? (word) test_16u::dividend#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ) always clobbers reg byte a -Statement [223] (word) div16u::divisor#0 ? (word) test_16u::divisor#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ) always clobbers reg byte a -Statement [225] (word) div16u::return#2 ? (word) div16u::return#0 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ) always clobbers reg byte a -Statement [226] (word) test_16u::res#0 ? (word) div16u::return#2 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [227] (word) print_word::w#1 ? (word) test_16u::dividend#0 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [228] (byte*~) print_char_cursor#166 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a -Statement [232] (word) print_word::w#2 ? (word) test_16u::divisor#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ) always clobbers reg byte a -Statement [236] (word) print_word::w#3 ? (word) test_16u::res#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ) always clobbers reg byte a -Statement [240] (word) print_word::w#4 ? (word) rem16u#1 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ) always clobbers reg byte a -Statement [247] (word) divr16u::dividend#1 ? (word) div16u::dividend#0 [ divr16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 div16u::divisor#0 ] ) always clobbers reg byte a -Statement [248] (word) divr16u::divisor#0 ? (word) div16u::divisor#0 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a -Statement [250] (word) divr16u::return#2 ? (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] ) always clobbers reg byte a -Statement [251] (word) div16u::return#0 ? (word) divr16u::return#2 [ rem16u#1 div16u::return#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 div16u::return#0 ] ) always clobbers reg byte a -Statement [281] (byte*~) print_char_cursor#188 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ) always clobbers reg byte a -Statement [284] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [125] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 [ divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::divisor#6 divr16u::i#2 divr16u::dividend#0 divr16u::quotient#2 divr16u::rem#2 ] ) always clobbers reg byte a +Statement [129] (word) rem16u#1 ← (word) divr16u::rem#11 [ divr16u::return#0 rem16u#1 ] ( main:2::test_16s:13::div16s:21::divr16s:85::divr16u:98 [ test_16s::i#10 test_16s::dividend#0 test_16s::divisor#0 print_line_cursor#1 divr16s::neg#4 divr16u::return#0 rem16u#1 ] main:2::test_16u:9::div16u:224::divr16u:249 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::return#0 rem16u#1 ] ) always clobbers reg byte a +Statement [141] (byte*~) print_char_cursor#184 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ( main:2::test_8s:11 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 print_sbyte::b#1 print_char_cursor#184 rem8s#3 ] ) always clobbers reg byte a +Statement [170] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#10 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::test_8s:11::print_sbyte:142 [ print_line_cursor#1 test_8s::i#10 test_8s::divisor#0 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:146 [ print_line_cursor#1 test_8s::i#10 test_8s::res#0 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:150 [ print_line_cursor#1 test_8s::i#10 rem8s#3 print_char_cursor#18 print_sbyte::b#0 ] main:2::test_8s:11::print_sbyte:154 [ print_line_cursor#1 test_8s::i#10 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [183] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 [ div8s::resultu#0 rem8s#2 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::resultu#0 rem8s#2 ] ) always clobbers reg byte a +Statement [184] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 [ rem8s#2 div8s::return#1 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 rem8s#2 div8s::return#1 ] ) always clobbers reg byte a +Statement [189] (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#0 [ div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#3 div8s::dividendu#3 div8s::$8 ] ) always clobbers reg byte a +Statement [190] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 [ div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::dividendu#3 div8s::neg#2 div8s::$8 ] ) always clobbers reg byte a +Statement [192] (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#0 [ div8s::divisor#0 div8s::$5 ] ( main:2::test_8s:11::div8s:137 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::divisor#0 div8s::$5 ] ) always clobbers reg byte a +Statement [204] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#1 divr8u::$1 ] ) always clobbers reg byte a +Statement [206] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 [ divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::dividend#2 divr8u::quotient#3 divr8u::i#2 divr8u::rem#2 ] ) always clobbers reg byte a +Statement [212] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 [ divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ( main:2::test_8s:11::div8s:137::div8u:179::divr8u:197 [ print_line_cursor#1 test_8s::i#10 test_8s::dividend#0 test_8s::divisor#0 div8s::neg#4 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] main:2::test_8u:7::div8u:259::divr8u:197 [ print_line_cursor#41 print_char_cursor#138 test_8u::i#10 test_8u::dividend#0 test_8u::divisor#0 divr8u::divisor#0 divr8u::i#2 divr8u::dividend#1 divr8u::quotient#2 divr8u::rem#3 ] ) always clobbers reg byte a +Statement [220] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 ] ) always clobbers reg byte a +Statement [221] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 ] ) always clobbers reg byte a +Statement [222] (word) div16u::dividend#0 ← (word) test_16u::dividend#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 ] ) always clobbers reg byte a +Statement [223] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::dividend#0 div16u::divisor#0 ] ) always clobbers reg byte a +Statement [225] (word) div16u::return#2 ← (word) div16u::return#0 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 div16u::return#2 ] ) always clobbers reg byte a +Statement [226] (word) test_16u::res#0 ← (word) div16u::return#2 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 rem16u#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [227] (word) print_word::w#1 ← (word) test_16u::dividend#0 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [228] (byte*~) print_char_cursor#166 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_word::w#1 print_char_cursor#166 rem16u#1 test_16u::i#10 test_16u::divisor#0 test_16u::res#0 ] ) always clobbers reg byte a +Statement [232] (word) print_word::w#2 ← (word) test_16u::divisor#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#2 rem16u#1 test_16u::i#10 test_16u::res#0 ] ) always clobbers reg byte a +Statement [236] (word) print_word::w#3 ← (word) test_16u::res#0 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#3 rem16u#1 test_16u::i#10 ] ) always clobbers reg byte a +Statement [240] (word) print_word::w#4 ← (word) rem16u#1 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ( main:2::test_16u:9 [ print_line_cursor#1 print_char_cursor#128 print_word::w#4 test_16u::i#10 ] ) always clobbers reg byte a +Statement [247] (word) divr16u::dividend#1 ← (word) div16u::dividend#0 [ divr16u::dividend#1 div16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 div16u::divisor#0 ] ) always clobbers reg byte a +Statement [248] (word) divr16u::divisor#0 ← (word) div16u::divisor#0 [ divr16u::dividend#1 divr16u::divisor#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 divr16u::dividend#1 divr16u::divisor#0 ] ) always clobbers reg byte a +Statement [250] (word) divr16u::return#2 ← (word) divr16u::return#0 [ rem16u#1 divr16u::return#2 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 divr16u::return#2 ] ) always clobbers reg byte a +Statement [251] (word) div16u::return#0 ← (word) divr16u::return#2 [ rem16u#1 div16u::return#0 ] ( main:2::test_16u:9::div16u:224 [ print_line_cursor#1 test_16u::i#10 test_16u::dividend#0 test_16u::divisor#0 rem16u#1 div16u::return#0 ] ) always clobbers reg byte a +Statement [281] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ( main:2::test_8u:7 [ print_line_cursor#1 test_8u::i#1 print_char_cursor#188 ] ) always clobbers reg byte a +Statement [284] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [286] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ test_16s::i#10 test_16s::i#1 ] : zp ZP_BYTE:2 , reg byte x , Potential registers zp ZP_WORD:3 [ print_line_cursor#20 print_line_cursor#39 print_line_cursor#1 print_line_cursor#41 ] : zp ZP_WORD:3 , @@ -6981,29 +6981,29 @@ test_16s: { jmp b1 //SEG36 test_16s::@1 b1: - //SEG37 [17] (signed word) test_16s::dividend#0 ? *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 + //SEG37 [17] (signed word) test_16s::dividend#0 ← *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend lda dividends+1,y sta dividend+1 - //SEG38 [18] (signed word) test_16s::divisor#0 ? *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 + //SEG38 [18] (signed word) test_16s::divisor#0 ← *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor lda divisors+1,y sta divisor+1 - //SEG39 [19] (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 - //SEG40 [20] (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 + //SEG39 [19] (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 + //SEG40 [20] (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 //SEG41 [21] call div16s jsr div16s - //SEG42 [22] (signed word) div16s::return#2 ? (signed word) div16s::return#0 + //SEG42 [22] (signed word) div16s::return#2 ← (signed word) div16s::return#0 jmp b2 //SEG43 test_16s::@2 b2: - //SEG44 [23] (signed word) test_16s::res#0 ? (signed word) div16s::return#2 - //SEG45 [24] (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#0 - //SEG46 [25] (byte*~) print_char_cursor#159 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG44 [23] (signed word) test_16s::res#0 ← (signed word) div16s::return#2 + //SEG45 [24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 + //SEG46 [25] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -7031,7 +7031,7 @@ test_16s: { jmp b4 //SEG56 test_16s::@4 b4: - //SEG57 [29] (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 + //SEG57 [29] (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 lda divisor sta print_sword.w lda divisor+1 @@ -7059,7 +7059,7 @@ test_16s: { jmp b6 //SEG67 test_16s::@6 b6: - //SEG68 [33] (signed word) print_sword::w#3 ? (signed word) test_16s::res#0 -- vwsz1=vwsz2 + //SEG68 [33] (signed word) print_sword::w#3 ← (signed word) test_16s::res#0 -- vwsz1=vwsz2 lda res sta print_sword.w lda res+1 @@ -7087,7 +7087,7 @@ test_16s: { jmp b8 //SEG78 test_16s::@8 b8: - //SEG79 [37] (signed word) print_sword::w#4 ? (signed word) rem16s#11 -- vwsz1=vwsz2 + //SEG79 [37] (signed word) print_sword::w#4 ← (signed word) rem16s#11 -- vwsz1=vwsz2 lda rem16s sta print_sword.w lda rem16s+1 @@ -7111,7 +7111,7 @@ test_16s: { jmp b10 //SEG89 test_16s::@10 b10: - //SEG90 [41] (byte) test_16s::i#1 ? (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG90 [41] (byte) test_16s::i#1 ← (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -7138,7 +7138,7 @@ print_ln: { jmp b1 //SEG97 print_ln::@1 b1: - //SEG98 [46] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG98 [46] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -7184,7 +7184,7 @@ print_sword: { jmp b3 //SEG110 print_sword::@3 b3: - //SEG111 [53] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#5 -- vwsz1=_neg_vwsz1 + //SEG111 [53] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#5 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -7202,7 +7202,7 @@ print_sword: { jmp b1 //SEG115 print_sword::@1 b1: - //SEG116 [55] (word~) print_word::w#7 ? (word)(signed word) print_sword::w#6 + //SEG116 [55] (word~) print_word::w#7 ← (word)(signed word) print_sword::w#6 //SEG117 [56] call print_word //SEG118 [58] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] print_word_from_b1: @@ -7220,7 +7220,7 @@ print_sword: { // print_word(word zeropage(5) w) print_word: { .label w = 5 - //SEG124 [59] (byte) print_byte::b#1 ? > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 + //SEG124 [59] (byte) print_byte::b#1 ← > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG125 [60] call print_byte @@ -7232,7 +7232,7 @@ print_word: { jmp b1 //SEG129 print_word::@1 b1: - //SEG130 [61] (byte) print_byte::b#2 ? < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 + //SEG130 [61] (byte) print_byte::b#2 ← < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG131 [62] call print_byte @@ -7252,13 +7252,13 @@ print_word: { // print_byte(byte zeropage(7) b) print_byte: { .label b = 7 - //SEG138 [65] (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG138 [65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG139 [66] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG139 [66] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG140 [67] call print_char @@ -7270,10 +7270,10 @@ print_byte: { jmp b1 //SEG144 print_byte::@1 b1: - //SEG145 [68] (byte~) print_byte::$2 ? (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG145 [68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG146 [69] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG146 [69] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG147 [70] call print_char @@ -7292,10 +7292,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG154 [73] *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa + //SEG154 [73] *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG155 [74] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#82 -- pbuz1=_inc_pbuz1 + //SEG155 [74] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#82 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -7331,17 +7331,17 @@ print_str: { rts //SEG166 print_str::@2 b2: - //SEG167 [80] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#13) -- _deref_pbuz1=_deref_pbuz2 + //SEG167 [80] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#13) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG168 [81] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 + //SEG168 [81] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG169 [82] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#13 -- pbuz1=_inc_pbuz1 + //SEG169 [82] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#13 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -7360,23 +7360,23 @@ div16s: { .label return = $e .label dividend = 5 .label divisor = $13 - //SEG171 [83] (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#0 -- vwsz1=vwsz2 + //SEG171 [83] (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#0 -- vwsz1=vwsz2 lda dividend sta divr16s.dividend lda dividend+1 sta divr16s.dividend+1 - //SEG172 [84] (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#0 -- vwsz1=vwsz2 + //SEG172 [84] (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#0 -- vwsz1=vwsz2 lda divisor sta divr16s.divisor lda divisor+1 sta divr16s.divisor+1 //SEG173 [85] call divr16s jsr divr16s - //SEG174 [86] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + //SEG174 [86] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 jmp b1 //SEG175 div16s::@1 b1: - //SEG176 [87] (signed word) div16s::return#0 ? (signed word) divr16s::return#3 + //SEG176 [87] (signed word) div16s::return#0 ← (signed word) divr16s::return#3 jmp breturn //SEG177 div16s::@return breturn: @@ -7407,7 +7407,7 @@ divr16s: { jmp b7 //SEG181 divr16s::@7 b7: - //SEG182 [90] (word~) divr16s::dividendu#8 ? (word)(signed word) divr16s::dividend#0 + //SEG182 [90] (word~) divr16s::dividendu#8 ← (word)(signed word) divr16s::dividend#0 //SEG183 [91] phi from divr16s::@7 to divr16s::@2 [phi:divr16s::@7->divr16s::@2] b2_from_b7: //SEG184 [91] phi (word) divr16s::remu#3 = ((word))(const signed word) divr16s::rem#0 [phi:divr16s::@7->divr16s::@2#0] -- vwuz1=vbuc1 @@ -7427,7 +7427,7 @@ divr16s: { jmp b8 //SEG189 divr16s::@8 b8: - //SEG190 [93] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 + //SEG190 [93] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 //SEG191 [94] phi from divr16s::@3 divr16s::@8 to divr16s::@4 [phi:divr16s::@3/divr16s::@8->divr16s::@4] b4_from_b3: b4_from_b8: @@ -7436,9 +7436,9 @@ divr16s: { jmp b4 //SEG194 divr16s::@4 b4: - //SEG195 [95] (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 - //SEG196 [96] (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 - //SEG197 [97] (word) divr16u::rem#4 ? (word) divr16s::remu#3 + //SEG195 [95] (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 + //SEG196 [96] (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 + //SEG197 [97] (word) divr16u::rem#4 ← (word) divr16s::remu#3 //SEG198 [98] call divr16u //SEG199 [113] phi from divr16s::@4 to divr16u [phi:divr16s::@4->divr16u] divr16u_from_b4: @@ -7446,18 +7446,18 @@ divr16s: { //SEG201 [113] phi (word) divr16u::dividend#5 = (word) divr16u::dividend#2 [phi:divr16s::@4->divr16u#1] -- register_copy //SEG202 [113] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:divr16s::@4->divr16u#2] -- register_copy jsr divr16u - //SEG203 [99] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG203 [99] (word) divr16u::return#3 ← (word) divr16u::return#0 jmp b6 //SEG204 divr16s::@6 b6: - //SEG205 [100] (word) divr16s::resultu#0 ? (word) divr16u::return#3 + //SEG205 [100] (word) divr16s::resultu#0 ← (word) divr16u::return#3 //SEG206 [101] if((byte) divr16s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@9 -- vbuyy_eq_0_then_la1 cpy #0 beq b9 jmp b5 //SEG207 divr16s::@5 b5: - //SEG208 [102] (signed word) rem16s#2 ? - (signed word)(word) rem16u#1 -- vwsz1=_neg_vwsz1 + //SEG208 [102] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 -- vwsz1=_neg_vwsz1 sec lda rem16s eor #$ff @@ -7467,7 +7467,7 @@ divr16s: { eor #$ff adc #0 sta rem16s+1 - //SEG209 [103] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 + //SEG209 [103] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 sec lda return eor #$ff @@ -7489,12 +7489,12 @@ divr16s: { rts //SEG215 divr16s::@9 b9: - //SEG216 [106] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 - //SEG217 [107] (signed word~) rem16s#37 ? (signed word)(word) rem16u#1 + //SEG216 [106] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 + //SEG217 [107] (signed word~) rem16s#37 ← (signed word)(word) rem16u#1 jmp breturn_from_b9 //SEG218 divr16s::@3 b3: - //SEG219 [108] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 + //SEG219 [108] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 sec lda _13 eor #$ff @@ -7504,15 +7504,15 @@ divr16s: { eor #$ff adc #0 sta _13+1 - //SEG220 [109] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 + //SEG220 [109] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 tya eor #1 tay - //SEG221 [110] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 + //SEG221 [110] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 jmp b4_from_b3 //SEG222 divr16s::@1 b1: - //SEG223 [111] (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#0 -- vwsz1=_neg_vwsz1 + //SEG223 [111] (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#0 -- vwsz1=_neg_vwsz1 sec lda _8 eor #$ff @@ -7522,7 +7522,7 @@ divr16s: { eor #$ff adc #0 sta _8+1 - //SEG224 [112] (word~) divr16s::dividendu#7 ? (word)(signed word~) divr16s::$8 + //SEG224 [112] (word~) divr16s::dividendu#7 ← (word)(signed word~) divr16s::$8 //SEG225 [91] phi from divr16s::@1 to divr16s::@2 [phi:divr16s::@1->divr16s::@2] b2_from_b1: //SEG226 [91] phi (word) divr16s::remu#3 = ((word))-(const signed word) divr16s::rem#0 [phi:divr16s::@1->divr16s::@2#0] -- vwuz1=vbuc1 @@ -7568,12 +7568,12 @@ divr16u: { jmp b1 //SEG240 divr16u::@1 b1: - //SEG241 [115] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG241 [115] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG242 [116] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG242 [116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG243 [117] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG243 [117] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG244 [118] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 @@ -7581,7 +7581,7 @@ divr16u: { jmp b4 //SEG245 divr16u::@4 b4: - //SEG246 [119] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG246 [119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -7592,10 +7592,10 @@ divr16u: { jmp b2 //SEG249 divr16u::@2 b2: - //SEG250 [121] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG250 [121] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG251 [122] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG251 [122] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG252 [123] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 -- vwuz1_lt_vwuz2_then_la1 @@ -7610,12 +7610,12 @@ divr16u: { jmp b5 //SEG253 divr16u::@5 b5: - //SEG254 [124] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG254 [124] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG255 [125] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (word) divr16u::divisor#6 -- vwuz1=vwuz1_minus_vwuz2 + //SEG255 [125] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 -- vwuz1=vwuz1_minus_vwuz2 lda rem sec sbc divisor @@ -7631,7 +7631,7 @@ divr16u: { jmp b3 //SEG259 divr16u::@3 b3: - //SEG260 [127] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG260 [127] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG261 [128] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 @@ -7639,7 +7639,7 @@ divr16u: { jmp b6 //SEG262 divr16u::@6 b6: - //SEG263 [129] (word) rem16u#1 ? (word) divr16u::rem#11 + //SEG263 [129] (word) rem16u#1 ← (word) divr16u::rem#11 jmp breturn //SEG264 divr16u::@return breturn: @@ -7664,28 +7664,28 @@ test_8s: { jmp b1 //SEG271 test_8s::@1 b1: - //SEG272 [133] (signed byte) test_8s::dividend#0 ? *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG272 [133] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG273 [134] (signed byte) test_8s::divisor#0 ? *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG273 [134] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG274 [135] (signed byte) div8s::dividend#0 ? (signed byte) test_8s::dividend#0 -- vbsyy=vbsz1 + //SEG274 [135] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 -- vbsyy=vbsz1 ldy dividend - //SEG275 [136] (signed byte) div8s::divisor#0 ? (signed byte) test_8s::divisor#0 -- vbsxx=vbsz1 + //SEG275 [136] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 -- vbsxx=vbsz1 ldx divisor //SEG276 [137] call div8s jsr div8s - //SEG277 [138] (signed byte) div8s::return#3 ? (signed byte) div8s::return#2 + //SEG277 [138] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 jmp b2 //SEG278 test_8s::@2 b2: - //SEG279 [139] (signed byte) test_8s::res#0 ? (signed byte) div8s::return#3 -- vbsz1=vbsaa + //SEG279 [139] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 -- vbsz1=vbsaa sta res - //SEG280 [140] (signed byte) print_sbyte::b#1 ? (signed byte) test_8s::dividend#0 - //SEG281 [141] (byte*~) print_char_cursor#184 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG280 [140] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 + //SEG281 [141] (byte*~) print_char_cursor#184 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -7713,7 +7713,7 @@ test_8s: { jmp b4 //SEG291 test_8s::@4 b4: - //SEG292 [145] (signed byte) print_sbyte::b#2 ? (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 + //SEG292 [145] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 lda divisor sta print_sbyte.b //SEG293 [146] call print_sbyte @@ -7739,7 +7739,7 @@ test_8s: { jmp b6 //SEG302 test_8s::@6 b6: - //SEG303 [149] (signed byte) print_sbyte::b#3 ? (signed byte) test_8s::res#0 -- vbsz1=vbsz2 + //SEG303 [149] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 -- vbsz1=vbsz2 lda res sta print_sbyte.b //SEG304 [150] call print_sbyte @@ -7765,7 +7765,7 @@ test_8s: { jmp b8 //SEG313 test_8s::@8 b8: - //SEG314 [153] (signed byte) print_sbyte::b#4 ? (signed byte) rem8s#3 -- vbsz1=vbsxx + //SEG314 [153] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 -- vbsz1=vbsxx stx print_sbyte.b //SEG315 [154] call print_sbyte //SEG316 [160] phi from test_8s::@8 to print_sbyte [phi:test_8s::@8->print_sbyte] @@ -7786,7 +7786,7 @@ test_8s: { jmp b10 //SEG324 test_8s::@10 b10: - //SEG325 [157] (byte) test_8s::i#1 ? ++ (byte) test_8s::i#10 -- vbuz1=_inc_vbuz1 + //SEG325 [157] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 -- vbuz1=_inc_vbuz1 inc i //SEG326 [158] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@1 -- vbuz1_neq_vbuc1_then_la1 lda #6 @@ -7827,7 +7827,7 @@ print_sbyte: { jmp b2 //SEG339 print_sbyte::@2 b2: - //SEG340 [165] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#7 + //SEG340 [165] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#7 //SEG341 [166] call print_byte //SEG342 [64] phi from print_sbyte::@2 to print_byte [phi:print_sbyte::@2->print_byte] print_byte_from_b2: @@ -7854,7 +7854,7 @@ print_sbyte: { jmp b4 //SEG353 print_sbyte::@4 b4: - //SEG354 [170] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#10 -- vbsz1=_neg_vbsz1 + //SEG354 [170] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#10 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -7878,7 +7878,7 @@ div8s: { jmp b7 //SEG357 div8s::@7 b7: - //SEG358 [172] (byte~) div8s::dividendu#8 ? (byte)(signed byte) div8s::dividend#0 + //SEG358 [172] (byte~) div8s::dividendu#8 ← (byte)(signed byte) div8s::dividend#0 //SEG359 [173] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] b2_from_b7: //SEG360 [173] phi (byte) div8s::dividendu#3 = (byte~) div8s::dividendu#8 [phi:div8s::@7->div8s::@2#0] -- register_copy @@ -7894,7 +7894,7 @@ div8s: { jmp b8 //SEG364 div8s::@8 b8: - //SEG365 [175] (byte~) div8s::divisoru#5 ? (byte)(signed byte) div8s::divisor#0 + //SEG365 [175] (byte~) div8s::divisoru#5 ← (byte)(signed byte) div8s::divisor#0 //SEG366 [176] phi from div8s::@3 div8s::@8 to div8s::@4 [phi:div8s::@3/div8s::@8->div8s::@4] b4_from_b3: b4_from_b8: @@ -7903,20 +7903,20 @@ div8s: { jmp b4 //SEG369 div8s::@4 b4: - //SEG370 [177] (byte) div8u::dividend#0 ? (byte) div8s::dividendu#3 -- vbuaa=vbuyy + //SEG370 [177] (byte) div8u::dividend#0 ← (byte) div8s::dividendu#3 -- vbuaa=vbuyy tya - //SEG371 [178] (byte) div8u::divisor#0 ? (byte) div8s::divisoru#3 + //SEG371 [178] (byte) div8u::divisor#0 ← (byte) div8s::divisoru#3 //SEG372 [179] call div8u //SEG373 [194] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] div8u_from_b4: //SEG374 [194] phi (byte) div8u::divisor#2 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#0] -- register_copy //SEG375 [194] phi (byte) div8u::dividend#2 = (byte) div8u::dividend#0 [phi:div8s::@4->div8u#1] -- register_copy jsr div8u - //SEG376 [180] (byte) div8u::return#2 ? (byte) div8u::return#0 + //SEG376 [180] (byte) div8u::return#2 ← (byte) div8u::return#0 jmp b6 //SEG377 div8s::@6 b6: - //SEG378 [181] (byte) div8s::resultu#0 ? (byte) div8u::return#2 -- vbuyy=vbuaa + //SEG378 [181] (byte) div8s::resultu#0 ← (byte) div8u::return#2 -- vbuyy=vbuaa tay //SEG379 [182] if((byte) div8s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@9 -- vbuz1_eq_0_then_la1 lda neg @@ -7925,13 +7925,13 @@ div8s: { jmp b5 //SEG380 div8s::@5 b5: - //SEG381 [183] (signed byte) rem8s#2 ? - (signed byte)(byte) rem8u#17 -- vbsxx=_neg_vbsxx + //SEG381 [183] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 -- vbsxx=_neg_vbsxx txa eor #$ff clc adc #1 tax - //SEG382 [184] (signed byte) div8s::return#1 ? - (signed byte)(byte) div8s::resultu#0 -- vbsaa=_neg_vbsyy + //SEG382 [184] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 -- vbsaa=_neg_vbsyy tya eor #$ff clc @@ -7948,32 +7948,32 @@ div8s: { rts //SEG388 div8s::@9 b9: - //SEG389 [187] (signed byte~) div8s::return#7 ? (signed byte)(byte) div8s::resultu#0 -- vbsaa=vbsyy + //SEG389 [187] (signed byte~) div8s::return#7 ← (signed byte)(byte) div8s::resultu#0 -- vbsaa=vbsyy tya - //SEG390 [188] (signed byte~) rem8s#33 ? (signed byte)(byte) rem8u#17 + //SEG390 [188] (signed byte~) rem8s#33 ← (signed byte)(byte) rem8u#17 jmp breturn_from_b9 //SEG391 div8s::@3 b3: - //SEG392 [189] (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#0 -- vbsxx=_neg_vbsxx + //SEG392 [189] (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#0 -- vbsxx=_neg_vbsxx txa eor #$ff clc adc #1 tax - //SEG393 [190] (byte) div8s::neg#2 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG393 [190] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG394 [191] (byte~) div8s::divisoru#4 ? (byte)(signed byte~) div8s::$8 + //SEG394 [191] (byte~) div8s::divisoru#4 ← (byte)(signed byte~) div8s::$8 jmp b4_from_b3 //SEG395 div8s::@1 b1: - //SEG396 [192] (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#0 -- vbsaa=_neg_vbsyy + //SEG396 [192] (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#0 -- vbsaa=_neg_vbsyy tya eor #$ff clc adc #1 - //SEG397 [193] (byte~) div8s::dividendu#7 ? (byte)(signed byte~) div8s::$5 -- vbuyy=vbuaa + //SEG397 [193] (byte~) div8s::dividendu#7 ← (byte)(signed byte~) div8s::$5 -- vbuyy=vbuaa tay //SEG398 [173] phi from div8s::@1 to div8s::@2 [phi:div8s::@1->div8s::@2] b2_from_b1: @@ -7990,20 +7990,20 @@ div8s: { // Implemented using simple binary division // div8u(byte register(A) dividend, byte register(X) divisor) div8u: { - //SEG402 [195] (byte) divr8u::dividend#0 ? (byte) div8u::dividend#2 -- vbuz1=vbuaa + //SEG402 [195] (byte) divr8u::dividend#0 ← (byte) div8u::dividend#2 -- vbuz1=vbuaa sta divr8u.dividend - //SEG403 [196] (byte) divr8u::divisor#0 ? (byte) div8u::divisor#2 -- vbuz1=vbuxx + //SEG403 [196] (byte) divr8u::divisor#0 ← (byte) div8u::divisor#2 -- vbuz1=vbuxx stx divr8u.divisor //SEG404 [197] call divr8u //SEG405 [201] phi from div8u to divr8u [phi:div8u->divr8u] divr8u_from_div8u: jsr divr8u - //SEG406 [198] (byte) divr8u::return#0 ? (byte) divr8u::return#1 -- vbuaa=vbuz1 + //SEG406 [198] (byte) divr8u::return#0 ← (byte) divr8u::return#1 -- vbuaa=vbuz1 lda divr8u.return jmp b1 //SEG407 div8u::@1 b1: - //SEG408 [199] (byte) div8u::return#0 ? (byte) divr8u::return#0 + //SEG408 [199] (byte) div8u::return#0 ← (byte) divr8u::return#0 jmp breturn //SEG409 div8u::@return breturn: @@ -8041,11 +8041,11 @@ divr8u: { jmp b1 //SEG422 divr8u::@1 b1: - //SEG423 [203] (byte) divr8u::rem#1 ? (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_rol_1 + //SEG423 [203] (byte) divr8u::rem#1 ← (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_rol_1 tya asl tay - //SEG424 [204] (byte~) divr8u::$1 ? (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG424 [204] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and dividend //SEG425 [205] if((byte~) divr8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr8u::@2 -- vbuaa_eq_0_then_la1 @@ -8054,7 +8054,7 @@ divr8u: { jmp b4 //SEG426 divr8u::@4 b4: - //SEG427 [206] (byte) divr8u::rem#2 ? (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bor_vbuc1 + //SEG427 [206] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bor_vbuc1 tya ora #1 tay @@ -8065,9 +8065,9 @@ divr8u: { jmp b2 //SEG430 divr8u::@2 b2: - //SEG431 [208] (byte) divr8u::dividend#1 ? (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG431 [208] (byte) divr8u::dividend#1 ← (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl dividend - //SEG432 [209] (byte) divr8u::quotient#1 ? (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG432 [209] (byte) divr8u::quotient#1 ← (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl quotient //SEG433 [210] if((byte) divr8u::rem#5<(byte) divr8u::divisor#0) goto divr8u::@3 -- vbuyy_lt_vbuz1_then_la1 cpy divisor @@ -8075,9 +8075,9 @@ divr8u: { jmp b5 //SEG434 divr8u::@5 b5: - //SEG435 [211] (byte) divr8u::quotient#2 ? ++ (byte) divr8u::quotient#1 -- vbuz1=_inc_vbuz1 + //SEG435 [211] (byte) divr8u::quotient#2 ← ++ (byte) divr8u::quotient#1 -- vbuz1=_inc_vbuz1 inc quotient - //SEG436 [212] (byte) divr8u::rem#3 ? (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 -- vbuyy=vbuyy_minus_vbuz1 + //SEG436 [212] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 -- vbuyy=vbuyy_minus_vbuz1 tya sec sbc divisor @@ -8090,7 +8090,7 @@ divr8u: { jmp b3 //SEG440 divr8u::@3 b3: - //SEG441 [214] (byte) divr8u::i#1 ? ++ (byte) divr8u::i#2 -- vbuxx=_inc_vbuxx + //SEG441 [214] (byte) divr8u::i#1 ← ++ (byte) divr8u::i#2 -- vbuxx=_inc_vbuxx inx //SEG442 [215] if((byte) divr8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto divr8u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 @@ -8098,7 +8098,7 @@ divr8u: { jmp b6 //SEG443 divr8u::@6 b6: - //SEG444 [216] (byte) rem8u#17 ? (byte) divr8u::rem#10 -- vbuxx=vbuyy + //SEG444 [216] (byte) rem8u#17 ← (byte) divr8u::rem#10 -- vbuxx=vbuyy tya tax jmp breturn @@ -8125,29 +8125,29 @@ test_16u: { jmp b1 //SEG452 test_16u::@1 b1: - //SEG453 [220] (word) test_16u::dividend#0 ? *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG453 [220] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend lda dividends+1,y sta dividend+1 - //SEG454 [221] (word) test_16u::divisor#0 ? *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG454 [221] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor lda divisors+1,y sta divisor+1 - //SEG455 [222] (word) div16u::dividend#0 ? (word) test_16u::dividend#0 - //SEG456 [223] (word) div16u::divisor#0 ? (word) test_16u::divisor#0 + //SEG455 [222] (word) div16u::dividend#0 ← (word) test_16u::dividend#0 + //SEG456 [223] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 //SEG457 [224] call div16u jsr div16u - //SEG458 [225] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG458 [225] (word) div16u::return#2 ← (word) div16u::return#0 jmp b2 //SEG459 test_16u::@2 b2: - //SEG460 [226] (word) test_16u::res#0 ? (word) div16u::return#2 - //SEG461 [227] (word) print_word::w#1 ? (word) test_16u::dividend#0 - //SEG462 [228] (byte*~) print_char_cursor#166 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG460 [226] (word) test_16u::res#0 ← (word) div16u::return#2 + //SEG461 [227] (word) print_word::w#1 ← (word) test_16u::dividend#0 + //SEG462 [228] (byte*~) print_char_cursor#166 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -8175,7 +8175,7 @@ test_16u: { jmp b4 //SEG472 test_16u::@4 b4: - //SEG473 [232] (word) print_word::w#2 ? (word) test_16u::divisor#0 -- vwuz1=vwuz2 + //SEG473 [232] (word) print_word::w#2 ← (word) test_16u::divisor#0 -- vwuz1=vwuz2 lda divisor sta print_word.w lda divisor+1 @@ -8203,7 +8203,7 @@ test_16u: { jmp b6 //SEG483 test_16u::@6 b6: - //SEG484 [236] (word) print_word::w#3 ? (word) test_16u::res#0 -- vwuz1=vwuz2 + //SEG484 [236] (word) print_word::w#3 ← (word) test_16u::res#0 -- vwuz1=vwuz2 lda res sta print_word.w lda res+1 @@ -8231,7 +8231,7 @@ test_16u: { jmp b8 //SEG494 test_16u::@8 b8: - //SEG495 [240] (word) print_word::w#4 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG495 [240] (word) print_word::w#4 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta print_word.w lda rem16u+1 @@ -8255,7 +8255,7 @@ test_16u: { jmp b10 //SEG505 test_16u::@10 b10: - //SEG506 [244] (byte) test_16u::i#1 ? (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG506 [244] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -8282,12 +8282,12 @@ div16u: { .label return = $e .label dividend = 5 .label divisor = $c - //SEG511 [247] (word) divr16u::dividend#1 ? (word) div16u::dividend#0 -- vwuz1=vwuz2 + //SEG511 [247] (word) divr16u::dividend#1 ← (word) div16u::dividend#0 -- vwuz1=vwuz2 lda dividend sta divr16u.dividend lda dividend+1 sta divr16u.dividend+1 - //SEG512 [248] (word) divr16u::divisor#0 ? (word) div16u::divisor#0 + //SEG512 [248] (word) divr16u::divisor#0 ← (word) div16u::divisor#0 //SEG513 [249] call divr16u //SEG514 [113] phi from div16u to divr16u [phi:div16u->divr16u] divr16u_from_div16u: @@ -8299,11 +8299,11 @@ div16u: { lda #0 sta divr16u.rem+1 jsr divr16u - //SEG518 [250] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG518 [250] (word) divr16u::return#2 ← (word) divr16u::return#0 jmp b1 //SEG519 div16u::@1 b1: - //SEG520 [251] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG520 [251] (word) div16u::return#0 ← (word) divr16u::return#2 jmp breturn //SEG521 div16u::@return breturn: @@ -8334,17 +8334,17 @@ test_8u: { jmp b1 //SEG528 test_8u::@1 b1: - //SEG529 [255] (byte) test_8u::dividend#0 ? *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG529 [255] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG530 [256] (byte) test_8u::divisor#0 ? *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG530 [256] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda divisors,y sta divisor - //SEG531 [257] (byte) div8u::dividend#1 ? (byte) test_8u::dividend#0 -- vbuaa=vbuz1 + //SEG531 [257] (byte) div8u::dividend#1 ← (byte) test_8u::dividend#0 -- vbuaa=vbuz1 lda dividend - //SEG532 [258] (byte) div8u::divisor#1 ? (byte) test_8u::divisor#0 -- vbuxx=vbuz1 + //SEG532 [258] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 -- vbuxx=vbuz1 ldx divisor //SEG533 [259] call div8u //SEG534 [194] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] @@ -8352,13 +8352,13 @@ test_8u: { //SEG535 [194] phi (byte) div8u::divisor#2 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#0] -- register_copy //SEG536 [194] phi (byte) div8u::dividend#2 = (byte) div8u::dividend#1 [phi:test_8u::@1->div8u#1] -- register_copy jsr div8u - //SEG537 [260] (byte) div8u::return#3 ? (byte) div8u::return#0 + //SEG537 [260] (byte) div8u::return#3 ← (byte) div8u::return#0 jmp b2 //SEG538 test_8u::@2 b2: - //SEG539 [261] (byte) test_8u::res#0 ? (byte) div8u::return#3 -- vbuz1=vbuaa + //SEG539 [261] (byte) test_8u::res#0 ← (byte) div8u::return#3 -- vbuz1=vbuaa sta res - //SEG540 [262] (byte) print_byte::b#3 ? (byte) test_8u::dividend#0 + //SEG540 [262] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 //SEG541 [263] call print_byte //SEG542 [64] phi from test_8u::@2 to print_byte [phi:test_8u::@2->print_byte] print_byte_from_b2: @@ -8382,7 +8382,7 @@ test_8u: { jmp b4 //SEG550 test_8u::@4 b4: - //SEG551 [266] (byte) print_byte::b#4 ? (byte) test_8u::divisor#0 -- vbuz1=vbuz2 + //SEG551 [266] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 -- vbuz1=vbuz2 lda divisor sta print_byte.b //SEG552 [267] call print_byte @@ -8408,7 +8408,7 @@ test_8u: { jmp b6 //SEG561 test_8u::@6 b6: - //SEG562 [270] (byte) print_byte::b#5 ? (byte) test_8u::res#0 -- vbuz1=vbuz2 + //SEG562 [270] (byte) print_byte::b#5 ← (byte) test_8u::res#0 -- vbuz1=vbuz2 lda res sta print_byte.b //SEG563 [271] call print_byte @@ -8434,7 +8434,7 @@ test_8u: { jmp b8 //SEG572 test_8u::@8 b8: - //SEG573 [274] (byte) print_byte::b#6 ? (byte) rem8u#17 -- vbuz1=vbuxx + //SEG573 [274] (byte) print_byte::b#6 ← (byte) rem8u#17 -- vbuz1=vbuxx stx print_byte.b //SEG574 [275] call print_byte //SEG575 [64] phi from test_8u::@8 to print_byte [phi:test_8u::@8->print_byte] @@ -8455,7 +8455,7 @@ test_8u: { jmp b10 //SEG583 test_8u::@10 b10: - //SEG584 [278] (byte) test_8u::i#1 ? ++ (byte) test_8u::i#10 -- vbuz1=_inc_vbuz1 + //SEG584 [278] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 -- vbuz1=_inc_vbuz1 inc i //SEG585 [279] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@11 -- vbuz1_neq_vbuc1_then_la1 lda #6 @@ -8468,7 +8468,7 @@ test_8u: { rts //SEG588 test_8u::@11 b11: - //SEG589 [281] (byte*~) print_char_cursor#188 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG589 [281] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -8500,11 +8500,11 @@ print_cls: { jmp b1 //SEG599 print_cls::@1 b1: - //SEG600 [284] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG600 [284] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG601 [285] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG601 [285] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -9410,26 +9410,26 @@ test_16s: { //SEG35 [16] phi (byte) test_16s::i#10 = (byte) test_16s::i#1 [phi:test_16s::@10->test_16s::@1#0] -- register_copy //SEG36 test_16s::@1 b1: - //SEG37 [17] (signed word) test_16s::dividend#0 ? *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 + //SEG37 [17] (signed word) test_16s::dividend#0 ← *((const signed word[]) test_16s::dividends#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend lda dividends+1,y sta dividend+1 - //SEG38 [18] (signed word) test_16s::divisor#0 ? *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 + //SEG38 [18] (signed word) test_16s::divisor#0 ← *((const signed word[]) test_16s::divisors#0 + (byte) test_16s::i#10) -- vwsz1=pwsc1_derefidx_vbuz2 lda divisors,y sta divisor lda divisors+1,y sta divisor+1 - //SEG39 [19] (signed word) div16s::dividend#0 ? (signed word) test_16s::dividend#0 - //SEG40 [20] (signed word) div16s::divisor#0 ? (signed word) test_16s::divisor#0 + //SEG39 [19] (signed word) div16s::dividend#0 ← (signed word) test_16s::dividend#0 + //SEG40 [20] (signed word) div16s::divisor#0 ← (signed word) test_16s::divisor#0 //SEG41 [21] call div16s jsr div16s - //SEG42 [22] (signed word) div16s::return#2 ? (signed word) div16s::return#0 + //SEG42 [22] (signed word) div16s::return#2 ← (signed word) div16s::return#0 //SEG43 test_16s::@2 - //SEG44 [23] (signed word) test_16s::res#0 ? (signed word) div16s::return#2 - //SEG45 [24] (signed word) print_sword::w#1 ? (signed word) test_16s::dividend#0 - //SEG46 [25] (byte*~) print_char_cursor#159 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG44 [23] (signed word) test_16s::res#0 ← (signed word) div16s::return#2 + //SEG45 [24] (signed word) print_sword::w#1 ← (signed word) test_16s::dividend#0 + //SEG46 [25] (byte*~) print_char_cursor#159 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -9450,7 +9450,7 @@ test_16s: { sta print_str.str+1 jsr print_str //SEG56 test_16s::@4 - //SEG57 [29] (signed word) print_sword::w#2 ? (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 + //SEG57 [29] (signed word) print_sword::w#2 ← (signed word) test_16s::divisor#0 -- vwsz1=vwsz2 lda divisor sta print_sword.w lda divisor+1 @@ -9471,7 +9471,7 @@ test_16s: { sta print_str.str+1 jsr print_str //SEG67 test_16s::@6 - //SEG68 [33] (signed word) print_sword::w#3 ? (signed word) test_16s::res#0 -- vwsz1=vwsz2 + //SEG68 [33] (signed word) print_sword::w#3 ← (signed word) test_16s::res#0 -- vwsz1=vwsz2 lda res sta print_sword.w lda res+1 @@ -9492,7 +9492,7 @@ test_16s: { sta print_str.str+1 jsr print_str //SEG78 test_16s::@8 - //SEG79 [37] (signed word) print_sword::w#4 ? (signed word) rem16s#11 -- vwsz1=vwsz2 + //SEG79 [37] (signed word) print_sword::w#4 ← (signed word) rem16s#11 -- vwsz1=vwsz2 lda rem16s sta print_sword.w lda rem16s+1 @@ -9509,7 +9509,7 @@ test_16s: { //SEG88 [44] phi (byte*) print_line_cursor#39 = (byte*) print_line_cursor#1 [phi:test_16s::@9->print_ln#0] -- register_copy jsr print_ln //SEG89 test_16s::@10 - //SEG90 [41] (byte) test_16s::i#1 ? (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG90 [41] (byte) test_16s::i#1 ← (byte) test_16s::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -9533,7 +9533,7 @@ print_ln: { //SEG96 [45] phi (byte*) print_line_cursor#20 = (byte*) print_line_cursor#39 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy //SEG97 print_ln::@1 b1: - //SEG98 [46] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG98 [46] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#20 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -9571,7 +9571,7 @@ print_sword: { lda #'-' jsr print_char //SEG110 print_sword::@3 - //SEG111 [53] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#5 -- vwsz1=_neg_vwsz1 + //SEG111 [53] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#5 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -9586,7 +9586,7 @@ print_sword: { //SEG114 [54] phi (signed word) print_sword::w#6 = (signed word) print_sword::w#5 [phi:print_sword/print_sword::@3->print_sword::@1#1] -- register_copy //SEG115 print_sword::@1 b1: - //SEG116 [55] (word~) print_word::w#7 ? (word)(signed word) print_sword::w#6 + //SEG116 [55] (word~) print_word::w#7 ← (word)(signed word) print_sword::w#6 //SEG117 [56] call print_word //SEG118 [58] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] //SEG119 [58] phi (byte*) print_char_cursor#135 = (byte*) print_char_cursor#130 [phi:print_sword::@1->print_word#0] -- register_copy @@ -9601,7 +9601,7 @@ print_sword: { // print_word(word zeropage(5) w) print_word: { .label w = 5 - //SEG124 [59] (byte) print_byte::b#1 ? > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 + //SEG124 [59] (byte) print_byte::b#1 ← > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG125 [60] call print_byte @@ -9610,7 +9610,7 @@ print_word: { //SEG128 [64] phi (byte) print_byte::b#7 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy jsr print_byte //SEG129 print_word::@1 - //SEG130 [61] (byte) print_byte::b#2 ? < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 + //SEG130 [61] (byte) print_byte::b#2 ← < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG131 [62] call print_byte @@ -9627,13 +9627,13 @@ print_word: { // print_byte(byte zeropage(7) b) print_byte: { .label b = 7 - //SEG138 [65] (byte~) print_byte::$0 ? (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 + //SEG138 [65] (byte~) print_byte::$0 ← (byte) print_byte::b#7 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuz1_ror_4 lda b lsr lsr lsr lsr - //SEG139 [66] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG139 [66] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG140 [67] call print_char @@ -9642,10 +9642,10 @@ print_byte: { //SEG143 [72] phi (byte) print_char::ch#5 = (byte) print_char::ch#3 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG144 print_byte::@1 - //SEG145 [68] (byte~) print_byte::$2 ? (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 + //SEG145 [68] (byte~) print_byte::$2 ← (byte) print_byte::b#7 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuaa=vbuz1_band_vbuc1 lda #$f and b - //SEG146 [69] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG146 [69] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG147 [70] call print_char @@ -9661,10 +9661,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG154 [73] *((byte*) print_char_cursor#82) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa + //SEG154 [73] *((byte*) print_char_cursor#82) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG155 [74] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#82 -- pbuz1=_inc_pbuz1 + //SEG155 [74] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#82 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -9693,16 +9693,16 @@ print_str: { rts //SEG166 print_str::@2 b2: - //SEG167 [80] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#13) -- _deref_pbuz1=_deref_pbuz2 + //SEG167 [80] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#13) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG168 [81] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 + //SEG168 [81] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG169 [82] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#13 -- pbuz1=_inc_pbuz1 + //SEG169 [82] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#13 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -9721,21 +9721,21 @@ div16s: { .label return = $e .label dividend = 5 .label divisor = $13 - //SEG171 [83] (signed word) divr16s::dividend#0 ? (signed word) div16s::dividend#0 -- vwsz1=vwsz2 + //SEG171 [83] (signed word) divr16s::dividend#0 ← (signed word) div16s::dividend#0 -- vwsz1=vwsz2 lda dividend sta divr16s.dividend lda dividend+1 sta divr16s.dividend+1 - //SEG172 [84] (signed word) divr16s::divisor#0 ? (signed word) div16s::divisor#0 -- vwsz1=vwsz2 + //SEG172 [84] (signed word) divr16s::divisor#0 ← (signed word) div16s::divisor#0 -- vwsz1=vwsz2 lda divisor sta divr16s.divisor lda divisor+1 sta divr16s.divisor+1 //SEG173 [85] call divr16s jsr divr16s - //SEG174 [86] (signed word) divr16s::return#3 ? (signed word) divr16s::return#2 + //SEG174 [86] (signed word) divr16s::return#3 ← (signed word) divr16s::return#2 //SEG175 div16s::@1 - //SEG176 [87] (signed word) div16s::return#0 ? (signed word) divr16s::return#3 + //SEG176 [87] (signed word) div16s::return#0 ← (signed word) divr16s::return#3 //SEG177 div16s::@return //SEG178 [88] return rts @@ -9762,7 +9762,7 @@ divr16s: { lda dividend+1 bmi b1 //SEG181 divr16s::@7 - //SEG182 [90] (word~) divr16s::dividendu#8 ? (word)(signed word) divr16s::dividend#0 + //SEG182 [90] (word~) divr16s::dividendu#8 ← (word)(signed word) divr16s::dividend#0 //SEG183 [91] phi from divr16s::@7 to divr16s::@2 [phi:divr16s::@7->divr16s::@2] //SEG184 [91] phi (word) divr16s::remu#3 = ((word))(const signed word) divr16s::rem#0 [phi:divr16s::@7->divr16s::@2#0] -- vwuz1=vbuc1 lda #rem @@ -9778,29 +9778,29 @@ divr16s: { lda divisor+1 bmi b3 //SEG189 divr16s::@8 - //SEG190 [93] (word~) divr16s::divisoru#5 ? (word)(signed word) divr16s::divisor#0 + //SEG190 [93] (word~) divr16s::divisoru#5 ← (word)(signed word) divr16s::divisor#0 //SEG191 [94] phi from divr16s::@3 divr16s::@8 to divr16s::@4 [phi:divr16s::@3/divr16s::@8->divr16s::@4] //SEG192 [94] phi (byte) divr16s::neg#4 = (byte) divr16s::neg#2 [phi:divr16s::@3/divr16s::@8->divr16s::@4#0] -- register_copy //SEG193 [94] phi (word) divr16s::divisoru#3 = (word~) divr16s::divisoru#4 [phi:divr16s::@3/divr16s::@8->divr16s::@4#1] -- register_copy //SEG194 divr16s::@4 b4: - //SEG195 [95] (word) divr16u::dividend#2 ? (word) divr16s::dividendu#3 - //SEG196 [96] (word) divr16u::divisor#1 ? (word) divr16s::divisoru#3 - //SEG197 [97] (word) divr16u::rem#4 ? (word) divr16s::remu#3 + //SEG195 [95] (word) divr16u::dividend#2 ← (word) divr16s::dividendu#3 + //SEG196 [96] (word) divr16u::divisor#1 ← (word) divr16s::divisoru#3 + //SEG197 [97] (word) divr16u::rem#4 ← (word) divr16s::remu#3 //SEG198 [98] call divr16u //SEG199 [113] phi from divr16s::@4 to divr16u [phi:divr16s::@4->divr16u] //SEG200 [113] phi (word) divr16u::divisor#6 = (word) divr16u::divisor#1 [phi:divr16s::@4->divr16u#0] -- register_copy //SEG201 [113] phi (word) divr16u::dividend#5 = (word) divr16u::dividend#2 [phi:divr16s::@4->divr16u#1] -- register_copy //SEG202 [113] phi (word) divr16u::rem#10 = (word) divr16u::rem#4 [phi:divr16s::@4->divr16u#2] -- register_copy jsr divr16u - //SEG203 [99] (word) divr16u::return#3 ? (word) divr16u::return#0 + //SEG203 [99] (word) divr16u::return#3 ← (word) divr16u::return#0 //SEG204 divr16s::@6 - //SEG205 [100] (word) divr16s::resultu#0 ? (word) divr16u::return#3 + //SEG205 [100] (word) divr16s::resultu#0 ← (word) divr16u::return#3 //SEG206 [101] if((byte) divr16s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16s::@9 -- vbuyy_eq_0_then_la1 cpy #0 beq breturn //SEG207 divr16s::@5 - //SEG208 [102] (signed word) rem16s#2 ? - (signed word)(word) rem16u#1 -- vwsz1=_neg_vwsz1 + //SEG208 [102] (signed word) rem16s#2 ← - (signed word)(word) rem16u#1 -- vwsz1=_neg_vwsz1 sec lda rem16s eor #$ff @@ -9810,7 +9810,7 @@ divr16s: { eor #$ff adc #0 sta rem16s+1 - //SEG209 [103] (signed word) divr16s::return#1 ? - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 + //SEG209 [103] (signed word) divr16s::return#1 ← - (signed word)(word) divr16s::resultu#0 -- vwsz1=_neg_vwsz1 sec lda return eor #$ff @@ -9828,11 +9828,11 @@ divr16s: { //SEG214 [105] return rts //SEG215 divr16s::@9 - //SEG216 [106] (signed word~) divr16s::return#7 ? (signed word)(word) divr16s::resultu#0 - //SEG217 [107] (signed word~) rem16s#37 ? (signed word)(word) rem16u#1 + //SEG216 [106] (signed word~) divr16s::return#7 ← (signed word)(word) divr16s::resultu#0 + //SEG217 [107] (signed word~) rem16s#37 ← (signed word)(word) rem16u#1 //SEG218 divr16s::@3 b3: - //SEG219 [108] (signed word~) divr16s::$13 ? - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 + //SEG219 [108] (signed word~) divr16s::$13 ← - (signed word) divr16s::divisor#0 -- vwsz1=_neg_vwsz1 sec lda _13 eor #$ff @@ -9842,15 +9842,15 @@ divr16s: { eor #$ff adc #0 sta _13+1 - //SEG220 [109] (byte) divr16s::neg#2 ? (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 + //SEG220 [109] (byte) divr16s::neg#2 ← (byte) divr16s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bxor_vbuc1 tya eor #1 tay - //SEG221 [110] (word~) divr16s::divisoru#4 ? (word)(signed word~) divr16s::$13 + //SEG221 [110] (word~) divr16s::divisoru#4 ← (word)(signed word~) divr16s::$13 jmp b4 //SEG222 divr16s::@1 b1: - //SEG223 [111] (signed word~) divr16s::$8 ? - (signed word) divr16s::dividend#0 -- vwsz1=_neg_vwsz1 + //SEG223 [111] (signed word~) divr16s::$8 ← - (signed word) divr16s::dividend#0 -- vwsz1=_neg_vwsz1 sec lda _8 eor #$ff @@ -9860,7 +9860,7 @@ divr16s: { eor #$ff adc #0 sta _8+1 - //SEG224 [112] (word~) divr16s::dividendu#7 ? (word)(signed word~) divr16s::$8 + //SEG224 [112] (word~) divr16s::dividendu#7 ← (word)(signed word~) divr16s::$8 //SEG225 [91] phi from divr16s::@1 to divr16s::@2 [phi:divr16s::@1->divr16s::@2] //SEG226 [91] phi (word) divr16s::remu#3 = ((word))-(const signed word) divr16s::rem#0 [phi:divr16s::@1->divr16s::@2#0] -- vwuz1=vbuc1 lda #-rem @@ -9900,18 +9900,18 @@ divr16u: { //SEG239 [114] phi (word) divr16u::rem#5 = (word) divr16u::rem#11 [phi:divr16u::@3->divr16u::@1#3] -- register_copy //SEG240 divr16u::@1 b1: - //SEG241 [115] (word) divr16u::rem#0 ? (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG241 [115] (word) divr16u::rem#0 ← (word) divr16u::rem#5 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl rem rol rem+1 - //SEG242 [116] (byte~) divr16u::$1 ? > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 + //SEG242 [116] (byte~) divr16u::$1 ← > (word) divr16u::dividend#3 -- vbuaa=_hi_vwuz1 lda dividend+1 - //SEG243 [117] (byte~) divr16u::$2 ? (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 + //SEG243 [117] (byte~) divr16u::$2 ← (byte~) divr16u::$1 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuaa_band_vbuc1 and #$80 //SEG244 [118] if((byte~) divr16u::$2==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr16u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG245 divr16u::@4 - //SEG246 [119] (word) divr16u::rem#1 ? (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 + //SEG246 [119] (word) divr16u::rem#1 ← (word) divr16u::rem#0 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_bor_vbuc1 lda #1 ora rem sta rem @@ -9919,10 +9919,10 @@ divr16u: { //SEG248 [120] phi (word) divr16u::rem#6 = (word) divr16u::rem#0 [phi:divr16u::@1/divr16u::@4->divr16u::@2#0] -- register_copy //SEG249 divr16u::@2 b2: - //SEG250 [121] (word) divr16u::dividend#0 ? (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG250 [121] (word) divr16u::dividend#0 ← (word) divr16u::dividend#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl dividend rol dividend+1 - //SEG251 [122] (word) divr16u::quotient#1 ? (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG251 [122] (word) divr16u::quotient#1 ← (word) divr16u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl quotient rol quotient+1 //SEG252 [123] if((word) divr16u::rem#6<(word) divr16u::divisor#6) goto divr16u::@3 -- vwuz1_lt_vwuz2_then_la1 @@ -9935,12 +9935,12 @@ divr16u: { bcc b3 !: //SEG253 divr16u::@5 - //SEG254 [124] (word) divr16u::quotient#2 ? ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 + //SEG254 [124] (word) divr16u::quotient#2 ← ++ (word) divr16u::quotient#1 -- vwuz1=_inc_vwuz1 inc quotient bne !+ inc quotient+1 !: - //SEG255 [125] (word) divr16u::rem#2 ? (word) divr16u::rem#6 - (word) divr16u::divisor#6 -- vwuz1=vwuz1_minus_vwuz2 + //SEG255 [125] (word) divr16u::rem#2 ← (word) divr16u::rem#6 - (word) divr16u::divisor#6 -- vwuz1=vwuz1_minus_vwuz2 lda rem sec sbc divisor @@ -9953,13 +9953,13 @@ divr16u: { //SEG258 [126] phi (word) divr16u::rem#11 = (word) divr16u::rem#6 [phi:divr16u::@2/divr16u::@5->divr16u::@3#1] -- register_copy //SEG259 divr16u::@3 b3: - //SEG260 [127] (byte) divr16u::i#1 ? ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx + //SEG260 [127] (byte) divr16u::i#1 ← ++ (byte) divr16u::i#2 -- vbuxx=_inc_vbuxx inx //SEG261 [128] if((byte) divr16u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto divr16u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #$10 bne b1 //SEG262 divr16u::@6 - //SEG263 [129] (word) rem16u#1 ? (word) divr16u::rem#11 + //SEG263 [129] (word) rem16u#1 ← (word) divr16u::rem#11 //SEG264 divr16u::@return //SEG265 [130] return rts @@ -9978,25 +9978,25 @@ test_8s: { //SEG270 [132] phi (byte) test_8s::i#10 = (byte) test_8s::i#1 [phi:test_8s::@10->test_8s::@1#0] -- register_copy //SEG271 test_8s::@1 b1: - //SEG272 [133] (signed byte) test_8s::dividend#0 ? *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG272 [133] (signed byte) test_8s::dividend#0 ← *((const signed byte[]) test_8s::dividends#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG273 [134] (signed byte) test_8s::divisor#0 ? *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 + //SEG273 [134] (signed byte) test_8s::divisor#0 ← *((const signed byte[]) test_8s::divisors#0 + (byte) test_8s::i#10) -- vbsz1=pbsc1_derefidx_vbuz2 lda divisors,y sta divisor - //SEG274 [135] (signed byte) div8s::dividend#0 ? (signed byte) test_8s::dividend#0 -- vbsyy=vbsz1 + //SEG274 [135] (signed byte) div8s::dividend#0 ← (signed byte) test_8s::dividend#0 -- vbsyy=vbsz1 ldy dividend - //SEG275 [136] (signed byte) div8s::divisor#0 ? (signed byte) test_8s::divisor#0 -- vbsxx=vbsz1 + //SEG275 [136] (signed byte) div8s::divisor#0 ← (signed byte) test_8s::divisor#0 -- vbsxx=vbsz1 tax //SEG276 [137] call div8s jsr div8s - //SEG277 [138] (signed byte) div8s::return#3 ? (signed byte) div8s::return#2 + //SEG277 [138] (signed byte) div8s::return#3 ← (signed byte) div8s::return#2 //SEG278 test_8s::@2 - //SEG279 [139] (signed byte) test_8s::res#0 ? (signed byte) div8s::return#3 -- vbsz1=vbsaa + //SEG279 [139] (signed byte) test_8s::res#0 ← (signed byte) div8s::return#3 -- vbsz1=vbsaa sta res - //SEG280 [140] (signed byte) print_sbyte::b#1 ? (signed byte) test_8s::dividend#0 - //SEG281 [141] (byte*~) print_char_cursor#184 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG280 [140] (signed byte) print_sbyte::b#1 ← (signed byte) test_8s::dividend#0 + //SEG281 [141] (byte*~) print_char_cursor#184 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -10017,7 +10017,7 @@ test_8s: { sta print_str.str+1 jsr print_str //SEG291 test_8s::@4 - //SEG292 [145] (signed byte) print_sbyte::b#2 ? (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 + //SEG292 [145] (signed byte) print_sbyte::b#2 ← (signed byte) test_8s::divisor#0 -- vbsz1=vbsz2 lda divisor sta print_sbyte.b //SEG293 [146] call print_sbyte @@ -10036,7 +10036,7 @@ test_8s: { sta print_str.str+1 jsr print_str //SEG302 test_8s::@6 - //SEG303 [149] (signed byte) print_sbyte::b#3 ? (signed byte) test_8s::res#0 -- vbsz1=vbsz2 + //SEG303 [149] (signed byte) print_sbyte::b#3 ← (signed byte) test_8s::res#0 -- vbsz1=vbsz2 lda res sta print_sbyte.b //SEG304 [150] call print_sbyte @@ -10055,7 +10055,7 @@ test_8s: { sta print_str.str+1 jsr print_str //SEG313 test_8s::@8 - //SEG314 [153] (signed byte) print_sbyte::b#4 ? (signed byte) rem8s#3 -- vbsz1=vbsxx + //SEG314 [153] (signed byte) print_sbyte::b#4 ← (signed byte) rem8s#3 -- vbsz1=vbsxx stx print_sbyte.b //SEG315 [154] call print_sbyte //SEG316 [160] phi from test_8s::@8 to print_sbyte [phi:test_8s::@8->print_sbyte] @@ -10069,7 +10069,7 @@ test_8s: { //SEG323 [44] phi (byte*) print_line_cursor#39 = (byte*) print_line_cursor#1 [phi:test_8s::@9->print_ln#0] -- register_copy jsr print_ln //SEG324 test_8s::@10 - //SEG325 [157] (byte) test_8s::i#1 ? ++ (byte) test_8s::i#10 -- vbuz1=_inc_vbuz1 + //SEG325 [157] (byte) test_8s::i#1 ← ++ (byte) test_8s::i#10 -- vbuz1=_inc_vbuz1 inc i //SEG326 [158] if((byte) test_8s::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8s::@1 -- vbuz1_neq_vbuc1_then_la1 lda #6 @@ -10101,7 +10101,7 @@ print_sbyte: { //SEG338 [164] phi (signed byte) print_sbyte::b#7 = (signed byte) print_sbyte::b#10 [phi:print_sbyte::@3/print_sbyte::@4->print_sbyte::@2#0] -- register_copy //SEG339 print_sbyte::@2 b2: - //SEG340 [165] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#7 + //SEG340 [165] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#7 //SEG341 [166] call print_byte //SEG342 [64] phi from print_sbyte::@2 to print_byte [phi:print_sbyte::@2->print_byte] //SEG343 [64] phi (byte*) print_char_cursor#136 = (byte*) print_char_cursor#18 [phi:print_sbyte::@2->print_byte#0] -- register_copy @@ -10120,7 +10120,7 @@ print_sbyte: { lda #'-' jsr print_char //SEG353 print_sbyte::@4 - //SEG354 [170] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#10 -- vbsz1=_neg_vbsz1 + //SEG354 [170] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#10 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -10142,7 +10142,7 @@ div8s: { cpy #0 bmi b1 //SEG357 div8s::@7 - //SEG358 [172] (byte~) div8s::dividendu#8 ? (byte)(signed byte) div8s::dividend#0 + //SEG358 [172] (byte~) div8s::dividendu#8 ← (byte)(signed byte) div8s::dividend#0 //SEG359 [173] phi from div8s::@7 to div8s::@2 [phi:div8s::@7->div8s::@2] //SEG360 [173] phi (byte) div8s::dividendu#3 = (byte~) div8s::dividendu#8 [phi:div8s::@7->div8s::@2#0] -- register_copy //SEG361 [173] phi (byte) div8s::neg#3 = (byte/signed byte/word/signed word/dword/signed dword) 0 [phi:div8s::@7->div8s::@2#1] -- vbuz1=vbuc1 @@ -10154,36 +10154,36 @@ div8s: { cpx #0 bmi b3 //SEG364 div8s::@8 - //SEG365 [175] (byte~) div8s::divisoru#5 ? (byte)(signed byte) div8s::divisor#0 + //SEG365 [175] (byte~) div8s::divisoru#5 ← (byte)(signed byte) div8s::divisor#0 //SEG366 [176] phi from div8s::@3 div8s::@8 to div8s::@4 [phi:div8s::@3/div8s::@8->div8s::@4] //SEG367 [176] phi (byte) div8s::neg#4 = (byte) div8s::neg#2 [phi:div8s::@3/div8s::@8->div8s::@4#0] -- register_copy //SEG368 [176] phi (byte) div8s::divisoru#3 = (byte~) div8s::divisoru#4 [phi:div8s::@3/div8s::@8->div8s::@4#1] -- register_copy //SEG369 div8s::@4 b4: - //SEG370 [177] (byte) div8u::dividend#0 ? (byte) div8s::dividendu#3 -- vbuaa=vbuyy + //SEG370 [177] (byte) div8u::dividend#0 ← (byte) div8s::dividendu#3 -- vbuaa=vbuyy tya - //SEG371 [178] (byte) div8u::divisor#0 ? (byte) div8s::divisoru#3 + //SEG371 [178] (byte) div8u::divisor#0 ← (byte) div8s::divisoru#3 //SEG372 [179] call div8u //SEG373 [194] phi from div8s::@4 to div8u [phi:div8s::@4->div8u] //SEG374 [194] phi (byte) div8u::divisor#2 = (byte) div8u::divisor#0 [phi:div8s::@4->div8u#0] -- register_copy //SEG375 [194] phi (byte) div8u::dividend#2 = (byte) div8u::dividend#0 [phi:div8s::@4->div8u#1] -- register_copy jsr div8u - //SEG376 [180] (byte) div8u::return#2 ? (byte) div8u::return#0 + //SEG376 [180] (byte) div8u::return#2 ← (byte) div8u::return#0 //SEG377 div8s::@6 - //SEG378 [181] (byte) div8s::resultu#0 ? (byte) div8u::return#2 -- vbuyy=vbuaa + //SEG378 [181] (byte) div8s::resultu#0 ← (byte) div8u::return#2 -- vbuyy=vbuaa tay //SEG379 [182] if((byte) div8s::neg#4==(byte/signed byte/word/signed word/dword/signed dword) 0) goto div8s::@9 -- vbuz1_eq_0_then_la1 lda neg cmp #0 beq b9 //SEG380 div8s::@5 - //SEG381 [183] (signed byte) rem8s#2 ? - (signed byte)(byte) rem8u#17 -- vbsxx=_neg_vbsxx + //SEG381 [183] (signed byte) rem8s#2 ← - (signed byte)(byte) rem8u#17 -- vbsxx=_neg_vbsxx txa eor #$ff clc adc #1 tax - //SEG382 [184] (signed byte) div8s::return#1 ? - (signed byte)(byte) div8s::resultu#0 -- vbsaa=_neg_vbsyy + //SEG382 [184] (signed byte) div8s::return#1 ← - (signed byte)(byte) div8s::resultu#0 -- vbsaa=_neg_vbsyy tya eor #$ff clc @@ -10196,32 +10196,32 @@ div8s: { rts //SEG388 div8s::@9 b9: - //SEG389 [187] (signed byte~) div8s::return#7 ? (signed byte)(byte) div8s::resultu#0 -- vbsaa=vbsyy + //SEG389 [187] (signed byte~) div8s::return#7 ← (signed byte)(byte) div8s::resultu#0 -- vbsaa=vbsyy tya - //SEG390 [188] (signed byte~) rem8s#33 ? (signed byte)(byte) rem8u#17 + //SEG390 [188] (signed byte~) rem8s#33 ← (signed byte)(byte) rem8u#17 rts //SEG391 div8s::@3 b3: - //SEG392 [189] (signed byte~) div8s::$8 ? - (signed byte) div8s::divisor#0 -- vbsxx=_neg_vbsxx + //SEG392 [189] (signed byte~) div8s::$8 ← - (signed byte) div8s::divisor#0 -- vbsxx=_neg_vbsxx txa eor #$ff clc adc #1 tax - //SEG393 [190] (byte) div8s::neg#2 ? (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 + //SEG393 [190] (byte) div8s::neg#2 ← (byte) div8s::neg#3 ^ (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_bxor_vbuc1 lda neg eor #1 sta neg - //SEG394 [191] (byte~) div8s::divisoru#4 ? (byte)(signed byte~) div8s::$8 + //SEG394 [191] (byte~) div8s::divisoru#4 ← (byte)(signed byte~) div8s::$8 jmp b4 //SEG395 div8s::@1 b1: - //SEG396 [192] (signed byte~) div8s::$5 ? - (signed byte) div8s::dividend#0 -- vbsaa=_neg_vbsyy + //SEG396 [192] (signed byte~) div8s::$5 ← - (signed byte) div8s::dividend#0 -- vbsaa=_neg_vbsyy tya eor #$ff clc adc #1 - //SEG397 [193] (byte~) div8s::dividendu#7 ? (byte)(signed byte~) div8s::$5 -- vbuyy=vbuaa + //SEG397 [193] (byte~) div8s::dividendu#7 ← (byte)(signed byte~) div8s::$5 -- vbuyy=vbuaa tay //SEG398 [173] phi from div8s::@1 to div8s::@2 [phi:div8s::@1->div8s::@2] //SEG399 [173] phi (byte) div8s::dividendu#3 = (byte~) div8s::dividendu#7 [phi:div8s::@1->div8s::@2#0] -- register_copy @@ -10237,17 +10237,17 @@ div8s: { // Implemented using simple binary division // div8u(byte register(A) dividend, byte register(X) divisor) div8u: { - //SEG402 [195] (byte) divr8u::dividend#0 ? (byte) div8u::dividend#2 -- vbuz1=vbuaa + //SEG402 [195] (byte) divr8u::dividend#0 ← (byte) div8u::dividend#2 -- vbuz1=vbuaa sta divr8u.dividend - //SEG403 [196] (byte) divr8u::divisor#0 ? (byte) div8u::divisor#2 -- vbuz1=vbuxx + //SEG403 [196] (byte) divr8u::divisor#0 ← (byte) div8u::divisor#2 -- vbuz1=vbuxx stx divr8u.divisor //SEG404 [197] call divr8u //SEG405 [201] phi from div8u to divr8u [phi:div8u->divr8u] jsr divr8u - //SEG406 [198] (byte) divr8u::return#0 ? (byte) divr8u::return#1 -- vbuaa=vbuz1 + //SEG406 [198] (byte) divr8u::return#0 ← (byte) divr8u::return#1 -- vbuaa=vbuz1 lda divr8u.return //SEG407 div8u::@1 - //SEG408 [199] (byte) div8u::return#0 ? (byte) divr8u::return#0 + //SEG408 [199] (byte) div8u::return#0 ← (byte) divr8u::return#0 //SEG409 div8u::@return //SEG410 [200] return rts @@ -10279,18 +10279,18 @@ divr8u: { //SEG421 [202] phi (byte) divr8u::rem#4 = (byte) divr8u::rem#10 [phi:divr8u::@3->divr8u::@1#3] -- register_copy //SEG422 divr8u::@1 b1: - //SEG423 [203] (byte) divr8u::rem#1 ? (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_rol_1 + //SEG423 [203] (byte) divr8u::rem#1 ← (byte) divr8u::rem#4 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_rol_1 tya asl tay - //SEG424 [204] (byte~) divr8u::$1 ? (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 + //SEG424 [204] (byte~) divr8u::$1 ← (byte) divr8u::dividend#2 & (byte/word/signed word/dword/signed dword) $80 -- vbuaa=vbuz1_band_vbuc1 lda #$80 and dividend //SEG425 [205] if((byte~) divr8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto divr8u::@2 -- vbuaa_eq_0_then_la1 cmp #0 beq b2 //SEG426 divr8u::@4 - //SEG427 [206] (byte) divr8u::rem#2 ? (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bor_vbuc1 + //SEG427 [206] (byte) divr8u::rem#2 ← (byte) divr8u::rem#1 | (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuyy=vbuyy_bor_vbuc1 tya ora #1 tay @@ -10298,17 +10298,17 @@ divr8u: { //SEG429 [207] phi (byte) divr8u::rem#5 = (byte) divr8u::rem#1 [phi:divr8u::@1/divr8u::@4->divr8u::@2#0] -- register_copy //SEG430 divr8u::@2 b2: - //SEG431 [208] (byte) divr8u::dividend#1 ? (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG431 [208] (byte) divr8u::dividend#1 ← (byte) divr8u::dividend#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl dividend - //SEG432 [209] (byte) divr8u::quotient#1 ? (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 + //SEG432 [209] (byte) divr8u::quotient#1 ← (byte) divr8u::quotient#3 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_rol_1 asl quotient //SEG433 [210] if((byte) divr8u::rem#5<(byte) divr8u::divisor#0) goto divr8u::@3 -- vbuyy_lt_vbuz1_then_la1 cpy divisor bcc b3 //SEG434 divr8u::@5 - //SEG435 [211] (byte) divr8u::quotient#2 ? ++ (byte) divr8u::quotient#1 -- vbuz1=_inc_vbuz1 + //SEG435 [211] (byte) divr8u::quotient#2 ← ++ (byte) divr8u::quotient#1 -- vbuz1=_inc_vbuz1 inc quotient - //SEG436 [212] (byte) divr8u::rem#3 ? (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 -- vbuyy=vbuyy_minus_vbuz1 + //SEG436 [212] (byte) divr8u::rem#3 ← (byte) divr8u::rem#5 - (byte) divr8u::divisor#0 -- vbuyy=vbuyy_minus_vbuz1 tya sec sbc divisor @@ -10318,13 +10318,13 @@ divr8u: { //SEG439 [213] phi (byte) divr8u::rem#10 = (byte) divr8u::rem#5 [phi:divr8u::@2/divr8u::@5->divr8u::@3#1] -- register_copy //SEG440 divr8u::@3 b3: - //SEG441 [214] (byte) divr8u::i#1 ? ++ (byte) divr8u::i#2 -- vbuxx=_inc_vbuxx + //SEG441 [214] (byte) divr8u::i#1 ← ++ (byte) divr8u::i#2 -- vbuxx=_inc_vbuxx inx //SEG442 [215] if((byte) divr8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 8) goto divr8u::@1 -- vbuxx_neq_vbuc1_then_la1 cpx #8 bne b1 //SEG443 divr8u::@6 - //SEG444 [216] (byte) rem8u#17 ? (byte) divr8u::rem#10 -- vbuxx=vbuyy + //SEG444 [216] (byte) rem8u#17 ← (byte) divr8u::rem#10 -- vbuxx=vbuyy tya tax //SEG445 divr8u::@return @@ -10345,26 +10345,26 @@ test_16u: { //SEG451 [219] phi (byte) test_16u::i#10 = (byte) test_16u::i#1 [phi:test_16u::@10->test_16u::@1#0] -- register_copy //SEG452 test_16u::@1 b1: - //SEG453 [220] (word) test_16u::dividend#0 ? *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG453 [220] (word) test_16u::dividend#0 ← *((const word[]) test_16u::dividends#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend lda dividends+1,y sta dividend+1 - //SEG454 [221] (word) test_16u::divisor#0 ? *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 + //SEG454 [221] (word) test_16u::divisor#0 ← *((const word[]) test_16u::divisors#0 + (byte) test_16u::i#10) -- vwuz1=pwuc1_derefidx_vbuz2 lda divisors,y sta divisor lda divisors+1,y sta divisor+1 - //SEG455 [222] (word) div16u::dividend#0 ? (word) test_16u::dividend#0 - //SEG456 [223] (word) div16u::divisor#0 ? (word) test_16u::divisor#0 + //SEG455 [222] (word) div16u::dividend#0 ← (word) test_16u::dividend#0 + //SEG456 [223] (word) div16u::divisor#0 ← (word) test_16u::divisor#0 //SEG457 [224] call div16u jsr div16u - //SEG458 [225] (word) div16u::return#2 ? (word) div16u::return#0 + //SEG458 [225] (word) div16u::return#2 ← (word) div16u::return#0 //SEG459 test_16u::@2 - //SEG460 [226] (word) test_16u::res#0 ? (word) div16u::return#2 - //SEG461 [227] (word) print_word::w#1 ? (word) test_16u::dividend#0 - //SEG462 [228] (byte*~) print_char_cursor#166 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG460 [226] (word) test_16u::res#0 ← (word) div16u::return#2 + //SEG461 [227] (word) print_word::w#1 ← (word) test_16u::dividend#0 + //SEG462 [228] (byte*~) print_char_cursor#166 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -10385,7 +10385,7 @@ test_16u: { sta print_str.str+1 jsr print_str //SEG472 test_16u::@4 - //SEG473 [232] (word) print_word::w#2 ? (word) test_16u::divisor#0 -- vwuz1=vwuz2 + //SEG473 [232] (word) print_word::w#2 ← (word) test_16u::divisor#0 -- vwuz1=vwuz2 lda divisor sta print_word.w lda divisor+1 @@ -10406,7 +10406,7 @@ test_16u: { sta print_str.str+1 jsr print_str //SEG483 test_16u::@6 - //SEG484 [236] (word) print_word::w#3 ? (word) test_16u::res#0 -- vwuz1=vwuz2 + //SEG484 [236] (word) print_word::w#3 ← (word) test_16u::res#0 -- vwuz1=vwuz2 lda res sta print_word.w lda res+1 @@ -10427,7 +10427,7 @@ test_16u: { sta print_str.str+1 jsr print_str //SEG494 test_16u::@8 - //SEG495 [240] (word) print_word::w#4 ? (word) rem16u#1 -- vwuz1=vwuz2 + //SEG495 [240] (word) print_word::w#4 ← (word) rem16u#1 -- vwuz1=vwuz2 lda rem16u sta print_word.w lda rem16u+1 @@ -10444,7 +10444,7 @@ test_16u: { //SEG504 [44] phi (byte*) print_line_cursor#39 = (byte*) print_line_cursor#1 [phi:test_16u::@9->print_ln#0] -- register_copy jsr print_ln //SEG505 test_16u::@10 - //SEG506 [244] (byte) test_16u::i#1 ? (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 + //SEG506 [244] (byte) test_16u::i#1 ← (byte) test_16u::i#10 + (byte/signed byte/word/signed word/dword/signed dword) 2 -- vbuz1=vbuz1_plus_2 lda i clc adc #2 @@ -10469,12 +10469,12 @@ div16u: { .label return = $e .label dividend = 5 .label divisor = $c - //SEG511 [247] (word) divr16u::dividend#1 ? (word) div16u::dividend#0 -- vwuz1=vwuz2 + //SEG511 [247] (word) divr16u::dividend#1 ← (word) div16u::dividend#0 -- vwuz1=vwuz2 lda dividend sta divr16u.dividend lda dividend+1 sta divr16u.dividend+1 - //SEG512 [248] (word) divr16u::divisor#0 ? (word) div16u::divisor#0 + //SEG512 [248] (word) divr16u::divisor#0 ← (word) div16u::divisor#0 //SEG513 [249] call divr16u //SEG514 [113] phi from div16u to divr16u [phi:div16u->divr16u] //SEG515 [113] phi (word) divr16u::divisor#6 = (word) divr16u::divisor#0 [phi:div16u->divr16u#0] -- register_copy @@ -10484,9 +10484,9 @@ div16u: { sta divr16u.rem sta divr16u.rem+1 jsr divr16u - //SEG518 [250] (word) divr16u::return#2 ? (word) divr16u::return#0 + //SEG518 [250] (word) divr16u::return#2 ← (word) divr16u::return#0 //SEG519 div16u::@1 - //SEG520 [251] (word) div16u::return#0 ? (word) divr16u::return#2 + //SEG520 [251] (word) div16u::return#0 ← (word) divr16u::return#2 //SEG521 div16u::@return //SEG522 [252] return rts @@ -10513,27 +10513,27 @@ test_8u: { sta i //SEG528 test_8u::@1 b1: - //SEG529 [255] (byte) test_8u::dividend#0 ? *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG529 [255] (byte) test_8u::dividend#0 ← *((const byte[]) test_8u::dividends#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda dividends,y sta dividend - //SEG530 [256] (byte) test_8u::divisor#0 ? *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG530 [256] (byte) test_8u::divisor#0 ← *((const byte[]) test_8u::divisors#0 + (byte) test_8u::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 lda divisors,y sta divisor - //SEG531 [257] (byte) div8u::dividend#1 ? (byte) test_8u::dividend#0 -- vbuaa=vbuz1 + //SEG531 [257] (byte) div8u::dividend#1 ← (byte) test_8u::dividend#0 -- vbuaa=vbuz1 lda dividend - //SEG532 [258] (byte) div8u::divisor#1 ? (byte) test_8u::divisor#0 -- vbuxx=vbuz1 + //SEG532 [258] (byte) div8u::divisor#1 ← (byte) test_8u::divisor#0 -- vbuxx=vbuz1 ldx divisor //SEG533 [259] call div8u //SEG534 [194] phi from test_8u::@1 to div8u [phi:test_8u::@1->div8u] //SEG535 [194] phi (byte) div8u::divisor#2 = (byte) div8u::divisor#1 [phi:test_8u::@1->div8u#0] -- register_copy //SEG536 [194] phi (byte) div8u::dividend#2 = (byte) div8u::dividend#1 [phi:test_8u::@1->div8u#1] -- register_copy jsr div8u - //SEG537 [260] (byte) div8u::return#3 ? (byte) div8u::return#0 + //SEG537 [260] (byte) div8u::return#3 ← (byte) div8u::return#0 //SEG538 test_8u::@2 - //SEG539 [261] (byte) test_8u::res#0 ? (byte) div8u::return#3 -- vbuz1=vbuaa + //SEG539 [261] (byte) test_8u::res#0 ← (byte) div8u::return#3 -- vbuz1=vbuaa sta res - //SEG540 [262] (byte) print_byte::b#3 ? (byte) test_8u::dividend#0 + //SEG540 [262] (byte) print_byte::b#3 ← (byte) test_8u::dividend#0 //SEG541 [263] call print_byte //SEG542 [64] phi from test_8u::@2 to print_byte [phi:test_8u::@2->print_byte] //SEG543 [64] phi (byte*) print_char_cursor#136 = (byte*) print_char_cursor#138 [phi:test_8u::@2->print_byte#0] -- register_copy @@ -10550,7 +10550,7 @@ test_8u: { sta print_str.str+1 jsr print_str //SEG550 test_8u::@4 - //SEG551 [266] (byte) print_byte::b#4 ? (byte) test_8u::divisor#0 -- vbuz1=vbuz2 + //SEG551 [266] (byte) print_byte::b#4 ← (byte) test_8u::divisor#0 -- vbuz1=vbuz2 lda divisor sta print_byte.b //SEG552 [267] call print_byte @@ -10569,7 +10569,7 @@ test_8u: { sta print_str.str+1 jsr print_str //SEG561 test_8u::@6 - //SEG562 [270] (byte) print_byte::b#5 ? (byte) test_8u::res#0 -- vbuz1=vbuz2 + //SEG562 [270] (byte) print_byte::b#5 ← (byte) test_8u::res#0 -- vbuz1=vbuz2 lda res sta print_byte.b //SEG563 [271] call print_byte @@ -10588,7 +10588,7 @@ test_8u: { sta print_str.str+1 jsr print_str //SEG572 test_8u::@8 - //SEG573 [274] (byte) print_byte::b#6 ? (byte) rem8u#17 -- vbuz1=vbuxx + //SEG573 [274] (byte) print_byte::b#6 ← (byte) rem8u#17 -- vbuz1=vbuxx stx print_byte.b //SEG574 [275] call print_byte //SEG575 [64] phi from test_8u::@8 to print_byte [phi:test_8u::@8->print_byte] @@ -10602,7 +10602,7 @@ test_8u: { //SEG582 [44] phi (byte*) print_line_cursor#39 = (byte*) print_line_cursor#41 [phi:test_8u::@9->print_ln#0] -- register_copy jsr print_ln //SEG583 test_8u::@10 - //SEG584 [278] (byte) test_8u::i#1 ? ++ (byte) test_8u::i#10 -- vbuz1=_inc_vbuz1 + //SEG584 [278] (byte) test_8u::i#1 ← ++ (byte) test_8u::i#10 -- vbuz1=_inc_vbuz1 inc i //SEG585 [279] if((byte) test_8u::i#1!=(byte/signed byte/word/signed word/dword/signed dword) 6) goto test_8u::@11 -- vbuz1_neq_vbuc1_then_la1 lda #6 @@ -10613,7 +10613,7 @@ test_8u: { rts //SEG588 test_8u::@11 b11: - //SEG589 [281] (byte*~) print_char_cursor#188 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG589 [281] (byte*~) print_char_cursor#188 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -10640,11 +10640,11 @@ print_cls: { //SEG598 [283] phi (byte*) print_cls::sc#2 = (byte*) print_cls::sc#1 [phi:print_cls::@1->print_cls::@1#0] -- register_copy //SEG599 print_cls::@1 b1: - //SEG600 [284] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG600 [284] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG601 [285] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG601 [285] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 diff --git a/src/test/ref/test-multiply-16bit.log b/src/test/ref/test-multiply-16bit.log index 9b8401a33..621cc25f4 100644 --- a/src/test/ref/test-multiply-16bit.log +++ b/src/test/ref/test-multiply-16bit.log @@ -3,1349 +3,1349 @@ Inlined call call mulf8s_prepare (signed byte) mulf8s::a CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@12 print_str: scope:[print_str] from mul16s_compare::@1 mul16s_compare::@17 mul16s_error mul16s_error::@2 mul16s_error::@4 mul16s_error::@6 mul16s_error::@8 mul16u_compare::@1 mul16u_compare::@17 mul16u_error mul16u_error::@2 mul16u_error::@4 mul16u_error::@6 mul16u_error::@8 - (byte*) print_char_cursor#148 ? phi( mul16s_compare::@1/(byte*) print_char_cursor#143 mul16s_compare::@17/(byte*) print_char_cursor#49 mul16s_error/(byte*) print_char_cursor#146 mul16s_error::@2/(byte*) print_char_cursor#53 mul16s_error::@4/(byte*) print_char_cursor#55 mul16s_error::@6/(byte*) print_char_cursor#57 mul16s_error::@8/(byte*) print_char_cursor#59 mul16u_compare::@1/(byte*) print_char_cursor#139 mul16u_compare::@17/(byte*) print_char_cursor#31 mul16u_error/(byte*) print_char_cursor#142 mul16u_error::@2/(byte*) print_char_cursor#35 mul16u_error::@4/(byte*) print_char_cursor#37 mul16u_error::@6/(byte*) print_char_cursor#39 mul16u_error::@8/(byte*) print_char_cursor#41 ) - (byte*) print_str::str#17 ? phi( mul16s_compare::@1/(byte*) print_str::str#8 mul16s_compare::@17/(byte*) print_str::str#9 mul16s_error/(byte*) print_str::str#10 mul16s_error::@2/(byte*) print_str::str#11 mul16s_error::@4/(byte*) print_str::str#12 mul16s_error::@6/(byte*) print_str::str#13 mul16s_error::@8/(byte*) print_str::str#14 mul16u_compare::@1/(byte*) print_str::str#1 mul16u_compare::@17/(byte*) print_str::str#2 mul16u_error/(byte*) print_str::str#3 mul16u_error::@2/(byte*) print_str::str#4 mul16u_error::@4/(byte*) print_str::str#5 mul16u_error::@6/(byte*) print_str::str#6 mul16u_error::@8/(byte*) print_str::str#7 ) + (byte*) print_char_cursor#148 ← phi( mul16s_compare::@1/(byte*) print_char_cursor#143 mul16s_compare::@17/(byte*) print_char_cursor#49 mul16s_error/(byte*) print_char_cursor#146 mul16s_error::@2/(byte*) print_char_cursor#53 mul16s_error::@4/(byte*) print_char_cursor#55 mul16s_error::@6/(byte*) print_char_cursor#57 mul16s_error::@8/(byte*) print_char_cursor#59 mul16u_compare::@1/(byte*) print_char_cursor#139 mul16u_compare::@17/(byte*) print_char_cursor#31 mul16u_error/(byte*) print_char_cursor#142 mul16u_error::@2/(byte*) print_char_cursor#35 mul16u_error::@4/(byte*) print_char_cursor#37 mul16u_error::@6/(byte*) print_char_cursor#39 mul16u_error::@8/(byte*) print_char_cursor#41 ) + (byte*) print_str::str#17 ← phi( mul16s_compare::@1/(byte*) print_str::str#8 mul16s_compare::@17/(byte*) print_str::str#9 mul16s_error/(byte*) print_str::str#10 mul16s_error::@2/(byte*) print_str::str#11 mul16s_error::@4/(byte*) print_str::str#12 mul16s_error::@6/(byte*) print_str::str#13 mul16s_error::@8/(byte*) print_str::str#14 mul16u_compare::@1/(byte*) print_str::str#1 mul16u_compare::@17/(byte*) print_str::str#2 mul16u_error/(byte*) print_str::str#3 mul16u_error::@2/(byte*) print_str::str#4 mul16u_error::@4/(byte*) print_str::str#5 mul16u_error::@6/(byte*) print_str::str#6 mul16u_error::@8/(byte*) print_str::str#7 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#128 ? phi( print_str/(byte*) print_char_cursor#148 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#15 ? phi( print_str/(byte*) print_str::str#17 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#15) != (byte) '@' + (byte*) print_char_cursor#128 ← phi( print_str/(byte*) print_char_cursor#148 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#15 ← phi( print_str/(byte*) print_str::str#17 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#15) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#65 ? phi( print_str::@1/(byte*) print_char_cursor#128 ) - (byte*) print_str::str#16 ? phi( print_str::@1/(byte*) print_str::str#15 ) - *((byte*) print_char_cursor#65) ? *((byte*) print_str::str#16) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#65 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#16 + (byte*) print_char_cursor#65 ← phi( print_str::@1/(byte*) print_char_cursor#128 ) + (byte*) print_str::str#16 ← phi( print_str::@1/(byte*) print_str::str#15 ) + *((byte*) print_char_cursor#65) ← *((byte*) print_str::str#16) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#65 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#16 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#66 ? phi( print_str::@1/(byte*) print_char_cursor#128 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#66 + (byte*) print_char_cursor#66 ← phi( print_str::@1/(byte*) print_char_cursor#128 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#66 return to:@return print_ln: scope:[print_ln] from mul16s_compare::@11 mul16s_compare::@18 mul16s_error::@10 mul16u_compare::@11 mul16u_compare::@18 mul16u_error::@10 - (byte*) print_char_cursor#129 ? phi( mul16s_compare::@11/(byte*) print_char_cursor#145 mul16s_compare::@18/(byte*) print_char_cursor#50 mul16s_error::@10/(byte*) print_char_cursor#61 mul16u_compare::@11/(byte*) print_char_cursor#141 mul16u_compare::@18/(byte*) print_char_cursor#32 mul16u_error::@10/(byte*) print_char_cursor#43 ) - (byte*) print_line_cursor#43 ? phi( mul16s_compare::@11/(byte*) print_line_cursor#51 mul16s_compare::@18/(byte*) print_line_cursor#52 mul16s_error::@10/(byte*) print_line_cursor#53 mul16u_compare::@11/(byte*) print_line_cursor#47 mul16u_compare::@18/(byte*) print_line_cursor#48 mul16u_error::@10/(byte*) print_line_cursor#49 ) + (byte*) print_char_cursor#129 ← phi( mul16s_compare::@11/(byte*) print_char_cursor#145 mul16s_compare::@18/(byte*) print_char_cursor#50 mul16s_error::@10/(byte*) print_char_cursor#61 mul16u_compare::@11/(byte*) print_char_cursor#141 mul16u_compare::@18/(byte*) print_char_cursor#32 mul16u_error::@10/(byte*) print_char_cursor#43 ) + (byte*) print_line_cursor#43 ← phi( mul16s_compare::@11/(byte*) print_line_cursor#51 mul16s_compare::@18/(byte*) print_line_cursor#52 mul16s_error::@10/(byte*) print_line_cursor#53 mul16u_compare::@11/(byte*) print_line_cursor#47 mul16u_compare::@18/(byte*) print_line_cursor#48 mul16u_error::@10/(byte*) print_line_cursor#49 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) print_char_cursor#67 ? phi( print_ln/(byte*) print_char_cursor#129 print_ln::@1/(byte*) print_char_cursor#67 ) - (byte*) print_line_cursor#22 ? phi( print_ln/(byte*) print_line_cursor#43 print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*~) print_ln::$0 ? (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) print_line_cursor#1 ? (byte*~) print_ln::$0 - (bool~) print_ln::$1 ? (byte*) print_line_cursor#1 < (byte*) print_char_cursor#67 + (byte*) print_char_cursor#67 ← phi( print_ln/(byte*) print_char_cursor#129 print_ln::@1/(byte*) print_char_cursor#67 ) + (byte*) print_line_cursor#22 ← phi( print_ln/(byte*) print_line_cursor#43 print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*~) print_ln::$0 ← (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) print_line_cursor#1 ← (byte*~) print_ln::$0 + (bool~) print_ln::$1 ← (byte*) print_line_cursor#1 < (byte*) print_char_cursor#67 if((bool~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) print_line_cursor#23 ? phi( print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*) print_char_cursor#3 ? (byte*) print_line_cursor#23 + (byte*) print_line_cursor#23 ← phi( print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*) print_char_cursor#3 ← (byte*) print_line_cursor#23 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) print_char_cursor#68 ? phi( print_ln::@2/(byte*) print_char_cursor#3 ) - (byte*) print_line_cursor#24 ? phi( print_ln::@2/(byte*) print_line_cursor#23 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#24 - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#68 + (byte*) print_char_cursor#68 ← phi( print_ln::@2/(byte*) print_char_cursor#3 ) + (byte*) print_line_cursor#24 ← phi( print_ln::@2/(byte*) print_line_cursor#23 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#24 + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#68 return to:@return print_sword: scope:[print_sword] from mul16s_error::@1 mul16s_error::@3 - (byte*) print_char_cursor#149 ? phi( mul16s_error::@1/(byte*) print_char_cursor#52 mul16s_error::@3/(byte*) print_char_cursor#54 ) - (signed word) print_sword::w#3 ? phi( mul16s_error::@1/(signed word) print_sword::w#1 mul16s_error::@3/(signed word) print_sword::w#2 ) - (bool~) print_sword::$0 ? (signed word) print_sword::w#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) print_sword::$1 ? ! (bool~) print_sword::$0 + (byte*) print_char_cursor#149 ← phi( mul16s_error::@1/(byte*) print_char_cursor#52 mul16s_error::@3/(byte*) print_char_cursor#54 ) + (signed word) print_sword::w#3 ← phi( mul16s_error::@1/(signed word) print_sword::w#1 mul16s_error::@3/(signed word) print_sword::w#2 ) + (bool~) print_sword::$0 ← (signed word) print_sword::w#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) print_sword::$1 ← ! (bool~) print_sword::$0 if((bool~) print_sword::$1) goto print_sword::@1 to:print_sword::@2 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - (byte*) print_char_cursor#130 ? phi( print_sword/(byte*) print_char_cursor#149 print_sword::@4/(byte*) print_char_cursor#6 ) - (signed word) print_sword::w#4 ? phi( print_sword/(signed word) print_sword::w#3 print_sword::@4/(signed word) print_sword::w#0 ) - (word~) print_sword::$2 ? ((word)) (signed word) print_sword::w#4 - (word) print_word::w#0 ? (word~) print_sword::$2 + (byte*) print_char_cursor#130 ← phi( print_sword/(byte*) print_char_cursor#149 print_sword::@4/(byte*) print_char_cursor#6 ) + (signed word) print_sword::w#4 ← phi( print_sword/(signed word) print_sword::w#3 print_sword::@4/(signed word) print_sword::w#0 ) + (word~) print_sword::$2 ← ((word)) (signed word) print_sword::w#4 + (word) print_word::w#0 ← (word~) print_sword::$2 call print_word to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@1 - (byte*) print_char_cursor#69 ? phi( print_sword::@1/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#69 + (byte*) print_char_cursor#69 ← phi( print_sword::@1/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#69 to:print_sword::@return print_sword::@2: scope:[print_sword] from print_sword - (signed word) print_sword::w#6 ? phi( print_sword/(signed word) print_sword::w#3 ) - (byte*) print_char_cursor#131 ? phi( print_sword/(byte*) print_char_cursor#149 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed word) print_sword::w#6 ← phi( print_sword/(signed word) print_sword::w#3 ) + (byte*) print_char_cursor#131 ← phi( print_sword/(byte*) print_char_cursor#149 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - (signed word) print_sword::w#5 ? phi( print_sword::@2/(signed word) print_sword::w#6 ) - (byte*) print_char_cursor#70 ? phi( print_sword::@2/(byte*) print_char_cursor#21 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#70 - (signed word~) print_sword::$5 ? - (signed word) print_sword::w#5 - (signed word) print_sword::w#0 ? (signed word~) print_sword::$5 + (signed word) print_sword::w#5 ← phi( print_sword::@2/(signed word) print_sword::w#6 ) + (byte*) print_char_cursor#70 ← phi( print_sword::@2/(byte*) print_char_cursor#21 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#70 + (signed word~) print_sword::$5 ← - (signed word) print_sword::w#5 + (signed word) print_sword::w#0 ← (signed word~) print_sword::$5 to:print_sword::@1 print_sword::@return: scope:[print_sword] from print_sword::@3 - (byte*) print_char_cursor#71 ? phi( print_sword::@3/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#71 + (byte*) print_char_cursor#71 ← phi( print_sword::@3/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#71 return to:@return print_word: scope:[print_word] from mul16u_error::@1 mul16u_error::@3 print_dword print_dword::@1 print_sword::@1 - (byte*) print_char_cursor#132 ? phi( mul16u_error::@1/(byte*) print_char_cursor#34 mul16u_error::@3/(byte*) print_char_cursor#36 print_dword/(byte*) print_char_cursor#133 print_dword::@1/(byte*) print_char_cursor#11 print_sword::@1/(byte*) print_char_cursor#130 ) - (word) print_word::w#5 ? phi( mul16u_error::@1/(word) print_word::w#3 mul16u_error::@3/(word) print_word::w#4 print_dword/(word) print_word::w#1 print_dword::@1/(word) print_word::w#2 print_sword::@1/(word) print_word::w#0 ) - (byte~) print_word::$0 ? > (word) print_word::w#5 - (byte) print_byte::b#0 ? (byte~) print_word::$0 + (byte*) print_char_cursor#132 ← phi( mul16u_error::@1/(byte*) print_char_cursor#34 mul16u_error::@3/(byte*) print_char_cursor#36 print_dword/(byte*) print_char_cursor#133 print_dword::@1/(byte*) print_char_cursor#11 print_sword::@1/(byte*) print_char_cursor#130 ) + (word) print_word::w#5 ← phi( mul16u_error::@1/(word) print_word::w#3 mul16u_error::@3/(word) print_word::w#4 print_dword/(word) print_word::w#1 print_dword::@1/(word) print_word::w#2 print_sword::@1/(word) print_word::w#0 ) + (byte~) print_word::$0 ← > (word) print_word::w#5 + (byte) print_byte::b#0 ← (byte~) print_word::$0 call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - (word) print_word::w#6 ? phi( print_word/(word) print_word::w#5 ) - (byte*) print_char_cursor#72 ? phi( print_word/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#72 - (byte~) print_word::$2 ? < (word) print_word::w#6 - (byte) print_byte::b#1 ? (byte~) print_word::$2 + (word) print_word::w#6 ← phi( print_word/(word) print_word::w#5 ) + (byte*) print_char_cursor#72 ← phi( print_word/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#72 + (byte~) print_word::$2 ← < (word) print_word::w#6 + (byte) print_byte::b#1 ← (byte~) print_word::$2 call print_byte to:print_word::@2 print_word::@2: scope:[print_word] from print_word::@1 - (byte*) print_char_cursor#73 ? phi( print_word::@1/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#73 + (byte*) print_char_cursor#73 ← phi( print_word::@1/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#73 to:print_word::@return print_word::@return: scope:[print_word] from print_word::@2 - (byte*) print_char_cursor#74 ? phi( print_word::@2/(byte*) print_char_cursor#9 ) - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#74 + (byte*) print_char_cursor#74 ← phi( print_word::@2/(byte*) print_char_cursor#9 ) + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#74 return to:@return print_dword: scope:[print_dword] from mul16u_error::@5 mul16u_error::@7 mul16u_error::@9 print_sdword::@1 - (byte*) print_char_cursor#133 ? phi( mul16u_error::@5/(byte*) print_char_cursor#38 mul16u_error::@7/(byte*) print_char_cursor#40 mul16u_error::@9/(byte*) print_char_cursor#42 print_sdword::@1/(byte*) print_char_cursor#134 ) - (dword) print_dword::dw#4 ? phi( mul16u_error::@5/(dword) print_dword::dw#1 mul16u_error::@7/(dword) print_dword::dw#2 mul16u_error::@9/(dword) print_dword::dw#3 print_sdword::@1/(dword) print_dword::dw#0 ) - (word~) print_dword::$0 ? > (dword) print_dword::dw#4 - (word) print_word::w#1 ? (word~) print_dword::$0 + (byte*) print_char_cursor#133 ← phi( mul16u_error::@5/(byte*) print_char_cursor#38 mul16u_error::@7/(byte*) print_char_cursor#40 mul16u_error::@9/(byte*) print_char_cursor#42 print_sdword::@1/(byte*) print_char_cursor#134 ) + (dword) print_dword::dw#4 ← phi( mul16u_error::@5/(dword) print_dword::dw#1 mul16u_error::@7/(dword) print_dword::dw#2 mul16u_error::@9/(dword) print_dword::dw#3 print_sdword::@1/(dword) print_dword::dw#0 ) + (word~) print_dword::$0 ← > (dword) print_dword::dw#4 + (word) print_word::w#1 ← (word~) print_dword::$0 call print_word to:print_dword::@1 print_dword::@1: scope:[print_dword] from print_dword - (dword) print_dword::dw#5 ? phi( print_dword/(dword) print_dword::dw#4 ) - (byte*) print_char_cursor#75 ? phi( print_dword/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#75 - (word~) print_dword::$2 ? < (dword) print_dword::dw#5 - (word) print_word::w#2 ? (word~) print_dword::$2 + (dword) print_dword::dw#5 ← phi( print_dword/(dword) print_dword::dw#4 ) + (byte*) print_char_cursor#75 ← phi( print_dword/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#75 + (word~) print_dword::$2 ← < (dword) print_dword::dw#5 + (word) print_word::w#2 ← (word~) print_dword::$2 call print_word to:print_dword::@2 print_dword::@2: scope:[print_dword] from print_dword::@1 - (byte*) print_char_cursor#76 ? phi( print_dword::@1/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#12 ? (byte*) print_char_cursor#76 + (byte*) print_char_cursor#76 ← phi( print_dword::@1/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#76 to:print_dword::@return print_dword::@return: scope:[print_dword] from print_dword::@2 - (byte*) print_char_cursor#77 ? phi( print_dword::@2/(byte*) print_char_cursor#12 ) - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#77 + (byte*) print_char_cursor#77 ← phi( print_dword::@2/(byte*) print_char_cursor#12 ) + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#77 return to:@return print_sdword: scope:[print_sdword] from mul16s_error::@5 mul16s_error::@7 mul16s_error::@9 - (byte*) print_char_cursor#150 ? phi( mul16s_error::@5/(byte*) print_char_cursor#56 mul16s_error::@7/(byte*) print_char_cursor#58 mul16s_error::@9/(byte*) print_char_cursor#60 ) - (signed dword) print_sdword::dw#4 ? phi( mul16s_error::@5/(signed dword) print_sdword::dw#1 mul16s_error::@7/(signed dword) print_sdword::dw#2 mul16s_error::@9/(signed dword) print_sdword::dw#3 ) - (bool~) print_sdword::$0 ? (signed dword) print_sdword::dw#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) print_sdword::$1 ? ! (bool~) print_sdword::$0 + (byte*) print_char_cursor#150 ← phi( mul16s_error::@5/(byte*) print_char_cursor#56 mul16s_error::@7/(byte*) print_char_cursor#58 mul16s_error::@9/(byte*) print_char_cursor#60 ) + (signed dword) print_sdword::dw#4 ← phi( mul16s_error::@5/(signed dword) print_sdword::dw#1 mul16s_error::@7/(signed dword) print_sdword::dw#2 mul16s_error::@9/(signed dword) print_sdword::dw#3 ) + (bool~) print_sdword::$0 ← (signed dword) print_sdword::dw#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) print_sdword::$1 ← ! (bool~) print_sdword::$0 if((bool~) print_sdword::$1) goto print_sdword::@1 to:print_sdword::@2 print_sdword::@1: scope:[print_sdword] from print_sdword print_sdword::@4 - (byte*) print_char_cursor#134 ? phi( print_sdword/(byte*) print_char_cursor#150 print_sdword::@4/(byte*) print_char_cursor#15 ) - (signed dword) print_sdword::dw#5 ? phi( print_sdword/(signed dword) print_sdword::dw#4 print_sdword::@4/(signed dword) print_sdword::dw#0 ) - (dword~) print_sdword::$2 ? ((dword)) (signed dword) print_sdword::dw#5 - (dword) print_dword::dw#0 ? (dword~) print_sdword::$2 + (byte*) print_char_cursor#134 ← phi( print_sdword/(byte*) print_char_cursor#150 print_sdword::@4/(byte*) print_char_cursor#15 ) + (signed dword) print_sdword::dw#5 ← phi( print_sdword/(signed dword) print_sdword::dw#4 print_sdword::@4/(signed dword) print_sdword::dw#0 ) + (dword~) print_sdword::$2 ← ((dword)) (signed dword) print_sdword::dw#5 + (dword) print_dword::dw#0 ← (dword~) print_sdword::$2 call print_dword to:print_sdword::@3 print_sdword::@3: scope:[print_sdword] from print_sdword::@1 - (byte*) print_char_cursor#78 ? phi( print_sdword::@1/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#78 + (byte*) print_char_cursor#78 ← phi( print_sdword::@1/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#78 to:print_sdword::@return print_sdword::@2: scope:[print_sdword] from print_sdword - (signed dword) print_sdword::dw#7 ? phi( print_sdword/(signed dword) print_sdword::dw#4 ) - (byte*) print_char_cursor#135 ? phi( print_sdword/(byte*) print_char_cursor#150 ) - (byte) print_char::ch#1 ? (byte) '-' + (signed dword) print_sdword::dw#7 ← phi( print_sdword/(signed dword) print_sdword::dw#4 ) + (byte*) print_char_cursor#135 ← phi( print_sdword/(byte*) print_char_cursor#150 ) + (byte) print_char::ch#1 ← (byte) '-' call print_char to:print_sdword::@4 print_sdword::@4: scope:[print_sdword] from print_sdword::@2 - (signed dword) print_sdword::dw#6 ? phi( print_sdword::@2/(signed dword) print_sdword::dw#7 ) - (byte*) print_char_cursor#79 ? phi( print_sdword::@2/(byte*) print_char_cursor#21 ) - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#79 - (signed dword~) print_sdword::$5 ? - (signed dword) print_sdword::dw#6 - (signed dword) print_sdword::dw#0 ? (signed dword~) print_sdword::$5 + (signed dword) print_sdword::dw#6 ← phi( print_sdword::@2/(signed dword) print_sdword::dw#7 ) + (byte*) print_char_cursor#79 ← phi( print_sdword::@2/(byte*) print_char_cursor#21 ) + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#79 + (signed dword~) print_sdword::$5 ← - (signed dword) print_sdword::dw#6 + (signed dword) print_sdword::dw#0 ← (signed dword~) print_sdword::$5 to:print_sdword::@1 print_sdword::@return: scope:[print_sdword] from print_sdword::@3 - (byte*) print_char_cursor#80 ? phi( print_sdword::@3/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#80 + (byte*) print_char_cursor#80 ← phi( print_sdword::@3/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#80 return to:@return @12: scope:[] from @begin - (byte*) print_screen#8 ? phi( @begin/(byte*) print_screen#0 ) - (byte*) print_char_cursor#165 ? phi( @begin/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#71 ? phi( @begin/(byte*) print_line_cursor#0 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#8 ← phi( @begin/(byte*) print_screen#0 ) + (byte*) print_char_cursor#165 ← phi( @begin/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#71 ← phi( @begin/(byte*) print_line_cursor#0 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@24 print_byte: scope:[print_byte] from print_word print_word::@1 - (byte*) print_char_cursor#136 ? phi( print_word/(byte*) print_char_cursor#132 print_word::@1/(byte*) print_char_cursor#8 ) - (byte) print_byte::b#2 ? phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#2 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#136 ← phi( print_word/(byte*) print_char_cursor#132 print_word::@1/(byte*) print_char_cursor#8 ) + (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#2 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#3 ? phi( print_byte/(byte) print_byte::b#2 ) - (byte*) print_char_cursor#81 ? phi( print_byte/(byte*) print_char_cursor#21 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#81 - (byte~) print_byte::$2 ? (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#3 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#3 ← phi( print_byte/(byte) print_byte::b#2 ) + (byte*) print_char_cursor#81 ← phi( print_byte/(byte*) print_char_cursor#21 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#81 + (byte~) print_byte::$2 ← (byte) print_byte::b#3 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#3 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#82 ? phi( print_byte::@1/(byte*) print_char_cursor#21 ) - (byte*) print_char_cursor#18 ? (byte*) print_char_cursor#82 + (byte*) print_char_cursor#82 ← phi( print_byte::@1/(byte*) print_char_cursor#21 ) + (byte*) print_char_cursor#18 ← (byte*) print_char_cursor#82 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#83 ? phi( print_byte::@2/(byte*) print_char_cursor#18 ) - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#83 + (byte*) print_char_cursor#83 ← phi( print_byte::@2/(byte*) print_char_cursor#18 ) + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#83 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sdword::@2 print_sword::@2 - (byte*) print_char_cursor#84 ? phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#17 print_sdword::@2/(byte*) print_char_cursor#135 print_sword::@2/(byte*) print_char_cursor#131 ) - (byte) print_char::ch#4 ? phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sdword::@2/(byte) print_char::ch#1 print_sword::@2/(byte) print_char::ch#0 ) - *((byte*) print_char_cursor#84) ? (byte) print_char::ch#4 - (byte*) print_char_cursor#20 ? ++ (byte*) print_char_cursor#84 + (byte*) print_char_cursor#84 ← phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#17 print_sdword::@2/(byte*) print_char_cursor#135 print_sword::@2/(byte*) print_char_cursor#131 ) + (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sdword::@2/(byte) print_char::ch#1 print_sword::@2/(byte) print_char::ch#0 ) + *((byte*) print_char_cursor#84) ← (byte) print_char::ch#4 + (byte*) print_char_cursor#20 ← ++ (byte*) print_char_cursor#84 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#85 ? phi( print_char/(byte*) print_char_cursor#20 ) - (byte*) print_char_cursor#21 ? (byte*) print_char_cursor#85 + (byte*) print_char_cursor#85 ← phi( print_char/(byte*) print_char_cursor#20 ) + (byte*) print_char_cursor#21 ← (byte*) print_char_cursor#85 return to:@return print_cls: scope:[print_cls] from main - (byte*) print_screen#1 ? phi( main/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_screen#3 - (byte*) print_char_cursor#22 ? (byte*) print_line_cursor#3 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_screen#3 + (byte*) print_char_cursor#22 ← (byte*) print_line_cursor#3 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#86 ? phi( print_cls::@2/(byte*) print_char_cursor#22 ) - (byte*) print_line_cursor#25 ? phi( print_cls::@2/(byte*) print_line_cursor#3 ) - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#25 - (byte*) print_char_cursor#23 ? (byte*) print_char_cursor#86 + (byte*) print_char_cursor#86 ← phi( print_cls::@2/(byte*) print_char_cursor#22 ) + (byte*) print_line_cursor#25 ← phi( print_cls::@2/(byte*) print_line_cursor#3 ) + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#25 + (byte*) print_char_cursor#23 ← (byte*) print_char_cursor#86 return to:@return mul16u: scope:[mul16u] from mul16s mul16u_compare::@13 - (word) mul16u::a#6 ? phi( mul16s/(word) mul16u::a#1 mul16u_compare::@13/(word) mul16u::a#2 ) - (word) mul16u::b#2 ? phi( mul16s/(word) mul16u::b#0 mul16u_compare::@13/(word) mul16u::b#1 ) - (dword) mul16u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 + (word) mul16u::a#6 ← phi( mul16s/(word) mul16u::a#1 mul16u_compare::@13/(word) mul16u::a#2 ) + (word) mul16u::b#2 ← phi( mul16s/(word) mul16u::b#0 mul16u_compare::@13/(word) mul16u::b#1 ) + (dword) mul16u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@4 - (dword) mul16u::mb#5 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) - (dword) mul16u::res#4 ? phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) - (word) mul16u::a#3 ? phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) - (bool~) mul16u::$0 ? (word) mul16u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (dword) mul16u::mb#5 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@4/(dword) mul16u::mb#1 ) + (dword) mul16u::res#4 ← phi( mul16u/(dword) mul16u::res#0 mul16u::@4/(dword) mul16u::res#6 ) + (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@4/(word) mul16u::a#0 ) + (bool~) mul16u::$0 ← (word) mul16u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul16u::$0) goto mul16u::@2 to:mul16u::@3 mul16u::@2: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#5 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::mb#4 ? phi( mul16u::@1/(dword) mul16u::mb#5 ) - (word) mul16u::a#4 ? phi( mul16u::@1/(word) mul16u::a#3 ) - (byte/word~) mul16u::$1 ? (word) mul16u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16u::$3 ? ! (bool~) mul16u::$2 + (dword) mul16u::res#5 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::mb#4 ← phi( mul16u::@1/(dword) mul16u::mb#5 ) + (word) mul16u::a#4 ← phi( mul16u::@1/(word) mul16u::a#3 ) + (byte/word~) mul16u::$1 ← (word) mul16u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16u::$3 ← ! (bool~) mul16u::$2 if((bool~) mul16u::$3) goto mul16u::@4 to:mul16u::@7 mul16u::@3: scope:[mul16u] from mul16u::@1 - (dword) mul16u::res#2 ? phi( mul16u::@1/(dword) mul16u::res#4 ) - (dword) mul16u::return#0 ? (dword) mul16u::res#2 + (dword) mul16u::res#2 ← phi( mul16u::@1/(dword) mul16u::res#4 ) + (dword) mul16u::return#0 ← (dword) mul16u::res#2 to:mul16u::@return mul16u::@4: scope:[mul16u] from mul16u::@2 mul16u::@7 - (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) - (dword) mul16u::mb#2 ? phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) - (word) mul16u::a#5 ? phi( mul16u::@2/(word) mul16u::a#4 mul16u::@7/(word) mul16u::a#7 ) - (word~) mul16u::$5 ? (word) mul16u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul16u::a#0 ? (word~) mul16u::$5 - (dword~) mul16u::$6 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (dword) mul16u::mb#1 ? (dword~) mul16u::$6 + (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#5 mul16u::@7/(dword) mul16u::res#1 ) + (dword) mul16u::mb#2 ← phi( mul16u::@2/(dword) mul16u::mb#4 mul16u::@7/(dword) mul16u::mb#3 ) + (word) mul16u::a#5 ← phi( mul16u::@2/(word) mul16u::a#4 mul16u::@7/(word) mul16u::a#7 ) + (word~) mul16u::$5 ← (word) mul16u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul16u::a#0 ← (word~) mul16u::$5 + (dword~) mul16u::$6 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (dword) mul16u::mb#1 ← (dword~) mul16u::$6 to:mul16u::@1 mul16u::@7: scope:[mul16u] from mul16u::@2 - (word) mul16u::a#7 ? phi( mul16u::@2/(word) mul16u::a#4 ) - (dword) mul16u::mb#3 ? phi( mul16u::@2/(dword) mul16u::mb#4 ) - (dword) mul16u::res#3 ? phi( mul16u::@2/(dword) mul16u::res#5 ) - (dword~) mul16u::$4 ? (dword) mul16u::res#3 + (dword) mul16u::mb#3 - (dword) mul16u::res#1 ? (dword~) mul16u::$4 + (word) mul16u::a#7 ← phi( mul16u::@2/(word) mul16u::a#4 ) + (dword) mul16u::mb#3 ← phi( mul16u::@2/(dword) mul16u::mb#4 ) + (dword) mul16u::res#3 ← phi( mul16u::@2/(dword) mul16u::res#5 ) + (dword~) mul16u::$4 ← (dword) mul16u::res#3 + (dword) mul16u::mb#3 + (dword) mul16u::res#1 ← (dword~) mul16u::$4 to:mul16u::@4 mul16u::@return: scope:[mul16u] from mul16u::@3 - (dword) mul16u::return#4 ? phi( mul16u::@3/(dword) mul16u::return#0 ) - (dword) mul16u::return#1 ? (dword) mul16u::return#4 + (dword) mul16u::return#4 ← phi( mul16u::@3/(dword) mul16u::return#0 ) + (dword) mul16u::return#1 ← (dword) mul16u::return#4 return to:@return mul16s: scope:[mul16s] from mul16s_compare::@13 - (signed word) mul16s::b#1 ? phi( mul16s_compare::@13/(signed word) mul16s::b#0 ) - (signed word) mul16s::a#1 ? phi( mul16s_compare::@13/(signed word) mul16s::a#0 ) - (word~) mul16s::$0 ? ((word)) (signed word) mul16s::a#1 - (word~) mul16s::$1 ? ((word)) (signed word) mul16s::b#1 - (word) mul16u::a#1 ? (word~) mul16s::$0 - (word) mul16u::b#0 ? (word~) mul16s::$1 + (signed word) mul16s::b#1 ← phi( mul16s_compare::@13/(signed word) mul16s::b#0 ) + (signed word) mul16s::a#1 ← phi( mul16s_compare::@13/(signed word) mul16s::a#0 ) + (word~) mul16s::$0 ← ((word)) (signed word) mul16s::a#1 + (word~) mul16s::$1 ← ((word)) (signed word) mul16s::b#1 + (word) mul16u::a#1 ← (word~) mul16s::$0 + (word) mul16u::b#0 ← (word~) mul16s::$1 call mul16u - (dword) mul16u::return#2 ? (dword) mul16u::return#1 + (dword) mul16u::return#2 ← (dword) mul16u::return#1 to:mul16s::@6 mul16s::@6: scope:[mul16s] from mul16s - (signed word) mul16s::b#4 ? phi( mul16s/(signed word) mul16s::b#1 ) - (signed word) mul16s::a#2 ? phi( mul16s/(signed word) mul16s::a#1 ) - (dword) mul16u::return#5 ? phi( mul16s/(dword) mul16u::return#2 ) - (dword~) mul16s::$2 ? (dword) mul16u::return#5 - (dword) mul16s::m#0 ? (dword~) mul16s::$2 - (bool~) mul16s::$3 ? (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16s::$4 ? ! (bool~) mul16s::$3 + (signed word) mul16s::b#4 ← phi( mul16s/(signed word) mul16s::b#1 ) + (signed word) mul16s::a#2 ← phi( mul16s/(signed word) mul16s::a#1 ) + (dword) mul16u::return#5 ← phi( mul16s/(dword) mul16u::return#2 ) + (dword~) mul16s::$2 ← (dword) mul16u::return#5 + (dword) mul16s::m#0 ← (dword~) mul16s::$2 + (bool~) mul16s::$3 ← (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16s::$4 ← ! (bool~) mul16s::$3 if((bool~) mul16s::$4) goto mul16s::@1 to:mul16s::@3 mul16s::@1: scope:[mul16s] from mul16s::@3 mul16s::@6 - (signed word) mul16s::a#4 ? phi( mul16s::@3/(signed word) mul16s::a#5 mul16s::@6/(signed word) mul16s::a#2 ) - (dword) mul16s::m#6 ? phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) - (signed word) mul16s::b#2 ? phi( mul16s::@3/(signed word) mul16s::b#3 mul16s::@6/(signed word) mul16s::b#4 ) - (bool~) mul16s::$5 ? (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16s::$6 ? ! (bool~) mul16s::$5 + (signed word) mul16s::a#4 ← phi( mul16s::@3/(signed word) mul16s::a#5 mul16s::@6/(signed word) mul16s::a#2 ) + (dword) mul16s::m#6 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@6/(dword) mul16s::m#0 ) + (signed word) mul16s::b#2 ← phi( mul16s::@3/(signed word) mul16s::b#3 mul16s::@6/(signed word) mul16s::b#4 ) + (bool~) mul16s::$5 ← (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16s::$6 ← ! (bool~) mul16s::$5 if((bool~) mul16s::$6) goto mul16s::@2 to:mul16s::@4 mul16s::@3: scope:[mul16s] from mul16s::@6 - (signed word) mul16s::a#5 ? phi( mul16s::@6/(signed word) mul16s::a#2 ) - (signed word) mul16s::b#3 ? phi( mul16s::@6/(signed word) mul16s::b#4 ) - (dword) mul16s::m#3 ? phi( mul16s::@6/(dword) mul16s::m#0 ) - (word~) mul16s::$9 ? > (dword) mul16s::m#3 - (word~) mul16s::$10 ? ((word)) (signed word) mul16s::b#3 - (word~) mul16s::$11 ? (word~) mul16s::$9 - (word~) mul16s::$10 - (word~) mul16s::$16 ? (word~) mul16s::$11 - (dword) mul16s::m#1 ? (dword) mul16s::m#3 hi= (word~) mul16s::$16 + (signed word) mul16s::a#5 ← phi( mul16s::@6/(signed word) mul16s::a#2 ) + (signed word) mul16s::b#3 ← phi( mul16s::@6/(signed word) mul16s::b#4 ) + (dword) mul16s::m#3 ← phi( mul16s::@6/(dword) mul16s::m#0 ) + (word~) mul16s::$9 ← > (dword) mul16s::m#3 + (word~) mul16s::$10 ← ((word)) (signed word) mul16s::b#3 + (word~) mul16s::$11 ← (word~) mul16s::$9 - (word~) mul16s::$10 + (word~) mul16s::$16 ← (word~) mul16s::$11 + (dword) mul16s::m#1 ← (dword) mul16s::m#3 hi= (word~) mul16s::$16 to:mul16s::@1 mul16s::@2: scope:[mul16s] from mul16s::@1 mul16s::@4 - (dword) mul16s::m#4 ? phi( mul16s::@1/(dword) mul16s::m#6 mul16s::@4/(dword) mul16s::m#2 ) - (signed dword~) mul16s::$7 ? ((signed dword)) (dword) mul16s::m#4 - (signed dword) mul16s::return#0 ? (signed dword~) mul16s::$7 + (dword) mul16s::m#4 ← phi( mul16s::@1/(dword) mul16s::m#6 mul16s::@4/(dword) mul16s::m#2 ) + (signed dword~) mul16s::$7 ← ((signed dword)) (dword) mul16s::m#4 + (signed dword) mul16s::return#0 ← (signed dword~) mul16s::$7 to:mul16s::@return mul16s::@4: scope:[mul16s] from mul16s::@1 - (signed word) mul16s::a#3 ? phi( mul16s::@1/(signed word) mul16s::a#4 ) - (dword) mul16s::m#5 ? phi( mul16s::@1/(dword) mul16s::m#6 ) - (word~) mul16s::$13 ? > (dword) mul16s::m#5 - (word~) mul16s::$14 ? ((word)) (signed word) mul16s::a#3 - (word~) mul16s::$15 ? (word~) mul16s::$13 - (word~) mul16s::$14 - (word~) mul16s::$17 ? (word~) mul16s::$15 - (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 + (signed word) mul16s::a#3 ← phi( mul16s::@1/(signed word) mul16s::a#4 ) + (dword) mul16s::m#5 ← phi( mul16s::@1/(dword) mul16s::m#6 ) + (word~) mul16s::$13 ← > (dword) mul16s::m#5 + (word~) mul16s::$14 ← ((word)) (signed word) mul16s::a#3 + (word~) mul16s::$15 ← (word~) mul16s::$13 - (word~) mul16s::$14 + (word~) mul16s::$17 ← (word~) mul16s::$15 + (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 to:mul16s::@2 mul16s::@return: scope:[mul16s] from mul16s::@2 - (signed dword) mul16s::return#3 ? phi( mul16s::@2/(signed dword) mul16s::return#0 ) - (signed dword) mul16s::return#1 ? (signed dword) mul16s::return#3 + (signed dword) mul16s::return#3 ← phi( mul16s::@2/(signed dword) mul16s::return#0 ) + (signed dword) mul16s::return#1 ← (signed dword) mul16s::return#3 return to:@return @24: scope:[] from @12 - (byte*) print_screen#7 ? phi( @12/(byte*) print_screen#8 ) - (byte*) print_char_cursor#158 ? phi( @12/(byte*) print_char_cursor#165 ) - (byte*) print_line_cursor#62 ? phi( @12/(byte*) print_line_cursor#71 ) - (byte[$200]) mulf_sqr1_lo#0 ? { fill( $200, 0) } - (byte[$200]) mulf_sqr1_hi#0 ? { fill( $200, 0) } - (byte[$200]) mulf_sqr2_lo#0 ? { fill( $200, 0) } - (byte[$200]) mulf_sqr2_hi#0 ? { fill( $200, 0) } + (byte*) print_screen#7 ← phi( @12/(byte*) print_screen#8 ) + (byte*) print_char_cursor#158 ← phi( @12/(byte*) print_char_cursor#165 ) + (byte*) print_line_cursor#62 ← phi( @12/(byte*) print_line_cursor#71 ) + (byte[$200]) mulf_sqr1_lo#0 ← { fill( $200, 0) } + (byte[$200]) mulf_sqr1_hi#0 ← { fill( $200, 0) } + (byte[$200]) mulf_sqr2_lo#0 ← { fill( $200, 0) } + (byte[$200]) mulf_sqr2_hi#0 ← { fill( $200, 0) } to:@33 mulf_init: scope:[mulf_init] from main::@1 - (word) mulf_init::sqr#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mulf_init::x_2#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mulf_init::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) mulf_init::$0 ? (byte[$200]) mulf_sqr1_hi#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) mulf_init::sqr1_hi#0 ? (byte*~) mulf_init::$0 - (byte*~) mulf_init::$7 ? (byte[$200]) mulf_sqr1_lo#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) mulf_init::sqr1_lo#0 ? (byte*~) mulf_init::$7 + (word) mulf_init::sqr#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mulf_init::x_2#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mulf_init::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) mulf_init::$0 ← (byte[$200]) mulf_sqr1_hi#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) mulf_init::sqr1_hi#0 ← (byte*~) mulf_init::$0 + (byte*~) mulf_init::$7 ← (byte[$200]) mulf_sqr1_lo#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) mulf_init::sqr1_lo#0 ← (byte*~) mulf_init::$7 to:mulf_init::@1 mulf_init::@1: scope:[mulf_init] from mulf_init mulf_init::@2 - (byte) mulf_init::x_2#4 ? phi( mulf_init/(byte) mulf_init::x_2#0 mulf_init::@2/(byte) mulf_init::x_2#2 ) - (byte*) mulf_init::sqr1_hi#3 ? phi( mulf_init/(byte*) mulf_init::sqr1_hi#0 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) - (byte*) mulf_init::sqr1_lo#3 ? phi( mulf_init/(byte*) mulf_init::sqr1_lo#0 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) - (word) mulf_init::sqr#5 ? phi( mulf_init/(word) mulf_init::sqr#0 mulf_init::@2/(word) mulf_init::sqr#1 ) - (byte) mulf_init::c#2 ? phi( mulf_init/(byte) mulf_init::c#0 mulf_init::@2/(byte) mulf_init::c#3 ) - (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 - (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mulf_init::$9 ? (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf_init::$10 ? ! (bool~) mulf_init::$9 + (byte) mulf_init::x_2#4 ← phi( mulf_init/(byte) mulf_init::x_2#0 mulf_init::@2/(byte) mulf_init::x_2#2 ) + (byte*) mulf_init::sqr1_hi#3 ← phi( mulf_init/(byte*) mulf_init::sqr1_hi#0 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) + (byte*) mulf_init::sqr1_lo#3 ← phi( mulf_init/(byte*) mulf_init::sqr1_lo#0 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) + (word) mulf_init::sqr#5 ← phi( mulf_init/(word) mulf_init::sqr#0 mulf_init::@2/(word) mulf_init::sqr#1 ) + (byte) mulf_init::c#2 ← phi( mulf_init/(byte) mulf_init::c#0 mulf_init::@2/(byte) mulf_init::c#3 ) + (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 + (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mulf_init::$9 ← (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf_init::$10 ← ! (bool~) mulf_init::$9 if((bool~) mulf_init::$10) goto mulf_init::@2 to:mulf_init::@3 mulf_init::@2: scope:[mulf_init] from mulf_init::@1 mulf_init::@3 - (byte) mulf_init::c#3 ? phi( mulf_init::@1/(byte) mulf_init::c#1 mulf_init::@3/(byte) mulf_init::c#4 ) - (byte) mulf_init::x_2#2 ? phi( mulf_init::@1/(byte) mulf_init::x_2#4 mulf_init::@3/(byte) mulf_init::x_2#1 ) - (byte*) mulf_init::sqr1_hi#2 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 mulf_init::@3/(byte*) mulf_init::sqr1_hi#4 ) - (byte*) mulf_init::sqr1_lo#2 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 mulf_init::@3/(byte*) mulf_init::sqr1_lo#4 ) - (word) mulf_init::sqr#3 ? phi( mulf_init::@1/(word) mulf_init::sqr#5 mulf_init::@3/(word) mulf_init::sqr#2 ) - (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 - *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 - (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 - *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 - (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 - (word~) mulf_init::$13 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 - (word) mulf_init::sqr#1 ? (word~) mulf_init::$13 - (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 - (byte*~) mulf_init::$14 ? (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $200 - (bool~) mulf_init::$15 ? (byte*) mulf_init::sqr1_lo#1 != (byte*~) mulf_init::$14 + (byte) mulf_init::c#3 ← phi( mulf_init::@1/(byte) mulf_init::c#1 mulf_init::@3/(byte) mulf_init::c#4 ) + (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#4 mulf_init::@3/(byte) mulf_init::x_2#1 ) + (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 mulf_init::@3/(byte*) mulf_init::sqr1_hi#4 ) + (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 mulf_init::@3/(byte*) mulf_init::sqr1_lo#4 ) + (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#5 mulf_init::@3/(word) mulf_init::sqr#2 ) + (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 + *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 + (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 + *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 + (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 + (word~) mulf_init::$13 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 + (word) mulf_init::sqr#1 ← (word~) mulf_init::$13 + (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 + (byte*~) mulf_init::$14 ← (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $200 + (bool~) mulf_init::$15 ← (byte*) mulf_init::sqr1_lo#1 != (byte*~) mulf_init::$14 if((bool~) mulf_init::$15) goto mulf_init::@1 to:mulf_init::@4 mulf_init::@3: scope:[mulf_init] from mulf_init::@1 - (byte) mulf_init::c#4 ? phi( mulf_init::@1/(byte) mulf_init::c#1 ) - (byte*) mulf_init::sqr1_hi#4 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 ) - (byte*) mulf_init::sqr1_lo#4 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 ) - (word) mulf_init::sqr#4 ? phi( mulf_init::@1/(word) mulf_init::sqr#5 ) - (byte) mulf_init::x_2#3 ? phi( mulf_init::@1/(byte) mulf_init::x_2#4 ) - (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 - (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 + (byte) mulf_init::c#4 ← phi( mulf_init::@1/(byte) mulf_init::c#1 ) + (byte*) mulf_init::sqr1_hi#4 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 ) + (byte*) mulf_init::sqr1_lo#4 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 ) + (word) mulf_init::sqr#4 ← phi( mulf_init::@1/(word) mulf_init::sqr#5 ) + (byte) mulf_init::x_2#3 ← phi( mulf_init::@1/(byte) mulf_init::x_2#4 ) + (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 + (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 to:mulf_init::@2 mulf_init::@4: scope:[mulf_init] from mulf_init::@2 - (signed byte/signed word/signed dword~) mulf_init::$1 ? - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) mulf_init::$2 ? ((byte)) (signed byte/signed word/signed dword~) mulf_init::$1 - (byte) mulf_init::x_255#0 ? (byte~) mulf_init::$2 - (byte) mulf_init::dir#0 ? (byte/word/signed word/dword/signed dword) $ff - (byte*) mulf_init::sqr2_hi#0 ? (byte[$200]) mulf_sqr2_hi#0 - (byte*) mulf_init::sqr2_lo#0 ? (byte[$200]) mulf_sqr2_lo#0 + (signed byte/signed word/signed dword~) mulf_init::$1 ← - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) mulf_init::$2 ← ((byte)) (signed byte/signed word/signed dword~) mulf_init::$1 + (byte) mulf_init::x_255#0 ← (byte~) mulf_init::$2 + (byte) mulf_init::dir#0 ← (byte/word/signed word/dword/signed dword) $ff + (byte*) mulf_init::sqr2_hi#0 ← (byte[$200]) mulf_sqr2_hi#0 + (byte*) mulf_init::sqr2_lo#0 ← (byte[$200]) mulf_sqr2_lo#0 to:mulf_init::@5 mulf_init::@5: scope:[mulf_init] from mulf_init::@4 mulf_init::@6 - (byte) mulf_init::dir#2 ? phi( mulf_init::@4/(byte) mulf_init::dir#0 mulf_init::@6/(byte) mulf_init::dir#3 ) - (byte*) mulf_init::sqr2_hi#2 ? phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#0 mulf_init::@6/(byte*) mulf_init::sqr2_hi#3 ) - (byte*) mulf_init::sqr2_lo#2 ? phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#0 mulf_init::@6/(byte*) mulf_init::sqr2_lo#1 ) - (byte) mulf_init::x_255#2 ? phi( mulf_init::@4/(byte) mulf_init::x_255#0 mulf_init::@6/(byte) mulf_init::x_255#3 ) - *((byte*) mulf_init::sqr2_lo#2) ? *((byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) - *((byte*) mulf_init::sqr2_hi#2) ? *((byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) - (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 - (byte~) mulf_init::$16 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 - (byte) mulf_init::x_255#1 ? (byte~) mulf_init::$16 - (bool~) mulf_init::$17 ? (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf_init::$18 ? ! (bool~) mulf_init::$17 + (byte) mulf_init::dir#2 ← phi( mulf_init::@4/(byte) mulf_init::dir#0 mulf_init::@6/(byte) mulf_init::dir#3 ) + (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#0 mulf_init::@6/(byte*) mulf_init::sqr2_hi#3 ) + (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#0 mulf_init::@6/(byte*) mulf_init::sqr2_lo#1 ) + (byte) mulf_init::x_255#2 ← phi( mulf_init::@4/(byte) mulf_init::x_255#0 mulf_init::@6/(byte) mulf_init::x_255#3 ) + *((byte*) mulf_init::sqr2_lo#2) ← *((byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) + *((byte*) mulf_init::sqr2_hi#2) ← *((byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) + (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 + (byte~) mulf_init::$16 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 + (byte) mulf_init::x_255#1 ← (byte~) mulf_init::$16 + (bool~) mulf_init::$17 ← (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf_init::$18 ← ! (bool~) mulf_init::$17 if((bool~) mulf_init::$18) goto mulf_init::@6 to:mulf_init::@7 mulf_init::@6: scope:[mulf_init] from mulf_init::@5 mulf_init::@7 - (byte) mulf_init::dir#3 ? phi( mulf_init::@5/(byte) mulf_init::dir#2 mulf_init::@7/(byte) mulf_init::dir#1 ) - (byte*) mulf_init::sqr2_hi#3 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 mulf_init::@7/(byte*) mulf_init::sqr2_hi#4 ) - (byte) mulf_init::x_255#3 ? phi( mulf_init::@5/(byte) mulf_init::x_255#1 mulf_init::@7/(byte) mulf_init::x_255#4 ) - (byte*) mulf_init::sqr2_lo#3 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 mulf_init::@7/(byte*) mulf_init::sqr2_lo#4 ) - (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#3 - (byte*~) mulf_init::$19 ? (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff - (bool~) mulf_init::$20 ? (byte*) mulf_init::sqr2_lo#1 != (byte*~) mulf_init::$19 + (byte) mulf_init::dir#3 ← phi( mulf_init::@5/(byte) mulf_init::dir#2 mulf_init::@7/(byte) mulf_init::dir#1 ) + (byte*) mulf_init::sqr2_hi#3 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 mulf_init::@7/(byte*) mulf_init::sqr2_hi#4 ) + (byte) mulf_init::x_255#3 ← phi( mulf_init::@5/(byte) mulf_init::x_255#1 mulf_init::@7/(byte) mulf_init::x_255#4 ) + (byte*) mulf_init::sqr2_lo#3 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 mulf_init::@7/(byte*) mulf_init::sqr2_lo#4 ) + (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#3 + (byte*~) mulf_init::$19 ← (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff + (bool~) mulf_init::$20 ← (byte*) mulf_init::sqr2_lo#1 != (byte*~) mulf_init::$19 if((bool~) mulf_init::$20) goto mulf_init::@5 to:mulf_init::@8 mulf_init::@7: scope:[mulf_init] from mulf_init::@5 - (byte*) mulf_init::sqr2_hi#4 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) - (byte) mulf_init::x_255#4 ? phi( mulf_init::@5/(byte) mulf_init::x_255#1 ) - (byte*) mulf_init::sqr2_lo#4 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 ) - (byte) mulf_init::dir#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) mulf_init::sqr2_hi#4 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) + (byte) mulf_init::x_255#4 ← phi( mulf_init::@5/(byte) mulf_init::x_255#1 ) + (byte*) mulf_init::sqr2_lo#4 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 ) + (byte) mulf_init::dir#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:mulf_init::@6 mulf_init::@8: scope:[mulf_init] from mulf_init::@6 - (byte*~) mulf_init::$3 ? (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff - (byte*~) mulf_init::$4 ? (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $100 - *((byte*~) mulf_init::$3) ? *((byte*~) mulf_init::$4) - (byte*~) mulf_init::$5 ? (byte[$200]) mulf_sqr2_hi#0 + (word/signed word/dword/signed dword) $1ff - (byte*~) mulf_init::$6 ? (byte[$200]) mulf_sqr1_hi#0 + (word/signed word/dword/signed dword) $100 - *((byte*~) mulf_init::$5) ? *((byte*~) mulf_init::$6) + (byte*~) mulf_init::$3 ← (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff + (byte*~) mulf_init::$4 ← (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $100 + *((byte*~) mulf_init::$3) ← *((byte*~) mulf_init::$4) + (byte*~) mulf_init::$5 ← (byte[$200]) mulf_sqr2_hi#0 + (word/signed word/dword/signed dword) $1ff + (byte*~) mulf_init::$6 ← (byte[$200]) mulf_sqr1_hi#0 + (word/signed word/dword/signed dword) $100 + *((byte*~) mulf_init::$5) ← *((byte*~) mulf_init::$6) to:mulf_init::@return mulf_init::@return: scope:[mulf_init] from mulf_init::@8 return to:@return mulf16u: scope:[mulf16u] from mul16u_compare::@14 mulf16s - (word) mulf16u::b#2 ? phi( mul16u_compare::@14/(word) mulf16u::b#1 mulf16s/(word) mulf16u::b#0 ) - (word) mulf16u::a#2 ? phi( mul16u_compare::@14/(word) mulf16u::a#1 mulf16s/(word) mulf16u::a#0 ) - (word*) mulf16u::memA#0 ? ((word*)) (byte/word/signed word/dword/signed dword) $f8 - (word*) mulf16u::memB#0 ? ((word*)) (byte/word/signed word/dword/signed dword) $fa - (dword*) mulf16u::memR#0 ? ((dword*)) (byte/word/signed word/dword/signed dword) $fc - *((word*) mulf16u::memA#0) ? (word) mulf16u::a#2 - *((word*) mulf16u::memB#0) ? (word) mulf16u::b#2 + (word) mulf16u::b#2 ← phi( mul16u_compare::@14/(word) mulf16u::b#1 mulf16s/(word) mulf16u::b#0 ) + (word) mulf16u::a#2 ← phi( mul16u_compare::@14/(word) mulf16u::a#1 mulf16s/(word) mulf16u::a#0 ) + (word*) mulf16u::memA#0 ← ((word*)) (byte/word/signed word/dword/signed dword) $f8 + (word*) mulf16u::memB#0 ← ((word*)) (byte/word/signed word/dword/signed dword) $fa + (dword*) mulf16u::memR#0 ← ((dword*)) (byte/word/signed word/dword/signed dword) $fc + *((word*) mulf16u::memA#0) ← (word) mulf16u::a#2 + *((word*) mulf16u::memB#0) ← (word) mulf16u::b#2 asm { ldamemA stasm1a+1 stasm3a+1 stasm5a+1 stasm7a+1 eor#$ff stasm2a+1 stasm4a+1 stasm6a+1 stasm8a+1 ldamemA+1 stasm1b+1 stasm3b+1 stasm5b+1 stasm7b+1 eor#$ff stasm2b+1 stasm4b+1 stasm6b+1 stasm8b+1 ldxmemB sec sm1a: ldamulf_sqr1_lo,x sm2a: sbcmulf_sqr2_lo,x stamemR+0 sm3a: ldamulf_sqr1_hi,x sm4a: sbcmulf_sqr2_hi,x sta_AA+1 sec sm1b: ldamulf_sqr1_lo,x sm2b: sbcmulf_sqr2_lo,x sta_cc+1 sm3b: ldamulf_sqr1_hi,x sm4b: sbcmulf_sqr2_hi,x sta_CC+1 ldxmemB+1 sec sm5a: ldamulf_sqr1_lo,x sm6a: sbcmulf_sqr2_lo,x sta_bb+1 sm7a: ldamulf_sqr1_hi,x sm8a: sbcmulf_sqr2_hi,x sta_BB+1 sec sm5b: ldamulf_sqr1_lo,x sm6b: sbcmulf_sqr2_lo,x sta_dd+1 sm7b: ldamulf_sqr1_hi,x sm8b: sbcmulf_sqr2_hi,x stamemR+3 clc _AA: lda#0 _bb: adc#0 stamemR+1 _BB: lda#0 _CC: adc#0 stamemR+2 bcc!+ incmemR+3 clc !: _cc: lda#0 adcmemR+1 stamemR+1 _dd: lda#0 adcmemR+2 stamemR+2 bcc!+ incmemR+3 !: } - (dword) mulf16u::return#0 ? *((dword*) mulf16u::memR#0) + (dword) mulf16u::return#0 ← *((dword*) mulf16u::memR#0) to:mulf16u::@return mulf16u::@return: scope:[mulf16u] from mulf16u - (dword) mulf16u::return#4 ? phi( mulf16u/(dword) mulf16u::return#0 ) - (dword) mulf16u::return#1 ? (dword) mulf16u::return#4 + (dword) mulf16u::return#4 ← phi( mulf16u/(dword) mulf16u::return#0 ) + (dword) mulf16u::return#1 ← (dword) mulf16u::return#4 return to:@return mulf16s: scope:[mulf16s] from mul16s_compare::@14 - (signed word) mulf16s::b#1 ? phi( mul16s_compare::@14/(signed word) mulf16s::b#0 ) - (signed word) mulf16s::a#1 ? phi( mul16s_compare::@14/(signed word) mulf16s::a#0 ) - (word~) mulf16s::$0 ? ((word)) (signed word) mulf16s::a#1 - (word~) mulf16s::$1 ? ((word)) (signed word) mulf16s::b#1 - (word) mulf16u::a#0 ? (word~) mulf16s::$0 - (word) mulf16u::b#0 ? (word~) mulf16s::$1 + (signed word) mulf16s::b#1 ← phi( mul16s_compare::@14/(signed word) mulf16s::b#0 ) + (signed word) mulf16s::a#1 ← phi( mul16s_compare::@14/(signed word) mulf16s::a#0 ) + (word~) mulf16s::$0 ← ((word)) (signed word) mulf16s::a#1 + (word~) mulf16s::$1 ← ((word)) (signed word) mulf16s::b#1 + (word) mulf16u::a#0 ← (word~) mulf16s::$0 + (word) mulf16u::b#0 ← (word~) mulf16s::$1 call mulf16u - (dword) mulf16u::return#2 ? (dword) mulf16u::return#1 + (dword) mulf16u::return#2 ← (dword) mulf16u::return#1 to:mulf16s::@6 mulf16s::@6: scope:[mulf16s] from mulf16s - (signed word) mulf16s::b#4 ? phi( mulf16s/(signed word) mulf16s::b#1 ) - (signed word) mulf16s::a#2 ? phi( mulf16s/(signed word) mulf16s::a#1 ) - (dword) mulf16u::return#5 ? phi( mulf16s/(dword) mulf16u::return#2 ) - (dword~) mulf16s::$2 ? (dword) mulf16u::return#5 - (dword) mulf16s::m#0 ? (dword~) mulf16s::$2 - (bool~) mulf16s::$3 ? (signed word) mulf16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf16s::$4 ? ! (bool~) mulf16s::$3 + (signed word) mulf16s::b#4 ← phi( mulf16s/(signed word) mulf16s::b#1 ) + (signed word) mulf16s::a#2 ← phi( mulf16s/(signed word) mulf16s::a#1 ) + (dword) mulf16u::return#5 ← phi( mulf16s/(dword) mulf16u::return#2 ) + (dword~) mulf16s::$2 ← (dword) mulf16u::return#5 + (dword) mulf16s::m#0 ← (dword~) mulf16s::$2 + (bool~) mulf16s::$3 ← (signed word) mulf16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf16s::$4 ← ! (bool~) mulf16s::$3 if((bool~) mulf16s::$4) goto mulf16s::@1 to:mulf16s::@3 mulf16s::@1: scope:[mulf16s] from mulf16s::@3 mulf16s::@6 - (signed word) mulf16s::a#4 ? phi( mulf16s::@3/(signed word) mulf16s::a#5 mulf16s::@6/(signed word) mulf16s::a#2 ) - (dword) mulf16s::m#6 ? phi( mulf16s::@3/(dword) mulf16s::m#1 mulf16s::@6/(dword) mulf16s::m#0 ) - (signed word) mulf16s::b#2 ? phi( mulf16s::@3/(signed word) mulf16s::b#3 mulf16s::@6/(signed word) mulf16s::b#4 ) - (bool~) mulf16s::$5 ? (signed word) mulf16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf16s::$6 ? ! (bool~) mulf16s::$5 + (signed word) mulf16s::a#4 ← phi( mulf16s::@3/(signed word) mulf16s::a#5 mulf16s::@6/(signed word) mulf16s::a#2 ) + (dword) mulf16s::m#6 ← phi( mulf16s::@3/(dword) mulf16s::m#1 mulf16s::@6/(dword) mulf16s::m#0 ) + (signed word) mulf16s::b#2 ← phi( mulf16s::@3/(signed word) mulf16s::b#3 mulf16s::@6/(signed word) mulf16s::b#4 ) + (bool~) mulf16s::$5 ← (signed word) mulf16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf16s::$6 ← ! (bool~) mulf16s::$5 if((bool~) mulf16s::$6) goto mulf16s::@2 to:mulf16s::@4 mulf16s::@3: scope:[mulf16s] from mulf16s::@6 - (signed word) mulf16s::a#5 ? phi( mulf16s::@6/(signed word) mulf16s::a#2 ) - (signed word) mulf16s::b#3 ? phi( mulf16s::@6/(signed word) mulf16s::b#4 ) - (dword) mulf16s::m#3 ? phi( mulf16s::@6/(dword) mulf16s::m#0 ) - (word~) mulf16s::$9 ? > (dword) mulf16s::m#3 - (word~) mulf16s::$10 ? ((word)) (signed word) mulf16s::b#3 - (word~) mulf16s::$11 ? (word~) mulf16s::$9 - (word~) mulf16s::$10 - (word~) mulf16s::$16 ? (word~) mulf16s::$11 - (dword) mulf16s::m#1 ? (dword) mulf16s::m#3 hi= (word~) mulf16s::$16 + (signed word) mulf16s::a#5 ← phi( mulf16s::@6/(signed word) mulf16s::a#2 ) + (signed word) mulf16s::b#3 ← phi( mulf16s::@6/(signed word) mulf16s::b#4 ) + (dword) mulf16s::m#3 ← phi( mulf16s::@6/(dword) mulf16s::m#0 ) + (word~) mulf16s::$9 ← > (dword) mulf16s::m#3 + (word~) mulf16s::$10 ← ((word)) (signed word) mulf16s::b#3 + (word~) mulf16s::$11 ← (word~) mulf16s::$9 - (word~) mulf16s::$10 + (word~) mulf16s::$16 ← (word~) mulf16s::$11 + (dword) mulf16s::m#1 ← (dword) mulf16s::m#3 hi= (word~) mulf16s::$16 to:mulf16s::@1 mulf16s::@2: scope:[mulf16s] from mulf16s::@1 mulf16s::@4 - (dword) mulf16s::m#4 ? phi( mulf16s::@1/(dword) mulf16s::m#6 mulf16s::@4/(dword) mulf16s::m#2 ) - (signed dword~) mulf16s::$7 ? ((signed dword)) (dword) mulf16s::m#4 - (signed dword) mulf16s::return#0 ? (signed dword~) mulf16s::$7 + (dword) mulf16s::m#4 ← phi( mulf16s::@1/(dword) mulf16s::m#6 mulf16s::@4/(dword) mulf16s::m#2 ) + (signed dword~) mulf16s::$7 ← ((signed dword)) (dword) mulf16s::m#4 + (signed dword) mulf16s::return#0 ← (signed dword~) mulf16s::$7 to:mulf16s::@return mulf16s::@4: scope:[mulf16s] from mulf16s::@1 - (signed word) mulf16s::a#3 ? phi( mulf16s::@1/(signed word) mulf16s::a#4 ) - (dword) mulf16s::m#5 ? phi( mulf16s::@1/(dword) mulf16s::m#6 ) - (word~) mulf16s::$13 ? > (dword) mulf16s::m#5 - (word~) mulf16s::$14 ? ((word)) (signed word) mulf16s::a#3 - (word~) mulf16s::$15 ? (word~) mulf16s::$13 - (word~) mulf16s::$14 - (word~) mulf16s::$17 ? (word~) mulf16s::$15 - (dword) mulf16s::m#2 ? (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 + (signed word) mulf16s::a#3 ← phi( mulf16s::@1/(signed word) mulf16s::a#4 ) + (dword) mulf16s::m#5 ← phi( mulf16s::@1/(dword) mulf16s::m#6 ) + (word~) mulf16s::$13 ← > (dword) mulf16s::m#5 + (word~) mulf16s::$14 ← ((word)) (signed word) mulf16s::a#3 + (word~) mulf16s::$15 ← (word~) mulf16s::$13 - (word~) mulf16s::$14 + (word~) mulf16s::$17 ← (word~) mulf16s::$15 + (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 to:mulf16s::@2 mulf16s::@return: scope:[mulf16s] from mulf16s::@2 - (signed dword) mulf16s::return#3 ? phi( mulf16s::@2/(signed dword) mulf16s::return#0 ) - (signed dword) mulf16s::return#1 ? (signed dword) mulf16s::return#3 + (signed dword) mulf16s::return#3 ← phi( mulf16s::@2/(signed dword) mulf16s::return#0 ) + (signed dword) mulf16s::return#1 ← (signed dword) mulf16s::return#3 return to:@return @33: scope:[] from @24 - (byte*) print_screen#6 ? phi( @24/(byte*) print_screen#7 ) - (byte*) print_char_cursor#157 ? phi( @24/(byte*) print_char_cursor#158 ) - (byte*) print_line_cursor#61 ? phi( @24/(byte*) print_line_cursor#62 ) - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 + (byte*) print_screen#6 ← phi( @24/(byte*) print_screen#7 ) + (byte*) print_char_cursor#157 ← phi( @24/(byte*) print_char_cursor#158 ) + (byte*) print_line_cursor#61 ← phi( @24/(byte*) print_line_cursor#62 ) + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 to:@40 main: scope:[main] from @40 - (byte*) print_char_cursor#137 ? phi( @40/(byte*) print_char_cursor#147 ) - (byte*) print_line_cursor#44 ? phi( @40/(byte*) print_line_cursor#54 ) - (byte*) print_screen#4 ? phi( @40/(byte*) print_screen#5 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte*) print_char_cursor#137 ← phi( @40/(byte*) print_char_cursor#147 ) + (byte*) print_line_cursor#44 ← phi( @40/(byte*) print_line_cursor#54 ) + (byte*) print_screen#4 ← phi( @40/(byte*) print_screen#5 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 call print_cls to:main::@1 main::@1: scope:[main] from main - (byte*) print_char_cursor#87 ? phi( main/(byte*) print_char_cursor#23 ) - (byte*) print_line_cursor#26 ? phi( main/(byte*) print_line_cursor#4 ) - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#26 - (byte*) print_char_cursor#24 ? (byte*) print_char_cursor#87 + (byte*) print_char_cursor#87 ← phi( main/(byte*) print_char_cursor#23 ) + (byte*) print_line_cursor#26 ← phi( main/(byte*) print_line_cursor#4 ) + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#26 + (byte*) print_char_cursor#24 ← (byte*) print_char_cursor#87 call mulf_init to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) print_line_cursor#45 ? phi( main::@1/(byte*) print_line_cursor#5 ) - (byte*) print_char_cursor#138 ? phi( main::@1/(byte*) print_char_cursor#24 ) + (byte*) print_line_cursor#45 ← phi( main::@1/(byte*) print_line_cursor#5 ) + (byte*) print_char_cursor#138 ← phi( main::@1/(byte*) print_char_cursor#24 ) call mul16u_compare to:main::@3 main::@3: scope:[main] from main::@2 - (byte*) print_line_cursor#27 ? phi( main::@2/(byte*) print_line_cursor#10 ) - (byte*) print_char_cursor#88 ? phi( main::@2/(byte*) print_char_cursor#30 ) - (byte*) print_char_cursor#25 ? (byte*) print_char_cursor#88 - (byte*) print_line_cursor#6 ? (byte*) print_line_cursor#27 + (byte*) print_line_cursor#27 ← phi( main::@2/(byte*) print_line_cursor#10 ) + (byte*) print_char_cursor#88 ← phi( main::@2/(byte*) print_char_cursor#30 ) + (byte*) print_char_cursor#25 ← (byte*) print_char_cursor#88 + (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#27 call mul16s_compare to:main::@4 main::@4: scope:[main] from main::@3 - (byte*) print_line_cursor#28 ? phi( main::@3/(byte*) print_line_cursor#16 ) - (byte*) print_char_cursor#89 ? phi( main::@3/(byte*) print_char_cursor#48 ) - (byte*) print_char_cursor#26 ? (byte*) print_char_cursor#89 - (byte*) print_line_cursor#7 ? (byte*) print_line_cursor#28 + (byte*) print_line_cursor#28 ← phi( main::@3/(byte*) print_line_cursor#16 ) + (byte*) print_char_cursor#89 ← phi( main::@3/(byte*) print_char_cursor#48 ) + (byte*) print_char_cursor#26 ← (byte*) print_char_cursor#89 + (byte*) print_line_cursor#7 ← (byte*) print_line_cursor#28 to:main::@return main::@return: scope:[main] from main::@4 - (byte*) print_char_cursor#90 ? phi( main::@4/(byte*) print_char_cursor#26 ) - (byte*) print_line_cursor#29 ? phi( main::@4/(byte*) print_line_cursor#7 ) - (byte*) print_line_cursor#8 ? (byte*) print_line_cursor#29 - (byte*) print_char_cursor#27 ? (byte*) print_char_cursor#90 + (byte*) print_char_cursor#90 ← phi( main::@4/(byte*) print_char_cursor#26 ) + (byte*) print_line_cursor#29 ← phi( main::@4/(byte*) print_line_cursor#7 ) + (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#29 + (byte*) print_char_cursor#27 ← (byte*) print_char_cursor#90 return to:@return muls16u: scope:[muls16u] from mul16u_compare::@2 - (word) muls16u::b#3 ? phi( mul16u_compare::@2/(word) muls16u::b#0 ) - (word) muls16u::a#1 ? phi( mul16u_compare::@2/(word) muls16u::a#0 ) - (dword) muls16u::m#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls16u::$0 ? (word) muls16u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls16u::$1 ? ! (bool~) muls16u::$0 + (word) muls16u::b#3 ← phi( mul16u_compare::@2/(word) muls16u::b#0 ) + (word) muls16u::a#1 ← phi( mul16u_compare::@2/(word) muls16u::a#0 ) + (dword) muls16u::m#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls16u::$0 ← (word) muls16u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls16u::$1 ← ! (bool~) muls16u::$0 if((bool~) muls16u::$1) goto muls16u::@1 to:muls16u::@2 muls16u::@1: scope:[muls16u] from muls16u muls16u::@4 - (dword) muls16u::m#2 ? phi( muls16u/(dword) muls16u::m#0 muls16u::@4/(dword) muls16u::m#1 ) - (dword) muls16u::return#0 ? (dword) muls16u::m#2 + (dword) muls16u::m#2 ← phi( muls16u/(dword) muls16u::m#0 muls16u::@4/(dword) muls16u::m#1 ) + (dword) muls16u::return#0 ← (dword) muls16u::m#2 to:muls16u::@return muls16u::@2: scope:[muls16u] from muls16u - (word) muls16u::a#3 ? phi( muls16u/(word) muls16u::a#1 ) - (word) muls16u::b#2 ? phi( muls16u/(word) muls16u::b#3 ) - (dword) muls16u::m#4 ? phi( muls16u/(dword) muls16u::m#0 ) - (word) muls16u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) muls16u::a#3 ← phi( muls16u/(word) muls16u::a#1 ) + (word) muls16u::b#2 ← phi( muls16u/(word) muls16u::b#3 ) + (dword) muls16u::m#4 ← phi( muls16u/(dword) muls16u::m#0 ) + (word) muls16u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:muls16u::@4 muls16u::@4: scope:[muls16u] from muls16u::@2 muls16u::@4 - (word) muls16u::a#2 ? phi( muls16u::@2/(word) muls16u::a#3 muls16u::@4/(word) muls16u::a#2 ) - (word) muls16u::i#2 ? phi( muls16u::@2/(word) muls16u::i#0 muls16u::@4/(word) muls16u::i#1 ) - (word) muls16u::b#1 ? phi( muls16u::@2/(word) muls16u::b#2 muls16u::@4/(word) muls16u::b#1 ) - (dword) muls16u::m#3 ? phi( muls16u::@2/(dword) muls16u::m#4 muls16u::@4/(dword) muls16u::m#1 ) - (dword~) muls16u::$2 ? (dword) muls16u::m#3 + (word) muls16u::b#1 - (dword) muls16u::m#1 ? (dword~) muls16u::$2 - (word) muls16u::i#1 ? ++ (word) muls16u::i#2 - (bool~) muls16u::$3 ? (word) muls16u::i#1 != (word) muls16u::a#2 + (word) muls16u::a#2 ← phi( muls16u::@2/(word) muls16u::a#3 muls16u::@4/(word) muls16u::a#2 ) + (word) muls16u::i#2 ← phi( muls16u::@2/(word) muls16u::i#0 muls16u::@4/(word) muls16u::i#1 ) + (word) muls16u::b#1 ← phi( muls16u::@2/(word) muls16u::b#2 muls16u::@4/(word) muls16u::b#1 ) + (dword) muls16u::m#3 ← phi( muls16u::@2/(dword) muls16u::m#4 muls16u::@4/(dword) muls16u::m#1 ) + (dword~) muls16u::$2 ← (dword) muls16u::m#3 + (word) muls16u::b#1 + (dword) muls16u::m#1 ← (dword~) muls16u::$2 + (word) muls16u::i#1 ← ++ (word) muls16u::i#2 + (bool~) muls16u::$3 ← (word) muls16u::i#1 != (word) muls16u::a#2 if((bool~) muls16u::$3) goto muls16u::@4 to:muls16u::@1 muls16u::@return: scope:[muls16u] from muls16u::@1 - (dword) muls16u::return#3 ? phi( muls16u::@1/(dword) muls16u::return#0 ) - (dword) muls16u::return#1 ? (dword) muls16u::return#3 + (dword) muls16u::return#3 ← phi( muls16u::@1/(dword) muls16u::return#0 ) + (dword) muls16u::return#1 ← (dword) muls16u::return#3 return to:@return muls16s: scope:[muls16s] from mul16s_compare::@2 - (signed word) muls16s::b#5 ? phi( mul16s_compare::@2/(signed word) muls16s::b#0 ) - (signed word) muls16s::a#1 ? phi( mul16s_compare::@2/(signed word) muls16s::a#0 ) - (signed dword) muls16s::m#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls16s::$0 ? (signed word) muls16s::a#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) muls16s::b#5 ← phi( mul16s_compare::@2/(signed word) muls16s::b#0 ) + (signed word) muls16s::a#1 ← phi( mul16s_compare::@2/(signed word) muls16s::a#0 ) + (signed dword) muls16s::m#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls16s::$0 ← (signed word) muls16s::a#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) muls16s::$0) goto muls16s::@1 to:muls16s::@4 muls16s::@1: scope:[muls16s] from muls16s - (signed word) muls16s::a#6 ? phi( muls16s/(signed word) muls16s::a#1 ) - (signed word) muls16s::b#4 ? phi( muls16s/(signed word) muls16s::b#5 ) - (signed dword) muls16s::m#8 ? phi( muls16s/(signed dword) muls16s::m#0 ) - (signed word) muls16s::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) muls16s::a#6 ← phi( muls16s/(signed word) muls16s::a#1 ) + (signed word) muls16s::b#4 ← phi( muls16s/(signed word) muls16s::b#5 ) + (signed dword) muls16s::m#8 ← phi( muls16s/(signed dword) muls16s::m#0 ) + (signed word) muls16s::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:muls16s::@10 muls16s::@4: scope:[muls16s] from muls16s - (signed word) muls16s::b#6 ? phi( muls16s/(signed word) muls16s::b#5 ) - (signed dword) muls16s::m#9 ? phi( muls16s/(signed dword) muls16s::m#0 ) - (signed word) muls16s::a#2 ? phi( muls16s/(signed word) muls16s::a#1 ) - (bool~) muls16s::$1 ? (signed word) muls16s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls16s::$2 ? ! (bool~) muls16s::$1 + (signed word) muls16s::b#6 ← phi( muls16s/(signed word) muls16s::b#5 ) + (signed dword) muls16s::m#9 ← phi( muls16s/(signed dword) muls16s::m#0 ) + (signed word) muls16s::a#2 ← phi( muls16s/(signed word) muls16s::a#1 ) + (bool~) muls16s::$1 ← (signed word) muls16s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls16s::$2 ← ! (bool~) muls16s::$1 if((bool~) muls16s::$2) goto muls16s::@2 to:muls16s::@5 muls16s::@2: scope:[muls16s] from muls16s::@4 - (signed dword) muls16s::m#7 ? phi( muls16s::@4/(signed dword) muls16s::m#9 ) + (signed dword) muls16s::m#7 ← phi( muls16s::@4/(signed dword) muls16s::m#9 ) to:muls16s::@3 muls16s::@5: scope:[muls16s] from muls16s::@4 - (signed word) muls16s::a#5 ? phi( muls16s::@4/(signed word) muls16s::a#2 ) - (signed word) muls16s::b#3 ? phi( muls16s::@4/(signed word) muls16s::b#6 ) - (signed dword) muls16s::m#6 ? phi( muls16s::@4/(signed dword) muls16s::m#9 ) - (signed word) muls16s::j#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed word) muls16s::a#5 ← phi( muls16s::@4/(signed word) muls16s::a#2 ) + (signed word) muls16s::b#3 ← phi( muls16s::@4/(signed word) muls16s::b#6 ) + (signed dword) muls16s::m#6 ← phi( muls16s::@4/(signed dword) muls16s::m#9 ) + (signed word) muls16s::j#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:muls16s::@8 muls16s::@8: scope:[muls16s] from muls16s::@5 muls16s::@8 - (signed word) muls16s::a#3 ? phi( muls16s::@5/(signed word) muls16s::a#5 muls16s::@8/(signed word) muls16s::a#3 ) - (signed word) muls16s::j#2 ? phi( muls16s::@5/(signed word) muls16s::j#0 muls16s::@8/(signed word) muls16s::j#1 ) - (signed word) muls16s::b#1 ? phi( muls16s::@5/(signed word) muls16s::b#3 muls16s::@8/(signed word) muls16s::b#1 ) - (signed dword) muls16s::m#3 ? phi( muls16s::@5/(signed dword) muls16s::m#6 muls16s::@8/(signed dword) muls16s::m#1 ) - (signed dword~) muls16s::$3 ? (signed dword) muls16s::m#3 + (signed word) muls16s::b#1 - (signed dword) muls16s::m#1 ? (signed dword~) muls16s::$3 - (signed word) muls16s::j#1 ? ++ (signed word) muls16s::j#2 - (bool~) muls16s::$4 ? (signed word) muls16s::j#1 != (signed word) muls16s::a#3 + (signed word) muls16s::a#3 ← phi( muls16s::@5/(signed word) muls16s::a#5 muls16s::@8/(signed word) muls16s::a#3 ) + (signed word) muls16s::j#2 ← phi( muls16s::@5/(signed word) muls16s::j#0 muls16s::@8/(signed word) muls16s::j#1 ) + (signed word) muls16s::b#1 ← phi( muls16s::@5/(signed word) muls16s::b#3 muls16s::@8/(signed word) muls16s::b#1 ) + (signed dword) muls16s::m#3 ← phi( muls16s::@5/(signed dword) muls16s::m#6 muls16s::@8/(signed dword) muls16s::m#1 ) + (signed dword~) muls16s::$3 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#1 + (signed dword) muls16s::m#1 ← (signed dword~) muls16s::$3 + (signed word) muls16s::j#1 ← ++ (signed word) muls16s::j#2 + (bool~) muls16s::$4 ← (signed word) muls16s::j#1 != (signed word) muls16s::a#3 if((bool~) muls16s::$4) goto muls16s::@8 to:muls16s::@3 muls16s::@3: scope:[muls16s] from muls16s::@10 muls16s::@2 muls16s::@8 - (signed dword) muls16s::m#4 ? phi( muls16s::@10/(signed dword) muls16s::m#2 muls16s::@2/(signed dword) muls16s::m#7 muls16s::@8/(signed dword) muls16s::m#1 ) - (signed dword) muls16s::return#0 ? (signed dword) muls16s::m#4 + (signed dword) muls16s::m#4 ← phi( muls16s::@10/(signed dword) muls16s::m#2 muls16s::@2/(signed dword) muls16s::m#7 muls16s::@8/(signed dword) muls16s::m#1 ) + (signed dword) muls16s::return#0 ← (signed dword) muls16s::m#4 to:muls16s::@return muls16s::@10: scope:[muls16s] from muls16s::@1 muls16s::@10 - (signed word) muls16s::a#4 ? phi( muls16s::@1/(signed word) muls16s::a#6 muls16s::@10/(signed word) muls16s::a#4 ) - (signed word) muls16s::i#2 ? phi( muls16s::@1/(signed word) muls16s::i#0 muls16s::@10/(signed word) muls16s::i#1 ) - (signed word) muls16s::b#2 ? phi( muls16s::@1/(signed word) muls16s::b#4 muls16s::@10/(signed word) muls16s::b#2 ) - (signed dword) muls16s::m#5 ? phi( muls16s::@1/(signed dword) muls16s::m#8 muls16s::@10/(signed dword) muls16s::m#2 ) - (signed dword~) muls16s::$5 ? (signed dword) muls16s::m#5 - (signed word) muls16s::b#2 - (signed dword) muls16s::m#2 ? (signed dword~) muls16s::$5 - (signed word) muls16s::i#1 ? -- (signed word) muls16s::i#2 - (bool~) muls16s::$6 ? (signed word) muls16s::i#1 != (signed word) muls16s::a#4 + (signed word) muls16s::a#4 ← phi( muls16s::@1/(signed word) muls16s::a#6 muls16s::@10/(signed word) muls16s::a#4 ) + (signed word) muls16s::i#2 ← phi( muls16s::@1/(signed word) muls16s::i#0 muls16s::@10/(signed word) muls16s::i#1 ) + (signed word) muls16s::b#2 ← phi( muls16s::@1/(signed word) muls16s::b#4 muls16s::@10/(signed word) muls16s::b#2 ) + (signed dword) muls16s::m#5 ← phi( muls16s::@1/(signed dword) muls16s::m#8 muls16s::@10/(signed dword) muls16s::m#2 ) + (signed dword~) muls16s::$5 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#2 + (signed dword) muls16s::m#2 ← (signed dword~) muls16s::$5 + (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 + (bool~) muls16s::$6 ← (signed word) muls16s::i#1 != (signed word) muls16s::a#4 if((bool~) muls16s::$6) goto muls16s::@10 to:muls16s::@3 muls16s::@return: scope:[muls16s] from muls16s::@3 - (signed dword) muls16s::return#3 ? phi( muls16s::@3/(signed dword) muls16s::return#0 ) - (signed dword) muls16s::return#1 ? (signed dword) muls16s::return#3 + (signed dword) muls16s::return#3 ← phi( muls16s::@3/(signed dword) muls16s::return#0 ) + (signed dword) muls16s::return#1 ← (signed dword) muls16s::return#3 return to:@return mul16u_compare: scope:[mul16u_compare] from main::@2 - (byte*) print_line_cursor#98 ? phi( main::@2/(byte*) print_line_cursor#45 ) - (byte*) print_char_cursor#151 ? phi( main::@2/(byte*) print_char_cursor#138 ) - (word) mul16u_compare::a#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) mul16u_compare::b#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mul16u_compare::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#98 ← phi( main::@2/(byte*) print_line_cursor#45 ) + (byte*) print_char_cursor#151 ← phi( main::@2/(byte*) print_char_cursor#138 ) + (word) mul16u_compare::a#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul16u_compare::b#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mul16u_compare::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16u_compare::@1 mul16u_compare::@1: scope:[mul16u_compare] from mul16u_compare mul16u_compare::@10 - (byte*) print_line_cursor#94 ? phi( mul16u_compare/(byte*) print_line_cursor#98 mul16u_compare::@10/(byte*) print_line_cursor#56 ) - (byte) mul16u_compare::i#13 ? phi( mul16u_compare/(byte) mul16u_compare::i#0 mul16u_compare::@10/(byte) mul16u_compare::i#1 ) - (word) mul16u_compare::b#9 ? phi( mul16u_compare/(word) mul16u_compare::b#0 mul16u_compare::@10/(word) mul16u_compare::b#12 ) - (word) mul16u_compare::a#9 ? phi( mul16u_compare/(word) mul16u_compare::a#0 mul16u_compare::@10/(word) mul16u_compare::a#12 ) - (byte*) print_char_cursor#139 ? phi( mul16u_compare/(byte*) print_char_cursor#151 mul16u_compare::@10/(byte*) print_char_cursor#152 ) - (byte*) print_str::str#1 ? (const string) mul16u_compare::str + (byte*) print_line_cursor#94 ← phi( mul16u_compare/(byte*) print_line_cursor#98 mul16u_compare::@10/(byte*) print_line_cursor#56 ) + (byte) mul16u_compare::i#13 ← phi( mul16u_compare/(byte) mul16u_compare::i#0 mul16u_compare::@10/(byte) mul16u_compare::i#1 ) + (word) mul16u_compare::b#9 ← phi( mul16u_compare/(word) mul16u_compare::b#0 mul16u_compare::@10/(word) mul16u_compare::b#12 ) + (word) mul16u_compare::a#9 ← phi( mul16u_compare/(word) mul16u_compare::a#0 mul16u_compare::@10/(word) mul16u_compare::a#12 ) + (byte*) print_char_cursor#139 ← phi( mul16u_compare/(byte*) print_char_cursor#151 mul16u_compare::@10/(byte*) print_char_cursor#152 ) + (byte*) print_str::str#1 ← (const string) mul16u_compare::str call print_str to:mul16u_compare::@12 mul16u_compare::@12: scope:[mul16u_compare] from mul16u_compare::@1 - (byte*) print_line_cursor#90 ? phi( mul16u_compare::@1/(byte*) print_line_cursor#94 ) - (byte) mul16u_compare::i#12 ? phi( mul16u_compare::@1/(byte) mul16u_compare::i#13 ) - (word) mul16u_compare::b#6 ? phi( mul16u_compare::@1/(word) mul16u_compare::b#9 ) - (word) mul16u_compare::a#6 ? phi( mul16u_compare::@1/(word) mul16u_compare::a#9 ) - (byte*) print_char_cursor#91 ? phi( mul16u_compare::@1/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#28 ? (byte*) print_char_cursor#91 - (byte) mul16u_compare::j#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#90 ← phi( mul16u_compare::@1/(byte*) print_line_cursor#94 ) + (byte) mul16u_compare::i#12 ← phi( mul16u_compare::@1/(byte) mul16u_compare::i#13 ) + (word) mul16u_compare::b#6 ← phi( mul16u_compare::@1/(word) mul16u_compare::b#9 ) + (word) mul16u_compare::a#6 ← phi( mul16u_compare::@1/(word) mul16u_compare::a#9 ) + (byte*) print_char_cursor#91 ← phi( mul16u_compare::@1/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#28 ← (byte*) print_char_cursor#91 + (byte) mul16u_compare::j#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16u_compare::@2 mul16u_compare::@2: scope:[mul16u_compare] from mul16u_compare::@12 mul16u_compare::@5 - (byte*) print_line_cursor#86 ? phi( mul16u_compare::@12/(byte*) print_line_cursor#90 mul16u_compare::@5/(byte*) print_line_cursor#65 ) - (byte*) print_char_cursor#174 ? phi( mul16u_compare::@12/(byte*) print_char_cursor#28 mul16u_compare::@5/(byte*) print_char_cursor#161 ) - (byte) mul16u_compare::i#11 ? phi( mul16u_compare::@12/(byte) mul16u_compare::i#12 mul16u_compare::@5/(byte) mul16u_compare::i#3 ) - (byte) mul16u_compare::j#10 ? phi( mul16u_compare::@12/(byte) mul16u_compare::j#0 mul16u_compare::@5/(byte) mul16u_compare::j#1 ) - (word) mul16u_compare::b#2 ? phi( mul16u_compare::@12/(word) mul16u_compare::b#6 mul16u_compare::@5/(word) mul16u_compare::b#7 ) - (word) mul16u_compare::a#2 ? phi( mul16u_compare::@12/(word) mul16u_compare::a#6 mul16u_compare::@5/(word) mul16u_compare::a#7 ) - (word/signed dword/dword~) mul16u_compare::$4 ? (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b - (word) mul16u_compare::a#1 ? (word/signed dword/dword~) mul16u_compare::$4 - (word/signed dword/dword~) mul16u_compare::$5 ? (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd - (word) mul16u_compare::b#1 ? (word/signed dword/dword~) mul16u_compare::$5 - (word) muls16u::a#0 ? (word) mul16u_compare::a#1 - (word) muls16u::b#0 ? (word) mul16u_compare::b#1 + (byte*) print_line_cursor#86 ← phi( mul16u_compare::@12/(byte*) print_line_cursor#90 mul16u_compare::@5/(byte*) print_line_cursor#65 ) + (byte*) print_char_cursor#174 ← phi( mul16u_compare::@12/(byte*) print_char_cursor#28 mul16u_compare::@5/(byte*) print_char_cursor#161 ) + (byte) mul16u_compare::i#11 ← phi( mul16u_compare::@12/(byte) mul16u_compare::i#12 mul16u_compare::@5/(byte) mul16u_compare::i#3 ) + (byte) mul16u_compare::j#10 ← phi( mul16u_compare::@12/(byte) mul16u_compare::j#0 mul16u_compare::@5/(byte) mul16u_compare::j#1 ) + (word) mul16u_compare::b#2 ← phi( mul16u_compare::@12/(word) mul16u_compare::b#6 mul16u_compare::@5/(word) mul16u_compare::b#7 ) + (word) mul16u_compare::a#2 ← phi( mul16u_compare::@12/(word) mul16u_compare::a#6 mul16u_compare::@5/(word) mul16u_compare::a#7 ) + (word/signed dword/dword~) mul16u_compare::$4 ← (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b + (word) mul16u_compare::a#1 ← (word/signed dword/dword~) mul16u_compare::$4 + (word/signed dword/dword~) mul16u_compare::$5 ← (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd + (word) mul16u_compare::b#1 ← (word/signed dword/dword~) mul16u_compare::$5 + (word) muls16u::a#0 ← (word) mul16u_compare::a#1 + (word) muls16u::b#0 ← (word) mul16u_compare::b#1 call muls16u - (dword) muls16u::return#2 ? (dword) muls16u::return#1 + (dword) muls16u::return#2 ← (dword) muls16u::return#1 to:mul16u_compare::@13 mul16u_compare::@13: scope:[mul16u_compare] from mul16u_compare::@2 - (byte*) print_line_cursor#82 ? phi( mul16u_compare::@2/(byte*) print_line_cursor#86 ) - (byte*) print_char_cursor#172 ? phi( mul16u_compare::@2/(byte*) print_char_cursor#174 ) - (byte) mul16u_compare::i#10 ? phi( mul16u_compare::@2/(byte) mul16u_compare::i#11 ) - (byte) mul16u_compare::j#9 ? phi( mul16u_compare::@2/(byte) mul16u_compare::j#10 ) - (word) mul16u_compare::b#3 ? phi( mul16u_compare::@2/(word) mul16u_compare::b#1 ) - (word) mul16u_compare::a#3 ? phi( mul16u_compare::@2/(word) mul16u_compare::a#1 ) - (dword) muls16u::return#4 ? phi( mul16u_compare::@2/(dword) muls16u::return#2 ) - (dword~) mul16u_compare::$6 ? (dword) muls16u::return#4 - (dword) mul16u_compare::ms#0 ? (dword~) mul16u_compare::$6 - (word) mul16u::a#2 ? (word) mul16u_compare::a#3 - (word) mul16u::b#1 ? (word) mul16u_compare::b#3 + (byte*) print_line_cursor#82 ← phi( mul16u_compare::@2/(byte*) print_line_cursor#86 ) + (byte*) print_char_cursor#172 ← phi( mul16u_compare::@2/(byte*) print_char_cursor#174 ) + (byte) mul16u_compare::i#10 ← phi( mul16u_compare::@2/(byte) mul16u_compare::i#11 ) + (byte) mul16u_compare::j#9 ← phi( mul16u_compare::@2/(byte) mul16u_compare::j#10 ) + (word) mul16u_compare::b#3 ← phi( mul16u_compare::@2/(word) mul16u_compare::b#1 ) + (word) mul16u_compare::a#3 ← phi( mul16u_compare::@2/(word) mul16u_compare::a#1 ) + (dword) muls16u::return#4 ← phi( mul16u_compare::@2/(dword) muls16u::return#2 ) + (dword~) mul16u_compare::$6 ← (dword) muls16u::return#4 + (dword) mul16u_compare::ms#0 ← (dword~) mul16u_compare::$6 + (word) mul16u::a#2 ← (word) mul16u_compare::a#3 + (word) mul16u::b#1 ← (word) mul16u_compare::b#3 call mul16u - (dword) mul16u::return#3 ? (dword) mul16u::return#1 + (dword) mul16u::return#3 ← (dword) mul16u::return#1 to:mul16u_compare::@14 mul16u_compare::@14: scope:[mul16u_compare] from mul16u_compare::@13 - (byte*) print_line_cursor#78 ? phi( mul16u_compare::@13/(byte*) print_line_cursor#82 ) - (byte*) print_char_cursor#170 ? phi( mul16u_compare::@13/(byte*) print_char_cursor#172 ) - (byte) mul16u_compare::i#9 ? phi( mul16u_compare::@13/(byte) mul16u_compare::i#10 ) - (byte) mul16u_compare::j#8 ? phi( mul16u_compare::@13/(byte) mul16u_compare::j#9 ) - (dword) mul16u_compare::ms#4 ? phi( mul16u_compare::@13/(dword) mul16u_compare::ms#0 ) - (word) mul16u_compare::b#4 ? phi( mul16u_compare::@13/(word) mul16u_compare::b#3 ) - (word) mul16u_compare::a#4 ? phi( mul16u_compare::@13/(word) mul16u_compare::a#3 ) - (dword) mul16u::return#6 ? phi( mul16u_compare::@13/(dword) mul16u::return#3 ) - (dword~) mul16u_compare::$7 ? (dword) mul16u::return#6 - (dword) mul16u_compare::mn#0 ? (dword~) mul16u_compare::$7 - (word) mulf16u::a#1 ? (word) mul16u_compare::a#4 - (word) mulf16u::b#1 ? (word) mul16u_compare::b#4 + (byte*) print_line_cursor#78 ← phi( mul16u_compare::@13/(byte*) print_line_cursor#82 ) + (byte*) print_char_cursor#170 ← phi( mul16u_compare::@13/(byte*) print_char_cursor#172 ) + (byte) mul16u_compare::i#9 ← phi( mul16u_compare::@13/(byte) mul16u_compare::i#10 ) + (byte) mul16u_compare::j#8 ← phi( mul16u_compare::@13/(byte) mul16u_compare::j#9 ) + (dword) mul16u_compare::ms#4 ← phi( mul16u_compare::@13/(dword) mul16u_compare::ms#0 ) + (word) mul16u_compare::b#4 ← phi( mul16u_compare::@13/(word) mul16u_compare::b#3 ) + (word) mul16u_compare::a#4 ← phi( mul16u_compare::@13/(word) mul16u_compare::a#3 ) + (dword) mul16u::return#6 ← phi( mul16u_compare::@13/(dword) mul16u::return#3 ) + (dword~) mul16u_compare::$7 ← (dword) mul16u::return#6 + (dword) mul16u_compare::mn#0 ← (dword~) mul16u_compare::$7 + (word) mulf16u::a#1 ← (word) mul16u_compare::a#4 + (word) mulf16u::b#1 ← (word) mul16u_compare::b#4 call mulf16u - (dword) mulf16u::return#3 ? (dword) mulf16u::return#1 + (dword) mulf16u::return#3 ← (dword) mulf16u::return#1 to:mul16u_compare::@15 mul16u_compare::@15: scope:[mul16u_compare] from mul16u_compare::@14 - (byte*) print_line_cursor#72 ? phi( mul16u_compare::@14/(byte*) print_line_cursor#78 ) - (byte*) print_char_cursor#166 ? phi( mul16u_compare::@14/(byte*) print_char_cursor#170 ) - (byte) mul16u_compare::i#7 ? phi( mul16u_compare::@14/(byte) mul16u_compare::i#9 ) - (word) mul16u_compare::b#13 ? phi( mul16u_compare::@14/(word) mul16u_compare::b#4 ) - (word) mul16u_compare::a#13 ? phi( mul16u_compare::@14/(word) mul16u_compare::a#4 ) - (byte) mul16u_compare::j#6 ? phi( mul16u_compare::@14/(byte) mul16u_compare::j#8 ) - (dword) mul16u_compare::mn#3 ? phi( mul16u_compare::@14/(dword) mul16u_compare::mn#0 ) - (dword) mul16u_compare::ms#1 ? phi( mul16u_compare::@14/(dword) mul16u_compare::ms#4 ) - (dword) mulf16u::return#6 ? phi( mul16u_compare::@14/(dword) mulf16u::return#3 ) - (dword~) mul16u_compare::$8 ? (dword) mulf16u::return#6 - (dword) mul16u_compare::mf#0 ? (dword~) mul16u_compare::$8 - (byte) mul16u_compare::ok#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16u_compare::$9 ? (dword) mul16u_compare::ms#1 != (dword) mul16u_compare::mf#0 - (bool~) mul16u_compare::$10 ? ! (bool~) mul16u_compare::$9 + (byte*) print_line_cursor#72 ← phi( mul16u_compare::@14/(byte*) print_line_cursor#78 ) + (byte*) print_char_cursor#166 ← phi( mul16u_compare::@14/(byte*) print_char_cursor#170 ) + (byte) mul16u_compare::i#7 ← phi( mul16u_compare::@14/(byte) mul16u_compare::i#9 ) + (word) mul16u_compare::b#13 ← phi( mul16u_compare::@14/(word) mul16u_compare::b#4 ) + (word) mul16u_compare::a#13 ← phi( mul16u_compare::@14/(word) mul16u_compare::a#4 ) + (byte) mul16u_compare::j#6 ← phi( mul16u_compare::@14/(byte) mul16u_compare::j#8 ) + (dword) mul16u_compare::mn#3 ← phi( mul16u_compare::@14/(dword) mul16u_compare::mn#0 ) + (dword) mul16u_compare::ms#1 ← phi( mul16u_compare::@14/(dword) mul16u_compare::ms#4 ) + (dword) mulf16u::return#6 ← phi( mul16u_compare::@14/(dword) mulf16u::return#3 ) + (dword~) mul16u_compare::$8 ← (dword) mulf16u::return#6 + (dword) mul16u_compare::mf#0 ← (dword~) mul16u_compare::$8 + (byte) mul16u_compare::ok#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16u_compare::$9 ← (dword) mul16u_compare::ms#1 != (dword) mul16u_compare::mf#0 + (bool~) mul16u_compare::$10 ← ! (bool~) mul16u_compare::$9 if((bool~) mul16u_compare::$10) goto mul16u_compare::@3 to:mul16u_compare::@6 mul16u_compare::@3: scope:[mul16u_compare] from mul16u_compare::@15 mul16u_compare::@6 - (byte*) print_line_cursor#63 ? phi( mul16u_compare::@15/(byte*) print_line_cursor#72 mul16u_compare::@6/(byte*) print_line_cursor#73 ) - (byte*) print_char_cursor#159 ? phi( mul16u_compare::@15/(byte*) print_char_cursor#166 mul16u_compare::@6/(byte*) print_char_cursor#167 ) - (byte) mul16u_compare::i#5 ? phi( mul16u_compare::@15/(byte) mul16u_compare::i#7 mul16u_compare::@6/(byte) mul16u_compare::i#8 ) - (dword) mul16u_compare::mf#3 ? phi( mul16u_compare::@15/(dword) mul16u_compare::mf#0 mul16u_compare::@6/(dword) mul16u_compare::mf#5 ) - (word) mul16u_compare::b#10 ? phi( mul16u_compare::@15/(word) mul16u_compare::b#13 mul16u_compare::@6/(word) mul16u_compare::b#14 ) - (word) mul16u_compare::a#10 ? phi( mul16u_compare::@15/(word) mul16u_compare::a#13 mul16u_compare::@6/(word) mul16u_compare::a#14 ) - (byte) mul16u_compare::j#4 ? phi( mul16u_compare::@15/(byte) mul16u_compare::j#6 mul16u_compare::@6/(byte) mul16u_compare::j#7 ) - (byte) mul16u_compare::ok#4 ? phi( mul16u_compare::@15/(byte) mul16u_compare::ok#0 mul16u_compare::@6/(byte) mul16u_compare::ok#1 ) - (dword) mul16u_compare::mn#1 ? phi( mul16u_compare::@15/(dword) mul16u_compare::mn#3 mul16u_compare::@6/(dword) mul16u_compare::mn#4 ) - (dword) mul16u_compare::ms#2 ? phi( mul16u_compare::@15/(dword) mul16u_compare::ms#1 mul16u_compare::@6/(dword) mul16u_compare::ms#5 ) - (bool~) mul16u_compare::$11 ? (dword) mul16u_compare::ms#2 != (dword) mul16u_compare::mn#1 - (bool~) mul16u_compare::$12 ? ! (bool~) mul16u_compare::$11 + (byte*) print_line_cursor#63 ← phi( mul16u_compare::@15/(byte*) print_line_cursor#72 mul16u_compare::@6/(byte*) print_line_cursor#73 ) + (byte*) print_char_cursor#159 ← phi( mul16u_compare::@15/(byte*) print_char_cursor#166 mul16u_compare::@6/(byte*) print_char_cursor#167 ) + (byte) mul16u_compare::i#5 ← phi( mul16u_compare::@15/(byte) mul16u_compare::i#7 mul16u_compare::@6/(byte) mul16u_compare::i#8 ) + (dword) mul16u_compare::mf#3 ← phi( mul16u_compare::@15/(dword) mul16u_compare::mf#0 mul16u_compare::@6/(dword) mul16u_compare::mf#5 ) + (word) mul16u_compare::b#10 ← phi( mul16u_compare::@15/(word) mul16u_compare::b#13 mul16u_compare::@6/(word) mul16u_compare::b#14 ) + (word) mul16u_compare::a#10 ← phi( mul16u_compare::@15/(word) mul16u_compare::a#13 mul16u_compare::@6/(word) mul16u_compare::a#14 ) + (byte) mul16u_compare::j#4 ← phi( mul16u_compare::@15/(byte) mul16u_compare::j#6 mul16u_compare::@6/(byte) mul16u_compare::j#7 ) + (byte) mul16u_compare::ok#4 ← phi( mul16u_compare::@15/(byte) mul16u_compare::ok#0 mul16u_compare::@6/(byte) mul16u_compare::ok#1 ) + (dword) mul16u_compare::mn#1 ← phi( mul16u_compare::@15/(dword) mul16u_compare::mn#3 mul16u_compare::@6/(dword) mul16u_compare::mn#4 ) + (dword) mul16u_compare::ms#2 ← phi( mul16u_compare::@15/(dword) mul16u_compare::ms#1 mul16u_compare::@6/(dword) mul16u_compare::ms#5 ) + (bool~) mul16u_compare::$11 ← (dword) mul16u_compare::ms#2 != (dword) mul16u_compare::mn#1 + (bool~) mul16u_compare::$12 ← ! (bool~) mul16u_compare::$11 if((bool~) mul16u_compare::$12) goto mul16u_compare::@4 to:mul16u_compare::@7 mul16u_compare::@6: scope:[mul16u_compare] from mul16u_compare::@15 - (byte*) print_line_cursor#73 ? phi( mul16u_compare::@15/(byte*) print_line_cursor#72 ) - (byte*) print_char_cursor#167 ? phi( mul16u_compare::@15/(byte*) print_char_cursor#166 ) - (byte) mul16u_compare::i#8 ? phi( mul16u_compare::@15/(byte) mul16u_compare::i#7 ) - (dword) mul16u_compare::mf#5 ? phi( mul16u_compare::@15/(dword) mul16u_compare::mf#0 ) - (word) mul16u_compare::b#14 ? phi( mul16u_compare::@15/(word) mul16u_compare::b#13 ) - (word) mul16u_compare::a#14 ? phi( mul16u_compare::@15/(word) mul16u_compare::a#13 ) - (byte) mul16u_compare::j#7 ? phi( mul16u_compare::@15/(byte) mul16u_compare::j#6 ) - (dword) mul16u_compare::mn#4 ? phi( mul16u_compare::@15/(dword) mul16u_compare::mn#3 ) - (dword) mul16u_compare::ms#5 ? phi( mul16u_compare::@15/(dword) mul16u_compare::ms#1 ) - (byte) mul16u_compare::ok#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#73 ← phi( mul16u_compare::@15/(byte*) print_line_cursor#72 ) + (byte*) print_char_cursor#167 ← phi( mul16u_compare::@15/(byte*) print_char_cursor#166 ) + (byte) mul16u_compare::i#8 ← phi( mul16u_compare::@15/(byte) mul16u_compare::i#7 ) + (dword) mul16u_compare::mf#5 ← phi( mul16u_compare::@15/(dword) mul16u_compare::mf#0 ) + (word) mul16u_compare::b#14 ← phi( mul16u_compare::@15/(word) mul16u_compare::b#13 ) + (word) mul16u_compare::a#14 ← phi( mul16u_compare::@15/(word) mul16u_compare::a#13 ) + (byte) mul16u_compare::j#7 ← phi( mul16u_compare::@15/(byte) mul16u_compare::j#6 ) + (dword) mul16u_compare::mn#4 ← phi( mul16u_compare::@15/(dword) mul16u_compare::mn#3 ) + (dword) mul16u_compare::ms#5 ← phi( mul16u_compare::@15/(dword) mul16u_compare::ms#1 ) + (byte) mul16u_compare::ok#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16u_compare::@3 mul16u_compare::@4: scope:[mul16u_compare] from mul16u_compare::@3 mul16u_compare::@7 - (byte*) print_line_cursor#55 ? phi( mul16u_compare::@3/(byte*) print_line_cursor#63 mul16u_compare::@7/(byte*) print_line_cursor#64 ) - (byte*) print_char_cursor#153 ? phi( mul16u_compare::@3/(byte*) print_char_cursor#159 mul16u_compare::@7/(byte*) print_char_cursor#160 ) - (byte) mul16u_compare::i#4 ? phi( mul16u_compare::@3/(byte) mul16u_compare::i#5 mul16u_compare::@7/(byte) mul16u_compare::i#6 ) - (dword) mul16u_compare::mf#2 ? phi( mul16u_compare::@3/(dword) mul16u_compare::mf#3 mul16u_compare::@7/(dword) mul16u_compare::mf#4 ) - (dword) mul16u_compare::mn#5 ? phi( mul16u_compare::@3/(dword) mul16u_compare::mn#1 mul16u_compare::@7/(dword) mul16u_compare::mn#6 ) - (dword) mul16u_compare::ms#6 ? phi( mul16u_compare::@3/(dword) mul16u_compare::ms#2 mul16u_compare::@7/(dword) mul16u_compare::ms#7 ) - (word) mul16u_compare::b#8 ? phi( mul16u_compare::@3/(word) mul16u_compare::b#10 mul16u_compare::@7/(word) mul16u_compare::b#11 ) - (word) mul16u_compare::a#8 ? phi( mul16u_compare::@3/(word) mul16u_compare::a#10 mul16u_compare::@7/(word) mul16u_compare::a#11 ) - (byte) mul16u_compare::j#3 ? phi( mul16u_compare::@3/(byte) mul16u_compare::j#4 mul16u_compare::@7/(byte) mul16u_compare::j#5 ) - (byte) mul16u_compare::ok#3 ? phi( mul16u_compare::@3/(byte) mul16u_compare::ok#4 mul16u_compare::@7/(byte) mul16u_compare::ok#2 ) - (bool~) mul16u_compare::$13 ? (byte) mul16u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16u_compare::$14 ? ! (bool~) mul16u_compare::$13 + (byte*) print_line_cursor#55 ← phi( mul16u_compare::@3/(byte*) print_line_cursor#63 mul16u_compare::@7/(byte*) print_line_cursor#64 ) + (byte*) print_char_cursor#153 ← phi( mul16u_compare::@3/(byte*) print_char_cursor#159 mul16u_compare::@7/(byte*) print_char_cursor#160 ) + (byte) mul16u_compare::i#4 ← phi( mul16u_compare::@3/(byte) mul16u_compare::i#5 mul16u_compare::@7/(byte) mul16u_compare::i#6 ) + (dword) mul16u_compare::mf#2 ← phi( mul16u_compare::@3/(dword) mul16u_compare::mf#3 mul16u_compare::@7/(dword) mul16u_compare::mf#4 ) + (dword) mul16u_compare::mn#5 ← phi( mul16u_compare::@3/(dword) mul16u_compare::mn#1 mul16u_compare::@7/(dword) mul16u_compare::mn#6 ) + (dword) mul16u_compare::ms#6 ← phi( mul16u_compare::@3/(dword) mul16u_compare::ms#2 mul16u_compare::@7/(dword) mul16u_compare::ms#7 ) + (word) mul16u_compare::b#8 ← phi( mul16u_compare::@3/(word) mul16u_compare::b#10 mul16u_compare::@7/(word) mul16u_compare::b#11 ) + (word) mul16u_compare::a#8 ← phi( mul16u_compare::@3/(word) mul16u_compare::a#10 mul16u_compare::@7/(word) mul16u_compare::a#11 ) + (byte) mul16u_compare::j#3 ← phi( mul16u_compare::@3/(byte) mul16u_compare::j#4 mul16u_compare::@7/(byte) mul16u_compare::j#5 ) + (byte) mul16u_compare::ok#3 ← phi( mul16u_compare::@3/(byte) mul16u_compare::ok#4 mul16u_compare::@7/(byte) mul16u_compare::ok#2 ) + (bool~) mul16u_compare::$13 ← (byte) mul16u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16u_compare::$14 ← ! (bool~) mul16u_compare::$13 if((bool~) mul16u_compare::$14) goto mul16u_compare::@5 to:mul16u_compare::@8 mul16u_compare::@7: scope:[mul16u_compare] from mul16u_compare::@3 - (byte*) print_line_cursor#64 ? phi( mul16u_compare::@3/(byte*) print_line_cursor#63 ) - (byte*) print_char_cursor#160 ? phi( mul16u_compare::@3/(byte*) print_char_cursor#159 ) - (byte) mul16u_compare::i#6 ? phi( mul16u_compare::@3/(byte) mul16u_compare::i#5 ) - (dword) mul16u_compare::mf#4 ? phi( mul16u_compare::@3/(dword) mul16u_compare::mf#3 ) - (dword) mul16u_compare::mn#6 ? phi( mul16u_compare::@3/(dword) mul16u_compare::mn#1 ) - (dword) mul16u_compare::ms#7 ? phi( mul16u_compare::@3/(dword) mul16u_compare::ms#2 ) - (word) mul16u_compare::b#11 ? phi( mul16u_compare::@3/(word) mul16u_compare::b#10 ) - (word) mul16u_compare::a#11 ? phi( mul16u_compare::@3/(word) mul16u_compare::a#10 ) - (byte) mul16u_compare::j#5 ? phi( mul16u_compare::@3/(byte) mul16u_compare::j#4 ) - (byte) mul16u_compare::ok#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#64 ← phi( mul16u_compare::@3/(byte*) print_line_cursor#63 ) + (byte*) print_char_cursor#160 ← phi( mul16u_compare::@3/(byte*) print_char_cursor#159 ) + (byte) mul16u_compare::i#6 ← phi( mul16u_compare::@3/(byte) mul16u_compare::i#5 ) + (dword) mul16u_compare::mf#4 ← phi( mul16u_compare::@3/(dword) mul16u_compare::mf#3 ) + (dword) mul16u_compare::mn#6 ← phi( mul16u_compare::@3/(dword) mul16u_compare::mn#1 ) + (dword) mul16u_compare::ms#7 ← phi( mul16u_compare::@3/(dword) mul16u_compare::ms#2 ) + (word) mul16u_compare::b#11 ← phi( mul16u_compare::@3/(word) mul16u_compare::b#10 ) + (word) mul16u_compare::a#11 ← phi( mul16u_compare::@3/(word) mul16u_compare::a#10 ) + (byte) mul16u_compare::j#5 ← phi( mul16u_compare::@3/(byte) mul16u_compare::j#4 ) + (byte) mul16u_compare::ok#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16u_compare::@4 mul16u_compare::@5: scope:[mul16u_compare] from mul16u_compare::@4 - (byte*) print_line_cursor#65 ? phi( mul16u_compare::@4/(byte*) print_line_cursor#55 ) - (byte*) print_char_cursor#161 ? phi( mul16u_compare::@4/(byte*) print_char_cursor#153 ) - (byte) mul16u_compare::i#3 ? phi( mul16u_compare::@4/(byte) mul16u_compare::i#4 ) - (word) mul16u_compare::b#7 ? phi( mul16u_compare::@4/(word) mul16u_compare::b#8 ) - (word) mul16u_compare::a#7 ? phi( mul16u_compare::@4/(word) mul16u_compare::a#8 ) - (byte) mul16u_compare::j#2 ? phi( mul16u_compare::@4/(byte) mul16u_compare::j#3 ) - (byte) mul16u_compare::j#1 ? (byte) mul16u_compare::j#2 + rangenext(0,$f) - (bool~) mul16u_compare::$16 ? (byte) mul16u_compare::j#1 != rangelast(0,$f) + (byte*) print_line_cursor#65 ← phi( mul16u_compare::@4/(byte*) print_line_cursor#55 ) + (byte*) print_char_cursor#161 ← phi( mul16u_compare::@4/(byte*) print_char_cursor#153 ) + (byte) mul16u_compare::i#3 ← phi( mul16u_compare::@4/(byte) mul16u_compare::i#4 ) + (word) mul16u_compare::b#7 ← phi( mul16u_compare::@4/(word) mul16u_compare::b#8 ) + (word) mul16u_compare::a#7 ← phi( mul16u_compare::@4/(word) mul16u_compare::a#8 ) + (byte) mul16u_compare::j#2 ← phi( mul16u_compare::@4/(byte) mul16u_compare::j#3 ) + (byte) mul16u_compare::j#1 ← (byte) mul16u_compare::j#2 + rangenext(0,$f) + (bool~) mul16u_compare::$16 ← (byte) mul16u_compare::j#1 != rangelast(0,$f) if((bool~) mul16u_compare::$16) goto mul16u_compare::@2 to:mul16u_compare::@10 mul16u_compare::@8: scope:[mul16u_compare] from mul16u_compare::@4 - (byte*) print_line_cursor#46 ? phi( mul16u_compare::@4/(byte*) print_line_cursor#55 ) - (byte*) print_char_cursor#140 ? phi( mul16u_compare::@4/(byte*) print_char_cursor#153 ) - (dword) mul16u_compare::mf#1 ? phi( mul16u_compare::@4/(dword) mul16u_compare::mf#2 ) - (dword) mul16u_compare::mn#2 ? phi( mul16u_compare::@4/(dword) mul16u_compare::mn#5 ) - (dword) mul16u_compare::ms#3 ? phi( mul16u_compare::@4/(dword) mul16u_compare::ms#6 ) - (word) mul16u_compare::b#5 ? phi( mul16u_compare::@4/(word) mul16u_compare::b#8 ) - (word) mul16u_compare::a#5 ? phi( mul16u_compare::@4/(word) mul16u_compare::a#8 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (word) mul16u_error::a#0 ? (word) mul16u_compare::a#5 - (word) mul16u_error::b#0 ? (word) mul16u_compare::b#5 - (dword) mul16u_error::ms#0 ? (dword) mul16u_compare::ms#3 - (dword) mul16u_error::mn#0 ? (dword) mul16u_compare::mn#2 - (dword) mul16u_error::mf#0 ? (dword) mul16u_compare::mf#1 + (byte*) print_line_cursor#46 ← phi( mul16u_compare::@4/(byte*) print_line_cursor#55 ) + (byte*) print_char_cursor#140 ← phi( mul16u_compare::@4/(byte*) print_char_cursor#153 ) + (dword) mul16u_compare::mf#1 ← phi( mul16u_compare::@4/(dword) mul16u_compare::mf#2 ) + (dword) mul16u_compare::mn#2 ← phi( mul16u_compare::@4/(dword) mul16u_compare::mn#5 ) + (dword) mul16u_compare::ms#3 ← phi( mul16u_compare::@4/(dword) mul16u_compare::ms#6 ) + (word) mul16u_compare::b#5 ← phi( mul16u_compare::@4/(word) mul16u_compare::b#8 ) + (word) mul16u_compare::a#5 ← phi( mul16u_compare::@4/(word) mul16u_compare::a#8 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (word) mul16u_error::a#0 ← (word) mul16u_compare::a#5 + (word) mul16u_error::b#0 ← (word) mul16u_compare::b#5 + (dword) mul16u_error::ms#0 ← (dword) mul16u_compare::ms#3 + (dword) mul16u_error::mn#0 ← (dword) mul16u_compare::mn#2 + (dword) mul16u_error::mf#0 ← (dword) mul16u_compare::mf#1 call mul16u_error to:mul16u_compare::@16 mul16u_compare::@16: scope:[mul16u_compare] from mul16u_compare::@8 - (byte*) print_line_cursor#30 ? phi( mul16u_compare::@8/(byte*) print_line_cursor#14 ) - (byte*) print_char_cursor#92 ? phi( mul16u_compare::@8/(byte*) print_char_cursor#45 ) - (byte*) print_char_cursor#29 ? (byte*) print_char_cursor#92 - (byte*) print_line_cursor#9 ? (byte*) print_line_cursor#30 + (byte*) print_line_cursor#30 ← phi( mul16u_compare::@8/(byte*) print_line_cursor#14 ) + (byte*) print_char_cursor#92 ← phi( mul16u_compare::@8/(byte*) print_char_cursor#45 ) + (byte*) print_char_cursor#29 ← (byte*) print_char_cursor#92 + (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#30 to:mul16u_compare::@return mul16u_compare::@return: scope:[mul16u_compare] from mul16u_compare::@16 mul16u_compare::@19 - (byte*) print_line_cursor#31 ? phi( mul16u_compare::@16/(byte*) print_line_cursor#9 mul16u_compare::@19/(byte*) print_line_cursor#12 ) - (byte*) print_char_cursor#93 ? phi( mul16u_compare::@16/(byte*) print_char_cursor#29 mul16u_compare::@19/(byte*) print_char_cursor#33 ) - (byte*) print_char_cursor#30 ? (byte*) print_char_cursor#93 - (byte*) print_line_cursor#10 ? (byte*) print_line_cursor#31 + (byte*) print_line_cursor#31 ← phi( mul16u_compare::@16/(byte*) print_line_cursor#9 mul16u_compare::@19/(byte*) print_line_cursor#12 ) + (byte*) print_char_cursor#93 ← phi( mul16u_compare::@16/(byte*) print_char_cursor#29 mul16u_compare::@19/(byte*) print_char_cursor#33 ) + (byte*) print_char_cursor#30 ← (byte*) print_char_cursor#93 + (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#31 return to:@return mul16u_compare::@10: scope:[mul16u_compare] from mul16u_compare::@5 - (word) mul16u_compare::b#12 ? phi( mul16u_compare::@5/(word) mul16u_compare::b#7 ) - (word) mul16u_compare::a#12 ? phi( mul16u_compare::@5/(word) mul16u_compare::a#7 ) - (byte*) print_line_cursor#56 ? phi( mul16u_compare::@5/(byte*) print_line_cursor#65 ) - (byte*) print_char_cursor#152 ? phi( mul16u_compare::@5/(byte*) print_char_cursor#161 ) - (byte) mul16u_compare::i#2 ? phi( mul16u_compare::@5/(byte) mul16u_compare::i#3 ) - (byte) mul16u_compare::i#1 ? (byte) mul16u_compare::i#2 + rangenext(0,$f) - (bool~) mul16u_compare::$17 ? (byte) mul16u_compare::i#1 != rangelast(0,$f) + (word) mul16u_compare::b#12 ← phi( mul16u_compare::@5/(word) mul16u_compare::b#7 ) + (word) mul16u_compare::a#12 ← phi( mul16u_compare::@5/(word) mul16u_compare::a#7 ) + (byte*) print_line_cursor#56 ← phi( mul16u_compare::@5/(byte*) print_line_cursor#65 ) + (byte*) print_char_cursor#152 ← phi( mul16u_compare::@5/(byte*) print_char_cursor#161 ) + (byte) mul16u_compare::i#2 ← phi( mul16u_compare::@5/(byte) mul16u_compare::i#3 ) + (byte) mul16u_compare::i#1 ← (byte) mul16u_compare::i#2 + rangenext(0,$f) + (bool~) mul16u_compare::$17 ← (byte) mul16u_compare::i#1 != rangelast(0,$f) if((bool~) mul16u_compare::$17) goto mul16u_compare::@1 to:mul16u_compare::@11 mul16u_compare::@11: scope:[mul16u_compare] from mul16u_compare::@10 - (byte*) print_char_cursor#141 ? phi( mul16u_compare::@10/(byte*) print_char_cursor#152 ) - (byte*) print_line_cursor#47 ? phi( mul16u_compare::@10/(byte*) print_line_cursor#56 ) + (byte*) print_char_cursor#141 ← phi( mul16u_compare::@10/(byte*) print_char_cursor#152 ) + (byte*) print_line_cursor#47 ← phi( mul16u_compare::@10/(byte*) print_line_cursor#56 ) call print_ln to:mul16u_compare::@17 mul16u_compare::@17: scope:[mul16u_compare] from mul16u_compare::@11 - (byte*) print_char_cursor#94 ? phi( mul16u_compare::@11/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#32 ? phi( mul16u_compare::@11/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#11 ? (byte*) print_line_cursor#32 - (byte*) print_char_cursor#31 ? (byte*) print_char_cursor#94 - (byte*) print_str::str#2 ? (const string) mul16u_compare::str1 + (byte*) print_char_cursor#94 ← phi( mul16u_compare::@11/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#32 ← phi( mul16u_compare::@11/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#32 + (byte*) print_char_cursor#31 ← (byte*) print_char_cursor#94 + (byte*) print_str::str#2 ← (const string) mul16u_compare::str1 call print_str to:mul16u_compare::@18 mul16u_compare::@18: scope:[mul16u_compare] from mul16u_compare::@17 - (byte*) print_line_cursor#48 ? phi( mul16u_compare::@17/(byte*) print_line_cursor#11 ) - (byte*) print_char_cursor#95 ? phi( mul16u_compare::@17/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#32 ? (byte*) print_char_cursor#95 + (byte*) print_line_cursor#48 ← phi( mul16u_compare::@17/(byte*) print_line_cursor#11 ) + (byte*) print_char_cursor#95 ← phi( mul16u_compare::@17/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#32 ← (byte*) print_char_cursor#95 call print_ln to:mul16u_compare::@19 mul16u_compare::@19: scope:[mul16u_compare] from mul16u_compare::@18 - (byte*) print_char_cursor#96 ? phi( mul16u_compare::@18/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#33 ? phi( mul16u_compare::@18/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#12 ? (byte*) print_line_cursor#33 - (byte*) print_char_cursor#33 ? (byte*) print_char_cursor#96 + (byte*) print_char_cursor#96 ← phi( mul16u_compare::@18/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#33 ← phi( mul16u_compare::@18/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#12 ← (byte*) print_line_cursor#33 + (byte*) print_char_cursor#33 ← (byte*) print_char_cursor#96 to:mul16u_compare::@return mul16u_error: scope:[mul16u_error] from mul16u_compare::@8 - (byte*) print_line_cursor#102 ? phi( mul16u_compare::@8/(byte*) print_line_cursor#46 ) - (dword) mul16u_error::mf#10 ? phi( mul16u_compare::@8/(dword) mul16u_error::mf#0 ) - (dword) mul16u_error::mn#8 ? phi( mul16u_compare::@8/(dword) mul16u_error::mn#0 ) - (dword) mul16u_error::ms#6 ? phi( mul16u_compare::@8/(dword) mul16u_error::ms#0 ) - (word) mul16u_error::b#4 ? phi( mul16u_compare::@8/(word) mul16u_error::b#0 ) - (word) mul16u_error::a#2 ? phi( mul16u_compare::@8/(word) mul16u_error::a#0 ) - (byte*) print_char_cursor#142 ? phi( mul16u_compare::@8/(byte*) print_char_cursor#140 ) - (byte*) print_str::str#3 ? (const string) mul16u_error::str + (byte*) print_line_cursor#102 ← phi( mul16u_compare::@8/(byte*) print_line_cursor#46 ) + (dword) mul16u_error::mf#10 ← phi( mul16u_compare::@8/(dword) mul16u_error::mf#0 ) + (dword) mul16u_error::mn#8 ← phi( mul16u_compare::@8/(dword) mul16u_error::mn#0 ) + (dword) mul16u_error::ms#6 ← phi( mul16u_compare::@8/(dword) mul16u_error::ms#0 ) + (word) mul16u_error::b#4 ← phi( mul16u_compare::@8/(word) mul16u_error::b#0 ) + (word) mul16u_error::a#2 ← phi( mul16u_compare::@8/(word) mul16u_error::a#0 ) + (byte*) print_char_cursor#142 ← phi( mul16u_compare::@8/(byte*) print_char_cursor#140 ) + (byte*) print_str::str#3 ← (const string) mul16u_error::str call print_str to:mul16u_error::@1 mul16u_error::@1: scope:[mul16u_error] from mul16u_error - (byte*) print_line_cursor#99 ? phi( mul16u_error/(byte*) print_line_cursor#102 ) - (dword) mul16u_error::mf#9 ? phi( mul16u_error/(dword) mul16u_error::mf#10 ) - (dword) mul16u_error::mn#7 ? phi( mul16u_error/(dword) mul16u_error::mn#8 ) - (dword) mul16u_error::ms#5 ? phi( mul16u_error/(dword) mul16u_error::ms#6 ) - (word) mul16u_error::b#3 ? phi( mul16u_error/(word) mul16u_error::b#4 ) - (word) mul16u_error::a#1 ? phi( mul16u_error/(word) mul16u_error::a#2 ) - (byte*) print_char_cursor#97 ? phi( mul16u_error/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#34 ? (byte*) print_char_cursor#97 - (word) print_word::w#3 ? (word) mul16u_error::a#1 + (byte*) print_line_cursor#99 ← phi( mul16u_error/(byte*) print_line_cursor#102 ) + (dword) mul16u_error::mf#9 ← phi( mul16u_error/(dword) mul16u_error::mf#10 ) + (dword) mul16u_error::mn#7 ← phi( mul16u_error/(dword) mul16u_error::mn#8 ) + (dword) mul16u_error::ms#5 ← phi( mul16u_error/(dword) mul16u_error::ms#6 ) + (word) mul16u_error::b#3 ← phi( mul16u_error/(word) mul16u_error::b#4 ) + (word) mul16u_error::a#1 ← phi( mul16u_error/(word) mul16u_error::a#2 ) + (byte*) print_char_cursor#97 ← phi( mul16u_error/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#34 ← (byte*) print_char_cursor#97 + (word) print_word::w#3 ← (word) mul16u_error::a#1 call print_word to:mul16u_error::@2 mul16u_error::@2: scope:[mul16u_error] from mul16u_error::@1 - (byte*) print_line_cursor#95 ? phi( mul16u_error::@1/(byte*) print_line_cursor#99 ) - (dword) mul16u_error::mf#8 ? phi( mul16u_error::@1/(dword) mul16u_error::mf#9 ) - (dword) mul16u_error::mn#6 ? phi( mul16u_error::@1/(dword) mul16u_error::mn#7 ) - (dword) mul16u_error::ms#4 ? phi( mul16u_error::@1/(dword) mul16u_error::ms#5 ) - (word) mul16u_error::b#2 ? phi( mul16u_error::@1/(word) mul16u_error::b#3 ) - (byte*) print_char_cursor#98 ? phi( mul16u_error::@1/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#35 ? (byte*) print_char_cursor#98 - (byte*) print_str::str#4 ? (const string) mul16u_error::str1 + (byte*) print_line_cursor#95 ← phi( mul16u_error::@1/(byte*) print_line_cursor#99 ) + (dword) mul16u_error::mf#8 ← phi( mul16u_error::@1/(dword) mul16u_error::mf#9 ) + (dword) mul16u_error::mn#6 ← phi( mul16u_error::@1/(dword) mul16u_error::mn#7 ) + (dword) mul16u_error::ms#4 ← phi( mul16u_error::@1/(dword) mul16u_error::ms#5 ) + (word) mul16u_error::b#2 ← phi( mul16u_error::@1/(word) mul16u_error::b#3 ) + (byte*) print_char_cursor#98 ← phi( mul16u_error::@1/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#35 ← (byte*) print_char_cursor#98 + (byte*) print_str::str#4 ← (const string) mul16u_error::str1 call print_str to:mul16u_error::@3 mul16u_error::@3: scope:[mul16u_error] from mul16u_error::@2 - (byte*) print_line_cursor#91 ? phi( mul16u_error::@2/(byte*) print_line_cursor#95 ) - (dword) mul16u_error::mf#7 ? phi( mul16u_error::@2/(dword) mul16u_error::mf#8 ) - (dword) mul16u_error::mn#5 ? phi( mul16u_error::@2/(dword) mul16u_error::mn#6 ) - (dword) mul16u_error::ms#3 ? phi( mul16u_error::@2/(dword) mul16u_error::ms#4 ) - (word) mul16u_error::b#1 ? phi( mul16u_error::@2/(word) mul16u_error::b#2 ) - (byte*) print_char_cursor#99 ? phi( mul16u_error::@2/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#36 ? (byte*) print_char_cursor#99 - (word) print_word::w#4 ? (word) mul16u_error::b#1 + (byte*) print_line_cursor#91 ← phi( mul16u_error::@2/(byte*) print_line_cursor#95 ) + (dword) mul16u_error::mf#7 ← phi( mul16u_error::@2/(dword) mul16u_error::mf#8 ) + (dword) mul16u_error::mn#5 ← phi( mul16u_error::@2/(dword) mul16u_error::mn#6 ) + (dword) mul16u_error::ms#3 ← phi( mul16u_error::@2/(dword) mul16u_error::ms#4 ) + (word) mul16u_error::b#1 ← phi( mul16u_error::@2/(word) mul16u_error::b#2 ) + (byte*) print_char_cursor#99 ← phi( mul16u_error::@2/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#36 ← (byte*) print_char_cursor#99 + (word) print_word::w#4 ← (word) mul16u_error::b#1 call print_word to:mul16u_error::@4 mul16u_error::@4: scope:[mul16u_error] from mul16u_error::@3 - (byte*) print_line_cursor#87 ? phi( mul16u_error::@3/(byte*) print_line_cursor#91 ) - (dword) mul16u_error::mf#6 ? phi( mul16u_error::@3/(dword) mul16u_error::mf#7 ) - (dword) mul16u_error::mn#4 ? phi( mul16u_error::@3/(dword) mul16u_error::mn#5 ) - (dword) mul16u_error::ms#2 ? phi( mul16u_error::@3/(dword) mul16u_error::ms#3 ) - (byte*) print_char_cursor#100 ? phi( mul16u_error::@3/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#37 ? (byte*) print_char_cursor#100 - (byte*) print_str::str#5 ? (const string) mul16u_error::str2 + (byte*) print_line_cursor#87 ← phi( mul16u_error::@3/(byte*) print_line_cursor#91 ) + (dword) mul16u_error::mf#6 ← phi( mul16u_error::@3/(dword) mul16u_error::mf#7 ) + (dword) mul16u_error::mn#4 ← phi( mul16u_error::@3/(dword) mul16u_error::mn#5 ) + (dword) mul16u_error::ms#2 ← phi( mul16u_error::@3/(dword) mul16u_error::ms#3 ) + (byte*) print_char_cursor#100 ← phi( mul16u_error::@3/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#37 ← (byte*) print_char_cursor#100 + (byte*) print_str::str#5 ← (const string) mul16u_error::str2 call print_str to:mul16u_error::@5 mul16u_error::@5: scope:[mul16u_error] from mul16u_error::@4 - (byte*) print_line_cursor#83 ? phi( mul16u_error::@4/(byte*) print_line_cursor#87 ) - (dword) mul16u_error::mf#5 ? phi( mul16u_error::@4/(dword) mul16u_error::mf#6 ) - (dword) mul16u_error::mn#3 ? phi( mul16u_error::@4/(dword) mul16u_error::mn#4 ) - (dword) mul16u_error::ms#1 ? phi( mul16u_error::@4/(dword) mul16u_error::ms#2 ) - (byte*) print_char_cursor#101 ? phi( mul16u_error::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#38 ? (byte*) print_char_cursor#101 - (dword) print_dword::dw#1 ? (dword) mul16u_error::ms#1 + (byte*) print_line_cursor#83 ← phi( mul16u_error::@4/(byte*) print_line_cursor#87 ) + (dword) mul16u_error::mf#5 ← phi( mul16u_error::@4/(dword) mul16u_error::mf#6 ) + (dword) mul16u_error::mn#3 ← phi( mul16u_error::@4/(dword) mul16u_error::mn#4 ) + (dword) mul16u_error::ms#1 ← phi( mul16u_error::@4/(dword) mul16u_error::ms#2 ) + (byte*) print_char_cursor#101 ← phi( mul16u_error::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#38 ← (byte*) print_char_cursor#101 + (dword) print_dword::dw#1 ← (dword) mul16u_error::ms#1 call print_dword to:mul16u_error::@6 mul16u_error::@6: scope:[mul16u_error] from mul16u_error::@5 - (byte*) print_line_cursor#79 ? phi( mul16u_error::@5/(byte*) print_line_cursor#83 ) - (dword) mul16u_error::mf#4 ? phi( mul16u_error::@5/(dword) mul16u_error::mf#5 ) - (dword) mul16u_error::mn#2 ? phi( mul16u_error::@5/(dword) mul16u_error::mn#3 ) - (byte*) print_char_cursor#102 ? phi( mul16u_error::@5/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#39 ? (byte*) print_char_cursor#102 - (byte*) print_str::str#6 ? (const string) mul16u_error::str3 + (byte*) print_line_cursor#79 ← phi( mul16u_error::@5/(byte*) print_line_cursor#83 ) + (dword) mul16u_error::mf#4 ← phi( mul16u_error::@5/(dword) mul16u_error::mf#5 ) + (dword) mul16u_error::mn#2 ← phi( mul16u_error::@5/(dword) mul16u_error::mn#3 ) + (byte*) print_char_cursor#102 ← phi( mul16u_error::@5/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#39 ← (byte*) print_char_cursor#102 + (byte*) print_str::str#6 ← (const string) mul16u_error::str3 call print_str to:mul16u_error::@7 mul16u_error::@7: scope:[mul16u_error] from mul16u_error::@6 - (byte*) print_line_cursor#74 ? phi( mul16u_error::@6/(byte*) print_line_cursor#79 ) - (dword) mul16u_error::mf#3 ? phi( mul16u_error::@6/(dword) mul16u_error::mf#4 ) - (dword) mul16u_error::mn#1 ? phi( mul16u_error::@6/(dword) mul16u_error::mn#2 ) - (byte*) print_char_cursor#103 ? phi( mul16u_error::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#40 ? (byte*) print_char_cursor#103 - (dword) print_dword::dw#2 ? (dword) mul16u_error::mn#1 + (byte*) print_line_cursor#74 ← phi( mul16u_error::@6/(byte*) print_line_cursor#79 ) + (dword) mul16u_error::mf#3 ← phi( mul16u_error::@6/(dword) mul16u_error::mf#4 ) + (dword) mul16u_error::mn#1 ← phi( mul16u_error::@6/(dword) mul16u_error::mn#2 ) + (byte*) print_char_cursor#103 ← phi( mul16u_error::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#40 ← (byte*) print_char_cursor#103 + (dword) print_dword::dw#2 ← (dword) mul16u_error::mn#1 call print_dword to:mul16u_error::@8 mul16u_error::@8: scope:[mul16u_error] from mul16u_error::@7 - (byte*) print_line_cursor#66 ? phi( mul16u_error::@7/(byte*) print_line_cursor#74 ) - (dword) mul16u_error::mf#2 ? phi( mul16u_error::@7/(dword) mul16u_error::mf#3 ) - (byte*) print_char_cursor#104 ? phi( mul16u_error::@7/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#41 ? (byte*) print_char_cursor#104 - (byte*) print_str::str#7 ? (const string) mul16u_error::str4 + (byte*) print_line_cursor#66 ← phi( mul16u_error::@7/(byte*) print_line_cursor#74 ) + (dword) mul16u_error::mf#2 ← phi( mul16u_error::@7/(dword) mul16u_error::mf#3 ) + (byte*) print_char_cursor#104 ← phi( mul16u_error::@7/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#41 ← (byte*) print_char_cursor#104 + (byte*) print_str::str#7 ← (const string) mul16u_error::str4 call print_str to:mul16u_error::@9 mul16u_error::@9: scope:[mul16u_error] from mul16u_error::@8 - (byte*) print_line_cursor#57 ? phi( mul16u_error::@8/(byte*) print_line_cursor#66 ) - (dword) mul16u_error::mf#1 ? phi( mul16u_error::@8/(dword) mul16u_error::mf#2 ) - (byte*) print_char_cursor#105 ? phi( mul16u_error::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#42 ? (byte*) print_char_cursor#105 - (dword) print_dword::dw#3 ? (dword) mul16u_error::mf#1 + (byte*) print_line_cursor#57 ← phi( mul16u_error::@8/(byte*) print_line_cursor#66 ) + (dword) mul16u_error::mf#1 ← phi( mul16u_error::@8/(dword) mul16u_error::mf#2 ) + (byte*) print_char_cursor#105 ← phi( mul16u_error::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#42 ← (byte*) print_char_cursor#105 + (dword) print_dword::dw#3 ← (dword) mul16u_error::mf#1 call print_dword to:mul16u_error::@10 mul16u_error::@10: scope:[mul16u_error] from mul16u_error::@9 - (byte*) print_line_cursor#49 ? phi( mul16u_error::@9/(byte*) print_line_cursor#57 ) - (byte*) print_char_cursor#106 ? phi( mul16u_error::@9/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#43 ? (byte*) print_char_cursor#106 + (byte*) print_line_cursor#49 ← phi( mul16u_error::@9/(byte*) print_line_cursor#57 ) + (byte*) print_char_cursor#106 ← phi( mul16u_error::@9/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#43 ← (byte*) print_char_cursor#106 call print_ln to:mul16u_error::@11 mul16u_error::@11: scope:[mul16u_error] from mul16u_error::@10 - (byte*) print_char_cursor#107 ? phi( mul16u_error::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#34 ? phi( mul16u_error::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#13 ? (byte*) print_line_cursor#34 - (byte*) print_char_cursor#44 ? (byte*) print_char_cursor#107 + (byte*) print_char_cursor#107 ← phi( mul16u_error::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#34 ← phi( mul16u_error::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#13 ← (byte*) print_line_cursor#34 + (byte*) print_char_cursor#44 ← (byte*) print_char_cursor#107 to:mul16u_error::@return mul16u_error::@return: scope:[mul16u_error] from mul16u_error::@11 - (byte*) print_line_cursor#35 ? phi( mul16u_error::@11/(byte*) print_line_cursor#13 ) - (byte*) print_char_cursor#108 ? phi( mul16u_error::@11/(byte*) print_char_cursor#44 ) - (byte*) print_char_cursor#45 ? (byte*) print_char_cursor#108 - (byte*) print_line_cursor#14 ? (byte*) print_line_cursor#35 + (byte*) print_line_cursor#35 ← phi( mul16u_error::@11/(byte*) print_line_cursor#13 ) + (byte*) print_char_cursor#108 ← phi( mul16u_error::@11/(byte*) print_char_cursor#44 ) + (byte*) print_char_cursor#45 ← (byte*) print_char_cursor#108 + (byte*) print_line_cursor#14 ← (byte*) print_line_cursor#35 return to:@return mul16s_compare: scope:[mul16s_compare] from main::@3 - (byte*) print_line_cursor#100 ? phi( main::@3/(byte*) print_line_cursor#6 ) - (byte*) print_char_cursor#154 ? phi( main::@3/(byte*) print_char_cursor#25 ) - (signed word/signed dword~) mul16s_compare::$0 ? - (word/signed word/dword/signed dword) $7fff - (signed word) mul16s_compare::a#0 ? (signed word/signed dword~) mul16s_compare::$0 - (signed word/signed dword~) mul16s_compare::$1 ? - (word/signed word/dword/signed dword) $7fff - (signed word) mul16s_compare::b#0 ? (signed word/signed dword~) mul16s_compare::$1 - (byte) mul16s_compare::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#100 ← phi( main::@3/(byte*) print_line_cursor#6 ) + (byte*) print_char_cursor#154 ← phi( main::@3/(byte*) print_char_cursor#25 ) + (signed word/signed dword~) mul16s_compare::$0 ← - (word/signed word/dword/signed dword) $7fff + (signed word) mul16s_compare::a#0 ← (signed word/signed dword~) mul16s_compare::$0 + (signed word/signed dword~) mul16s_compare::$1 ← - (word/signed word/dword/signed dword) $7fff + (signed word) mul16s_compare::b#0 ← (signed word/signed dword~) mul16s_compare::$1 + (byte) mul16s_compare::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16s_compare::@1 mul16s_compare::@1: scope:[mul16s_compare] from mul16s_compare mul16s_compare::@10 - (byte*) print_line_cursor#96 ? phi( mul16s_compare/(byte*) print_line_cursor#100 mul16s_compare::@10/(byte*) print_line_cursor#59 ) - (byte) mul16s_compare::i#13 ? phi( mul16s_compare/(byte) mul16s_compare::i#0 mul16s_compare::@10/(byte) mul16s_compare::i#1 ) - (signed word) mul16s_compare::b#9 ? phi( mul16s_compare/(signed word) mul16s_compare::b#0 mul16s_compare::@10/(signed word) mul16s_compare::b#12 ) - (signed word) mul16s_compare::a#9 ? phi( mul16s_compare/(signed word) mul16s_compare::a#0 mul16s_compare::@10/(signed word) mul16s_compare::a#12 ) - (byte*) print_char_cursor#143 ? phi( mul16s_compare/(byte*) print_char_cursor#154 mul16s_compare::@10/(byte*) print_char_cursor#155 ) - (byte*) print_str::str#8 ? (const string) mul16s_compare::str + (byte*) print_line_cursor#96 ← phi( mul16s_compare/(byte*) print_line_cursor#100 mul16s_compare::@10/(byte*) print_line_cursor#59 ) + (byte) mul16s_compare::i#13 ← phi( mul16s_compare/(byte) mul16s_compare::i#0 mul16s_compare::@10/(byte) mul16s_compare::i#1 ) + (signed word) mul16s_compare::b#9 ← phi( mul16s_compare/(signed word) mul16s_compare::b#0 mul16s_compare::@10/(signed word) mul16s_compare::b#12 ) + (signed word) mul16s_compare::a#9 ← phi( mul16s_compare/(signed word) mul16s_compare::a#0 mul16s_compare::@10/(signed word) mul16s_compare::a#12 ) + (byte*) print_char_cursor#143 ← phi( mul16s_compare/(byte*) print_char_cursor#154 mul16s_compare::@10/(byte*) print_char_cursor#155 ) + (byte*) print_str::str#8 ← (const string) mul16s_compare::str call print_str to:mul16s_compare::@12 mul16s_compare::@12: scope:[mul16s_compare] from mul16s_compare::@1 - (byte*) print_line_cursor#92 ? phi( mul16s_compare::@1/(byte*) print_line_cursor#96 ) - (byte) mul16s_compare::i#12 ? phi( mul16s_compare::@1/(byte) mul16s_compare::i#13 ) - (signed word) mul16s_compare::b#6 ? phi( mul16s_compare::@1/(signed word) mul16s_compare::b#9 ) - (signed word) mul16s_compare::a#6 ? phi( mul16s_compare::@1/(signed word) mul16s_compare::a#9 ) - (byte*) print_char_cursor#109 ? phi( mul16s_compare::@1/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#46 ? (byte*) print_char_cursor#109 - (byte) mul16s_compare::j#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#92 ← phi( mul16s_compare::@1/(byte*) print_line_cursor#96 ) + (byte) mul16s_compare::i#12 ← phi( mul16s_compare::@1/(byte) mul16s_compare::i#13 ) + (signed word) mul16s_compare::b#6 ← phi( mul16s_compare::@1/(signed word) mul16s_compare::b#9 ) + (signed word) mul16s_compare::a#6 ← phi( mul16s_compare::@1/(signed word) mul16s_compare::a#9 ) + (byte*) print_char_cursor#109 ← phi( mul16s_compare::@1/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#46 ← (byte*) print_char_cursor#109 + (byte) mul16s_compare::j#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16s_compare::@2 mul16s_compare::@2: scope:[mul16s_compare] from mul16s_compare::@12 mul16s_compare::@5 - (byte*) print_line_cursor#88 ? phi( mul16s_compare::@12/(byte*) print_line_cursor#92 mul16s_compare::@5/(byte*) print_line_cursor#69 ) - (byte*) print_char_cursor#175 ? phi( mul16s_compare::@12/(byte*) print_char_cursor#46 mul16s_compare::@5/(byte*) print_char_cursor#164 ) - (byte) mul16s_compare::i#11 ? phi( mul16s_compare::@12/(byte) mul16s_compare::i#12 mul16s_compare::@5/(byte) mul16s_compare::i#3 ) - (byte) mul16s_compare::j#10 ? phi( mul16s_compare::@12/(byte) mul16s_compare::j#0 mul16s_compare::@5/(byte) mul16s_compare::j#1 ) - (signed word) mul16s_compare::b#2 ? phi( mul16s_compare::@12/(signed word) mul16s_compare::b#6 mul16s_compare::@5/(signed word) mul16s_compare::b#7 ) - (signed word) mul16s_compare::a#2 ? phi( mul16s_compare::@12/(signed word) mul16s_compare::a#6 mul16s_compare::@5/(signed word) mul16s_compare::a#7 ) - (signed dword/signed word~) mul16s_compare::$6 ? (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b - (signed word) mul16s_compare::a#1 ? (signed dword/signed word~) mul16s_compare::$6 - (signed dword/signed word~) mul16s_compare::$7 ? (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd - (signed word) mul16s_compare::b#1 ? (signed dword/signed word~) mul16s_compare::$7 - (signed word) muls16s::a#0 ? (signed word) mul16s_compare::a#1 - (signed word) muls16s::b#0 ? (signed word) mul16s_compare::b#1 + (byte*) print_line_cursor#88 ← phi( mul16s_compare::@12/(byte*) print_line_cursor#92 mul16s_compare::@5/(byte*) print_line_cursor#69 ) + (byte*) print_char_cursor#175 ← phi( mul16s_compare::@12/(byte*) print_char_cursor#46 mul16s_compare::@5/(byte*) print_char_cursor#164 ) + (byte) mul16s_compare::i#11 ← phi( mul16s_compare::@12/(byte) mul16s_compare::i#12 mul16s_compare::@5/(byte) mul16s_compare::i#3 ) + (byte) mul16s_compare::j#10 ← phi( mul16s_compare::@12/(byte) mul16s_compare::j#0 mul16s_compare::@5/(byte) mul16s_compare::j#1 ) + (signed word) mul16s_compare::b#2 ← phi( mul16s_compare::@12/(signed word) mul16s_compare::b#6 mul16s_compare::@5/(signed word) mul16s_compare::b#7 ) + (signed word) mul16s_compare::a#2 ← phi( mul16s_compare::@12/(signed word) mul16s_compare::a#6 mul16s_compare::@5/(signed word) mul16s_compare::a#7 ) + (signed dword/signed word~) mul16s_compare::$6 ← (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b + (signed word) mul16s_compare::a#1 ← (signed dword/signed word~) mul16s_compare::$6 + (signed dword/signed word~) mul16s_compare::$7 ← (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd + (signed word) mul16s_compare::b#1 ← (signed dword/signed word~) mul16s_compare::$7 + (signed word) muls16s::a#0 ← (signed word) mul16s_compare::a#1 + (signed word) muls16s::b#0 ← (signed word) mul16s_compare::b#1 call muls16s - (signed dword) muls16s::return#2 ? (signed dword) muls16s::return#1 + (signed dword) muls16s::return#2 ← (signed dword) muls16s::return#1 to:mul16s_compare::@13 mul16s_compare::@13: scope:[mul16s_compare] from mul16s_compare::@2 - (byte*) print_line_cursor#84 ? phi( mul16s_compare::@2/(byte*) print_line_cursor#88 ) - (byte*) print_char_cursor#173 ? phi( mul16s_compare::@2/(byte*) print_char_cursor#175 ) - (byte) mul16s_compare::i#10 ? phi( mul16s_compare::@2/(byte) mul16s_compare::i#11 ) - (byte) mul16s_compare::j#9 ? phi( mul16s_compare::@2/(byte) mul16s_compare::j#10 ) - (signed word) mul16s_compare::b#3 ? phi( mul16s_compare::@2/(signed word) mul16s_compare::b#1 ) - (signed word) mul16s_compare::a#3 ? phi( mul16s_compare::@2/(signed word) mul16s_compare::a#1 ) - (signed dword) muls16s::return#4 ? phi( mul16s_compare::@2/(signed dword) muls16s::return#2 ) - (signed dword~) mul16s_compare::$8 ? (signed dword) muls16s::return#4 - (signed dword) mul16s_compare::ms#0 ? (signed dword~) mul16s_compare::$8 - (signed word) mul16s::a#0 ? (signed word) mul16s_compare::a#3 - (signed word) mul16s::b#0 ? (signed word) mul16s_compare::b#3 + (byte*) print_line_cursor#84 ← phi( mul16s_compare::@2/(byte*) print_line_cursor#88 ) + (byte*) print_char_cursor#173 ← phi( mul16s_compare::@2/(byte*) print_char_cursor#175 ) + (byte) mul16s_compare::i#10 ← phi( mul16s_compare::@2/(byte) mul16s_compare::i#11 ) + (byte) mul16s_compare::j#9 ← phi( mul16s_compare::@2/(byte) mul16s_compare::j#10 ) + (signed word) mul16s_compare::b#3 ← phi( mul16s_compare::@2/(signed word) mul16s_compare::b#1 ) + (signed word) mul16s_compare::a#3 ← phi( mul16s_compare::@2/(signed word) mul16s_compare::a#1 ) + (signed dword) muls16s::return#4 ← phi( mul16s_compare::@2/(signed dword) muls16s::return#2 ) + (signed dword~) mul16s_compare::$8 ← (signed dword) muls16s::return#4 + (signed dword) mul16s_compare::ms#0 ← (signed dword~) mul16s_compare::$8 + (signed word) mul16s::a#0 ← (signed word) mul16s_compare::a#3 + (signed word) mul16s::b#0 ← (signed word) mul16s_compare::b#3 call mul16s - (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#1 + (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#1 to:mul16s_compare::@14 mul16s_compare::@14: scope:[mul16s_compare] from mul16s_compare::@13 - (byte*) print_line_cursor#80 ? phi( mul16s_compare::@13/(byte*) print_line_cursor#84 ) - (byte*) print_char_cursor#171 ? phi( mul16s_compare::@13/(byte*) print_char_cursor#173 ) - (byte) mul16s_compare::i#9 ? phi( mul16s_compare::@13/(byte) mul16s_compare::i#10 ) - (byte) mul16s_compare::j#8 ? phi( mul16s_compare::@13/(byte) mul16s_compare::j#9 ) - (signed dword) mul16s_compare::ms#4 ? phi( mul16s_compare::@13/(signed dword) mul16s_compare::ms#0 ) - (signed word) mul16s_compare::b#4 ? phi( mul16s_compare::@13/(signed word) mul16s_compare::b#3 ) - (signed word) mul16s_compare::a#4 ? phi( mul16s_compare::@13/(signed word) mul16s_compare::a#3 ) - (signed dword) mul16s::return#4 ? phi( mul16s_compare::@13/(signed dword) mul16s::return#2 ) - (signed dword~) mul16s_compare::$9 ? (signed dword) mul16s::return#4 - (signed dword) mul16s_compare::mn#0 ? (signed dword~) mul16s_compare::$9 - (signed word) mulf16s::a#0 ? (signed word) mul16s_compare::a#4 - (signed word) mulf16s::b#0 ? (signed word) mul16s_compare::b#4 + (byte*) print_line_cursor#80 ← phi( mul16s_compare::@13/(byte*) print_line_cursor#84 ) + (byte*) print_char_cursor#171 ← phi( mul16s_compare::@13/(byte*) print_char_cursor#173 ) + (byte) mul16s_compare::i#9 ← phi( mul16s_compare::@13/(byte) mul16s_compare::i#10 ) + (byte) mul16s_compare::j#8 ← phi( mul16s_compare::@13/(byte) mul16s_compare::j#9 ) + (signed dword) mul16s_compare::ms#4 ← phi( mul16s_compare::@13/(signed dword) mul16s_compare::ms#0 ) + (signed word) mul16s_compare::b#4 ← phi( mul16s_compare::@13/(signed word) mul16s_compare::b#3 ) + (signed word) mul16s_compare::a#4 ← phi( mul16s_compare::@13/(signed word) mul16s_compare::a#3 ) + (signed dword) mul16s::return#4 ← phi( mul16s_compare::@13/(signed dword) mul16s::return#2 ) + (signed dword~) mul16s_compare::$9 ← (signed dword) mul16s::return#4 + (signed dword) mul16s_compare::mn#0 ← (signed dword~) mul16s_compare::$9 + (signed word) mulf16s::a#0 ← (signed word) mul16s_compare::a#4 + (signed word) mulf16s::b#0 ← (signed word) mul16s_compare::b#4 call mulf16s - (signed dword) mulf16s::return#2 ? (signed dword) mulf16s::return#1 + (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#1 to:mul16s_compare::@15 mul16s_compare::@15: scope:[mul16s_compare] from mul16s_compare::@14 - (byte*) print_line_cursor#75 ? phi( mul16s_compare::@14/(byte*) print_line_cursor#80 ) - (byte*) print_char_cursor#168 ? phi( mul16s_compare::@14/(byte*) print_char_cursor#171 ) - (byte) mul16s_compare::i#7 ? phi( mul16s_compare::@14/(byte) mul16s_compare::i#9 ) - (signed word) mul16s_compare::b#13 ? phi( mul16s_compare::@14/(signed word) mul16s_compare::b#4 ) - (signed word) mul16s_compare::a#13 ? phi( mul16s_compare::@14/(signed word) mul16s_compare::a#4 ) - (byte) mul16s_compare::j#6 ? phi( mul16s_compare::@14/(byte) mul16s_compare::j#8 ) - (signed dword) mul16s_compare::mn#3 ? phi( mul16s_compare::@14/(signed dword) mul16s_compare::mn#0 ) - (signed dword) mul16s_compare::ms#1 ? phi( mul16s_compare::@14/(signed dword) mul16s_compare::ms#4 ) - (signed dword) mulf16s::return#4 ? phi( mul16s_compare::@14/(signed dword) mulf16s::return#2 ) - (signed dword~) mul16s_compare::$10 ? (signed dword) mulf16s::return#4 - (signed dword) mul16s_compare::mf#0 ? (signed dword~) mul16s_compare::$10 - (byte) mul16s_compare::ok#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul16s_compare::$11 ? (signed dword) mul16s_compare::ms#1 != (signed dword) mul16s_compare::mf#0 - (bool~) mul16s_compare::$12 ? ! (bool~) mul16s_compare::$11 + (byte*) print_line_cursor#75 ← phi( mul16s_compare::@14/(byte*) print_line_cursor#80 ) + (byte*) print_char_cursor#168 ← phi( mul16s_compare::@14/(byte*) print_char_cursor#171 ) + (byte) mul16s_compare::i#7 ← phi( mul16s_compare::@14/(byte) mul16s_compare::i#9 ) + (signed word) mul16s_compare::b#13 ← phi( mul16s_compare::@14/(signed word) mul16s_compare::b#4 ) + (signed word) mul16s_compare::a#13 ← phi( mul16s_compare::@14/(signed word) mul16s_compare::a#4 ) + (byte) mul16s_compare::j#6 ← phi( mul16s_compare::@14/(byte) mul16s_compare::j#8 ) + (signed dword) mul16s_compare::mn#3 ← phi( mul16s_compare::@14/(signed dword) mul16s_compare::mn#0 ) + (signed dword) mul16s_compare::ms#1 ← phi( mul16s_compare::@14/(signed dword) mul16s_compare::ms#4 ) + (signed dword) mulf16s::return#4 ← phi( mul16s_compare::@14/(signed dword) mulf16s::return#2 ) + (signed dword~) mul16s_compare::$10 ← (signed dword) mulf16s::return#4 + (signed dword) mul16s_compare::mf#0 ← (signed dword~) mul16s_compare::$10 + (byte) mul16s_compare::ok#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul16s_compare::$11 ← (signed dword) mul16s_compare::ms#1 != (signed dword) mul16s_compare::mf#0 + (bool~) mul16s_compare::$12 ← ! (bool~) mul16s_compare::$11 if((bool~) mul16s_compare::$12) goto mul16s_compare::@3 to:mul16s_compare::@6 mul16s_compare::@3: scope:[mul16s_compare] from mul16s_compare::@15 mul16s_compare::@6 - (byte*) print_line_cursor#67 ? phi( mul16s_compare::@15/(byte*) print_line_cursor#75 mul16s_compare::@6/(byte*) print_line_cursor#76 ) - (byte*) print_char_cursor#162 ? phi( mul16s_compare::@15/(byte*) print_char_cursor#168 mul16s_compare::@6/(byte*) print_char_cursor#169 ) - (byte) mul16s_compare::i#5 ? phi( mul16s_compare::@15/(byte) mul16s_compare::i#7 mul16s_compare::@6/(byte) mul16s_compare::i#8 ) - (signed dword) mul16s_compare::mf#3 ? phi( mul16s_compare::@15/(signed dword) mul16s_compare::mf#0 mul16s_compare::@6/(signed dword) mul16s_compare::mf#5 ) - (signed word) mul16s_compare::b#10 ? phi( mul16s_compare::@15/(signed word) mul16s_compare::b#13 mul16s_compare::@6/(signed word) mul16s_compare::b#14 ) - (signed word) mul16s_compare::a#10 ? phi( mul16s_compare::@15/(signed word) mul16s_compare::a#13 mul16s_compare::@6/(signed word) mul16s_compare::a#14 ) - (byte) mul16s_compare::j#4 ? phi( mul16s_compare::@15/(byte) mul16s_compare::j#6 mul16s_compare::@6/(byte) mul16s_compare::j#7 ) - (byte) mul16s_compare::ok#4 ? phi( mul16s_compare::@15/(byte) mul16s_compare::ok#0 mul16s_compare::@6/(byte) mul16s_compare::ok#1 ) - (signed dword) mul16s_compare::mn#1 ? phi( mul16s_compare::@15/(signed dword) mul16s_compare::mn#3 mul16s_compare::@6/(signed dword) mul16s_compare::mn#4 ) - (signed dword) mul16s_compare::ms#2 ? phi( mul16s_compare::@15/(signed dword) mul16s_compare::ms#1 mul16s_compare::@6/(signed dword) mul16s_compare::ms#5 ) - (bool~) mul16s_compare::$13 ? (signed dword) mul16s_compare::ms#2 != (signed dword) mul16s_compare::mn#1 - (bool~) mul16s_compare::$14 ? ! (bool~) mul16s_compare::$13 + (byte*) print_line_cursor#67 ← phi( mul16s_compare::@15/(byte*) print_line_cursor#75 mul16s_compare::@6/(byte*) print_line_cursor#76 ) + (byte*) print_char_cursor#162 ← phi( mul16s_compare::@15/(byte*) print_char_cursor#168 mul16s_compare::@6/(byte*) print_char_cursor#169 ) + (byte) mul16s_compare::i#5 ← phi( mul16s_compare::@15/(byte) mul16s_compare::i#7 mul16s_compare::@6/(byte) mul16s_compare::i#8 ) + (signed dword) mul16s_compare::mf#3 ← phi( mul16s_compare::@15/(signed dword) mul16s_compare::mf#0 mul16s_compare::@6/(signed dword) mul16s_compare::mf#5 ) + (signed word) mul16s_compare::b#10 ← phi( mul16s_compare::@15/(signed word) mul16s_compare::b#13 mul16s_compare::@6/(signed word) mul16s_compare::b#14 ) + (signed word) mul16s_compare::a#10 ← phi( mul16s_compare::@15/(signed word) mul16s_compare::a#13 mul16s_compare::@6/(signed word) mul16s_compare::a#14 ) + (byte) mul16s_compare::j#4 ← phi( mul16s_compare::@15/(byte) mul16s_compare::j#6 mul16s_compare::@6/(byte) mul16s_compare::j#7 ) + (byte) mul16s_compare::ok#4 ← phi( mul16s_compare::@15/(byte) mul16s_compare::ok#0 mul16s_compare::@6/(byte) mul16s_compare::ok#1 ) + (signed dword) mul16s_compare::mn#1 ← phi( mul16s_compare::@15/(signed dword) mul16s_compare::mn#3 mul16s_compare::@6/(signed dword) mul16s_compare::mn#4 ) + (signed dword) mul16s_compare::ms#2 ← phi( mul16s_compare::@15/(signed dword) mul16s_compare::ms#1 mul16s_compare::@6/(signed dword) mul16s_compare::ms#5 ) + (bool~) mul16s_compare::$13 ← (signed dword) mul16s_compare::ms#2 != (signed dword) mul16s_compare::mn#1 + (bool~) mul16s_compare::$14 ← ! (bool~) mul16s_compare::$13 if((bool~) mul16s_compare::$14) goto mul16s_compare::@4 to:mul16s_compare::@7 mul16s_compare::@6: scope:[mul16s_compare] from mul16s_compare::@15 - (byte*) print_line_cursor#76 ? phi( mul16s_compare::@15/(byte*) print_line_cursor#75 ) - (byte*) print_char_cursor#169 ? phi( mul16s_compare::@15/(byte*) print_char_cursor#168 ) - (byte) mul16s_compare::i#8 ? phi( mul16s_compare::@15/(byte) mul16s_compare::i#7 ) - (signed dword) mul16s_compare::mf#5 ? phi( mul16s_compare::@15/(signed dword) mul16s_compare::mf#0 ) - (signed word) mul16s_compare::b#14 ? phi( mul16s_compare::@15/(signed word) mul16s_compare::b#13 ) - (signed word) mul16s_compare::a#14 ? phi( mul16s_compare::@15/(signed word) mul16s_compare::a#13 ) - (byte) mul16s_compare::j#7 ? phi( mul16s_compare::@15/(byte) mul16s_compare::j#6 ) - (signed dword) mul16s_compare::mn#4 ? phi( mul16s_compare::@15/(signed dword) mul16s_compare::mn#3 ) - (signed dword) mul16s_compare::ms#5 ? phi( mul16s_compare::@15/(signed dword) mul16s_compare::ms#1 ) - (byte) mul16s_compare::ok#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#76 ← phi( mul16s_compare::@15/(byte*) print_line_cursor#75 ) + (byte*) print_char_cursor#169 ← phi( mul16s_compare::@15/(byte*) print_char_cursor#168 ) + (byte) mul16s_compare::i#8 ← phi( mul16s_compare::@15/(byte) mul16s_compare::i#7 ) + (signed dword) mul16s_compare::mf#5 ← phi( mul16s_compare::@15/(signed dword) mul16s_compare::mf#0 ) + (signed word) mul16s_compare::b#14 ← phi( mul16s_compare::@15/(signed word) mul16s_compare::b#13 ) + (signed word) mul16s_compare::a#14 ← phi( mul16s_compare::@15/(signed word) mul16s_compare::a#13 ) + (byte) mul16s_compare::j#7 ← phi( mul16s_compare::@15/(byte) mul16s_compare::j#6 ) + (signed dword) mul16s_compare::mn#4 ← phi( mul16s_compare::@15/(signed dword) mul16s_compare::mn#3 ) + (signed dword) mul16s_compare::ms#5 ← phi( mul16s_compare::@15/(signed dword) mul16s_compare::ms#1 ) + (byte) mul16s_compare::ok#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16s_compare::@3 mul16s_compare::@4: scope:[mul16s_compare] from mul16s_compare::@3 mul16s_compare::@7 - (byte*) print_line_cursor#58 ? phi( mul16s_compare::@3/(byte*) print_line_cursor#67 mul16s_compare::@7/(byte*) print_line_cursor#68 ) - (byte*) print_char_cursor#156 ? phi( mul16s_compare::@3/(byte*) print_char_cursor#162 mul16s_compare::@7/(byte*) print_char_cursor#163 ) - (byte) mul16s_compare::i#4 ? phi( mul16s_compare::@3/(byte) mul16s_compare::i#5 mul16s_compare::@7/(byte) mul16s_compare::i#6 ) - (signed dword) mul16s_compare::mf#2 ? phi( mul16s_compare::@3/(signed dword) mul16s_compare::mf#3 mul16s_compare::@7/(signed dword) mul16s_compare::mf#4 ) - (signed dword) mul16s_compare::mn#5 ? phi( mul16s_compare::@3/(signed dword) mul16s_compare::mn#1 mul16s_compare::@7/(signed dword) mul16s_compare::mn#6 ) - (signed dword) mul16s_compare::ms#6 ? phi( mul16s_compare::@3/(signed dword) mul16s_compare::ms#2 mul16s_compare::@7/(signed dword) mul16s_compare::ms#7 ) - (signed word) mul16s_compare::b#8 ? phi( mul16s_compare::@3/(signed word) mul16s_compare::b#10 mul16s_compare::@7/(signed word) mul16s_compare::b#11 ) - (signed word) mul16s_compare::a#8 ? phi( mul16s_compare::@3/(signed word) mul16s_compare::a#10 mul16s_compare::@7/(signed word) mul16s_compare::a#11 ) - (byte) mul16s_compare::j#3 ? phi( mul16s_compare::@3/(byte) mul16s_compare::j#4 mul16s_compare::@7/(byte) mul16s_compare::j#5 ) - (byte) mul16s_compare::ok#3 ? phi( mul16s_compare::@3/(byte) mul16s_compare::ok#4 mul16s_compare::@7/(byte) mul16s_compare::ok#2 ) - (bool~) mul16s_compare::$15 ? (byte) mul16s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul16s_compare::$16 ? ! (bool~) mul16s_compare::$15 + (byte*) print_line_cursor#58 ← phi( mul16s_compare::@3/(byte*) print_line_cursor#67 mul16s_compare::@7/(byte*) print_line_cursor#68 ) + (byte*) print_char_cursor#156 ← phi( mul16s_compare::@3/(byte*) print_char_cursor#162 mul16s_compare::@7/(byte*) print_char_cursor#163 ) + (byte) mul16s_compare::i#4 ← phi( mul16s_compare::@3/(byte) mul16s_compare::i#5 mul16s_compare::@7/(byte) mul16s_compare::i#6 ) + (signed dword) mul16s_compare::mf#2 ← phi( mul16s_compare::@3/(signed dword) mul16s_compare::mf#3 mul16s_compare::@7/(signed dword) mul16s_compare::mf#4 ) + (signed dword) mul16s_compare::mn#5 ← phi( mul16s_compare::@3/(signed dword) mul16s_compare::mn#1 mul16s_compare::@7/(signed dword) mul16s_compare::mn#6 ) + (signed dword) mul16s_compare::ms#6 ← phi( mul16s_compare::@3/(signed dword) mul16s_compare::ms#2 mul16s_compare::@7/(signed dword) mul16s_compare::ms#7 ) + (signed word) mul16s_compare::b#8 ← phi( mul16s_compare::@3/(signed word) mul16s_compare::b#10 mul16s_compare::@7/(signed word) mul16s_compare::b#11 ) + (signed word) mul16s_compare::a#8 ← phi( mul16s_compare::@3/(signed word) mul16s_compare::a#10 mul16s_compare::@7/(signed word) mul16s_compare::a#11 ) + (byte) mul16s_compare::j#3 ← phi( mul16s_compare::@3/(byte) mul16s_compare::j#4 mul16s_compare::@7/(byte) mul16s_compare::j#5 ) + (byte) mul16s_compare::ok#3 ← phi( mul16s_compare::@3/(byte) mul16s_compare::ok#4 mul16s_compare::@7/(byte) mul16s_compare::ok#2 ) + (bool~) mul16s_compare::$15 ← (byte) mul16s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul16s_compare::$16 ← ! (bool~) mul16s_compare::$15 if((bool~) mul16s_compare::$16) goto mul16s_compare::@5 to:mul16s_compare::@8 mul16s_compare::@7: scope:[mul16s_compare] from mul16s_compare::@3 - (byte*) print_line_cursor#68 ? phi( mul16s_compare::@3/(byte*) print_line_cursor#67 ) - (byte*) print_char_cursor#163 ? phi( mul16s_compare::@3/(byte*) print_char_cursor#162 ) - (byte) mul16s_compare::i#6 ? phi( mul16s_compare::@3/(byte) mul16s_compare::i#5 ) - (signed dword) mul16s_compare::mf#4 ? phi( mul16s_compare::@3/(signed dword) mul16s_compare::mf#3 ) - (signed dword) mul16s_compare::mn#6 ? phi( mul16s_compare::@3/(signed dword) mul16s_compare::mn#1 ) - (signed dword) mul16s_compare::ms#7 ? phi( mul16s_compare::@3/(signed dword) mul16s_compare::ms#2 ) - (signed word) mul16s_compare::b#11 ? phi( mul16s_compare::@3/(signed word) mul16s_compare::b#10 ) - (signed word) mul16s_compare::a#11 ? phi( mul16s_compare::@3/(signed word) mul16s_compare::a#10 ) - (byte) mul16s_compare::j#5 ? phi( mul16s_compare::@3/(byte) mul16s_compare::j#4 ) - (byte) mul16s_compare::ok#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#68 ← phi( mul16s_compare::@3/(byte*) print_line_cursor#67 ) + (byte*) print_char_cursor#163 ← phi( mul16s_compare::@3/(byte*) print_char_cursor#162 ) + (byte) mul16s_compare::i#6 ← phi( mul16s_compare::@3/(byte) mul16s_compare::i#5 ) + (signed dword) mul16s_compare::mf#4 ← phi( mul16s_compare::@3/(signed dword) mul16s_compare::mf#3 ) + (signed dword) mul16s_compare::mn#6 ← phi( mul16s_compare::@3/(signed dword) mul16s_compare::mn#1 ) + (signed dword) mul16s_compare::ms#7 ← phi( mul16s_compare::@3/(signed dword) mul16s_compare::ms#2 ) + (signed word) mul16s_compare::b#11 ← phi( mul16s_compare::@3/(signed word) mul16s_compare::b#10 ) + (signed word) mul16s_compare::a#11 ← phi( mul16s_compare::@3/(signed word) mul16s_compare::a#10 ) + (byte) mul16s_compare::j#5 ← phi( mul16s_compare::@3/(byte) mul16s_compare::j#4 ) + (byte) mul16s_compare::ok#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul16s_compare::@4 mul16s_compare::@5: scope:[mul16s_compare] from mul16s_compare::@4 - (byte*) print_line_cursor#69 ? phi( mul16s_compare::@4/(byte*) print_line_cursor#58 ) - (byte*) print_char_cursor#164 ? phi( mul16s_compare::@4/(byte*) print_char_cursor#156 ) - (byte) mul16s_compare::i#3 ? phi( mul16s_compare::@4/(byte) mul16s_compare::i#4 ) - (signed word) mul16s_compare::b#7 ? phi( mul16s_compare::@4/(signed word) mul16s_compare::b#8 ) - (signed word) mul16s_compare::a#7 ? phi( mul16s_compare::@4/(signed word) mul16s_compare::a#8 ) - (byte) mul16s_compare::j#2 ? phi( mul16s_compare::@4/(byte) mul16s_compare::j#3 ) - (byte) mul16s_compare::j#1 ? (byte) mul16s_compare::j#2 + rangenext(0,$f) - (bool~) mul16s_compare::$18 ? (byte) mul16s_compare::j#1 != rangelast(0,$f) + (byte*) print_line_cursor#69 ← phi( mul16s_compare::@4/(byte*) print_line_cursor#58 ) + (byte*) print_char_cursor#164 ← phi( mul16s_compare::@4/(byte*) print_char_cursor#156 ) + (byte) mul16s_compare::i#3 ← phi( mul16s_compare::@4/(byte) mul16s_compare::i#4 ) + (signed word) mul16s_compare::b#7 ← phi( mul16s_compare::@4/(signed word) mul16s_compare::b#8 ) + (signed word) mul16s_compare::a#7 ← phi( mul16s_compare::@4/(signed word) mul16s_compare::a#8 ) + (byte) mul16s_compare::j#2 ← phi( mul16s_compare::@4/(byte) mul16s_compare::j#3 ) + (byte) mul16s_compare::j#1 ← (byte) mul16s_compare::j#2 + rangenext(0,$f) + (bool~) mul16s_compare::$18 ← (byte) mul16s_compare::j#1 != rangelast(0,$f) if((bool~) mul16s_compare::$18) goto mul16s_compare::@2 to:mul16s_compare::@10 mul16s_compare::@8: scope:[mul16s_compare] from mul16s_compare::@4 - (byte*) print_line_cursor#50 ? phi( mul16s_compare::@4/(byte*) print_line_cursor#58 ) - (byte*) print_char_cursor#144 ? phi( mul16s_compare::@4/(byte*) print_char_cursor#156 ) - (signed dword) mul16s_compare::mf#1 ? phi( mul16s_compare::@4/(signed dword) mul16s_compare::mf#2 ) - (signed dword) mul16s_compare::mn#2 ? phi( mul16s_compare::@4/(signed dword) mul16s_compare::mn#5 ) - (signed dword) mul16s_compare::ms#3 ? phi( mul16s_compare::@4/(signed dword) mul16s_compare::ms#6 ) - (signed word) mul16s_compare::b#5 ? phi( mul16s_compare::@4/(signed word) mul16s_compare::b#8 ) - (signed word) mul16s_compare::a#5 ? phi( mul16s_compare::@4/(signed word) mul16s_compare::a#8 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed word) mul16s_error::a#0 ? (signed word) mul16s_compare::a#5 - (signed word) mul16s_error::b#0 ? (signed word) mul16s_compare::b#5 - (signed dword) mul16s_error::ms#0 ? (signed dword) mul16s_compare::ms#3 - (signed dword) mul16s_error::mn#0 ? (signed dword) mul16s_compare::mn#2 - (signed dword) mul16s_error::mf#0 ? (signed dword) mul16s_compare::mf#1 + (byte*) print_line_cursor#50 ← phi( mul16s_compare::@4/(byte*) print_line_cursor#58 ) + (byte*) print_char_cursor#144 ← phi( mul16s_compare::@4/(byte*) print_char_cursor#156 ) + (signed dword) mul16s_compare::mf#1 ← phi( mul16s_compare::@4/(signed dword) mul16s_compare::mf#2 ) + (signed dword) mul16s_compare::mn#2 ← phi( mul16s_compare::@4/(signed dword) mul16s_compare::mn#5 ) + (signed dword) mul16s_compare::ms#3 ← phi( mul16s_compare::@4/(signed dword) mul16s_compare::ms#6 ) + (signed word) mul16s_compare::b#5 ← phi( mul16s_compare::@4/(signed word) mul16s_compare::b#8 ) + (signed word) mul16s_compare::a#5 ← phi( mul16s_compare::@4/(signed word) mul16s_compare::a#8 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed word) mul16s_error::a#0 ← (signed word) mul16s_compare::a#5 + (signed word) mul16s_error::b#0 ← (signed word) mul16s_compare::b#5 + (signed dword) mul16s_error::ms#0 ← (signed dword) mul16s_compare::ms#3 + (signed dword) mul16s_error::mn#0 ← (signed dword) mul16s_compare::mn#2 + (signed dword) mul16s_error::mf#0 ← (signed dword) mul16s_compare::mf#1 call mul16s_error to:mul16s_compare::@16 mul16s_compare::@16: scope:[mul16s_compare] from mul16s_compare::@8 - (byte*) print_line_cursor#36 ? phi( mul16s_compare::@8/(byte*) print_line_cursor#20 ) - (byte*) print_char_cursor#110 ? phi( mul16s_compare::@8/(byte*) print_char_cursor#63 ) - (byte*) print_char_cursor#47 ? (byte*) print_char_cursor#110 - (byte*) print_line_cursor#15 ? (byte*) print_line_cursor#36 + (byte*) print_line_cursor#36 ← phi( mul16s_compare::@8/(byte*) print_line_cursor#20 ) + (byte*) print_char_cursor#110 ← phi( mul16s_compare::@8/(byte*) print_char_cursor#63 ) + (byte*) print_char_cursor#47 ← (byte*) print_char_cursor#110 + (byte*) print_line_cursor#15 ← (byte*) print_line_cursor#36 to:mul16s_compare::@return mul16s_compare::@return: scope:[mul16s_compare] from mul16s_compare::@16 mul16s_compare::@19 - (byte*) print_line_cursor#37 ? phi( mul16s_compare::@16/(byte*) print_line_cursor#15 mul16s_compare::@19/(byte*) print_line_cursor#18 ) - (byte*) print_char_cursor#111 ? phi( mul16s_compare::@16/(byte*) print_char_cursor#47 mul16s_compare::@19/(byte*) print_char_cursor#51 ) - (byte*) print_char_cursor#48 ? (byte*) print_char_cursor#111 - (byte*) print_line_cursor#16 ? (byte*) print_line_cursor#37 + (byte*) print_line_cursor#37 ← phi( mul16s_compare::@16/(byte*) print_line_cursor#15 mul16s_compare::@19/(byte*) print_line_cursor#18 ) + (byte*) print_char_cursor#111 ← phi( mul16s_compare::@16/(byte*) print_char_cursor#47 mul16s_compare::@19/(byte*) print_char_cursor#51 ) + (byte*) print_char_cursor#48 ← (byte*) print_char_cursor#111 + (byte*) print_line_cursor#16 ← (byte*) print_line_cursor#37 return to:@return mul16s_compare::@10: scope:[mul16s_compare] from mul16s_compare::@5 - (signed word) mul16s_compare::b#12 ? phi( mul16s_compare::@5/(signed word) mul16s_compare::b#7 ) - (signed word) mul16s_compare::a#12 ? phi( mul16s_compare::@5/(signed word) mul16s_compare::a#7 ) - (byte*) print_line_cursor#59 ? phi( mul16s_compare::@5/(byte*) print_line_cursor#69 ) - (byte*) print_char_cursor#155 ? phi( mul16s_compare::@5/(byte*) print_char_cursor#164 ) - (byte) mul16s_compare::i#2 ? phi( mul16s_compare::@5/(byte) mul16s_compare::i#3 ) - (byte) mul16s_compare::i#1 ? (byte) mul16s_compare::i#2 + rangenext(0,$f) - (bool~) mul16s_compare::$19 ? (byte) mul16s_compare::i#1 != rangelast(0,$f) + (signed word) mul16s_compare::b#12 ← phi( mul16s_compare::@5/(signed word) mul16s_compare::b#7 ) + (signed word) mul16s_compare::a#12 ← phi( mul16s_compare::@5/(signed word) mul16s_compare::a#7 ) + (byte*) print_line_cursor#59 ← phi( mul16s_compare::@5/(byte*) print_line_cursor#69 ) + (byte*) print_char_cursor#155 ← phi( mul16s_compare::@5/(byte*) print_char_cursor#164 ) + (byte) mul16s_compare::i#2 ← phi( mul16s_compare::@5/(byte) mul16s_compare::i#3 ) + (byte) mul16s_compare::i#1 ← (byte) mul16s_compare::i#2 + rangenext(0,$f) + (bool~) mul16s_compare::$19 ← (byte) mul16s_compare::i#1 != rangelast(0,$f) if((bool~) mul16s_compare::$19) goto mul16s_compare::@1 to:mul16s_compare::@11 mul16s_compare::@11: scope:[mul16s_compare] from mul16s_compare::@10 - (byte*) print_char_cursor#145 ? phi( mul16s_compare::@10/(byte*) print_char_cursor#155 ) - (byte*) print_line_cursor#51 ? phi( mul16s_compare::@10/(byte*) print_line_cursor#59 ) + (byte*) print_char_cursor#145 ← phi( mul16s_compare::@10/(byte*) print_char_cursor#155 ) + (byte*) print_line_cursor#51 ← phi( mul16s_compare::@10/(byte*) print_line_cursor#59 ) call print_ln to:mul16s_compare::@17 mul16s_compare::@17: scope:[mul16s_compare] from mul16s_compare::@11 - (byte*) print_char_cursor#112 ? phi( mul16s_compare::@11/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#38 ? phi( mul16s_compare::@11/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#17 ? (byte*) print_line_cursor#38 - (byte*) print_char_cursor#49 ? (byte*) print_char_cursor#112 - (byte*) print_str::str#9 ? (const string) mul16s_compare::str1 + (byte*) print_char_cursor#112 ← phi( mul16s_compare::@11/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#38 ← phi( mul16s_compare::@11/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#17 ← (byte*) print_line_cursor#38 + (byte*) print_char_cursor#49 ← (byte*) print_char_cursor#112 + (byte*) print_str::str#9 ← (const string) mul16s_compare::str1 call print_str to:mul16s_compare::@18 mul16s_compare::@18: scope:[mul16s_compare] from mul16s_compare::@17 - (byte*) print_line_cursor#52 ? phi( mul16s_compare::@17/(byte*) print_line_cursor#17 ) - (byte*) print_char_cursor#113 ? phi( mul16s_compare::@17/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#50 ? (byte*) print_char_cursor#113 + (byte*) print_line_cursor#52 ← phi( mul16s_compare::@17/(byte*) print_line_cursor#17 ) + (byte*) print_char_cursor#113 ← phi( mul16s_compare::@17/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#50 ← (byte*) print_char_cursor#113 call print_ln to:mul16s_compare::@19 mul16s_compare::@19: scope:[mul16s_compare] from mul16s_compare::@18 - (byte*) print_char_cursor#114 ? phi( mul16s_compare::@18/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#39 ? phi( mul16s_compare::@18/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#18 ? (byte*) print_line_cursor#39 - (byte*) print_char_cursor#51 ? (byte*) print_char_cursor#114 + (byte*) print_char_cursor#114 ← phi( mul16s_compare::@18/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#39 ← phi( mul16s_compare::@18/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#39 + (byte*) print_char_cursor#51 ← (byte*) print_char_cursor#114 to:mul16s_compare::@return mul16s_error: scope:[mul16s_error] from mul16s_compare::@8 - (byte*) print_line_cursor#103 ? phi( mul16s_compare::@8/(byte*) print_line_cursor#50 ) - (signed dword) mul16s_error::mf#10 ? phi( mul16s_compare::@8/(signed dword) mul16s_error::mf#0 ) - (signed dword) mul16s_error::mn#8 ? phi( mul16s_compare::@8/(signed dword) mul16s_error::mn#0 ) - (signed dword) mul16s_error::ms#6 ? phi( mul16s_compare::@8/(signed dword) mul16s_error::ms#0 ) - (signed word) mul16s_error::b#4 ? phi( mul16s_compare::@8/(signed word) mul16s_error::b#0 ) - (signed word) mul16s_error::a#2 ? phi( mul16s_compare::@8/(signed word) mul16s_error::a#0 ) - (byte*) print_char_cursor#146 ? phi( mul16s_compare::@8/(byte*) print_char_cursor#144 ) - (byte*) print_str::str#10 ? (const string) mul16s_error::str + (byte*) print_line_cursor#103 ← phi( mul16s_compare::@8/(byte*) print_line_cursor#50 ) + (signed dword) mul16s_error::mf#10 ← phi( mul16s_compare::@8/(signed dword) mul16s_error::mf#0 ) + (signed dword) mul16s_error::mn#8 ← phi( mul16s_compare::@8/(signed dword) mul16s_error::mn#0 ) + (signed dword) mul16s_error::ms#6 ← phi( mul16s_compare::@8/(signed dword) mul16s_error::ms#0 ) + (signed word) mul16s_error::b#4 ← phi( mul16s_compare::@8/(signed word) mul16s_error::b#0 ) + (signed word) mul16s_error::a#2 ← phi( mul16s_compare::@8/(signed word) mul16s_error::a#0 ) + (byte*) print_char_cursor#146 ← phi( mul16s_compare::@8/(byte*) print_char_cursor#144 ) + (byte*) print_str::str#10 ← (const string) mul16s_error::str call print_str to:mul16s_error::@1 mul16s_error::@1: scope:[mul16s_error] from mul16s_error - (byte*) print_line_cursor#101 ? phi( mul16s_error/(byte*) print_line_cursor#103 ) - (signed dword) mul16s_error::mf#9 ? phi( mul16s_error/(signed dword) mul16s_error::mf#10 ) - (signed dword) mul16s_error::mn#7 ? phi( mul16s_error/(signed dword) mul16s_error::mn#8 ) - (signed dword) mul16s_error::ms#5 ? phi( mul16s_error/(signed dword) mul16s_error::ms#6 ) - (signed word) mul16s_error::b#3 ? phi( mul16s_error/(signed word) mul16s_error::b#4 ) - (signed word) mul16s_error::a#1 ? phi( mul16s_error/(signed word) mul16s_error::a#2 ) - (byte*) print_char_cursor#115 ? phi( mul16s_error/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#52 ? (byte*) print_char_cursor#115 - (signed word) print_sword::w#1 ? (signed word) mul16s_error::a#1 + (byte*) print_line_cursor#101 ← phi( mul16s_error/(byte*) print_line_cursor#103 ) + (signed dword) mul16s_error::mf#9 ← phi( mul16s_error/(signed dword) mul16s_error::mf#10 ) + (signed dword) mul16s_error::mn#7 ← phi( mul16s_error/(signed dword) mul16s_error::mn#8 ) + (signed dword) mul16s_error::ms#5 ← phi( mul16s_error/(signed dword) mul16s_error::ms#6 ) + (signed word) mul16s_error::b#3 ← phi( mul16s_error/(signed word) mul16s_error::b#4 ) + (signed word) mul16s_error::a#1 ← phi( mul16s_error/(signed word) mul16s_error::a#2 ) + (byte*) print_char_cursor#115 ← phi( mul16s_error/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#52 ← (byte*) print_char_cursor#115 + (signed word) print_sword::w#1 ← (signed word) mul16s_error::a#1 call print_sword to:mul16s_error::@2 mul16s_error::@2: scope:[mul16s_error] from mul16s_error::@1 - (byte*) print_line_cursor#97 ? phi( mul16s_error::@1/(byte*) print_line_cursor#101 ) - (signed dword) mul16s_error::mf#8 ? phi( mul16s_error::@1/(signed dword) mul16s_error::mf#9 ) - (signed dword) mul16s_error::mn#6 ? phi( mul16s_error::@1/(signed dword) mul16s_error::mn#7 ) - (signed dword) mul16s_error::ms#4 ? phi( mul16s_error::@1/(signed dword) mul16s_error::ms#5 ) - (signed word) mul16s_error::b#2 ? phi( mul16s_error::@1/(signed word) mul16s_error::b#3 ) - (byte*) print_char_cursor#116 ? phi( mul16s_error::@1/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#53 ? (byte*) print_char_cursor#116 - (byte*) print_str::str#11 ? (const string) mul16s_error::str1 + (byte*) print_line_cursor#97 ← phi( mul16s_error::@1/(byte*) print_line_cursor#101 ) + (signed dword) mul16s_error::mf#8 ← phi( mul16s_error::@1/(signed dword) mul16s_error::mf#9 ) + (signed dword) mul16s_error::mn#6 ← phi( mul16s_error::@1/(signed dword) mul16s_error::mn#7 ) + (signed dword) mul16s_error::ms#4 ← phi( mul16s_error::@1/(signed dword) mul16s_error::ms#5 ) + (signed word) mul16s_error::b#2 ← phi( mul16s_error::@1/(signed word) mul16s_error::b#3 ) + (byte*) print_char_cursor#116 ← phi( mul16s_error::@1/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#53 ← (byte*) print_char_cursor#116 + (byte*) print_str::str#11 ← (const string) mul16s_error::str1 call print_str to:mul16s_error::@3 mul16s_error::@3: scope:[mul16s_error] from mul16s_error::@2 - (byte*) print_line_cursor#93 ? phi( mul16s_error::@2/(byte*) print_line_cursor#97 ) - (signed dword) mul16s_error::mf#7 ? phi( mul16s_error::@2/(signed dword) mul16s_error::mf#8 ) - (signed dword) mul16s_error::mn#5 ? phi( mul16s_error::@2/(signed dword) mul16s_error::mn#6 ) - (signed dword) mul16s_error::ms#3 ? phi( mul16s_error::@2/(signed dword) mul16s_error::ms#4 ) - (signed word) mul16s_error::b#1 ? phi( mul16s_error::@2/(signed word) mul16s_error::b#2 ) - (byte*) print_char_cursor#117 ? phi( mul16s_error::@2/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#54 ? (byte*) print_char_cursor#117 - (signed word) print_sword::w#2 ? (signed word) mul16s_error::b#1 + (byte*) print_line_cursor#93 ← phi( mul16s_error::@2/(byte*) print_line_cursor#97 ) + (signed dword) mul16s_error::mf#7 ← phi( mul16s_error::@2/(signed dword) mul16s_error::mf#8 ) + (signed dword) mul16s_error::mn#5 ← phi( mul16s_error::@2/(signed dword) mul16s_error::mn#6 ) + (signed dword) mul16s_error::ms#3 ← phi( mul16s_error::@2/(signed dword) mul16s_error::ms#4 ) + (signed word) mul16s_error::b#1 ← phi( mul16s_error::@2/(signed word) mul16s_error::b#2 ) + (byte*) print_char_cursor#117 ← phi( mul16s_error::@2/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#54 ← (byte*) print_char_cursor#117 + (signed word) print_sword::w#2 ← (signed word) mul16s_error::b#1 call print_sword to:mul16s_error::@4 mul16s_error::@4: scope:[mul16s_error] from mul16s_error::@3 - (byte*) print_line_cursor#89 ? phi( mul16s_error::@3/(byte*) print_line_cursor#93 ) - (signed dword) mul16s_error::mf#6 ? phi( mul16s_error::@3/(signed dword) mul16s_error::mf#7 ) - (signed dword) mul16s_error::mn#4 ? phi( mul16s_error::@3/(signed dword) mul16s_error::mn#5 ) - (signed dword) mul16s_error::ms#2 ? phi( mul16s_error::@3/(signed dword) mul16s_error::ms#3 ) - (byte*) print_char_cursor#118 ? phi( mul16s_error::@3/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#55 ? (byte*) print_char_cursor#118 - (byte*) print_str::str#12 ? (const string) mul16s_error::str2 + (byte*) print_line_cursor#89 ← phi( mul16s_error::@3/(byte*) print_line_cursor#93 ) + (signed dword) mul16s_error::mf#6 ← phi( mul16s_error::@3/(signed dword) mul16s_error::mf#7 ) + (signed dword) mul16s_error::mn#4 ← phi( mul16s_error::@3/(signed dword) mul16s_error::mn#5 ) + (signed dword) mul16s_error::ms#2 ← phi( mul16s_error::@3/(signed dword) mul16s_error::ms#3 ) + (byte*) print_char_cursor#118 ← phi( mul16s_error::@3/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#55 ← (byte*) print_char_cursor#118 + (byte*) print_str::str#12 ← (const string) mul16s_error::str2 call print_str to:mul16s_error::@5 mul16s_error::@5: scope:[mul16s_error] from mul16s_error::@4 - (byte*) print_line_cursor#85 ? phi( mul16s_error::@4/(byte*) print_line_cursor#89 ) - (signed dword) mul16s_error::mf#5 ? phi( mul16s_error::@4/(signed dword) mul16s_error::mf#6 ) - (signed dword) mul16s_error::mn#3 ? phi( mul16s_error::@4/(signed dword) mul16s_error::mn#4 ) - (signed dword) mul16s_error::ms#1 ? phi( mul16s_error::@4/(signed dword) mul16s_error::ms#2 ) - (byte*) print_char_cursor#119 ? phi( mul16s_error::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#56 ? (byte*) print_char_cursor#119 - (signed dword) print_sdword::dw#1 ? (signed dword) mul16s_error::ms#1 + (byte*) print_line_cursor#85 ← phi( mul16s_error::@4/(byte*) print_line_cursor#89 ) + (signed dword) mul16s_error::mf#5 ← phi( mul16s_error::@4/(signed dword) mul16s_error::mf#6 ) + (signed dword) mul16s_error::mn#3 ← phi( mul16s_error::@4/(signed dword) mul16s_error::mn#4 ) + (signed dword) mul16s_error::ms#1 ← phi( mul16s_error::@4/(signed dword) mul16s_error::ms#2 ) + (byte*) print_char_cursor#119 ← phi( mul16s_error::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#56 ← (byte*) print_char_cursor#119 + (signed dword) print_sdword::dw#1 ← (signed dword) mul16s_error::ms#1 call print_sdword to:mul16s_error::@6 mul16s_error::@6: scope:[mul16s_error] from mul16s_error::@5 - (byte*) print_line_cursor#81 ? phi( mul16s_error::@5/(byte*) print_line_cursor#85 ) - (signed dword) mul16s_error::mf#4 ? phi( mul16s_error::@5/(signed dword) mul16s_error::mf#5 ) - (signed dword) mul16s_error::mn#2 ? phi( mul16s_error::@5/(signed dword) mul16s_error::mn#3 ) - (byte*) print_char_cursor#120 ? phi( mul16s_error::@5/(byte*) print_char_cursor#16 ) - (byte*) print_char_cursor#57 ? (byte*) print_char_cursor#120 - (byte*) print_str::str#13 ? (const string) mul16s_error::str3 + (byte*) print_line_cursor#81 ← phi( mul16s_error::@5/(byte*) print_line_cursor#85 ) + (signed dword) mul16s_error::mf#4 ← phi( mul16s_error::@5/(signed dword) mul16s_error::mf#5 ) + (signed dword) mul16s_error::mn#2 ← phi( mul16s_error::@5/(signed dword) mul16s_error::mn#3 ) + (byte*) print_char_cursor#120 ← phi( mul16s_error::@5/(byte*) print_char_cursor#16 ) + (byte*) print_char_cursor#57 ← (byte*) print_char_cursor#120 + (byte*) print_str::str#13 ← (const string) mul16s_error::str3 call print_str to:mul16s_error::@7 mul16s_error::@7: scope:[mul16s_error] from mul16s_error::@6 - (byte*) print_line_cursor#77 ? phi( mul16s_error::@6/(byte*) print_line_cursor#81 ) - (signed dword) mul16s_error::mf#3 ? phi( mul16s_error::@6/(signed dword) mul16s_error::mf#4 ) - (signed dword) mul16s_error::mn#1 ? phi( mul16s_error::@6/(signed dword) mul16s_error::mn#2 ) - (byte*) print_char_cursor#121 ? phi( mul16s_error::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#58 ? (byte*) print_char_cursor#121 - (signed dword) print_sdword::dw#2 ? (signed dword) mul16s_error::mn#1 + (byte*) print_line_cursor#77 ← phi( mul16s_error::@6/(byte*) print_line_cursor#81 ) + (signed dword) mul16s_error::mf#3 ← phi( mul16s_error::@6/(signed dword) mul16s_error::mf#4 ) + (signed dword) mul16s_error::mn#1 ← phi( mul16s_error::@6/(signed dword) mul16s_error::mn#2 ) + (byte*) print_char_cursor#121 ← phi( mul16s_error::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#58 ← (byte*) print_char_cursor#121 + (signed dword) print_sdword::dw#2 ← (signed dword) mul16s_error::mn#1 call print_sdword to:mul16s_error::@8 mul16s_error::@8: scope:[mul16s_error] from mul16s_error::@7 - (byte*) print_line_cursor#70 ? phi( mul16s_error::@7/(byte*) print_line_cursor#77 ) - (signed dword) mul16s_error::mf#2 ? phi( mul16s_error::@7/(signed dword) mul16s_error::mf#3 ) - (byte*) print_char_cursor#122 ? phi( mul16s_error::@7/(byte*) print_char_cursor#16 ) - (byte*) print_char_cursor#59 ? (byte*) print_char_cursor#122 - (byte*) print_str::str#14 ? (const string) mul16s_error::str4 + (byte*) print_line_cursor#70 ← phi( mul16s_error::@7/(byte*) print_line_cursor#77 ) + (signed dword) mul16s_error::mf#2 ← phi( mul16s_error::@7/(signed dword) mul16s_error::mf#3 ) + (byte*) print_char_cursor#122 ← phi( mul16s_error::@7/(byte*) print_char_cursor#16 ) + (byte*) print_char_cursor#59 ← (byte*) print_char_cursor#122 + (byte*) print_str::str#14 ← (const string) mul16s_error::str4 call print_str to:mul16s_error::@9 mul16s_error::@9: scope:[mul16s_error] from mul16s_error::@8 - (byte*) print_line_cursor#60 ? phi( mul16s_error::@8/(byte*) print_line_cursor#70 ) - (signed dword) mul16s_error::mf#1 ? phi( mul16s_error::@8/(signed dword) mul16s_error::mf#2 ) - (byte*) print_char_cursor#123 ? phi( mul16s_error::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#60 ? (byte*) print_char_cursor#123 - (signed dword) print_sdword::dw#3 ? (signed dword) mul16s_error::mf#1 + (byte*) print_line_cursor#60 ← phi( mul16s_error::@8/(byte*) print_line_cursor#70 ) + (signed dword) mul16s_error::mf#1 ← phi( mul16s_error::@8/(signed dword) mul16s_error::mf#2 ) + (byte*) print_char_cursor#123 ← phi( mul16s_error::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#60 ← (byte*) print_char_cursor#123 + (signed dword) print_sdword::dw#3 ← (signed dword) mul16s_error::mf#1 call print_sdword to:mul16s_error::@10 mul16s_error::@10: scope:[mul16s_error] from mul16s_error::@9 - (byte*) print_line_cursor#53 ? phi( mul16s_error::@9/(byte*) print_line_cursor#60 ) - (byte*) print_char_cursor#124 ? phi( mul16s_error::@9/(byte*) print_char_cursor#16 ) - (byte*) print_char_cursor#61 ? (byte*) print_char_cursor#124 + (byte*) print_line_cursor#53 ← phi( mul16s_error::@9/(byte*) print_line_cursor#60 ) + (byte*) print_char_cursor#124 ← phi( mul16s_error::@9/(byte*) print_char_cursor#16 ) + (byte*) print_char_cursor#61 ← (byte*) print_char_cursor#124 call print_ln to:mul16s_error::@11 mul16s_error::@11: scope:[mul16s_error] from mul16s_error::@10 - (byte*) print_char_cursor#125 ? phi( mul16s_error::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#40 ? phi( mul16s_error::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#40 - (byte*) print_char_cursor#62 ? (byte*) print_char_cursor#125 + (byte*) print_char_cursor#125 ← phi( mul16s_error::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#40 ← phi( mul16s_error::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#40 + (byte*) print_char_cursor#62 ← (byte*) print_char_cursor#125 to:mul16s_error::@return mul16s_error::@return: scope:[mul16s_error] from mul16s_error::@11 - (byte*) print_line_cursor#41 ? phi( mul16s_error::@11/(byte*) print_line_cursor#19 ) - (byte*) print_char_cursor#126 ? phi( mul16s_error::@11/(byte*) print_char_cursor#62 ) - (byte*) print_char_cursor#63 ? (byte*) print_char_cursor#126 - (byte*) print_line_cursor#20 ? (byte*) print_line_cursor#41 + (byte*) print_line_cursor#41 ← phi( mul16s_error::@11/(byte*) print_line_cursor#19 ) + (byte*) print_char_cursor#126 ← phi( mul16s_error::@11/(byte*) print_char_cursor#62 ) + (byte*) print_char_cursor#63 ← (byte*) print_char_cursor#126 + (byte*) print_line_cursor#20 ← (byte*) print_line_cursor#41 return to:@return @40: scope:[] from @33 - (byte*) print_screen#5 ? phi( @33/(byte*) print_screen#6 ) - (byte*) print_char_cursor#147 ? phi( @33/(byte*) print_char_cursor#157 ) - (byte*) print_line_cursor#54 ? phi( @33/(byte*) print_line_cursor#61 ) + (byte*) print_screen#5 ← phi( @33/(byte*) print_screen#6 ) + (byte*) print_char_cursor#147 ← phi( @33/(byte*) print_char_cursor#157 ) + (byte*) print_line_cursor#54 ← phi( @33/(byte*) print_line_cursor#61 ) call main to:@41 @41: scope:[] from @40 - (byte*) print_char_cursor#127 ? phi( @40/(byte*) print_char_cursor#27 ) - (byte*) print_line_cursor#42 ? phi( @40/(byte*) print_line_cursor#8 ) - (byte*) print_line_cursor#21 ? (byte*) print_line_cursor#42 - (byte*) print_char_cursor#64 ? (byte*) print_char_cursor#127 + (byte*) print_char_cursor#127 ← phi( @40/(byte*) print_char_cursor#27 ) + (byte*) print_line_cursor#42 ← phi( @40/(byte*) print_line_cursor#8 ) + (byte*) print_line_cursor#21 ← (byte*) print_line_cursor#42 + (byte*) print_char_cursor#64 ← (byte*) print_char_cursor#127 to:@end @end: scope:[] from @41 @@ -2509,23 +2509,23 @@ SYMBOL TABLE SSA (word) print_word::w#5 (word) print_word::w#6 -Inversing boolean not [28] (bool~) print_sword::$1 ? (signed word) print_sword::w#3 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [27] (bool~) print_sword::$0 ? (signed word) print_sword::w#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [76] (bool~) print_sdword::$1 ? (signed dword) print_sdword::dw#4 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [75] (bool~) print_sdword::$0 ? (signed dword) print_sdword::dw#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [140] (bool~) mul16u::$3 ? (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [139] (bool~) mul16u::$2 ? (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [166] (bool~) mul16s::$4 ? (signed word) mul16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [165] (bool~) mul16s::$3 ? (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [170] (bool~) mul16s::$6 ? (signed word) mul16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [169] (bool~) mul16s::$5 ? (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [206] (bool~) mulf_init::$10 ? (byte~) mulf_init::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [205] (bool~) mulf_init::$9 ? (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [236] (bool~) mulf_init::$18 ? (byte) mulf_init::x_255#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [235] (bool~) mulf_init::$17 ? (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [274] (bool~) mulf16s::$4 ? (signed word) mulf16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [273] (bool~) mulf16s::$3 ? (signed word) mulf16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [278] (bool~) mulf16s::$6 ? (signed word) mulf16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [277] (bool~) mulf16s::$5 ? (signed word) mulf16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [323] (bool~) muls16u::$1 ? (word) muls16u::a#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [322] (bool~) muls16u::$0 ? (word) muls16u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [346] (bool~) muls16s::$2 ? (signed word) muls16s::a#2 <= (byte/signed byte/word/signed word/dword/signed dword) 0 from [345] (bool~) muls16s::$1 ? (signed word) muls16s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [406] (bool~) mul16u_compare::$10 ? (dword) mul16u_compare::ms#1 == (dword) mul16u_compare::mf#0 from [405] (bool~) mul16u_compare::$9 ? (dword) mul16u_compare::ms#1 != (dword) mul16u_compare::mf#0 -Inversing boolean not [410] (bool~) mul16u_compare::$12 ? (dword) mul16u_compare::ms#2 == (dword) mul16u_compare::mn#1 from [409] (bool~) mul16u_compare::$11 ? (dword) mul16u_compare::ms#2 != (dword) mul16u_compare::mn#1 -Inversing boolean not [416] (bool~) mul16u_compare::$14 ? (byte) mul16u_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [415] (bool~) mul16u_compare::$13 ? (byte) mul16u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [545] (bool~) mul16s_compare::$12 ? (signed dword) mul16s_compare::ms#1 == (signed dword) mul16s_compare::mf#0 from [544] (bool~) mul16s_compare::$11 ? (signed dword) mul16s_compare::ms#1 != (signed dword) mul16s_compare::mf#0 -Inversing boolean not [549] (bool~) mul16s_compare::$14 ? (signed dword) mul16s_compare::ms#2 == (signed dword) mul16s_compare::mn#1 from [548] (bool~) mul16s_compare::$13 ? (signed dword) mul16s_compare::ms#2 != (signed dword) mul16s_compare::mn#1 -Inversing boolean not [555] (bool~) mul16s_compare::$16 ? (byte) mul16s_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [554] (bool~) mul16s_compare::$15 ? (byte) mul16s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [28] (bool~) print_sword::$1 ← (signed word) print_sword::w#3 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [27] (bool~) print_sword::$0 ← (signed word) print_sword::w#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [76] (bool~) print_sdword::$1 ← (signed dword) print_sdword::dw#4 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [75] (bool~) print_sdword::$0 ← (signed dword) print_sdword::dw#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [140] (bool~) mul16u::$3 ← (byte/word~) mul16u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [139] (bool~) mul16u::$2 ← (byte/word~) mul16u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [166] (bool~) mul16s::$4 ← (signed word) mul16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [165] (bool~) mul16s::$3 ← (signed word) mul16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [170] (bool~) mul16s::$6 ← (signed word) mul16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [169] (bool~) mul16s::$5 ← (signed word) mul16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [206] (bool~) mulf_init::$10 ← (byte~) mulf_init::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [205] (bool~) mulf_init::$9 ← (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [236] (bool~) mulf_init::$18 ← (byte) mulf_init::x_255#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [235] (bool~) mulf_init::$17 ← (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [274] (bool~) mulf16s::$4 ← (signed word) mulf16s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [273] (bool~) mulf16s::$3 ← (signed word) mulf16s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [278] (bool~) mulf16s::$6 ← (signed word) mulf16s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [277] (bool~) mulf16s::$5 ← (signed word) mulf16s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [323] (bool~) muls16u::$1 ← (word) muls16u::a#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [322] (bool~) muls16u::$0 ← (word) muls16u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [346] (bool~) muls16s::$2 ← (signed word) muls16s::a#2 <= (byte/signed byte/word/signed word/dword/signed dword) 0 from [345] (bool~) muls16s::$1 ← (signed word) muls16s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [406] (bool~) mul16u_compare::$10 ← (dword) mul16u_compare::ms#1 == (dword) mul16u_compare::mf#0 from [405] (bool~) mul16u_compare::$9 ← (dword) mul16u_compare::ms#1 != (dword) mul16u_compare::mf#0 +Inversing boolean not [410] (bool~) mul16u_compare::$12 ← (dword) mul16u_compare::ms#2 == (dword) mul16u_compare::mn#1 from [409] (bool~) mul16u_compare::$11 ← (dword) mul16u_compare::ms#2 != (dword) mul16u_compare::mn#1 +Inversing boolean not [416] (bool~) mul16u_compare::$14 ← (byte) mul16u_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [415] (bool~) mul16u_compare::$13 ← (byte) mul16u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [545] (bool~) mul16s_compare::$12 ← (signed dword) mul16s_compare::ms#1 == (signed dword) mul16s_compare::mf#0 from [544] (bool~) mul16s_compare::$11 ← (signed dword) mul16s_compare::ms#1 != (signed dword) mul16s_compare::mf#0 +Inversing boolean not [549] (bool~) mul16s_compare::$14 ← (signed dword) mul16s_compare::ms#2 == (signed dword) mul16s_compare::mn#1 from [548] (bool~) mul16s_compare::$13 ← (signed dword) mul16s_compare::ms#2 != (signed dword) mul16s_compare::mn#1 +Inversing boolean not [555] (bool~) mul16s_compare::$16 ← (byte) mul16s_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [554] (bool~) mul16s_compare::$15 ← (byte) mul16s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#71 (byte*) print_char_cursor#165 (byte*) print_screen#8 (byte*) print_line_cursor#62 (byte*) print_char_cursor#158 (byte*) print_screen#7 (byte*) print_line_cursor#61 (byte*) print_char_cursor#157 (byte*) print_screen#6 (byte*) print_line_cursor#54 (byte*) print_char_cursor#147 (byte*) print_screen#5 Alias (byte*) print_str::str#15 = (byte*) print_str::str#16 @@ -3001,23 +3001,23 @@ Constant (const byte*) mulf_init::$5 = mulf_sqr2_hi#0+$1ff Constant (const byte*) mulf_init::$6 = mulf_sqr1_hi#0+$100 Successful SSA optimization Pass2ConstantIdentification Successful SSA optimization Pass2ConstantStringConsolidation -Eliminating Noop Cast (word) print_word::w#0 ? ((word)) (signed word) print_sword::w#4 -Eliminating Noop Cast (word) mul16u::a#1 ? ((word)) (signed word) mul16s::a#0 -Eliminating Noop Cast (word) mul16u::b#0 ? ((word)) (signed word) mul16s::b#0 -Eliminating Noop Cast (word~) mul16s::$10 ? ((word)) (signed word) mul16s::b#0 -Eliminating Noop Cast (word~) mul16s::$14 ? ((word)) (signed word) mul16s::a#0 -Eliminating Noop Cast (word) mulf16u::a#0 ? ((word)) (signed word) mulf16s::a#0 -Eliminating Noop Cast (word) mulf16u::b#0 ? ((word)) (signed word) mulf16s::b#0 -Eliminating Noop Cast (word~) mulf16s::$10 ? ((word)) (signed word) mulf16s::b#0 -Eliminating Noop Cast (word~) mulf16s::$14 ? ((word)) (signed word) mulf16s::a#0 +Eliminating Noop Cast (word) print_word::w#0 ← ((word)) (signed word) print_sword::w#4 +Eliminating Noop Cast (word) mul16u::a#1 ← ((word)) (signed word) mul16s::a#0 +Eliminating Noop Cast (word) mul16u::b#0 ← ((word)) (signed word) mul16s::b#0 +Eliminating Noop Cast (word~) mul16s::$10 ← ((word)) (signed word) mul16s::b#0 +Eliminating Noop Cast (word~) mul16s::$14 ← ((word)) (signed word) mul16s::a#0 +Eliminating Noop Cast (word) mulf16u::a#0 ← ((word)) (signed word) mulf16s::a#0 +Eliminating Noop Cast (word) mulf16u::b#0 ← ((word)) (signed word) mulf16s::b#0 +Eliminating Noop Cast (word~) mulf16s::$10 ← ((word)) (signed word) mulf16s::b#0 +Eliminating Noop Cast (word~) mulf16s::$14 ← ((word)) (signed word) mulf16s::a#0 Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value mul16u_compare::j#1 ? ++ mul16u_compare::j#10 to ++ +Resolved ranged next value mul16u_compare::j#1 ← ++ mul16u_compare::j#10 to ++ Resolved ranged comparison value if(mul16u_compare::j#1!=rangelast(0,$f)) goto mul16u_compare::@2 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mul16u_compare::i#1 ? ++ mul16u_compare::i#12 to ++ +Resolved ranged next value mul16u_compare::i#1 ← ++ mul16u_compare::i#12 to ++ Resolved ranged comparison value if(mul16u_compare::i#1!=rangelast(0,$f)) goto mul16u_compare::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mul16s_compare::j#1 ? ++ mul16s_compare::j#10 to ++ +Resolved ranged next value mul16s_compare::j#1 ← ++ mul16s_compare::j#10 to ++ Resolved ranged comparison value if(mul16s_compare::j#1!=rangelast(0,$f)) goto mul16s_compare::@2 to (byte/signed byte/word/signed word/dword/signed dword) $10 -Resolved ranged next value mul16s_compare::i#1 ? ++ mul16s_compare::i#12 to ++ +Resolved ranged next value mul16s_compare::i#1 ← ++ mul16s_compare::i#12 to ++ Resolved ranged comparison value if(mul16s_compare::i#1!=rangelast(0,$f)) goto mul16s_compare::@1 to (byte/signed byte/word/signed word/dword/signed dword) $10 Culled Empty Block (label) print_ln::@2 Culled Empty Block (label) print_sword::@3 @@ -3223,140 +3223,140 @@ Calls in [mul16u_compare] to print_str:271 muls16u:279 mul16u:286 mulf16u:293 mu Calls in [mul16u_error] to print_str:331 print_word:335 print_str:337 print_word:341 print_str:343 print_dword:347 print_str:349 print_dword:353 print_str:355 print_dword:359 print_ln:361 Created 72 initial phi equivalence classes -Not coalescing [13] print_char_cursor#176 ? print_line_cursor#1 -Coalesced [15] print_char_cursor#184 ? print_char_cursor#143 -Coalesced [17] mul16s_compare::a#16 ? mul16s_compare::a#6 -Coalesced [18] mul16s_compare::b#16 ? mul16s_compare::b#6 -Coalesced [56] print_line_cursor#104 ? print_line_cursor#1 -Coalesced [57] print_char_cursor#178 ? print_char_cursor#128 -Not coalescing [59] print_char_cursor#185 ? print_line_cursor#1 -Coalesced (already) [61] print_line_cursor#105 ? print_line_cursor#1 -Coalesced (already) [62] print_char_cursor#179 ? print_char_cursor#128 -Coalesced [64] print_char_cursor#177 ? print_char_cursor#128 -Coalesced [65] mul16s_compare::a#15 ? mul16s_compare::a#1 -Coalesced [66] mul16s_compare::b#15 ? mul16s_compare::b#1 -Coalesced [67] mul16s_compare::i#14 ? mul16s_compare::i#1 -Coalesced (already) [68] mul16s_compare::a#17 ? mul16s_compare::a#1 -Coalesced (already) [69] mul16s_compare::b#17 ? mul16s_compare::b#1 -Coalesced [70] mul16s_compare::j#11 ? mul16s_compare::j#1 -Coalesced [71] mul16s_compare::ok#5 ? mul16s_compare::ok#4 -Coalesced [73] print_line_cursor#108 ? print_line_cursor#43 -Coalesced (already) [78] print_line_cursor#109 ? print_line_cursor#1 -Coalesced [80] print_str::str#18 ? print_str::str#17 -Coalesced (already) [81] print_char_cursor#198 ? print_char_cursor#148 -Coalesced [88] print_str::str#19 ? print_str::str#0 -Coalesced [89] print_char_cursor#199 ? print_char_cursor#1 -Coalesced (already) [90] print_char_cursor#186 ? print_char_cursor#128 -Coalesced [93] print_sword::w#7 ? print_sword::w#1 -Coalesced [95] print_char_cursor#187 ? print_char_cursor#20 -Coalesced [98] print_sword::w#8 ? print_sword::w#2 -Coalesced (already) [100] print_char_cursor#188 ? print_char_cursor#20 -Coalesced [103] print_sdword::dw#8 ? print_sdword::dw#1 -Coalesced (already) [105] print_char_cursor#189 ? print_char_cursor#20 -Coalesced [108] print_sdword::dw#9 ? print_sdword::dw#2 -Coalesced (already) [110] print_char_cursor#190 ? print_char_cursor#20 -Coalesced [113] print_sdword::dw#10 ? print_sdword::dw#3 -Coalesced (already) [115] print_line_cursor#106 ? print_line_cursor#1 -Coalesced (already) [116] print_char_cursor#180 ? print_char_cursor#20 -Coalesced [121] print_char_cursor#215 ? print_char_cursor#128 -Coalesced [124] print_sdword::dw#12 ? print_sdword::dw#0 -Coalesced [125] print_char_cursor#201 ? print_char_cursor#20 -Coalesced [128] print_dword::dw#9 ? print_dword::dw#0 -Coalesced [129] print_char_cursor#205 ? print_char_cursor#134 -Coalesced [132] print_sdword::dw#11 ? print_sdword::dw#4 -Coalesced (already) [133] print_char_cursor#200 ? print_char_cursor#128 -Coalesced [136] print_word::w#9 ? print_word::w#1 -Coalesced [137] print_char_cursor#208 ? print_char_cursor#133 -Coalesced [140] print_word::w#10 ? print_word::w#2 -Coalesced (already) [141] print_char_cursor#209 ? print_char_cursor#20 -Coalesced [146] print_byte::b#4 ? print_byte::b#0 -Coalesced [147] print_char_cursor#211 ? print_char_cursor#132 -Coalesced [150] print_byte::b#5 ? print_byte::b#1 -Coalesced (already) [151] print_char_cursor#212 ? print_char_cursor#20 -Coalesced [157] print_char::ch#5 ? print_char::ch#2 -Coalesced (already) [158] print_char_cursor#213 ? print_char_cursor#136 -Coalesced [162] print_char::ch#6 ? print_char::ch#3 -Coalesced (already) [163] print_char_cursor#214 ? print_char_cursor#20 -Coalesced (already) [172] print_char_cursor#216 ? print_char_cursor#128 -Coalesced [175] print_sword::w#10 ? print_sword::w#0 -Coalesced [176] print_char_cursor#218 ? print_char_cursor#20 -Coalesced (already) [179] print_char_cursor#210 ? print_char_cursor#130 -Coalesced [182] print_sword::w#9 ? print_sword::w#3 -Coalesced (already) [183] print_char_cursor#217 ? print_char_cursor#128 -Coalesced [193] mulf16s::m#7 ? mulf16s::m#1 -Coalesced [199] mulf16s::m#10 ? mulf16s::m#2 -Coalesced [203] mulf16s::m#9 ? mulf16s::m#5 -Coalesced [204] mulf16s::m#8 ? mulf16s::m#0 -Coalesced [220] mul16s::m#7 ? mul16s::m#1 -Coalesced [226] mul16s::m#10 ? mul16s::m#2 -Coalesced [230] mul16s::m#9 ? mul16s::m#5 -Coalesced [231] mul16s::m#8 ? mul16s::m#0 -Coalesced [234] mul16u::a#10 ? mul16u::a#6 -Coalesced [235] mul16u::mb#6 ? mul16u::mb#0 -Coalesced [242] mul16u::res#9 ? mul16u::res#1 -Coalesced [246] mul16u::a#11 ? mul16u::a#0 -Coalesced [247] mul16u::res#7 ? mul16u::res#6 -Coalesced [248] mul16u::mb#7 ? mul16u::mb#1 -Coalesced (already) [249] mul16u::res#8 ? mul16u::res#2 -Coalesced [256] muls16s::return#6 ? muls16s::m#1 -Coalesced [259] muls16s::m#10 ? muls16s::m#1 -Coalesced [260] muls16s::j#3 ? muls16s::j#1 -Coalesced [265] muls16s::return#5 ? muls16s::m#2 -Coalesced [266] muls16s::m#11 ? muls16s::m#2 -Coalesced [267] muls16s::i#3 ? muls16s::i#1 -Coalesced [270] print_char_cursor#191 ? print_char_cursor#139 -Coalesced [272] mul16u_compare::a#16 ? mul16u_compare::a#6 -Coalesced [273] mul16u_compare::b#16 ? mul16u_compare::b#6 -Coalesced [284] mul16u::b#4 ? mul16u::b#1 -Coalesced [285] mul16u::a#9 ? mul16u::a#2 -Coalesced [291] mulf16u::a#3 ? mulf16u::a#1 -Coalesced [292] mulf16u::b#3 ? mulf16u::b#1 -Coalesced (already) [315] print_char_cursor#181 ? print_char_cursor#128 -Not coalescing [317] print_char_cursor#192 ? print_line_cursor#1 -Coalesced (already) [319] print_line_cursor#107 ? print_line_cursor#1 -Coalesced (already) [320] print_char_cursor#182 ? print_char_cursor#128 -Coalesced (already) [322] print_char_cursor#219 ? print_char_cursor#128 -Coalesced [323] mul16u_compare::a#15 ? mul16u_compare::a#1 -Coalesced [324] mul16u_compare::b#15 ? mul16u_compare::b#1 -Coalesced [325] mul16u_compare::i#14 ? mul16u_compare::i#1 -Coalesced (already) [326] mul16u_compare::a#17 ? mul16u_compare::a#1 -Coalesced (already) [327] mul16u_compare::b#17 ? mul16u_compare::b#1 -Coalesced [328] mul16u_compare::j#11 ? mul16u_compare::j#1 -Coalesced [329] mul16u_compare::ok#5 ? mul16u_compare::ok#4 -Coalesced (already) [330] print_char_cursor#193 ? print_char_cursor#128 -Coalesced [333] print_word::w#7 ? print_word::w#3 -Coalesced (already) [334] print_char_cursor#206 ? print_char_cursor#128 -Coalesced (already) [336] print_char_cursor#194 ? print_char_cursor#20 -Coalesced [339] print_word::w#8 ? print_word::w#4 -Coalesced (already) [340] print_char_cursor#207 ? print_char_cursor#128 -Coalesced (already) [342] print_char_cursor#195 ? print_char_cursor#20 -Coalesced [345] print_dword::dw#6 ? print_dword::dw#1 -Coalesced (already) [346] print_char_cursor#202 ? print_char_cursor#128 -Coalesced (already) [348] print_char_cursor#196 ? print_char_cursor#20 -Coalesced [351] print_dword::dw#7 ? print_dword::dw#2 -Coalesced (already) [352] print_char_cursor#203 ? print_char_cursor#128 -Coalesced (already) [354] print_char_cursor#197 ? print_char_cursor#20 -Coalesced [357] print_dword::dw#8 ? print_dword::dw#3 -Coalesced (already) [358] print_char_cursor#204 ? print_char_cursor#128 -Coalesced (already) [360] print_char_cursor#183 ? print_char_cursor#20 -Coalesced [368] muls16u::return#5 ? muls16u::m#1 -Coalesced [371] muls16u::m#5 ? muls16u::m#1 -Coalesced [372] muls16u::i#3 ? muls16u::i#1 -Coalesced [380] mulf_init::sqr#8 ? mulf_init::sqr#2 -Coalesced [381] mulf_init::x_2#7 ? mulf_init::x_2#1 -Coalesced [404] mulf_init::x_255#5 ? mulf_init::x_255#1 -Coalesced [405] mulf_init::sqr2_lo#5 ? mulf_init::sqr2_lo#1 -Coalesced [406] mulf_init::sqr2_hi#5 ? mulf_init::sqr2_hi#1 -Coalesced [407] mulf_init::dir#4 ? mulf_init::dir#3 -Coalesced (already) [408] mulf_init::dir#5 ? mulf_init::dir#2 -Coalesced [409] mulf_init::c#5 ? mulf_init::c#1 -Coalesced [410] mulf_init::sqr#6 ? mulf_init::sqr#1 -Coalesced [411] mulf_init::sqr1_lo#5 ? mulf_init::sqr1_lo#1 -Coalesced [412] mulf_init::sqr1_hi#5 ? mulf_init::sqr1_hi#1 -Coalesced [413] mulf_init::x_2#5 ? mulf_init::x_2#2 -Coalesced [414] mulf_init::sqr#7 ? mulf_init::sqr#4 -Coalesced (already) [415] mulf_init::x_2#6 ? mulf_init::x_2#3 -Coalesced [422] print_cls::sc#3 ? print_cls::sc#1 +Not coalescing [13] print_char_cursor#176 ← print_line_cursor#1 +Coalesced [15] print_char_cursor#184 ← print_char_cursor#143 +Coalesced [17] mul16s_compare::a#16 ← mul16s_compare::a#6 +Coalesced [18] mul16s_compare::b#16 ← mul16s_compare::b#6 +Coalesced [56] print_line_cursor#104 ← print_line_cursor#1 +Coalesced [57] print_char_cursor#178 ← print_char_cursor#128 +Not coalescing [59] print_char_cursor#185 ← print_line_cursor#1 +Coalesced (already) [61] print_line_cursor#105 ← print_line_cursor#1 +Coalesced (already) [62] print_char_cursor#179 ← print_char_cursor#128 +Coalesced [64] print_char_cursor#177 ← print_char_cursor#128 +Coalesced [65] mul16s_compare::a#15 ← mul16s_compare::a#1 +Coalesced [66] mul16s_compare::b#15 ← mul16s_compare::b#1 +Coalesced [67] mul16s_compare::i#14 ← mul16s_compare::i#1 +Coalesced (already) [68] mul16s_compare::a#17 ← mul16s_compare::a#1 +Coalesced (already) [69] mul16s_compare::b#17 ← mul16s_compare::b#1 +Coalesced [70] mul16s_compare::j#11 ← mul16s_compare::j#1 +Coalesced [71] mul16s_compare::ok#5 ← mul16s_compare::ok#4 +Coalesced [73] print_line_cursor#108 ← print_line_cursor#43 +Coalesced (already) [78] print_line_cursor#109 ← print_line_cursor#1 +Coalesced [80] print_str::str#18 ← print_str::str#17 +Coalesced (already) [81] print_char_cursor#198 ← print_char_cursor#148 +Coalesced [88] print_str::str#19 ← print_str::str#0 +Coalesced [89] print_char_cursor#199 ← print_char_cursor#1 +Coalesced (already) [90] print_char_cursor#186 ← print_char_cursor#128 +Coalesced [93] print_sword::w#7 ← print_sword::w#1 +Coalesced [95] print_char_cursor#187 ← print_char_cursor#20 +Coalesced [98] print_sword::w#8 ← print_sword::w#2 +Coalesced (already) [100] print_char_cursor#188 ← print_char_cursor#20 +Coalesced [103] print_sdword::dw#8 ← print_sdword::dw#1 +Coalesced (already) [105] print_char_cursor#189 ← print_char_cursor#20 +Coalesced [108] print_sdword::dw#9 ← print_sdword::dw#2 +Coalesced (already) [110] print_char_cursor#190 ← print_char_cursor#20 +Coalesced [113] print_sdword::dw#10 ← print_sdword::dw#3 +Coalesced (already) [115] print_line_cursor#106 ← print_line_cursor#1 +Coalesced (already) [116] print_char_cursor#180 ← print_char_cursor#20 +Coalesced [121] print_char_cursor#215 ← print_char_cursor#128 +Coalesced [124] print_sdword::dw#12 ← print_sdword::dw#0 +Coalesced [125] print_char_cursor#201 ← print_char_cursor#20 +Coalesced [128] print_dword::dw#9 ← print_dword::dw#0 +Coalesced [129] print_char_cursor#205 ← print_char_cursor#134 +Coalesced [132] print_sdword::dw#11 ← print_sdword::dw#4 +Coalesced (already) [133] print_char_cursor#200 ← print_char_cursor#128 +Coalesced [136] print_word::w#9 ← print_word::w#1 +Coalesced [137] print_char_cursor#208 ← print_char_cursor#133 +Coalesced [140] print_word::w#10 ← print_word::w#2 +Coalesced (already) [141] print_char_cursor#209 ← print_char_cursor#20 +Coalesced [146] print_byte::b#4 ← print_byte::b#0 +Coalesced [147] print_char_cursor#211 ← print_char_cursor#132 +Coalesced [150] print_byte::b#5 ← print_byte::b#1 +Coalesced (already) [151] print_char_cursor#212 ← print_char_cursor#20 +Coalesced [157] print_char::ch#5 ← print_char::ch#2 +Coalesced (already) [158] print_char_cursor#213 ← print_char_cursor#136 +Coalesced [162] print_char::ch#6 ← print_char::ch#3 +Coalesced (already) [163] print_char_cursor#214 ← print_char_cursor#20 +Coalesced (already) [172] print_char_cursor#216 ← print_char_cursor#128 +Coalesced [175] print_sword::w#10 ← print_sword::w#0 +Coalesced [176] print_char_cursor#218 ← print_char_cursor#20 +Coalesced (already) [179] print_char_cursor#210 ← print_char_cursor#130 +Coalesced [182] print_sword::w#9 ← print_sword::w#3 +Coalesced (already) [183] print_char_cursor#217 ← print_char_cursor#128 +Coalesced [193] mulf16s::m#7 ← mulf16s::m#1 +Coalesced [199] mulf16s::m#10 ← mulf16s::m#2 +Coalesced [203] mulf16s::m#9 ← mulf16s::m#5 +Coalesced [204] mulf16s::m#8 ← mulf16s::m#0 +Coalesced [220] mul16s::m#7 ← mul16s::m#1 +Coalesced [226] mul16s::m#10 ← mul16s::m#2 +Coalesced [230] mul16s::m#9 ← mul16s::m#5 +Coalesced [231] mul16s::m#8 ← mul16s::m#0 +Coalesced [234] mul16u::a#10 ← mul16u::a#6 +Coalesced [235] mul16u::mb#6 ← mul16u::mb#0 +Coalesced [242] mul16u::res#9 ← mul16u::res#1 +Coalesced [246] mul16u::a#11 ← mul16u::a#0 +Coalesced [247] mul16u::res#7 ← mul16u::res#6 +Coalesced [248] mul16u::mb#7 ← mul16u::mb#1 +Coalesced (already) [249] mul16u::res#8 ← mul16u::res#2 +Coalesced [256] muls16s::return#6 ← muls16s::m#1 +Coalesced [259] muls16s::m#10 ← muls16s::m#1 +Coalesced [260] muls16s::j#3 ← muls16s::j#1 +Coalesced [265] muls16s::return#5 ← muls16s::m#2 +Coalesced [266] muls16s::m#11 ← muls16s::m#2 +Coalesced [267] muls16s::i#3 ← muls16s::i#1 +Coalesced [270] print_char_cursor#191 ← print_char_cursor#139 +Coalesced [272] mul16u_compare::a#16 ← mul16u_compare::a#6 +Coalesced [273] mul16u_compare::b#16 ← mul16u_compare::b#6 +Coalesced [284] mul16u::b#4 ← mul16u::b#1 +Coalesced [285] mul16u::a#9 ← mul16u::a#2 +Coalesced [291] mulf16u::a#3 ← mulf16u::a#1 +Coalesced [292] mulf16u::b#3 ← mulf16u::b#1 +Coalesced (already) [315] print_char_cursor#181 ← print_char_cursor#128 +Not coalescing [317] print_char_cursor#192 ← print_line_cursor#1 +Coalesced (already) [319] print_line_cursor#107 ← print_line_cursor#1 +Coalesced (already) [320] print_char_cursor#182 ← print_char_cursor#128 +Coalesced (already) [322] print_char_cursor#219 ← print_char_cursor#128 +Coalesced [323] mul16u_compare::a#15 ← mul16u_compare::a#1 +Coalesced [324] mul16u_compare::b#15 ← mul16u_compare::b#1 +Coalesced [325] mul16u_compare::i#14 ← mul16u_compare::i#1 +Coalesced (already) [326] mul16u_compare::a#17 ← mul16u_compare::a#1 +Coalesced (already) [327] mul16u_compare::b#17 ← mul16u_compare::b#1 +Coalesced [328] mul16u_compare::j#11 ← mul16u_compare::j#1 +Coalesced [329] mul16u_compare::ok#5 ← mul16u_compare::ok#4 +Coalesced (already) [330] print_char_cursor#193 ← print_char_cursor#128 +Coalesced [333] print_word::w#7 ← print_word::w#3 +Coalesced (already) [334] print_char_cursor#206 ← print_char_cursor#128 +Coalesced (already) [336] print_char_cursor#194 ← print_char_cursor#20 +Coalesced [339] print_word::w#8 ← print_word::w#4 +Coalesced (already) [340] print_char_cursor#207 ← print_char_cursor#128 +Coalesced (already) [342] print_char_cursor#195 ← print_char_cursor#20 +Coalesced [345] print_dword::dw#6 ← print_dword::dw#1 +Coalesced (already) [346] print_char_cursor#202 ← print_char_cursor#128 +Coalesced (already) [348] print_char_cursor#196 ← print_char_cursor#20 +Coalesced [351] print_dword::dw#7 ← print_dword::dw#2 +Coalesced (already) [352] print_char_cursor#203 ← print_char_cursor#128 +Coalesced (already) [354] print_char_cursor#197 ← print_char_cursor#20 +Coalesced [357] print_dword::dw#8 ← print_dword::dw#3 +Coalesced (already) [358] print_char_cursor#204 ← print_char_cursor#128 +Coalesced (already) [360] print_char_cursor#183 ← print_char_cursor#20 +Coalesced [368] muls16u::return#5 ← muls16u::m#1 +Coalesced [371] muls16u::m#5 ← muls16u::m#1 +Coalesced [372] muls16u::i#3 ← muls16u::i#1 +Coalesced [380] mulf_init::sqr#8 ← mulf_init::sqr#2 +Coalesced [381] mulf_init::x_2#7 ← mulf_init::x_2#1 +Coalesced [404] mulf_init::x_255#5 ← mulf_init::x_255#1 +Coalesced [405] mulf_init::sqr2_lo#5 ← mulf_init::sqr2_lo#1 +Coalesced [406] mulf_init::sqr2_hi#5 ← mulf_init::sqr2_hi#1 +Coalesced [407] mulf_init::dir#4 ← mulf_init::dir#3 +Coalesced (already) [408] mulf_init::dir#5 ← mulf_init::dir#2 +Coalesced [409] mulf_init::c#5 ← mulf_init::c#1 +Coalesced [410] mulf_init::sqr#6 ← mulf_init::sqr#1 +Coalesced [411] mulf_init::sqr1_lo#5 ← mulf_init::sqr1_lo#1 +Coalesced [412] mulf_init::sqr1_hi#5 ← mulf_init::sqr1_hi#1 +Coalesced [413] mulf_init::x_2#5 ← mulf_init::x_2#2 +Coalesced [414] mulf_init::sqr#7 ← mulf_init::sqr#4 +Coalesced (already) [415] mulf_init::x_2#6 ← mulf_init::x_2#3 +Coalesced [422] print_cls::sc#3 ← print_cls::sc#1 Coalesced down to 42 phi equivalence classes Culled Empty Block (label) mul16s_compare::@7 Culled Empty Block (label) mul16s_compare::@20 @@ -3461,7 +3461,7 @@ FINAL CONTROL FLOW GRAPH @end: scope:[] from @1 [3] phi() main: scope:[main] from @1 - [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [5] call print_cls to:main::@1 main::@1: scope:[main] from main @@ -3480,73 +3480,73 @@ main::@return: scope:[main] from main::@3 [12] return to:@return mul16s_compare: scope:[mul16s_compare] from main::@3 - [13] (byte*~) print_char_cursor#176 ? (byte*) print_line_cursor#1 + [13] (byte*~) print_char_cursor#176 ← (byte*) print_line_cursor#1 to:mul16s_compare::@1 mul16s_compare::@1: scope:[mul16s_compare] from mul16s_compare mul16s_compare::@8 - [14] (byte) mul16s_compare::i#12 ? phi( mul16s_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16s_compare::@8/(byte) mul16s_compare::i#1 ) - [14] (signed word) mul16s_compare::b#6 ? phi( mul16s_compare/-(word/signed word/dword/signed dword) $7fff mul16s_compare::@8/(signed word) mul16s_compare::b#1 ) - [14] (signed word) mul16s_compare::a#6 ? phi( mul16s_compare/-(word/signed word/dword/signed dword) $7fff mul16s_compare::@8/(signed word) mul16s_compare::a#1 ) - [14] (byte*) print_char_cursor#143 ? phi( mul16s_compare/(byte*~) print_char_cursor#176 mul16s_compare::@8/(byte*) print_char_cursor#128 ) + [14] (byte) mul16s_compare::i#12 ← phi( mul16s_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16s_compare::@8/(byte) mul16s_compare::i#1 ) + [14] (signed word) mul16s_compare::b#6 ← phi( mul16s_compare/-(word/signed word/dword/signed dword) $7fff mul16s_compare::@8/(signed word) mul16s_compare::b#1 ) + [14] (signed word) mul16s_compare::a#6 ← phi( mul16s_compare/-(word/signed word/dword/signed dword) $7fff mul16s_compare::@8/(signed word) mul16s_compare::a#1 ) + [14] (byte*) print_char_cursor#143 ← phi( mul16s_compare/(byte*~) print_char_cursor#176 mul16s_compare::@8/(byte*) print_char_cursor#128 ) [15] call print_str to:mul16s_compare::@2 mul16s_compare::@2: scope:[mul16s_compare] from mul16s_compare::@1 mul16s_compare::@5 - [16] (byte) mul16s_compare::j#10 ? phi( mul16s_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16s_compare::@5/(byte) mul16s_compare::j#1 ) - [16] (signed word) mul16s_compare::b#2 ? phi( mul16s_compare::@1/(signed word) mul16s_compare::b#6 mul16s_compare::@5/(signed word) mul16s_compare::b#1 ) - [16] (signed word) mul16s_compare::a#2 ? phi( mul16s_compare::@1/(signed word) mul16s_compare::a#6 mul16s_compare::@5/(signed word) mul16s_compare::a#1 ) - [17] (signed word) mul16s_compare::a#1 ? (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b - [18] (signed word) mul16s_compare::b#1 ? (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd - [19] (signed word) muls16s::a#0 ? (signed word) mul16s_compare::a#1 - [20] (signed word) muls16s::b#0 ? (signed word) mul16s_compare::b#1 + [16] (byte) mul16s_compare::j#10 ← phi( mul16s_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16s_compare::@5/(byte) mul16s_compare::j#1 ) + [16] (signed word) mul16s_compare::b#2 ← phi( mul16s_compare::@1/(signed word) mul16s_compare::b#6 mul16s_compare::@5/(signed word) mul16s_compare::b#1 ) + [16] (signed word) mul16s_compare::a#2 ← phi( mul16s_compare::@1/(signed word) mul16s_compare::a#6 mul16s_compare::@5/(signed word) mul16s_compare::a#1 ) + [17] (signed word) mul16s_compare::a#1 ← (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b + [18] (signed word) mul16s_compare::b#1 ← (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd + [19] (signed word) muls16s::a#0 ← (signed word) mul16s_compare::a#1 + [20] (signed word) muls16s::b#0 ← (signed word) mul16s_compare::b#1 [21] call muls16s - [22] (signed dword) muls16s::return#2 ? (signed dword) muls16s::return#0 + [22] (signed dword) muls16s::return#2 ← (signed dword) muls16s::return#0 to:mul16s_compare::@10 mul16s_compare::@10: scope:[mul16s_compare] from mul16s_compare::@2 - [23] (signed dword) mul16s_compare::ms#0 ? (signed dword) muls16s::return#2 - [24] (signed word) mul16s::a#0 ? (signed word) mul16s_compare::a#1 - [25] (signed word) mul16s::b#0 ? (signed word) mul16s_compare::b#1 + [23] (signed dword) mul16s_compare::ms#0 ← (signed dword) muls16s::return#2 + [24] (signed word) mul16s::a#0 ← (signed word) mul16s_compare::a#1 + [25] (signed word) mul16s::b#0 ← (signed word) mul16s_compare::b#1 [26] call mul16s - [27] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + [27] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 to:mul16s_compare::@11 mul16s_compare::@11: scope:[mul16s_compare] from mul16s_compare::@10 - [28] (signed dword) mul16s_compare::mn#0 ? (signed dword) mul16s::return#2 - [29] (signed word) mulf16s::a#0 ? (signed word) mul16s_compare::a#1 - [30] (signed word) mulf16s::b#0 ? (signed word) mul16s_compare::b#1 + [28] (signed dword) mul16s_compare::mn#0 ← (signed dword) mul16s::return#2 + [29] (signed word) mulf16s::a#0 ← (signed word) mul16s_compare::a#1 + [30] (signed word) mulf16s::b#0 ← (signed word) mul16s_compare::b#1 [31] call mulf16s - [32] (signed dword) mulf16s::return#2 ? (signed dword) mulf16s::return#0 + [32] (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#0 to:mul16s_compare::@12 mul16s_compare::@12: scope:[mul16s_compare] from mul16s_compare::@11 - [33] (signed dword) mul16s_compare::mf#0 ? (signed dword) mulf16s::return#2 + [33] (signed dword) mul16s_compare::mf#0 ← (signed dword) mulf16s::return#2 [34] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mf#0) goto mul16s_compare::@3 to:mul16s_compare::@6 mul16s_compare::@6: scope:[mul16s_compare] from mul16s_compare::@12 [35] phi() to:mul16s_compare::@3 mul16s_compare::@3: scope:[mul16s_compare] from mul16s_compare::@12 mul16s_compare::@6 - [36] (byte) mul16s_compare::ok#4 ? phi( mul16s_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul16s_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [36] (byte) mul16s_compare::ok#4 ← phi( mul16s_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul16s_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [37] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mn#0) goto mul16s_compare::@15 to:mul16s_compare::@4 mul16s_compare::@4: scope:[mul16s_compare] from mul16s_compare::@15 mul16s_compare::@3 - [38] (byte) mul16s_compare::ok#3 ? phi( mul16s_compare::@15/(byte) mul16s_compare::ok#4 mul16s_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [38] (byte) mul16s_compare::ok#3 ← phi( mul16s_compare::@15/(byte) mul16s_compare::ok#4 mul16s_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [39] if((byte) mul16s_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s_compare::@5 to:mul16s_compare::@7 mul16s_compare::@7: scope:[mul16s_compare] from mul16s_compare::@4 - [40] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - [41] (signed word) mul16s_error::a#0 ? (signed word) mul16s_compare::a#1 - [42] (signed word) mul16s_error::b#0 ? (signed word) mul16s_compare::b#1 - [43] (signed dword) mul16s_error::ms#0 ? (signed dword) mul16s_compare::ms#0 - [44] (signed dword) mul16s_error::mn#0 ? (signed dword) mul16s_compare::mn#0 - [45] (signed dword) mul16s_error::mf#0 ? (signed dword) mul16s_compare::mf#0 + [40] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + [41] (signed word) mul16s_error::a#0 ← (signed word) mul16s_compare::a#1 + [42] (signed word) mul16s_error::b#0 ← (signed word) mul16s_compare::b#1 + [43] (signed dword) mul16s_error::ms#0 ← (signed dword) mul16s_compare::ms#0 + [44] (signed dword) mul16s_error::mn#0 ← (signed dword) mul16s_compare::mn#0 + [45] (signed dword) mul16s_error::mf#0 ← (signed dword) mul16s_compare::mf#0 [46] call mul16s_error to:mul16s_compare::@return mul16s_compare::@return: scope:[mul16s_compare] from mul16s_compare::@14 mul16s_compare::@7 [47] return to:@return mul16s_compare::@5: scope:[mul16s_compare] from mul16s_compare::@4 - [48] (byte) mul16s_compare::j#1 ? ++ (byte) mul16s_compare::j#10 + [48] (byte) mul16s_compare::j#1 ← ++ (byte) mul16s_compare::j#10 [49] if((byte) mul16s_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@2 to:mul16s_compare::@8 mul16s_compare::@8: scope:[mul16s_compare] from mul16s_compare::@5 - [50] (byte) mul16s_compare::i#1 ? ++ (byte) mul16s_compare::i#12 + [50] (byte) mul16s_compare::i#1 ← ++ (byte) mul16s_compare::i#12 [51] if((byte) mul16s_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@1 to:mul16s_compare::@9 mul16s_compare::@9: scope:[mul16s_compare] from mul16s_compare::@8 @@ -3554,7 +3554,7 @@ mul16s_compare::@9: scope:[mul16s_compare] from mul16s_compare::@8 [53] call print_ln to:mul16s_compare::@13 mul16s_compare::@13: scope:[mul16s_compare] from mul16s_compare::@9 - [54] (byte*~) print_char_cursor#185 ? (byte*) print_line_cursor#1 + [54] (byte*~) print_char_cursor#185 ← (byte*) print_line_cursor#1 [55] call print_str to:mul16s_compare::@14 mul16s_compare::@14: scope:[mul16s_compare] from mul16s_compare::@13 @@ -3565,40 +3565,40 @@ mul16s_compare::@15: scope:[mul16s_compare] from mul16s_compare::@3 [58] phi() to:mul16s_compare::@4 print_ln: scope:[print_ln] from mul16s_compare::@14 mul16s_compare::@9 mul16s_error::@10 mul16u_compare::@14 mul16u_compare::@9 mul16u_error::@10 - [59] (byte*) print_char_cursor#129 ? phi( mul16s_compare::@9/(byte*) print_char_cursor#128 mul16s_compare::@14/(byte*) print_char_cursor#128 mul16s_error::@10/(byte*) print_char_cursor#20 mul16u_compare::@9/(byte*) print_char_cursor#128 mul16u_compare::@14/(byte*) print_char_cursor#128 mul16u_error::@10/(byte*) print_char_cursor#20 ) - [59] (byte*) print_line_cursor#43 ? phi( mul16s_compare::@9/(byte*) print_line_cursor#1 mul16s_compare::@14/(byte*) print_line_cursor#1 mul16s_error::@10/(byte*) print_line_cursor#1 mul16u_compare::@9/((byte*))(word/signed word/dword/signed dword) $400 mul16u_compare::@14/(byte*) print_line_cursor#1 mul16u_error::@10/((byte*))(word/signed word/dword/signed dword) $400 ) + [59] (byte*) print_char_cursor#129 ← phi( mul16s_compare::@9/(byte*) print_char_cursor#128 mul16s_compare::@14/(byte*) print_char_cursor#128 mul16s_error::@10/(byte*) print_char_cursor#20 mul16u_compare::@9/(byte*) print_char_cursor#128 mul16u_compare::@14/(byte*) print_char_cursor#128 mul16u_error::@10/(byte*) print_char_cursor#20 ) + [59] (byte*) print_line_cursor#43 ← phi( mul16s_compare::@9/(byte*) print_line_cursor#1 mul16s_compare::@14/(byte*) print_line_cursor#1 mul16s_error::@10/(byte*) print_line_cursor#1 mul16u_compare::@9/((byte*))(word/signed word/dword/signed dword) $400 mul16u_compare::@14/(byte*) print_line_cursor#1 mul16u_error::@10/((byte*))(word/signed word/dword/signed dword) $400 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [60] (byte*) print_line_cursor#22 ? phi( print_ln/(byte*) print_line_cursor#43 print_ln::@1/(byte*) print_line_cursor#1 ) - [61] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [60] (byte*) print_line_cursor#22 ← phi( print_ln/(byte*) print_line_cursor#43 print_ln::@1/(byte*) print_line_cursor#1 ) + [61] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 [62] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#129) goto print_ln::@1 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 [63] return to:@return print_str: scope:[print_str] from mul16s_compare::@1 mul16s_compare::@13 mul16s_error mul16s_error::@2 mul16s_error::@4 mul16s_error::@6 mul16s_error::@8 mul16u_compare::@1 mul16u_compare::@13 mul16u_error mul16u_error::@2 mul16u_error::@4 mul16u_error::@6 mul16u_error::@8 - [64] (byte*) print_char_cursor#148 ? phi( mul16s_compare::@1/(byte*) print_char_cursor#143 mul16s_compare::@13/(byte*~) print_char_cursor#185 mul16s_error/(byte*) print_char_cursor#128 mul16s_error::@2/(byte*) print_char_cursor#20 mul16s_error::@4/(byte*) print_char_cursor#20 mul16s_error::@6/(byte*) print_char_cursor#20 mul16s_error::@8/(byte*) print_char_cursor#20 mul16u_compare::@1/(byte*) print_char_cursor#139 mul16u_compare::@13/(byte*~) print_char_cursor#192 mul16u_error/(byte*) print_char_cursor#128 mul16u_error::@2/(byte*) print_char_cursor#20 mul16u_error::@4/(byte*) print_char_cursor#20 mul16u_error::@6/(byte*) print_char_cursor#20 mul16u_error::@8/(byte*) print_char_cursor#20 ) - [64] (byte*) print_str::str#17 ? phi( mul16s_compare::@1/(const string) str mul16s_compare::@13/(const string) mul16s_compare::str1 mul16s_error/(const string) mul16s_error::str mul16s_error::@2/(const string) str1 mul16s_error::@4/(const string) str2 mul16s_error::@6/(const string) str3 mul16s_error::@8/(const string) str4 mul16u_compare::@1/(const string) str mul16u_compare::@13/(const string) mul16u_compare::str1 mul16u_error/(const string) mul16u_error::str mul16u_error::@2/(const string) str1 mul16u_error::@4/(const string) str2 mul16u_error::@6/(const string) str3 mul16u_error::@8/(const string) str4 ) + [64] (byte*) print_char_cursor#148 ← phi( mul16s_compare::@1/(byte*) print_char_cursor#143 mul16s_compare::@13/(byte*~) print_char_cursor#185 mul16s_error/(byte*) print_char_cursor#128 mul16s_error::@2/(byte*) print_char_cursor#20 mul16s_error::@4/(byte*) print_char_cursor#20 mul16s_error::@6/(byte*) print_char_cursor#20 mul16s_error::@8/(byte*) print_char_cursor#20 mul16u_compare::@1/(byte*) print_char_cursor#139 mul16u_compare::@13/(byte*~) print_char_cursor#192 mul16u_error/(byte*) print_char_cursor#128 mul16u_error::@2/(byte*) print_char_cursor#20 mul16u_error::@4/(byte*) print_char_cursor#20 mul16u_error::@6/(byte*) print_char_cursor#20 mul16u_error::@8/(byte*) print_char_cursor#20 ) + [64] (byte*) print_str::str#17 ← phi( mul16s_compare::@1/(const string) str mul16s_compare::@13/(const string) mul16s_compare::str1 mul16s_error/(const string) mul16s_error::str mul16s_error::@2/(const string) str1 mul16s_error::@4/(const string) str2 mul16s_error::@6/(const string) str3 mul16s_error::@8/(const string) str4 mul16u_compare::@1/(const string) str mul16u_compare::@13/(const string) mul16u_compare::str1 mul16u_error/(const string) mul16u_error::str mul16u_error::@2/(const string) str1 mul16u_error::@4/(const string) str2 mul16u_error::@6/(const string) str3 mul16u_error::@8/(const string) str4 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [65] (byte*) print_char_cursor#128 ? phi( print_str/(byte*) print_char_cursor#148 print_str::@2/(byte*) print_char_cursor#1 ) - [65] (byte*) print_str::str#15 ? phi( print_str/(byte*) print_str::str#17 print_str::@2/(byte*) print_str::str#0 ) + [65] (byte*) print_char_cursor#128 ← phi( print_str/(byte*) print_char_cursor#148 print_str::@2/(byte*) print_char_cursor#1 ) + [65] (byte*) print_str::str#15 ← phi( print_str/(byte*) print_str::str#17 print_str::@2/(byte*) print_str::str#0 ) [66] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [67] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [68] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#15) - [69] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 - [70] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#15 + [68] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#15) + [69] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 + [70] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 to:print_str::@1 mul16s_error: scope:[mul16s_error] from mul16s_compare::@7 [71] phi() [72] call print_str to:mul16s_error::@1 mul16s_error::@1: scope:[mul16s_error] from mul16s_error - [73] (signed word) print_sword::w#1 ? (signed word) mul16s_error::a#0 + [73] (signed word) print_sword::w#1 ← (signed word) mul16s_error::a#0 [74] call print_sword to:mul16s_error::@2 mul16s_error::@2: scope:[mul16s_error] from mul16s_error::@1 @@ -3606,7 +3606,7 @@ mul16s_error::@2: scope:[mul16s_error] from mul16s_error::@1 [76] call print_str to:mul16s_error::@3 mul16s_error::@3: scope:[mul16s_error] from mul16s_error::@2 - [77] (signed word) print_sword::w#2 ? (signed word) mul16s_error::b#0 + [77] (signed word) print_sword::w#2 ← (signed word) mul16s_error::b#0 [78] call print_sword to:mul16s_error::@4 mul16s_error::@4: scope:[mul16s_error] from mul16s_error::@3 @@ -3614,7 +3614,7 @@ mul16s_error::@4: scope:[mul16s_error] from mul16s_error::@3 [80] call print_str to:mul16s_error::@5 mul16s_error::@5: scope:[mul16s_error] from mul16s_error::@4 - [81] (signed dword) print_sdword::dw#1 ? (signed dword) mul16s_error::ms#0 + [81] (signed dword) print_sdword::dw#1 ← (signed dword) mul16s_error::ms#0 [82] call print_sdword to:mul16s_error::@6 mul16s_error::@6: scope:[mul16s_error] from mul16s_error::@5 @@ -3622,7 +3622,7 @@ mul16s_error::@6: scope:[mul16s_error] from mul16s_error::@5 [84] call print_str to:mul16s_error::@7 mul16s_error::@7: scope:[mul16s_error] from mul16s_error::@6 - [85] (signed dword) print_sdword::dw#2 ? (signed dword) mul16s_error::mn#0 + [85] (signed dword) print_sdword::dw#2 ← (signed dword) mul16s_error::mn#0 [86] call print_sdword to:mul16s_error::@8 mul16s_error::@8: scope:[mul16s_error] from mul16s_error::@7 @@ -3630,7 +3630,7 @@ mul16s_error::@8: scope:[mul16s_error] from mul16s_error::@7 [88] call print_str to:mul16s_error::@9 mul16s_error::@9: scope:[mul16s_error] from mul16s_error::@8 - [89] (signed dword) print_sdword::dw#3 ? (signed dword) mul16s_error::mf#0 + [89] (signed dword) print_sdword::dw#3 ← (signed dword) mul16s_error::mf#0 [90] call print_sdword to:mul16s_error::@10 mul16s_error::@10: scope:[mul16s_error] from mul16s_error::@9 @@ -3641,7 +3641,7 @@ mul16s_error::@return: scope:[mul16s_error] from mul16s_error::@10 [93] return to:@return print_sdword: scope:[print_sdword] from mul16s_error::@5 mul16s_error::@7 mul16s_error::@9 - [94] (signed dword) print_sdword::dw#4 ? phi( mul16s_error::@5/(signed dword) print_sdword::dw#1 mul16s_error::@7/(signed dword) print_sdword::dw#2 mul16s_error::@9/(signed dword) print_sdword::dw#3 ) + [94] (signed dword) print_sdword::dw#4 ← phi( mul16s_error::@5/(signed dword) print_sdword::dw#1 mul16s_error::@7/(signed dword) print_sdword::dw#2 mul16s_error::@9/(signed dword) print_sdword::dw#3 ) [95] if((signed dword) print_sdword::dw#4>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sdword::@1 to:print_sdword::@2 print_sdword::@2: scope:[print_sdword] from print_sdword @@ -3649,69 +3649,69 @@ print_sdword::@2: scope:[print_sdword] from print_sdword [97] call print_char to:print_sdword::@3 print_sdword::@3: scope:[print_sdword] from print_sdword::@2 - [98] (signed dword) print_sdword::dw#0 ? - (signed dword) print_sdword::dw#4 + [98] (signed dword) print_sdword::dw#0 ← - (signed dword) print_sdword::dw#4 to:print_sdword::@1 print_sdword::@1: scope:[print_sdword] from print_sdword print_sdword::@3 - [99] (byte*) print_char_cursor#134 ? phi( print_sdword/(byte*) print_char_cursor#128 print_sdword::@3/(byte*) print_char_cursor#20 ) - [99] (signed dword) print_sdword::dw#5 ? phi( print_sdword/(signed dword) print_sdword::dw#4 print_sdword::@3/(signed dword) print_sdword::dw#0 ) - [100] (dword) print_dword::dw#0 ? ((dword)) (signed dword) print_sdword::dw#5 + [99] (byte*) print_char_cursor#134 ← phi( print_sdword/(byte*) print_char_cursor#128 print_sdword::@3/(byte*) print_char_cursor#20 ) + [99] (signed dword) print_sdword::dw#5 ← phi( print_sdword/(signed dword) print_sdword::dw#4 print_sdword::@3/(signed dword) print_sdword::dw#0 ) + [100] (dword) print_dword::dw#0 ← ((dword)) (signed dword) print_sdword::dw#5 [101] call print_dword to:print_sdword::@return print_sdword::@return: scope:[print_sdword] from print_sdword::@1 [102] return to:@return print_dword: scope:[print_dword] from mul16u_error::@5 mul16u_error::@7 mul16u_error::@9 print_sdword::@1 - [103] (byte*) print_char_cursor#133 ? phi( mul16u_error::@5/(byte*) print_char_cursor#128 mul16u_error::@7/(byte*) print_char_cursor#128 mul16u_error::@9/(byte*) print_char_cursor#128 print_sdword::@1/(byte*) print_char_cursor#134 ) - [103] (dword) print_dword::dw#4 ? phi( mul16u_error::@5/(dword) print_dword::dw#1 mul16u_error::@7/(dword) print_dword::dw#2 mul16u_error::@9/(dword) print_dword::dw#3 print_sdword::@1/(dword) print_dword::dw#0 ) - [104] (word) print_word::w#1 ? > (dword) print_dword::dw#4 + [103] (byte*) print_char_cursor#133 ← phi( mul16u_error::@5/(byte*) print_char_cursor#128 mul16u_error::@7/(byte*) print_char_cursor#128 mul16u_error::@9/(byte*) print_char_cursor#128 print_sdword::@1/(byte*) print_char_cursor#134 ) + [103] (dword) print_dword::dw#4 ← phi( mul16u_error::@5/(dword) print_dword::dw#1 mul16u_error::@7/(dword) print_dword::dw#2 mul16u_error::@9/(dword) print_dword::dw#3 print_sdword::@1/(dword) print_dword::dw#0 ) + [104] (word) print_word::w#1 ← > (dword) print_dword::dw#4 [105] call print_word to:print_dword::@1 print_dword::@1: scope:[print_dword] from print_dword - [106] (word) print_word::w#2 ? < (dword) print_dword::dw#4 + [106] (word) print_word::w#2 ← < (dword) print_dword::dw#4 [107] call print_word to:print_dword::@return print_dword::@return: scope:[print_dword] from print_dword::@1 [108] return to:@return print_word: scope:[print_word] from mul16u_error::@1 mul16u_error::@3 print_dword print_dword::@1 print_sword::@1 - [109] (byte*) print_char_cursor#132 ? phi( mul16u_error::@1/(byte*) print_char_cursor#128 mul16u_error::@3/(byte*) print_char_cursor#128 print_dword/(byte*) print_char_cursor#133 print_dword::@1/(byte*) print_char_cursor#20 print_sword::@1/(byte*) print_char_cursor#130 ) - [109] (word) print_word::w#5 ? phi( mul16u_error::@1/(word) print_word::w#3 mul16u_error::@3/(word) print_word::w#4 print_dword/(word) print_word::w#1 print_dword::@1/(word) print_word::w#2 print_sword::@1/(word~) print_word::w#11 ) - [110] (byte) print_byte::b#0 ? > (word) print_word::w#5 + [109] (byte*) print_char_cursor#132 ← phi( mul16u_error::@1/(byte*) print_char_cursor#128 mul16u_error::@3/(byte*) print_char_cursor#128 print_dword/(byte*) print_char_cursor#133 print_dword::@1/(byte*) print_char_cursor#20 print_sword::@1/(byte*) print_char_cursor#130 ) + [109] (word) print_word::w#5 ← phi( mul16u_error::@1/(word) print_word::w#3 mul16u_error::@3/(word) print_word::w#4 print_dword/(word) print_word::w#1 print_dword::@1/(word) print_word::w#2 print_sword::@1/(word~) print_word::w#11 ) + [110] (byte) print_byte::b#0 ← > (word) print_word::w#5 [111] call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [112] (byte) print_byte::b#1 ? < (word) print_word::w#5 + [112] (byte) print_byte::b#1 ← < (word) print_word::w#5 [113] call print_byte to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 [114] return to:@return print_byte: scope:[print_byte] from print_word print_word::@1 - [115] (byte*) print_char_cursor#136 ? phi( print_word/(byte*) print_char_cursor#132 print_word::@1/(byte*) print_char_cursor#20 ) - [115] (byte) print_byte::b#2 ? phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) - [116] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [117] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [115] (byte*) print_char_cursor#136 ← phi( print_word/(byte*) print_char_cursor#132 print_word::@1/(byte*) print_char_cursor#20 ) + [115] (byte) print_byte::b#2 ← phi( print_word/(byte) print_byte::b#0 print_word::@1/(byte) print_byte::b#1 ) + [116] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [117] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [118] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [119] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f - [120] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [119] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f + [120] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [121] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 [122] return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sdword::@2 print_sword::@2 - [123] (byte*) print_char_cursor#84 ? phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#20 print_sdword::@2/(byte*) print_char_cursor#128 print_sword::@2/(byte*) print_char_cursor#128 ) - [123] (byte) print_char::ch#4 ? phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sdword::@2/(byte) '-' print_sword::@2/(byte) '-' ) - [124] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#4 - [125] (byte*) print_char_cursor#20 ? ++ (byte*) print_char_cursor#84 + [123] (byte*) print_char_cursor#84 ← phi( print_byte/(byte*) print_char_cursor#136 print_byte::@1/(byte*) print_char_cursor#20 print_sdword::@2/(byte*) print_char_cursor#128 print_sword::@2/(byte*) print_char_cursor#128 ) + [123] (byte) print_char::ch#4 ← phi( print_byte/(byte) print_char::ch#2 print_byte::@1/(byte) print_char::ch#3 print_sdword::@2/(byte) '-' print_sword::@2/(byte) '-' ) + [124] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#4 + [125] (byte*) print_char_cursor#20 ← ++ (byte*) print_char_cursor#84 to:print_char::@return print_char::@return: scope:[print_char] from print_char [126] return to:@return print_sword: scope:[print_sword] from mul16s_error::@1 mul16s_error::@3 - [127] (signed word) print_sword::w#3 ? phi( mul16s_error::@1/(signed word) print_sword::w#1 mul16s_error::@3/(signed word) print_sword::w#2 ) + [127] (signed word) print_sword::w#3 ← phi( mul16s_error::@1/(signed word) print_sword::w#1 mul16s_error::@3/(signed word) print_sword::w#2 ) [128] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 to:print_sword::@2 print_sword::@2: scope:[print_sword] from print_sword @@ -3719,115 +3719,115 @@ print_sword::@2: scope:[print_sword] from print_sword [130] call print_char to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@2 - [131] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#3 + [131] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@3 - [132] (byte*) print_char_cursor#130 ? phi( print_sword/(byte*) print_char_cursor#128 print_sword::@3/(byte*) print_char_cursor#20 ) - [132] (signed word) print_sword::w#4 ? phi( print_sword/(signed word) print_sword::w#3 print_sword::@3/(signed word) print_sword::w#0 ) - [133] (word~) print_word::w#11 ? (word)(signed word) print_sword::w#4 + [132] (byte*) print_char_cursor#130 ← phi( print_sword/(byte*) print_char_cursor#128 print_sword::@3/(byte*) print_char_cursor#20 ) + [132] (signed word) print_sword::w#4 ← phi( print_sword/(signed word) print_sword::w#3 print_sword::@3/(signed word) print_sword::w#0 ) + [133] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [134] call print_word to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 [135] return to:@return mulf16s: scope:[mulf16s] from mul16s_compare::@11 - [136] (word~) mulf16u::a#4 ? (word)(signed word) mulf16s::a#0 - [137] (word~) mulf16u::b#4 ? (word)(signed word) mulf16s::b#0 + [136] (word~) mulf16u::a#4 ← (word)(signed word) mulf16s::a#0 + [137] (word~) mulf16u::b#4 ← (word)(signed word) mulf16s::b#0 [138] call mulf16u - [139] (dword) mulf16u::return#2 ? (dword) mulf16u::return#0 + [139] (dword) mulf16u::return#2 ← (dword) mulf16u::return#0 to:mulf16s::@5 mulf16s::@5: scope:[mulf16s] from mulf16s - [140] (dword) mulf16s::m#0 ? (dword) mulf16u::return#2 + [140] (dword) mulf16s::m#0 ← (dword) mulf16u::return#2 [141] if((signed word) mulf16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@1 to:mulf16s::@3 mulf16s::@3: scope:[mulf16s] from mulf16s::@5 - [142] (word~) mulf16s::$9 ? > (dword) mulf16s::m#0 - [143] (word~) mulf16s::$16 ? (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 - [144] (dword) mulf16s::m#1 ? (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 + [142] (word~) mulf16s::$9 ← > (dword) mulf16s::m#0 + [143] (word~) mulf16s::$16 ← (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 + [144] (dword) mulf16s::m#1 ← (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 to:mulf16s::@1 mulf16s::@1: scope:[mulf16s] from mulf16s::@3 mulf16s::@5 - [145] (dword) mulf16s::m#5 ? phi( mulf16s::@3/(dword) mulf16s::m#1 mulf16s::@5/(dword) mulf16s::m#0 ) + [145] (dword) mulf16s::m#5 ← phi( mulf16s::@3/(dword) mulf16s::m#1 mulf16s::@5/(dword) mulf16s::m#0 ) [146] if((signed word) mulf16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@2 to:mulf16s::@4 mulf16s::@4: scope:[mulf16s] from mulf16s::@1 - [147] (word~) mulf16s::$13 ? > (dword) mulf16s::m#5 - [148] (word~) mulf16s::$17 ? (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 - [149] (dword) mulf16s::m#2 ? (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 + [147] (word~) mulf16s::$13 ← > (dword) mulf16s::m#5 + [148] (word~) mulf16s::$17 ← (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 + [149] (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 to:mulf16s::@2 mulf16s::@2: scope:[mulf16s] from mulf16s::@1 mulf16s::@4 - [150] (dword) mulf16s::m#4 ? phi( mulf16s::@1/(dword) mulf16s::m#5 mulf16s::@4/(dword) mulf16s::m#2 ) - [151] (signed dword) mulf16s::return#0 ? ((signed dword)) (dword) mulf16s::m#4 + [150] (dword) mulf16s::m#4 ← phi( mulf16s::@1/(dword) mulf16s::m#5 mulf16s::@4/(dword) mulf16s::m#2 ) + [151] (signed dword) mulf16s::return#0 ← ((signed dword)) (dword) mulf16s::m#4 to:mulf16s::@return mulf16s::@return: scope:[mulf16s] from mulf16s::@2 [152] return to:@return mulf16u: scope:[mulf16u] from mul16u_compare::@11 mulf16s - [153] (word) mulf16u::b#2 ? phi( mul16u_compare::@11/(word) mulf16u::b#1 mulf16s/(word~) mulf16u::b#4 ) - [153] (word) mulf16u::a#2 ? phi( mul16u_compare::@11/(word) mulf16u::a#1 mulf16s/(word~) mulf16u::a#4 ) - [154] *((const word*) mulf16u::memA#0) ? (word) mulf16u::a#2 - [155] *((const word*) mulf16u::memB#0) ? (word) mulf16u::b#2 + [153] (word) mulf16u::b#2 ← phi( mul16u_compare::@11/(word) mulf16u::b#1 mulf16s/(word~) mulf16u::b#4 ) + [153] (word) mulf16u::a#2 ← phi( mul16u_compare::@11/(word) mulf16u::a#1 mulf16s/(word~) mulf16u::a#4 ) + [154] *((const word*) mulf16u::memA#0) ← (word) mulf16u::a#2 + [155] *((const word*) mulf16u::memB#0) ← (word) mulf16u::b#2 asm { ldamemA stasm1a+1 stasm3a+1 stasm5a+1 stasm7a+1 eor#$ff stasm2a+1 stasm4a+1 stasm6a+1 stasm8a+1 ldamemA+1 stasm1b+1 stasm3b+1 stasm5b+1 stasm7b+1 eor#$ff stasm2b+1 stasm4b+1 stasm6b+1 stasm8b+1 ldxmemB sec sm1a: ldamulf_sqr1_lo,x sm2a: sbcmulf_sqr2_lo,x stamemR+0 sm3a: ldamulf_sqr1_hi,x sm4a: sbcmulf_sqr2_hi,x sta_AA+1 sec sm1b: ldamulf_sqr1_lo,x sm2b: sbcmulf_sqr2_lo,x sta_cc+1 sm3b: ldamulf_sqr1_hi,x sm4b: sbcmulf_sqr2_hi,x sta_CC+1 ldxmemB+1 sec sm5a: ldamulf_sqr1_lo,x sm6a: sbcmulf_sqr2_lo,x sta_bb+1 sm7a: ldamulf_sqr1_hi,x sm8a: sbcmulf_sqr2_hi,x sta_BB+1 sec sm5b: ldamulf_sqr1_lo,x sm6b: sbcmulf_sqr2_lo,x sta_dd+1 sm7b: ldamulf_sqr1_hi,x sm8b: sbcmulf_sqr2_hi,x stamemR+3 clc _AA: lda#0 _bb: adc#0 stamemR+1 _BB: lda#0 _CC: adc#0 stamemR+2 bcc!+ incmemR+3 clc !: _cc: lda#0 adcmemR+1 stamemR+1 _dd: lda#0 adcmemR+2 stamemR+2 bcc!+ incmemR+3 !: } - [157] (dword) mulf16u::return#0 ? *((const dword*) mulf16u::memR#0) + [157] (dword) mulf16u::return#0 ← *((const dword*) mulf16u::memR#0) to:mulf16u::@return mulf16u::@return: scope:[mulf16u] from mulf16u [158] return to:@return mul16s: scope:[mul16s] from mul16s_compare::@10 - [159] (word~) mul16u::b#3 ? (word)(signed word) mul16s::b#0 - [160] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 + [159] (word~) mul16u::b#3 ← (word)(signed word) mul16s::b#0 + [160] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [161] call mul16u - [162] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + [162] (dword) mul16u::return#2 ← (dword) mul16u::res#2 to:mul16s::@5 mul16s::@5: scope:[mul16s] from mul16s - [163] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + [163] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [164] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 to:mul16s::@3 mul16s::@3: scope:[mul16s] from mul16s::@5 - [165] (word~) mul16s::$9 ? > (dword) mul16s::m#0 - [166] (word~) mul16s::$16 ? (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 - [167] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 + [165] (word~) mul16s::$9 ← > (dword) mul16s::m#0 + [166] (word~) mul16s::$16 ← (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 + [167] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 to:mul16s::@1 mul16s::@1: scope:[mul16s] from mul16s::@3 mul16s::@5 - [168] (dword) mul16s::m#5 ? phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@5/(dword) mul16s::m#0 ) + [168] (dword) mul16s::m#5 ← phi( mul16s::@3/(dword) mul16s::m#1 mul16s::@5/(dword) mul16s::m#0 ) [169] if((signed word) mul16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@2 to:mul16s::@4 mul16s::@4: scope:[mul16s] from mul16s::@1 - [170] (word~) mul16s::$13 ? > (dword) mul16s::m#5 - [171] (word~) mul16s::$17 ? (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 - [172] (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 + [170] (word~) mul16s::$13 ← > (dword) mul16s::m#5 + [171] (word~) mul16s::$17 ← (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 + [172] (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 to:mul16s::@2 mul16s::@2: scope:[mul16s] from mul16s::@1 mul16s::@4 - [173] (dword) mul16s::m#4 ? phi( mul16s::@1/(dword) mul16s::m#5 mul16s::@4/(dword) mul16s::m#2 ) - [174] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 + [173] (dword) mul16s::m#4 ← phi( mul16s::@1/(dword) mul16s::m#5 mul16s::@4/(dword) mul16s::m#2 ) + [174] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 to:mul16s::@return mul16s::@return: scope:[mul16s] from mul16s::@2 [175] return to:@return mul16u: scope:[mul16u] from mul16s mul16u_compare::@10 - [176] (word) mul16u::a#6 ? phi( mul16s/(word~) mul16u::a#8 mul16u_compare::@10/(word) mul16u::a#2 ) - [176] (word) mul16u::b#2 ? phi( mul16s/(word~) mul16u::b#3 mul16u_compare::@10/(word) mul16u::b#1 ) - [177] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 + [176] (word) mul16u::a#6 ← phi( mul16s/(word~) mul16u::a#8 mul16u_compare::@10/(word) mul16u::a#2 ) + [176] (word) mul16u::b#2 ← phi( mul16s/(word~) mul16u::b#3 mul16u_compare::@10/(word) mul16u::b#1 ) + [177] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 to:mul16u::@1 mul16u::@1: scope:[mul16u] from mul16u mul16u::@3 - [178] (dword) mul16u::mb#2 ? phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) - [178] (dword) mul16u::res#2 ? phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) - [178] (word) mul16u::a#3 ? phi( mul16u/(word) mul16u::a#6 mul16u::@3/(word) mul16u::a#0 ) + [178] (dword) mul16u::mb#2 ← phi( mul16u/(dword) mul16u::mb#0 mul16u::@3/(dword) mul16u::mb#1 ) + [178] (dword) mul16u::res#2 ← phi( mul16u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u::@3/(dword) mul16u::res#6 ) + [178] (word) mul16u::a#3 ← phi( mul16u/(word) mul16u::a#6 mul16u::@3/(word) mul16u::a#0 ) [179] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 to:mul16u::@return mul16u::@return: scope:[mul16u] from mul16u::@1 [180] return to:@return mul16u::@2: scope:[mul16u] from mul16u::@1 - [181] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [181] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [182] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 to:mul16u::@4 mul16u::@4: scope:[mul16u] from mul16u::@2 - [183] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 + [183] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 to:mul16u::@3 mul16u::@3: scope:[mul16u] from mul16u::@2 mul16u::@4 - [184] (dword) mul16u::res#6 ? phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) - [185] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [186] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [184] (dword) mul16u::res#6 ← phi( mul16u::@2/(dword) mul16u::res#2 mul16u::@4/(dword) mul16u::res#1 ) + [185] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [186] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul16u::@1 muls16s: scope:[muls16s] from mul16s_compare::@2 [187] if((signed word) muls16s::a#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@4 @@ -3836,93 +3836,93 @@ muls16s::@2: scope:[muls16s] from muls16s [188] if((signed word) muls16s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@1 to:muls16s::@3 muls16s::@3: scope:[muls16s] from muls16s::@2 muls16s::@3 - [189] (signed word) muls16s::j#2 ? phi( muls16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@3/(signed word) muls16s::j#1 ) - [189] (signed dword) muls16s::m#3 ? phi( muls16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@3/(signed dword) muls16s::m#1 ) - [190] (signed dword) muls16s::m#1 ? (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 - [191] (signed word) muls16s::j#1 ? ++ (signed word) muls16s::j#2 + [189] (signed word) muls16s::j#2 ← phi( muls16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@3/(signed word) muls16s::j#1 ) + [189] (signed dword) muls16s::m#3 ← phi( muls16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@3/(signed dword) muls16s::m#1 ) + [190] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 + [191] (signed word) muls16s::j#1 ← ++ (signed word) muls16s::j#2 [192] if((signed word) muls16s::j#1!=(signed word) muls16s::a#0) goto muls16s::@3 to:muls16s::@1 muls16s::@1: scope:[muls16s] from muls16s::@2 muls16s::@3 muls16s::@4 - [193] (signed dword) muls16s::return#0 ? phi( muls16s::@4/(signed dword) muls16s::m#2 muls16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@3/(signed dword) muls16s::m#1 ) + [193] (signed dword) muls16s::return#0 ← phi( muls16s::@4/(signed dword) muls16s::m#2 muls16s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@3/(signed dword) muls16s::m#1 ) to:muls16s::@return muls16s::@return: scope:[muls16s] from muls16s::@1 [194] return to:@return muls16s::@4: scope:[muls16s] from muls16s muls16s::@4 - [195] (signed word) muls16s::i#2 ? phi( muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@4/(signed word) muls16s::i#1 ) - [195] (signed dword) muls16s::m#5 ? phi( muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@4/(signed dword) muls16s::m#2 ) - [196] (signed dword) muls16s::m#2 ? (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 - [197] (signed word) muls16s::i#1 ? -- (signed word) muls16s::i#2 + [195] (signed word) muls16s::i#2 ← phi( muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@4/(signed word) muls16s::i#1 ) + [195] (signed dword) muls16s::m#5 ← phi( muls16s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16s::@4/(signed dword) muls16s::m#2 ) + [196] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 + [197] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 [198] if((signed word) muls16s::i#1!=(signed word) muls16s::a#0) goto muls16s::@4 to:muls16s::@1 mul16u_compare: scope:[mul16u_compare] from main::@2 [199] phi() to:mul16u_compare::@1 mul16u_compare::@1: scope:[mul16u_compare] from mul16u_compare mul16u_compare::@8 - [200] (byte) mul16u_compare::i#12 ? phi( mul16u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@8/(byte) mul16u_compare::i#1 ) - [200] (word) mul16u_compare::b#6 ? phi( mul16u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@8/(word) mul16u_compare::b#1 ) - [200] (word) mul16u_compare::a#6 ? phi( mul16u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@8/(word) mul16u_compare::a#1 ) - [200] (byte*) print_char_cursor#139 ? phi( mul16u_compare/((byte*))(word/signed word/dword/signed dword) $400 mul16u_compare::@8/(byte*) print_char_cursor#128 ) + [200] (byte) mul16u_compare::i#12 ← phi( mul16u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@8/(byte) mul16u_compare::i#1 ) + [200] (word) mul16u_compare::b#6 ← phi( mul16u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@8/(word) mul16u_compare::b#1 ) + [200] (word) mul16u_compare::a#6 ← phi( mul16u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@8/(word) mul16u_compare::a#1 ) + [200] (byte*) print_char_cursor#139 ← phi( mul16u_compare/((byte*))(word/signed word/dword/signed dword) $400 mul16u_compare::@8/(byte*) print_char_cursor#128 ) [201] call print_str to:mul16u_compare::@2 mul16u_compare::@2: scope:[mul16u_compare] from mul16u_compare::@1 mul16u_compare::@5 - [202] (byte) mul16u_compare::j#10 ? phi( mul16u_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@5/(byte) mul16u_compare::j#1 ) - [202] (word) mul16u_compare::b#2 ? phi( mul16u_compare::@1/(word) mul16u_compare::b#6 mul16u_compare::@5/(word) mul16u_compare::b#1 ) - [202] (word) mul16u_compare::a#2 ? phi( mul16u_compare::@1/(word) mul16u_compare::a#6 mul16u_compare::@5/(word) mul16u_compare::a#1 ) - [203] (word) mul16u_compare::a#1 ? (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b - [204] (word) mul16u_compare::b#1 ? (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd - [205] (word) muls16u::a#0 ? (word) mul16u_compare::a#1 - [206] (word) muls16u::b#0 ? (word) mul16u_compare::b#1 + [202] (byte) mul16u_compare::j#10 ← phi( mul16u_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul16u_compare::@5/(byte) mul16u_compare::j#1 ) + [202] (word) mul16u_compare::b#2 ← phi( mul16u_compare::@1/(word) mul16u_compare::b#6 mul16u_compare::@5/(word) mul16u_compare::b#1 ) + [202] (word) mul16u_compare::a#2 ← phi( mul16u_compare::@1/(word) mul16u_compare::a#6 mul16u_compare::@5/(word) mul16u_compare::a#1 ) + [203] (word) mul16u_compare::a#1 ← (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b + [204] (word) mul16u_compare::b#1 ← (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd + [205] (word) muls16u::a#0 ← (word) mul16u_compare::a#1 + [206] (word) muls16u::b#0 ← (word) mul16u_compare::b#1 [207] call muls16u - [208] (dword) muls16u::return#2 ? (dword) muls16u::return#0 + [208] (dword) muls16u::return#2 ← (dword) muls16u::return#0 to:mul16u_compare::@10 mul16u_compare::@10: scope:[mul16u_compare] from mul16u_compare::@2 - [209] (dword) mul16u_compare::ms#0 ? (dword) muls16u::return#2 - [210] (word) mul16u::a#2 ? (word) mul16u_compare::a#1 - [211] (word) mul16u::b#1 ? (word) mul16u_compare::b#1 + [209] (dword) mul16u_compare::ms#0 ← (dword) muls16u::return#2 + [210] (word) mul16u::a#2 ← (word) mul16u_compare::a#1 + [211] (word) mul16u::b#1 ← (word) mul16u_compare::b#1 [212] call mul16u - [213] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + [213] (dword) mul16u::return#3 ← (dword) mul16u::res#2 to:mul16u_compare::@11 mul16u_compare::@11: scope:[mul16u_compare] from mul16u_compare::@10 - [214] (dword) mul16u_compare::mn#0 ? (dword) mul16u::return#3 - [215] (word) mulf16u::a#1 ? (word) mul16u_compare::a#1 - [216] (word) mulf16u::b#1 ? (word) mul16u_compare::b#1 + [214] (dword) mul16u_compare::mn#0 ← (dword) mul16u::return#3 + [215] (word) mulf16u::a#1 ← (word) mul16u_compare::a#1 + [216] (word) mulf16u::b#1 ← (word) mul16u_compare::b#1 [217] call mulf16u - [218] (dword) mulf16u::return#3 ? (dword) mulf16u::return#0 + [218] (dword) mulf16u::return#3 ← (dword) mulf16u::return#0 to:mul16u_compare::@12 mul16u_compare::@12: scope:[mul16u_compare] from mul16u_compare::@11 - [219] (dword) mul16u_compare::mf#0 ? (dword) mulf16u::return#3 + [219] (dword) mul16u_compare::mf#0 ← (dword) mulf16u::return#3 [220] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mf#0) goto mul16u_compare::@3 to:mul16u_compare::@6 mul16u_compare::@6: scope:[mul16u_compare] from mul16u_compare::@12 [221] phi() to:mul16u_compare::@3 mul16u_compare::@3: scope:[mul16u_compare] from mul16u_compare::@12 mul16u_compare::@6 - [222] (byte) mul16u_compare::ok#4 ? phi( mul16u_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul16u_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [222] (byte) mul16u_compare::ok#4 ← phi( mul16u_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul16u_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [223] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mn#0) goto mul16u_compare::@15 to:mul16u_compare::@4 mul16u_compare::@4: scope:[mul16u_compare] from mul16u_compare::@15 mul16u_compare::@3 - [224] (byte) mul16u_compare::ok#3 ? phi( mul16u_compare::@15/(byte) mul16u_compare::ok#4 mul16u_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [224] (byte) mul16u_compare::ok#3 ← phi( mul16u_compare::@15/(byte) mul16u_compare::ok#4 mul16u_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [225] if((byte) mul16u_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u_compare::@5 to:mul16u_compare::@7 mul16u_compare::@7: scope:[mul16u_compare] from mul16u_compare::@4 - [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - [227] (word) mul16u_error::a#0 ? (word) mul16u_compare::a#1 - [228] (word) mul16u_error::b#0 ? (word) mul16u_compare::b#1 - [229] (dword) mul16u_error::ms#0 ? (dword) mul16u_compare::ms#0 - [230] (dword) mul16u_error::mn#0 ? (dword) mul16u_compare::mn#0 - [231] (dword) mul16u_error::mf#0 ? (dword) mul16u_compare::mf#0 + [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + [227] (word) mul16u_error::a#0 ← (word) mul16u_compare::a#1 + [228] (word) mul16u_error::b#0 ← (word) mul16u_compare::b#1 + [229] (dword) mul16u_error::ms#0 ← (dword) mul16u_compare::ms#0 + [230] (dword) mul16u_error::mn#0 ← (dword) mul16u_compare::mn#0 + [231] (dword) mul16u_error::mf#0 ← (dword) mul16u_compare::mf#0 [232] call mul16u_error to:mul16u_compare::@return mul16u_compare::@return: scope:[mul16u_compare] from mul16u_compare::@14 mul16u_compare::@7 [233] return to:@return mul16u_compare::@5: scope:[mul16u_compare] from mul16u_compare::@4 - [234] (byte) mul16u_compare::j#1 ? ++ (byte) mul16u_compare::j#10 + [234] (byte) mul16u_compare::j#1 ← ++ (byte) mul16u_compare::j#10 [235] if((byte) mul16u_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@2 to:mul16u_compare::@8 mul16u_compare::@8: scope:[mul16u_compare] from mul16u_compare::@5 - [236] (byte) mul16u_compare::i#1 ? ++ (byte) mul16u_compare::i#12 + [236] (byte) mul16u_compare::i#1 ← ++ (byte) mul16u_compare::i#12 [237] if((byte) mul16u_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@1 to:mul16u_compare::@9 mul16u_compare::@9: scope:[mul16u_compare] from mul16u_compare::@8 @@ -3930,7 +3930,7 @@ mul16u_compare::@9: scope:[mul16u_compare] from mul16u_compare::@8 [239] call print_ln to:mul16u_compare::@13 mul16u_compare::@13: scope:[mul16u_compare] from mul16u_compare::@9 - [240] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 + [240] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 [241] call print_str to:mul16u_compare::@14 mul16u_compare::@14: scope:[mul16u_compare] from mul16u_compare::@13 @@ -3945,7 +3945,7 @@ mul16u_error: scope:[mul16u_error] from mul16u_compare::@7 [246] call print_str to:mul16u_error::@1 mul16u_error::@1: scope:[mul16u_error] from mul16u_error - [247] (word) print_word::w#3 ? (word) mul16u_error::a#0 + [247] (word) print_word::w#3 ← (word) mul16u_error::a#0 [248] call print_word to:mul16u_error::@2 mul16u_error::@2: scope:[mul16u_error] from mul16u_error::@1 @@ -3953,7 +3953,7 @@ mul16u_error::@2: scope:[mul16u_error] from mul16u_error::@1 [250] call print_str to:mul16u_error::@3 mul16u_error::@3: scope:[mul16u_error] from mul16u_error::@2 - [251] (word) print_word::w#4 ? (word) mul16u_error::b#0 + [251] (word) print_word::w#4 ← (word) mul16u_error::b#0 [252] call print_word to:mul16u_error::@4 mul16u_error::@4: scope:[mul16u_error] from mul16u_error::@3 @@ -3961,7 +3961,7 @@ mul16u_error::@4: scope:[mul16u_error] from mul16u_error::@3 [254] call print_str to:mul16u_error::@5 mul16u_error::@5: scope:[mul16u_error] from mul16u_error::@4 - [255] (dword) print_dword::dw#1 ? (dword) mul16u_error::ms#0 + [255] (dword) print_dword::dw#1 ← (dword) mul16u_error::ms#0 [256] call print_dword to:mul16u_error::@6 mul16u_error::@6: scope:[mul16u_error] from mul16u_error::@5 @@ -3969,7 +3969,7 @@ mul16u_error::@6: scope:[mul16u_error] from mul16u_error::@5 [258] call print_str to:mul16u_error::@7 mul16u_error::@7: scope:[mul16u_error] from mul16u_error::@6 - [259] (dword) print_dword::dw#2 ? (dword) mul16u_error::mn#0 + [259] (dword) print_dword::dw#2 ← (dword) mul16u_error::mn#0 [260] call print_dword to:mul16u_error::@8 mul16u_error::@8: scope:[mul16u_error] from mul16u_error::@7 @@ -3977,7 +3977,7 @@ mul16u_error::@8: scope:[mul16u_error] from mul16u_error::@7 [262] call print_str to:mul16u_error::@9 mul16u_error::@9: scope:[mul16u_error] from mul16u_error::@8 - [263] (dword) print_dword::dw#3 ? (dword) mul16u_error::mf#0 + [263] (dword) print_dword::dw#3 ← (dword) mul16u_error::mf#0 [264] call print_dword to:mul16u_error::@10 mul16u_error::@10: scope:[mul16u_error] from mul16u_error::@9 @@ -3991,14 +3991,14 @@ muls16u: scope:[muls16u] from mul16u_compare::@2 [268] if((word) muls16u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16u::@1 to:muls16u::@2 muls16u::@2: scope:[muls16u] from muls16u muls16u::@2 - [269] (word) muls16u::i#2 ? phi( muls16u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16u::@2/(word) muls16u::i#1 ) - [269] (dword) muls16u::m#3 ? phi( muls16u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16u::@2/(dword) muls16u::m#1 ) - [270] (dword) muls16u::m#1 ? (dword) muls16u::m#3 + (word) muls16u::b#0 - [271] (word) muls16u::i#1 ? ++ (word) muls16u::i#2 + [269] (word) muls16u::i#2 ← phi( muls16u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16u::@2/(word) muls16u::i#1 ) + [269] (dword) muls16u::m#3 ← phi( muls16u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16u::@2/(dword) muls16u::m#1 ) + [270] (dword) muls16u::m#1 ← (dword) muls16u::m#3 + (word) muls16u::b#0 + [271] (word) muls16u::i#1 ← ++ (word) muls16u::i#2 [272] if((word) muls16u::i#1!=(word) muls16u::a#0) goto muls16u::@2 to:muls16u::@1 muls16u::@1: scope:[muls16u] from muls16u muls16u::@2 - [273] (dword) muls16u::return#0 ? phi( muls16u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16u::@2/(dword) muls16u::m#1 ) + [273] (dword) muls16u::return#0 ← phi( muls16u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls16u::@2/(dword) muls16u::m#1 ) to:muls16u::@return muls16u::@return: scope:[muls16u] from muls16u::@1 [274] return @@ -4007,50 +4007,50 @@ mulf_init: scope:[mulf_init] from main::@1 [275] phi() to:mulf_init::@1 mulf_init::@1: scope:[mulf_init] from mulf_init mulf_init::@2 - [276] (byte) mulf_init::x_2#3 ? phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) - [276] (byte*) mulf_init::sqr1_hi#2 ? phi( mulf_init/(const byte[$200]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) - [276] (byte*) mulf_init::sqr1_lo#2 ? phi( mulf_init/(const byte[$200]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) - [276] (word) mulf_init::sqr#4 ? phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) - [276] (byte) mulf_init::c#2 ? phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) - [277] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 - [278] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [276] (byte) mulf_init::x_2#3 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) + [276] (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init/(const byte[$200]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) + [276] (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init/(const byte[$200]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) + [276] (word) mulf_init::sqr#4 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) + [276] (byte) mulf_init::c#2 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) + [277] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 + [278] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [279] if((byte~) mulf_init::$8!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 to:mulf_init::@3 mulf_init::@3: scope:[mulf_init] from mulf_init::@1 - [280] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 - [281] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 + [280] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 + [281] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 to:mulf_init::@2 mulf_init::@2: scope:[mulf_init] from mulf_init::@1 mulf_init::@3 - [282] (byte) mulf_init::x_2#2 ? phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@3/(byte) mulf_init::x_2#1 ) - [282] (word) mulf_init::sqr#3 ? phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@3/(word) mulf_init::sqr#2 ) - [283] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 - [284] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 - [285] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 - [286] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 - [287] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 - [288] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 - [289] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 + [282] (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@3/(byte) mulf_init::x_2#1 ) + [282] (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@3/(word) mulf_init::sqr#2 ) + [283] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 + [284] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 + [285] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 + [286] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 + [287] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 + [288] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 + [289] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [290] if((byte*) mulf_init::sqr1_lo#1!=(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200) goto mulf_init::@1 to:mulf_init::@4 mulf_init::@4: scope:[mulf_init] from mulf_init::@2 mulf_init::@5 - [291] (byte) mulf_init::dir#2 ? phi( mulf_init::@2/(byte/word/signed word/dword/signed dword) $ff mulf_init::@5/(byte) mulf_init::dir#3 ) - [291] (byte*) mulf_init::sqr2_hi#2 ? phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_hi#0 mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) - [291] (byte*) mulf_init::sqr2_lo#2 ? phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_lo#0 mulf_init::@5/(byte*) mulf_init::sqr2_lo#1 ) - [291] (byte) mulf_init::x_255#2 ? phi( mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@5/(byte) mulf_init::x_255#1 ) - [292] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) - [293] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) - [294] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 - [295] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 + [291] (byte) mulf_init::dir#2 ← phi( mulf_init::@2/(byte/word/signed word/dword/signed dword) $ff mulf_init::@5/(byte) mulf_init::dir#3 ) + [291] (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_hi#0 mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) + [291] (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_lo#0 mulf_init::@5/(byte*) mulf_init::sqr2_lo#1 ) + [291] (byte) mulf_init::x_255#2 ← phi( mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@5/(byte) mulf_init::x_255#1 ) + [292] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) + [293] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) + [294] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 + [295] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [296] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@7 to:mulf_init::@5 mulf_init::@5: scope:[mulf_init] from mulf_init::@4 mulf_init::@7 - [297] (byte) mulf_init::dir#3 ? phi( mulf_init::@7/(byte) mulf_init::dir#2 mulf_init::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [298] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 + [297] (byte) mulf_init::dir#3 ← phi( mulf_init::@7/(byte) mulf_init::dir#2 mulf_init::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [298] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [299] if((byte*) mulf_init::sqr2_lo#1!=(const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) goto mulf_init::@4 to:mulf_init::@6 mulf_init::@6: scope:[mulf_init] from mulf_init::@5 - [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) - [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) + [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) + [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) to:mulf_init::@return mulf_init::@return: scope:[mulf_init] from mulf_init::@6 [302] return @@ -4062,9 +4062,9 @@ print_cls: scope:[print_cls] from main [304] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [305] (byte*) print_cls::sc#2 ? phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) - [306] *((byte*) print_cls::sc#2) ? (byte) ' ' - [307] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [305] (byte*) print_cls::sc#2 ← phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) + [306] *((byte*) print_cls::sc#2) ← (byte) ' ' + [307] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [308] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -4670,7 +4670,7 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL //SEG11 [5] call print_cls @@ -4719,7 +4719,7 @@ mul16s_compare: { .label j = 7 .label i = 2 .label ok = 8 - //SEG27 [13] (byte*~) print_char_cursor#176 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG27 [13] (byte*~) print_char_cursor#176 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -4776,7 +4776,7 @@ mul16s_compare: { jmp b2 //SEG51 mul16s_compare::@2 b2: - //SEG52 [17] (signed word) mul16s_compare::a#1 ? (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwsz1=vwsz1_plus_vwuc1 + //SEG52 [17] (signed word) mul16s_compare::a#1 ← (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwsz1=vwsz1_plus_vwuc1 clc lda a adc #<$d2b @@ -4784,7 +4784,7 @@ mul16s_compare: { lda a+1 adc #>$d2b sta a+1 - //SEG53 [18] (signed word) mul16s_compare::b#1 ? (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwsz1=vwsz1_plus_vwuc1 + //SEG53 [18] (signed word) mul16s_compare::b#1 ← (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwsz1=vwsz1_plus_vwuc1 clc lda b adc #<$ffd @@ -4792,19 +4792,19 @@ mul16s_compare: { lda b+1 adc #>$ffd sta b+1 - //SEG54 [19] (signed word) muls16s::a#0 ? (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 + //SEG54 [19] (signed word) muls16s::a#0 ← (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 lda a sta muls16s.a lda a+1 sta muls16s.a+1 - //SEG55 [20] (signed word) muls16s::b#0 ? (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 + //SEG55 [20] (signed word) muls16s::b#0 ← (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 lda b sta muls16s.b lda b+1 sta muls16s.b+1 //SEG56 [21] call muls16s jsr muls16s - //SEG57 [22] (signed dword) muls16s::return#2 ? (signed dword) muls16s::return#0 -- vdsz1=vdsz2 + //SEG57 [22] (signed dword) muls16s::return#2 ← (signed dword) muls16s::return#0 -- vdsz1=vdsz2 lda muls16s.return sta muls16s.return_2 lda muls16s.return+1 @@ -4816,7 +4816,7 @@ mul16s_compare: { jmp b10 //SEG58 mul16s_compare::@10 b10: - //SEG59 [23] (signed dword) mul16s_compare::ms#0 ? (signed dword) muls16s::return#2 -- vdsz1=vdsz2 + //SEG59 [23] (signed dword) mul16s_compare::ms#0 ← (signed dword) muls16s::return#2 -- vdsz1=vdsz2 lda muls16s.return_2 sta ms lda muls16s.return_2+1 @@ -4825,19 +4825,19 @@ mul16s_compare: { sta ms+2 lda muls16s.return_2+3 sta ms+3 - //SEG60 [24] (signed word) mul16s::a#0 ? (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 + //SEG60 [24] (signed word) mul16s::a#0 ← (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 lda a sta mul16s.a lda a+1 sta mul16s.a+1 - //SEG61 [25] (signed word) mul16s::b#0 ? (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 + //SEG61 [25] (signed word) mul16s::b#0 ← (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 lda b sta mul16s.b lda b+1 sta mul16s.b+1 //SEG62 [26] call mul16s jsr mul16s - //SEG63 [27] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 -- vdsz1=vdsz2 + //SEG63 [27] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 -- vdsz1=vdsz2 lda mul16s.return sta mul16s.return_2 lda mul16s.return+1 @@ -4849,7 +4849,7 @@ mul16s_compare: { jmp b11 //SEG64 mul16s_compare::@11 b11: - //SEG65 [28] (signed dword) mul16s_compare::mn#0 ? (signed dword) mul16s::return#2 -- vdsz1=vdsz2 + //SEG65 [28] (signed dword) mul16s_compare::mn#0 ← (signed dword) mul16s::return#2 -- vdsz1=vdsz2 lda mul16s.return_2 sta mn lda mul16s.return_2+1 @@ -4858,19 +4858,19 @@ mul16s_compare: { sta mn+2 lda mul16s.return_2+3 sta mn+3 - //SEG66 [29] (signed word) mulf16s::a#0 ? (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 + //SEG66 [29] (signed word) mulf16s::a#0 ← (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 lda a sta mulf16s.a lda a+1 sta mulf16s.a+1 - //SEG67 [30] (signed word) mulf16s::b#0 ? (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 + //SEG67 [30] (signed word) mulf16s::b#0 ← (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 lda b sta mulf16s.b lda b+1 sta mulf16s.b+1 //SEG68 [31] call mulf16s jsr mulf16s - //SEG69 [32] (signed dword) mulf16s::return#2 ? (signed dword) mulf16s::return#0 -- vdsz1=vdsz2 + //SEG69 [32] (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#0 -- vdsz1=vdsz2 lda mulf16s.return sta mulf16s.return_2 lda mulf16s.return+1 @@ -4882,7 +4882,7 @@ mul16s_compare: { jmp b12 //SEG70 mul16s_compare::@12 b12: - //SEG71 [33] (signed dword) mul16s_compare::mf#0 ? (signed dword) mulf16s::return#2 -- vdsz1=vdsz2 + //SEG71 [33] (signed dword) mul16s_compare::mf#0 ← (signed dword) mulf16s::return#2 -- vdsz1=vdsz2 lda mulf16s.return_2 sta mf lda mulf16s.return_2+1 @@ -4953,20 +4953,20 @@ mul16s_compare: { jmp b7 //SEG85 mul16s_compare::@7 b7: - //SEG86 [40] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG86 [40] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG87 [41] (signed word) mul16s_error::a#0 ? (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 + //SEG87 [41] (signed word) mul16s_error::a#0 ← (signed word) mul16s_compare::a#1 -- vwsz1=vwsz2 lda a sta mul16s_error.a lda a+1 sta mul16s_error.a+1 - //SEG88 [42] (signed word) mul16s_error::b#0 ? (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 + //SEG88 [42] (signed word) mul16s_error::b#0 ← (signed word) mul16s_compare::b#1 -- vwsz1=vwsz2 lda b sta mul16s_error.b lda b+1 sta mul16s_error.b+1 - //SEG89 [43] (signed dword) mul16s_error::ms#0 ? (signed dword) mul16s_compare::ms#0 -- vdsz1=vdsz2 + //SEG89 [43] (signed dword) mul16s_error::ms#0 ← (signed dword) mul16s_compare::ms#0 -- vdsz1=vdsz2 lda ms sta mul16s_error.ms lda ms+1 @@ -4975,7 +4975,7 @@ mul16s_compare: { sta mul16s_error.ms+2 lda ms+3 sta mul16s_error.ms+3 - //SEG90 [44] (signed dword) mul16s_error::mn#0 ? (signed dword) mul16s_compare::mn#0 -- vdsz1=vdsz2 + //SEG90 [44] (signed dword) mul16s_error::mn#0 ← (signed dword) mul16s_compare::mn#0 -- vdsz1=vdsz2 lda mn sta mul16s_error.mn lda mn+1 @@ -4984,7 +4984,7 @@ mul16s_compare: { sta mul16s_error.mn+2 lda mn+3 sta mul16s_error.mn+3 - //SEG91 [45] (signed dword) mul16s_error::mf#0 ? (signed dword) mul16s_compare::mf#0 -- vdsz1=vdsz2 + //SEG91 [45] (signed dword) mul16s_error::mf#0 ← (signed dword) mul16s_compare::mf#0 -- vdsz1=vdsz2 lda mf sta mul16s_error.mf lda mf+1 @@ -5004,7 +5004,7 @@ mul16s_compare: { rts //SEG96 mul16s_compare::@5 b5: - //SEG97 [48] (byte) mul16s_compare::j#1 ? ++ (byte) mul16s_compare::j#10 -- vbuz1=_inc_vbuz1 + //SEG97 [48] (byte) mul16s_compare::j#1 ← ++ (byte) mul16s_compare::j#10 -- vbuz1=_inc_vbuz1 inc j //SEG98 [49] if((byte) mul16s_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -5013,7 +5013,7 @@ mul16s_compare: { jmp b8 //SEG99 mul16s_compare::@8 b8: - //SEG100 [50] (byte) mul16s_compare::i#1 ? ++ (byte) mul16s_compare::i#12 -- vbuz1=_inc_vbuz1 + //SEG100 [50] (byte) mul16s_compare::i#1 ← ++ (byte) mul16s_compare::i#12 -- vbuz1=_inc_vbuz1 inc i //SEG101 [51] if((byte) mul16s_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -5033,7 +5033,7 @@ mul16s_compare: { jmp b13 //SEG108 mul16s_compare::@13 b13: - //SEG109 [54] (byte*~) print_char_cursor#185 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG109 [54] (byte*~) print_char_cursor#185 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -5081,7 +5081,7 @@ print_ln: { jmp b1 //SEG127 print_ln::@1 b1: - //SEG128 [61] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG128 [61] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -5129,17 +5129,17 @@ print_str: { rts //SEG140 print_str::@2 b2: - //SEG141 [68] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#15) -- _deref_pbuz1=_deref_pbuz2 + //SEG141 [68] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#15) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG142 [69] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 + //SEG142 [69] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG143 [70] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#15 -- pbuz1=_inc_pbuz1 + //SEG143 [70] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -5167,7 +5167,7 @@ mul16s_error: { jmp b1 //SEG149 mul16s_error::@1 b1: - //SEG150 [73] (signed word) print_sword::w#1 ? (signed word) mul16s_error::a#0 -- vwsz1=vwsz2 + //SEG150 [73] (signed word) print_sword::w#1 ← (signed word) mul16s_error::a#0 -- vwsz1=vwsz2 lda a sta print_sword.w lda a+1 @@ -5195,7 +5195,7 @@ mul16s_error: { jmp b3 //SEG160 mul16s_error::@3 b3: - //SEG161 [77] (signed word) print_sword::w#2 ? (signed word) mul16s_error::b#0 -- vwsz1=vwsz2 + //SEG161 [77] (signed word) print_sword::w#2 ← (signed word) mul16s_error::b#0 -- vwsz1=vwsz2 lda b sta print_sword.w lda b+1 @@ -5223,7 +5223,7 @@ mul16s_error: { jmp b5 //SEG171 mul16s_error::@5 b5: - //SEG172 [81] (signed dword) print_sdword::dw#1 ? (signed dword) mul16s_error::ms#0 -- vdsz1=vdsz2 + //SEG172 [81] (signed dword) print_sdword::dw#1 ← (signed dword) mul16s_error::ms#0 -- vdsz1=vdsz2 lda ms sta print_sdword.dw lda ms+1 @@ -5255,7 +5255,7 @@ mul16s_error: { jmp b7 //SEG182 mul16s_error::@7 b7: - //SEG183 [85] (signed dword) print_sdword::dw#2 ? (signed dword) mul16s_error::mn#0 -- vdsz1=vdsz2 + //SEG183 [85] (signed dword) print_sdword::dw#2 ← (signed dword) mul16s_error::mn#0 -- vdsz1=vdsz2 lda mn sta print_sdword.dw lda mn+1 @@ -5287,7 +5287,7 @@ mul16s_error: { jmp b9 //SEG193 mul16s_error::@9 b9: - //SEG194 [89] (signed dword) print_sdword::dw#3 ? (signed dword) mul16s_error::mf#0 -- vdsz1=vdsz2 + //SEG194 [89] (signed dword) print_sdword::dw#3 ← (signed dword) mul16s_error::mf#0 -- vdsz1=vdsz2 lda mf sta print_sdword.dw lda mf+1 @@ -5343,7 +5343,7 @@ print_sdword: { jmp b3 //SEG214 print_sdword::@3 b3: - //SEG215 [98] (signed dword) print_sdword::dw#0 ? - (signed dword) print_sdword::dw#4 -- vdsz1=_neg_vdsz1 + //SEG215 [98] (signed dword) print_sdword::dw#0 ← - (signed dword) print_sdword::dw#4 -- vdsz1=_neg_vdsz1 sec lda dw eor #$ff @@ -5369,7 +5369,7 @@ print_sdword: { jmp b1 //SEG219 print_sdword::@1 b1: - //SEG220 [100] (dword) print_dword::dw#0 ? ((dword)) (signed dword) print_sdword::dw#5 -- vduz1=_dword_vdsz2 + //SEG220 [100] (dword) print_dword::dw#0 ← ((dword)) (signed dword) print_sdword::dw#5 -- vduz1=_dword_vdsz2 lda dw sta print_dword.dw lda dw+1 @@ -5395,7 +5395,7 @@ print_sdword: { // print_dword(dword zeropage($11) dw) print_dword: { .label dw = $11 - //SEG228 [104] (word) print_word::w#1 ? > (dword) print_dword::dw#4 -- vwuz1=_hi_vduz2 + //SEG228 [104] (word) print_word::w#1 ← > (dword) print_dword::dw#4 -- vwuz1=_hi_vduz2 lda dw+2 sta print_word.w lda dw+3 @@ -5409,7 +5409,7 @@ print_dword: { jmp b1 //SEG233 print_dword::@1 b1: - //SEG234 [106] (word) print_word::w#2 ? < (dword) print_dword::dw#4 -- vwuz1=_lo_vduz2 + //SEG234 [106] (word) print_word::w#2 ← < (dword) print_dword::dw#4 -- vwuz1=_lo_vduz2 lda dw sta print_word.w lda dw+1 @@ -5431,7 +5431,7 @@ print_dword: { // print_word(word zeropage($15) w) print_word: { .label w = $15 - //SEG242 [110] (byte) print_byte::b#0 ? > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 + //SEG242 [110] (byte) print_byte::b#0 ← > (word) print_word::w#5 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG243 [111] call print_byte @@ -5443,7 +5443,7 @@ print_word: { jmp b1 //SEG247 print_word::@1 b1: - //SEG248 [112] (byte) print_byte::b#1 ? < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 + //SEG248 [112] (byte) print_byte::b#1 ← < (word) print_word::w#5 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG249 [113] call print_byte @@ -5465,14 +5465,14 @@ print_byte: { .label _0 = $8e .label _2 = $8f .label b = $17 - //SEG256 [116] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG256 [116] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG257 [117] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG257 [117] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -5485,11 +5485,11 @@ print_byte: { jmp b1 //SEG262 print_byte::@1 b1: - //SEG263 [119] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG263 [119] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG264 [120] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG264 [120] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -5510,11 +5510,11 @@ print_byte: { // print_char(byte zeropage($18) ch) print_char: { .label ch = $18 - //SEG272 [124] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuz2 + //SEG272 [124] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG273 [125] (byte*) print_char_cursor#20 ? ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 + //SEG273 [125] (byte*) print_char_cursor#20 ← ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -5549,7 +5549,7 @@ print_sword: { jmp b3 //SEG284 print_sword::@3 b3: - //SEG285 [131] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#3 -- vwsz1=_neg_vwsz1 + //SEG285 [131] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -5567,7 +5567,7 @@ print_sword: { jmp b1 //SEG289 print_sword::@1 b1: - //SEG290 [133] (word~) print_word::w#11 ? (word)(signed word) print_sword::w#4 -- vwuz1=vwuz2 + //SEG290 [133] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 -- vwuz1=vwuz2 lda w sta print_word.w lda w+1 @@ -5598,12 +5598,12 @@ mulf16s: { .label a = $72 .label b = $74 .label return_2 = $76 - //SEG298 [136] (word~) mulf16u::a#4 ? (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2 + //SEG298 [136] (word~) mulf16u::a#4 ← (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2 lda a sta mulf16u.a lda a+1 sta mulf16u.a+1 - //SEG299 [137] (word~) mulf16u::b#4 ? (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2 + //SEG299 [137] (word~) mulf16u::b#4 ← (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2 lda b sta mulf16u.b lda b+1 @@ -5614,7 +5614,7 @@ mulf16s: { //SEG302 [153] phi (word) mulf16u::b#2 = (word~) mulf16u::b#4 [phi:mulf16s->mulf16u#0] -- register_copy //SEG303 [153] phi (word) mulf16u::a#2 = (word~) mulf16u::a#4 [phi:mulf16s->mulf16u#1] -- register_copy jsr mulf16u - //SEG304 [139] (dword) mulf16u::return#2 ? (dword) mulf16u::return#0 -- vduz1=vduz2 + //SEG304 [139] (dword) mulf16u::return#2 ← (dword) mulf16u::return#0 -- vduz1=vduz2 lda mulf16u.return sta mulf16u.return_2 lda mulf16u.return+1 @@ -5626,7 +5626,7 @@ mulf16s: { jmp b5 //SEG305 mulf16s::@5 b5: - //SEG306 [140] (dword) mulf16s::m#0 ? (dword) mulf16u::return#2 -- vduz1=vduz2 + //SEG306 [140] (dword) mulf16s::m#0 ← (dword) mulf16u::return#2 -- vduz1=vduz2 lda mulf16u.return_2 sta m lda mulf16u.return_2+1 @@ -5641,12 +5641,12 @@ mulf16s: { jmp b3 //SEG308 mulf16s::@3 b3: - //SEG309 [142] (word~) mulf16s::$9 ? > (dword) mulf16s::m#0 -- vwuz1=_hi_vduz2 + //SEG309 [142] (word~) mulf16s::$9 ← > (dword) mulf16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG310 [143] (word~) mulf16s::$16 ? (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG310 [143] (word~) mulf16s::$16 ← (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2_minus_vwuz3 lda _9 sec sbc b @@ -5654,7 +5654,7 @@ mulf16s: { lda _9+1 sbc b+1 sta _16+1 - //SEG311 [144] (dword) mulf16s::m#1 ? (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG311 [144] (dword) mulf16s::m#1 ← (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -5672,12 +5672,12 @@ mulf16s: { jmp b4 //SEG316 mulf16s::@4 b4: - //SEG317 [147] (word~) mulf16s::$13 ? > (dword) mulf16s::m#5 -- vwuz1=_hi_vduz2 + //SEG317 [147] (word~) mulf16s::$13 ← > (dword) mulf16s::m#5 -- vwuz1=_hi_vduz2 lda m+2 sta _13 lda m+3 sta _13+1 - //SEG318 [148] (word~) mulf16s::$17 ? (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG318 [148] (word~) mulf16s::$17 ← (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2_minus_vwuz3 lda _13 sec sbc a @@ -5685,7 +5685,7 @@ mulf16s: { lda _13+1 sbc a+1 sta _17+1 - //SEG319 [149] (dword) mulf16s::m#2 ? (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 -- vduz1=vduz1_sethi_vwuz2 + //SEG319 [149] (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 -- vduz1=vduz1_sethi_vwuz2 lda _17 sta m+2 lda _17+1 @@ -5697,7 +5697,7 @@ mulf16s: { jmp b2 //SEG322 mulf16s::@2 b2: - //SEG323 [151] (signed dword) mulf16s::return#0 ? ((signed dword)) (dword) mulf16s::m#4 -- vdsz1=_sdword_vduz2 + //SEG323 [151] (signed dword) mulf16s::return#0 ← ((signed dword)) (dword) mulf16s::m#4 -- vdsz1=_sdword_vduz2 lda m sta return lda m+1 @@ -5725,12 +5725,12 @@ mulf16u: { .label a = $21 .label b = $23 .label return_3 = $c9 - //SEG327 [154] *((const word*) mulf16u::memA#0) ? (word) mulf16u::a#2 -- _deref_pwuc1=vwuz1 + //SEG327 [154] *((const word*) mulf16u::memA#0) ← (word) mulf16u::a#2 -- _deref_pwuc1=vwuz1 lda a sta memA lda a+1 sta memA+1 - //SEG328 [155] *((const word*) mulf16u::memB#0) ? (word) mulf16u::b#2 -- _deref_pwuc1=vwuz1 + //SEG328 [155] *((const word*) mulf16u::memB#0) ← (word) mulf16u::b#2 -- _deref_pwuc1=vwuz1 lda b sta memB lda b+1 @@ -5828,7 +5828,7 @@ mulf16u: { bcc !+ inc memR+3 !: - //SEG330 [157] (dword) mulf16u::return#0 ? *((const dword*) mulf16u::memR#0) -- vduz1=_deref_pduc1 + //SEG330 [157] (dword) mulf16u::return#0 ← *((const dword*) mulf16u::memR#0) -- vduz1=_deref_pduc1 lda memR sta return lda memR+1 @@ -5857,12 +5857,12 @@ mul16s: { .label a = $66 .label b = $68 .label return_2 = $6a - //SEG334 [159] (word~) mul16u::b#3 ? (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2 + //SEG334 [159] (word~) mul16u::b#3 ← (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2 lda b sta mul16u.b lda b+1 sta mul16u.b+1 - //SEG335 [160] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG335 [160] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -5873,7 +5873,7 @@ mul16s: { //SEG338 [176] phi (word) mul16u::a#6 = (word~) mul16u::a#8 [phi:mul16s->mul16u#0] -- register_copy //SEG339 [176] phi (word) mul16u::b#2 = (word~) mul16u::b#3 [phi:mul16s->mul16u#1] -- register_copy jsr mul16u - //SEG340 [162] (dword) mul16u::return#2 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG340 [162] (dword) mul16u::return#2 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return lda mul16u.res+1 @@ -5885,7 +5885,7 @@ mul16s: { jmp b5 //SEG341 mul16s::@5 b5: - //SEG342 [163] (dword) mul16s::m#0 ? (dword) mul16u::return#2 -- vduz1=vduz2 + //SEG342 [163] (dword) mul16s::m#0 ← (dword) mul16u::return#2 -- vduz1=vduz2 lda mul16u.return sta m lda mul16u.return+1 @@ -5900,12 +5900,12 @@ mul16s: { jmp b3 //SEG344 mul16s::@3 b3: - //SEG345 [165] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG345 [165] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG346 [166] (word~) mul16s::$16 ? (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG346 [166] (word~) mul16s::$16 ← (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2_minus_vwuz3 lda _9 sec sbc b @@ -5913,7 +5913,7 @@ mul16s: { lda _9+1 sbc b+1 sta _16+1 - //SEG347 [167] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG347 [167] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -5931,12 +5931,12 @@ mul16s: { jmp b4 //SEG352 mul16s::@4 b4: - //SEG353 [170] (word~) mul16s::$13 ? > (dword) mul16s::m#5 -- vwuz1=_hi_vduz2 + //SEG353 [170] (word~) mul16s::$13 ← > (dword) mul16s::m#5 -- vwuz1=_hi_vduz2 lda m+2 sta _13 lda m+3 sta _13+1 - //SEG354 [171] (word~) mul16s::$17 ? (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2_minus_vwuz3 + //SEG354 [171] (word~) mul16s::$17 ← (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2_minus_vwuz3 lda _13 sec sbc a @@ -5944,7 +5944,7 @@ mul16s: { lda _13+1 sbc a+1 sta _17+1 - //SEG355 [172] (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 -- vduz1=vduz1_sethi_vwuz2 + //SEG355 [172] (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 -- vduz1=vduz1_sethi_vwuz2 lda _17 sta m+2 lda _17+1 @@ -5956,7 +5956,7 @@ mul16s: { jmp b2 //SEG358 mul16s::@2 b2: - //SEG359 [174] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz2 + //SEG359 [174] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz2 lda m sta return lda m+1 @@ -5982,7 +5982,7 @@ mul16u: { .label return = $a4 .label b = $29 .label return_3 = $c1 - //SEG363 [177] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG363 [177] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -6016,7 +6016,7 @@ mul16u: { rts //SEG372 mul16u::@2 b2: - //SEG373 [181] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 + //SEG373 [181] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vwuz2_band_vbuc1 lda a and #1 sta _1 @@ -6027,7 +6027,7 @@ mul16u: { jmp b4 //SEG375 mul16u::@4 b4: - //SEG376 [183] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG376 [183] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -6048,11 +6048,11 @@ mul16u: { jmp b3 //SEG379 mul16u::@3 b3: - //SEG380 [185] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG380 [185] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG381 [186] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG381 [186] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -6111,7 +6111,7 @@ muls16s: { jmp b3 //SEG396 muls16s::@3 b3: - //SEG397 [190] (signed dword) muls16s::m#1 ? (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 -- vdsz1=vdsz1_plus_vwsz2 + //SEG397 [190] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 -- vdsz1=vdsz1_plus_vwsz2 lda b+1 ora #$7f bmi !+ @@ -6131,7 +6131,7 @@ muls16s: { lda m+3 adc $ff sta m+3 - //SEG398 [191] (signed word) muls16s::j#1 ? ++ (signed word) muls16s::j#2 -- vwsz1=_inc_vwsz1 + //SEG398 [191] (signed word) muls16s::j#1 ← ++ (signed word) muls16s::j#2 -- vwsz1=_inc_vwsz1 inc j bne !+ inc j+1 @@ -6187,7 +6187,7 @@ muls16s: { jmp b4 //SEG413 muls16s::@4 b4: - //SEG414 [196] (signed dword) muls16s::m#2 ? (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 -- vdsz1=vdsz1_minus_vwsz2 + //SEG414 [196] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 -- vdsz1=vdsz1_minus_vwsz2 lda b+1 ora #$7f bmi !+ @@ -6207,7 +6207,7 @@ muls16s: { lda m+3 sbc $ff sta m+3 - //SEG415 [197] (signed word) muls16s::i#1 ? -- (signed word) muls16s::i#2 -- vwsz1=_dec_vwsz1 + //SEG415 [197] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 -- vwsz1=_dec_vwsz1 lda i bne !+ dec i+1 @@ -6289,7 +6289,7 @@ mul16u_compare: { jmp b2 //SEG441 mul16u_compare::@2 b2: - //SEG442 [203] (word) mul16u_compare::a#1 ? (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwuz1=vwuz1_plus_vwuc1 + //SEG442 [203] (word) mul16u_compare::a#1 ← (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwuz1=vwuz1_plus_vwuc1 clc lda a adc #<$d2b @@ -6297,7 +6297,7 @@ mul16u_compare: { lda a+1 adc #>$d2b sta a+1 - //SEG443 [204] (word) mul16u_compare::b#1 ? (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwuz1=vwuz1_plus_vwuc1 + //SEG443 [204] (word) mul16u_compare::b#1 ← (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwuz1=vwuz1_plus_vwuc1 clc lda b adc #<$ffd @@ -6305,19 +6305,19 @@ mul16u_compare: { lda b+1 adc #>$ffd sta b+1 - //SEG444 [205] (word) muls16u::a#0 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG444 [205] (word) muls16u::a#0 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta muls16u.a lda a+1 sta muls16u.a+1 - //SEG445 [206] (word) muls16u::b#0 ? (word) mul16u_compare::b#1 -- vwuz1=vwuz2 + //SEG445 [206] (word) muls16u::b#0 ← (word) mul16u_compare::b#1 -- vwuz1=vwuz2 lda b sta muls16u.b lda b+1 sta muls16u.b+1 //SEG446 [207] call muls16u jsr muls16u - //SEG447 [208] (dword) muls16u::return#2 ? (dword) muls16u::return#0 -- vduz1=vduz2 + //SEG447 [208] (dword) muls16u::return#2 ← (dword) muls16u::return#0 -- vduz1=vduz2 lda muls16u.return sta muls16u.return_2 lda muls16u.return+1 @@ -6329,7 +6329,7 @@ mul16u_compare: { jmp b10 //SEG448 mul16u_compare::@10 b10: - //SEG449 [209] (dword) mul16u_compare::ms#0 ? (dword) muls16u::return#2 -- vduz1=vduz2 + //SEG449 [209] (dword) mul16u_compare::ms#0 ← (dword) muls16u::return#2 -- vduz1=vduz2 lda muls16u.return_2 sta ms lda muls16u.return_2+1 @@ -6338,12 +6338,12 @@ mul16u_compare: { sta ms+2 lda muls16u.return_2+3 sta ms+3 - //SEG450 [210] (word) mul16u::a#2 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG450 [210] (word) mul16u::a#2 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 sta mul16u.a+1 - //SEG451 [211] (word) mul16u::b#1 ? (word) mul16u_compare::b#1 -- vwuz1=vwuz2 + //SEG451 [211] (word) mul16u::b#1 ← (word) mul16u_compare::b#1 -- vwuz1=vwuz2 lda b sta mul16u.b lda b+1 @@ -6354,7 +6354,7 @@ mul16u_compare: { //SEG454 [176] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mul16u_compare::@10->mul16u#0] -- register_copy //SEG455 [176] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mul16u_compare::@10->mul16u#1] -- register_copy jsr mul16u - //SEG456 [213] (dword) mul16u::return#3 ? (dword) mul16u::res#2 -- vduz1=vduz2 + //SEG456 [213] (dword) mul16u::return#3 ← (dword) mul16u::res#2 -- vduz1=vduz2 lda mul16u.res sta mul16u.return_3 lda mul16u.res+1 @@ -6366,7 +6366,7 @@ mul16u_compare: { jmp b11 //SEG457 mul16u_compare::@11 b11: - //SEG458 [214] (dword) mul16u_compare::mn#0 ? (dword) mul16u::return#3 -- vduz1=vduz2 + //SEG458 [214] (dword) mul16u_compare::mn#0 ← (dword) mul16u::return#3 -- vduz1=vduz2 lda mul16u.return_3 sta mn lda mul16u.return_3+1 @@ -6375,12 +6375,12 @@ mul16u_compare: { sta mn+2 lda mul16u.return_3+3 sta mn+3 - //SEG459 [215] (word) mulf16u::a#1 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG459 [215] (word) mulf16u::a#1 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta mulf16u.a lda a+1 sta mulf16u.a+1 - //SEG460 [216] (word) mulf16u::b#1 ? (word) mul16u_compare::b#1 -- vwuz1=vwuz2 + //SEG460 [216] (word) mulf16u::b#1 ← (word) mul16u_compare::b#1 -- vwuz1=vwuz2 lda b sta mulf16u.b lda b+1 @@ -6391,7 +6391,7 @@ mul16u_compare: { //SEG463 [153] phi (word) mulf16u::b#2 = (word) mulf16u::b#1 [phi:mul16u_compare::@11->mulf16u#0] -- register_copy //SEG464 [153] phi (word) mulf16u::a#2 = (word) mulf16u::a#1 [phi:mul16u_compare::@11->mulf16u#1] -- register_copy jsr mulf16u - //SEG465 [218] (dword) mulf16u::return#3 ? (dword) mulf16u::return#0 -- vduz1=vduz2 + //SEG465 [218] (dword) mulf16u::return#3 ← (dword) mulf16u::return#0 -- vduz1=vduz2 lda mulf16u.return sta mulf16u.return_3 lda mulf16u.return+1 @@ -6403,7 +6403,7 @@ mul16u_compare: { jmp b12 //SEG466 mul16u_compare::@12 b12: - //SEG467 [219] (dword) mul16u_compare::mf#0 ? (dword) mulf16u::return#3 -- vduz1=vduz2 + //SEG467 [219] (dword) mul16u_compare::mf#0 ← (dword) mulf16u::return#3 -- vduz1=vduz2 lda mulf16u.return_3 sta mf lda mulf16u.return_3+1 @@ -6474,20 +6474,20 @@ mul16u_compare: { jmp b7 //SEG481 mul16u_compare::@7 b7: - //SEG482 [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG482 [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG483 [227] (word) mul16u_error::a#0 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG483 [227] (word) mul16u_error::a#0 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta mul16u_error.a lda a+1 sta mul16u_error.a+1 - //SEG484 [228] (word) mul16u_error::b#0 ? (word) mul16u_compare::b#1 -- vwuz1=vwuz2 + //SEG484 [228] (word) mul16u_error::b#0 ← (word) mul16u_compare::b#1 -- vwuz1=vwuz2 lda b sta mul16u_error.b lda b+1 sta mul16u_error.b+1 - //SEG485 [229] (dword) mul16u_error::ms#0 ? (dword) mul16u_compare::ms#0 -- vduz1=vduz2 + //SEG485 [229] (dword) mul16u_error::ms#0 ← (dword) mul16u_compare::ms#0 -- vduz1=vduz2 lda ms sta mul16u_error.ms lda ms+1 @@ -6496,7 +6496,7 @@ mul16u_compare: { sta mul16u_error.ms+2 lda ms+3 sta mul16u_error.ms+3 - //SEG486 [230] (dword) mul16u_error::mn#0 ? (dword) mul16u_compare::mn#0 -- vduz1=vduz2 + //SEG486 [230] (dword) mul16u_error::mn#0 ← (dword) mul16u_compare::mn#0 -- vduz1=vduz2 lda mn sta mul16u_error.mn lda mn+1 @@ -6505,7 +6505,7 @@ mul16u_compare: { sta mul16u_error.mn+2 lda mn+3 sta mul16u_error.mn+3 - //SEG487 [231] (dword) mul16u_error::mf#0 ? (dword) mul16u_compare::mf#0 -- vduz1=vduz2 + //SEG487 [231] (dword) mul16u_error::mf#0 ← (dword) mul16u_compare::mf#0 -- vduz1=vduz2 lda mf sta mul16u_error.mf lda mf+1 @@ -6525,7 +6525,7 @@ mul16u_compare: { rts //SEG492 mul16u_compare::@5 b5: - //SEG493 [234] (byte) mul16u_compare::j#1 ? ++ (byte) mul16u_compare::j#10 -- vbuz1=_inc_vbuz1 + //SEG493 [234] (byte) mul16u_compare::j#1 ← ++ (byte) mul16u_compare::j#10 -- vbuz1=_inc_vbuz1 inc j //SEG494 [235] if((byte) mul16u_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -6534,7 +6534,7 @@ mul16u_compare: { jmp b8 //SEG495 mul16u_compare::@8 b8: - //SEG496 [236] (byte) mul16u_compare::i#1 ? ++ (byte) mul16u_compare::i#12 -- vbuz1=_inc_vbuz1 + //SEG496 [236] (byte) mul16u_compare::i#1 ← ++ (byte) mul16u_compare::i#12 -- vbuz1=_inc_vbuz1 inc i //SEG497 [237] if((byte) mul16u_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -6558,7 +6558,7 @@ mul16u_compare: { jmp b13 //SEG504 mul16u_compare::@13 b13: - //SEG505 [240] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG505 [240] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -6617,7 +6617,7 @@ mul16u_error: { jmp b1 //SEG525 mul16u_error::@1 b1: - //SEG526 [247] (word) print_word::w#3 ? (word) mul16u_error::a#0 -- vwuz1=vwuz2 + //SEG526 [247] (word) print_word::w#3 ← (word) mul16u_error::a#0 -- vwuz1=vwuz2 lda a sta print_word.w lda a+1 @@ -6646,7 +6646,7 @@ mul16u_error: { jmp b3 //SEG537 mul16u_error::@3 b3: - //SEG538 [251] (word) print_word::w#4 ? (word) mul16u_error::b#0 -- vwuz1=vwuz2 + //SEG538 [251] (word) print_word::w#4 ← (word) mul16u_error::b#0 -- vwuz1=vwuz2 lda b sta print_word.w lda b+1 @@ -6675,7 +6675,7 @@ mul16u_error: { jmp b5 //SEG549 mul16u_error::@5 b5: - //SEG550 [255] (dword) print_dword::dw#1 ? (dword) mul16u_error::ms#0 -- vduz1=vduz2 + //SEG550 [255] (dword) print_dword::dw#1 ← (dword) mul16u_error::ms#0 -- vduz1=vduz2 lda ms sta print_dword.dw lda ms+1 @@ -6708,7 +6708,7 @@ mul16u_error: { jmp b7 //SEG561 mul16u_error::@7 b7: - //SEG562 [259] (dword) print_dword::dw#2 ? (dword) mul16u_error::mn#0 -- vduz1=vduz2 + //SEG562 [259] (dword) print_dword::dw#2 ← (dword) mul16u_error::mn#0 -- vduz1=vduz2 lda mn sta print_dword.dw lda mn+1 @@ -6741,7 +6741,7 @@ mul16u_error: { jmp b9 //SEG573 mul16u_error::@9 b9: - //SEG574 [263] (dword) print_dword::dw#3 ? (dword) mul16u_error::mf#0 -- vduz1=vduz2 + //SEG574 [263] (dword) print_dword::dw#3 ← (dword) mul16u_error::mf#0 -- vduz1=vduz2 lda mf sta print_dword.dw lda mf+1 @@ -6817,7 +6817,7 @@ muls16u: { jmp b2 //SEG595 muls16u::@2 b2: - //SEG596 [270] (dword) muls16u::m#1 ? (dword) muls16u::m#3 + (word) muls16u::b#0 -- vduz1=vduz1_plus_vwuz2 + //SEG596 [270] (dword) muls16u::m#1 ← (dword) muls16u::m#3 + (word) muls16u::b#0 -- vduz1=vduz1_plus_vwuz2 lda m clc adc b @@ -6831,7 +6831,7 @@ muls16u: { lda m+3 adc #0 sta m+3 - //SEG597 [271] (word) muls16u::i#1 ? ++ (word) muls16u::i#2 -- vwuz1=_inc_vwuz1 + //SEG597 [271] (word) muls16u::i#1 ← ++ (word) muls16u::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -6914,9 +6914,9 @@ mulf_init: { jmp b1 //SEG619 mulf_init::@1 b1: - //SEG620 [277] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 -- vbuz1=_inc_vbuz1 + //SEG620 [277] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 -- vbuz1=_inc_vbuz1 inc c - //SEG621 [278] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 + //SEG621 [278] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 lda #1 and c sta _8 @@ -6927,9 +6927,9 @@ mulf_init: { jmp b3 //SEG623 mulf_init::@3 b3: - //SEG624 [280] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 + //SEG624 [280] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 inc x_2 - //SEG625 [281] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 + //SEG625 [281] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 @@ -6942,26 +6942,26 @@ mulf_init: { jmp b2 //SEG629 mulf_init::@2 b2: - //SEG630 [283] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 -- vbuz1=_lo_vwuz2 + //SEG630 [283] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 -- vbuz1=_lo_vwuz2 lda sqr sta _11 - //SEG631 [284] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 -- _deref_pbuz1=vbuz2 + //SEG631 [284] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 -- _deref_pbuz1=vbuz2 lda _11 ldy #0 sta (sqr1_lo),y - //SEG632 [285] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 -- vbuz1=_hi_vwuz2 + //SEG632 [285] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 -- vbuz1=_hi_vwuz2 lda sqr+1 sta _12 - //SEG633 [286] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 -- _deref_pbuz1=vbuz2 + //SEG633 [286] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 -- _deref_pbuz1=vbuz2 lda _12 ldy #0 sta (sqr1_hi),y - //SEG634 [287] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 + //SEG634 [287] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG635 [288] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 + //SEG635 [288] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -6969,7 +6969,7 @@ mulf_init: { bcc !+ inc sqr+1 !: - //SEG636 [289] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 + //SEG636 [289] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 @@ -7009,22 +7009,22 @@ mulf_init: { jmp b4 //SEG648 mulf_init::@4 b4: - //SEG649 [292] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG649 [292] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy x_255 lda mulf_sqr1_lo,y ldy #0 sta (sqr2_lo),y - //SEG650 [293] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG650 [293] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy x_255 lda mulf_sqr1_hi,y ldy #0 sta (sqr2_hi),y - //SEG651 [294] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 + //SEG651 [294] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG652 [295] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG652 [295] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuz1=vbuz1_plus_vbuz2 lda x_255 clc adc dir @@ -7041,7 +7041,7 @@ mulf_init: { jmp b5 //SEG656 mulf_init::@5 b5: - //SEG657 [298] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 + //SEG657 [298] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 @@ -7056,11 +7056,11 @@ mulf_init: { jmp b6 //SEG659 mulf_init::@6 b6: - //SEG660 [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG660 [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 // Set the very last value g(511) = f(256) lda mulf_sqr1_lo+$100 sta mulf_sqr2_lo+$1ff - //SEG661 [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG661 [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 lda mulf_sqr1_hi+$100 sta mulf_sqr2_hi+$1ff jmp breturn @@ -7096,11 +7096,11 @@ print_cls: { jmp b1 //SEG673 print_cls::@1 b1: - //SEG674 [306] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG674 [306] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG675 [307] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG675 [307] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -7139,297 +7139,297 @@ print_cls: { str2: .text " slow:@" REGISTER UPLIFT POTENTIAL REGISTERS -Statement [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [13] (byte*~) print_char_cursor#176 ? (byte*) print_line_cursor#1 [ print_char_cursor#176 print_line_cursor#1 ] ( main:2::mul16s_compare:11 [ print_char_cursor#176 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [17] (signed word) mul16s_compare::a#1 ? (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ) always clobbers reg byte a +Statement [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [13] (byte*~) print_char_cursor#176 ← (byte*) print_line_cursor#1 [ print_char_cursor#176 print_line_cursor#1 ] ( main:2::mul16s_compare:11 [ print_char_cursor#176 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [17] (signed word) mul16s_compare::a#1 ← (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ mul16s_compare::i#12 mul16s_compare::i#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ mul16s_compare::j#10 mul16s_compare::j#1 ] -Statement [18] (signed word) mul16s_compare::b#1 ? (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ) always clobbers reg byte a -Statement [19] (signed word) muls16s::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ) always clobbers reg byte a -Statement [20] (signed word) muls16s::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a -Statement [22] (signed dword) muls16s::return#2 ? (signed dword) muls16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ) always clobbers reg byte a -Statement [23] (signed dword) mul16s_compare::ms#0 ? (signed dword) muls16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ) always clobbers reg byte a -Statement [24] (signed word) mul16s::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ) always clobbers reg byte a -Statement [25] (signed word) mul16s::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ) always clobbers reg byte a -Statement [27] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ) always clobbers reg byte a -Statement [28] (signed dword) mul16s_compare::mn#0 ? (signed dword) mul16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ) always clobbers reg byte a -Statement [29] (signed word) mulf16s::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ) always clobbers reg byte a -Statement [30] (signed word) mulf16s::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ) always clobbers reg byte a -Statement [32] (signed dword) mulf16s::return#2 ? (signed dword) mulf16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ) always clobbers reg byte a -Statement [33] (signed dword) mul16s_compare::mf#0 ? (signed dword) mulf16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a +Statement [18] (signed word) mul16s_compare::b#1 ← (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ) always clobbers reg byte a +Statement [19] (signed word) muls16s::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ) always clobbers reg byte a +Statement [20] (signed word) muls16s::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a +Statement [22] (signed dword) muls16s::return#2 ← (signed dword) muls16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ) always clobbers reg byte a +Statement [23] (signed dword) mul16s_compare::ms#0 ← (signed dword) muls16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ) always clobbers reg byte a +Statement [24] (signed word) mul16s::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ) always clobbers reg byte a +Statement [25] (signed word) mul16s::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ) always clobbers reg byte a +Statement [27] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ) always clobbers reg byte a +Statement [28] (signed dword) mul16s_compare::mn#0 ← (signed dword) mul16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ) always clobbers reg byte a +Statement [29] (signed word) mulf16s::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ) always clobbers reg byte a +Statement [30] (signed word) mulf16s::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ) always clobbers reg byte a +Statement [32] (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ) always clobbers reg byte a +Statement [33] (signed dword) mul16s_compare::mf#0 ← (signed dword) mulf16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a Statement [34] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mf#0) goto mul16s_compare::@3 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a Statement [37] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mn#0) goto mul16s_compare::@15 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_compare::ok#4 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_compare::ok#4 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ mul16s_compare::ok#3 mul16s_compare::ok#4 ] -Statement [40] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a -Statement [41] (signed word) mul16s_error::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ) always clobbers reg byte a -Statement [42] (signed word) mul16s_error::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ) always clobbers reg byte a -Statement [43] (signed dword) mul16s_error::ms#0 ? (signed dword) mul16s_compare::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ) always clobbers reg byte a -Statement [44] (signed dword) mul16s_error::mn#0 ? (signed dword) mul16s_compare::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ) always clobbers reg byte a -Statement [45] (signed dword) mul16s_error::mf#0 ? (signed dword) mul16s_compare::mf#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ) always clobbers reg byte a -Statement [54] (byte*~) print_char_cursor#185 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#185 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#185 ] ) always clobbers reg byte a -Statement [61] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#129 ] ( main:2::mul16s_compare:11::print_ln:53 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::print_ln:57 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::mul16s_error:46::print_ln:92 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:239 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:243 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::mul16u_error:232::print_ln:266 [ print_line_cursor#1 print_char_cursor#129 ] ) always clobbers reg byte a +Statement [40] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a +Statement [41] (signed word) mul16s_error::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ) always clobbers reg byte a +Statement [42] (signed word) mul16s_error::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ) always clobbers reg byte a +Statement [43] (signed dword) mul16s_error::ms#0 ← (signed dword) mul16s_compare::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ) always clobbers reg byte a +Statement [44] (signed dword) mul16s_error::mn#0 ← (signed dword) mul16s_compare::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ) always clobbers reg byte a +Statement [45] (signed dword) mul16s_error::mf#0 ← (signed dword) mul16s_compare::mf#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ) always clobbers reg byte a +Statement [54] (byte*~) print_char_cursor#185 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#185 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#185 ] ) always clobbers reg byte a +Statement [61] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#129 ] ( main:2::mul16s_compare:11::print_ln:53 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::print_ln:57 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::mul16s_error:46::print_ln:92 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:239 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:243 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::mul16u_error:232::print_ln:266 [ print_line_cursor#1 print_char_cursor#129 ] ) always clobbers reg byte a Statement [62] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#129) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#129 ] ( main:2::mul16s_compare:11::print_ln:53 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::print_ln:57 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::mul16s_error:46::print_ln:92 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:239 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:243 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::mul16u_error:232::print_ln:266 [ print_line_cursor#1 print_char_cursor#129 ] ) always clobbers reg byte a Statement [66] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ print_char_cursor#128 print_str::str#15 ] ( main:2::mul16s_compare:11::print_str:15 [ print_line_cursor#1 mul16s_compare::a#6 mul16s_compare::b#6 mul16s_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::print_str:55 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:72 [ print_line_cursor#1 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:76 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:80 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:84 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:88 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:201 [ mul16u_compare::a#6 mul16u_compare::b#6 mul16u_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:241 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:246 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:250 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:254 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:258 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:262 [ mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:2 [ mul16s_compare::i#12 mul16s_compare::i#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:61 [ mul16u_compare::i#12 mul16u_compare::i#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:61 [ mul16u_compare::i#12 mul16u_compare::i#1 ] -Statement [68] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#15) [ print_char_cursor#128 print_str::str#15 ] ( main:2::mul16s_compare:11::print_str:15 [ print_line_cursor#1 mul16s_compare::a#6 mul16s_compare::b#6 mul16s_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::print_str:55 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:72 [ print_line_cursor#1 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:76 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:80 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:84 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:88 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:201 [ mul16u_compare::a#6 mul16u_compare::b#6 mul16u_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:241 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:246 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:250 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:254 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:258 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:262 [ mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] ) always clobbers reg byte a reg byte y -Statement [73] (signed word) print_sword::w#1 ? (signed word) mul16s_error::a#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ) always clobbers reg byte a -Statement [77] (signed word) print_sword::w#2 ? (signed word) mul16s_error::b#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ) always clobbers reg byte a -Statement [81] (signed dword) print_sdword::dw#1 ? (signed dword) mul16s_error::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ) always clobbers reg byte a -Statement [85] (signed dword) print_sdword::dw#2 ? (signed dword) mul16s_error::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ) always clobbers reg byte a -Statement [89] (signed dword) print_sdword::dw#3 ? (signed dword) mul16s_error::mf#0 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ) always clobbers reg byte a +Statement [68] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#15) [ print_char_cursor#128 print_str::str#15 ] ( main:2::mul16s_compare:11::print_str:15 [ print_line_cursor#1 mul16s_compare::a#6 mul16s_compare::b#6 mul16s_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::print_str:55 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:72 [ print_line_cursor#1 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:76 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:80 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:84 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:88 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:201 [ mul16u_compare::a#6 mul16u_compare::b#6 mul16u_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:241 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:246 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:250 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:254 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:258 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:262 [ mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] ) always clobbers reg byte a reg byte y +Statement [73] (signed word) print_sword::w#1 ← (signed word) mul16s_error::a#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ) always clobbers reg byte a +Statement [77] (signed word) print_sword::w#2 ← (signed word) mul16s_error::b#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ) always clobbers reg byte a +Statement [81] (signed dword) print_sdword::dw#1 ← (signed dword) mul16s_error::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ) always clobbers reg byte a +Statement [85] (signed dword) print_sdword::dw#2 ← (signed dword) mul16s_error::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ) always clobbers reg byte a +Statement [89] (signed dword) print_sdword::dw#3 ← (signed dword) mul16s_error::mf#0 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ) always clobbers reg byte a Statement [95] if((signed dword) print_sdword::dw#4>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sdword::@1 [ print_char_cursor#128 print_sdword::dw#4 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_sdword::dw#4 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_sdword::dw#4 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#4 ] ) always clobbers reg byte a -Statement [98] (signed dword) print_sdword::dw#0 ? - (signed dword) print_sdword::dw#4 [ print_char_cursor#20 print_sdword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#20 print_sdword::dw#0 ] ) always clobbers reg byte a -Statement [100] (dword) print_dword::dw#0 ? ((dword)) (signed dword) print_sdword::dw#5 [ print_char_cursor#134 print_dword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#134 print_dword::dw#0 ] ) always clobbers reg byte a -Statement [104] (word) print_word::w#1 ? > (dword) print_dword::dw#4 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ) always clobbers reg byte a -Statement [106] (word) print_word::w#2 ? < (dword) print_dword::dw#4 [ print_char_cursor#20 print_word::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_char_cursor#20 print_word::w#2 ] ) always clobbers reg byte a -Statement [110] (byte) print_byte::b#0 ? > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ) always clobbers reg byte a -Statement [112] (byte) print_byte::b#1 ? < (word) print_word::w#5 [ print_char_cursor#20 print_byte::b#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] ) always clobbers reg byte a -Statement [116] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a +Statement [98] (signed dword) print_sdword::dw#0 ← - (signed dword) print_sdword::dw#4 [ print_char_cursor#20 print_sdword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#20 print_sdword::dw#0 ] ) always clobbers reg byte a +Statement [100] (dword) print_dword::dw#0 ← ((dword)) (signed dword) print_sdword::dw#5 [ print_char_cursor#134 print_dword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#134 print_dword::dw#0 ] ) always clobbers reg byte a +Statement [104] (word) print_word::w#1 ← > (dword) print_dword::dw#4 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ) always clobbers reg byte a +Statement [106] (word) print_word::w#2 ← < (dword) print_dword::dw#4 [ print_char_cursor#20 print_word::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_char_cursor#20 print_word::w#2 ] ) always clobbers reg byte a +Statement [110] (byte) print_byte::b#0 ← > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ) always clobbers reg byte a +Statement [112] (byte) print_byte::b#1 ← < (word) print_word::w#5 [ print_char_cursor#20 print_byte::b#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] ) always clobbers reg byte a +Statement [116] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:23 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] -Statement [119] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#20 print_byte::$2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] ) always clobbers reg byte a -Statement [124] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#4 [ print_char_cursor#84 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_char:97 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_char:97 [ print_line_cursor#1 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_char:97 [ print_line_cursor#1 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:118 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:118 [ print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:118 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:118 [ print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:121 [ print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:121 [ print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:121 [ print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:121 [ print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_char:130 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_char:130 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] ) always clobbers reg byte y +Statement [119] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#20 print_byte::$2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] ) always clobbers reg byte a +Statement [124] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#4 [ print_char_cursor#84 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_char:97 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_char:97 [ print_line_cursor#1 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_char:97 [ print_line_cursor#1 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:118 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:118 [ print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:118 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:118 [ print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:121 [ print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:121 [ print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:121 [ print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:121 [ print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_char:130 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_char:130 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:23 [ print_byte::b#2 print_byte::b#0 print_byte::b#1 ] Statement [128] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#128 print_sword::w#3 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_sword::w#3 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_sword::w#3 ] ) always clobbers reg byte a -Statement [131] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#3 [ print_char_cursor#20 print_sword::w#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] ) always clobbers reg byte a -Statement [133] (word~) print_word::w#11 ? (word)(signed word) print_sword::w#4 [ print_word::w#11 print_char_cursor#130 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] ) always clobbers reg byte a -Statement [136] (word~) mulf16u::a#4 ? (word)(signed word) mulf16s::a#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ) always clobbers reg byte a -Statement [137] (word~) mulf16u::b#4 ? (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ) always clobbers reg byte a -Statement [139] (dword) mulf16u::return#2 ? (dword) mulf16u::return#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ) always clobbers reg byte a -Statement [140] (dword) mulf16s::m#0 ? (dword) mulf16u::return#2 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ) always clobbers reg byte a +Statement [131] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ print_char_cursor#20 print_sword::w#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] ) always clobbers reg byte a +Statement [133] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ print_word::w#11 print_char_cursor#130 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] ) always clobbers reg byte a +Statement [136] (word~) mulf16u::a#4 ← (word)(signed word) mulf16s::a#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ) always clobbers reg byte a +Statement [137] (word~) mulf16u::b#4 ← (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ) always clobbers reg byte a +Statement [139] (dword) mulf16u::return#2 ← (dword) mulf16u::return#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ) always clobbers reg byte a +Statement [140] (dword) mulf16s::m#0 ← (dword) mulf16u::return#2 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ) always clobbers reg byte a Statement [141] if((signed word) mulf16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@1 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ) always clobbers reg byte a -Statement [142] (word~) mulf16s::$9 ? > (dword) mulf16s::m#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ) always clobbers reg byte a -Statement [143] (word~) mulf16s::$16 ? (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ) always clobbers reg byte a -Statement [144] (dword) mulf16s::m#1 ? (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ) always clobbers reg byte a +Statement [142] (word~) mulf16s::$9 ← > (dword) mulf16s::m#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ) always clobbers reg byte a +Statement [143] (word~) mulf16s::$16 ← (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ) always clobbers reg byte a +Statement [144] (dword) mulf16s::m#1 ← (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ) always clobbers reg byte a Statement [146] if((signed word) mulf16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@2 [ mulf16s::a#0 mulf16s::m#5 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::m#5 ] ) always clobbers reg byte a -Statement [147] (word~) mulf16s::$13 ? > (dword) mulf16s::m#5 [ mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ) always clobbers reg byte a -Statement [148] (word~) mulf16s::$17 ? (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 [ mulf16s::m#5 mulf16s::$17 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#5 mulf16s::$17 ] ) always clobbers reg byte a -Statement [149] (dword) mulf16s::m#2 ? (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 [ mulf16s::m#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#2 ] ) always clobbers reg byte a -Statement [151] (signed dword) mulf16s::return#0 ? ((signed dword)) (dword) mulf16s::m#4 [ mulf16s::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#0 ] ) always clobbers reg byte a -Statement [154] *((const word*) mulf16u::memA#0) ? (word) mulf16u::a#2 [ mulf16u::b#2 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::b#2 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::b#2 ] ) always clobbers reg byte a +Statement [147] (word~) mulf16s::$13 ← > (dword) mulf16s::m#5 [ mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ) always clobbers reg byte a +Statement [148] (word~) mulf16s::$17 ← (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 [ mulf16s::m#5 mulf16s::$17 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#5 mulf16s::$17 ] ) always clobbers reg byte a +Statement [149] (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 [ mulf16s::m#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#2 ] ) always clobbers reg byte a +Statement [151] (signed dword) mulf16s::return#0 ← ((signed dword)) (dword) mulf16s::m#4 [ mulf16s::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#0 ] ) always clobbers reg byte a +Statement [154] *((const word*) mulf16u::memA#0) ← (word) mulf16u::a#2 [ mulf16u::b#2 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::b#2 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::b#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:66 [ mul16u_compare::j#10 mul16u_compare::j#1 ] -Statement [155] *((const word*) mulf16u::memB#0) ? (word) mulf16u::b#2 [ ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [155] *((const word*) mulf16u::memB#0) ← (word) mulf16u::b#2 [ ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a Statement asm { ldamemA stasm1a+1 stasm3a+1 stasm5a+1 stasm7a+1 eor#$ff stasm2a+1 stasm4a+1 stasm6a+1 stasm8a+1 ldamemA+1 stasm1b+1 stasm3b+1 stasm5b+1 stasm7b+1 eor#$ff stasm2b+1 stasm4b+1 stasm6b+1 stasm8b+1 ldxmemB sec sm1a: ldamulf_sqr1_lo,x sm2a: sbcmulf_sqr2_lo,x stamemR+0 sm3a: ldamulf_sqr1_hi,x sm4a: sbcmulf_sqr2_hi,x sta_AA+1 sec sm1b: ldamulf_sqr1_lo,x sm2b: sbcmulf_sqr2_lo,x sta_cc+1 sm3b: ldamulf_sqr1_hi,x sm4b: sbcmulf_sqr2_hi,x sta_CC+1 ldxmemB+1 sec sm5a: ldamulf_sqr1_lo,x sm6a: sbcmulf_sqr2_lo,x sta_bb+1 sm7a: ldamulf_sqr1_hi,x sm8a: sbcmulf_sqr2_hi,x sta_BB+1 sec sm5b: ldamulf_sqr1_lo,x sm6b: sbcmulf_sqr2_lo,x sta_dd+1 sm7b: ldamulf_sqr1_hi,x sm8b: sbcmulf_sqr2_hi,x stamemR+3 clc _AA: lda#0 _bb: adc#0 stamemR+1 _BB: lda#0 _CC: adc#0 stamemR+2 bcc!+ incmemR+3 clc !: _cc: lda#0 adcmemR+1 stamemR+1 _dd: lda#0 adcmemR+2 stamemR+2 bcc!+ incmemR+3 !: } always clobbers reg byte a reg byte x Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ mul16s_compare::i#12 mul16s_compare::i#1 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:7 [ mul16s_compare::j#10 mul16s_compare::j#1 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:61 [ mul16u_compare::i#12 mul16u_compare::i#1 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:66 [ mul16u_compare::j#10 mul16u_compare::j#1 ] -Statement [157] (dword) mulf16u::return#0 ? *((const dword*) mulf16u::memR#0) [ mulf16u::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#0 ] ) always clobbers reg byte a -Statement [159] (word~) mul16u::b#3 ? (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ) always clobbers reg byte a -Statement [160] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ) always clobbers reg byte a -Statement [162] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ) always clobbers reg byte a -Statement [163] (dword) mul16s::m#0 ? (dword) mul16u::return#2 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ) always clobbers reg byte a +Statement [157] (dword) mulf16u::return#0 ← *((const dword*) mulf16u::memR#0) [ mulf16u::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#0 ] ) always clobbers reg byte a +Statement [159] (word~) mul16u::b#3 ← (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ) always clobbers reg byte a +Statement [160] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ) always clobbers reg byte a +Statement [162] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ) always clobbers reg byte a +Statement [163] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ) always clobbers reg byte a Statement [164] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ) always clobbers reg byte a -Statement [165] (word~) mul16s::$9 ? > (dword) mul16s::m#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a -Statement [166] (word~) mul16s::$16 ? (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a -Statement [167] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ) always clobbers reg byte a +Statement [165] (word~) mul16s::$9 ← > (dword) mul16s::m#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a +Statement [166] (word~) mul16s::$16 ← (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a +Statement [167] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ) always clobbers reg byte a Statement [169] if((signed word) mul16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@2 [ mul16s::a#0 mul16s::m#5 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::m#5 ] ) always clobbers reg byte a -Statement [170] (word~) mul16s::$13 ? > (dword) mul16s::m#5 [ mul16s::a#0 mul16s::m#5 mul16s::$13 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::m#5 mul16s::$13 ] ) always clobbers reg byte a -Statement [171] (word~) mul16s::$17 ? (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 [ mul16s::m#5 mul16s::$17 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#5 mul16s::$17 ] ) always clobbers reg byte a -Statement [172] (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 [ mul16s::m#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#2 ] ) always clobbers reg byte a -Statement [174] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#0 ] ) always clobbers reg byte a -Statement [177] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#6 mul16u::mb#0 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [170] (word~) mul16s::$13 ← > (dword) mul16s::m#5 [ mul16s::a#0 mul16s::m#5 mul16s::$13 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::m#5 mul16s::$13 ] ) always clobbers reg byte a +Statement [171] (word~) mul16s::$17 ← (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 [ mul16s::m#5 mul16s::$17 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#5 mul16s::$17 ] ) always clobbers reg byte a +Statement [172] (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 [ mul16s::m#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#2 ] ) always clobbers reg byte a +Statement [174] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#0 ] ) always clobbers reg byte a +Statement [177] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#6 mul16u::mb#0 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a Statement [179] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [181] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [183] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [181] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [183] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a Statement [187] if((signed word) muls16s::a#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@4 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a Statement [188] if((signed word) muls16s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@1 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a -Statement [190] (signed dword) muls16s::m#1 ? (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ) always clobbers reg byte a +Statement [190] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ) always clobbers reg byte a Statement [192] if((signed word) muls16s::j#1!=(signed word) muls16s::a#0) goto muls16s::@3 [ muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] ) always clobbers reg byte a -Statement [196] (signed dword) muls16s::m#2 ? (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ) always clobbers reg byte a -Statement [197] (signed word) muls16s::i#1 ? -- (signed word) muls16s::i#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ) always clobbers reg byte a +Statement [196] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ) always clobbers reg byte a +Statement [197] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ) always clobbers reg byte a Statement [198] if((signed word) muls16s::i#1!=(signed word) muls16s::a#0) goto muls16s::@4 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ) always clobbers reg byte a -Statement [203] (word) mul16u_compare::a#1 ? (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ) always clobbers reg byte a -Statement [204] (word) mul16u_compare::b#1 ? (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ) always clobbers reg byte a -Statement [205] (word) muls16u::a#0 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ) always clobbers reg byte a -Statement [206] (word) muls16u::b#0 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ) always clobbers reg byte a -Statement [208] (dword) muls16u::return#2 ? (dword) muls16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ) always clobbers reg byte a -Statement [209] (dword) mul16u_compare::ms#0 ? (dword) muls16u::return#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a -Statement [210] (word) mul16u::a#2 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a -Statement [211] (word) mul16u::b#1 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a -Statement [213] (dword) mul16u::return#3 ? (dword) mul16u::res#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ) always clobbers reg byte a -Statement [214] (dword) mul16u_compare::mn#0 ? (dword) mul16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a -Statement [215] (word) mulf16u::a#1 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a -Statement [216] (word) mulf16u::b#1 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a -Statement [218] (dword) mulf16u::return#3 ? (dword) mulf16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ) always clobbers reg byte a -Statement [219] (dword) mul16u_compare::mf#0 ? (dword) mulf16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a +Statement [203] (word) mul16u_compare::a#1 ← (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ) always clobbers reg byte a +Statement [204] (word) mul16u_compare::b#1 ← (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ) always clobbers reg byte a +Statement [205] (word) muls16u::a#0 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ) always clobbers reg byte a +Statement [206] (word) muls16u::b#0 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ) always clobbers reg byte a +Statement [208] (dword) muls16u::return#2 ← (dword) muls16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ) always clobbers reg byte a +Statement [209] (dword) mul16u_compare::ms#0 ← (dword) muls16u::return#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a +Statement [210] (word) mul16u::a#2 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a +Statement [211] (word) mul16u::b#1 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a +Statement [213] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ) always clobbers reg byte a +Statement [214] (dword) mul16u_compare::mn#0 ← (dword) mul16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [215] (word) mulf16u::a#1 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [216] (word) mulf16u::b#1 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [218] (dword) mulf16u::return#3 ← (dword) mulf16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ) always clobbers reg byte a +Statement [219] (dword) mul16u_compare::mf#0 ← (dword) mulf16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a Statement [220] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mf#0) goto mul16u_compare::@3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a Statement [223] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mn#0) goto mul16u_compare::@15 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_compare::ok#4 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_compare::ok#4 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:67 [ mul16u_compare::ok#3 mul16u_compare::ok#4 ] -Statement [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a -Statement [227] (word) mul16u_error::a#0 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ) always clobbers reg byte a -Statement [228] (word) mul16u_error::b#0 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ) always clobbers reg byte a -Statement [229] (dword) mul16u_error::ms#0 ? (dword) mul16u_compare::ms#0 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ) always clobbers reg byte a -Statement [230] (dword) mul16u_error::mn#0 ? (dword) mul16u_compare::mn#0 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ) always clobbers reg byte a -Statement [231] (dword) mul16u_error::mf#0 ? (dword) mul16u_compare::mf#0 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a +Statement [227] (word) mul16u_error::a#0 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ) always clobbers reg byte a +Statement [228] (word) mul16u_error::b#0 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ) always clobbers reg byte a +Statement [229] (dword) mul16u_error::ms#0 ← (dword) mul16u_compare::ms#0 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ) always clobbers reg byte a +Statement [230] (dword) mul16u_error::mn#0 ← (dword) mul16u_compare::mn#0 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ) always clobbers reg byte a +Statement [231] (dword) mul16u_error::mf#0 ← (dword) mul16u_compare::mf#0 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a Statement [237] if((byte) mul16u_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@1 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::i#1 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::i#1 ] ) always clobbers reg byte a -Statement [240] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#192 ] ( main:2::mul16u_compare:9 [ print_line_cursor#1 print_char_cursor#192 ] ) always clobbers reg byte a -Statement [247] (word) print_word::w#3 ? (word) mul16u_error::a#0 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [251] (word) print_word::w#4 ? (word) mul16u_error::b#0 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [255] (dword) print_dword::dw#1 ? (dword) mul16u_error::ms#0 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [259] (dword) print_dword::dw#2 ? (dword) mul16u_error::mn#0 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [263] (dword) print_dword::dw#3 ? (dword) mul16u_error::mf#0 [ print_char_cursor#128 print_dword::dw#3 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#3 ] ) always clobbers reg byte a +Statement [240] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#192 ] ( main:2::mul16u_compare:9 [ print_line_cursor#1 print_char_cursor#192 ] ) always clobbers reg byte a +Statement [247] (word) print_word::w#3 ← (word) mul16u_error::a#0 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [251] (word) print_word::w#4 ← (word) mul16u_error::b#0 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [255] (dword) print_dword::dw#1 ← (dword) mul16u_error::ms#0 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [259] (dword) print_dword::dw#2 ← (dword) mul16u_error::mn#0 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [263] (dword) print_dword::dw#3 ← (dword) mul16u_error::mf#0 [ print_char_cursor#128 print_dword::dw#3 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#3 ] ) always clobbers reg byte a Statement [268] if((word) muls16u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16u::@1 [ muls16u::a#0 muls16u::b#0 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ) always clobbers reg byte a -Statement [270] (dword) muls16u::m#1 ? (dword) muls16u::m#3 + (word) muls16u::b#0 [ muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ) always clobbers reg byte a +Statement [270] (dword) muls16u::m#1 ← (dword) muls16u::m#3 + (word) muls16u::b#0 [ muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ) always clobbers reg byte a Statement [272] if((word) muls16u::i#1!=(word) muls16u::a#0) goto muls16u::@2 [ muls16u::a#0 muls16u::b#0 muls16u::m#1 muls16u::i#1 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 muls16u::m#1 muls16u::i#1 ] ) always clobbers reg byte a -Statement [283] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a +Statement [283] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:74 [ mulf_init::c#2 mulf_init::c#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:79 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Statement [284] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [284] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:74 [ mulf_init::c#2 mulf_init::c#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:79 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Statement [285] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a -Statement [286] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [288] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [285] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a +Statement [286] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [288] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a Statement [290] if((byte*) mulf_init::sqr1_lo#1!=(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [292] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [292] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:82 [ mulf_init::x_255#2 mulf_init::x_255#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:82 [ mulf_init::x_255#2 mulf_init::x_255#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:87 [ mulf_init::dir#2 mulf_init::dir#3 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:87 [ mulf_init::dir#2 mulf_init::dir#3 ] -Statement [293] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [295] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a +Statement [293] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [295] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a Statement [299] if((byte*) mulf_init::sqr2_lo#1!=(const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) goto mulf_init::@4 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a -Statement [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [306] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [306] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [308] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [13] (byte*~) print_char_cursor#176 ? (byte*) print_line_cursor#1 [ print_char_cursor#176 print_line_cursor#1 ] ( main:2::mul16s_compare:11 [ print_char_cursor#176 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [17] (signed word) mul16s_compare::a#1 ? (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ) always clobbers reg byte a -Statement [18] (signed word) mul16s_compare::b#1 ? (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ) always clobbers reg byte a -Statement [19] (signed word) muls16s::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ) always clobbers reg byte a -Statement [20] (signed word) muls16s::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a -Statement [22] (signed dword) muls16s::return#2 ? (signed dword) muls16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ) always clobbers reg byte a -Statement [23] (signed dword) mul16s_compare::ms#0 ? (signed dword) muls16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ) always clobbers reg byte a -Statement [24] (signed word) mul16s::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ) always clobbers reg byte a -Statement [25] (signed word) mul16s::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ) always clobbers reg byte a -Statement [27] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ) always clobbers reg byte a -Statement [28] (signed dword) mul16s_compare::mn#0 ? (signed dword) mul16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ) always clobbers reg byte a -Statement [29] (signed word) mulf16s::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ) always clobbers reg byte a -Statement [30] (signed word) mulf16s::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ) always clobbers reg byte a -Statement [32] (signed dword) mulf16s::return#2 ? (signed dword) mulf16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ) always clobbers reg byte a -Statement [33] (signed dword) mul16s_compare::mf#0 ? (signed dword) mulf16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a +Statement [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [13] (byte*~) print_char_cursor#176 ← (byte*) print_line_cursor#1 [ print_char_cursor#176 print_line_cursor#1 ] ( main:2::mul16s_compare:11 [ print_char_cursor#176 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [17] (signed word) mul16s_compare::a#1 ← (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#2 mul16s_compare::j#10 ] ) always clobbers reg byte a +Statement [18] (signed word) mul16s_compare::b#1 ← (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 ] ) always clobbers reg byte a +Statement [19] (signed word) muls16s::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 ] ) always clobbers reg byte a +Statement [20] (signed word) muls16s::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a +Statement [22] (signed dword) muls16s::return#2 ← (signed dword) muls16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::return#2 ] ) always clobbers reg byte a +Statement [23] (signed dword) mul16s_compare::ms#0 ← (signed dword) muls16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 ] ) always clobbers reg byte a +Statement [24] (signed word) mul16s::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 ] ) always clobbers reg byte a +Statement [25] (signed word) mul16s::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 ] ) always clobbers reg byte a +Statement [27] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#2 ] ) always clobbers reg byte a +Statement [28] (signed dword) mul16s_compare::mn#0 ← (signed dword) mul16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 ] ) always clobbers reg byte a +Statement [29] (signed word) mulf16s::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 ] ) always clobbers reg byte a +Statement [30] (signed word) mulf16s::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] ) always clobbers reg byte a +Statement [32] (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#0 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#2 ] ) always clobbers reg byte a +Statement [33] (signed dword) mul16s_compare::mf#0 ← (signed dword) mulf16s::return#2 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a Statement [34] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mf#0) goto mul16s_compare::@3 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a Statement [37] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mn#0) goto mul16s_compare::@15 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_compare::ok#4 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_compare::ok#4 ] ) always clobbers reg byte a -Statement [40] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a -Statement [41] (signed word) mul16s_error::a#0 ? (signed word) mul16s_compare::a#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ) always clobbers reg byte a -Statement [42] (signed word) mul16s_error::b#0 ? (signed word) mul16s_compare::b#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ) always clobbers reg byte a -Statement [43] (signed dword) mul16s_error::ms#0 ? (signed dword) mul16s_compare::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ) always clobbers reg byte a -Statement [44] (signed dword) mul16s_error::mn#0 ? (signed dword) mul16s_compare::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ) always clobbers reg byte a -Statement [45] (signed dword) mul16s_error::mf#0 ? (signed dword) mul16s_compare::mf#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ) always clobbers reg byte a +Statement [40] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 ] ) always clobbers reg byte a +Statement [41] (signed word) mul16s_error::a#0 ← (signed word) mul16s_compare::a#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::b#1 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 ] ) always clobbers reg byte a +Statement [42] (signed word) mul16s_error::b#0 ← (signed word) mul16s_compare::b#1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::ms#0 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 ] ) always clobbers reg byte a +Statement [43] (signed dword) mul16s_error::ms#0 ← (signed dword) mul16s_compare::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mn#0 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 ] ) always clobbers reg byte a +Statement [44] (signed dword) mul16s_error::mn#0 ← (signed dword) mul16s_compare::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::mf#0 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 ] ) always clobbers reg byte a +Statement [45] (signed dword) mul16s_error::mf#0 ← (signed dword) mul16s_compare::mf#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 ] ) always clobbers reg byte a Statement [51] if((byte) mul16s_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@1 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::i#1 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::i#1 ] ) always clobbers reg byte a -Statement [54] (byte*~) print_char_cursor#185 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#185 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#185 ] ) always clobbers reg byte a -Statement [61] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#129 ] ( main:2::mul16s_compare:11::print_ln:53 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::print_ln:57 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::mul16s_error:46::print_ln:92 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:239 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:243 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::mul16u_error:232::print_ln:266 [ print_line_cursor#1 print_char_cursor#129 ] ) always clobbers reg byte a +Statement [54] (byte*~) print_char_cursor#185 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#185 ] ( main:2::mul16s_compare:11 [ print_line_cursor#1 print_char_cursor#185 ] ) always clobbers reg byte a +Statement [61] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#129 ] ( main:2::mul16s_compare:11::print_ln:53 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::print_ln:57 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::mul16s_error:46::print_ln:92 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:239 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:243 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::mul16u_error:232::print_ln:266 [ print_line_cursor#1 print_char_cursor#129 ] ) always clobbers reg byte a Statement [62] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#129) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#129 ] ( main:2::mul16s_compare:11::print_ln:53 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::print_ln:57 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16s_compare:11::mul16s_error:46::print_ln:92 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:239 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::print_ln:243 [ print_line_cursor#1 print_char_cursor#129 ] main:2::mul16u_compare:9::mul16u_error:232::print_ln:266 [ print_line_cursor#1 print_char_cursor#129 ] ) always clobbers reg byte a Statement [66] if(*((byte*) print_str::str#15)!=(byte) '@') goto print_str::@2 [ print_char_cursor#128 print_str::str#15 ] ( main:2::mul16s_compare:11::print_str:15 [ print_line_cursor#1 mul16s_compare::a#6 mul16s_compare::b#6 mul16s_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::print_str:55 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:72 [ print_line_cursor#1 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:76 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:80 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:84 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:88 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:201 [ mul16u_compare::a#6 mul16u_compare::b#6 mul16u_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:241 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:246 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:250 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:254 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:258 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:262 [ mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] ) always clobbers reg byte a reg byte y -Statement [68] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#15) [ print_char_cursor#128 print_str::str#15 ] ( main:2::mul16s_compare:11::print_str:15 [ print_line_cursor#1 mul16s_compare::a#6 mul16s_compare::b#6 mul16s_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::print_str:55 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:72 [ print_line_cursor#1 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:76 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:80 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:84 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:88 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:201 [ mul16u_compare::a#6 mul16u_compare::b#6 mul16u_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:241 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:246 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:250 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:254 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:258 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:262 [ mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] ) always clobbers reg byte a reg byte y -Statement [73] (signed word) print_sword::w#1 ? (signed word) mul16s_error::a#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ) always clobbers reg byte a -Statement [77] (signed word) print_sword::w#2 ? (signed word) mul16s_error::b#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ) always clobbers reg byte a -Statement [81] (signed dword) print_sdword::dw#1 ? (signed dword) mul16s_error::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ) always clobbers reg byte a -Statement [85] (signed dword) print_sdword::dw#2 ? (signed dword) mul16s_error::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ) always clobbers reg byte a -Statement [89] (signed dword) print_sdword::dw#3 ? (signed dword) mul16s_error::mf#0 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ) always clobbers reg byte a +Statement [68] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#15) [ print_char_cursor#128 print_str::str#15 ] ( main:2::mul16s_compare:11::print_str:15 [ print_line_cursor#1 mul16s_compare::a#6 mul16s_compare::b#6 mul16s_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::print_str:55 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:72 [ print_line_cursor#1 mul16s_error::a#0 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:76 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:80 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:84 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16s_compare:11::mul16s_error:46::print_str:88 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:201 [ mul16u_compare::a#6 mul16u_compare::b#6 mul16u_compare::i#12 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::print_str:241 [ print_line_cursor#1 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:246 [ mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:250 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:254 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:258 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] main:2::mul16u_compare:9::mul16u_error:232::print_str:262 [ mul16u_error::mf#0 print_char_cursor#128 print_str::str#15 ] ) always clobbers reg byte a reg byte y +Statement [73] (signed word) print_sword::w#1 ← (signed word) mul16s_error::a#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#1 ] ) always clobbers reg byte a +Statement [77] (signed word) print_sword::w#2 ← (signed word) mul16s_error::b#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#2 ] ) always clobbers reg byte a +Statement [81] (signed dword) print_sdword::dw#1 ← (signed dword) mul16s_error::ms#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#1 ] ) always clobbers reg byte a +Statement [85] (signed dword) print_sdword::dw#2 ← (signed dword) mul16s_error::mn#0 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 mul16s_error::mf#0 print_sdword::dw#2 ] ) always clobbers reg byte a +Statement [89] (signed dword) print_sdword::dw#3 ← (signed dword) mul16s_error::mf#0 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ( main:2::mul16s_compare:11::mul16s_error:46 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#3 ] ) always clobbers reg byte a Statement [95] if((signed dword) print_sdword::dw#4>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sdword::@1 [ print_char_cursor#128 print_sdword::dw#4 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_sdword::dw#4 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#128 print_sdword::dw#4 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#128 print_sdword::dw#4 ] ) always clobbers reg byte a -Statement [98] (signed dword) print_sdword::dw#0 ? - (signed dword) print_sdword::dw#4 [ print_char_cursor#20 print_sdword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#20 print_sdword::dw#0 ] ) always clobbers reg byte a -Statement [100] (dword) print_dword::dw#0 ? ((dword)) (signed dword) print_sdword::dw#5 [ print_char_cursor#134 print_dword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#134 print_dword::dw#0 ] ) always clobbers reg byte a -Statement [104] (word) print_word::w#1 ? > (dword) print_dword::dw#4 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ) always clobbers reg byte a -Statement [106] (word) print_word::w#2 ? < (dword) print_dword::dw#4 [ print_char_cursor#20 print_word::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_char_cursor#20 print_word::w#2 ] ) always clobbers reg byte a -Statement [110] (byte) print_byte::b#0 ? > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ) always clobbers reg byte a -Statement [112] (byte) print_byte::b#1 ? < (word) print_word::w#5 [ print_char_cursor#20 print_byte::b#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] ) always clobbers reg byte a -Statement [116] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a -Statement [119] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#20 print_byte::$2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] ) always clobbers reg byte a -Statement [124] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#4 [ print_char_cursor#84 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_char:97 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_char:97 [ print_line_cursor#1 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_char:97 [ print_line_cursor#1 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:118 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:118 [ print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:118 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:118 [ print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:121 [ print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:121 [ print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:121 [ print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:121 [ print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_char:130 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_char:130 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] ) always clobbers reg byte y +Statement [98] (signed dword) print_sdword::dw#0 ← - (signed dword) print_sdword::dw#4 [ print_char_cursor#20 print_sdword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_sdword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#20 print_sdword::dw#0 ] ) always clobbers reg byte a +Statement [100] (dword) print_dword::dw#0 ← ((dword)) (signed dword) print_sdword::dw#5 [ print_char_cursor#134 print_dword::dw#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#134 print_dword::dw#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90 [ print_line_cursor#1 print_char_cursor#134 print_dword::dw#0 ] ) always clobbers reg byte a +Statement [104] (word) print_word::w#1 ← > (dword) print_dword::dw#4 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_dword::dw#4 print_char_cursor#133 print_word::w#1 ] ) always clobbers reg byte a +Statement [106] (word) print_word::w#2 ← < (dword) print_dword::dw#4 [ print_char_cursor#20 print_word::w#2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101 [ print_line_cursor#1 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260 [ mul16u_error::mf#0 print_char_cursor#20 print_word::w#2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264 [ print_char_cursor#20 print_word::w#2 ] ) always clobbers reg byte a +Statement [110] (byte) print_byte::b#0 ← > (word) print_word::w#5 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#132 print_byte::b#0 ] ) always clobbers reg byte a +Statement [112] (byte) print_byte::b#1 ← < (word) print_word::w#5 [ print_char_cursor#20 print_byte::b#1 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105 [ print_dword::dw#4 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107 [ print_line_cursor#1 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107 [ print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::b#1 ] ) always clobbers reg byte a +Statement [116] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#136 print_byte::$0 ] ) always clobbers reg byte a +Statement [119] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#20 print_byte::$2 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111 [ print_dword::dw#4 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111 [ print_line_cursor#1 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111 [ print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113 [ print_dword::dw#4 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113 [ print_line_cursor#1 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113 [ mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113 [ print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#20 print_byte::$2 ] ) always clobbers reg byte a +Statement [124] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#4 [ print_char_cursor#84 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_char:97 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_char:97 [ print_line_cursor#1 mul16s_error::mf#0 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_char:97 [ print_line_cursor#1 print_sdword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:118 [ print_dword::dw#4 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:118 [ print_line_cursor#1 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:118 [ mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:118 [ print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:118 [ print_line_cursor#1 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:118 [ print_dword::dw#4 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:118 [ print_line_cursor#1 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:118 [ mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:118 [ print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:118 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:118 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:118 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_byte::b#2 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:111::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:111::print_char:121 [ print_dword::dw#4 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:111::print_char:121 [ print_line_cursor#1 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:111::print_char:121 [ mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:111::print_char:121 [ print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:111::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:111::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:111::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_word::w#5 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:105::print_byte:113::print_char:121 [ print_line_cursor#1 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:105::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_dword::dw#4 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:105::print_byte:113::print_char:121 [ print_dword::dw#4 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:82::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:86::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sdword:90::print_dword:101::print_word:107::print_byte:113::print_char:121 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:256::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:260::print_word:107::print_byte:113::print_char:121 [ mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_dword:264::print_word:107::print_byte:113::print_char:121 [ print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_word:134::print_byte:113::print_char:121 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:248::print_byte:113::print_char:121 [ mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16u_compare:9::mul16u_error:232::print_word:252::print_byte:113::print_char:121 [ mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:74::print_char:130 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78::print_char:130 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_sword::w#3 print_char_cursor#84 ] ) always clobbers reg byte y Statement [128] if((signed word) print_sword::w#3>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#128 print_sword::w#3 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_sword::w#3 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#128 print_sword::w#3 ] ) always clobbers reg byte a -Statement [131] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#3 [ print_char_cursor#20 print_sword::w#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] ) always clobbers reg byte a -Statement [133] (word~) print_word::w#11 ? (word)(signed word) print_sword::w#4 [ print_word::w#11 print_char_cursor#130 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] ) always clobbers reg byte a -Statement [136] (word~) mulf16u::a#4 ? (word)(signed word) mulf16s::a#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ) always clobbers reg byte a -Statement [137] (word~) mulf16u::b#4 ? (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ) always clobbers reg byte a -Statement [139] (dword) mulf16u::return#2 ? (dword) mulf16u::return#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ) always clobbers reg byte a -Statement [140] (dword) mulf16s::m#0 ? (dword) mulf16u::return#2 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ) always clobbers reg byte a +Statement [131] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 [ print_char_cursor#20 print_sword::w#0 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_char_cursor#20 print_sword::w#0 ] ) always clobbers reg byte a +Statement [133] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 [ print_word::w#11 print_char_cursor#130 ] ( main:2::mul16s_compare:11::mul16s_error:46::print_sword:74 [ print_line_cursor#1 mul16s_error::b#0 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] main:2::mul16s_compare:11::mul16s_error:46::print_sword:78 [ print_line_cursor#1 mul16s_error::ms#0 mul16s_error::mn#0 mul16s_error::mf#0 print_word::w#11 print_char_cursor#130 ] ) always clobbers reg byte a +Statement [136] (word~) mulf16u::a#4 ← (word)(signed word) mulf16s::a#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 ] ) always clobbers reg byte a +Statement [137] (word~) mulf16u::b#4 ← (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::a#4 mulf16u::b#4 ] ) always clobbers reg byte a +Statement [139] (dword) mulf16u::return#2 ← (dword) mulf16u::return#0 [ mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#2 ] ) always clobbers reg byte a +Statement [140] (dword) mulf16s::m#0 ← (dword) mulf16u::return#2 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ) always clobbers reg byte a Statement [141] if((signed word) mulf16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@1 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 ] ) always clobbers reg byte a -Statement [142] (word~) mulf16s::$9 ? > (dword) mulf16s::m#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ) always clobbers reg byte a -Statement [143] (word~) mulf16s::$16 ? (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ) always clobbers reg byte a -Statement [144] (dword) mulf16s::m#1 ? (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ) always clobbers reg byte a +Statement [142] (word~) mulf16s::$9 ← > (dword) mulf16s::m#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$9 ] ) always clobbers reg byte a +Statement [143] (word~) mulf16s::$16 ← (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#0 mulf16s::$16 ] ) always clobbers reg byte a +Statement [144] (dword) mulf16s::m#1 ← (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 [ mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16s::m#1 ] ) always clobbers reg byte a Statement [146] if((signed word) mulf16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@2 [ mulf16s::a#0 mulf16s::m#5 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::m#5 ] ) always clobbers reg byte a -Statement [147] (word~) mulf16s::$13 ? > (dword) mulf16s::m#5 [ mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ) always clobbers reg byte a -Statement [148] (word~) mulf16s::$17 ? (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 [ mulf16s::m#5 mulf16s::$17 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#5 mulf16s::$17 ] ) always clobbers reg byte a -Statement [149] (dword) mulf16s::m#2 ? (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 [ mulf16s::m#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#2 ] ) always clobbers reg byte a -Statement [151] (signed dword) mulf16s::return#0 ? ((signed dword)) (dword) mulf16s::m#4 [ mulf16s::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#0 ] ) always clobbers reg byte a -Statement [154] *((const word*) mulf16u::memA#0) ? (word) mulf16u::a#2 [ mulf16u::b#2 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::b#2 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::b#2 ] ) always clobbers reg byte a -Statement [155] *((const word*) mulf16u::memB#0) ? (word) mulf16u::b#2 [ ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [147] (word~) mulf16s::$13 ← > (dword) mulf16s::m#5 [ mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::m#5 mulf16s::$13 ] ) always clobbers reg byte a +Statement [148] (word~) mulf16s::$17 ← (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 [ mulf16s::m#5 mulf16s::$17 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#5 mulf16s::$17 ] ) always clobbers reg byte a +Statement [149] (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 [ mulf16s::m#2 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::m#2 ] ) always clobbers reg byte a +Statement [151] (signed dword) mulf16s::return#0 ← ((signed dword)) (dword) mulf16s::m#4 [ mulf16s::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::return#0 ] ) always clobbers reg byte a +Statement [154] *((const word*) mulf16u::memA#0) ← (word) mulf16u::a#2 [ mulf16u::b#2 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::b#2 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::b#2 ] ) always clobbers reg byte a +Statement [155] *((const word*) mulf16u::memB#0) ← (word) mulf16u::b#2 [ ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a Statement asm { ldamemA stasm1a+1 stasm3a+1 stasm5a+1 stasm7a+1 eor#$ff stasm2a+1 stasm4a+1 stasm6a+1 stasm8a+1 ldamemA+1 stasm1b+1 stasm3b+1 stasm5b+1 stasm7b+1 eor#$ff stasm2b+1 stasm4b+1 stasm6b+1 stasm8b+1 ldxmemB sec sm1a: ldamulf_sqr1_lo,x sm2a: sbcmulf_sqr2_lo,x stamemR+0 sm3a: ldamulf_sqr1_hi,x sm4a: sbcmulf_sqr2_hi,x sta_AA+1 sec sm1b: ldamulf_sqr1_lo,x sm2b: sbcmulf_sqr2_lo,x sta_cc+1 sm3b: ldamulf_sqr1_hi,x sm4b: sbcmulf_sqr2_hi,x sta_CC+1 ldxmemB+1 sec sm5a: ldamulf_sqr1_lo,x sm6a: sbcmulf_sqr2_lo,x sta_bb+1 sm7a: ldamulf_sqr1_hi,x sm8a: sbcmulf_sqr2_hi,x sta_BB+1 sec sm5b: ldamulf_sqr1_lo,x sm6b: sbcmulf_sqr2_lo,x sta_dd+1 sm7b: ldamulf_sqr1_hi,x sm8b: sbcmulf_sqr2_hi,x stamemR+3 clc _AA: lda#0 _bb: adc#0 stamemR+1 _BB: lda#0 _CC: adc#0 stamemR+2 bcc!+ incmemR+3 clc !: _cc: lda#0 adcmemR+1 stamemR+1 _dd: lda#0 adcmemR+2 stamemR+2 bcc!+ incmemR+3 !: } always clobbers reg byte a reg byte x -Statement [157] (dword) mulf16u::return#0 ? *((const dword*) mulf16u::memR#0) [ mulf16u::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#0 ] ) always clobbers reg byte a -Statement [159] (word~) mul16u::b#3 ? (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ) always clobbers reg byte a -Statement [160] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ) always clobbers reg byte a -Statement [162] (dword) mul16u::return#2 ? (dword) mul16u::res#2 [ mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ) always clobbers reg byte a -Statement [163] (dword) mul16s::m#0 ? (dword) mul16u::return#2 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ) always clobbers reg byte a +Statement [157] (dword) mulf16u::return#0 ← *((const dword*) mulf16u::memR#0) [ mulf16u::return#0 ] ( main:2::mul16s_compare:11::mulf16s:31::mulf16u:138 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s_compare::mn#0 mulf16s::a#0 mulf16s::b#0 mulf16u::return#0 ] main:2::mul16u_compare:9::mulf16u:217 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#0 ] ) always clobbers reg byte a +Statement [159] (word~) mul16u::b#3 ← (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 ] ) always clobbers reg byte a +Statement [160] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 [ mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::b#3 mul16u::a#8 ] ) always clobbers reg byte a +Statement [162] (dword) mul16u::return#2 ← (dword) mul16u::res#2 [ mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::return#2 ] ) always clobbers reg byte a +Statement [163] (dword) mul16s::m#0 ← (dword) mul16u::return#2 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ) always clobbers reg byte a Statement [164] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 ] ) always clobbers reg byte a -Statement [165] (word~) mul16s::$9 ? > (dword) mul16s::m#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a -Statement [166] (word~) mul16s::$16 ? (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a -Statement [167] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ) always clobbers reg byte a +Statement [165] (word~) mul16s::$9 ← > (dword) mul16s::m#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$9 ] ) always clobbers reg byte a +Statement [166] (word~) mul16s::$16 ← (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 [ mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#0 mul16s::$16 ] ) always clobbers reg byte a +Statement [167] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 [ mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16s::m#1 ] ) always clobbers reg byte a Statement [169] if((signed word) mul16s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@2 [ mul16s::a#0 mul16s::m#5 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::m#5 ] ) always clobbers reg byte a -Statement [170] (word~) mul16s::$13 ? > (dword) mul16s::m#5 [ mul16s::a#0 mul16s::m#5 mul16s::$13 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::m#5 mul16s::$13 ] ) always clobbers reg byte a -Statement [171] (word~) mul16s::$17 ? (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 [ mul16s::m#5 mul16s::$17 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#5 mul16s::$17 ] ) always clobbers reg byte a -Statement [172] (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 [ mul16s::m#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#2 ] ) always clobbers reg byte a -Statement [174] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#0 ] ) always clobbers reg byte a -Statement [177] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#6 mul16u::mb#0 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a +Statement [170] (word~) mul16s::$13 ← > (dword) mul16s::m#5 [ mul16s::a#0 mul16s::m#5 mul16s::$13 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::m#5 mul16s::$13 ] ) always clobbers reg byte a +Statement [171] (word~) mul16s::$17 ← (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 [ mul16s::m#5 mul16s::$17 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#5 mul16s::$17 ] ) always clobbers reg byte a +Statement [172] (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 [ mul16s::m#2 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::m#2 ] ) always clobbers reg byte a +Statement [174] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 [ mul16s::return#0 ] ( main:2::mul16s_compare:11::mul16s:26 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::return#0 ] ) always clobbers reg byte a +Statement [177] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 [ mul16u::a#6 mul16u::mb#0 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#6 mul16u::mb#0 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#6 mul16u::mb#0 ] ) always clobbers reg byte a Statement [179] if((word) mul16u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@2 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 ] ) always clobbers reg byte a -Statement [181] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a -Statement [183] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a +Statement [181] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::res#2 mul16u::a#3 mul16u::mb#2 mul16u::$1 ] ) always clobbers reg byte a +Statement [183] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 [ mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ( main:2::mul16s_compare:11::mul16s:26::mul16u:161 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 mul16s_compare::ms#0 mul16s::a#0 mul16s::b#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] main:2::mul16u_compare:9::mul16u:212 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::a#3 mul16u::mb#2 mul16u::res#1 ] ) always clobbers reg byte a Statement [187] if((signed word) muls16s::a#0<(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@4 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a Statement [188] if((signed word) muls16s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16s::@1 [ muls16s::a#0 muls16s::b#0 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 ] ) always clobbers reg byte a -Statement [190] (signed dword) muls16s::m#1 ? (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ) always clobbers reg byte a +Statement [190] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::j#2 muls16s::m#1 ] ) always clobbers reg byte a Statement [192] if((signed word) muls16s::j#1!=(signed word) muls16s::a#0) goto muls16s::@3 [ muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#1 muls16s::j#1 ] ) always clobbers reg byte a -Statement [196] (signed dword) muls16s::m#2 ? (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ) always clobbers reg byte a -Statement [197] (signed word) muls16s::i#1 ? -- (signed word) muls16s::i#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ) always clobbers reg byte a +Statement [196] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#2 ] ) always clobbers reg byte a +Statement [197] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ) always clobbers reg byte a Statement [198] if((signed word) muls16s::i#1!=(signed word) muls16s::a#0) goto muls16s::@4 [ muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ( main:2::mul16s_compare:11::muls16s:21 [ print_line_cursor#1 mul16s_compare::i#12 print_char_cursor#128 mul16s_compare::a#1 mul16s_compare::b#1 mul16s_compare::j#10 muls16s::a#0 muls16s::b#0 muls16s::m#2 muls16s::i#1 ] ) always clobbers reg byte a -Statement [203] (word) mul16u_compare::a#1 ? (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ) always clobbers reg byte a -Statement [204] (word) mul16u_compare::b#1 ? (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ) always clobbers reg byte a -Statement [205] (word) muls16u::a#0 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ) always clobbers reg byte a -Statement [206] (word) muls16u::b#0 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ) always clobbers reg byte a -Statement [208] (dword) muls16u::return#2 ? (dword) muls16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ) always clobbers reg byte a -Statement [209] (dword) mul16u_compare::ms#0 ? (dword) muls16u::return#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a -Statement [210] (word) mul16u::a#2 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a -Statement [211] (word) mul16u::b#1 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a -Statement [213] (dword) mul16u::return#3 ? (dword) mul16u::res#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ) always clobbers reg byte a -Statement [214] (dword) mul16u_compare::mn#0 ? (dword) mul16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a -Statement [215] (word) mulf16u::a#1 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a -Statement [216] (word) mulf16u::b#1 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a -Statement [218] (dword) mulf16u::return#3 ? (dword) mulf16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ) always clobbers reg byte a -Statement [219] (dword) mul16u_compare::mf#0 ? (dword) mulf16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a +Statement [203] (word) mul16u_compare::a#1 ← (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#2 mul16u_compare::j#10 ] ) always clobbers reg byte a +Statement [204] (word) mul16u_compare::b#1 ← (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 ] ) always clobbers reg byte a +Statement [205] (word) muls16u::a#0 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 ] ) always clobbers reg byte a +Statement [206] (word) muls16u::b#0 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ) always clobbers reg byte a +Statement [208] (dword) muls16u::return#2 ← (dword) muls16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::return#2 ] ) always clobbers reg byte a +Statement [209] (dword) mul16u_compare::ms#0 ← (dword) muls16u::return#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a +Statement [210] (word) mul16u::a#2 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a +Statement [211] (word) mul16u::b#1 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u::b#1 mul16u::a#2 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 ] ) always clobbers reg byte a +Statement [213] (dword) mul16u::return#3 ← (dword) mul16u::res#2 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u::return#3 ] ) always clobbers reg byte a +Statement [214] (dword) mul16u_compare::mn#0 ← (dword) mul16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [215] (word) mulf16u::a#1 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [216] (word) mulf16u::b#1 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mulf16u::a#1 mulf16u::b#1 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 ] ) always clobbers reg byte a +Statement [218] (dword) mulf16u::return#3 ← (dword) mulf16u::return#0 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mulf16u::return#3 ] ) always clobbers reg byte a +Statement [219] (dword) mul16u_compare::mf#0 ← (dword) mulf16u::return#3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a Statement [220] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mf#0) goto mul16u_compare::@3 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a Statement [223] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mn#0) goto mul16u_compare::@15 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_compare::ok#4 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_compare::ok#4 ] ) always clobbers reg byte a -Statement [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a -Statement [227] (word) mul16u_error::a#0 ? (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ) always clobbers reg byte a -Statement [228] (word) mul16u_error::b#0 ? (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ) always clobbers reg byte a -Statement [229] (dword) mul16u_error::ms#0 ? (dword) mul16u_compare::ms#0 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ) always clobbers reg byte a -Statement [230] (dword) mul16u_error::mn#0 ? (dword) mul16u_compare::mn#0 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ) always clobbers reg byte a -Statement [231] (dword) mul16u_error::mf#0 ? (dword) mul16u_compare::mf#0 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 ] ) always clobbers reg byte a +Statement [227] (word) mul16u_error::a#0 ← (word) mul16u_compare::a#1 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::b#1 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 ] ) always clobbers reg byte a +Statement [228] (word) mul16u_error::b#0 ← (word) mul16u_compare::b#1 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::ms#0 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 ] ) always clobbers reg byte a +Statement [229] (dword) mul16u_error::ms#0 ← (dword) mul16u_compare::ms#0 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mn#0 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 ] ) always clobbers reg byte a +Statement [230] (dword) mul16u_error::mn#0 ← (dword) mul16u_compare::mn#0 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::mf#0 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 ] ) always clobbers reg byte a +Statement [231] (dword) mul16u_error::mf#0 ← (dword) mul16u_compare::mf#0 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_error::a#0 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a Statement [237] if((byte) mul16u_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@1 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::i#1 ] ( main:2::mul16u_compare:9 [ print_char_cursor#128 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::i#1 ] ) always clobbers reg byte a -Statement [240] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#192 ] ( main:2::mul16u_compare:9 [ print_line_cursor#1 print_char_cursor#192 ] ) always clobbers reg byte a -Statement [247] (word) print_word::w#3 ? (word) mul16u_error::a#0 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [251] (word) print_word::w#4 ? (word) mul16u_error::b#0 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [255] (dword) print_dword::dw#1 ? (dword) mul16u_error::ms#0 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [259] (dword) print_dword::dw#2 ? (dword) mul16u_error::mn#0 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ) always clobbers reg byte a -Statement [263] (dword) print_dword::dw#3 ? (dword) mul16u_error::mf#0 [ print_char_cursor#128 print_dword::dw#3 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#3 ] ) always clobbers reg byte a +Statement [240] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#192 ] ( main:2::mul16u_compare:9 [ print_line_cursor#1 print_char_cursor#192 ] ) always clobbers reg byte a +Statement [247] (word) print_word::w#3 ← (word) mul16u_error::a#0 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#3 mul16u_error::b#0 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [251] (word) print_word::w#4 ← (word) mul16u_error::b#0 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_word::w#4 mul16u_error::ms#0 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [255] (dword) print_dword::dw#1 ← (dword) mul16u_error::ms#0 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#1 mul16u_error::mn#0 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [259] (dword) print_dword::dw#2 ← (dword) mul16u_error::mn#0 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#2 mul16u_error::mf#0 ] ) always clobbers reg byte a +Statement [263] (dword) print_dword::dw#3 ← (dword) mul16u_error::mf#0 [ print_char_cursor#128 print_dword::dw#3 ] ( main:2::mul16u_compare:9::mul16u_error:232 [ print_char_cursor#128 print_dword::dw#3 ] ) always clobbers reg byte a Statement [268] if((word) muls16u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls16u::@1 [ muls16u::a#0 muls16u::b#0 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 ] ) always clobbers reg byte a -Statement [270] (dword) muls16u::m#1 ? (dword) muls16u::m#3 + (word) muls16u::b#0 [ muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ) always clobbers reg byte a +Statement [270] (dword) muls16u::m#1 ← (dword) muls16u::m#3 + (word) muls16u::b#0 [ muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 muls16u::i#2 muls16u::m#1 ] ) always clobbers reg byte a Statement [272] if((word) muls16u::i#1!=(word) muls16u::a#0) goto muls16u::@2 [ muls16u::a#0 muls16u::b#0 muls16u::m#1 muls16u::i#1 ] ( main:2::mul16u_compare:9::muls16u:207 [ print_char_cursor#128 mul16u_compare::i#12 mul16u_compare::a#1 mul16u_compare::b#1 mul16u_compare::j#10 muls16u::a#0 muls16u::b#0 muls16u::m#1 muls16u::i#1 ] ) always clobbers reg byte a -Statement [278] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ) always clobbers reg byte a -Statement [283] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a -Statement [284] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [285] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a -Statement [286] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [288] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [278] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ) always clobbers reg byte a +Statement [283] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a +Statement [284] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [285] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a +Statement [286] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [288] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a Statement [290] if((byte*) mulf_init::sqr1_lo#1!=(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [292] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [293] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [295] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a +Statement [292] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [293] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [295] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a Statement [299] if((byte*) mulf_init::sqr2_lo#1!=(const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) goto mulf_init::@4 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a -Statement [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [306] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [306] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [308] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ mul16s_compare::i#12 mul16s_compare::i#1 ] : zp ZP_BYTE:2 , Potential registers zp ZP_WORD:3 [ mul16s_compare::a#2 mul16s_compare::a#6 mul16s_compare::a#1 ] : zp ZP_WORD:3 , @@ -7682,7 +7682,7 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL //SEG11 [5] call print_cls @@ -7729,7 +7729,7 @@ mul16s_compare: { .label mn = $19 .label mf = $11 .label i = 2 - //SEG27 [13] (byte*~) print_char_cursor#176 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG27 [13] (byte*~) print_char_cursor#176 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -7785,7 +7785,7 @@ mul16s_compare: { jmp b2 //SEG51 mul16s_compare::@2 b2: - //SEG52 [17] (signed word) mul16s_compare::a#1 ? (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwsz1=vwsz1_plus_vwuc1 + //SEG52 [17] (signed word) mul16s_compare::a#1 ← (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwsz1=vwsz1_plus_vwuc1 clc lda a adc #<$d2b @@ -7793,7 +7793,7 @@ mul16s_compare: { lda a+1 adc #>$d2b sta a+1 - //SEG53 [18] (signed word) mul16s_compare::b#1 ? (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwsz1=vwsz1_plus_vwuc1 + //SEG53 [18] (signed word) mul16s_compare::b#1 ← (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwsz1=vwsz1_plus_vwuc1 clc lda b adc #<$ffd @@ -7801,33 +7801,33 @@ mul16s_compare: { lda b+1 adc #>$ffd sta b+1 - //SEG54 [19] (signed word) muls16s::a#0 ? (signed word) mul16s_compare::a#1 - //SEG55 [20] (signed word) muls16s::b#0 ? (signed word) mul16s_compare::b#1 + //SEG54 [19] (signed word) muls16s::a#0 ← (signed word) mul16s_compare::a#1 + //SEG55 [20] (signed word) muls16s::b#0 ← (signed word) mul16s_compare::b#1 //SEG56 [21] call muls16s jsr muls16s - //SEG57 [22] (signed dword) muls16s::return#2 ? (signed dword) muls16s::return#0 + //SEG57 [22] (signed dword) muls16s::return#2 ← (signed dword) muls16s::return#0 jmp b10 //SEG58 mul16s_compare::@10 b10: - //SEG59 [23] (signed dword) mul16s_compare::ms#0 ? (signed dword) muls16s::return#2 - //SEG60 [24] (signed word) mul16s::a#0 ? (signed word) mul16s_compare::a#1 - //SEG61 [25] (signed word) mul16s::b#0 ? (signed word) mul16s_compare::b#1 + //SEG59 [23] (signed dword) mul16s_compare::ms#0 ← (signed dword) muls16s::return#2 + //SEG60 [24] (signed word) mul16s::a#0 ← (signed word) mul16s_compare::a#1 + //SEG61 [25] (signed word) mul16s::b#0 ← (signed word) mul16s_compare::b#1 //SEG62 [26] call mul16s jsr mul16s - //SEG63 [27] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + //SEG63 [27] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 jmp b11 //SEG64 mul16s_compare::@11 b11: - //SEG65 [28] (signed dword) mul16s_compare::mn#0 ? (signed dword) mul16s::return#2 - //SEG66 [29] (signed word) mulf16s::a#0 ? (signed word) mul16s_compare::a#1 - //SEG67 [30] (signed word) mulf16s::b#0 ? (signed word) mul16s_compare::b#1 + //SEG65 [28] (signed dword) mul16s_compare::mn#0 ← (signed dword) mul16s::return#2 + //SEG66 [29] (signed word) mulf16s::a#0 ← (signed word) mul16s_compare::a#1 + //SEG67 [30] (signed word) mulf16s::b#0 ← (signed word) mul16s_compare::b#1 //SEG68 [31] call mulf16s jsr mulf16s - //SEG69 [32] (signed dword) mulf16s::return#2 ? (signed dword) mulf16s::return#0 + //SEG69 [32] (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#0 jmp b12 //SEG70 mul16s_compare::@12 b12: - //SEG71 [33] (signed dword) mul16s_compare::mf#0 ? (signed dword) mulf16s::return#2 + //SEG71 [33] (signed dword) mul16s_compare::mf#0 ← (signed dword) mulf16s::return#2 //SEG72 [34] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mf#0) goto mul16s_compare::@3 -- vdsz1_eq_vdsz2_then_la1 lda ms cmp mf @@ -7886,14 +7886,14 @@ mul16s_compare: { jmp b7 //SEG85 mul16s_compare::@7 b7: - //SEG86 [40] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG86 [40] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG87 [41] (signed word) mul16s_error::a#0 ? (signed word) mul16s_compare::a#1 - //SEG88 [42] (signed word) mul16s_error::b#0 ? (signed word) mul16s_compare::b#1 - //SEG89 [43] (signed dword) mul16s_error::ms#0 ? (signed dword) mul16s_compare::ms#0 - //SEG90 [44] (signed dword) mul16s_error::mn#0 ? (signed dword) mul16s_compare::mn#0 - //SEG91 [45] (signed dword) mul16s_error::mf#0 ? (signed dword) mul16s_compare::mf#0 + //SEG87 [41] (signed word) mul16s_error::a#0 ← (signed word) mul16s_compare::a#1 + //SEG88 [42] (signed word) mul16s_error::b#0 ← (signed word) mul16s_compare::b#1 + //SEG89 [43] (signed dword) mul16s_error::ms#0 ← (signed dword) mul16s_compare::ms#0 + //SEG90 [44] (signed dword) mul16s_error::mn#0 ← (signed dword) mul16s_compare::mn#0 + //SEG91 [45] (signed dword) mul16s_error::mf#0 ← (signed dword) mul16s_compare::mf#0 //SEG92 [46] call mul16s_error //SEG93 [71] phi from mul16s_compare::@7 to mul16s_error [phi:mul16s_compare::@7->mul16s_error] mul16s_error_from_b7: @@ -7905,7 +7905,7 @@ mul16s_compare: { rts //SEG96 mul16s_compare::@5 b5: - //SEG97 [48] (byte) mul16s_compare::j#1 ? ++ (byte) mul16s_compare::j#10 -- vbuyy=_inc_vbuyy + //SEG97 [48] (byte) mul16s_compare::j#1 ← ++ (byte) mul16s_compare::j#10 -- vbuyy=_inc_vbuyy iny //SEG98 [49] if((byte) mul16s_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@2 -- vbuyy_neq_vbuc1_then_la1 cpy #$10 @@ -7913,7 +7913,7 @@ mul16s_compare: { jmp b8 //SEG99 mul16s_compare::@8 b8: - //SEG100 [50] (byte) mul16s_compare::i#1 ? ++ (byte) mul16s_compare::i#12 -- vbuz1=_inc_vbuz1 + //SEG100 [50] (byte) mul16s_compare::i#1 ← ++ (byte) mul16s_compare::i#12 -- vbuz1=_inc_vbuz1 inc i //SEG101 [51] if((byte) mul16s_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -7933,7 +7933,7 @@ mul16s_compare: { jmp b13 //SEG108 mul16s_compare::@13 b13: - //SEG109 [54] (byte*~) print_char_cursor#185 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG109 [54] (byte*~) print_char_cursor#185 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -7981,7 +7981,7 @@ print_ln: { jmp b1 //SEG127 print_ln::@1 b1: - //SEG128 [61] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG128 [61] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -8029,17 +8029,17 @@ print_str: { rts //SEG140 print_str::@2 b2: - //SEG141 [68] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#15) -- _deref_pbuz1=_deref_pbuz2 + //SEG141 [68] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#15) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG142 [69] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 + //SEG142 [69] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG143 [70] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#15 -- pbuz1=_inc_pbuz1 + //SEG143 [70] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -8067,7 +8067,7 @@ mul16s_error: { jmp b1 //SEG149 mul16s_error::@1 b1: - //SEG150 [73] (signed word) print_sword::w#1 ? (signed word) mul16s_error::a#0 + //SEG150 [73] (signed word) print_sword::w#1 ← (signed word) mul16s_error::a#0 //SEG151 [74] call print_sword //SEG152 [127] phi from mul16s_error::@1 to print_sword [phi:mul16s_error::@1->print_sword] print_sword_from_b1: @@ -8091,7 +8091,7 @@ mul16s_error: { jmp b3 //SEG160 mul16s_error::@3 b3: - //SEG161 [77] (signed word) print_sword::w#2 ? (signed word) mul16s_error::b#0 -- vwsz1=vwsz2 + //SEG161 [77] (signed word) print_sword::w#2 ← (signed word) mul16s_error::b#0 -- vwsz1=vwsz2 lda b sta print_sword.w lda b+1 @@ -8119,7 +8119,7 @@ mul16s_error: { jmp b5 //SEG171 mul16s_error::@5 b5: - //SEG172 [81] (signed dword) print_sdword::dw#1 ? (signed dword) mul16s_error::ms#0 + //SEG172 [81] (signed dword) print_sdword::dw#1 ← (signed dword) mul16s_error::ms#0 //SEG173 [82] call print_sdword //SEG174 [94] phi from mul16s_error::@5 to print_sdword [phi:mul16s_error::@5->print_sdword] print_sdword_from_b5: @@ -8143,7 +8143,7 @@ mul16s_error: { jmp b7 //SEG182 mul16s_error::@7 b7: - //SEG183 [85] (signed dword) print_sdword::dw#2 ? (signed dword) mul16s_error::mn#0 -- vdsz1=vdsz2 + //SEG183 [85] (signed dword) print_sdword::dw#2 ← (signed dword) mul16s_error::mn#0 -- vdsz1=vdsz2 lda mn sta print_sdword.dw lda mn+1 @@ -8175,7 +8175,7 @@ mul16s_error: { jmp b9 //SEG193 mul16s_error::@9 b9: - //SEG194 [89] (signed dword) print_sdword::dw#3 ? (signed dword) mul16s_error::mf#0 -- vdsz1=vdsz2 + //SEG194 [89] (signed dword) print_sdword::dw#3 ← (signed dword) mul16s_error::mf#0 -- vdsz1=vdsz2 lda mf sta print_sdword.dw lda mf+1 @@ -8230,7 +8230,7 @@ print_sdword: { jmp b3 //SEG214 print_sdword::@3 b3: - //SEG215 [98] (signed dword) print_sdword::dw#0 ? - (signed dword) print_sdword::dw#4 -- vdsz1=_neg_vdsz1 + //SEG215 [98] (signed dword) print_sdword::dw#0 ← - (signed dword) print_sdword::dw#4 -- vdsz1=_neg_vdsz1 sec lda dw eor #$ff @@ -8256,7 +8256,7 @@ print_sdword: { jmp b1 //SEG219 print_sdword::@1 b1: - //SEG220 [100] (dword) print_dword::dw#0 ? ((dword)) (signed dword) print_sdword::dw#5 -- vduz1=_dword_vdsz1 + //SEG220 [100] (dword) print_dword::dw#0 ← ((dword)) (signed dword) print_sdword::dw#5 -- vduz1=_dword_vdsz1 //SEG221 [101] call print_dword //SEG222 [103] phi from print_sdword::@1 to print_dword [phi:print_sdword::@1->print_dword] print_dword_from_b1: @@ -8274,7 +8274,7 @@ print_sdword: { // print_dword(dword zeropage($b) dw) print_dword: { .label dw = $b - //SEG228 [104] (word) print_word::w#1 ? > (dword) print_dword::dw#4 -- vwuz1=_hi_vduz2 + //SEG228 [104] (word) print_word::w#1 ← > (dword) print_dword::dw#4 -- vwuz1=_hi_vduz2 lda dw+2 sta print_word.w lda dw+3 @@ -8288,7 +8288,7 @@ print_dword: { jmp b1 //SEG233 print_dword::@1 b1: - //SEG234 [106] (word) print_word::w#2 ? < (dword) print_dword::dw#4 -- vwuz1=_lo_vduz2 + //SEG234 [106] (word) print_word::w#2 ← < (dword) print_dword::dw#4 -- vwuz1=_lo_vduz2 lda dw sta print_word.w lda dw+1 @@ -8310,7 +8310,7 @@ print_dword: { // print_word(word zeropage(3) w) print_word: { .label w = 3 - //SEG242 [110] (byte) print_byte::b#0 ? > (word) print_word::w#5 -- vbuxx=_hi_vwuz1 + //SEG242 [110] (byte) print_byte::b#0 ← > (word) print_word::w#5 -- vbuxx=_hi_vwuz1 lda w+1 tax //SEG243 [111] call print_byte @@ -8322,7 +8322,7 @@ print_word: { jmp b1 //SEG247 print_word::@1 b1: - //SEG248 [112] (byte) print_byte::b#1 ? < (word) print_word::w#5 -- vbuxx=_lo_vwuz1 + //SEG248 [112] (byte) print_byte::b#1 ← < (word) print_word::w#5 -- vbuxx=_lo_vwuz1 lda w tax //SEG249 [113] call print_byte @@ -8341,13 +8341,13 @@ print_word: { // Print a byte as HEX // print_byte(byte register(X) b) print_byte: { - //SEG256 [116] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG256 [116] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG257 [117] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG257 [117] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG258 [118] call print_char @@ -8359,10 +8359,10 @@ print_byte: { jmp b1 //SEG262 print_byte::@1 b1: - //SEG263 [119] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 + //SEG263 [119] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 - //SEG264 [120] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG264 [120] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x //SEG265 [121] call print_char //SEG266 [123] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] @@ -8380,10 +8380,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG272 [124] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa + //SEG272 [124] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG273 [125] (byte*) print_char_cursor#20 ? ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 + //SEG273 [125] (byte*) print_char_cursor#20 ← ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -8417,7 +8417,7 @@ print_sword: { jmp b3 //SEG284 print_sword::@3 b3: - //SEG285 [131] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#3 -- vwsz1=_neg_vwsz1 + //SEG285 [131] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -8435,7 +8435,7 @@ print_sword: { jmp b1 //SEG289 print_sword::@1 b1: - //SEG290 [133] (word~) print_word::w#11 ? (word)(signed word) print_sword::w#4 + //SEG290 [133] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 //SEG291 [134] call print_word //SEG292 [109] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] print_word_from_b1: @@ -8461,12 +8461,12 @@ mulf16s: { .label return = $11 .label a = 3 .label b = 5 - //SEG298 [136] (word~) mulf16u::a#4 ? (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2 + //SEG298 [136] (word~) mulf16u::a#4 ← (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2 lda a sta mulf16u.a lda a+1 sta mulf16u.a+1 - //SEG299 [137] (word~) mulf16u::b#4 ? (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2 + //SEG299 [137] (word~) mulf16u::b#4 ← (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2 lda b sta mulf16u.b lda b+1 @@ -8477,23 +8477,23 @@ mulf16s: { //SEG302 [153] phi (word) mulf16u::b#2 = (word~) mulf16u::b#4 [phi:mulf16s->mulf16u#0] -- register_copy //SEG303 [153] phi (word) mulf16u::a#2 = (word~) mulf16u::a#4 [phi:mulf16s->mulf16u#1] -- register_copy jsr mulf16u - //SEG304 [139] (dword) mulf16u::return#2 ? (dword) mulf16u::return#0 + //SEG304 [139] (dword) mulf16u::return#2 ← (dword) mulf16u::return#0 jmp b5 //SEG305 mulf16s::@5 b5: - //SEG306 [140] (dword) mulf16s::m#0 ? (dword) mulf16u::return#2 + //SEG306 [140] (dword) mulf16s::m#0 ← (dword) mulf16u::return#2 //SEG307 [141] if((signed word) mulf16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b1_from_b5 jmp b3 //SEG308 mulf16s::@3 b3: - //SEG309 [142] (word~) mulf16s::$9 ? > (dword) mulf16s::m#0 -- vwuz1=_hi_vduz2 + //SEG309 [142] (word~) mulf16s::$9 ← > (dword) mulf16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG310 [143] (word~) mulf16s::$16 ? (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG310 [143] (word~) mulf16s::$16 ← (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 lda _16 sec sbc b @@ -8501,7 +8501,7 @@ mulf16s: { lda _16+1 sbc b+1 sta _16+1 - //SEG311 [144] (dword) mulf16s::m#1 ? (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG311 [144] (dword) mulf16s::m#1 ← (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -8519,12 +8519,12 @@ mulf16s: { jmp b4 //SEG316 mulf16s::@4 b4: - //SEG317 [147] (word~) mulf16s::$13 ? > (dword) mulf16s::m#5 -- vwuz1=_hi_vduz2 + //SEG317 [147] (word~) mulf16s::$13 ← > (dword) mulf16s::m#5 -- vwuz1=_hi_vduz2 lda m+2 sta _13 lda m+3 sta _13+1 - //SEG318 [148] (word~) mulf16s::$17 ? (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG318 [148] (word~) mulf16s::$17 ← (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 lda _17 sec sbc a @@ -8532,7 +8532,7 @@ mulf16s: { lda _17+1 sbc a+1 sta _17+1 - //SEG319 [149] (dword) mulf16s::m#2 ? (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 -- vduz1=vduz1_sethi_vwuz2 + //SEG319 [149] (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 -- vduz1=vduz1_sethi_vwuz2 lda _17 sta m+2 lda _17+1 @@ -8544,7 +8544,7 @@ mulf16s: { jmp b2 //SEG322 mulf16s::@2 b2: - //SEG323 [151] (signed dword) mulf16s::return#0 ? ((signed dword)) (dword) mulf16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG323 [151] (signed dword) mulf16s::return#0 ← ((signed dword)) (dword) mulf16s::m#4 -- vdsz1=_sdword_vduz1 jmp breturn //SEG324 mulf16s::@return breturn: @@ -8562,12 +8562,12 @@ mulf16u: { .label return = $11 .label a = $15 .label b = $17 - //SEG327 [154] *((const word*) mulf16u::memA#0) ? (word) mulf16u::a#2 -- _deref_pwuc1=vwuz1 + //SEG327 [154] *((const word*) mulf16u::memA#0) ← (word) mulf16u::a#2 -- _deref_pwuc1=vwuz1 lda a sta memA lda a+1 sta memA+1 - //SEG328 [155] *((const word*) mulf16u::memB#0) ? (word) mulf16u::b#2 -- _deref_pwuc1=vwuz1 + //SEG328 [155] *((const word*) mulf16u::memB#0) ← (word) mulf16u::b#2 -- _deref_pwuc1=vwuz1 lda b sta memB lda b+1 @@ -8665,7 +8665,7 @@ mulf16u: { bcc !+ inc memR+3 !: - //SEG330 [157] (dword) mulf16u::return#0 ? *((const dword*) mulf16u::memR#0) -- vduz1=_deref_pduc1 + //SEG330 [157] (dword) mulf16u::return#0 ← *((const dword*) mulf16u::memR#0) -- vduz1=_deref_pduc1 lda memR sta return lda memR+1 @@ -8693,12 +8693,12 @@ mul16s: { .label return = $19 .label a = 3 .label b = 5 - //SEG334 [159] (word~) mul16u::b#3 ? (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2 + //SEG334 [159] (word~) mul16u::b#3 ← (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2 lda b sta mul16u.b lda b+1 sta mul16u.b+1 - //SEG335 [160] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG335 [160] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -8709,23 +8709,23 @@ mul16s: { //SEG338 [176] phi (word) mul16u::a#6 = (word~) mul16u::a#8 [phi:mul16s->mul16u#0] -- register_copy //SEG339 [176] phi (word) mul16u::b#2 = (word~) mul16u::b#3 [phi:mul16s->mul16u#1] -- register_copy jsr mul16u - //SEG340 [162] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG340 [162] (dword) mul16u::return#2 ← (dword) mul16u::res#2 jmp b5 //SEG341 mul16s::@5 b5: - //SEG342 [163] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + //SEG342 [163] (dword) mul16s::m#0 ← (dword) mul16u::return#2 //SEG343 [164] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b1_from_b5 jmp b3 //SEG344 mul16s::@3 b3: - //SEG345 [165] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG345 [165] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG346 [166] (word~) mul16s::$16 ? (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG346 [166] (word~) mul16s::$16 ← (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 lda _16 sec sbc b @@ -8733,7 +8733,7 @@ mul16s: { lda _16+1 sbc b+1 sta _16+1 - //SEG347 [167] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG347 [167] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -8751,12 +8751,12 @@ mul16s: { jmp b4 //SEG352 mul16s::@4 b4: - //SEG353 [170] (word~) mul16s::$13 ? > (dword) mul16s::m#5 -- vwuz1=_hi_vduz2 + //SEG353 [170] (word~) mul16s::$13 ← > (dword) mul16s::m#5 -- vwuz1=_hi_vduz2 lda m+2 sta _13 lda m+3 sta _13+1 - //SEG354 [171] (word~) mul16s::$17 ? (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG354 [171] (word~) mul16s::$17 ← (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 lda _17 sec sbc a @@ -8764,7 +8764,7 @@ mul16s: { lda _17+1 sbc a+1 sta _17+1 - //SEG355 [172] (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 -- vduz1=vduz1_sethi_vwuz2 + //SEG355 [172] (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 -- vduz1=vduz1_sethi_vwuz2 lda _17 sta m+2 lda _17+1 @@ -8776,7 +8776,7 @@ mul16s: { jmp b2 //SEG358 mul16s::@2 b2: - //SEG359 [174] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG359 [174] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 jmp breturn //SEG360 mul16s::@return breturn: @@ -8792,7 +8792,7 @@ mul16u: { .label res = $19 .label return = $19 .label b = $17 - //SEG363 [177] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG363 [177] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -8826,7 +8826,7 @@ mul16u: { rts //SEG372 mul16u::@2 b2: - //SEG373 [181] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG373 [181] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG374 [182] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 @@ -8835,7 +8835,7 @@ mul16u: { jmp b4 //SEG375 mul16u::@4 b4: - //SEG376 [183] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG376 [183] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -8856,11 +8856,11 @@ mul16u: { jmp b3 //SEG379 mul16u::@3 b3: - //SEG380 [185] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG380 [185] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG381 [186] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG381 [186] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -8918,7 +8918,7 @@ muls16s: { jmp b3 //SEG396 muls16s::@3 b3: - //SEG397 [190] (signed dword) muls16s::m#1 ? (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 -- vdsz1=vdsz1_plus_vwsz2 + //SEG397 [190] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 -- vdsz1=vdsz1_plus_vwsz2 lda b+1 ora #$7f bmi !+ @@ -8938,7 +8938,7 @@ muls16s: { lda m+3 adc $ff sta m+3 - //SEG398 [191] (signed word) muls16s::j#1 ? ++ (signed word) muls16s::j#2 -- vwsz1=_inc_vwsz1 + //SEG398 [191] (signed word) muls16s::j#1 ← ++ (signed word) muls16s::j#2 -- vwsz1=_inc_vwsz1 inc j bne !+ inc j+1 @@ -8994,7 +8994,7 @@ muls16s: { jmp b4 //SEG413 muls16s::@4 b4: - //SEG414 [196] (signed dword) muls16s::m#2 ? (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 -- vdsz1=vdsz1_minus_vwsz2 + //SEG414 [196] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 -- vdsz1=vdsz1_minus_vwsz2 lda b+1 ora #$7f bmi !+ @@ -9014,7 +9014,7 @@ muls16s: { lda m+3 sbc $ff sta m+3 - //SEG415 [197] (signed word) muls16s::i#1 ? -- (signed word) muls16s::i#2 -- vwsz1=_dec_vwsz1 + //SEG415 [197] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 -- vwsz1=_dec_vwsz1 lda i bne !+ dec i+1 @@ -9093,7 +9093,7 @@ mul16u_compare: { jmp b2 //SEG441 mul16u_compare::@2 b2: - //SEG442 [203] (word) mul16u_compare::a#1 ? (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwuz1=vwuz1_plus_vwuc1 + //SEG442 [203] (word) mul16u_compare::a#1 ← (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwuz1=vwuz1_plus_vwuc1 clc lda a adc #<$d2b @@ -9101,7 +9101,7 @@ mul16u_compare: { lda a+1 adc #>$d2b sta a+1 - //SEG443 [204] (word) mul16u_compare::b#1 ? (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwuz1=vwuz1_plus_vwuc1 + //SEG443 [204] (word) mul16u_compare::b#1 ← (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwuz1=vwuz1_plus_vwuc1 clc lda b adc #<$ffd @@ -9109,45 +9109,45 @@ mul16u_compare: { lda b+1 adc #>$ffd sta b+1 - //SEG444 [205] (word) muls16u::a#0 ? (word) mul16u_compare::a#1 - //SEG445 [206] (word) muls16u::b#0 ? (word) mul16u_compare::b#1 + //SEG444 [205] (word) muls16u::a#0 ← (word) mul16u_compare::a#1 + //SEG445 [206] (word) muls16u::b#0 ← (word) mul16u_compare::b#1 //SEG446 [207] call muls16u jsr muls16u - //SEG447 [208] (dword) muls16u::return#2 ? (dword) muls16u::return#0 + //SEG447 [208] (dword) muls16u::return#2 ← (dword) muls16u::return#0 jmp b10 //SEG448 mul16u_compare::@10 b10: - //SEG449 [209] (dword) mul16u_compare::ms#0 ? (dword) muls16u::return#2 - //SEG450 [210] (word) mul16u::a#2 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG449 [209] (dword) mul16u_compare::ms#0 ← (dword) muls16u::return#2 + //SEG450 [210] (word) mul16u::a#2 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 sta mul16u.a+1 - //SEG451 [211] (word) mul16u::b#1 ? (word) mul16u_compare::b#1 + //SEG451 [211] (word) mul16u::b#1 ← (word) mul16u_compare::b#1 //SEG452 [212] call mul16u //SEG453 [176] phi from mul16u_compare::@10 to mul16u [phi:mul16u_compare::@10->mul16u] mul16u_from_b10: //SEG454 [176] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mul16u_compare::@10->mul16u#0] -- register_copy //SEG455 [176] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mul16u_compare::@10->mul16u#1] -- register_copy jsr mul16u - //SEG456 [213] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + //SEG456 [213] (dword) mul16u::return#3 ← (dword) mul16u::res#2 jmp b11 //SEG457 mul16u_compare::@11 b11: - //SEG458 [214] (dword) mul16u_compare::mn#0 ? (dword) mul16u::return#3 - //SEG459 [215] (word) mulf16u::a#1 ? (word) mul16u_compare::a#1 - //SEG460 [216] (word) mulf16u::b#1 ? (word) mul16u_compare::b#1 + //SEG458 [214] (dword) mul16u_compare::mn#0 ← (dword) mul16u::return#3 + //SEG459 [215] (word) mulf16u::a#1 ← (word) mul16u_compare::a#1 + //SEG460 [216] (word) mulf16u::b#1 ← (word) mul16u_compare::b#1 //SEG461 [217] call mulf16u //SEG462 [153] phi from mul16u_compare::@11 to mulf16u [phi:mul16u_compare::@11->mulf16u] mulf16u_from_b11: //SEG463 [153] phi (word) mulf16u::b#2 = (word) mulf16u::b#1 [phi:mul16u_compare::@11->mulf16u#0] -- register_copy //SEG464 [153] phi (word) mulf16u::a#2 = (word) mulf16u::a#1 [phi:mul16u_compare::@11->mulf16u#1] -- register_copy jsr mulf16u - //SEG465 [218] (dword) mulf16u::return#3 ? (dword) mulf16u::return#0 + //SEG465 [218] (dword) mulf16u::return#3 ← (dword) mulf16u::return#0 jmp b12 //SEG466 mul16u_compare::@12 b12: - //SEG467 [219] (dword) mul16u_compare::mf#0 ? (dword) mulf16u::return#3 + //SEG467 [219] (dword) mul16u_compare::mf#0 ← (dword) mulf16u::return#3 //SEG468 [220] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mf#0) goto mul16u_compare::@3 -- vduz1_eq_vduz2_then_la1 lda ms cmp mf @@ -9206,18 +9206,18 @@ mul16u_compare: { jmp b7 //SEG481 mul16u_compare::@7 b7: - //SEG482 [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG482 [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG483 [227] (word) mul16u_error::a#0 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG483 [227] (word) mul16u_error::a#0 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta mul16u_error.a lda a+1 sta mul16u_error.a+1 - //SEG484 [228] (word) mul16u_error::b#0 ? (word) mul16u_compare::b#1 - //SEG485 [229] (dword) mul16u_error::ms#0 ? (dword) mul16u_compare::ms#0 - //SEG486 [230] (dword) mul16u_error::mn#0 ? (dword) mul16u_compare::mn#0 - //SEG487 [231] (dword) mul16u_error::mf#0 ? (dword) mul16u_compare::mf#0 + //SEG484 [228] (word) mul16u_error::b#0 ← (word) mul16u_compare::b#1 + //SEG485 [229] (dword) mul16u_error::ms#0 ← (dword) mul16u_compare::ms#0 + //SEG486 [230] (dword) mul16u_error::mn#0 ← (dword) mul16u_compare::mn#0 + //SEG487 [231] (dword) mul16u_error::mf#0 ← (dword) mul16u_compare::mf#0 //SEG488 [232] call mul16u_error //SEG489 [245] phi from mul16u_compare::@7 to mul16u_error [phi:mul16u_compare::@7->mul16u_error] mul16u_error_from_b7: @@ -9229,7 +9229,7 @@ mul16u_compare: { rts //SEG492 mul16u_compare::@5 b5: - //SEG493 [234] (byte) mul16u_compare::j#1 ? ++ (byte) mul16u_compare::j#10 -- vbuyy=_inc_vbuyy + //SEG493 [234] (byte) mul16u_compare::j#1 ← ++ (byte) mul16u_compare::j#10 -- vbuyy=_inc_vbuyy iny //SEG494 [235] if((byte) mul16u_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@2 -- vbuyy_neq_vbuc1_then_la1 cpy #$10 @@ -9237,7 +9237,7 @@ mul16u_compare: { jmp b8 //SEG495 mul16u_compare::@8 b8: - //SEG496 [236] (byte) mul16u_compare::i#1 ? ++ (byte) mul16u_compare::i#12 -- vbuz1=_inc_vbuz1 + //SEG496 [236] (byte) mul16u_compare::i#1 ← ++ (byte) mul16u_compare::i#12 -- vbuz1=_inc_vbuz1 inc i //SEG497 [237] if((byte) mul16u_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -9261,7 +9261,7 @@ mul16u_compare: { jmp b13 //SEG504 mul16u_compare::@13 b13: - //SEG505 [240] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG505 [240] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -9320,7 +9320,7 @@ mul16u_error: { jmp b1 //SEG525 mul16u_error::@1 b1: - //SEG526 [247] (word) print_word::w#3 ? (word) mul16u_error::a#0 + //SEG526 [247] (word) print_word::w#3 ← (word) mul16u_error::a#0 //SEG527 [248] call print_word //SEG528 [109] phi from mul16u_error::@1 to print_word [phi:mul16u_error::@1->print_word] print_word_from_b1: @@ -9345,7 +9345,7 @@ mul16u_error: { jmp b3 //SEG537 mul16u_error::@3 b3: - //SEG538 [251] (word) print_word::w#4 ? (word) mul16u_error::b#0 -- vwuz1=vwuz2 + //SEG538 [251] (word) print_word::w#4 ← (word) mul16u_error::b#0 -- vwuz1=vwuz2 lda b sta print_word.w lda b+1 @@ -9374,7 +9374,7 @@ mul16u_error: { jmp b5 //SEG549 mul16u_error::@5 b5: - //SEG550 [255] (dword) print_dword::dw#1 ? (dword) mul16u_error::ms#0 + //SEG550 [255] (dword) print_dword::dw#1 ← (dword) mul16u_error::ms#0 //SEG551 [256] call print_dword //SEG552 [103] phi from mul16u_error::@5 to print_dword [phi:mul16u_error::@5->print_dword] print_dword_from_b5: @@ -9399,7 +9399,7 @@ mul16u_error: { jmp b7 //SEG561 mul16u_error::@7 b7: - //SEG562 [259] (dword) print_dword::dw#2 ? (dword) mul16u_error::mn#0 -- vduz1=vduz2 + //SEG562 [259] (dword) print_dword::dw#2 ← (dword) mul16u_error::mn#0 -- vduz1=vduz2 lda mn sta print_dword.dw lda mn+1 @@ -9432,7 +9432,7 @@ mul16u_error: { jmp b9 //SEG573 mul16u_error::@9 b9: - //SEG574 [263] (dword) print_dword::dw#3 ? (dword) mul16u_error::mf#0 -- vduz1=vduz2 + //SEG574 [263] (dword) print_dword::dw#3 ← (dword) mul16u_error::mf#0 -- vduz1=vduz2 lda mf sta print_dword.dw lda mf+1 @@ -9507,7 +9507,7 @@ muls16u: { jmp b2 //SEG595 muls16u::@2 b2: - //SEG596 [270] (dword) muls16u::m#1 ? (dword) muls16u::m#3 + (word) muls16u::b#0 -- vduz1=vduz1_plus_vwuz2 + //SEG596 [270] (dword) muls16u::m#1 ← (dword) muls16u::m#3 + (word) muls16u::b#0 -- vduz1=vduz1_plus_vwuz2 lda m clc adc b @@ -9521,7 +9521,7 @@ muls16u: { lda m+3 adc #0 sta m+3 - //SEG597 [271] (word) muls16u::i#1 ? ++ (word) muls16u::i#2 -- vwuz1=_inc_vwuz1 + //SEG597 [271] (word) muls16u::i#1 ← ++ (word) muls16u::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -9598,9 +9598,9 @@ mulf_init: { jmp b1 //SEG619 mulf_init::@1 b1: - //SEG620 [277] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx + //SEG620 [277] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx inx - //SEG621 [278] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG621 [278] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG622 [279] if((byte~) mulf_init::$8!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 -- vbuaa_neq_0_then_la1 @@ -9609,9 +9609,9 @@ mulf_init: { jmp b3 //SEG623 mulf_init::@3 b3: - //SEG624 [280] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 + //SEG624 [280] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 inc x_2 - //SEG625 [281] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 + //SEG625 [281] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 @@ -9624,22 +9624,22 @@ mulf_init: { jmp b2 //SEG629 mulf_init::@2 b2: - //SEG630 [283] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 + //SEG630 [283] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 lda sqr - //SEG631 [284] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa + //SEG631 [284] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_lo),y - //SEG632 [285] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 + //SEG632 [285] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 lda sqr+1 - //SEG633 [286] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa + //SEG633 [286] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_hi),y - //SEG634 [287] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 + //SEG634 [287] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG635 [288] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 + //SEG635 [288] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -9647,7 +9647,7 @@ mulf_init: { bcc !+ inc sqr+1 !: - //SEG636 [289] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 + //SEG636 [289] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 @@ -9686,20 +9686,20 @@ mulf_init: { jmp b4 //SEG648 mulf_init::@4 b4: - //SEG649 [292] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG649 [292] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_lo,x ldy #0 sta (sqr2_lo),y - //SEG650 [293] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG650 [293] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_hi,x ldy #0 sta (sqr2_hi),y - //SEG651 [294] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 + //SEG651 [294] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG652 [295] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 + //SEG652 [295] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 txa clc adc dir @@ -9715,7 +9715,7 @@ mulf_init: { jmp b5 //SEG656 mulf_init::@5 b5: - //SEG657 [298] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 + //SEG657 [298] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 @@ -9730,11 +9730,11 @@ mulf_init: { jmp b6 //SEG659 mulf_init::@6 b6: - //SEG660 [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG660 [300] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 // Set the very last value g(511) = f(256) lda mulf_sqr1_lo+$100 sta mulf_sqr2_lo+$1ff - //SEG661 [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG661 [301] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 lda mulf_sqr1_hi+$100 sta mulf_sqr2_hi+$1ff jmp breturn @@ -9770,11 +9770,11 @@ print_cls: { jmp b1 //SEG673 print_cls::@1 b1: - //SEG674 [306] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG674 [306] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG675 [307] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG675 [307] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -10716,7 +10716,7 @@ Score: 439920 //SEG8 @end //SEG9 main main: { - //SEG10 [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL //SEG11 [5] call print_cls @@ -10749,7 +10749,7 @@ mul16s_compare: { .label mn = $19 .label mf = $11 .label i = 2 - //SEG27 [13] (byte*~) print_char_cursor#176 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG27 [13] (byte*~) print_char_cursor#176 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -10796,7 +10796,7 @@ mul16s_compare: { //SEG50 [16] phi (signed word) mul16s_compare::a#2 = (signed word) mul16s_compare::a#1 [phi:mul16s_compare::@5->mul16s_compare::@2#2] -- register_copy //SEG51 mul16s_compare::@2 b2: - //SEG52 [17] (signed word) mul16s_compare::a#1 ? (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwsz1=vwsz1_plus_vwuc1 + //SEG52 [17] (signed word) mul16s_compare::a#1 ← (signed word) mul16s_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwsz1=vwsz1_plus_vwuc1 clc lda a adc #<$d2b @@ -10804,7 +10804,7 @@ mul16s_compare: { lda a+1 adc #>$d2b sta a+1 - //SEG53 [18] (signed word) mul16s_compare::b#1 ? (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwsz1=vwsz1_plus_vwuc1 + //SEG53 [18] (signed word) mul16s_compare::b#1 ← (signed word) mul16s_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwsz1=vwsz1_plus_vwuc1 clc lda b adc #<$ffd @@ -10812,27 +10812,27 @@ mul16s_compare: { lda b+1 adc #>$ffd sta b+1 - //SEG54 [19] (signed word) muls16s::a#0 ? (signed word) mul16s_compare::a#1 - //SEG55 [20] (signed word) muls16s::b#0 ? (signed word) mul16s_compare::b#1 + //SEG54 [19] (signed word) muls16s::a#0 ← (signed word) mul16s_compare::a#1 + //SEG55 [20] (signed word) muls16s::b#0 ← (signed word) mul16s_compare::b#1 //SEG56 [21] call muls16s jsr muls16s - //SEG57 [22] (signed dword) muls16s::return#2 ? (signed dword) muls16s::return#0 + //SEG57 [22] (signed dword) muls16s::return#2 ← (signed dword) muls16s::return#0 //SEG58 mul16s_compare::@10 - //SEG59 [23] (signed dword) mul16s_compare::ms#0 ? (signed dword) muls16s::return#2 - //SEG60 [24] (signed word) mul16s::a#0 ? (signed word) mul16s_compare::a#1 - //SEG61 [25] (signed word) mul16s::b#0 ? (signed word) mul16s_compare::b#1 + //SEG59 [23] (signed dword) mul16s_compare::ms#0 ← (signed dword) muls16s::return#2 + //SEG60 [24] (signed word) mul16s::a#0 ← (signed word) mul16s_compare::a#1 + //SEG61 [25] (signed word) mul16s::b#0 ← (signed word) mul16s_compare::b#1 //SEG62 [26] call mul16s jsr mul16s - //SEG63 [27] (signed dword) mul16s::return#2 ? (signed dword) mul16s::return#0 + //SEG63 [27] (signed dword) mul16s::return#2 ← (signed dword) mul16s::return#0 //SEG64 mul16s_compare::@11 - //SEG65 [28] (signed dword) mul16s_compare::mn#0 ? (signed dword) mul16s::return#2 - //SEG66 [29] (signed word) mulf16s::a#0 ? (signed word) mul16s_compare::a#1 - //SEG67 [30] (signed word) mulf16s::b#0 ? (signed word) mul16s_compare::b#1 + //SEG65 [28] (signed dword) mul16s_compare::mn#0 ← (signed dword) mul16s::return#2 + //SEG66 [29] (signed word) mulf16s::a#0 ← (signed word) mul16s_compare::a#1 + //SEG67 [30] (signed word) mulf16s::b#0 ← (signed word) mul16s_compare::b#1 //SEG68 [31] call mulf16s jsr mulf16s - //SEG69 [32] (signed dword) mulf16s::return#2 ? (signed dword) mulf16s::return#0 + //SEG69 [32] (signed dword) mulf16s::return#2 ← (signed dword) mulf16s::return#0 //SEG70 mul16s_compare::@12 - //SEG71 [33] (signed dword) mul16s_compare::mf#0 ? (signed dword) mulf16s::return#2 + //SEG71 [33] (signed dword) mul16s_compare::mf#0 ← (signed dword) mulf16s::return#2 //SEG72 [34] if((signed dword) mul16s_compare::ms#0==(signed dword) mul16s_compare::mf#0) goto mul16s_compare::@3 -- vdsz1_eq_vdsz2_then_la1 lda ms cmp mf @@ -10882,14 +10882,14 @@ mul16s_compare: { cpx #0 bne b5 //SEG85 mul16s_compare::@7 - //SEG86 [40] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG86 [40] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG87 [41] (signed word) mul16s_error::a#0 ? (signed word) mul16s_compare::a#1 - //SEG88 [42] (signed word) mul16s_error::b#0 ? (signed word) mul16s_compare::b#1 - //SEG89 [43] (signed dword) mul16s_error::ms#0 ? (signed dword) mul16s_compare::ms#0 - //SEG90 [44] (signed dword) mul16s_error::mn#0 ? (signed dword) mul16s_compare::mn#0 - //SEG91 [45] (signed dword) mul16s_error::mf#0 ? (signed dword) mul16s_compare::mf#0 + //SEG87 [41] (signed word) mul16s_error::a#0 ← (signed word) mul16s_compare::a#1 + //SEG88 [42] (signed word) mul16s_error::b#0 ← (signed word) mul16s_compare::b#1 + //SEG89 [43] (signed dword) mul16s_error::ms#0 ← (signed dword) mul16s_compare::ms#0 + //SEG90 [44] (signed dword) mul16s_error::mn#0 ← (signed dword) mul16s_compare::mn#0 + //SEG91 [45] (signed dword) mul16s_error::mf#0 ← (signed dword) mul16s_compare::mf#0 //SEG92 [46] call mul16s_error //SEG93 [71] phi from mul16s_compare::@7 to mul16s_error [phi:mul16s_compare::@7->mul16s_error] jsr mul16s_error @@ -10898,13 +10898,13 @@ mul16s_compare: { rts //SEG96 mul16s_compare::@5 b5: - //SEG97 [48] (byte) mul16s_compare::j#1 ? ++ (byte) mul16s_compare::j#10 -- vbuyy=_inc_vbuyy + //SEG97 [48] (byte) mul16s_compare::j#1 ← ++ (byte) mul16s_compare::j#10 -- vbuyy=_inc_vbuyy iny //SEG98 [49] if((byte) mul16s_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@2 -- vbuyy_neq_vbuc1_then_la1 cpy #$10 bne b2 //SEG99 mul16s_compare::@8 - //SEG100 [50] (byte) mul16s_compare::i#1 ? ++ (byte) mul16s_compare::i#12 -- vbuz1=_inc_vbuz1 + //SEG100 [50] (byte) mul16s_compare::i#1 ← ++ (byte) mul16s_compare::i#12 -- vbuz1=_inc_vbuz1 inc i //SEG101 [51] if((byte) mul16s_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16s_compare::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -10920,7 +10920,7 @@ mul16s_compare: { //SEG107 [59] phi (byte*) print_line_cursor#43 = (byte*) print_line_cursor#1 [phi:mul16s_compare::@9->print_ln#1] -- register_copy jsr print_ln //SEG108 mul16s_compare::@13 - //SEG109 [54] (byte*~) print_char_cursor#185 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG109 [54] (byte*~) print_char_cursor#185 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -10955,7 +10955,7 @@ print_ln: { //SEG126 [60] phi (byte*) print_line_cursor#22 = (byte*) print_line_cursor#43 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy //SEG127 print_ln::@1 b1: - //SEG128 [61] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG128 [61] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#22 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -10996,16 +10996,16 @@ print_str: { rts //SEG140 print_str::@2 b2: - //SEG141 [68] *((byte*) print_char_cursor#128) ? *((byte*) print_str::str#15) -- _deref_pbuz1=_deref_pbuz2 + //SEG141 [68] *((byte*) print_char_cursor#128) ← *((byte*) print_str::str#15) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG142 [69] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 + //SEG142 [69] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#128 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG143 [70] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#15 -- pbuz1=_inc_pbuz1 + //SEG143 [70] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#15 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -11030,7 +11030,7 @@ mul16s_error: { sta print_str.str+1 jsr print_str //SEG149 mul16s_error::@1 - //SEG150 [73] (signed word) print_sword::w#1 ? (signed word) mul16s_error::a#0 + //SEG150 [73] (signed word) print_sword::w#1 ← (signed word) mul16s_error::a#0 //SEG151 [74] call print_sword //SEG152 [127] phi from mul16s_error::@1 to print_sword [phi:mul16s_error::@1->print_sword] //SEG153 [127] phi (signed word) print_sword::w#3 = (signed word) print_sword::w#1 [phi:mul16s_error::@1->print_sword#0] -- register_copy @@ -11047,7 +11047,7 @@ mul16s_error: { sta print_str.str+1 jsr print_str //SEG160 mul16s_error::@3 - //SEG161 [77] (signed word) print_sword::w#2 ? (signed word) mul16s_error::b#0 -- vwsz1=vwsz2 + //SEG161 [77] (signed word) print_sword::w#2 ← (signed word) mul16s_error::b#0 -- vwsz1=vwsz2 lda b sta print_sword.w lda b+1 @@ -11068,7 +11068,7 @@ mul16s_error: { sta print_str.str+1 jsr print_str //SEG171 mul16s_error::@5 - //SEG172 [81] (signed dword) print_sdword::dw#1 ? (signed dword) mul16s_error::ms#0 + //SEG172 [81] (signed dword) print_sdword::dw#1 ← (signed dword) mul16s_error::ms#0 //SEG173 [82] call print_sdword //SEG174 [94] phi from mul16s_error::@5 to print_sdword [phi:mul16s_error::@5->print_sdword] //SEG175 [94] phi (signed dword) print_sdword::dw#4 = (signed dword) print_sdword::dw#1 [phi:mul16s_error::@5->print_sdword#0] -- register_copy @@ -11085,7 +11085,7 @@ mul16s_error: { sta print_str.str+1 jsr print_str //SEG182 mul16s_error::@7 - //SEG183 [85] (signed dword) print_sdword::dw#2 ? (signed dword) mul16s_error::mn#0 -- vdsz1=vdsz2 + //SEG183 [85] (signed dword) print_sdword::dw#2 ← (signed dword) mul16s_error::mn#0 -- vdsz1=vdsz2 lda mn sta print_sdword.dw lda mn+1 @@ -11110,7 +11110,7 @@ mul16s_error: { sta print_str.str+1 jsr print_str //SEG193 mul16s_error::@9 - //SEG194 [89] (signed dword) print_sdword::dw#3 ? (signed dword) mul16s_error::mf#0 -- vdsz1=vdsz2 + //SEG194 [89] (signed dword) print_sdword::dw#3 ← (signed dword) mul16s_error::mf#0 -- vdsz1=vdsz2 lda mf sta print_sdword.dw lda mf+1 @@ -11152,7 +11152,7 @@ print_sdword: { lda #'-' jsr print_char //SEG214 print_sdword::@3 - //SEG215 [98] (signed dword) print_sdword::dw#0 ? - (signed dword) print_sdword::dw#4 -- vdsz1=_neg_vdsz1 + //SEG215 [98] (signed dword) print_sdword::dw#0 ← - (signed dword) print_sdword::dw#4 -- vdsz1=_neg_vdsz1 sec lda dw eor #$ff @@ -11175,7 +11175,7 @@ print_sdword: { //SEG218 [99] phi (signed dword) print_sdword::dw#5 = (signed dword) print_sdword::dw#4 [phi:print_sdword/print_sdword::@3->print_sdword::@1#1] -- register_copy //SEG219 print_sdword::@1 b1: - //SEG220 [100] (dword) print_dword::dw#0 ? ((dword)) (signed dword) print_sdword::dw#5 -- vduz1=_dword_vdsz1 + //SEG220 [100] (dword) print_dword::dw#0 ← ((dword)) (signed dword) print_sdword::dw#5 -- vduz1=_dword_vdsz1 //SEG221 [101] call print_dword //SEG222 [103] phi from print_sdword::@1 to print_dword [phi:print_sdword::@1->print_dword] //SEG223 [103] phi (byte*) print_char_cursor#133 = (byte*) print_char_cursor#134 [phi:print_sdword::@1->print_dword#0] -- register_copy @@ -11190,7 +11190,7 @@ print_sdword: { // print_dword(dword zeropage($b) dw) print_dword: { .label dw = $b - //SEG228 [104] (word) print_word::w#1 ? > (dword) print_dword::dw#4 -- vwuz1=_hi_vduz2 + //SEG228 [104] (word) print_word::w#1 ← > (dword) print_dword::dw#4 -- vwuz1=_hi_vduz2 lda dw+2 sta print_word.w lda dw+3 @@ -11201,7 +11201,7 @@ print_dword: { //SEG232 [109] phi (word) print_word::w#5 = (word) print_word::w#1 [phi:print_dword->print_word#1] -- register_copy jsr print_word //SEG233 print_dword::@1 - //SEG234 [106] (word) print_word::w#2 ? < (dword) print_dword::dw#4 -- vwuz1=_lo_vduz2 + //SEG234 [106] (word) print_word::w#2 ← < (dword) print_dword::dw#4 -- vwuz1=_lo_vduz2 lda dw sta print_word.w lda dw+1 @@ -11220,7 +11220,7 @@ print_dword: { // print_word(word zeropage(3) w) print_word: { .label w = 3 - //SEG242 [110] (byte) print_byte::b#0 ? > (word) print_word::w#5 -- vbuxx=_hi_vwuz1 + //SEG242 [110] (byte) print_byte::b#0 ← > (word) print_word::w#5 -- vbuxx=_hi_vwuz1 lda w+1 tax //SEG243 [111] call print_byte @@ -11229,7 +11229,7 @@ print_word: { //SEG246 [115] phi (byte) print_byte::b#2 = (byte) print_byte::b#0 [phi:print_word->print_byte#1] -- register_copy jsr print_byte //SEG247 print_word::@1 - //SEG248 [112] (byte) print_byte::b#1 ? < (word) print_word::w#5 -- vbuxx=_lo_vwuz1 + //SEG248 [112] (byte) print_byte::b#1 ← < (word) print_word::w#5 -- vbuxx=_lo_vwuz1 lda w tax //SEG249 [113] call print_byte @@ -11245,13 +11245,13 @@ print_word: { // Print a byte as HEX // print_byte(byte register(X) b) print_byte: { - //SEG256 [116] (byte~) print_byte::$0 ? (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG256 [116] (byte~) print_byte::$0 ← (byte) print_byte::b#2 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG257 [117] (byte) print_char::ch#2 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG257 [117] (byte) print_char::ch#2 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG258 [118] call print_char @@ -11260,10 +11260,10 @@ print_byte: { //SEG261 [123] phi (byte) print_char::ch#4 = (byte) print_char::ch#2 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG262 print_byte::@1 - //SEG263 [119] (byte~) print_byte::$2 ? (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 + //SEG263 [119] (byte~) print_byte::$2 ← (byte) print_byte::b#2 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 - //SEG264 [120] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG264 [120] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x //SEG265 [121] call print_char //SEG266 [123] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] @@ -11278,10 +11278,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG272 [124] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa + //SEG272 [124] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#4 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG273 [125] (byte*) print_char_cursor#20 ? ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 + //SEG273 [125] (byte*) print_char_cursor#20 ← ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -11307,7 +11307,7 @@ print_sword: { lda #'-' jsr print_char //SEG284 print_sword::@3 - //SEG285 [131] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#3 -- vwsz1=_neg_vwsz1 + //SEG285 [131] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#3 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -11322,7 +11322,7 @@ print_sword: { //SEG288 [132] phi (signed word) print_sword::w#4 = (signed word) print_sword::w#3 [phi:print_sword/print_sword::@3->print_sword::@1#1] -- register_copy //SEG289 print_sword::@1 b1: - //SEG290 [133] (word~) print_word::w#11 ? (word)(signed word) print_sword::w#4 + //SEG290 [133] (word~) print_word::w#11 ← (word)(signed word) print_sword::w#4 //SEG291 [134] call print_word //SEG292 [109] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] //SEG293 [109] phi (byte*) print_char_cursor#132 = (byte*) print_char_cursor#130 [phi:print_sword::@1->print_word#0] -- register_copy @@ -11345,12 +11345,12 @@ mulf16s: { .label return = $11 .label a = 3 .label b = 5 - //SEG298 [136] (word~) mulf16u::a#4 ? (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2 + //SEG298 [136] (word~) mulf16u::a#4 ← (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz2 lda a sta mulf16u.a lda a+1 sta mulf16u.a+1 - //SEG299 [137] (word~) mulf16u::b#4 ? (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2 + //SEG299 [137] (word~) mulf16u::b#4 ← (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz2 lda b sta mulf16u.b lda b+1 @@ -11360,19 +11360,19 @@ mulf16s: { //SEG302 [153] phi (word) mulf16u::b#2 = (word~) mulf16u::b#4 [phi:mulf16s->mulf16u#0] -- register_copy //SEG303 [153] phi (word) mulf16u::a#2 = (word~) mulf16u::a#4 [phi:mulf16s->mulf16u#1] -- register_copy jsr mulf16u - //SEG304 [139] (dword) mulf16u::return#2 ? (dword) mulf16u::return#0 + //SEG304 [139] (dword) mulf16u::return#2 ← (dword) mulf16u::return#0 //SEG305 mulf16s::@5 - //SEG306 [140] (dword) mulf16s::m#0 ? (dword) mulf16u::return#2 + //SEG306 [140] (dword) mulf16s::m#0 ← (dword) mulf16u::return#2 //SEG307 [141] if((signed word) mulf16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b1 //SEG308 mulf16s::@3 - //SEG309 [142] (word~) mulf16s::$9 ? > (dword) mulf16s::m#0 -- vwuz1=_hi_vduz2 + //SEG309 [142] (word~) mulf16s::$9 ← > (dword) mulf16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG310 [143] (word~) mulf16s::$16 ? (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG310 [143] (word~) mulf16s::$16 ← (word~) mulf16s::$9 - (word)(signed word) mulf16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 lda _16 sec sbc b @@ -11380,7 +11380,7 @@ mulf16s: { lda _16+1 sbc b+1 sta _16+1 - //SEG311 [144] (dword) mulf16s::m#1 ? (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG311 [144] (dword) mulf16s::m#1 ← (dword) mulf16s::m#0 hi= (word~) mulf16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -11393,12 +11393,12 @@ mulf16s: { lda b+1 bpl b2 //SEG316 mulf16s::@4 - //SEG317 [147] (word~) mulf16s::$13 ? > (dword) mulf16s::m#5 -- vwuz1=_hi_vduz2 + //SEG317 [147] (word~) mulf16s::$13 ← > (dword) mulf16s::m#5 -- vwuz1=_hi_vduz2 lda m+2 sta _13 lda m+3 sta _13+1 - //SEG318 [148] (word~) mulf16s::$17 ? (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG318 [148] (word~) mulf16s::$17 ← (word~) mulf16s::$13 - (word)(signed word) mulf16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 lda _17 sec sbc a @@ -11406,7 +11406,7 @@ mulf16s: { lda _17+1 sbc a+1 sta _17+1 - //SEG319 [149] (dword) mulf16s::m#2 ? (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 -- vduz1=vduz1_sethi_vwuz2 + //SEG319 [149] (dword) mulf16s::m#2 ← (dword) mulf16s::m#5 hi= (word~) mulf16s::$17 -- vduz1=vduz1_sethi_vwuz2 lda _17 sta m+2 lda _17+1 @@ -11415,7 +11415,7 @@ mulf16s: { //SEG321 [150] phi (dword) mulf16s::m#4 = (dword) mulf16s::m#5 [phi:mulf16s::@1/mulf16s::@4->mulf16s::@2#0] -- register_copy //SEG322 mulf16s::@2 b2: - //SEG323 [151] (signed dword) mulf16s::return#0 ? ((signed dword)) (dword) mulf16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG323 [151] (signed dword) mulf16s::return#0 ← ((signed dword)) (dword) mulf16s::m#4 -- vdsz1=_sdword_vduz1 //SEG324 mulf16s::@return //SEG325 [152] return rts @@ -11431,12 +11431,12 @@ mulf16u: { .label return = $11 .label a = $15 .label b = $17 - //SEG327 [154] *((const word*) mulf16u::memA#0) ? (word) mulf16u::a#2 -- _deref_pwuc1=vwuz1 + //SEG327 [154] *((const word*) mulf16u::memA#0) ← (word) mulf16u::a#2 -- _deref_pwuc1=vwuz1 lda a sta memA lda a+1 sta memA+1 - //SEG328 [155] *((const word*) mulf16u::memB#0) ? (word) mulf16u::b#2 -- _deref_pwuc1=vwuz1 + //SEG328 [155] *((const word*) mulf16u::memB#0) ← (word) mulf16u::b#2 -- _deref_pwuc1=vwuz1 lda b sta memB lda b+1 @@ -11534,7 +11534,7 @@ mulf16u: { bcc !+ inc memR+3 !: - //SEG330 [157] (dword) mulf16u::return#0 ? *((const dword*) mulf16u::memR#0) -- vduz1=_deref_pduc1 + //SEG330 [157] (dword) mulf16u::return#0 ← *((const dword*) mulf16u::memR#0) -- vduz1=_deref_pduc1 lda memR sta return lda memR+1 @@ -11560,12 +11560,12 @@ mul16s: { .label return = $19 .label a = 3 .label b = 5 - //SEG334 [159] (word~) mul16u::b#3 ? (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2 + //SEG334 [159] (word~) mul16u::b#3 ← (word)(signed word) mul16s::b#0 -- vwuz1=vwuz2 lda b sta mul16u.b lda b+1 sta mul16u.b+1 - //SEG335 [160] (word~) mul16u::a#8 ? (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 + //SEG335 [160] (word~) mul16u::a#8 ← (word)(signed word) mul16s::a#0 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 @@ -11575,19 +11575,19 @@ mul16s: { //SEG338 [176] phi (word) mul16u::a#6 = (word~) mul16u::a#8 [phi:mul16s->mul16u#0] -- register_copy //SEG339 [176] phi (word) mul16u::b#2 = (word~) mul16u::b#3 [phi:mul16s->mul16u#1] -- register_copy jsr mul16u - //SEG340 [162] (dword) mul16u::return#2 ? (dword) mul16u::res#2 + //SEG340 [162] (dword) mul16u::return#2 ← (dword) mul16u::res#2 //SEG341 mul16s::@5 - //SEG342 [163] (dword) mul16s::m#0 ? (dword) mul16u::return#2 + //SEG342 [163] (dword) mul16s::m#0 ← (dword) mul16u::return#2 //SEG343 [164] if((signed word) mul16s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16s::@1 -- vwsz1_ge_0_then_la1 lda a+1 bpl b1 //SEG344 mul16s::@3 - //SEG345 [165] (word~) mul16s::$9 ? > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 + //SEG345 [165] (word~) mul16s::$9 ← > (dword) mul16s::m#0 -- vwuz1=_hi_vduz2 lda m+2 sta _9 lda m+3 sta _9+1 - //SEG346 [166] (word~) mul16s::$16 ? (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG346 [166] (word~) mul16s::$16 ← (word~) mul16s::$9 - (word)(signed word) mul16s::b#0 -- vwuz1=vwuz1_minus_vwuz2 lda _16 sec sbc b @@ -11595,7 +11595,7 @@ mul16s: { lda _16+1 sbc b+1 sta _16+1 - //SEG347 [167] (dword) mul16s::m#1 ? (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 + //SEG347 [167] (dword) mul16s::m#1 ← (dword) mul16s::m#0 hi= (word~) mul16s::$16 -- vduz1=vduz1_sethi_vwuz2 lda _16 sta m+2 lda _16+1 @@ -11608,12 +11608,12 @@ mul16s: { lda b+1 bpl b2 //SEG352 mul16s::@4 - //SEG353 [170] (word~) mul16s::$13 ? > (dword) mul16s::m#5 -- vwuz1=_hi_vduz2 + //SEG353 [170] (word~) mul16s::$13 ← > (dword) mul16s::m#5 -- vwuz1=_hi_vduz2 lda m+2 sta _13 lda m+3 sta _13+1 - //SEG354 [171] (word~) mul16s::$17 ? (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 + //SEG354 [171] (word~) mul16s::$17 ← (word~) mul16s::$13 - (word)(signed word) mul16s::a#0 -- vwuz1=vwuz1_minus_vwuz2 lda _17 sec sbc a @@ -11621,7 +11621,7 @@ mul16s: { lda _17+1 sbc a+1 sta _17+1 - //SEG355 [172] (dword) mul16s::m#2 ? (dword) mul16s::m#5 hi= (word~) mul16s::$17 -- vduz1=vduz1_sethi_vwuz2 + //SEG355 [172] (dword) mul16s::m#2 ← (dword) mul16s::m#5 hi= (word~) mul16s::$17 -- vduz1=vduz1_sethi_vwuz2 lda _17 sta m+2 lda _17+1 @@ -11630,7 +11630,7 @@ mul16s: { //SEG357 [173] phi (dword) mul16s::m#4 = (dword) mul16s::m#5 [phi:mul16s::@1/mul16s::@4->mul16s::@2#0] -- register_copy //SEG358 mul16s::@2 b2: - //SEG359 [174] (signed dword) mul16s::return#0 ? ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 + //SEG359 [174] (signed dword) mul16s::return#0 ← ((signed dword)) (dword) mul16s::m#4 -- vdsz1=_sdword_vduz1 //SEG360 mul16s::@return //SEG361 [175] return rts @@ -11644,7 +11644,7 @@ mul16u: { .label res = $19 .label return = $19 .label b = $17 - //SEG363 [177] (dword) mul16u::mb#0 ? ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 + //SEG363 [177] (dword) mul16u::mb#0 ← ((dword)) (word) mul16u::b#2 -- vduz1=_dword_vwuz2 lda b sta mb lda b+1 @@ -11672,14 +11672,14 @@ mul16u: { rts //SEG372 mul16u::@2 b2: - //SEG373 [181] (byte/word~) mul16u::$1 ? (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 + //SEG373 [181] (byte/word~) mul16u::$1 ← (word) mul16u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vwuz1_band_vbuc1 lda a and #1 //SEG374 [182] if((byte/word~) mul16u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul16u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG375 mul16u::@4 - //SEG376 [183] (dword) mul16u::res#1 ? (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 + //SEG376 [183] (dword) mul16u::res#1 ← (dword) mul16u::res#2 + (dword) mul16u::mb#2 -- vduz1=vduz1_plus_vduz2 lda res clc adc mb @@ -11697,11 +11697,11 @@ mul16u: { //SEG378 [184] phi (dword) mul16u::res#6 = (dword) mul16u::res#2 [phi:mul16u::@2/mul16u::@4->mul16u::@3#0] -- register_copy //SEG379 mul16u::@3 b3: - //SEG380 [185] (word) mul16u::a#0 ? (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 + //SEG380 [185] (word) mul16u::a#0 ← (word) mul16u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_ror_1 clc ror a+1 ror a - //SEG381 [186] (dword) mul16u::mb#1 ? (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 + //SEG381 [186] (dword) mul16u::mb#1 ← (dword) mul16u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vduz1=vduz1_rol_1 asl mb rol mb+1 rol mb+2 @@ -11748,7 +11748,7 @@ muls16s: { //SEG395 [189] phi (signed dword) muls16s::m#3 = (signed dword) muls16s::m#1 [phi:muls16s::@3->muls16s::@3#1] -- register_copy //SEG396 muls16s::@3 b3: - //SEG397 [190] (signed dword) muls16s::m#1 ? (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 -- vdsz1=vdsz1_plus_vwsz2 + //SEG397 [190] (signed dword) muls16s::m#1 ← (signed dword) muls16s::m#3 + (signed word) muls16s::b#0 -- vdsz1=vdsz1_plus_vwsz2 lda b+1 ora #$7f bmi !+ @@ -11768,7 +11768,7 @@ muls16s: { lda m+3 adc $ff sta m+3 - //SEG398 [191] (signed word) muls16s::j#1 ? ++ (signed word) muls16s::j#2 -- vwsz1=_inc_vwsz1 + //SEG398 [191] (signed word) muls16s::j#1 ← ++ (signed word) muls16s::j#2 -- vwsz1=_inc_vwsz1 inc j bne !+ inc j+1 @@ -11811,7 +11811,7 @@ muls16s: { //SEG412 [195] phi (signed dword) muls16s::m#5 = (signed dword) muls16s::m#2 [phi:muls16s::@4->muls16s::@4#1] -- register_copy //SEG413 muls16s::@4 b4: - //SEG414 [196] (signed dword) muls16s::m#2 ? (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 -- vdsz1=vdsz1_minus_vwsz2 + //SEG414 [196] (signed dword) muls16s::m#2 ← (signed dword) muls16s::m#5 - (signed word) muls16s::b#0 -- vdsz1=vdsz1_minus_vwsz2 lda b+1 ora #$7f bmi !+ @@ -11831,7 +11831,7 @@ muls16s: { lda m+3 sbc $ff sta m+3 - //SEG415 [197] (signed word) muls16s::i#1 ? -- (signed word) muls16s::i#2 -- vwsz1=_dec_vwsz1 + //SEG415 [197] (signed word) muls16s::i#1 ← -- (signed word) muls16s::i#2 -- vwsz1=_dec_vwsz1 lda i bne !+ dec i+1 @@ -11897,7 +11897,7 @@ mul16u_compare: { //SEG440 [202] phi (word) mul16u_compare::a#2 = (word) mul16u_compare::a#1 [phi:mul16u_compare::@5->mul16u_compare::@2#2] -- register_copy //SEG441 mul16u_compare::@2 b2: - //SEG442 [203] (word) mul16u_compare::a#1 ? (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwuz1=vwuz1_plus_vwuc1 + //SEG442 [203] (word) mul16u_compare::a#1 ← (word) mul16u_compare::a#2 + (word/signed word/dword/signed dword) $d2b -- vwuz1=vwuz1_plus_vwuc1 clc lda a adc #<$d2b @@ -11905,7 +11905,7 @@ mul16u_compare: { lda a+1 adc #>$d2b sta a+1 - //SEG443 [204] (word) mul16u_compare::b#1 ? (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwuz1=vwuz1_plus_vwuc1 + //SEG443 [204] (word) mul16u_compare::b#1 ← (word) mul16u_compare::b#2 + (word/signed word/dword/signed dword) $ffd -- vwuz1=vwuz1_plus_vwuc1 clc lda b adc #<$ffd @@ -11913,37 +11913,37 @@ mul16u_compare: { lda b+1 adc #>$ffd sta b+1 - //SEG444 [205] (word) muls16u::a#0 ? (word) mul16u_compare::a#1 - //SEG445 [206] (word) muls16u::b#0 ? (word) mul16u_compare::b#1 + //SEG444 [205] (word) muls16u::a#0 ← (word) mul16u_compare::a#1 + //SEG445 [206] (word) muls16u::b#0 ← (word) mul16u_compare::b#1 //SEG446 [207] call muls16u jsr muls16u - //SEG447 [208] (dword) muls16u::return#2 ? (dword) muls16u::return#0 + //SEG447 [208] (dword) muls16u::return#2 ← (dword) muls16u::return#0 //SEG448 mul16u_compare::@10 - //SEG449 [209] (dword) mul16u_compare::ms#0 ? (dword) muls16u::return#2 - //SEG450 [210] (word) mul16u::a#2 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG449 [209] (dword) mul16u_compare::ms#0 ← (dword) muls16u::return#2 + //SEG450 [210] (word) mul16u::a#2 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta mul16u.a lda a+1 sta mul16u.a+1 - //SEG451 [211] (word) mul16u::b#1 ? (word) mul16u_compare::b#1 + //SEG451 [211] (word) mul16u::b#1 ← (word) mul16u_compare::b#1 //SEG452 [212] call mul16u //SEG453 [176] phi from mul16u_compare::@10 to mul16u [phi:mul16u_compare::@10->mul16u] //SEG454 [176] phi (word) mul16u::a#6 = (word) mul16u::a#2 [phi:mul16u_compare::@10->mul16u#0] -- register_copy //SEG455 [176] phi (word) mul16u::b#2 = (word) mul16u::b#1 [phi:mul16u_compare::@10->mul16u#1] -- register_copy jsr mul16u - //SEG456 [213] (dword) mul16u::return#3 ? (dword) mul16u::res#2 + //SEG456 [213] (dword) mul16u::return#3 ← (dword) mul16u::res#2 //SEG457 mul16u_compare::@11 - //SEG458 [214] (dword) mul16u_compare::mn#0 ? (dword) mul16u::return#3 - //SEG459 [215] (word) mulf16u::a#1 ? (word) mul16u_compare::a#1 - //SEG460 [216] (word) mulf16u::b#1 ? (word) mul16u_compare::b#1 + //SEG458 [214] (dword) mul16u_compare::mn#0 ← (dword) mul16u::return#3 + //SEG459 [215] (word) mulf16u::a#1 ← (word) mul16u_compare::a#1 + //SEG460 [216] (word) mulf16u::b#1 ← (word) mul16u_compare::b#1 //SEG461 [217] call mulf16u //SEG462 [153] phi from mul16u_compare::@11 to mulf16u [phi:mul16u_compare::@11->mulf16u] //SEG463 [153] phi (word) mulf16u::b#2 = (word) mulf16u::b#1 [phi:mul16u_compare::@11->mulf16u#0] -- register_copy //SEG464 [153] phi (word) mulf16u::a#2 = (word) mulf16u::a#1 [phi:mul16u_compare::@11->mulf16u#1] -- register_copy jsr mulf16u - //SEG465 [218] (dword) mulf16u::return#3 ? (dword) mulf16u::return#0 + //SEG465 [218] (dword) mulf16u::return#3 ← (dword) mulf16u::return#0 //SEG466 mul16u_compare::@12 - //SEG467 [219] (dword) mul16u_compare::mf#0 ? (dword) mulf16u::return#3 + //SEG467 [219] (dword) mul16u_compare::mf#0 ← (dword) mulf16u::return#3 //SEG468 [220] if((dword) mul16u_compare::ms#0==(dword) mul16u_compare::mf#0) goto mul16u_compare::@3 -- vduz1_eq_vduz2_then_la1 lda ms cmp mf @@ -11993,18 +11993,18 @@ mul16u_compare: { cpx #0 bne b5 //SEG481 mul16u_compare::@7 - //SEG482 [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG482 [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG483 [227] (word) mul16u_error::a#0 ? (word) mul16u_compare::a#1 -- vwuz1=vwuz2 + //SEG483 [227] (word) mul16u_error::a#0 ← (word) mul16u_compare::a#1 -- vwuz1=vwuz2 lda a sta mul16u_error.a lda a+1 sta mul16u_error.a+1 - //SEG484 [228] (word) mul16u_error::b#0 ? (word) mul16u_compare::b#1 - //SEG485 [229] (dword) mul16u_error::ms#0 ? (dword) mul16u_compare::ms#0 - //SEG486 [230] (dword) mul16u_error::mn#0 ? (dword) mul16u_compare::mn#0 - //SEG487 [231] (dword) mul16u_error::mf#0 ? (dword) mul16u_compare::mf#0 + //SEG484 [228] (word) mul16u_error::b#0 ← (word) mul16u_compare::b#1 + //SEG485 [229] (dword) mul16u_error::ms#0 ← (dword) mul16u_compare::ms#0 + //SEG486 [230] (dword) mul16u_error::mn#0 ← (dword) mul16u_compare::mn#0 + //SEG487 [231] (dword) mul16u_error::mf#0 ← (dword) mul16u_compare::mf#0 //SEG488 [232] call mul16u_error //SEG489 [245] phi from mul16u_compare::@7 to mul16u_error [phi:mul16u_compare::@7->mul16u_error] jsr mul16u_error @@ -12013,13 +12013,13 @@ mul16u_compare: { rts //SEG492 mul16u_compare::@5 b5: - //SEG493 [234] (byte) mul16u_compare::j#1 ? ++ (byte) mul16u_compare::j#10 -- vbuyy=_inc_vbuyy + //SEG493 [234] (byte) mul16u_compare::j#1 ← ++ (byte) mul16u_compare::j#10 -- vbuyy=_inc_vbuyy iny //SEG494 [235] if((byte) mul16u_compare::j#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@2 -- vbuyy_neq_vbuc1_then_la1 cpy #$10 bne b2 //SEG495 mul16u_compare::@8 - //SEG496 [236] (byte) mul16u_compare::i#1 ? ++ (byte) mul16u_compare::i#12 -- vbuz1=_inc_vbuz1 + //SEG496 [236] (byte) mul16u_compare::i#1 ← ++ (byte) mul16u_compare::i#12 -- vbuz1=_inc_vbuz1 inc i //SEG497 [237] if((byte) mul16u_compare::i#1!=(byte/signed byte/word/signed word/dword/signed dword) $10) goto mul16u_compare::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$10 @@ -12039,7 +12039,7 @@ mul16u_compare: { sta print_line_cursor+1 jsr print_ln //SEG504 mul16u_compare::@13 - //SEG505 [240] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG505 [240] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -12085,7 +12085,7 @@ mul16u_error: { sta print_str.str+1 jsr print_str //SEG525 mul16u_error::@1 - //SEG526 [247] (word) print_word::w#3 ? (word) mul16u_error::a#0 + //SEG526 [247] (word) print_word::w#3 ← (word) mul16u_error::a#0 //SEG527 [248] call print_word //SEG528 [109] phi from mul16u_error::@1 to print_word [phi:mul16u_error::@1->print_word] //SEG529 [109] phi (byte*) print_char_cursor#132 = (byte*) print_char_cursor#128 [phi:mul16u_error::@1->print_word#0] -- register_copy @@ -12103,7 +12103,7 @@ mul16u_error: { sta print_str.str+1 jsr print_str //SEG537 mul16u_error::@3 - //SEG538 [251] (word) print_word::w#4 ? (word) mul16u_error::b#0 -- vwuz1=vwuz2 + //SEG538 [251] (word) print_word::w#4 ← (word) mul16u_error::b#0 -- vwuz1=vwuz2 lda b sta print_word.w lda b+1 @@ -12125,7 +12125,7 @@ mul16u_error: { sta print_str.str+1 jsr print_str //SEG549 mul16u_error::@5 - //SEG550 [255] (dword) print_dword::dw#1 ? (dword) mul16u_error::ms#0 + //SEG550 [255] (dword) print_dword::dw#1 ← (dword) mul16u_error::ms#0 //SEG551 [256] call print_dword //SEG552 [103] phi from mul16u_error::@5 to print_dword [phi:mul16u_error::@5->print_dword] //SEG553 [103] phi (byte*) print_char_cursor#133 = (byte*) print_char_cursor#128 [phi:mul16u_error::@5->print_dword#0] -- register_copy @@ -12143,7 +12143,7 @@ mul16u_error: { sta print_str.str+1 jsr print_str //SEG561 mul16u_error::@7 - //SEG562 [259] (dword) print_dword::dw#2 ? (dword) mul16u_error::mn#0 -- vduz1=vduz2 + //SEG562 [259] (dword) print_dword::dw#2 ← (dword) mul16u_error::mn#0 -- vduz1=vduz2 lda mn sta print_dword.dw lda mn+1 @@ -12169,7 +12169,7 @@ mul16u_error: { sta print_str.str+1 jsr print_str //SEG573 mul16u_error::@9 - //SEG574 [263] (dword) print_dword::dw#3 ? (dword) mul16u_error::mf#0 -- vduz1=vduz2 + //SEG574 [263] (dword) print_dword::dw#3 ← (dword) mul16u_error::mf#0 -- vduz1=vduz2 lda mf sta print_dword.dw lda mf+1 @@ -12230,7 +12230,7 @@ muls16u: { //SEG594 [269] phi (dword) muls16u::m#3 = (dword) muls16u::m#1 [phi:muls16u::@2->muls16u::@2#1] -- register_copy //SEG595 muls16u::@2 b2: - //SEG596 [270] (dword) muls16u::m#1 ? (dword) muls16u::m#3 + (word) muls16u::b#0 -- vduz1=vduz1_plus_vwuz2 + //SEG596 [270] (dword) muls16u::m#1 ← (dword) muls16u::m#3 + (word) muls16u::b#0 -- vduz1=vduz1_plus_vwuz2 lda m clc adc b @@ -12244,7 +12244,7 @@ muls16u: { lda m+3 adc #0 sta m+3 - //SEG597 [271] (word) muls16u::i#1 ? ++ (word) muls16u::i#2 -- vwuz1=_inc_vwuz1 + //SEG597 [271] (word) muls16u::i#1 ← ++ (word) muls16u::i#2 -- vwuz1=_inc_vwuz1 inc i bne !+ inc i+1 @@ -12310,18 +12310,18 @@ mulf_init: { //SEG618 [276] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy //SEG619 mulf_init::@1 b1: - //SEG620 [277] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx + //SEG620 [277] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx inx - //SEG621 [278] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG621 [278] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG622 [279] if((byte~) mulf_init::$8!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 -- vbuaa_neq_0_then_la1 cmp #0 bne b2 //SEG623 mulf_init::@3 - //SEG624 [280] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 + //SEG624 [280] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 inc x_2 - //SEG625 [281] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 + //SEG625 [281] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 @@ -12331,21 +12331,21 @@ mulf_init: { //SEG628 [282] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@3->mulf_init::@2#1] -- register_copy //SEG629 mulf_init::@2 b2: - //SEG630 [283] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 + //SEG630 [283] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 lda sqr - //SEG631 [284] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa + //SEG631 [284] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_lo),y - //SEG632 [285] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 + //SEG632 [285] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 lda sqr+1 - //SEG633 [286] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa + //SEG633 [286] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa sta (sqr1_hi),y - //SEG634 [287] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 + //SEG634 [287] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG635 [288] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 + //SEG635 [288] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -12353,7 +12353,7 @@ mulf_init: { bcc !+ inc sqr+1 !: - //SEG636 [289] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 + //SEG636 [289] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 @@ -12388,19 +12388,19 @@ mulf_init: { //SEG647 [291] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@5->mulf_init::@4#3] -- register_copy //SEG648 mulf_init::@4 b4: - //SEG649 [292] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG649 [292] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_lo,x ldy #0 sta (sqr2_lo),y - //SEG650 [293] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG650 [293] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_hi,x sta (sqr2_hi),y - //SEG651 [294] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 + //SEG651 [294] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG652 [295] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 + //SEG652 [295] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 txa clc adc dir @@ -12414,7 +12414,7 @@ mulf_init: { sta dir //SEG656 mulf_init::@5 b5: - //SEG657 [298] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 + //SEG657 [298] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 @@ -12427,11 +12427,11 @@ mulf_init: { cmp #print_cls::@1#0] -- register_copy //SEG673 print_cls::@1 b1: - //SEG674 [306] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG674 [306] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG675 [307] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG675 [307] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 diff --git a/src/test/ref/test-multiply-8bit.log b/src/test/ref/test-multiply-8bit.log index bcac4e38e..6867a2fb9 100644 --- a/src/test/ref/test-multiply-8bit.log +++ b/src/test/ref/test-multiply-8bit.log @@ -4,1425 +4,1425 @@ Inlined call call mulf8s_prepare (signed byte) mulf8s::a CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) print_screen#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) print_line_cursor#0 ? (byte*) print_screen#0 - (byte*) print_char_cursor#0 ? (byte*) print_line_cursor#0 + (byte*) print_screen#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) print_line_cursor#0 ← (byte*) print_screen#0 + (byte*) print_char_cursor#0 ← (byte*) print_line_cursor#0 to:@12 print_str: scope:[print_str] from mul8s_compare::@11 mul8s_error mul8s_error::@2 mul8s_error::@4 mul8s_error::@6 mul8s_error::@8 mul8u_compare::@11 mul8u_error mul8u_error::@2 mul8u_error::@4 mul8u_error::@6 mul8u_error::@8 mulf_tables_cmp::@3 mulf_tables_cmp::@5 mulf_tables_cmp::@7 - (byte*) print_char_cursor#152 ? phi( mul8s_compare::@11/(byte*) print_char_cursor#149 mul8s_error/(byte*) print_char_cursor#150 mul8s_error::@2/(byte*) print_char_cursor#55 mul8s_error::@4/(byte*) print_char_cursor#57 mul8s_error::@6/(byte*) print_char_cursor#59 mul8s_error::@8/(byte*) print_char_cursor#61 mul8u_compare::@11/(byte*) print_char_cursor#146 mul8u_error/(byte*) print_char_cursor#147 mul8u_error::@2/(byte*) print_char_cursor#39 mul8u_error::@4/(byte*) print_char_cursor#41 mul8u_error::@6/(byte*) print_char_cursor#43 mul8u_error::@8/(byte*) print_char_cursor#45 mulf_tables_cmp::@3/(byte*) print_char_cursor#143 mulf_tables_cmp::@5/(byte*) print_char_cursor#144 mulf_tables_cmp::@7/(byte*) print_char_cursor#28 ) - (byte*) print_str::str#18 ? phi( mul8s_compare::@11/(byte*) print_str::str#10 mul8s_error/(byte*) print_str::str#11 mul8s_error::@2/(byte*) print_str::str#12 mul8s_error::@4/(byte*) print_str::str#13 mul8s_error::@6/(byte*) print_str::str#14 mul8s_error::@8/(byte*) print_str::str#15 mul8u_compare::@11/(byte*) print_str::str#4 mul8u_error/(byte*) print_str::str#5 mul8u_error::@2/(byte*) print_str::str#6 mul8u_error::@4/(byte*) print_str::str#7 mul8u_error::@6/(byte*) print_str::str#8 mul8u_error::@8/(byte*) print_str::str#9 mulf_tables_cmp::@3/(byte*) print_str::str#1 mulf_tables_cmp::@5/(byte*) print_str::str#3 mulf_tables_cmp::@7/(byte*) print_str::str#2 ) + (byte*) print_char_cursor#152 ← phi( mul8s_compare::@11/(byte*) print_char_cursor#149 mul8s_error/(byte*) print_char_cursor#150 mul8s_error::@2/(byte*) print_char_cursor#55 mul8s_error::@4/(byte*) print_char_cursor#57 mul8s_error::@6/(byte*) print_char_cursor#59 mul8s_error::@8/(byte*) print_char_cursor#61 mul8u_compare::@11/(byte*) print_char_cursor#146 mul8u_error/(byte*) print_char_cursor#147 mul8u_error::@2/(byte*) print_char_cursor#39 mul8u_error::@4/(byte*) print_char_cursor#41 mul8u_error::@6/(byte*) print_char_cursor#43 mul8u_error::@8/(byte*) print_char_cursor#45 mulf_tables_cmp::@3/(byte*) print_char_cursor#143 mulf_tables_cmp::@5/(byte*) print_char_cursor#144 mulf_tables_cmp::@7/(byte*) print_char_cursor#28 ) + (byte*) print_str::str#18 ← phi( mul8s_compare::@11/(byte*) print_str::str#10 mul8s_error/(byte*) print_str::str#11 mul8s_error::@2/(byte*) print_str::str#12 mul8s_error::@4/(byte*) print_str::str#13 mul8s_error::@6/(byte*) print_str::str#14 mul8s_error::@8/(byte*) print_str::str#15 mul8u_compare::@11/(byte*) print_str::str#4 mul8u_error/(byte*) print_str::str#5 mul8u_error::@2/(byte*) print_str::str#6 mul8u_error::@4/(byte*) print_str::str#7 mul8u_error::@6/(byte*) print_str::str#8 mul8u_error::@8/(byte*) print_str::str#9 mulf_tables_cmp::@3/(byte*) print_str::str#1 mulf_tables_cmp::@5/(byte*) print_str::str#3 mulf_tables_cmp::@7/(byte*) print_str::str#2 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - (byte*) print_char_cursor#132 ? phi( print_str/(byte*) print_char_cursor#152 print_str::@2/(byte*) print_char_cursor#1 ) - (byte*) print_str::str#16 ? phi( print_str/(byte*) print_str::str#18 print_str::@2/(byte*) print_str::str#0 ) - (bool~) print_str::$0 ? *((byte*) print_str::str#16) != (byte) '@' + (byte*) print_char_cursor#132 ← phi( print_str/(byte*) print_char_cursor#152 print_str::@2/(byte*) print_char_cursor#1 ) + (byte*) print_str::str#16 ← phi( print_str/(byte*) print_str::str#18 print_str::@2/(byte*) print_str::str#0 ) + (bool~) print_str::$0 ← *((byte*) print_str::str#16) != (byte) '@' if((bool~) print_str::$0) goto print_str::@2 to:print_str::@return print_str::@2: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#67 ? phi( print_str::@1/(byte*) print_char_cursor#132 ) - (byte*) print_str::str#17 ? phi( print_str::@1/(byte*) print_str::str#16 ) - *((byte*) print_char_cursor#67) ? *((byte*) print_str::str#17) - (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#67 - (byte*) print_str::str#0 ? ++ (byte*) print_str::str#17 + (byte*) print_char_cursor#67 ← phi( print_str::@1/(byte*) print_char_cursor#132 ) + (byte*) print_str::str#17 ← phi( print_str::@1/(byte*) print_str::str#16 ) + *((byte*) print_char_cursor#67) ← *((byte*) print_str::str#17) + (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#67 + (byte*) print_str::str#0 ← ++ (byte*) print_str::str#17 to:print_str::@1 print_str::@return: scope:[print_str] from print_str::@1 - (byte*) print_char_cursor#68 ? phi( print_str::@1/(byte*) print_char_cursor#132 ) - (byte*) print_char_cursor#2 ? (byte*) print_char_cursor#68 + (byte*) print_char_cursor#68 ← phi( print_str::@1/(byte*) print_char_cursor#132 ) + (byte*) print_char_cursor#2 ← (byte*) print_char_cursor#68 return to:@return print_ln: scope:[print_ln] from mul8s_compare::@16 mul8s_error::@10 mul8u_compare::@16 mul8u_error::@10 mulf_tables_cmp::@10 - (byte*) print_char_cursor#133 ? phi( mul8s_compare::@16/(byte*) print_char_cursor#52 mul8s_error::@10/(byte*) print_char_cursor#63 mul8u_compare::@16/(byte*) print_char_cursor#36 mul8u_error::@10/(byte*) print_char_cursor#47 mulf_tables_cmp::@10/(byte*) print_char_cursor#32 ) - (byte*) print_line_cursor#45 ? phi( mul8s_compare::@16/(byte*) print_line_cursor#54 mul8s_error::@10/(byte*) print_line_cursor#55 mul8u_compare::@16/(byte*) print_line_cursor#51 mul8u_error::@10/(byte*) print_line_cursor#52 mulf_tables_cmp::@10/(byte*) print_line_cursor#49 ) + (byte*) print_char_cursor#133 ← phi( mul8s_compare::@16/(byte*) print_char_cursor#52 mul8s_error::@10/(byte*) print_char_cursor#63 mul8u_compare::@16/(byte*) print_char_cursor#36 mul8u_error::@10/(byte*) print_char_cursor#47 mulf_tables_cmp::@10/(byte*) print_char_cursor#32 ) + (byte*) print_line_cursor#45 ← phi( mul8s_compare::@16/(byte*) print_line_cursor#54 mul8s_error::@10/(byte*) print_line_cursor#55 mul8u_compare::@16/(byte*) print_line_cursor#51 mul8u_error::@10/(byte*) print_line_cursor#52 mulf_tables_cmp::@10/(byte*) print_line_cursor#49 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - (byte*) print_char_cursor#69 ? phi( print_ln/(byte*) print_char_cursor#133 print_ln::@1/(byte*) print_char_cursor#69 ) - (byte*) print_line_cursor#23 ? phi( print_ln/(byte*) print_line_cursor#45 print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*~) print_ln::$0 ? (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) print_line_cursor#1 ? (byte*~) print_ln::$0 - (bool~) print_ln::$1 ? (byte*) print_line_cursor#1 < (byte*) print_char_cursor#69 + (byte*) print_char_cursor#69 ← phi( print_ln/(byte*) print_char_cursor#133 print_ln::@1/(byte*) print_char_cursor#69 ) + (byte*) print_line_cursor#23 ← phi( print_ln/(byte*) print_line_cursor#45 print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*~) print_ln::$0 ← (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) print_line_cursor#1 ← (byte*~) print_ln::$0 + (bool~) print_ln::$1 ← (byte*) print_line_cursor#1 < (byte*) print_char_cursor#69 if((bool~) print_ln::$1) goto print_ln::@1 to:print_ln::@2 print_ln::@2: scope:[print_ln] from print_ln::@1 - (byte*) print_line_cursor#24 ? phi( print_ln::@1/(byte*) print_line_cursor#1 ) - (byte*) print_char_cursor#3 ? (byte*) print_line_cursor#24 + (byte*) print_line_cursor#24 ← phi( print_ln::@1/(byte*) print_line_cursor#1 ) + (byte*) print_char_cursor#3 ← (byte*) print_line_cursor#24 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@2 - (byte*) print_char_cursor#70 ? phi( print_ln::@2/(byte*) print_char_cursor#3 ) - (byte*) print_line_cursor#25 ? phi( print_ln::@2/(byte*) print_line_cursor#24 ) - (byte*) print_line_cursor#2 ? (byte*) print_line_cursor#25 - (byte*) print_char_cursor#4 ? (byte*) print_char_cursor#70 + (byte*) print_char_cursor#70 ← phi( print_ln::@2/(byte*) print_char_cursor#3 ) + (byte*) print_line_cursor#25 ← phi( print_ln::@2/(byte*) print_line_cursor#24 ) + (byte*) print_line_cursor#2 ← (byte*) print_line_cursor#25 + (byte*) print_char_cursor#4 ← (byte*) print_char_cursor#70 return to:@return print_sword: scope:[print_sword] from mul8s_error::@5 mul8s_error::@7 mul8s_error::@9 - (byte*) print_char_cursor#153 ? phi( mul8s_error::@5/(byte*) print_char_cursor#58 mul8s_error::@7/(byte*) print_char_cursor#60 mul8s_error::@9/(byte*) print_char_cursor#62 ) - (signed word) print_sword::w#4 ? phi( mul8s_error::@5/(signed word) print_sword::w#1 mul8s_error::@7/(signed word) print_sword::w#2 mul8s_error::@9/(signed word) print_sword::w#3 ) - (bool~) print_sword::$0 ? (signed word) print_sword::w#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) print_sword::$1 ? ! (bool~) print_sword::$0 + (byte*) print_char_cursor#153 ← phi( mul8s_error::@5/(byte*) print_char_cursor#58 mul8s_error::@7/(byte*) print_char_cursor#60 mul8s_error::@9/(byte*) print_char_cursor#62 ) + (signed word) print_sword::w#4 ← phi( mul8s_error::@5/(signed word) print_sword::w#1 mul8s_error::@7/(signed word) print_sword::w#2 mul8s_error::@9/(signed word) print_sword::w#3 ) + (bool~) print_sword::$0 ← (signed word) print_sword::w#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) print_sword::$1 ← ! (bool~) print_sword::$0 if((bool~) print_sword::$1) goto print_sword::@1 to:print_sword::@2 print_sword::@1: scope:[print_sword] from print_sword print_sword::@4 - (byte*) print_char_cursor#134 ? phi( print_sword/(byte*) print_char_cursor#153 print_sword::@4/(byte*) print_char_cursor#6 ) - (signed word) print_sword::w#5 ? phi( print_sword/(signed word) print_sword::w#4 print_sword::@4/(signed word) print_sword::w#0 ) - (word~) print_sword::$2 ? ((word)) (signed word) print_sword::w#5 - (word) print_word::w#0 ? (word~) print_sword::$2 + (byte*) print_char_cursor#134 ← phi( print_sword/(byte*) print_char_cursor#153 print_sword::@4/(byte*) print_char_cursor#6 ) + (signed word) print_sword::w#5 ← phi( print_sword/(signed word) print_sword::w#4 print_sword::@4/(signed word) print_sword::w#0 ) + (word~) print_sword::$2 ← ((word)) (signed word) print_sword::w#5 + (word) print_word::w#0 ← (word~) print_sword::$2 call print_word to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@1 - (byte*) print_char_cursor#71 ? phi( print_sword::@1/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#5 ? (byte*) print_char_cursor#71 + (byte*) print_char_cursor#71 ← phi( print_sword::@1/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#5 ← (byte*) print_char_cursor#71 to:print_sword::@return print_sword::@2: scope:[print_sword] from print_sword - (signed word) print_sword::w#7 ? phi( print_sword/(signed word) print_sword::w#4 ) - (byte*) print_char_cursor#135 ? phi( print_sword/(byte*) print_char_cursor#153 ) - (byte) print_char::ch#0 ? (byte) '-' + (signed word) print_sword::w#7 ← phi( print_sword/(signed word) print_sword::w#4 ) + (byte*) print_char_cursor#135 ← phi( print_sword/(byte*) print_char_cursor#153 ) + (byte) print_char::ch#0 ← (byte) '-' call print_char to:print_sword::@4 print_sword::@4: scope:[print_sword] from print_sword::@2 - (signed word) print_sword::w#6 ? phi( print_sword::@2/(signed word) print_sword::w#7 ) - (byte*) print_char_cursor#72 ? phi( print_sword::@2/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#6 ? (byte*) print_char_cursor#72 - (signed word~) print_sword::$5 ? - (signed word) print_sword::w#6 - (signed word) print_sword::w#0 ? (signed word~) print_sword::$5 + (signed word) print_sword::w#6 ← phi( print_sword::@2/(signed word) print_sword::w#7 ) + (byte*) print_char_cursor#72 ← phi( print_sword::@2/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#6 ← (byte*) print_char_cursor#72 + (signed word~) print_sword::$5 ← - (signed word) print_sword::w#6 + (signed word) print_sword::w#0 ← (signed word~) print_sword::$5 to:print_sword::@1 print_sword::@return: scope:[print_sword] from print_sword::@3 - (byte*) print_char_cursor#73 ? phi( print_sword::@3/(byte*) print_char_cursor#5 ) - (byte*) print_char_cursor#7 ? (byte*) print_char_cursor#73 + (byte*) print_char_cursor#73 ← phi( print_sword::@3/(byte*) print_char_cursor#5 ) + (byte*) print_char_cursor#7 ← (byte*) print_char_cursor#73 return to:@return print_sbyte: scope:[print_sbyte] from mul8s_error::@1 mul8s_error::@3 - (byte*) print_char_cursor#154 ? phi( mul8s_error::@1/(byte*) print_char_cursor#54 mul8s_error::@3/(byte*) print_char_cursor#56 ) - (signed byte) print_sbyte::b#3 ? phi( mul8s_error::@1/(signed byte) print_sbyte::b#1 mul8s_error::@3/(signed byte) print_sbyte::b#2 ) - (bool~) print_sbyte::$0 ? (signed byte) print_sbyte::b#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_char_cursor#154 ← phi( mul8s_error::@1/(byte*) print_char_cursor#54 mul8s_error::@3/(byte*) print_char_cursor#56 ) + (signed byte) print_sbyte::b#3 ← phi( mul8s_error::@1/(signed byte) print_sbyte::b#1 mul8s_error::@3/(signed byte) print_sbyte::b#2 ) + (bool~) print_sbyte::$0 ← (signed byte) print_sbyte::b#3 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) print_sbyte::$0) goto print_sbyte::@1 to:print_sbyte::@3 print_sbyte::@1: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#6 ? phi( print_sbyte/(signed byte) print_sbyte::b#3 ) - (byte*) print_char_cursor#136 ? phi( print_sbyte/(byte*) print_char_cursor#154 ) - (byte) print_char::ch#1 ? (byte) '-' + (signed byte) print_sbyte::b#6 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 ) + (byte*) print_char_cursor#136 ← phi( print_sbyte/(byte*) print_char_cursor#154 ) + (byte) print_char::ch#1 ← (byte) '-' call print_char to:print_sbyte::@5 print_sbyte::@5: scope:[print_sbyte] from print_sbyte::@1 - (signed byte) print_sbyte::b#4 ? phi( print_sbyte::@1/(signed byte) print_sbyte::b#6 ) - (byte*) print_char_cursor#74 ? phi( print_sbyte::@1/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#8 ? (byte*) print_char_cursor#74 - (signed byte~) print_sbyte::$5 ? - (signed byte) print_sbyte::b#4 - (signed byte) print_sbyte::b#0 ? (signed byte~) print_sbyte::$5 + (signed byte) print_sbyte::b#4 ← phi( print_sbyte::@1/(signed byte) print_sbyte::b#6 ) + (byte*) print_char_cursor#74 ← phi( print_sbyte::@1/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#8 ← (byte*) print_char_cursor#74 + (signed byte~) print_sbyte::$5 ← - (signed byte) print_sbyte::b#4 + (signed byte) print_sbyte::b#0 ← (signed byte~) print_sbyte::$5 to:print_sbyte::@2 print_sbyte::@3: scope:[print_sbyte] from print_sbyte - (signed byte) print_sbyte::b#8 ? phi( print_sbyte/(signed byte) print_sbyte::b#3 ) - (byte*) print_char_cursor#137 ? phi( print_sbyte/(byte*) print_char_cursor#154 ) - (byte) print_char::ch#2 ? (byte) ' ' + (signed byte) print_sbyte::b#8 ← phi( print_sbyte/(signed byte) print_sbyte::b#3 ) + (byte*) print_char_cursor#137 ← phi( print_sbyte/(byte*) print_char_cursor#154 ) + (byte) print_char::ch#2 ← (byte) ' ' call print_char to:print_sbyte::@6 print_sbyte::@6: scope:[print_sbyte] from print_sbyte::@3 - (signed byte) print_sbyte::b#7 ? phi( print_sbyte::@3/(signed byte) print_sbyte::b#8 ) - (byte*) print_char_cursor#75 ? phi( print_sbyte::@3/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#9 ? (byte*) print_char_cursor#75 + (signed byte) print_sbyte::b#7 ← phi( print_sbyte::@3/(signed byte) print_sbyte::b#8 ) + (byte*) print_char_cursor#75 ← phi( print_sbyte::@3/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#9 ← (byte*) print_char_cursor#75 to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@5 print_sbyte::@6 - (byte*) print_char_cursor#138 ? phi( print_sbyte::@5/(byte*) print_char_cursor#8 print_sbyte::@6/(byte*) print_char_cursor#9 ) - (signed byte) print_sbyte::b#5 ? phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#7 ) - (byte~) print_sbyte::$1 ? ((byte)) (signed byte) print_sbyte::b#5 - (byte) print_byte::b#0 ? (byte~) print_sbyte::$1 + (byte*) print_char_cursor#138 ← phi( print_sbyte::@5/(byte*) print_char_cursor#8 print_sbyte::@6/(byte*) print_char_cursor#9 ) + (signed byte) print_sbyte::b#5 ← phi( print_sbyte::@5/(signed byte) print_sbyte::b#0 print_sbyte::@6/(signed byte) print_sbyte::b#7 ) + (byte~) print_sbyte::$1 ← ((byte)) (signed byte) print_sbyte::b#5 + (byte) print_byte::b#0 ← (byte~) print_sbyte::$1 call print_byte to:print_sbyte::@7 print_sbyte::@7: scope:[print_sbyte] from print_sbyte::@2 - (byte*) print_char_cursor#76 ? phi( print_sbyte::@2/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#10 ? (byte*) print_char_cursor#76 + (byte*) print_char_cursor#76 ← phi( print_sbyte::@2/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#10 ← (byte*) print_char_cursor#76 to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@7 - (byte*) print_char_cursor#77 ? phi( print_sbyte::@7/(byte*) print_char_cursor#10 ) - (byte*) print_char_cursor#11 ? (byte*) print_char_cursor#77 + (byte*) print_char_cursor#77 ← phi( print_sbyte::@7/(byte*) print_char_cursor#10 ) + (byte*) print_char_cursor#11 ← (byte*) print_char_cursor#77 return to:@return print_word: scope:[print_word] from mul8u_error::@5 mul8u_error::@7 mul8u_error::@9 mulf_tables_cmp::@6 mulf_tables_cmp::@8 print_sword::@1 - (byte*) print_char_cursor#139 ? phi( mul8u_error::@5/(byte*) print_char_cursor#42 mul8u_error::@7/(byte*) print_char_cursor#44 mul8u_error::@9/(byte*) print_char_cursor#46 mulf_tables_cmp::@6/(byte*) print_char_cursor#27 mulf_tables_cmp::@8/(byte*) print_char_cursor#29 print_sword::@1/(byte*) print_char_cursor#134 ) - (word) print_word::w#6 ? phi( mul8u_error::@5/(word) print_word::w#3 mul8u_error::@7/(word) print_word::w#4 mul8u_error::@9/(word) print_word::w#5 mulf_tables_cmp::@6/(word) print_word::w#1 mulf_tables_cmp::@8/(word) print_word::w#2 print_sword::@1/(word) print_word::w#0 ) - (byte~) print_word::$0 ? > (word) print_word::w#6 - (byte) print_byte::b#1 ? (byte~) print_word::$0 + (byte*) print_char_cursor#139 ← phi( mul8u_error::@5/(byte*) print_char_cursor#42 mul8u_error::@7/(byte*) print_char_cursor#44 mul8u_error::@9/(byte*) print_char_cursor#46 mulf_tables_cmp::@6/(byte*) print_char_cursor#27 mulf_tables_cmp::@8/(byte*) print_char_cursor#29 print_sword::@1/(byte*) print_char_cursor#134 ) + (word) print_word::w#6 ← phi( mul8u_error::@5/(word) print_word::w#3 mul8u_error::@7/(word) print_word::w#4 mul8u_error::@9/(word) print_word::w#5 mulf_tables_cmp::@6/(word) print_word::w#1 mulf_tables_cmp::@8/(word) print_word::w#2 print_sword::@1/(word) print_word::w#0 ) + (byte~) print_word::$0 ← > (word) print_word::w#6 + (byte) print_byte::b#1 ← (byte~) print_word::$0 call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - (word) print_word::w#7 ? phi( print_word/(word) print_word::w#6 ) - (byte*) print_char_cursor#78 ? phi( print_word/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#12 ? (byte*) print_char_cursor#78 - (byte~) print_word::$2 ? < (word) print_word::w#7 - (byte) print_byte::b#2 ? (byte~) print_word::$2 + (word) print_word::w#7 ← phi( print_word/(word) print_word::w#6 ) + (byte*) print_char_cursor#78 ← phi( print_word/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#12 ← (byte*) print_char_cursor#78 + (byte~) print_word::$2 ← < (word) print_word::w#7 + (byte) print_byte::b#2 ← (byte~) print_word::$2 call print_byte to:print_word::@2 print_word::@2: scope:[print_word] from print_word::@1 - (byte*) print_char_cursor#79 ? phi( print_word::@1/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#13 ? (byte*) print_char_cursor#79 + (byte*) print_char_cursor#79 ← phi( print_word::@1/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#13 ← (byte*) print_char_cursor#79 to:print_word::@return print_word::@return: scope:[print_word] from print_word::@2 - (byte*) print_char_cursor#80 ? phi( print_word::@2/(byte*) print_char_cursor#13 ) - (byte*) print_char_cursor#14 ? (byte*) print_char_cursor#80 + (byte*) print_char_cursor#80 ← phi( print_word::@2/(byte*) print_char_cursor#13 ) + (byte*) print_char_cursor#14 ← (byte*) print_char_cursor#80 return to:@return @12: scope:[] from @begin - (byte*) print_screen#9 ? phi( @begin/(byte*) print_screen#0 ) - (byte*) print_char_cursor#176 ? phi( @begin/(byte*) print_char_cursor#0 ) - (byte*) print_line_cursor#89 ? phi( @begin/(byte*) print_line_cursor#0 ) - (byte[]) print_hextab#0 ? (const string) $0 + (byte*) print_screen#9 ← phi( @begin/(byte*) print_screen#0 ) + (byte*) print_char_cursor#176 ← phi( @begin/(byte*) print_char_cursor#0 ) + (byte*) print_line_cursor#89 ← phi( @begin/(byte*) print_line_cursor#0 ) + (byte[]) print_hextab#0 ← (const string) $0 to:@24 print_byte: scope:[print_byte] from mul8u_error::@1 mul8u_error::@3 print_sbyte::@2 print_word print_word::@1 - (byte*) print_char_cursor#140 ? phi( mul8u_error::@1/(byte*) print_char_cursor#38 mul8u_error::@3/(byte*) print_char_cursor#40 print_sbyte::@2/(byte*) print_char_cursor#138 print_word/(byte*) print_char_cursor#139 print_word::@1/(byte*) print_char_cursor#12 ) - (byte) print_byte::b#5 ? phi( mul8u_error::@1/(byte) print_byte::b#3 mul8u_error::@3/(byte) print_byte::b#4 print_sbyte::@2/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) - (byte~) print_byte::$0 ? (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte) print_char::ch#3 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$0) + (byte*) print_char_cursor#140 ← phi( mul8u_error::@1/(byte*) print_char_cursor#38 mul8u_error::@3/(byte*) print_char_cursor#40 print_sbyte::@2/(byte*) print_char_cursor#138 print_word/(byte*) print_char_cursor#139 print_word::@1/(byte*) print_char_cursor#12 ) + (byte) print_byte::b#5 ← phi( mul8u_error::@1/(byte) print_byte::b#3 mul8u_error::@3/(byte) print_byte::b#4 print_sbyte::@2/(byte) print_byte::b#0 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) + (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte) print_char::ch#3 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$0) call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - (byte) print_byte::b#6 ? phi( print_byte/(byte) print_byte::b#5 ) - (byte*) print_char_cursor#81 ? phi( print_byte/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#15 ? (byte*) print_char_cursor#81 - (byte~) print_byte::$2 ? (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) $f - (byte) print_char::ch#4 ? *((byte[]) print_hextab#0 + (byte~) print_byte::$2) + (byte) print_byte::b#6 ← phi( print_byte/(byte) print_byte::b#5 ) + (byte*) print_char_cursor#81 ← phi( print_byte/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#15 ← (byte*) print_char_cursor#81 + (byte~) print_byte::$2 ← (byte) print_byte::b#6 & (byte/signed byte/word/signed word/dword/signed dword) $f + (byte) print_char::ch#4 ← *((byte[]) print_hextab#0 + (byte~) print_byte::$2) call print_char to:print_byte::@2 print_byte::@2: scope:[print_byte] from print_byte::@1 - (byte*) print_char_cursor#82 ? phi( print_byte::@1/(byte*) print_char_cursor#19 ) - (byte*) print_char_cursor#16 ? (byte*) print_char_cursor#82 + (byte*) print_char_cursor#82 ← phi( print_byte::@1/(byte*) print_char_cursor#19 ) + (byte*) print_char_cursor#16 ← (byte*) print_char_cursor#82 to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@2 - (byte*) print_char_cursor#83 ? phi( print_byte::@2/(byte*) print_char_cursor#16 ) - (byte*) print_char_cursor#17 ? (byte*) print_char_cursor#83 + (byte*) print_char_cursor#83 ← phi( print_byte::@2/(byte*) print_char_cursor#16 ) + (byte*) print_char_cursor#17 ← (byte*) print_char_cursor#83 return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 print_sword::@2 - (byte*) print_char_cursor#84 ? phi( print_byte/(byte*) print_char_cursor#140 print_byte::@1/(byte*) print_char_cursor#15 print_sbyte::@1/(byte*) print_char_cursor#136 print_sbyte::@3/(byte*) print_char_cursor#137 print_sword::@2/(byte*) print_char_cursor#135 ) - (byte) print_char::ch#5 ? phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) print_char::ch#1 print_sbyte::@3/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) - *((byte*) print_char_cursor#84) ? (byte) print_char::ch#5 - (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#84 + (byte*) print_char_cursor#84 ← phi( print_byte/(byte*) print_char_cursor#140 print_byte::@1/(byte*) print_char_cursor#15 print_sbyte::@1/(byte*) print_char_cursor#136 print_sbyte::@3/(byte*) print_char_cursor#137 print_sword::@2/(byte*) print_char_cursor#135 ) + (byte) print_char::ch#5 ← phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) print_char::ch#1 print_sbyte::@3/(byte) print_char::ch#2 print_sword::@2/(byte) print_char::ch#0 ) + *((byte*) print_char_cursor#84) ← (byte) print_char::ch#5 + (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#84 to:print_char::@return print_char::@return: scope:[print_char] from print_char - (byte*) print_char_cursor#85 ? phi( print_char/(byte*) print_char_cursor#18 ) - (byte*) print_char_cursor#19 ? (byte*) print_char_cursor#85 + (byte*) print_char_cursor#85 ← phi( print_char/(byte*) print_char_cursor#18 ) + (byte*) print_char_cursor#19 ← (byte*) print_char_cursor#85 return to:@return print_cls: scope:[print_cls] from main - (byte*) print_screen#1 ? phi( main/(byte*) print_screen#4 ) - (byte*) print_cls::sc#0 ? (byte*) print_screen#1 + (byte*) print_screen#1 ← phi( main/(byte*) print_screen#4 ) + (byte*) print_cls::sc#0 ← (byte*) print_screen#1 to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - (byte*) print_screen#2 ? phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_cls::sc#2 ? phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) - *((byte*) print_cls::sc#2) ? (byte) ' ' - (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 - (byte*~) print_cls::$0 ? (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 - (bool~) print_cls::$1 ? (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 + (byte*) print_screen#2 ← phi( print_cls/(byte*) print_screen#1 print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_cls::sc#2 ← phi( print_cls/(byte*) print_cls::sc#0 print_cls::@1/(byte*) print_cls::sc#1 ) + *((byte*) print_cls::sc#2) ← (byte) ' ' + (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 + (byte*~) print_cls::$0 ← (byte*) print_screen#2 + (word/signed word/dword/signed dword) $3e8 + (bool~) print_cls::$1 ← (byte*) print_cls::sc#1 != (byte*~) print_cls::$0 if((bool~) print_cls::$1) goto print_cls::@1 to:print_cls::@2 print_cls::@2: scope:[print_cls] from print_cls::@1 - (byte*) print_screen#3 ? phi( print_cls::@1/(byte*) print_screen#2 ) - (byte*) print_line_cursor#3 ? (byte*) print_screen#3 - (byte*) print_char_cursor#20 ? (byte*) print_line_cursor#3 + (byte*) print_screen#3 ← phi( print_cls::@1/(byte*) print_screen#2 ) + (byte*) print_line_cursor#3 ← (byte*) print_screen#3 + (byte*) print_char_cursor#20 ← (byte*) print_line_cursor#3 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@2 - (byte*) print_char_cursor#86 ? phi( print_cls::@2/(byte*) print_char_cursor#20 ) - (byte*) print_line_cursor#26 ? phi( print_cls::@2/(byte*) print_line_cursor#3 ) - (byte*) print_line_cursor#4 ? (byte*) print_line_cursor#26 - (byte*) print_char_cursor#21 ? (byte*) print_char_cursor#86 + (byte*) print_char_cursor#86 ← phi( print_cls::@2/(byte*) print_char_cursor#20 ) + (byte*) print_line_cursor#26 ← phi( print_cls::@2/(byte*) print_line_cursor#3 ) + (byte*) print_line_cursor#4 ← (byte*) print_line_cursor#26 + (byte*) print_char_cursor#21 ← (byte*) print_char_cursor#86 return to:@return mul8u: scope:[mul8u] from mul8s mul8u_compare::@13 - (byte) mul8u::a#6 ? phi( mul8s/(byte) mul8u::a#1 mul8u_compare::@13/(byte) mul8u::a#2 ) - (byte) mul8u::b#2 ? phi( mul8s/(byte) mul8u::b#0 mul8u_compare::@13/(byte) mul8u::b#1 ) - (word) mul8u::res#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 + (byte) mul8u::a#6 ← phi( mul8s/(byte) mul8u::a#1 mul8u_compare::@13/(byte) mul8u::a#2 ) + (byte) mul8u::b#2 ← phi( mul8s/(byte) mul8u::b#0 mul8u_compare::@13/(byte) mul8u::b#1 ) + (word) mul8u::res#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@4 - (word) mul8u::mb#5 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) - (word) mul8u::res#4 ? phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) - (byte) mul8u::a#3 ? phi( mul8u/(byte) mul8u::a#6 mul8u::@4/(byte) mul8u::a#0 ) - (bool~) mul8u::$0 ? (byte) mul8u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (word) mul8u::mb#5 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@4/(word) mul8u::mb#1 ) + (word) mul8u::res#4 ← phi( mul8u/(word) mul8u::res#0 mul8u::@4/(word) mul8u::res#6 ) + (byte) mul8u::a#3 ← phi( mul8u/(byte) mul8u::a#6 mul8u::@4/(byte) mul8u::a#0 ) + (bool~) mul8u::$0 ← (byte) mul8u::a#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) mul8u::$0) goto mul8u::@2 to:mul8u::@3 mul8u::@2: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#5 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::mb#4 ? phi( mul8u::@1/(word) mul8u::mb#5 ) - (byte) mul8u::a#4 ? phi( mul8u::@1/(byte) mul8u::a#3 ) - (byte~) mul8u::$1 ? (byte) mul8u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8u::$3 ? ! (bool~) mul8u::$2 + (word) mul8u::res#5 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::mb#4 ← phi( mul8u::@1/(word) mul8u::mb#5 ) + (byte) mul8u::a#4 ← phi( mul8u::@1/(byte) mul8u::a#3 ) + (byte~) mul8u::$1 ← (byte) mul8u::a#4 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8u::$3 ← ! (bool~) mul8u::$2 if((bool~) mul8u::$3) goto mul8u::@4 to:mul8u::@7 mul8u::@3: scope:[mul8u] from mul8u::@1 - (word) mul8u::res#2 ? phi( mul8u::@1/(word) mul8u::res#4 ) - (word) mul8u::return#0 ? (word) mul8u::res#2 + (word) mul8u::res#2 ← phi( mul8u::@1/(word) mul8u::res#4 ) + (word) mul8u::return#0 ← (word) mul8u::res#2 to:mul8u::@return mul8u::@4: scope:[mul8u] from mul8u::@2 mul8u::@7 - (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) - (word) mul8u::mb#2 ? phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) - (byte) mul8u::a#5 ? phi( mul8u::@2/(byte) mul8u::a#4 mul8u::@7/(byte) mul8u::a#7 ) - (byte~) mul8u::$5 ? (byte) mul8u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte) mul8u::a#0 ? (byte~) mul8u::$5 - (word~) mul8u::$6 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 - (word) mul8u::mb#1 ? (word~) mul8u::$6 + (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#5 mul8u::@7/(word) mul8u::res#1 ) + (word) mul8u::mb#2 ← phi( mul8u::@2/(word) mul8u::mb#4 mul8u::@7/(word) mul8u::mb#3 ) + (byte) mul8u::a#5 ← phi( mul8u::@2/(byte) mul8u::a#4 mul8u::@7/(byte) mul8u::a#7 ) + (byte~) mul8u::$5 ← (byte) mul8u::a#5 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte) mul8u::a#0 ← (byte~) mul8u::$5 + (word~) mul8u::$6 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + (word) mul8u::mb#1 ← (word~) mul8u::$6 to:mul8u::@1 mul8u::@7: scope:[mul8u] from mul8u::@2 - (byte) mul8u::a#7 ? phi( mul8u::@2/(byte) mul8u::a#4 ) - (word) mul8u::mb#3 ? phi( mul8u::@2/(word) mul8u::mb#4 ) - (word) mul8u::res#3 ? phi( mul8u::@2/(word) mul8u::res#5 ) - (word~) mul8u::$4 ? (word) mul8u::res#3 + (word) mul8u::mb#3 - (word) mul8u::res#1 ? (word~) mul8u::$4 + (byte) mul8u::a#7 ← phi( mul8u::@2/(byte) mul8u::a#4 ) + (word) mul8u::mb#3 ← phi( mul8u::@2/(word) mul8u::mb#4 ) + (word) mul8u::res#3 ← phi( mul8u::@2/(word) mul8u::res#5 ) + (word~) mul8u::$4 ← (word) mul8u::res#3 + (word) mul8u::mb#3 + (word) mul8u::res#1 ← (word~) mul8u::$4 to:mul8u::@4 mul8u::@return: scope:[mul8u] from mul8u::@3 - (word) mul8u::return#4 ? phi( mul8u::@3/(word) mul8u::return#0 ) - (word) mul8u::return#1 ? (word) mul8u::return#4 + (word) mul8u::return#4 ← phi( mul8u::@3/(word) mul8u::return#0 ) + (word) mul8u::return#1 ← (word) mul8u::return#4 return to:@return mul8s: scope:[mul8s] from mul8s_compare::@13 - (signed byte) mul8s::b#1 ? phi( mul8s_compare::@13/(signed byte) mul8s::b#0 ) - (signed byte) mul8s::a#1 ? phi( mul8s_compare::@13/(signed byte) mul8s::a#0 ) - (byte~) mul8s::$0 ? ((byte)) (signed byte) mul8s::a#1 - (byte~) mul8s::$1 ? ((byte)) (signed byte) mul8s::b#1 - (byte) mul8u::a#1 ? (byte~) mul8s::$0 - (byte) mul8u::b#0 ? (byte~) mul8s::$1 + (signed byte) mul8s::b#1 ← phi( mul8s_compare::@13/(signed byte) mul8s::b#0 ) + (signed byte) mul8s::a#1 ← phi( mul8s_compare::@13/(signed byte) mul8s::a#0 ) + (byte~) mul8s::$0 ← ((byte)) (signed byte) mul8s::a#1 + (byte~) mul8s::$1 ← ((byte)) (signed byte) mul8s::b#1 + (byte) mul8u::a#1 ← (byte~) mul8s::$0 + (byte) mul8u::b#0 ← (byte~) mul8s::$1 call mul8u - (word) mul8u::return#2 ? (word) mul8u::return#1 + (word) mul8u::return#2 ← (word) mul8u::return#1 to:mul8s::@6 mul8s::@6: scope:[mul8s] from mul8s - (signed byte) mul8s::b#4 ? phi( mul8s/(signed byte) mul8s::b#1 ) - (signed byte) mul8s::a#2 ? phi( mul8s/(signed byte) mul8s::a#1 ) - (word) mul8u::return#5 ? phi( mul8s/(word) mul8u::return#2 ) - (word~) mul8s::$2 ? (word) mul8u::return#5 - (word) mul8s::m#0 ? (word~) mul8s::$2 - (bool~) mul8s::$3 ? (signed byte) mul8s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8s::$4 ? ! (bool~) mul8s::$3 + (signed byte) mul8s::b#4 ← phi( mul8s/(signed byte) mul8s::b#1 ) + (signed byte) mul8s::a#2 ← phi( mul8s/(signed byte) mul8s::a#1 ) + (word) mul8u::return#5 ← phi( mul8s/(word) mul8u::return#2 ) + (word~) mul8s::$2 ← (word) mul8u::return#5 + (word) mul8s::m#0 ← (word~) mul8s::$2 + (bool~) mul8s::$3 ← (signed byte) mul8s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8s::$4 ← ! (bool~) mul8s::$3 if((bool~) mul8s::$4) goto mul8s::@1 to:mul8s::@3 mul8s::@1: scope:[mul8s] from mul8s::@3 mul8s::@6 - (signed byte) mul8s::a#4 ? phi( mul8s::@3/(signed byte) mul8s::a#5 mul8s::@6/(signed byte) mul8s::a#2 ) - (word) mul8s::m#6 ? phi( mul8s::@3/(word) mul8s::m#1 mul8s::@6/(word) mul8s::m#0 ) - (signed byte) mul8s::b#2 ? phi( mul8s::@3/(signed byte) mul8s::b#3 mul8s::@6/(signed byte) mul8s::b#4 ) - (bool~) mul8s::$5 ? (signed byte) mul8s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8s::$6 ? ! (bool~) mul8s::$5 + (signed byte) mul8s::a#4 ← phi( mul8s::@3/(signed byte) mul8s::a#5 mul8s::@6/(signed byte) mul8s::a#2 ) + (word) mul8s::m#6 ← phi( mul8s::@3/(word) mul8s::m#1 mul8s::@6/(word) mul8s::m#0 ) + (signed byte) mul8s::b#2 ← phi( mul8s::@3/(signed byte) mul8s::b#3 mul8s::@6/(signed byte) mul8s::b#4 ) + (bool~) mul8s::$5 ← (signed byte) mul8s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8s::$6 ← ! (bool~) mul8s::$5 if((bool~) mul8s::$6) goto mul8s::@2 to:mul8s::@4 mul8s::@3: scope:[mul8s] from mul8s::@6 - (signed byte) mul8s::a#5 ? phi( mul8s::@6/(signed byte) mul8s::a#2 ) - (signed byte) mul8s::b#3 ? phi( mul8s::@6/(signed byte) mul8s::b#4 ) - (word) mul8s::m#3 ? phi( mul8s::@6/(word) mul8s::m#0 ) - (byte~) mul8s::$9 ? > (word) mul8s::m#3 - (byte~) mul8s::$10 ? ((byte)) (signed byte) mul8s::b#3 - (byte~) mul8s::$11 ? (byte~) mul8s::$9 - (byte~) mul8s::$10 - (byte~) mul8s::$16 ? (byte~) mul8s::$11 - (word) mul8s::m#1 ? (word) mul8s::m#3 hi= (byte~) mul8s::$16 + (signed byte) mul8s::a#5 ← phi( mul8s::@6/(signed byte) mul8s::a#2 ) + (signed byte) mul8s::b#3 ← phi( mul8s::@6/(signed byte) mul8s::b#4 ) + (word) mul8s::m#3 ← phi( mul8s::@6/(word) mul8s::m#0 ) + (byte~) mul8s::$9 ← > (word) mul8s::m#3 + (byte~) mul8s::$10 ← ((byte)) (signed byte) mul8s::b#3 + (byte~) mul8s::$11 ← (byte~) mul8s::$9 - (byte~) mul8s::$10 + (byte~) mul8s::$16 ← (byte~) mul8s::$11 + (word) mul8s::m#1 ← (word) mul8s::m#3 hi= (byte~) mul8s::$16 to:mul8s::@1 mul8s::@2: scope:[mul8s] from mul8s::@1 mul8s::@4 - (word) mul8s::m#4 ? phi( mul8s::@1/(word) mul8s::m#6 mul8s::@4/(word) mul8s::m#2 ) - (signed word~) mul8s::$7 ? ((signed word)) (word) mul8s::m#4 - (signed word) mul8s::return#0 ? (signed word~) mul8s::$7 + (word) mul8s::m#4 ← phi( mul8s::@1/(word) mul8s::m#6 mul8s::@4/(word) mul8s::m#2 ) + (signed word~) mul8s::$7 ← ((signed word)) (word) mul8s::m#4 + (signed word) mul8s::return#0 ← (signed word~) mul8s::$7 to:mul8s::@return mul8s::@4: scope:[mul8s] from mul8s::@1 - (signed byte) mul8s::a#3 ? phi( mul8s::@1/(signed byte) mul8s::a#4 ) - (word) mul8s::m#5 ? phi( mul8s::@1/(word) mul8s::m#6 ) - (byte~) mul8s::$13 ? > (word) mul8s::m#5 - (byte~) mul8s::$14 ? ((byte)) (signed byte) mul8s::a#3 - (byte~) mul8s::$15 ? (byte~) mul8s::$13 - (byte~) mul8s::$14 - (byte~) mul8s::$17 ? (byte~) mul8s::$15 - (word) mul8s::m#2 ? (word) mul8s::m#5 hi= (byte~) mul8s::$17 + (signed byte) mul8s::a#3 ← phi( mul8s::@1/(signed byte) mul8s::a#4 ) + (word) mul8s::m#5 ← phi( mul8s::@1/(word) mul8s::m#6 ) + (byte~) mul8s::$13 ← > (word) mul8s::m#5 + (byte~) mul8s::$14 ← ((byte)) (signed byte) mul8s::a#3 + (byte~) mul8s::$15 ← (byte~) mul8s::$13 - (byte~) mul8s::$14 + (byte~) mul8s::$17 ← (byte~) mul8s::$15 + (word) mul8s::m#2 ← (word) mul8s::m#5 hi= (byte~) mul8s::$17 to:mul8s::@2 mul8s::@return: scope:[mul8s] from mul8s::@2 - (signed word) mul8s::return#3 ? phi( mul8s::@2/(signed word) mul8s::return#0 ) - (signed word) mul8s::return#1 ? (signed word) mul8s::return#3 + (signed word) mul8s::return#3 ← phi( mul8s::@2/(signed word) mul8s::return#0 ) + (signed word) mul8s::return#1 ← (signed word) mul8s::return#3 return to:@return @24: scope:[] from @12 - (byte*) print_screen#8 ? phi( @12/(byte*) print_screen#9 ) - (byte*) print_char_cursor#171 ? phi( @12/(byte*) print_char_cursor#176 ) - (byte*) print_line_cursor#78 ? phi( @12/(byte*) print_line_cursor#89 ) - (byte[$200]) mulf_sqr1_lo#0 ? { fill( $200, 0) } - (byte[$200]) mulf_sqr1_hi#0 ? { fill( $200, 0) } - (byte[$200]) mulf_sqr2_lo#0 ? { fill( $200, 0) } - (byte[$200]) mulf_sqr2_hi#0 ? { fill( $200, 0) } + (byte*) print_screen#8 ← phi( @12/(byte*) print_screen#9 ) + (byte*) print_char_cursor#171 ← phi( @12/(byte*) print_char_cursor#176 ) + (byte*) print_line_cursor#78 ← phi( @12/(byte*) print_line_cursor#89 ) + (byte[$200]) mulf_sqr1_lo#0 ← { fill( $200, 0) } + (byte[$200]) mulf_sqr1_hi#0 ← { fill( $200, 0) } + (byte[$200]) mulf_sqr2_lo#0 ← { fill( $200, 0) } + (byte[$200]) mulf_sqr2_hi#0 ← { fill( $200, 0) } to:@33 mulf_init: scope:[mulf_init] from main::@1 - (word) mulf_init::sqr#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mulf_init::x_2#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) mulf_init::c#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte*~) mulf_init::$0 ? (byte[$200]) mulf_sqr1_hi#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) mulf_init::sqr1_hi#0 ? (byte*~) mulf_init::$0 - (byte*~) mulf_init::$7 ? (byte[$200]) mulf_sqr1_lo#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte*) mulf_init::sqr1_lo#0 ? (byte*~) mulf_init::$7 + (word) mulf_init::sqr#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mulf_init::x_2#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) mulf_init::c#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*~) mulf_init::$0 ← (byte[$200]) mulf_sqr1_hi#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) mulf_init::sqr1_hi#0 ← (byte*~) mulf_init::$0 + (byte*~) mulf_init::$7 ← (byte[$200]) mulf_sqr1_lo#0 + (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) mulf_init::sqr1_lo#0 ← (byte*~) mulf_init::$7 to:mulf_init::@1 mulf_init::@1: scope:[mulf_init] from mulf_init mulf_init::@2 - (byte) mulf_init::x_2#4 ? phi( mulf_init/(byte) mulf_init::x_2#0 mulf_init::@2/(byte) mulf_init::x_2#2 ) - (byte*) mulf_init::sqr1_hi#3 ? phi( mulf_init/(byte*) mulf_init::sqr1_hi#0 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) - (byte*) mulf_init::sqr1_lo#3 ? phi( mulf_init/(byte*) mulf_init::sqr1_lo#0 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) - (word) mulf_init::sqr#5 ? phi( mulf_init/(word) mulf_init::sqr#0 mulf_init::@2/(word) mulf_init::sqr#1 ) - (byte) mulf_init::c#2 ? phi( mulf_init/(byte) mulf_init::c#0 mulf_init::@2/(byte) mulf_init::c#3 ) - (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 - (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mulf_init::$9 ? (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf_init::$10 ? ! (bool~) mulf_init::$9 + (byte) mulf_init::x_2#4 ← phi( mulf_init/(byte) mulf_init::x_2#0 mulf_init::@2/(byte) mulf_init::x_2#2 ) + (byte*) mulf_init::sqr1_hi#3 ← phi( mulf_init/(byte*) mulf_init::sqr1_hi#0 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) + (byte*) mulf_init::sqr1_lo#3 ← phi( mulf_init/(byte*) mulf_init::sqr1_lo#0 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) + (word) mulf_init::sqr#5 ← phi( mulf_init/(word) mulf_init::sqr#0 mulf_init::@2/(word) mulf_init::sqr#1 ) + (byte) mulf_init::c#2 ← phi( mulf_init/(byte) mulf_init::c#0 mulf_init::@2/(byte) mulf_init::c#3 ) + (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 + (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mulf_init::$9 ← (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf_init::$10 ← ! (bool~) mulf_init::$9 if((bool~) mulf_init::$10) goto mulf_init::@2 to:mulf_init::@3 mulf_init::@2: scope:[mulf_init] from mulf_init::@1 mulf_init::@3 - (byte) mulf_init::c#3 ? phi( mulf_init::@1/(byte) mulf_init::c#1 mulf_init::@3/(byte) mulf_init::c#4 ) - (byte) mulf_init::x_2#2 ? phi( mulf_init::@1/(byte) mulf_init::x_2#4 mulf_init::@3/(byte) mulf_init::x_2#1 ) - (byte*) mulf_init::sqr1_hi#2 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 mulf_init::@3/(byte*) mulf_init::sqr1_hi#4 ) - (byte*) mulf_init::sqr1_lo#2 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 mulf_init::@3/(byte*) mulf_init::sqr1_lo#4 ) - (word) mulf_init::sqr#3 ? phi( mulf_init::@1/(word) mulf_init::sqr#5 mulf_init::@3/(word) mulf_init::sqr#2 ) - (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 - *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 - (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 - *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 - (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 - (word~) mulf_init::$13 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 - (word) mulf_init::sqr#1 ? (word~) mulf_init::$13 - (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 - (byte*~) mulf_init::$14 ? (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $200 - (bool~) mulf_init::$15 ? (byte*) mulf_init::sqr1_lo#1 != (byte*~) mulf_init::$14 + (byte) mulf_init::c#3 ← phi( mulf_init::@1/(byte) mulf_init::c#1 mulf_init::@3/(byte) mulf_init::c#4 ) + (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#4 mulf_init::@3/(byte) mulf_init::x_2#1 ) + (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 mulf_init::@3/(byte*) mulf_init::sqr1_hi#4 ) + (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 mulf_init::@3/(byte*) mulf_init::sqr1_lo#4 ) + (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#5 mulf_init::@3/(word) mulf_init::sqr#2 ) + (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 + *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 + (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 + *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 + (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 + (word~) mulf_init::$13 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 + (word) mulf_init::sqr#1 ← (word~) mulf_init::$13 + (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 + (byte*~) mulf_init::$14 ← (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $200 + (bool~) mulf_init::$15 ← (byte*) mulf_init::sqr1_lo#1 != (byte*~) mulf_init::$14 if((bool~) mulf_init::$15) goto mulf_init::@1 to:mulf_init::@4 mulf_init::@3: scope:[mulf_init] from mulf_init::@1 - (byte) mulf_init::c#4 ? phi( mulf_init::@1/(byte) mulf_init::c#1 ) - (byte*) mulf_init::sqr1_hi#4 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 ) - (byte*) mulf_init::sqr1_lo#4 ? phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 ) - (word) mulf_init::sqr#4 ? phi( mulf_init::@1/(word) mulf_init::sqr#5 ) - (byte) mulf_init::x_2#3 ? phi( mulf_init::@1/(byte) mulf_init::x_2#4 ) - (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 - (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 + (byte) mulf_init::c#4 ← phi( mulf_init::@1/(byte) mulf_init::c#1 ) + (byte*) mulf_init::sqr1_hi#4 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_hi#3 ) + (byte*) mulf_init::sqr1_lo#4 ← phi( mulf_init::@1/(byte*) mulf_init::sqr1_lo#3 ) + (word) mulf_init::sqr#4 ← phi( mulf_init::@1/(word) mulf_init::sqr#5 ) + (byte) mulf_init::x_2#3 ← phi( mulf_init::@1/(byte) mulf_init::x_2#4 ) + (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 + (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 to:mulf_init::@2 mulf_init::@4: scope:[mulf_init] from mulf_init::@2 - (signed byte/signed word/signed dword~) mulf_init::$1 ? - (byte/signed byte/word/signed word/dword/signed dword) 1 - (byte~) mulf_init::$2 ? ((byte)) (signed byte/signed word/signed dword~) mulf_init::$1 - (byte) mulf_init::x_255#0 ? (byte~) mulf_init::$2 - (byte) mulf_init::dir#0 ? (byte/word/signed word/dword/signed dword) $ff - (byte*) mulf_init::sqr2_hi#0 ? (byte[$200]) mulf_sqr2_hi#0 - (byte*) mulf_init::sqr2_lo#0 ? (byte[$200]) mulf_sqr2_lo#0 + (signed byte/signed word/signed dword~) mulf_init::$1 ← - (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte~) mulf_init::$2 ← ((byte)) (signed byte/signed word/signed dword~) mulf_init::$1 + (byte) mulf_init::x_255#0 ← (byte~) mulf_init::$2 + (byte) mulf_init::dir#0 ← (byte/word/signed word/dword/signed dword) $ff + (byte*) mulf_init::sqr2_hi#0 ← (byte[$200]) mulf_sqr2_hi#0 + (byte*) mulf_init::sqr2_lo#0 ← (byte[$200]) mulf_sqr2_lo#0 to:mulf_init::@5 mulf_init::@5: scope:[mulf_init] from mulf_init::@4 mulf_init::@6 - (byte) mulf_init::dir#2 ? phi( mulf_init::@4/(byte) mulf_init::dir#0 mulf_init::@6/(byte) mulf_init::dir#3 ) - (byte*) mulf_init::sqr2_hi#2 ? phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#0 mulf_init::@6/(byte*) mulf_init::sqr2_hi#3 ) - (byte*) mulf_init::sqr2_lo#2 ? phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#0 mulf_init::@6/(byte*) mulf_init::sqr2_lo#1 ) - (byte) mulf_init::x_255#2 ? phi( mulf_init::@4/(byte) mulf_init::x_255#0 mulf_init::@6/(byte) mulf_init::x_255#3 ) - *((byte*) mulf_init::sqr2_lo#2) ? *((byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) - *((byte*) mulf_init::sqr2_hi#2) ? *((byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) - (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 - (byte~) mulf_init::$16 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 - (byte) mulf_init::x_255#1 ? (byte~) mulf_init::$16 - (bool~) mulf_init::$17 ? (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf_init::$18 ? ! (bool~) mulf_init::$17 + (byte) mulf_init::dir#2 ← phi( mulf_init::@4/(byte) mulf_init::dir#0 mulf_init::@6/(byte) mulf_init::dir#3 ) + (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_hi#0 mulf_init::@6/(byte*) mulf_init::sqr2_hi#3 ) + (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@4/(byte*) mulf_init::sqr2_lo#0 mulf_init::@6/(byte*) mulf_init::sqr2_lo#1 ) + (byte) mulf_init::x_255#2 ← phi( mulf_init::@4/(byte) mulf_init::x_255#0 mulf_init::@6/(byte) mulf_init::x_255#3 ) + *((byte*) mulf_init::sqr2_lo#2) ← *((byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) + *((byte*) mulf_init::sqr2_hi#2) ← *((byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) + (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 + (byte~) mulf_init::$16 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 + (byte) mulf_init::x_255#1 ← (byte~) mulf_init::$16 + (bool~) mulf_init::$17 ← (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf_init::$18 ← ! (bool~) mulf_init::$17 if((bool~) mulf_init::$18) goto mulf_init::@6 to:mulf_init::@7 mulf_init::@6: scope:[mulf_init] from mulf_init::@5 mulf_init::@7 - (byte) mulf_init::dir#3 ? phi( mulf_init::@5/(byte) mulf_init::dir#2 mulf_init::@7/(byte) mulf_init::dir#1 ) - (byte*) mulf_init::sqr2_hi#3 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 mulf_init::@7/(byte*) mulf_init::sqr2_hi#4 ) - (byte) mulf_init::x_255#3 ? phi( mulf_init::@5/(byte) mulf_init::x_255#1 mulf_init::@7/(byte) mulf_init::x_255#4 ) - (byte*) mulf_init::sqr2_lo#3 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 mulf_init::@7/(byte*) mulf_init::sqr2_lo#4 ) - (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#3 - (byte*~) mulf_init::$19 ? (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff - (bool~) mulf_init::$20 ? (byte*) mulf_init::sqr2_lo#1 != (byte*~) mulf_init::$19 + (byte) mulf_init::dir#3 ← phi( mulf_init::@5/(byte) mulf_init::dir#2 mulf_init::@7/(byte) mulf_init::dir#1 ) + (byte*) mulf_init::sqr2_hi#3 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 mulf_init::@7/(byte*) mulf_init::sqr2_hi#4 ) + (byte) mulf_init::x_255#3 ← phi( mulf_init::@5/(byte) mulf_init::x_255#1 mulf_init::@7/(byte) mulf_init::x_255#4 ) + (byte*) mulf_init::sqr2_lo#3 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 mulf_init::@7/(byte*) mulf_init::sqr2_lo#4 ) + (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#3 + (byte*~) mulf_init::$19 ← (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff + (bool~) mulf_init::$20 ← (byte*) mulf_init::sqr2_lo#1 != (byte*~) mulf_init::$19 if((bool~) mulf_init::$20) goto mulf_init::@5 to:mulf_init::@8 mulf_init::@7: scope:[mulf_init] from mulf_init::@5 - (byte*) mulf_init::sqr2_hi#4 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) - (byte) mulf_init::x_255#4 ? phi( mulf_init::@5/(byte) mulf_init::x_255#1 ) - (byte*) mulf_init::sqr2_lo#4 ? phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 ) - (byte) mulf_init::dir#1 ? (byte/signed byte/word/signed word/dword/signed dword) 1 + (byte*) mulf_init::sqr2_hi#4 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) + (byte) mulf_init::x_255#4 ← phi( mulf_init::@5/(byte) mulf_init::x_255#1 ) + (byte*) mulf_init::sqr2_lo#4 ← phi( mulf_init::@5/(byte*) mulf_init::sqr2_lo#2 ) + (byte) mulf_init::dir#1 ← (byte/signed byte/word/signed word/dword/signed dword) 1 to:mulf_init::@6 mulf_init::@8: scope:[mulf_init] from mulf_init::@6 - (byte*~) mulf_init::$3 ? (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff - (byte*~) mulf_init::$4 ? (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $100 - *((byte*~) mulf_init::$3) ? *((byte*~) mulf_init::$4) - (byte*~) mulf_init::$5 ? (byte[$200]) mulf_sqr2_hi#0 + (word/signed word/dword/signed dword) $1ff - (byte*~) mulf_init::$6 ? (byte[$200]) mulf_sqr1_hi#0 + (word/signed word/dword/signed dword) $100 - *((byte*~) mulf_init::$5) ? *((byte*~) mulf_init::$6) + (byte*~) mulf_init::$3 ← (byte[$200]) mulf_sqr2_lo#0 + (word/signed word/dword/signed dword) $1ff + (byte*~) mulf_init::$4 ← (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword) $100 + *((byte*~) mulf_init::$3) ← *((byte*~) mulf_init::$4) + (byte*~) mulf_init::$5 ← (byte[$200]) mulf_sqr2_hi#0 + (word/signed word/dword/signed dword) $1ff + (byte*~) mulf_init::$6 ← (byte[$200]) mulf_sqr1_hi#0 + (word/signed word/dword/signed dword) $100 + *((byte*~) mulf_init::$5) ← *((byte*~) mulf_init::$6) to:mulf_init::@return mulf_init::@return: scope:[mulf_init] from mulf_init::@8 return to:@return mulf8u_prepare: scope:[mulf8u_prepare] from mulf8s::mulf8s_prepare1 mulf8u - (byte) mulf8u_prepare::a#2 ? phi( mulf8s::mulf8s_prepare1/(byte) mulf8u_prepare::a#1 mulf8u/(byte) mulf8u_prepare::a#0 ) - (byte*) mulf8u_prepare::memA#0 ? ((byte*)) (byte/word/signed word/dword/signed dword) $fd - *((byte*) mulf8u_prepare::memA#0) ? (byte) mulf8u_prepare::a#2 + (byte) mulf8u_prepare::a#2 ← phi( mulf8s::mulf8s_prepare1/(byte) mulf8u_prepare::a#1 mulf8u/(byte) mulf8u_prepare::a#0 ) + (byte*) mulf8u_prepare::memA#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) $fd + *((byte*) mulf8u_prepare::memA#0) ← (byte) mulf8u_prepare::a#2 asm { ldamemA stamulf8u_prepared.sm1+1 stamulf8u_prepared.sm3+1 eor#$ff stamulf8u_prepared.sm2+1 stamulf8u_prepared.sm4+1 } to:mulf8u_prepare::@return mulf8u_prepare::@return: scope:[mulf8u_prepare] from mulf8u_prepare return to:@return mulf8u_prepared: scope:[mulf8u_prepared] from mulf8s_prepared mulf8u::@2 - (byte) mulf8u_prepared::b#2 ? phi( mulf8s_prepared/(byte) mulf8u_prepared::b#1 mulf8u::@2/(byte) mulf8u_prepared::b#0 ) - (byte*) mulf8u_prepared::resL#0 ? ((byte*)) (byte/word/signed word/dword/signed dword) $fe - (byte*) mulf8u_prepared::memB#0 ? ((byte*)) (byte/word/signed word/dword/signed dword) $ff - *((byte*) mulf8u_prepared::memB#0) ? (byte) mulf8u_prepared::b#2 + (byte) mulf8u_prepared::b#2 ← phi( mulf8s_prepared/(byte) mulf8u_prepared::b#1 mulf8u::@2/(byte) mulf8u_prepared::b#0 ) + (byte*) mulf8u_prepared::resL#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) $fe + (byte*) mulf8u_prepared::memB#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) $ff + *((byte*) mulf8u_prepared::memB#0) ← (byte) mulf8u_prepared::b#2 asm { ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x staresL sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } - (word) mulf8u_prepared::return#0 ? { *((byte*) mulf8u_prepared::memB#0), *((byte*) mulf8u_prepared::resL#0) } + (word) mulf8u_prepared::return#0 ← { *((byte*) mulf8u_prepared::memB#0), *((byte*) mulf8u_prepared::resL#0) } to:mulf8u_prepared::@return mulf8u_prepared::@return: scope:[mulf8u_prepared] from mulf8u_prepared - (word) mulf8u_prepared::return#4 ? phi( mulf8u_prepared/(word) mulf8u_prepared::return#0 ) - (word) mulf8u_prepared::return#1 ? (word) mulf8u_prepared::return#4 + (word) mulf8u_prepared::return#4 ← phi( mulf8u_prepared/(word) mulf8u_prepared::return#0 ) + (word) mulf8u_prepared::return#1 ← (word) mulf8u_prepared::return#4 return to:@return mulf8u: scope:[mulf8u] from mul8u_compare::@12 - (byte) mulf8u::b#2 ? phi( mul8u_compare::@12/(byte) mulf8u::b#0 ) - (byte) mulf8u::a#1 ? phi( mul8u_compare::@12/(byte) mulf8u::a#0 ) - (byte) mulf8u_prepare::a#0 ? (byte) mulf8u::a#1 + (byte) mulf8u::b#2 ← phi( mul8u_compare::@12/(byte) mulf8u::b#0 ) + (byte) mulf8u::a#1 ← phi( mul8u_compare::@12/(byte) mulf8u::a#0 ) + (byte) mulf8u_prepare::a#0 ← (byte) mulf8u::a#1 call mulf8u_prepare to:mulf8u::@2 mulf8u::@2: scope:[mulf8u] from mulf8u - (byte) mulf8u::b#1 ? phi( mulf8u/(byte) mulf8u::b#2 ) - (byte) mulf8u_prepared::b#0 ? (byte) mulf8u::b#1 + (byte) mulf8u::b#1 ← phi( mulf8u/(byte) mulf8u::b#2 ) + (byte) mulf8u_prepared::b#0 ← (byte) mulf8u::b#1 call mulf8u_prepared - (word) mulf8u_prepared::return#2 ? (word) mulf8u_prepared::return#1 + (word) mulf8u_prepared::return#2 ← (word) mulf8u_prepared::return#1 to:mulf8u::@3 mulf8u::@3: scope:[mulf8u] from mulf8u::@2 - (word) mulf8u_prepared::return#5 ? phi( mulf8u::@2/(word) mulf8u_prepared::return#2 ) - (word~) mulf8u::$1 ? (word) mulf8u_prepared::return#5 - (word) mulf8u::return#0 ? (word~) mulf8u::$1 + (word) mulf8u_prepared::return#5 ← phi( mulf8u::@2/(word) mulf8u_prepared::return#2 ) + (word~) mulf8u::$1 ← (word) mulf8u_prepared::return#5 + (word) mulf8u::return#0 ← (word~) mulf8u::$1 to:mulf8u::@return mulf8u::@return: scope:[mulf8u] from mulf8u::@3 - (word) mulf8u::return#3 ? phi( mulf8u::@3/(word) mulf8u::return#0 ) - (word) mulf8u::return#1 ? (word) mulf8u::return#3 + (word) mulf8u::return#3 ← phi( mulf8u::@3/(word) mulf8u::return#0 ) + (word) mulf8u::return#1 ← (word) mulf8u::return#3 return to:@return mulf8s_prepared: scope:[mulf8s_prepared] from mulf8s::@2 - (signed byte) mulf8s_prepared::b#1 ? phi( mulf8s::@2/(signed byte) mulf8s_prepared::b#0 ) - (signed byte*) mulf8s_prepared::memA#0 ? ((signed byte*)) (byte/word/signed word/dword/signed dword) $fd - (byte~) mulf8s_prepared::$0 ? ((byte)) (signed byte) mulf8s_prepared::b#1 - (byte) mulf8u_prepared::b#1 ? (byte~) mulf8s_prepared::$0 + (signed byte) mulf8s_prepared::b#1 ← phi( mulf8s::@2/(signed byte) mulf8s_prepared::b#0 ) + (signed byte*) mulf8s_prepared::memA#0 ← ((signed byte*)) (byte/word/signed word/dword/signed dword) $fd + (byte~) mulf8s_prepared::$0 ← ((byte)) (signed byte) mulf8s_prepared::b#1 + (byte) mulf8u_prepared::b#1 ← (byte~) mulf8s_prepared::$0 call mulf8u_prepared - (word) mulf8u_prepared::return#3 ? (word) mulf8u_prepared::return#1 + (word) mulf8u_prepared::return#3 ← (word) mulf8u_prepared::return#1 to:mulf8s_prepared::@6 mulf8s_prepared::@6: scope:[mulf8s_prepared] from mulf8s_prepared - (signed byte) mulf8s_prepared::b#4 ? phi( mulf8s_prepared/(signed byte) mulf8s_prepared::b#1 ) - (word) mulf8u_prepared::return#6 ? phi( mulf8s_prepared/(word) mulf8u_prepared::return#3 ) - (word~) mulf8s_prepared::$1 ? (word) mulf8u_prepared::return#6 - (word) mulf8s_prepared::m#0 ? (word~) mulf8s_prepared::$1 - (bool~) mulf8s_prepared::$2 ? *((signed byte*) mulf8s_prepared::memA#0) < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf8s_prepared::$3 ? ! (bool~) mulf8s_prepared::$2 + (signed byte) mulf8s_prepared::b#4 ← phi( mulf8s_prepared/(signed byte) mulf8s_prepared::b#1 ) + (word) mulf8u_prepared::return#6 ← phi( mulf8s_prepared/(word) mulf8u_prepared::return#3 ) + (word~) mulf8s_prepared::$1 ← (word) mulf8u_prepared::return#6 + (word) mulf8s_prepared::m#0 ← (word~) mulf8s_prepared::$1 + (bool~) mulf8s_prepared::$2 ← *((signed byte*) mulf8s_prepared::memA#0) < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf8s_prepared::$3 ← ! (bool~) mulf8s_prepared::$2 if((bool~) mulf8s_prepared::$3) goto mulf8s_prepared::@1 to:mulf8s_prepared::@3 mulf8s_prepared::@1: scope:[mulf8s_prepared] from mulf8s_prepared::@3 mulf8s_prepared::@6 - (word) mulf8s_prepared::m#6 ? phi( mulf8s_prepared::@3/(word) mulf8s_prepared::m#1 mulf8s_prepared::@6/(word) mulf8s_prepared::m#0 ) - (signed byte) mulf8s_prepared::b#2 ? phi( mulf8s_prepared::@3/(signed byte) mulf8s_prepared::b#3 mulf8s_prepared::@6/(signed byte) mulf8s_prepared::b#4 ) - (bool~) mulf8s_prepared::$4 ? (signed byte) mulf8s_prepared::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mulf8s_prepared::$5 ? ! (bool~) mulf8s_prepared::$4 + (word) mulf8s_prepared::m#6 ← phi( mulf8s_prepared::@3/(word) mulf8s_prepared::m#1 mulf8s_prepared::@6/(word) mulf8s_prepared::m#0 ) + (signed byte) mulf8s_prepared::b#2 ← phi( mulf8s_prepared::@3/(signed byte) mulf8s_prepared::b#3 mulf8s_prepared::@6/(signed byte) mulf8s_prepared::b#4 ) + (bool~) mulf8s_prepared::$4 ← (signed byte) mulf8s_prepared::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mulf8s_prepared::$5 ← ! (bool~) mulf8s_prepared::$4 if((bool~) mulf8s_prepared::$5) goto mulf8s_prepared::@2 to:mulf8s_prepared::@4 mulf8s_prepared::@3: scope:[mulf8s_prepared] from mulf8s_prepared::@6 - (signed byte) mulf8s_prepared::b#3 ? phi( mulf8s_prepared::@6/(signed byte) mulf8s_prepared::b#4 ) - (word) mulf8s_prepared::m#3 ? phi( mulf8s_prepared::@6/(word) mulf8s_prepared::m#0 ) - (byte~) mulf8s_prepared::$8 ? > (word) mulf8s_prepared::m#3 - (byte~) mulf8s_prepared::$9 ? ((byte)) (signed byte) mulf8s_prepared::b#3 - (byte~) mulf8s_prepared::$10 ? (byte~) mulf8s_prepared::$8 - (byte~) mulf8s_prepared::$9 - (byte~) mulf8s_prepared::$15 ? (byte~) mulf8s_prepared::$10 - (word) mulf8s_prepared::m#1 ? (word) mulf8s_prepared::m#3 hi= (byte~) mulf8s_prepared::$15 + (signed byte) mulf8s_prepared::b#3 ← phi( mulf8s_prepared::@6/(signed byte) mulf8s_prepared::b#4 ) + (word) mulf8s_prepared::m#3 ← phi( mulf8s_prepared::@6/(word) mulf8s_prepared::m#0 ) + (byte~) mulf8s_prepared::$8 ← > (word) mulf8s_prepared::m#3 + (byte~) mulf8s_prepared::$9 ← ((byte)) (signed byte) mulf8s_prepared::b#3 + (byte~) mulf8s_prepared::$10 ← (byte~) mulf8s_prepared::$8 - (byte~) mulf8s_prepared::$9 + (byte~) mulf8s_prepared::$15 ← (byte~) mulf8s_prepared::$10 + (word) mulf8s_prepared::m#1 ← (word) mulf8s_prepared::m#3 hi= (byte~) mulf8s_prepared::$15 to:mulf8s_prepared::@1 mulf8s_prepared::@2: scope:[mulf8s_prepared] from mulf8s_prepared::@1 mulf8s_prepared::@4 - (word) mulf8s_prepared::m#4 ? phi( mulf8s_prepared::@1/(word) mulf8s_prepared::m#6 mulf8s_prepared::@4/(word) mulf8s_prepared::m#2 ) - (signed word~) mulf8s_prepared::$6 ? ((signed word)) (word) mulf8s_prepared::m#4 - (signed word) mulf8s_prepared::return#0 ? (signed word~) mulf8s_prepared::$6 + (word) mulf8s_prepared::m#4 ← phi( mulf8s_prepared::@1/(word) mulf8s_prepared::m#6 mulf8s_prepared::@4/(word) mulf8s_prepared::m#2 ) + (signed word~) mulf8s_prepared::$6 ← ((signed word)) (word) mulf8s_prepared::m#4 + (signed word) mulf8s_prepared::return#0 ← (signed word~) mulf8s_prepared::$6 to:mulf8s_prepared::@return mulf8s_prepared::@4: scope:[mulf8s_prepared] from mulf8s_prepared::@1 - (word) mulf8s_prepared::m#5 ? phi( mulf8s_prepared::@1/(word) mulf8s_prepared::m#6 ) - (byte~) mulf8s_prepared::$12 ? > (word) mulf8s_prepared::m#5 - (byte~) mulf8s_prepared::$13 ? ((byte)) *((signed byte*) mulf8s_prepared::memA#0) - (byte~) mulf8s_prepared::$14 ? (byte~) mulf8s_prepared::$12 - (byte~) mulf8s_prepared::$13 - (byte~) mulf8s_prepared::$16 ? (byte~) mulf8s_prepared::$14 - (word) mulf8s_prepared::m#2 ? (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 + (word) mulf8s_prepared::m#5 ← phi( mulf8s_prepared::@1/(word) mulf8s_prepared::m#6 ) + (byte~) mulf8s_prepared::$12 ← > (word) mulf8s_prepared::m#5 + (byte~) mulf8s_prepared::$13 ← ((byte)) *((signed byte*) mulf8s_prepared::memA#0) + (byte~) mulf8s_prepared::$14 ← (byte~) mulf8s_prepared::$12 - (byte~) mulf8s_prepared::$13 + (byte~) mulf8s_prepared::$16 ← (byte~) mulf8s_prepared::$14 + (word) mulf8s_prepared::m#2 ← (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 to:mulf8s_prepared::@2 mulf8s_prepared::@return: scope:[mulf8s_prepared] from mulf8s_prepared::@2 - (signed word) mulf8s_prepared::return#3 ? phi( mulf8s_prepared::@2/(signed word) mulf8s_prepared::return#0 ) - (signed word) mulf8s_prepared::return#1 ? (signed word) mulf8s_prepared::return#3 + (signed word) mulf8s_prepared::return#3 ← phi( mulf8s_prepared::@2/(signed word) mulf8s_prepared::return#0 ) + (signed word) mulf8s_prepared::return#1 ← (signed word) mulf8s_prepared::return#3 return to:@return mulf8s: scope:[mulf8s] from mul8s_compare::@12 - (signed byte) mulf8s::b#4 ? phi( mul8s_compare::@12/(signed byte) mulf8s::b#0 ) - (signed byte) mulf8s::a#1 ? phi( mul8s_compare::@12/(signed byte) mulf8s::a#0 ) - (signed byte) mulf8s::mulf8s_prepare1_a#0 ? (signed byte) mulf8s::a#1 + (signed byte) mulf8s::b#4 ← phi( mul8s_compare::@12/(signed byte) mulf8s::b#0 ) + (signed byte) mulf8s::a#1 ← phi( mul8s_compare::@12/(signed byte) mulf8s::a#0 ) + (signed byte) mulf8s::mulf8s_prepare1_a#0 ← (signed byte) mulf8s::a#1 to:mulf8s::mulf8s_prepare1 mulf8s::mulf8s_prepare1: scope:[mulf8s] from mulf8s - (signed byte) mulf8s::b#3 ? phi( mulf8s/(signed byte) mulf8s::b#4 ) - (signed byte) mulf8s::mulf8s_prepare1_a#1 ? phi( mulf8s/(signed byte) mulf8s::mulf8s_prepare1_a#0 ) - (byte) mulf8s::mulf8s_prepare1_$0#0 ? ((byte)) (signed byte) mulf8s::mulf8s_prepare1_a#1 - (byte) mulf8u_prepare::a#1 ? (byte) mulf8s::mulf8s_prepare1_$0#0 + (signed byte) mulf8s::b#3 ← phi( mulf8s/(signed byte) mulf8s::b#4 ) + (signed byte) mulf8s::mulf8s_prepare1_a#1 ← phi( mulf8s/(signed byte) mulf8s::mulf8s_prepare1_a#0 ) + (byte) mulf8s::mulf8s_prepare1_$0#0 ← ((byte)) (signed byte) mulf8s::mulf8s_prepare1_a#1 + (byte) mulf8u_prepare::a#1 ← (byte) mulf8s::mulf8s_prepare1_$0#0 call mulf8u_prepare to:mulf8s::@3 mulf8s::@3: scope:[mulf8s] from mulf8s::mulf8s_prepare1 - (signed byte) mulf8s::b#2 ? phi( mulf8s::mulf8s_prepare1/(signed byte) mulf8s::b#3 ) + (signed byte) mulf8s::b#2 ← phi( mulf8s::mulf8s_prepare1/(signed byte) mulf8s::b#3 ) to:mulf8s::@2 mulf8s::@2: scope:[mulf8s] from mulf8s::@3 - (signed byte) mulf8s::b#1 ? phi( mulf8s::@3/(signed byte) mulf8s::b#2 ) - (signed byte) mulf8s_prepared::b#0 ? (signed byte) mulf8s::b#1 + (signed byte) mulf8s::b#1 ← phi( mulf8s::@3/(signed byte) mulf8s::b#2 ) + (signed byte) mulf8s_prepared::b#0 ← (signed byte) mulf8s::b#1 call mulf8s_prepared - (signed word) mulf8s_prepared::return#2 ? (signed word) mulf8s_prepared::return#1 + (signed word) mulf8s_prepared::return#2 ← (signed word) mulf8s_prepared::return#1 to:mulf8s::@4 mulf8s::@4: scope:[mulf8s] from mulf8s::@2 - (signed word) mulf8s_prepared::return#4 ? phi( mulf8s::@2/(signed word) mulf8s_prepared::return#2 ) - (signed word~) mulf8s::$1 ? (signed word) mulf8s_prepared::return#4 - (signed word) mulf8s::return#0 ? (signed word~) mulf8s::$1 + (signed word) mulf8s_prepared::return#4 ← phi( mulf8s::@2/(signed word) mulf8s_prepared::return#2 ) + (signed word~) mulf8s::$1 ← (signed word) mulf8s_prepared::return#4 + (signed word) mulf8s::return#0 ← (signed word~) mulf8s::$1 to:mulf8s::@return mulf8s::@return: scope:[mulf8s] from mulf8s::@4 - (signed word) mulf8s::return#3 ? phi( mulf8s::@4/(signed word) mulf8s::return#0 ) - (signed word) mulf8s::return#1 ? (signed word) mulf8s::return#3 + (signed word) mulf8s::return#3 ← phi( mulf8s::@4/(signed word) mulf8s::return#0 ) + (signed word) mulf8s::return#1 ← (signed word) mulf8s::return#3 return to:@return @33: scope:[] from @24 - (byte*) print_screen#7 ? phi( @24/(byte*) print_screen#8 ) - (byte*) print_char_cursor#163 ? phi( @24/(byte*) print_char_cursor#171 ) - (byte*) print_line_cursor#67 ? phi( @24/(byte*) print_line_cursor#78 ) - (byte*) BGCOL#0 ? ((byte*)) (word/dword/signed dword) $d021 + (byte*) print_screen#7 ← phi( @24/(byte*) print_screen#8 ) + (byte*) print_char_cursor#163 ← phi( @24/(byte*) print_char_cursor#171 ) + (byte*) print_line_cursor#67 ← phi( @24/(byte*) print_line_cursor#78 ) + (byte*) BGCOL#0 ← ((byte*)) (word/dword/signed dword) $d021 to:@36 main: scope:[main] from @42 - (byte*) print_char_cursor#141 ? phi( @42/(byte*) print_char_cursor#151 ) - (byte*) print_line_cursor#46 ? phi( @42/(byte*) print_line_cursor#56 ) - (byte*) print_screen#4 ? phi( @42/(byte*) print_screen#5 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + (byte*) print_char_cursor#141 ← phi( @42/(byte*) print_char_cursor#151 ) + (byte*) print_line_cursor#46 ← phi( @42/(byte*) print_line_cursor#56 ) + (byte*) print_screen#4 ← phi( @42/(byte*) print_screen#5 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 call print_cls to:main::@1 main::@1: scope:[main] from main - (byte*) print_char_cursor#87 ? phi( main/(byte*) print_char_cursor#21 ) - (byte*) print_line_cursor#27 ? phi( main/(byte*) print_line_cursor#4 ) - (byte*) print_line_cursor#5 ? (byte*) print_line_cursor#27 - (byte*) print_char_cursor#22 ? (byte*) print_char_cursor#87 + (byte*) print_char_cursor#87 ← phi( main/(byte*) print_char_cursor#21 ) + (byte*) print_line_cursor#27 ← phi( main/(byte*) print_line_cursor#4 ) + (byte*) print_line_cursor#5 ← (byte*) print_line_cursor#27 + (byte*) print_char_cursor#22 ← (byte*) print_char_cursor#87 call mulf_init to:main::@2 main::@2: scope:[main] from main::@1 - (byte*) print_line_cursor#57 ? phi( main::@1/(byte*) print_line_cursor#5 ) - (byte*) print_char_cursor#155 ? phi( main::@1/(byte*) print_char_cursor#22 ) + (byte*) print_line_cursor#57 ← phi( main::@1/(byte*) print_line_cursor#5 ) + (byte*) print_char_cursor#155 ← phi( main::@1/(byte*) print_char_cursor#22 ) call mulf_init_asm to:main::@3 main::@3: scope:[main] from main::@2 - (byte*) print_line_cursor#47 ? phi( main::@2/(byte*) print_line_cursor#57 ) - (byte*) print_char_cursor#142 ? phi( main::@2/(byte*) print_char_cursor#155 ) + (byte*) print_line_cursor#47 ← phi( main::@2/(byte*) print_line_cursor#57 ) + (byte*) print_char_cursor#142 ← phi( main::@2/(byte*) print_char_cursor#155 ) call mulf_tables_cmp to:main::@4 main::@4: scope:[main] from main::@3 - (byte*) print_line_cursor#28 ? phi( main::@3/(byte*) print_line_cursor#10 ) - (byte*) print_char_cursor#88 ? phi( main::@3/(byte*) print_char_cursor#31 ) - (byte*) print_char_cursor#23 ? (byte*) print_char_cursor#88 - (byte*) print_line_cursor#6 ? (byte*) print_line_cursor#28 + (byte*) print_line_cursor#28 ← phi( main::@3/(byte*) print_line_cursor#10 ) + (byte*) print_char_cursor#88 ← phi( main::@3/(byte*) print_char_cursor#31 ) + (byte*) print_char_cursor#23 ← (byte*) print_char_cursor#88 + (byte*) print_line_cursor#6 ← (byte*) print_line_cursor#28 call mul8u_compare to:main::@5 main::@5: scope:[main] from main::@4 - (byte*) print_line_cursor#29 ? phi( main::@4/(byte*) print_line_cursor#13 ) - (byte*) print_char_cursor#89 ? phi( main::@4/(byte*) print_char_cursor#35 ) - (byte*) print_char_cursor#24 ? (byte*) print_char_cursor#89 - (byte*) print_line_cursor#7 ? (byte*) print_line_cursor#29 + (byte*) print_line_cursor#29 ← phi( main::@4/(byte*) print_line_cursor#13 ) + (byte*) print_char_cursor#89 ← phi( main::@4/(byte*) print_char_cursor#35 ) + (byte*) print_char_cursor#24 ← (byte*) print_char_cursor#89 + (byte*) print_line_cursor#7 ← (byte*) print_line_cursor#29 call mul8s_compare to:main::@6 main::@6: scope:[main] from main::@5 - (byte*) print_line_cursor#30 ? phi( main::@5/(byte*) print_line_cursor#18 ) - (byte*) print_char_cursor#90 ? phi( main::@5/(byte*) print_char_cursor#51 ) - (byte*) print_char_cursor#25 ? (byte*) print_char_cursor#90 - (byte*) print_line_cursor#8 ? (byte*) print_line_cursor#30 + (byte*) print_line_cursor#30 ← phi( main::@5/(byte*) print_line_cursor#18 ) + (byte*) print_char_cursor#90 ← phi( main::@5/(byte*) print_char_cursor#51 ) + (byte*) print_char_cursor#25 ← (byte*) print_char_cursor#90 + (byte*) print_line_cursor#8 ← (byte*) print_line_cursor#30 to:main::@return main::@return: scope:[main] from main::@6 - (byte*) print_char_cursor#91 ? phi( main::@6/(byte*) print_char_cursor#25 ) - (byte*) print_line_cursor#31 ? phi( main::@6/(byte*) print_line_cursor#8 ) - (byte*) print_line_cursor#9 ? (byte*) print_line_cursor#31 - (byte*) print_char_cursor#26 ? (byte*) print_char_cursor#91 + (byte*) print_char_cursor#91 ← phi( main::@6/(byte*) print_char_cursor#25 ) + (byte*) print_line_cursor#31 ← phi( main::@6/(byte*) print_line_cursor#8 ) + (byte*) print_line_cursor#9 ← (byte*) print_line_cursor#31 + (byte*) print_char_cursor#26 ← (byte*) print_char_cursor#91 return to:@return muls8u: scope:[muls8u] from mul8u_compare::@2 - (byte) muls8u::b#3 ? phi( mul8u_compare::@2/(byte) muls8u::b#0 ) - (byte) muls8u::a#1 ? phi( mul8u_compare::@2/(byte) muls8u::a#0 ) - (word) muls8u::m#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls8u::$0 ? (byte) muls8u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls8u::$1 ? ! (bool~) muls8u::$0 + (byte) muls8u::b#3 ← phi( mul8u_compare::@2/(byte) muls8u::b#0 ) + (byte) muls8u::a#1 ← phi( mul8u_compare::@2/(byte) muls8u::a#0 ) + (word) muls8u::m#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls8u::$0 ← (byte) muls8u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls8u::$1 ← ! (bool~) muls8u::$0 if((bool~) muls8u::$1) goto muls8u::@1 to:muls8u::@2 muls8u::@1: scope:[muls8u] from muls8u muls8u::@4 - (word) muls8u::m#2 ? phi( muls8u/(word) muls8u::m#0 muls8u::@4/(word) muls8u::m#1 ) - (word) muls8u::return#0 ? (word) muls8u::m#2 + (word) muls8u::m#2 ← phi( muls8u/(word) muls8u::m#0 muls8u::@4/(word) muls8u::m#1 ) + (word) muls8u::return#0 ← (word) muls8u::m#2 to:muls8u::@return muls8u::@2: scope:[muls8u] from muls8u - (byte) muls8u::a#3 ? phi( muls8u/(byte) muls8u::a#1 ) - (byte) muls8u::b#2 ? phi( muls8u/(byte) muls8u::b#3 ) - (word) muls8u::m#4 ? phi( muls8u/(word) muls8u::m#0 ) - (byte) muls8u::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) muls8u::a#3 ← phi( muls8u/(byte) muls8u::a#1 ) + (byte) muls8u::b#2 ← phi( muls8u/(byte) muls8u::b#3 ) + (word) muls8u::m#4 ← phi( muls8u/(word) muls8u::m#0 ) + (byte) muls8u::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:muls8u::@4 muls8u::@4: scope:[muls8u] from muls8u::@2 muls8u::@4 - (byte) muls8u::a#2 ? phi( muls8u::@2/(byte) muls8u::a#3 muls8u::@4/(byte) muls8u::a#2 ) - (byte) muls8u::i#2 ? phi( muls8u::@2/(byte) muls8u::i#0 muls8u::@4/(byte) muls8u::i#1 ) - (byte) muls8u::b#1 ? phi( muls8u::@2/(byte) muls8u::b#2 muls8u::@4/(byte) muls8u::b#1 ) - (word) muls8u::m#3 ? phi( muls8u::@2/(word) muls8u::m#4 muls8u::@4/(word) muls8u::m#1 ) - (word~) muls8u::$2 ? (word) muls8u::m#3 + (byte) muls8u::b#1 - (word) muls8u::m#1 ? (word~) muls8u::$2 - (byte) muls8u::i#1 ? ++ (byte) muls8u::i#2 - (bool~) muls8u::$3 ? (byte) muls8u::i#1 != (byte) muls8u::a#2 + (byte) muls8u::a#2 ← phi( muls8u::@2/(byte) muls8u::a#3 muls8u::@4/(byte) muls8u::a#2 ) + (byte) muls8u::i#2 ← phi( muls8u::@2/(byte) muls8u::i#0 muls8u::@4/(byte) muls8u::i#1 ) + (byte) muls8u::b#1 ← phi( muls8u::@2/(byte) muls8u::b#2 muls8u::@4/(byte) muls8u::b#1 ) + (word) muls8u::m#3 ← phi( muls8u::@2/(word) muls8u::m#4 muls8u::@4/(word) muls8u::m#1 ) + (word~) muls8u::$2 ← (word) muls8u::m#3 + (byte) muls8u::b#1 + (word) muls8u::m#1 ← (word~) muls8u::$2 + (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 + (bool~) muls8u::$3 ← (byte) muls8u::i#1 != (byte) muls8u::a#2 if((bool~) muls8u::$3) goto muls8u::@4 to:muls8u::@1 muls8u::@return: scope:[muls8u] from muls8u::@1 - (word) muls8u::return#3 ? phi( muls8u::@1/(word) muls8u::return#0 ) - (word) muls8u::return#1 ? (word) muls8u::return#3 + (word) muls8u::return#3 ← phi( muls8u::@1/(word) muls8u::return#0 ) + (word) muls8u::return#1 ← (word) muls8u::return#3 return to:@return muls8s: scope:[muls8s] from mul8s_compare::@2 - (signed byte) muls8s::b#5 ? phi( mul8s_compare::@2/(signed byte) muls8s::b#0 ) - (signed byte) muls8s::a#1 ? phi( mul8s_compare::@2/(signed byte) muls8s::a#0 ) - (signed word) muls8s::m#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls8s::$0 ? (signed byte) muls8s::a#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) muls8s::b#5 ← phi( mul8s_compare::@2/(signed byte) muls8s::b#0 ) + (signed byte) muls8s::a#1 ← phi( mul8s_compare::@2/(signed byte) muls8s::a#0 ) + (signed word) muls8s::m#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls8s::$0 ← (signed byte) muls8s::a#1 < (byte/signed byte/word/signed word/dword/signed dword) 0 if((bool~) muls8s::$0) goto muls8s::@1 to:muls8s::@4 muls8s::@1: scope:[muls8s] from muls8s - (signed byte) muls8s::a#6 ? phi( muls8s/(signed byte) muls8s::a#1 ) - (signed byte) muls8s::b#4 ? phi( muls8s/(signed byte) muls8s::b#5 ) - (signed word) muls8s::m#8 ? phi( muls8s/(signed word) muls8s::m#0 ) - (signed byte) muls8s::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) muls8s::a#6 ← phi( muls8s/(signed byte) muls8s::a#1 ) + (signed byte) muls8s::b#4 ← phi( muls8s/(signed byte) muls8s::b#5 ) + (signed word) muls8s::m#8 ← phi( muls8s/(signed word) muls8s::m#0 ) + (signed byte) muls8s::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:muls8s::@10 muls8s::@4: scope:[muls8s] from muls8s - (signed byte) muls8s::b#6 ? phi( muls8s/(signed byte) muls8s::b#5 ) - (signed word) muls8s::m#9 ? phi( muls8s/(signed word) muls8s::m#0 ) - (signed byte) muls8s::a#2 ? phi( muls8s/(signed byte) muls8s::a#1 ) - (bool~) muls8s::$1 ? (signed byte) muls8s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) muls8s::$2 ? ! (bool~) muls8s::$1 + (signed byte) muls8s::b#6 ← phi( muls8s/(signed byte) muls8s::b#5 ) + (signed word) muls8s::m#9 ← phi( muls8s/(signed word) muls8s::m#0 ) + (signed byte) muls8s::a#2 ← phi( muls8s/(signed byte) muls8s::a#1 ) + (bool~) muls8s::$1 ← (signed byte) muls8s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) muls8s::$2 ← ! (bool~) muls8s::$1 if((bool~) muls8s::$2) goto muls8s::@2 to:muls8s::@5 muls8s::@2: scope:[muls8s] from muls8s::@4 - (signed word) muls8s::m#7 ? phi( muls8s::@4/(signed word) muls8s::m#9 ) + (signed word) muls8s::m#7 ← phi( muls8s::@4/(signed word) muls8s::m#9 ) to:muls8s::@3 muls8s::@5: scope:[muls8s] from muls8s::@4 - (signed byte) muls8s::a#5 ? phi( muls8s::@4/(signed byte) muls8s::a#2 ) - (signed byte) muls8s::b#3 ? phi( muls8s::@4/(signed byte) muls8s::b#6 ) - (signed word) muls8s::m#6 ? phi( muls8s::@4/(signed word) muls8s::m#9 ) - (signed byte) muls8s::j#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (signed byte) muls8s::a#5 ← phi( muls8s::@4/(signed byte) muls8s::a#2 ) + (signed byte) muls8s::b#3 ← phi( muls8s::@4/(signed byte) muls8s::b#6 ) + (signed word) muls8s::m#6 ← phi( muls8s::@4/(signed word) muls8s::m#9 ) + (signed byte) muls8s::j#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:muls8s::@8 muls8s::@8: scope:[muls8s] from muls8s::@5 muls8s::@8 - (signed byte) muls8s::a#3 ? phi( muls8s::@5/(signed byte) muls8s::a#5 muls8s::@8/(signed byte) muls8s::a#3 ) - (signed byte) muls8s::j#2 ? phi( muls8s::@5/(signed byte) muls8s::j#0 muls8s::@8/(signed byte) muls8s::j#1 ) - (signed byte) muls8s::b#1 ? phi( muls8s::@5/(signed byte) muls8s::b#3 muls8s::@8/(signed byte) muls8s::b#1 ) - (signed word) muls8s::m#3 ? phi( muls8s::@5/(signed word) muls8s::m#6 muls8s::@8/(signed word) muls8s::m#1 ) - (signed word~) muls8s::$3 ? (signed word) muls8s::m#3 + (signed byte) muls8s::b#1 - (signed word) muls8s::m#1 ? (signed word~) muls8s::$3 - (signed byte) muls8s::j#1 ? ++ (signed byte) muls8s::j#2 - (bool~) muls8s::$4 ? (signed byte) muls8s::j#1 != (signed byte) muls8s::a#3 + (signed byte) muls8s::a#3 ← phi( muls8s::@5/(signed byte) muls8s::a#5 muls8s::@8/(signed byte) muls8s::a#3 ) + (signed byte) muls8s::j#2 ← phi( muls8s::@5/(signed byte) muls8s::j#0 muls8s::@8/(signed byte) muls8s::j#1 ) + (signed byte) muls8s::b#1 ← phi( muls8s::@5/(signed byte) muls8s::b#3 muls8s::@8/(signed byte) muls8s::b#1 ) + (signed word) muls8s::m#3 ← phi( muls8s::@5/(signed word) muls8s::m#6 muls8s::@8/(signed word) muls8s::m#1 ) + (signed word~) muls8s::$3 ← (signed word) muls8s::m#3 + (signed byte) muls8s::b#1 + (signed word) muls8s::m#1 ← (signed word~) muls8s::$3 + (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 + (bool~) muls8s::$4 ← (signed byte) muls8s::j#1 != (signed byte) muls8s::a#3 if((bool~) muls8s::$4) goto muls8s::@8 to:muls8s::@3 muls8s::@3: scope:[muls8s] from muls8s::@10 muls8s::@2 muls8s::@8 - (signed word) muls8s::m#4 ? phi( muls8s::@10/(signed word) muls8s::m#2 muls8s::@2/(signed word) muls8s::m#7 muls8s::@8/(signed word) muls8s::m#1 ) - (signed word) muls8s::return#0 ? (signed word) muls8s::m#4 + (signed word) muls8s::m#4 ← phi( muls8s::@10/(signed word) muls8s::m#2 muls8s::@2/(signed word) muls8s::m#7 muls8s::@8/(signed word) muls8s::m#1 ) + (signed word) muls8s::return#0 ← (signed word) muls8s::m#4 to:muls8s::@return muls8s::@10: scope:[muls8s] from muls8s::@1 muls8s::@10 - (signed byte) muls8s::a#4 ? phi( muls8s::@1/(signed byte) muls8s::a#6 muls8s::@10/(signed byte) muls8s::a#4 ) - (signed byte) muls8s::i#2 ? phi( muls8s::@1/(signed byte) muls8s::i#0 muls8s::@10/(signed byte) muls8s::i#1 ) - (signed byte) muls8s::b#2 ? phi( muls8s::@1/(signed byte) muls8s::b#4 muls8s::@10/(signed byte) muls8s::b#2 ) - (signed word) muls8s::m#5 ? phi( muls8s::@1/(signed word) muls8s::m#8 muls8s::@10/(signed word) muls8s::m#2 ) - (signed word~) muls8s::$5 ? (signed word) muls8s::m#5 - (signed byte) muls8s::b#2 - (signed word) muls8s::m#2 ? (signed word~) muls8s::$5 - (signed byte) muls8s::i#1 ? -- (signed byte) muls8s::i#2 - (bool~) muls8s::$6 ? (signed byte) muls8s::i#1 != (signed byte) muls8s::a#4 + (signed byte) muls8s::a#4 ← phi( muls8s::@1/(signed byte) muls8s::a#6 muls8s::@10/(signed byte) muls8s::a#4 ) + (signed byte) muls8s::i#2 ← phi( muls8s::@1/(signed byte) muls8s::i#0 muls8s::@10/(signed byte) muls8s::i#1 ) + (signed byte) muls8s::b#2 ← phi( muls8s::@1/(signed byte) muls8s::b#4 muls8s::@10/(signed byte) muls8s::b#2 ) + (signed word) muls8s::m#5 ← phi( muls8s::@1/(signed word) muls8s::m#8 muls8s::@10/(signed word) muls8s::m#2 ) + (signed word~) muls8s::$5 ← (signed word) muls8s::m#5 - (signed byte) muls8s::b#2 + (signed word) muls8s::m#2 ← (signed word~) muls8s::$5 + (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 + (bool~) muls8s::$6 ← (signed byte) muls8s::i#1 != (signed byte) muls8s::a#4 if((bool~) muls8s::$6) goto muls8s::@10 to:muls8s::@3 muls8s::@return: scope:[muls8s] from muls8s::@3 - (signed word) muls8s::return#3 ? phi( muls8s::@3/(signed word) muls8s::return#0 ) - (signed word) muls8s::return#1 ? (signed word) muls8s::return#3 + (signed word) muls8s::return#3 ← phi( muls8s::@3/(signed word) muls8s::return#0 ) + (signed word) muls8s::return#1 ← (signed word) muls8s::return#3 return to:@return @36: scope:[] from @33 - (byte*) print_screen#6 ? phi( @33/(byte*) print_screen#7 ) - (byte*) print_char_cursor#162 ? phi( @33/(byte*) print_char_cursor#163 ) - (byte*) print_line_cursor#66 ? phi( @33/(byte*) print_line_cursor#67 ) - (byte[$200]) mula_sqr1_lo#0 ? { fill( $200, 0) } - (byte[$200]) mula_sqr1_hi#0 ? { fill( $200, 0) } - (byte[$200]) mula_sqr2_lo#0 ? { fill( $200, 0) } - (byte[$200]) mula_sqr2_hi#0 ? { fill( $200, 0) } + (byte*) print_screen#6 ← phi( @33/(byte*) print_screen#7 ) + (byte*) print_char_cursor#162 ← phi( @33/(byte*) print_char_cursor#163 ) + (byte*) print_line_cursor#66 ← phi( @33/(byte*) print_line_cursor#67 ) + (byte[$200]) mula_sqr1_lo#0 ← { fill( $200, 0) } + (byte[$200]) mula_sqr1_hi#0 ← { fill( $200, 0) } + (byte[$200]) mula_sqr2_lo#0 ← { fill( $200, 0) } + (byte[$200]) mula_sqr2_hi#0 ← { fill( $200, 0) } to:@42 mulf_init_asm: scope:[mulf_init_asm] from main::@2 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } - (byte*) mulf_init_asm::mem#0 ? ((byte*)) (byte/word/signed word/dword/signed dword) $ff - *((byte*) mulf_init_asm::mem#0) ? *((byte[$200]) mula_sqr1_lo#0) - *((byte*) mulf_init_asm::mem#0) ? *((byte[$200]) mula_sqr1_hi#0) - *((byte*) mulf_init_asm::mem#0) ? *((byte[$200]) mula_sqr2_lo#0) - *((byte*) mulf_init_asm::mem#0) ? *((byte[$200]) mula_sqr2_hi#0) + (byte*) mulf_init_asm::mem#0 ← ((byte*)) (byte/word/signed word/dword/signed dword) $ff + *((byte*) mulf_init_asm::mem#0) ← *((byte[$200]) mula_sqr1_lo#0) + *((byte*) mulf_init_asm::mem#0) ← *((byte[$200]) mula_sqr1_hi#0) + *((byte*) mulf_init_asm::mem#0) ← *((byte[$200]) mula_sqr2_lo#0) + *((byte*) mulf_init_asm::mem#0) ← *((byte[$200]) mula_sqr2_hi#0) to:mulf_init_asm::@return mulf_init_asm::@return: scope:[mulf_init_asm] from mulf_init_asm return to:@return mulf_tables_cmp: scope:[mulf_tables_cmp] from main::@3 - (byte*) print_line_cursor#90 ? phi( main::@3/(byte*) print_line_cursor#47 ) - (byte*) print_char_cursor#164 ? phi( main::@3/(byte*) print_char_cursor#142 ) - (byte*) mulf_tables_cmp::asm_sqr#0 ? (byte[$200]) mula_sqr1_lo#0 - (byte*) mulf_tables_cmp::kc_sqr#0 ? (byte[$200]) mulf_sqr1_lo#0 + (byte*) print_line_cursor#90 ← phi( main::@3/(byte*) print_line_cursor#47 ) + (byte*) print_char_cursor#164 ← phi( main::@3/(byte*) print_char_cursor#142 ) + (byte*) mulf_tables_cmp::asm_sqr#0 ← (byte[$200]) mula_sqr1_lo#0 + (byte*) mulf_tables_cmp::kc_sqr#0 ← (byte[$200]) mulf_sqr1_lo#0 to:mulf_tables_cmp::@1 mulf_tables_cmp::@1: scope:[mulf_tables_cmp] from mulf_tables_cmp mulf_tables_cmp::@2 - (byte*) print_line_cursor#79 ? phi( mulf_tables_cmp/(byte*) print_line_cursor#90 mulf_tables_cmp::@2/(byte*) print_line_cursor#69 ) - (byte*) print_char_cursor#156 ? phi( mulf_tables_cmp/(byte*) print_char_cursor#164 mulf_tables_cmp::@2/(byte*) print_char_cursor#157 ) - (byte*) mulf_tables_cmp::asm_sqr#2 ? phi( mulf_tables_cmp/(byte*) mulf_tables_cmp::asm_sqr#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::asm_sqr#1 ) - (byte*) mulf_tables_cmp::kc_sqr#2 ? phi( mulf_tables_cmp/(byte*) mulf_tables_cmp::kc_sqr#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::kc_sqr#1 ) - (bool~) mulf_tables_cmp::$2 ? *((byte*) mulf_tables_cmp::kc_sqr#2) != *((byte*) mulf_tables_cmp::asm_sqr#2) - (bool~) mulf_tables_cmp::$3 ? ! (bool~) mulf_tables_cmp::$2 + (byte*) print_line_cursor#79 ← phi( mulf_tables_cmp/(byte*) print_line_cursor#90 mulf_tables_cmp::@2/(byte*) print_line_cursor#69 ) + (byte*) print_char_cursor#156 ← phi( mulf_tables_cmp/(byte*) print_char_cursor#164 mulf_tables_cmp::@2/(byte*) print_char_cursor#157 ) + (byte*) mulf_tables_cmp::asm_sqr#2 ← phi( mulf_tables_cmp/(byte*) mulf_tables_cmp::asm_sqr#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::asm_sqr#1 ) + (byte*) mulf_tables_cmp::kc_sqr#2 ← phi( mulf_tables_cmp/(byte*) mulf_tables_cmp::kc_sqr#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::kc_sqr#1 ) + (bool~) mulf_tables_cmp::$2 ← *((byte*) mulf_tables_cmp::kc_sqr#2) != *((byte*) mulf_tables_cmp::asm_sqr#2) + (bool~) mulf_tables_cmp::$3 ← ! (bool~) mulf_tables_cmp::$2 if((bool~) mulf_tables_cmp::$3) goto mulf_tables_cmp::@2 to:mulf_tables_cmp::@3 mulf_tables_cmp::@2: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 - (byte*) print_line_cursor#69 ? phi( mulf_tables_cmp::@1/(byte*) print_line_cursor#79 ) - (byte*) print_char_cursor#157 ? phi( mulf_tables_cmp::@1/(byte*) print_char_cursor#156 ) - (byte*) mulf_tables_cmp::kc_sqr#3 ? phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::kc_sqr#2 ) - (byte*) mulf_tables_cmp::asm_sqr#3 ? phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::asm_sqr#2 ) - (byte*) mulf_tables_cmp::asm_sqr#1 ? ++ (byte*) mulf_tables_cmp::asm_sqr#3 - (byte*) mulf_tables_cmp::kc_sqr#1 ? ++ (byte*) mulf_tables_cmp::kc_sqr#3 - (word/signed word/dword/signed dword~) mulf_tables_cmp::$10 ? (word/signed word/dword/signed dword) $200 * (byte/signed byte/word/signed word/dword/signed dword) 4 - (byte*~) mulf_tables_cmp::$11 ? (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword~) mulf_tables_cmp::$10 - (bool~) mulf_tables_cmp::$12 ? (byte*) mulf_tables_cmp::kc_sqr#1 < (byte*~) mulf_tables_cmp::$11 + (byte*) print_line_cursor#69 ← phi( mulf_tables_cmp::@1/(byte*) print_line_cursor#79 ) + (byte*) print_char_cursor#157 ← phi( mulf_tables_cmp::@1/(byte*) print_char_cursor#156 ) + (byte*) mulf_tables_cmp::kc_sqr#3 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::kc_sqr#2 ) + (byte*) mulf_tables_cmp::asm_sqr#3 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::asm_sqr#2 ) + (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#3 + (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#3 + (word/signed word/dword/signed dword~) mulf_tables_cmp::$10 ← (word/signed word/dword/signed dword) $200 * (byte/signed byte/word/signed word/dword/signed dword) 4 + (byte*~) mulf_tables_cmp::$11 ← (byte[$200]) mulf_sqr1_lo#0 + (word/signed word/dword/signed dword~) mulf_tables_cmp::$10 + (bool~) mulf_tables_cmp::$12 ← (byte*) mulf_tables_cmp::kc_sqr#1 < (byte*~) mulf_tables_cmp::$11 if((bool~) mulf_tables_cmp::$12) goto mulf_tables_cmp::@1 to:mulf_tables_cmp::@5 mulf_tables_cmp::@3: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 - (byte*) print_line_cursor#91 ? phi( mulf_tables_cmp::@1/(byte*) print_line_cursor#79 ) - (byte*) mulf_tables_cmp::kc_sqr#7 ? phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::kc_sqr#2 ) - (byte*) mulf_tables_cmp::asm_sqr#5 ? phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::asm_sqr#2 ) - (byte*) print_char_cursor#143 ? phi( mulf_tables_cmp::@1/(byte*) print_char_cursor#156 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte*) print_str::str#1 ? (const string) mulf_tables_cmp::str + (byte*) print_line_cursor#91 ← phi( mulf_tables_cmp::@1/(byte*) print_line_cursor#79 ) + (byte*) mulf_tables_cmp::kc_sqr#7 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::kc_sqr#2 ) + (byte*) mulf_tables_cmp::asm_sqr#5 ← phi( mulf_tables_cmp::@1/(byte*) mulf_tables_cmp::asm_sqr#2 ) + (byte*) print_char_cursor#143 ← phi( mulf_tables_cmp::@1/(byte*) print_char_cursor#156 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte*) print_str::str#1 ← (const string) mulf_tables_cmp::str call print_str to:mulf_tables_cmp::@6 mulf_tables_cmp::@6: scope:[mulf_tables_cmp] from mulf_tables_cmp::@3 - (byte*) print_line_cursor#80 ? phi( mulf_tables_cmp::@3/(byte*) print_line_cursor#91 ) - (byte*) mulf_tables_cmp::kc_sqr#6 ? phi( mulf_tables_cmp::@3/(byte*) mulf_tables_cmp::kc_sqr#7 ) - (byte*) mulf_tables_cmp::asm_sqr#4 ? phi( mulf_tables_cmp::@3/(byte*) mulf_tables_cmp::asm_sqr#5 ) - (byte*) print_char_cursor#92 ? phi( mulf_tables_cmp::@3/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#27 ? (byte*) print_char_cursor#92 - (word~) mulf_tables_cmp::$5 ? ((word)) (byte*) mulf_tables_cmp::asm_sqr#4 - (word) print_word::w#1 ? (word~) mulf_tables_cmp::$5 + (byte*) print_line_cursor#80 ← phi( mulf_tables_cmp::@3/(byte*) print_line_cursor#91 ) + (byte*) mulf_tables_cmp::kc_sqr#6 ← phi( mulf_tables_cmp::@3/(byte*) mulf_tables_cmp::kc_sqr#7 ) + (byte*) mulf_tables_cmp::asm_sqr#4 ← phi( mulf_tables_cmp::@3/(byte*) mulf_tables_cmp::asm_sqr#5 ) + (byte*) print_char_cursor#92 ← phi( mulf_tables_cmp::@3/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#27 ← (byte*) print_char_cursor#92 + (word~) mulf_tables_cmp::$5 ← ((word)) (byte*) mulf_tables_cmp::asm_sqr#4 + (word) print_word::w#1 ← (word~) mulf_tables_cmp::$5 call print_word to:mulf_tables_cmp::@7 mulf_tables_cmp::@7: scope:[mulf_tables_cmp] from mulf_tables_cmp::@6 - (byte*) print_line_cursor#68 ? phi( mulf_tables_cmp::@6/(byte*) print_line_cursor#80 ) - (byte*) mulf_tables_cmp::kc_sqr#5 ? phi( mulf_tables_cmp::@6/(byte*) mulf_tables_cmp::kc_sqr#6 ) - (byte*) print_char_cursor#93 ? phi( mulf_tables_cmp::@6/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#28 ? (byte*) print_char_cursor#93 - (byte*) print_str::str#2 ? (const string) mulf_tables_cmp::str1 + (byte*) print_line_cursor#68 ← phi( mulf_tables_cmp::@6/(byte*) print_line_cursor#80 ) + (byte*) mulf_tables_cmp::kc_sqr#5 ← phi( mulf_tables_cmp::@6/(byte*) mulf_tables_cmp::kc_sqr#6 ) + (byte*) print_char_cursor#93 ← phi( mulf_tables_cmp::@6/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#28 ← (byte*) print_char_cursor#93 + (byte*) print_str::str#2 ← (const string) mulf_tables_cmp::str1 call print_str to:mulf_tables_cmp::@8 mulf_tables_cmp::@8: scope:[mulf_tables_cmp] from mulf_tables_cmp::@7 - (byte*) print_line_cursor#58 ? phi( mulf_tables_cmp::@7/(byte*) print_line_cursor#68 ) - (byte*) mulf_tables_cmp::kc_sqr#4 ? phi( mulf_tables_cmp::@7/(byte*) mulf_tables_cmp::kc_sqr#5 ) - (byte*) print_char_cursor#94 ? phi( mulf_tables_cmp::@7/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#29 ? (byte*) print_char_cursor#94 - (word~) mulf_tables_cmp::$8 ? ((word)) (byte*) mulf_tables_cmp::kc_sqr#4 - (word) print_word::w#2 ? (word~) mulf_tables_cmp::$8 + (byte*) print_line_cursor#58 ← phi( mulf_tables_cmp::@7/(byte*) print_line_cursor#68 ) + (byte*) mulf_tables_cmp::kc_sqr#4 ← phi( mulf_tables_cmp::@7/(byte*) mulf_tables_cmp::kc_sqr#5 ) + (byte*) print_char_cursor#94 ← phi( mulf_tables_cmp::@7/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#29 ← (byte*) print_char_cursor#94 + (word~) mulf_tables_cmp::$8 ← ((word)) (byte*) mulf_tables_cmp::kc_sqr#4 + (word) print_word::w#2 ← (word~) mulf_tables_cmp::$8 call print_word to:mulf_tables_cmp::@9 mulf_tables_cmp::@9: scope:[mulf_tables_cmp] from mulf_tables_cmp::@8 - (byte*) print_line_cursor#48 ? phi( mulf_tables_cmp::@8/(byte*) print_line_cursor#58 ) - (byte*) print_char_cursor#95 ? phi( mulf_tables_cmp::@8/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#30 ? (byte*) print_char_cursor#95 + (byte*) print_line_cursor#48 ← phi( mulf_tables_cmp::@8/(byte*) print_line_cursor#58 ) + (byte*) print_char_cursor#95 ← phi( mulf_tables_cmp::@8/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#30 ← (byte*) print_char_cursor#95 to:mulf_tables_cmp::@return mulf_tables_cmp::@return: scope:[mulf_tables_cmp] from mulf_tables_cmp::@11 mulf_tables_cmp::@9 - (byte*) print_line_cursor#32 ? phi( mulf_tables_cmp::@11/(byte*) print_line_cursor#11 mulf_tables_cmp::@9/(byte*) print_line_cursor#48 ) - (byte*) print_char_cursor#96 ? phi( mulf_tables_cmp::@11/(byte*) print_char_cursor#33 mulf_tables_cmp::@9/(byte*) print_char_cursor#30 ) - (byte*) print_char_cursor#31 ? (byte*) print_char_cursor#96 - (byte*) print_line_cursor#10 ? (byte*) print_line_cursor#32 + (byte*) print_line_cursor#32 ← phi( mulf_tables_cmp::@11/(byte*) print_line_cursor#11 mulf_tables_cmp::@9/(byte*) print_line_cursor#48 ) + (byte*) print_char_cursor#96 ← phi( mulf_tables_cmp::@11/(byte*) print_char_cursor#33 mulf_tables_cmp::@9/(byte*) print_char_cursor#30 ) + (byte*) print_char_cursor#31 ← (byte*) print_char_cursor#96 + (byte*) print_line_cursor#10 ← (byte*) print_line_cursor#32 return to:@return mulf_tables_cmp::@5: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2 - (byte*) print_line_cursor#59 ? phi( mulf_tables_cmp::@2/(byte*) print_line_cursor#69 ) - (byte*) print_char_cursor#144 ? phi( mulf_tables_cmp::@2/(byte*) print_char_cursor#157 ) - (byte*) print_str::str#3 ? (const string) mulf_tables_cmp::str2 + (byte*) print_line_cursor#59 ← phi( mulf_tables_cmp::@2/(byte*) print_line_cursor#69 ) + (byte*) print_char_cursor#144 ← phi( mulf_tables_cmp::@2/(byte*) print_char_cursor#157 ) + (byte*) print_str::str#3 ← (const string) mulf_tables_cmp::str2 call print_str to:mulf_tables_cmp::@10 mulf_tables_cmp::@10: scope:[mulf_tables_cmp] from mulf_tables_cmp::@5 - (byte*) print_line_cursor#49 ? phi( mulf_tables_cmp::@5/(byte*) print_line_cursor#59 ) - (byte*) print_char_cursor#97 ? phi( mulf_tables_cmp::@5/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#32 ? (byte*) print_char_cursor#97 + (byte*) print_line_cursor#49 ← phi( mulf_tables_cmp::@5/(byte*) print_line_cursor#59 ) + (byte*) print_char_cursor#97 ← phi( mulf_tables_cmp::@5/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#32 ← (byte*) print_char_cursor#97 call print_ln to:mulf_tables_cmp::@11 mulf_tables_cmp::@11: scope:[mulf_tables_cmp] from mulf_tables_cmp::@10 - (byte*) print_char_cursor#98 ? phi( mulf_tables_cmp::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#33 ? phi( mulf_tables_cmp::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#11 ? (byte*) print_line_cursor#33 - (byte*) print_char_cursor#33 ? (byte*) print_char_cursor#98 + (byte*) print_char_cursor#98 ← phi( mulf_tables_cmp::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#33 ← phi( mulf_tables_cmp::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#11 ← (byte*) print_line_cursor#33 + (byte*) print_char_cursor#33 ← (byte*) print_char_cursor#98 to:mulf_tables_cmp::@return mul8u_compare: scope:[mul8u_compare] from main::@4 - (byte*) print_line_cursor#108 ? phi( main::@4/(byte*) print_line_cursor#6 ) - (byte*) print_char_cursor#185 ? phi( main::@4/(byte*) print_char_cursor#23 ) - (byte) mul8u_compare::a#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#108 ← phi( main::@4/(byte*) print_line_cursor#6 ) + (byte*) print_char_cursor#185 ← phi( main::@4/(byte*) print_char_cursor#23 ) + (byte) mul8u_compare::a#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul8u_compare::@1 mul8u_compare::@1: scope:[mul8u_compare] from mul8u_compare mul8u_compare::@10 - (byte*) print_line_cursor#104 ? phi( mul8u_compare/(byte*) print_line_cursor#108 mul8u_compare::@10/(byte*) print_line_cursor#72 ) - (byte*) print_char_cursor#183 ? phi( mul8u_compare/(byte*) print_char_cursor#185 mul8u_compare::@10/(byte*) print_char_cursor#159 ) - (byte) mul8u_compare::a#7 ? phi( mul8u_compare/(byte) mul8u_compare::a#0 mul8u_compare::@10/(byte) mul8u_compare::a#1 ) - (byte) mul8u_compare::b#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#104 ← phi( mul8u_compare/(byte*) print_line_cursor#108 mul8u_compare::@10/(byte*) print_line_cursor#72 ) + (byte*) print_char_cursor#183 ← phi( mul8u_compare/(byte*) print_char_cursor#185 mul8u_compare::@10/(byte*) print_char_cursor#159 ) + (byte) mul8u_compare::a#7 ← phi( mul8u_compare/(byte) mul8u_compare::a#0 mul8u_compare::@10/(byte) mul8u_compare::a#1 ) + (byte) mul8u_compare::b#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul8u_compare::@2 mul8u_compare::@2: scope:[mul8u_compare] from mul8u_compare::@1 mul8u_compare::@5 - (byte*) print_line_cursor#100 ? phi( mul8u_compare::@1/(byte*) print_line_cursor#104 mul8u_compare::@5/(byte*) print_line_cursor#83 ) - (byte*) print_char_cursor#181 ? phi( mul8u_compare::@1/(byte*) print_char_cursor#183 mul8u_compare::@5/(byte*) print_char_cursor#167 ) - (byte) mul8u_compare::b#2 ? phi( mul8u_compare::@1/(byte) mul8u_compare::b#0 mul8u_compare::@5/(byte) mul8u_compare::b#1 ) - (byte) mul8u_compare::a#2 ? phi( mul8u_compare::@1/(byte) mul8u_compare::a#7 mul8u_compare::@5/(byte) mul8u_compare::a#8 ) - (byte) muls8u::a#0 ? (byte) mul8u_compare::a#2 - (byte) muls8u::b#0 ? (byte) mul8u_compare::b#2 + (byte*) print_line_cursor#100 ← phi( mul8u_compare::@1/(byte*) print_line_cursor#104 mul8u_compare::@5/(byte*) print_line_cursor#83 ) + (byte*) print_char_cursor#181 ← phi( mul8u_compare::@1/(byte*) print_char_cursor#183 mul8u_compare::@5/(byte*) print_char_cursor#167 ) + (byte) mul8u_compare::b#2 ← phi( mul8u_compare::@1/(byte) mul8u_compare::b#0 mul8u_compare::@5/(byte) mul8u_compare::b#1 ) + (byte) mul8u_compare::a#2 ← phi( mul8u_compare::@1/(byte) mul8u_compare::a#7 mul8u_compare::@5/(byte) mul8u_compare::a#8 ) + (byte) muls8u::a#0 ← (byte) mul8u_compare::a#2 + (byte) muls8u::b#0 ← (byte) mul8u_compare::b#2 call muls8u - (word) muls8u::return#2 ? (word) muls8u::return#1 + (word) muls8u::return#2 ← (word) muls8u::return#1 to:mul8u_compare::@12 mul8u_compare::@12: scope:[mul8u_compare] from mul8u_compare::@2 - (byte*) print_line_cursor#96 ? phi( mul8u_compare::@2/(byte*) print_line_cursor#100 ) - (byte*) print_char_cursor#179 ? phi( mul8u_compare::@2/(byte*) print_char_cursor#181 ) - (byte) mul8u_compare::b#3 ? phi( mul8u_compare::@2/(byte) mul8u_compare::b#2 ) - (byte) mul8u_compare::a#3 ? phi( mul8u_compare::@2/(byte) mul8u_compare::a#2 ) - (word) muls8u::return#4 ? phi( mul8u_compare::@2/(word) muls8u::return#2 ) - (word~) mul8u_compare::$2 ? (word) muls8u::return#4 - (word) mul8u_compare::ms#0 ? (word~) mul8u_compare::$2 - (byte) mulf8u::a#0 ? (byte) mul8u_compare::a#3 - (byte) mulf8u::b#0 ? (byte) mul8u_compare::b#3 + (byte*) print_line_cursor#96 ← phi( mul8u_compare::@2/(byte*) print_line_cursor#100 ) + (byte*) print_char_cursor#179 ← phi( mul8u_compare::@2/(byte*) print_char_cursor#181 ) + (byte) mul8u_compare::b#3 ← phi( mul8u_compare::@2/(byte) mul8u_compare::b#2 ) + (byte) mul8u_compare::a#3 ← phi( mul8u_compare::@2/(byte) mul8u_compare::a#2 ) + (word) muls8u::return#4 ← phi( mul8u_compare::@2/(word) muls8u::return#2 ) + (word~) mul8u_compare::$2 ← (word) muls8u::return#4 + (word) mul8u_compare::ms#0 ← (word~) mul8u_compare::$2 + (byte) mulf8u::a#0 ← (byte) mul8u_compare::a#3 + (byte) mulf8u::b#0 ← (byte) mul8u_compare::b#3 call mulf8u - (word) mulf8u::return#2 ? (word) mulf8u::return#1 + (word) mulf8u::return#2 ← (word) mulf8u::return#1 to:mul8u_compare::@13 mul8u_compare::@13: scope:[mul8u_compare] from mul8u_compare::@12 - (byte*) print_line_cursor#92 ? phi( mul8u_compare::@12/(byte*) print_line_cursor#96 ) - (byte*) print_char_cursor#177 ? phi( mul8u_compare::@12/(byte*) print_char_cursor#179 ) - (word) mul8u_compare::ms#4 ? phi( mul8u_compare::@12/(word) mul8u_compare::ms#0 ) - (byte) mul8u_compare::b#4 ? phi( mul8u_compare::@12/(byte) mul8u_compare::b#3 ) - (byte) mul8u_compare::a#4 ? phi( mul8u_compare::@12/(byte) mul8u_compare::a#3 ) - (word) mulf8u::return#4 ? phi( mul8u_compare::@12/(word) mulf8u::return#2 ) - (word~) mul8u_compare::$3 ? (word) mulf8u::return#4 - (word) mul8u_compare::mf#0 ? (word~) mul8u_compare::$3 - (byte) mul8u::a#2 ? (byte) mul8u_compare::a#4 - (byte) mul8u::b#1 ? (byte) mul8u_compare::b#4 + (byte*) print_line_cursor#92 ← phi( mul8u_compare::@12/(byte*) print_line_cursor#96 ) + (byte*) print_char_cursor#177 ← phi( mul8u_compare::@12/(byte*) print_char_cursor#179 ) + (word) mul8u_compare::ms#4 ← phi( mul8u_compare::@12/(word) mul8u_compare::ms#0 ) + (byte) mul8u_compare::b#4 ← phi( mul8u_compare::@12/(byte) mul8u_compare::b#3 ) + (byte) mul8u_compare::a#4 ← phi( mul8u_compare::@12/(byte) mul8u_compare::a#3 ) + (word) mulf8u::return#4 ← phi( mul8u_compare::@12/(word) mulf8u::return#2 ) + (word~) mul8u_compare::$3 ← (word) mulf8u::return#4 + (word) mul8u_compare::mf#0 ← (word~) mul8u_compare::$3 + (byte) mul8u::a#2 ← (byte) mul8u_compare::a#4 + (byte) mul8u::b#1 ← (byte) mul8u_compare::b#4 call mul8u - (word) mul8u::return#3 ? (word) mul8u::return#1 + (word) mul8u::return#3 ← (word) mul8u::return#1 to:mul8u_compare::@14 mul8u_compare::@14: scope:[mul8u_compare] from mul8u_compare::@13 - (byte*) print_line_cursor#81 ? phi( mul8u_compare::@13/(byte*) print_line_cursor#92 ) - (byte*) print_char_cursor#172 ? phi( mul8u_compare::@13/(byte*) print_char_cursor#177 ) - (byte) mul8u_compare::a#12 ? phi( mul8u_compare::@13/(byte) mul8u_compare::a#4 ) - (byte) mul8u_compare::b#10 ? phi( mul8u_compare::@13/(byte) mul8u_compare::b#4 ) - (word) mul8u_compare::mf#1 ? phi( mul8u_compare::@13/(word) mul8u_compare::mf#0 ) - (word) mul8u_compare::ms#1 ? phi( mul8u_compare::@13/(word) mul8u_compare::ms#4 ) - (word) mul8u::return#6 ? phi( mul8u_compare::@13/(word) mul8u::return#3 ) - (word~) mul8u_compare::$4 ? (word) mul8u::return#6 - (word) mul8u_compare::mn#0 ? (word~) mul8u_compare::$4 - (byte) mul8u_compare::ok#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul8u_compare::$5 ? (word) mul8u_compare::ms#1 != (word) mul8u_compare::mf#1 - (bool~) mul8u_compare::$6 ? ! (bool~) mul8u_compare::$5 + (byte*) print_line_cursor#81 ← phi( mul8u_compare::@13/(byte*) print_line_cursor#92 ) + (byte*) print_char_cursor#172 ← phi( mul8u_compare::@13/(byte*) print_char_cursor#177 ) + (byte) mul8u_compare::a#12 ← phi( mul8u_compare::@13/(byte) mul8u_compare::a#4 ) + (byte) mul8u_compare::b#10 ← phi( mul8u_compare::@13/(byte) mul8u_compare::b#4 ) + (word) mul8u_compare::mf#1 ← phi( mul8u_compare::@13/(word) mul8u_compare::mf#0 ) + (word) mul8u_compare::ms#1 ← phi( mul8u_compare::@13/(word) mul8u_compare::ms#4 ) + (word) mul8u::return#6 ← phi( mul8u_compare::@13/(word) mul8u::return#3 ) + (word~) mul8u_compare::$4 ← (word) mul8u::return#6 + (word) mul8u_compare::mn#0 ← (word~) mul8u_compare::$4 + (byte) mul8u_compare::ok#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul8u_compare::$5 ← (word) mul8u_compare::ms#1 != (word) mul8u_compare::mf#1 + (bool~) mul8u_compare::$6 ← ! (bool~) mul8u_compare::$5 if((bool~) mul8u_compare::$6) goto mul8u_compare::@3 to:mul8u_compare::@6 mul8u_compare::@3: scope:[mul8u_compare] from mul8u_compare::@14 mul8u_compare::@6 - (byte*) print_line_cursor#70 ? phi( mul8u_compare::@14/(byte*) print_line_cursor#81 mul8u_compare::@6/(byte*) print_line_cursor#82 ) - (byte*) print_char_cursor#165 ? phi( mul8u_compare::@14/(byte*) print_char_cursor#172 mul8u_compare::@6/(byte*) print_char_cursor#173 ) - (word) mul8u_compare::mf#4 ? phi( mul8u_compare::@14/(word) mul8u_compare::mf#1 mul8u_compare::@6/(word) mul8u_compare::mf#6 ) - (byte) mul8u_compare::a#10 ? phi( mul8u_compare::@14/(byte) mul8u_compare::a#12 mul8u_compare::@6/(byte) mul8u_compare::a#13 ) - (byte) mul8u_compare::b#8 ? phi( mul8u_compare::@14/(byte) mul8u_compare::b#10 mul8u_compare::@6/(byte) mul8u_compare::b#11 ) - (byte) mul8u_compare::ok#4 ? phi( mul8u_compare::@14/(byte) mul8u_compare::ok#0 mul8u_compare::@6/(byte) mul8u_compare::ok#1 ) - (word) mul8u_compare::mn#1 ? phi( mul8u_compare::@14/(word) mul8u_compare::mn#0 mul8u_compare::@6/(word) mul8u_compare::mn#3 ) - (word) mul8u_compare::ms#2 ? phi( mul8u_compare::@14/(word) mul8u_compare::ms#1 mul8u_compare::@6/(word) mul8u_compare::ms#5 ) - (bool~) mul8u_compare::$7 ? (word) mul8u_compare::ms#2 != (word) mul8u_compare::mn#1 - (bool~) mul8u_compare::$8 ? ! (bool~) mul8u_compare::$7 + (byte*) print_line_cursor#70 ← phi( mul8u_compare::@14/(byte*) print_line_cursor#81 mul8u_compare::@6/(byte*) print_line_cursor#82 ) + (byte*) print_char_cursor#165 ← phi( mul8u_compare::@14/(byte*) print_char_cursor#172 mul8u_compare::@6/(byte*) print_char_cursor#173 ) + (word) mul8u_compare::mf#4 ← phi( mul8u_compare::@14/(word) mul8u_compare::mf#1 mul8u_compare::@6/(word) mul8u_compare::mf#6 ) + (byte) mul8u_compare::a#10 ← phi( mul8u_compare::@14/(byte) mul8u_compare::a#12 mul8u_compare::@6/(byte) mul8u_compare::a#13 ) + (byte) mul8u_compare::b#8 ← phi( mul8u_compare::@14/(byte) mul8u_compare::b#10 mul8u_compare::@6/(byte) mul8u_compare::b#11 ) + (byte) mul8u_compare::ok#4 ← phi( mul8u_compare::@14/(byte) mul8u_compare::ok#0 mul8u_compare::@6/(byte) mul8u_compare::ok#1 ) + (word) mul8u_compare::mn#1 ← phi( mul8u_compare::@14/(word) mul8u_compare::mn#0 mul8u_compare::@6/(word) mul8u_compare::mn#3 ) + (word) mul8u_compare::ms#2 ← phi( mul8u_compare::@14/(word) mul8u_compare::ms#1 mul8u_compare::@6/(word) mul8u_compare::ms#5 ) + (bool~) mul8u_compare::$7 ← (word) mul8u_compare::ms#2 != (word) mul8u_compare::mn#1 + (bool~) mul8u_compare::$8 ← ! (bool~) mul8u_compare::$7 if((bool~) mul8u_compare::$8) goto mul8u_compare::@4 to:mul8u_compare::@7 mul8u_compare::@6: scope:[mul8u_compare] from mul8u_compare::@14 - (byte*) print_line_cursor#82 ? phi( mul8u_compare::@14/(byte*) print_line_cursor#81 ) - (byte*) print_char_cursor#173 ? phi( mul8u_compare::@14/(byte*) print_char_cursor#172 ) - (word) mul8u_compare::mf#6 ? phi( mul8u_compare::@14/(word) mul8u_compare::mf#1 ) - (byte) mul8u_compare::a#13 ? phi( mul8u_compare::@14/(byte) mul8u_compare::a#12 ) - (byte) mul8u_compare::b#11 ? phi( mul8u_compare::@14/(byte) mul8u_compare::b#10 ) - (word) mul8u_compare::mn#3 ? phi( mul8u_compare::@14/(word) mul8u_compare::mn#0 ) - (word) mul8u_compare::ms#5 ? phi( mul8u_compare::@14/(word) mul8u_compare::ms#1 ) - (byte) mul8u_compare::ok#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#82 ← phi( mul8u_compare::@14/(byte*) print_line_cursor#81 ) + (byte*) print_char_cursor#173 ← phi( mul8u_compare::@14/(byte*) print_char_cursor#172 ) + (word) mul8u_compare::mf#6 ← phi( mul8u_compare::@14/(word) mul8u_compare::mf#1 ) + (byte) mul8u_compare::a#13 ← phi( mul8u_compare::@14/(byte) mul8u_compare::a#12 ) + (byte) mul8u_compare::b#11 ← phi( mul8u_compare::@14/(byte) mul8u_compare::b#10 ) + (word) mul8u_compare::mn#3 ← phi( mul8u_compare::@14/(word) mul8u_compare::mn#0 ) + (word) mul8u_compare::ms#5 ← phi( mul8u_compare::@14/(word) mul8u_compare::ms#1 ) + (byte) mul8u_compare::ok#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul8u_compare::@3 mul8u_compare::@4: scope:[mul8u_compare] from mul8u_compare::@3 mul8u_compare::@7 - (byte*) print_line_cursor#60 ? phi( mul8u_compare::@3/(byte*) print_line_cursor#70 mul8u_compare::@7/(byte*) print_line_cursor#71 ) - (byte*) print_char_cursor#158 ? phi( mul8u_compare::@3/(byte*) print_char_cursor#165 mul8u_compare::@7/(byte*) print_char_cursor#166 ) - (word) mul8u_compare::mf#3 ? phi( mul8u_compare::@3/(word) mul8u_compare::mf#4 mul8u_compare::@7/(word) mul8u_compare::mf#5 ) - (word) mul8u_compare::mn#4 ? phi( mul8u_compare::@3/(word) mul8u_compare::mn#1 mul8u_compare::@7/(word) mul8u_compare::mn#5 ) - (word) mul8u_compare::ms#6 ? phi( mul8u_compare::@3/(word) mul8u_compare::ms#2 mul8u_compare::@7/(word) mul8u_compare::ms#7 ) - (byte) mul8u_compare::a#9 ? phi( mul8u_compare::@3/(byte) mul8u_compare::a#10 mul8u_compare::@7/(byte) mul8u_compare::a#11 ) - (byte) mul8u_compare::b#7 ? phi( mul8u_compare::@3/(byte) mul8u_compare::b#8 mul8u_compare::@7/(byte) mul8u_compare::b#9 ) - (byte) mul8u_compare::ok#3 ? phi( mul8u_compare::@3/(byte) mul8u_compare::ok#4 mul8u_compare::@7/(byte) mul8u_compare::ok#2 ) - (bool~) mul8u_compare::$9 ? (byte) mul8u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8u_compare::$10 ? ! (bool~) mul8u_compare::$9 + (byte*) print_line_cursor#60 ← phi( mul8u_compare::@3/(byte*) print_line_cursor#70 mul8u_compare::@7/(byte*) print_line_cursor#71 ) + (byte*) print_char_cursor#158 ← phi( mul8u_compare::@3/(byte*) print_char_cursor#165 mul8u_compare::@7/(byte*) print_char_cursor#166 ) + (word) mul8u_compare::mf#3 ← phi( mul8u_compare::@3/(word) mul8u_compare::mf#4 mul8u_compare::@7/(word) mul8u_compare::mf#5 ) + (word) mul8u_compare::mn#4 ← phi( mul8u_compare::@3/(word) mul8u_compare::mn#1 mul8u_compare::@7/(word) mul8u_compare::mn#5 ) + (word) mul8u_compare::ms#6 ← phi( mul8u_compare::@3/(word) mul8u_compare::ms#2 mul8u_compare::@7/(word) mul8u_compare::ms#7 ) + (byte) mul8u_compare::a#9 ← phi( mul8u_compare::@3/(byte) mul8u_compare::a#10 mul8u_compare::@7/(byte) mul8u_compare::a#11 ) + (byte) mul8u_compare::b#7 ← phi( mul8u_compare::@3/(byte) mul8u_compare::b#8 mul8u_compare::@7/(byte) mul8u_compare::b#9 ) + (byte) mul8u_compare::ok#3 ← phi( mul8u_compare::@3/(byte) mul8u_compare::ok#4 mul8u_compare::@7/(byte) mul8u_compare::ok#2 ) + (bool~) mul8u_compare::$9 ← (byte) mul8u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8u_compare::$10 ← ! (bool~) mul8u_compare::$9 if((bool~) mul8u_compare::$10) goto mul8u_compare::@5 to:mul8u_compare::@8 mul8u_compare::@7: scope:[mul8u_compare] from mul8u_compare::@3 - (byte*) print_line_cursor#71 ? phi( mul8u_compare::@3/(byte*) print_line_cursor#70 ) - (byte*) print_char_cursor#166 ? phi( mul8u_compare::@3/(byte*) print_char_cursor#165 ) - (word) mul8u_compare::mf#5 ? phi( mul8u_compare::@3/(word) mul8u_compare::mf#4 ) - (word) mul8u_compare::mn#5 ? phi( mul8u_compare::@3/(word) mul8u_compare::mn#1 ) - (word) mul8u_compare::ms#7 ? phi( mul8u_compare::@3/(word) mul8u_compare::ms#2 ) - (byte) mul8u_compare::a#11 ? phi( mul8u_compare::@3/(byte) mul8u_compare::a#10 ) - (byte) mul8u_compare::b#9 ? phi( mul8u_compare::@3/(byte) mul8u_compare::b#8 ) - (byte) mul8u_compare::ok#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#71 ← phi( mul8u_compare::@3/(byte*) print_line_cursor#70 ) + (byte*) print_char_cursor#166 ← phi( mul8u_compare::@3/(byte*) print_char_cursor#165 ) + (word) mul8u_compare::mf#5 ← phi( mul8u_compare::@3/(word) mul8u_compare::mf#4 ) + (word) mul8u_compare::mn#5 ← phi( mul8u_compare::@3/(word) mul8u_compare::mn#1 ) + (word) mul8u_compare::ms#7 ← phi( mul8u_compare::@3/(word) mul8u_compare::ms#2 ) + (byte) mul8u_compare::a#11 ← phi( mul8u_compare::@3/(byte) mul8u_compare::a#10 ) + (byte) mul8u_compare::b#9 ← phi( mul8u_compare::@3/(byte) mul8u_compare::b#8 ) + (byte) mul8u_compare::ok#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul8u_compare::@4 mul8u_compare::@5: scope:[mul8u_compare] from mul8u_compare::@4 - (byte*) print_line_cursor#83 ? phi( mul8u_compare::@4/(byte*) print_line_cursor#60 ) - (byte*) print_char_cursor#167 ? phi( mul8u_compare::@4/(byte*) print_char_cursor#158 ) - (byte) mul8u_compare::a#8 ? phi( mul8u_compare::@4/(byte) mul8u_compare::a#9 ) - (byte) mul8u_compare::b#5 ? phi( mul8u_compare::@4/(byte) mul8u_compare::b#7 ) - (byte) mul8u_compare::b#1 ? (byte) mul8u_compare::b#5 + rangenext(0,$ff) - (bool~) mul8u_compare::$12 ? (byte) mul8u_compare::b#1 != rangelast(0,$ff) + (byte*) print_line_cursor#83 ← phi( mul8u_compare::@4/(byte*) print_line_cursor#60 ) + (byte*) print_char_cursor#167 ← phi( mul8u_compare::@4/(byte*) print_char_cursor#158 ) + (byte) mul8u_compare::a#8 ← phi( mul8u_compare::@4/(byte) mul8u_compare::a#9 ) + (byte) mul8u_compare::b#5 ← phi( mul8u_compare::@4/(byte) mul8u_compare::b#7 ) + (byte) mul8u_compare::b#1 ← (byte) mul8u_compare::b#5 + rangenext(0,$ff) + (bool~) mul8u_compare::$12 ← (byte) mul8u_compare::b#1 != rangelast(0,$ff) if((bool~) mul8u_compare::$12) goto mul8u_compare::@2 to:mul8u_compare::@10 mul8u_compare::@8: scope:[mul8u_compare] from mul8u_compare::@4 - (byte*) print_line_cursor#50 ? phi( mul8u_compare::@4/(byte*) print_line_cursor#60 ) - (byte*) print_char_cursor#145 ? phi( mul8u_compare::@4/(byte*) print_char_cursor#158 ) - (word) mul8u_compare::mf#2 ? phi( mul8u_compare::@4/(word) mul8u_compare::mf#3 ) - (word) mul8u_compare::mn#2 ? phi( mul8u_compare::@4/(word) mul8u_compare::mn#4 ) - (word) mul8u_compare::ms#3 ? phi( mul8u_compare::@4/(word) mul8u_compare::ms#6 ) - (byte) mul8u_compare::b#6 ? phi( mul8u_compare::@4/(byte) mul8u_compare::b#7 ) - (byte) mul8u_compare::a#5 ? phi( mul8u_compare::@4/(byte) mul8u_compare::a#9 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (byte) mul8u_error::a#0 ? (byte) mul8u_compare::a#5 - (byte) mul8u_error::b#0 ? (byte) mul8u_compare::b#6 - (word) mul8u_error::ms#0 ? (word) mul8u_compare::ms#3 - (word) mul8u_error::mn#0 ? (word) mul8u_compare::mn#2 - (word) mul8u_error::mf#0 ? (word) mul8u_compare::mf#2 + (byte*) print_line_cursor#50 ← phi( mul8u_compare::@4/(byte*) print_line_cursor#60 ) + (byte*) print_char_cursor#145 ← phi( mul8u_compare::@4/(byte*) print_char_cursor#158 ) + (word) mul8u_compare::mf#2 ← phi( mul8u_compare::@4/(word) mul8u_compare::mf#3 ) + (word) mul8u_compare::mn#2 ← phi( mul8u_compare::@4/(word) mul8u_compare::mn#4 ) + (word) mul8u_compare::ms#3 ← phi( mul8u_compare::@4/(word) mul8u_compare::ms#6 ) + (byte) mul8u_compare::b#6 ← phi( mul8u_compare::@4/(byte) mul8u_compare::b#7 ) + (byte) mul8u_compare::a#5 ← phi( mul8u_compare::@4/(byte) mul8u_compare::a#9 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (byte) mul8u_error::a#0 ← (byte) mul8u_compare::a#5 + (byte) mul8u_error::b#0 ← (byte) mul8u_compare::b#6 + (word) mul8u_error::ms#0 ← (word) mul8u_compare::ms#3 + (word) mul8u_error::mn#0 ← (word) mul8u_compare::mn#2 + (word) mul8u_error::mf#0 ← (word) mul8u_compare::mf#2 call mul8u_error to:mul8u_compare::@15 mul8u_compare::@15: scope:[mul8u_compare] from mul8u_compare::@8 - (byte*) print_line_cursor#34 ? phi( mul8u_compare::@8/(byte*) print_line_cursor#16 ) - (byte*) print_char_cursor#99 ? phi( mul8u_compare::@8/(byte*) print_char_cursor#49 ) - (byte*) print_char_cursor#34 ? (byte*) print_char_cursor#99 - (byte*) print_line_cursor#12 ? (byte*) print_line_cursor#34 + (byte*) print_line_cursor#34 ← phi( mul8u_compare::@8/(byte*) print_line_cursor#16 ) + (byte*) print_char_cursor#99 ← phi( mul8u_compare::@8/(byte*) print_char_cursor#49 ) + (byte*) print_char_cursor#34 ← (byte*) print_char_cursor#99 + (byte*) print_line_cursor#12 ← (byte*) print_line_cursor#34 to:mul8u_compare::@return mul8u_compare::@return: scope:[mul8u_compare] from mul8u_compare::@15 mul8u_compare::@17 - (byte*) print_line_cursor#35 ? phi( mul8u_compare::@15/(byte*) print_line_cursor#12 mul8u_compare::@17/(byte*) print_line_cursor#14 ) - (byte*) print_char_cursor#100 ? phi( mul8u_compare::@15/(byte*) print_char_cursor#34 mul8u_compare::@17/(byte*) print_char_cursor#37 ) - (byte*) print_char_cursor#35 ? (byte*) print_char_cursor#100 - (byte*) print_line_cursor#13 ? (byte*) print_line_cursor#35 + (byte*) print_line_cursor#35 ← phi( mul8u_compare::@15/(byte*) print_line_cursor#12 mul8u_compare::@17/(byte*) print_line_cursor#14 ) + (byte*) print_char_cursor#100 ← phi( mul8u_compare::@15/(byte*) print_char_cursor#34 mul8u_compare::@17/(byte*) print_char_cursor#37 ) + (byte*) print_char_cursor#35 ← (byte*) print_char_cursor#100 + (byte*) print_line_cursor#13 ← (byte*) print_line_cursor#35 return to:@return mul8u_compare::@10: scope:[mul8u_compare] from mul8u_compare::@5 - (byte*) print_line_cursor#72 ? phi( mul8u_compare::@5/(byte*) print_line_cursor#83 ) - (byte*) print_char_cursor#159 ? phi( mul8u_compare::@5/(byte*) print_char_cursor#167 ) - (byte) mul8u_compare::a#6 ? phi( mul8u_compare::@5/(byte) mul8u_compare::a#8 ) - (byte) mul8u_compare::a#1 ? (byte) mul8u_compare::a#6 + rangenext(0,$ff) - (bool~) mul8u_compare::$13 ? (byte) mul8u_compare::a#1 != rangelast(0,$ff) + (byte*) print_line_cursor#72 ← phi( mul8u_compare::@5/(byte*) print_line_cursor#83 ) + (byte*) print_char_cursor#159 ← phi( mul8u_compare::@5/(byte*) print_char_cursor#167 ) + (byte) mul8u_compare::a#6 ← phi( mul8u_compare::@5/(byte) mul8u_compare::a#8 ) + (byte) mul8u_compare::a#1 ← (byte) mul8u_compare::a#6 + rangenext(0,$ff) + (bool~) mul8u_compare::$13 ← (byte) mul8u_compare::a#1 != rangelast(0,$ff) if((bool~) mul8u_compare::$13) goto mul8u_compare::@1 to:mul8u_compare::@11 mul8u_compare::@11: scope:[mul8u_compare] from mul8u_compare::@10 - (byte*) print_line_cursor#61 ? phi( mul8u_compare::@10/(byte*) print_line_cursor#72 ) - (byte*) print_char_cursor#146 ? phi( mul8u_compare::@10/(byte*) print_char_cursor#159 ) - (byte*) print_str::str#4 ? (const string) mul8u_compare::str + (byte*) print_line_cursor#61 ← phi( mul8u_compare::@10/(byte*) print_line_cursor#72 ) + (byte*) print_char_cursor#146 ← phi( mul8u_compare::@10/(byte*) print_char_cursor#159 ) + (byte*) print_str::str#4 ← (const string) mul8u_compare::str call print_str to:mul8u_compare::@16 mul8u_compare::@16: scope:[mul8u_compare] from mul8u_compare::@11 - (byte*) print_line_cursor#51 ? phi( mul8u_compare::@11/(byte*) print_line_cursor#61 ) - (byte*) print_char_cursor#101 ? phi( mul8u_compare::@11/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#36 ? (byte*) print_char_cursor#101 + (byte*) print_line_cursor#51 ← phi( mul8u_compare::@11/(byte*) print_line_cursor#61 ) + (byte*) print_char_cursor#101 ← phi( mul8u_compare::@11/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#36 ← (byte*) print_char_cursor#101 call print_ln to:mul8u_compare::@17 mul8u_compare::@17: scope:[mul8u_compare] from mul8u_compare::@16 - (byte*) print_char_cursor#102 ? phi( mul8u_compare::@16/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#36 ? phi( mul8u_compare::@16/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#14 ? (byte*) print_line_cursor#36 - (byte*) print_char_cursor#37 ? (byte*) print_char_cursor#102 + (byte*) print_char_cursor#102 ← phi( mul8u_compare::@16/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#36 ← phi( mul8u_compare::@16/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#14 ← (byte*) print_line_cursor#36 + (byte*) print_char_cursor#37 ← (byte*) print_char_cursor#102 to:mul8u_compare::@return mul8u_error: scope:[mul8u_error] from mul8u_compare::@8 - (byte*) print_line_cursor#114 ? phi( mul8u_compare::@8/(byte*) print_line_cursor#50 ) - (word) mul8u_error::mf#10 ? phi( mul8u_compare::@8/(word) mul8u_error::mf#0 ) - (word) mul8u_error::mn#8 ? phi( mul8u_compare::@8/(word) mul8u_error::mn#0 ) - (word) mul8u_error::ms#6 ? phi( mul8u_compare::@8/(word) mul8u_error::ms#0 ) - (byte) mul8u_error::b#4 ? phi( mul8u_compare::@8/(byte) mul8u_error::b#0 ) - (byte) mul8u_error::a#2 ? phi( mul8u_compare::@8/(byte) mul8u_error::a#0 ) - (byte*) print_char_cursor#147 ? phi( mul8u_compare::@8/(byte*) print_char_cursor#145 ) - (byte*) print_str::str#5 ? (const string) mul8u_error::str + (byte*) print_line_cursor#114 ← phi( mul8u_compare::@8/(byte*) print_line_cursor#50 ) + (word) mul8u_error::mf#10 ← phi( mul8u_compare::@8/(word) mul8u_error::mf#0 ) + (word) mul8u_error::mn#8 ← phi( mul8u_compare::@8/(word) mul8u_error::mn#0 ) + (word) mul8u_error::ms#6 ← phi( mul8u_compare::@8/(word) mul8u_error::ms#0 ) + (byte) mul8u_error::b#4 ← phi( mul8u_compare::@8/(byte) mul8u_error::b#0 ) + (byte) mul8u_error::a#2 ← phi( mul8u_compare::@8/(byte) mul8u_error::a#0 ) + (byte*) print_char_cursor#147 ← phi( mul8u_compare::@8/(byte*) print_char_cursor#145 ) + (byte*) print_str::str#5 ← (const string) mul8u_error::str call print_str to:mul8u_error::@1 mul8u_error::@1: scope:[mul8u_error] from mul8u_error - (byte*) print_line_cursor#112 ? phi( mul8u_error/(byte*) print_line_cursor#114 ) - (word) mul8u_error::mf#9 ? phi( mul8u_error/(word) mul8u_error::mf#10 ) - (word) mul8u_error::mn#7 ? phi( mul8u_error/(word) mul8u_error::mn#8 ) - (word) mul8u_error::ms#5 ? phi( mul8u_error/(word) mul8u_error::ms#6 ) - (byte) mul8u_error::b#3 ? phi( mul8u_error/(byte) mul8u_error::b#4 ) - (byte) mul8u_error::a#1 ? phi( mul8u_error/(byte) mul8u_error::a#2 ) - (byte*) print_char_cursor#103 ? phi( mul8u_error/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#38 ? (byte*) print_char_cursor#103 - (byte) print_byte::b#3 ? (byte) mul8u_error::a#1 + (byte*) print_line_cursor#112 ← phi( mul8u_error/(byte*) print_line_cursor#114 ) + (word) mul8u_error::mf#9 ← phi( mul8u_error/(word) mul8u_error::mf#10 ) + (word) mul8u_error::mn#7 ← phi( mul8u_error/(word) mul8u_error::mn#8 ) + (word) mul8u_error::ms#5 ← phi( mul8u_error/(word) mul8u_error::ms#6 ) + (byte) mul8u_error::b#3 ← phi( mul8u_error/(byte) mul8u_error::b#4 ) + (byte) mul8u_error::a#1 ← phi( mul8u_error/(byte) mul8u_error::a#2 ) + (byte*) print_char_cursor#103 ← phi( mul8u_error/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#38 ← (byte*) print_char_cursor#103 + (byte) print_byte::b#3 ← (byte) mul8u_error::a#1 call print_byte to:mul8u_error::@2 mul8u_error::@2: scope:[mul8u_error] from mul8u_error::@1 - (byte*) print_line_cursor#109 ? phi( mul8u_error::@1/(byte*) print_line_cursor#112 ) - (word) mul8u_error::mf#8 ? phi( mul8u_error::@1/(word) mul8u_error::mf#9 ) - (word) mul8u_error::mn#6 ? phi( mul8u_error::@1/(word) mul8u_error::mn#7 ) - (word) mul8u_error::ms#4 ? phi( mul8u_error::@1/(word) mul8u_error::ms#5 ) - (byte) mul8u_error::b#2 ? phi( mul8u_error::@1/(byte) mul8u_error::b#3 ) - (byte*) print_char_cursor#104 ? phi( mul8u_error::@1/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#39 ? (byte*) print_char_cursor#104 - (byte*) print_str::str#6 ? (const string) mul8u_error::str1 + (byte*) print_line_cursor#109 ← phi( mul8u_error::@1/(byte*) print_line_cursor#112 ) + (word) mul8u_error::mf#8 ← phi( mul8u_error::@1/(word) mul8u_error::mf#9 ) + (word) mul8u_error::mn#6 ← phi( mul8u_error::@1/(word) mul8u_error::mn#7 ) + (word) mul8u_error::ms#4 ← phi( mul8u_error::@1/(word) mul8u_error::ms#5 ) + (byte) mul8u_error::b#2 ← phi( mul8u_error::@1/(byte) mul8u_error::b#3 ) + (byte*) print_char_cursor#104 ← phi( mul8u_error::@1/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#39 ← (byte*) print_char_cursor#104 + (byte*) print_str::str#6 ← (const string) mul8u_error::str1 call print_str to:mul8u_error::@3 mul8u_error::@3: scope:[mul8u_error] from mul8u_error::@2 - (byte*) print_line_cursor#105 ? phi( mul8u_error::@2/(byte*) print_line_cursor#109 ) - (word) mul8u_error::mf#7 ? phi( mul8u_error::@2/(word) mul8u_error::mf#8 ) - (word) mul8u_error::mn#5 ? phi( mul8u_error::@2/(word) mul8u_error::mn#6 ) - (word) mul8u_error::ms#3 ? phi( mul8u_error::@2/(word) mul8u_error::ms#4 ) - (byte) mul8u_error::b#1 ? phi( mul8u_error::@2/(byte) mul8u_error::b#2 ) - (byte*) print_char_cursor#105 ? phi( mul8u_error::@2/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#40 ? (byte*) print_char_cursor#105 - (byte) print_byte::b#4 ? (byte) mul8u_error::b#1 + (byte*) print_line_cursor#105 ← phi( mul8u_error::@2/(byte*) print_line_cursor#109 ) + (word) mul8u_error::mf#7 ← phi( mul8u_error::@2/(word) mul8u_error::mf#8 ) + (word) mul8u_error::mn#5 ← phi( mul8u_error::@2/(word) mul8u_error::mn#6 ) + (word) mul8u_error::ms#3 ← phi( mul8u_error::@2/(word) mul8u_error::ms#4 ) + (byte) mul8u_error::b#1 ← phi( mul8u_error::@2/(byte) mul8u_error::b#2 ) + (byte*) print_char_cursor#105 ← phi( mul8u_error::@2/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#40 ← (byte*) print_char_cursor#105 + (byte) print_byte::b#4 ← (byte) mul8u_error::b#1 call print_byte to:mul8u_error::@4 mul8u_error::@4: scope:[mul8u_error] from mul8u_error::@3 - (byte*) print_line_cursor#101 ? phi( mul8u_error::@3/(byte*) print_line_cursor#105 ) - (word) mul8u_error::mf#6 ? phi( mul8u_error::@3/(word) mul8u_error::mf#7 ) - (word) mul8u_error::mn#4 ? phi( mul8u_error::@3/(word) mul8u_error::mn#5 ) - (word) mul8u_error::ms#2 ? phi( mul8u_error::@3/(word) mul8u_error::ms#3 ) - (byte*) print_char_cursor#106 ? phi( mul8u_error::@3/(byte*) print_char_cursor#17 ) - (byte*) print_char_cursor#41 ? (byte*) print_char_cursor#106 - (byte*) print_str::str#7 ? (const string) mul8u_error::str2 + (byte*) print_line_cursor#101 ← phi( mul8u_error::@3/(byte*) print_line_cursor#105 ) + (word) mul8u_error::mf#6 ← phi( mul8u_error::@3/(word) mul8u_error::mf#7 ) + (word) mul8u_error::mn#4 ← phi( mul8u_error::@3/(word) mul8u_error::mn#5 ) + (word) mul8u_error::ms#2 ← phi( mul8u_error::@3/(word) mul8u_error::ms#3 ) + (byte*) print_char_cursor#106 ← phi( mul8u_error::@3/(byte*) print_char_cursor#17 ) + (byte*) print_char_cursor#41 ← (byte*) print_char_cursor#106 + (byte*) print_str::str#7 ← (const string) mul8u_error::str2 call print_str to:mul8u_error::@5 mul8u_error::@5: scope:[mul8u_error] from mul8u_error::@4 - (byte*) print_line_cursor#97 ? phi( mul8u_error::@4/(byte*) print_line_cursor#101 ) - (word) mul8u_error::mf#5 ? phi( mul8u_error::@4/(word) mul8u_error::mf#6 ) - (word) mul8u_error::mn#3 ? phi( mul8u_error::@4/(word) mul8u_error::mn#4 ) - (word) mul8u_error::ms#1 ? phi( mul8u_error::@4/(word) mul8u_error::ms#2 ) - (byte*) print_char_cursor#107 ? phi( mul8u_error::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#42 ? (byte*) print_char_cursor#107 - (word) print_word::w#3 ? (word) mul8u_error::ms#1 + (byte*) print_line_cursor#97 ← phi( mul8u_error::@4/(byte*) print_line_cursor#101 ) + (word) mul8u_error::mf#5 ← phi( mul8u_error::@4/(word) mul8u_error::mf#6 ) + (word) mul8u_error::mn#3 ← phi( mul8u_error::@4/(word) mul8u_error::mn#4 ) + (word) mul8u_error::ms#1 ← phi( mul8u_error::@4/(word) mul8u_error::ms#2 ) + (byte*) print_char_cursor#107 ← phi( mul8u_error::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#42 ← (byte*) print_char_cursor#107 + (word) print_word::w#3 ← (word) mul8u_error::ms#1 call print_word to:mul8u_error::@6 mul8u_error::@6: scope:[mul8u_error] from mul8u_error::@5 - (byte*) print_line_cursor#93 ? phi( mul8u_error::@5/(byte*) print_line_cursor#97 ) - (word) mul8u_error::mf#4 ? phi( mul8u_error::@5/(word) mul8u_error::mf#5 ) - (word) mul8u_error::mn#2 ? phi( mul8u_error::@5/(word) mul8u_error::mn#3 ) - (byte*) print_char_cursor#108 ? phi( mul8u_error::@5/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#43 ? (byte*) print_char_cursor#108 - (byte*) print_str::str#8 ? (const string) mul8u_error::str3 + (byte*) print_line_cursor#93 ← phi( mul8u_error::@5/(byte*) print_line_cursor#97 ) + (word) mul8u_error::mf#4 ← phi( mul8u_error::@5/(word) mul8u_error::mf#5 ) + (word) mul8u_error::mn#2 ← phi( mul8u_error::@5/(word) mul8u_error::mn#3 ) + (byte*) print_char_cursor#108 ← phi( mul8u_error::@5/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#43 ← (byte*) print_char_cursor#108 + (byte*) print_str::str#8 ← (const string) mul8u_error::str3 call print_str to:mul8u_error::@7 mul8u_error::@7: scope:[mul8u_error] from mul8u_error::@6 - (byte*) print_line_cursor#84 ? phi( mul8u_error::@6/(byte*) print_line_cursor#93 ) - (word) mul8u_error::mf#3 ? phi( mul8u_error::@6/(word) mul8u_error::mf#4 ) - (word) mul8u_error::mn#1 ? phi( mul8u_error::@6/(word) mul8u_error::mn#2 ) - (byte*) print_char_cursor#109 ? phi( mul8u_error::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#44 ? (byte*) print_char_cursor#109 - (word) print_word::w#4 ? (word) mul8u_error::mn#1 + (byte*) print_line_cursor#84 ← phi( mul8u_error::@6/(byte*) print_line_cursor#93 ) + (word) mul8u_error::mf#3 ← phi( mul8u_error::@6/(word) mul8u_error::mf#4 ) + (word) mul8u_error::mn#1 ← phi( mul8u_error::@6/(word) mul8u_error::mn#2 ) + (byte*) print_char_cursor#109 ← phi( mul8u_error::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#44 ← (byte*) print_char_cursor#109 + (word) print_word::w#4 ← (word) mul8u_error::mn#1 call print_word to:mul8u_error::@8 mul8u_error::@8: scope:[mul8u_error] from mul8u_error::@7 - (byte*) print_line_cursor#73 ? phi( mul8u_error::@7/(byte*) print_line_cursor#84 ) - (word) mul8u_error::mf#2 ? phi( mul8u_error::@7/(word) mul8u_error::mf#3 ) - (byte*) print_char_cursor#110 ? phi( mul8u_error::@7/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#45 ? (byte*) print_char_cursor#110 - (byte*) print_str::str#9 ? (const string) mul8u_error::str4 + (byte*) print_line_cursor#73 ← phi( mul8u_error::@7/(byte*) print_line_cursor#84 ) + (word) mul8u_error::mf#2 ← phi( mul8u_error::@7/(word) mul8u_error::mf#3 ) + (byte*) print_char_cursor#110 ← phi( mul8u_error::@7/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#45 ← (byte*) print_char_cursor#110 + (byte*) print_str::str#9 ← (const string) mul8u_error::str4 call print_str to:mul8u_error::@9 mul8u_error::@9: scope:[mul8u_error] from mul8u_error::@8 - (byte*) print_line_cursor#62 ? phi( mul8u_error::@8/(byte*) print_line_cursor#73 ) - (word) mul8u_error::mf#1 ? phi( mul8u_error::@8/(word) mul8u_error::mf#2 ) - (byte*) print_char_cursor#111 ? phi( mul8u_error::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#46 ? (byte*) print_char_cursor#111 - (word) print_word::w#5 ? (word) mul8u_error::mf#1 + (byte*) print_line_cursor#62 ← phi( mul8u_error::@8/(byte*) print_line_cursor#73 ) + (word) mul8u_error::mf#1 ← phi( mul8u_error::@8/(word) mul8u_error::mf#2 ) + (byte*) print_char_cursor#111 ← phi( mul8u_error::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#46 ← (byte*) print_char_cursor#111 + (word) print_word::w#5 ← (word) mul8u_error::mf#1 call print_word to:mul8u_error::@10 mul8u_error::@10: scope:[mul8u_error] from mul8u_error::@9 - (byte*) print_line_cursor#52 ? phi( mul8u_error::@9/(byte*) print_line_cursor#62 ) - (byte*) print_char_cursor#112 ? phi( mul8u_error::@9/(byte*) print_char_cursor#14 ) - (byte*) print_char_cursor#47 ? (byte*) print_char_cursor#112 + (byte*) print_line_cursor#52 ← phi( mul8u_error::@9/(byte*) print_line_cursor#62 ) + (byte*) print_char_cursor#112 ← phi( mul8u_error::@9/(byte*) print_char_cursor#14 ) + (byte*) print_char_cursor#47 ← (byte*) print_char_cursor#112 call print_ln to:mul8u_error::@11 mul8u_error::@11: scope:[mul8u_error] from mul8u_error::@10 - (byte*) print_char_cursor#113 ? phi( mul8u_error::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#37 ? phi( mul8u_error::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#15 ? (byte*) print_line_cursor#37 - (byte*) print_char_cursor#48 ? (byte*) print_char_cursor#113 + (byte*) print_char_cursor#113 ← phi( mul8u_error::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#37 ← phi( mul8u_error::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#15 ← (byte*) print_line_cursor#37 + (byte*) print_char_cursor#48 ← (byte*) print_char_cursor#113 to:mul8u_error::@return mul8u_error::@return: scope:[mul8u_error] from mul8u_error::@11 - (byte*) print_line_cursor#38 ? phi( mul8u_error::@11/(byte*) print_line_cursor#15 ) - (byte*) print_char_cursor#114 ? phi( mul8u_error::@11/(byte*) print_char_cursor#48 ) - (byte*) print_char_cursor#49 ? (byte*) print_char_cursor#114 - (byte*) print_line_cursor#16 ? (byte*) print_line_cursor#38 + (byte*) print_line_cursor#38 ← phi( mul8u_error::@11/(byte*) print_line_cursor#15 ) + (byte*) print_char_cursor#114 ← phi( mul8u_error::@11/(byte*) print_char_cursor#48 ) + (byte*) print_char_cursor#49 ← (byte*) print_char_cursor#114 + (byte*) print_line_cursor#16 ← (byte*) print_line_cursor#38 return to:@return mul8s_compare: scope:[mul8s_compare] from main::@5 - (byte*) print_line_cursor#110 ? phi( main::@5/(byte*) print_line_cursor#7 ) - (byte*) print_char_cursor#186 ? phi( main::@5/(byte*) print_char_cursor#24 ) - (signed byte/signed word/signed dword~) mul8s_compare::$2 ? - (byte/word/signed word/dword/signed dword) $80 - (signed byte) mul8s_compare::a#0 ? (signed byte/signed word/signed dword~) mul8s_compare::$2 + (byte*) print_line_cursor#110 ← phi( main::@5/(byte*) print_line_cursor#7 ) + (byte*) print_char_cursor#186 ← phi( main::@5/(byte*) print_char_cursor#24 ) + (signed byte/signed word/signed dword~) mul8s_compare::$2 ← - (byte/word/signed word/dword/signed dword) $80 + (signed byte) mul8s_compare::a#0 ← (signed byte/signed word/signed dword~) mul8s_compare::$2 to:mul8s_compare::@1 mul8s_compare::@1: scope:[mul8s_compare] from mul8s_compare mul8s_compare::@10 - (byte*) print_line_cursor#106 ? phi( mul8s_compare/(byte*) print_line_cursor#110 mul8s_compare::@10/(byte*) print_line_cursor#76 ) - (byte*) print_char_cursor#184 ? phi( mul8s_compare/(byte*) print_char_cursor#186 mul8s_compare::@10/(byte*) print_char_cursor#161 ) - (signed byte) mul8s_compare::a#7 ? phi( mul8s_compare/(signed byte) mul8s_compare::a#0 mul8s_compare::@10/(signed byte) mul8s_compare::a#1 ) - (signed byte/signed word/signed dword~) mul8s_compare::$3 ? - (byte/word/signed word/dword/signed dword) $80 - (signed byte) mul8s_compare::b#0 ? (signed byte/signed word/signed dword~) mul8s_compare::$3 + (byte*) print_line_cursor#106 ← phi( mul8s_compare/(byte*) print_line_cursor#110 mul8s_compare::@10/(byte*) print_line_cursor#76 ) + (byte*) print_char_cursor#184 ← phi( mul8s_compare/(byte*) print_char_cursor#186 mul8s_compare::@10/(byte*) print_char_cursor#161 ) + (signed byte) mul8s_compare::a#7 ← phi( mul8s_compare/(signed byte) mul8s_compare::a#0 mul8s_compare::@10/(signed byte) mul8s_compare::a#1 ) + (signed byte/signed word/signed dword~) mul8s_compare::$3 ← - (byte/word/signed word/dword/signed dword) $80 + (signed byte) mul8s_compare::b#0 ← (signed byte/signed word/signed dword~) mul8s_compare::$3 to:mul8s_compare::@2 mul8s_compare::@2: scope:[mul8s_compare] from mul8s_compare::@1 mul8s_compare::@5 - (byte*) print_line_cursor#102 ? phi( mul8s_compare::@1/(byte*) print_line_cursor#106 mul8s_compare::@5/(byte*) print_line_cursor#87 ) - (byte*) print_char_cursor#182 ? phi( mul8s_compare::@1/(byte*) print_char_cursor#184 mul8s_compare::@5/(byte*) print_char_cursor#170 ) - (signed byte) mul8s_compare::b#2 ? phi( mul8s_compare::@1/(signed byte) mul8s_compare::b#0 mul8s_compare::@5/(signed byte) mul8s_compare::b#1 ) - (signed byte) mul8s_compare::a#2 ? phi( mul8s_compare::@1/(signed byte) mul8s_compare::a#7 mul8s_compare::@5/(signed byte) mul8s_compare::a#8 ) - (signed byte) muls8s::a#0 ? (signed byte) mul8s_compare::a#2 - (signed byte) muls8s::b#0 ? (signed byte) mul8s_compare::b#2 + (byte*) print_line_cursor#102 ← phi( mul8s_compare::@1/(byte*) print_line_cursor#106 mul8s_compare::@5/(byte*) print_line_cursor#87 ) + (byte*) print_char_cursor#182 ← phi( mul8s_compare::@1/(byte*) print_char_cursor#184 mul8s_compare::@5/(byte*) print_char_cursor#170 ) + (signed byte) mul8s_compare::b#2 ← phi( mul8s_compare::@1/(signed byte) mul8s_compare::b#0 mul8s_compare::@5/(signed byte) mul8s_compare::b#1 ) + (signed byte) mul8s_compare::a#2 ← phi( mul8s_compare::@1/(signed byte) mul8s_compare::a#7 mul8s_compare::@5/(signed byte) mul8s_compare::a#8 ) + (signed byte) muls8s::a#0 ← (signed byte) mul8s_compare::a#2 + (signed byte) muls8s::b#0 ← (signed byte) mul8s_compare::b#2 call muls8s - (signed word) muls8s::return#2 ? (signed word) muls8s::return#1 + (signed word) muls8s::return#2 ← (signed word) muls8s::return#1 to:mul8s_compare::@12 mul8s_compare::@12: scope:[mul8s_compare] from mul8s_compare::@2 - (byte*) print_line_cursor#98 ? phi( mul8s_compare::@2/(byte*) print_line_cursor#102 ) - (byte*) print_char_cursor#180 ? phi( mul8s_compare::@2/(byte*) print_char_cursor#182 ) - (signed byte) mul8s_compare::b#3 ? phi( mul8s_compare::@2/(signed byte) mul8s_compare::b#2 ) - (signed byte) mul8s_compare::a#3 ? phi( mul8s_compare::@2/(signed byte) mul8s_compare::a#2 ) - (signed word) muls8s::return#4 ? phi( mul8s_compare::@2/(signed word) muls8s::return#2 ) - (signed word~) mul8s_compare::$4 ? (signed word) muls8s::return#4 - (signed word) mul8s_compare::ms#0 ? (signed word~) mul8s_compare::$4 - (signed byte) mulf8s::a#0 ? (signed byte) mul8s_compare::a#3 - (signed byte) mulf8s::b#0 ? (signed byte) mul8s_compare::b#3 + (byte*) print_line_cursor#98 ← phi( mul8s_compare::@2/(byte*) print_line_cursor#102 ) + (byte*) print_char_cursor#180 ← phi( mul8s_compare::@2/(byte*) print_char_cursor#182 ) + (signed byte) mul8s_compare::b#3 ← phi( mul8s_compare::@2/(signed byte) mul8s_compare::b#2 ) + (signed byte) mul8s_compare::a#3 ← phi( mul8s_compare::@2/(signed byte) mul8s_compare::a#2 ) + (signed word) muls8s::return#4 ← phi( mul8s_compare::@2/(signed word) muls8s::return#2 ) + (signed word~) mul8s_compare::$4 ← (signed word) muls8s::return#4 + (signed word) mul8s_compare::ms#0 ← (signed word~) mul8s_compare::$4 + (signed byte) mulf8s::a#0 ← (signed byte) mul8s_compare::a#3 + (signed byte) mulf8s::b#0 ← (signed byte) mul8s_compare::b#3 call mulf8s - (signed word) mulf8s::return#2 ? (signed word) mulf8s::return#1 + (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#1 to:mul8s_compare::@13 mul8s_compare::@13: scope:[mul8s_compare] from mul8s_compare::@12 - (byte*) print_line_cursor#94 ? phi( mul8s_compare::@12/(byte*) print_line_cursor#98 ) - (byte*) print_char_cursor#178 ? phi( mul8s_compare::@12/(byte*) print_char_cursor#180 ) - (signed word) mul8s_compare::ms#4 ? phi( mul8s_compare::@12/(signed word) mul8s_compare::ms#0 ) - (signed byte) mul8s_compare::b#4 ? phi( mul8s_compare::@12/(signed byte) mul8s_compare::b#3 ) - (signed byte) mul8s_compare::a#4 ? phi( mul8s_compare::@12/(signed byte) mul8s_compare::a#3 ) - (signed word) mulf8s::return#4 ? phi( mul8s_compare::@12/(signed word) mulf8s::return#2 ) - (signed word~) mul8s_compare::$5 ? (signed word) mulf8s::return#4 - (signed word) mul8s_compare::mf#0 ? (signed word~) mul8s_compare::$5 - (signed byte) mul8s::a#0 ? (signed byte) mul8s_compare::a#4 - (signed byte) mul8s::b#0 ? (signed byte) mul8s_compare::b#4 + (byte*) print_line_cursor#94 ← phi( mul8s_compare::@12/(byte*) print_line_cursor#98 ) + (byte*) print_char_cursor#178 ← phi( mul8s_compare::@12/(byte*) print_char_cursor#180 ) + (signed word) mul8s_compare::ms#4 ← phi( mul8s_compare::@12/(signed word) mul8s_compare::ms#0 ) + (signed byte) mul8s_compare::b#4 ← phi( mul8s_compare::@12/(signed byte) mul8s_compare::b#3 ) + (signed byte) mul8s_compare::a#4 ← phi( mul8s_compare::@12/(signed byte) mul8s_compare::a#3 ) + (signed word) mulf8s::return#4 ← phi( mul8s_compare::@12/(signed word) mulf8s::return#2 ) + (signed word~) mul8s_compare::$5 ← (signed word) mulf8s::return#4 + (signed word) mul8s_compare::mf#0 ← (signed word~) mul8s_compare::$5 + (signed byte) mul8s::a#0 ← (signed byte) mul8s_compare::a#4 + (signed byte) mul8s::b#0 ← (signed byte) mul8s_compare::b#4 call mul8s - (signed word) mul8s::return#2 ? (signed word) mul8s::return#1 + (signed word) mul8s::return#2 ← (signed word) mul8s::return#1 to:mul8s_compare::@14 mul8s_compare::@14: scope:[mul8s_compare] from mul8s_compare::@13 - (byte*) print_line_cursor#85 ? phi( mul8s_compare::@13/(byte*) print_line_cursor#94 ) - (byte*) print_char_cursor#174 ? phi( mul8s_compare::@13/(byte*) print_char_cursor#178 ) - (signed byte) mul8s_compare::a#12 ? phi( mul8s_compare::@13/(signed byte) mul8s_compare::a#4 ) - (signed byte) mul8s_compare::b#10 ? phi( mul8s_compare::@13/(signed byte) mul8s_compare::b#4 ) - (signed word) mul8s_compare::mf#1 ? phi( mul8s_compare::@13/(signed word) mul8s_compare::mf#0 ) - (signed word) mul8s_compare::ms#1 ? phi( mul8s_compare::@13/(signed word) mul8s_compare::ms#4 ) - (signed word) mul8s::return#4 ? phi( mul8s_compare::@13/(signed word) mul8s::return#2 ) - (signed word~) mul8s_compare::$6 ? (signed word) mul8s::return#4 - (signed word) mul8s_compare::mn#0 ? (signed word~) mul8s_compare::$6 - (byte) mul8s_compare::ok#0 ? (byte/signed byte/word/signed word/dword/signed dword) 1 - (bool~) mul8s_compare::$7 ? (signed word) mul8s_compare::ms#1 != (signed word) mul8s_compare::mf#1 - (bool~) mul8s_compare::$8 ? ! (bool~) mul8s_compare::$7 + (byte*) print_line_cursor#85 ← phi( mul8s_compare::@13/(byte*) print_line_cursor#94 ) + (byte*) print_char_cursor#174 ← phi( mul8s_compare::@13/(byte*) print_char_cursor#178 ) + (signed byte) mul8s_compare::a#12 ← phi( mul8s_compare::@13/(signed byte) mul8s_compare::a#4 ) + (signed byte) mul8s_compare::b#10 ← phi( mul8s_compare::@13/(signed byte) mul8s_compare::b#4 ) + (signed word) mul8s_compare::mf#1 ← phi( mul8s_compare::@13/(signed word) mul8s_compare::mf#0 ) + (signed word) mul8s_compare::ms#1 ← phi( mul8s_compare::@13/(signed word) mul8s_compare::ms#4 ) + (signed word) mul8s::return#4 ← phi( mul8s_compare::@13/(signed word) mul8s::return#2 ) + (signed word~) mul8s_compare::$6 ← (signed word) mul8s::return#4 + (signed word) mul8s_compare::mn#0 ← (signed word~) mul8s_compare::$6 + (byte) mul8s_compare::ok#0 ← (byte/signed byte/word/signed word/dword/signed dword) 1 + (bool~) mul8s_compare::$7 ← (signed word) mul8s_compare::ms#1 != (signed word) mul8s_compare::mf#1 + (bool~) mul8s_compare::$8 ← ! (bool~) mul8s_compare::$7 if((bool~) mul8s_compare::$8) goto mul8s_compare::@3 to:mul8s_compare::@6 mul8s_compare::@3: scope:[mul8s_compare] from mul8s_compare::@14 mul8s_compare::@6 - (byte*) print_line_cursor#74 ? phi( mul8s_compare::@14/(byte*) print_line_cursor#85 mul8s_compare::@6/(byte*) print_line_cursor#86 ) - (byte*) print_char_cursor#168 ? phi( mul8s_compare::@14/(byte*) print_char_cursor#174 mul8s_compare::@6/(byte*) print_char_cursor#175 ) - (signed word) mul8s_compare::mf#4 ? phi( mul8s_compare::@14/(signed word) mul8s_compare::mf#1 mul8s_compare::@6/(signed word) mul8s_compare::mf#6 ) - (signed byte) mul8s_compare::a#10 ? phi( mul8s_compare::@14/(signed byte) mul8s_compare::a#12 mul8s_compare::@6/(signed byte) mul8s_compare::a#13 ) - (signed byte) mul8s_compare::b#8 ? phi( mul8s_compare::@14/(signed byte) mul8s_compare::b#10 mul8s_compare::@6/(signed byte) mul8s_compare::b#11 ) - (byte) mul8s_compare::ok#4 ? phi( mul8s_compare::@14/(byte) mul8s_compare::ok#0 mul8s_compare::@6/(byte) mul8s_compare::ok#1 ) - (signed word) mul8s_compare::mn#1 ? phi( mul8s_compare::@14/(signed word) mul8s_compare::mn#0 mul8s_compare::@6/(signed word) mul8s_compare::mn#3 ) - (signed word) mul8s_compare::ms#2 ? phi( mul8s_compare::@14/(signed word) mul8s_compare::ms#1 mul8s_compare::@6/(signed word) mul8s_compare::ms#5 ) - (bool~) mul8s_compare::$9 ? (signed word) mul8s_compare::ms#2 != (signed word) mul8s_compare::mn#1 - (bool~) mul8s_compare::$10 ? ! (bool~) mul8s_compare::$9 + (byte*) print_line_cursor#74 ← phi( mul8s_compare::@14/(byte*) print_line_cursor#85 mul8s_compare::@6/(byte*) print_line_cursor#86 ) + (byte*) print_char_cursor#168 ← phi( mul8s_compare::@14/(byte*) print_char_cursor#174 mul8s_compare::@6/(byte*) print_char_cursor#175 ) + (signed word) mul8s_compare::mf#4 ← phi( mul8s_compare::@14/(signed word) mul8s_compare::mf#1 mul8s_compare::@6/(signed word) mul8s_compare::mf#6 ) + (signed byte) mul8s_compare::a#10 ← phi( mul8s_compare::@14/(signed byte) mul8s_compare::a#12 mul8s_compare::@6/(signed byte) mul8s_compare::a#13 ) + (signed byte) mul8s_compare::b#8 ← phi( mul8s_compare::@14/(signed byte) mul8s_compare::b#10 mul8s_compare::@6/(signed byte) mul8s_compare::b#11 ) + (byte) mul8s_compare::ok#4 ← phi( mul8s_compare::@14/(byte) mul8s_compare::ok#0 mul8s_compare::@6/(byte) mul8s_compare::ok#1 ) + (signed word) mul8s_compare::mn#1 ← phi( mul8s_compare::@14/(signed word) mul8s_compare::mn#0 mul8s_compare::@6/(signed word) mul8s_compare::mn#3 ) + (signed word) mul8s_compare::ms#2 ← phi( mul8s_compare::@14/(signed word) mul8s_compare::ms#1 mul8s_compare::@6/(signed word) mul8s_compare::ms#5 ) + (bool~) mul8s_compare::$9 ← (signed word) mul8s_compare::ms#2 != (signed word) mul8s_compare::mn#1 + (bool~) mul8s_compare::$10 ← ! (bool~) mul8s_compare::$9 if((bool~) mul8s_compare::$10) goto mul8s_compare::@4 to:mul8s_compare::@7 mul8s_compare::@6: scope:[mul8s_compare] from mul8s_compare::@14 - (byte*) print_line_cursor#86 ? phi( mul8s_compare::@14/(byte*) print_line_cursor#85 ) - (byte*) print_char_cursor#175 ? phi( mul8s_compare::@14/(byte*) print_char_cursor#174 ) - (signed word) mul8s_compare::mf#6 ? phi( mul8s_compare::@14/(signed word) mul8s_compare::mf#1 ) - (signed byte) mul8s_compare::a#13 ? phi( mul8s_compare::@14/(signed byte) mul8s_compare::a#12 ) - (signed byte) mul8s_compare::b#11 ? phi( mul8s_compare::@14/(signed byte) mul8s_compare::b#10 ) - (signed word) mul8s_compare::mn#3 ? phi( mul8s_compare::@14/(signed word) mul8s_compare::mn#0 ) - (signed word) mul8s_compare::ms#5 ? phi( mul8s_compare::@14/(signed word) mul8s_compare::ms#1 ) - (byte) mul8s_compare::ok#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#86 ← phi( mul8s_compare::@14/(byte*) print_line_cursor#85 ) + (byte*) print_char_cursor#175 ← phi( mul8s_compare::@14/(byte*) print_char_cursor#174 ) + (signed word) mul8s_compare::mf#6 ← phi( mul8s_compare::@14/(signed word) mul8s_compare::mf#1 ) + (signed byte) mul8s_compare::a#13 ← phi( mul8s_compare::@14/(signed byte) mul8s_compare::a#12 ) + (signed byte) mul8s_compare::b#11 ← phi( mul8s_compare::@14/(signed byte) mul8s_compare::b#10 ) + (signed word) mul8s_compare::mn#3 ← phi( mul8s_compare::@14/(signed word) mul8s_compare::mn#0 ) + (signed word) mul8s_compare::ms#5 ← phi( mul8s_compare::@14/(signed word) mul8s_compare::ms#1 ) + (byte) mul8s_compare::ok#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul8s_compare::@3 mul8s_compare::@4: scope:[mul8s_compare] from mul8s_compare::@3 mul8s_compare::@7 - (byte*) print_line_cursor#63 ? phi( mul8s_compare::@3/(byte*) print_line_cursor#74 mul8s_compare::@7/(byte*) print_line_cursor#75 ) - (byte*) print_char_cursor#160 ? phi( mul8s_compare::@3/(byte*) print_char_cursor#168 mul8s_compare::@7/(byte*) print_char_cursor#169 ) - (signed word) mul8s_compare::mf#3 ? phi( mul8s_compare::@3/(signed word) mul8s_compare::mf#4 mul8s_compare::@7/(signed word) mul8s_compare::mf#5 ) - (signed word) mul8s_compare::mn#4 ? phi( mul8s_compare::@3/(signed word) mul8s_compare::mn#1 mul8s_compare::@7/(signed word) mul8s_compare::mn#5 ) - (signed word) mul8s_compare::ms#6 ? phi( mul8s_compare::@3/(signed word) mul8s_compare::ms#2 mul8s_compare::@7/(signed word) mul8s_compare::ms#7 ) - (signed byte) mul8s_compare::a#9 ? phi( mul8s_compare::@3/(signed byte) mul8s_compare::a#10 mul8s_compare::@7/(signed byte) mul8s_compare::a#11 ) - (signed byte) mul8s_compare::b#7 ? phi( mul8s_compare::@3/(signed byte) mul8s_compare::b#8 mul8s_compare::@7/(signed byte) mul8s_compare::b#9 ) - (byte) mul8s_compare::ok#3 ? phi( mul8s_compare::@3/(byte) mul8s_compare::ok#4 mul8s_compare::@7/(byte) mul8s_compare::ok#2 ) - (bool~) mul8s_compare::$11 ? (byte) mul8s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) mul8s_compare::$12 ? ! (bool~) mul8s_compare::$11 + (byte*) print_line_cursor#63 ← phi( mul8s_compare::@3/(byte*) print_line_cursor#74 mul8s_compare::@7/(byte*) print_line_cursor#75 ) + (byte*) print_char_cursor#160 ← phi( mul8s_compare::@3/(byte*) print_char_cursor#168 mul8s_compare::@7/(byte*) print_char_cursor#169 ) + (signed word) mul8s_compare::mf#3 ← phi( mul8s_compare::@3/(signed word) mul8s_compare::mf#4 mul8s_compare::@7/(signed word) mul8s_compare::mf#5 ) + (signed word) mul8s_compare::mn#4 ← phi( mul8s_compare::@3/(signed word) mul8s_compare::mn#1 mul8s_compare::@7/(signed word) mul8s_compare::mn#5 ) + (signed word) mul8s_compare::ms#6 ← phi( mul8s_compare::@3/(signed word) mul8s_compare::ms#2 mul8s_compare::@7/(signed word) mul8s_compare::ms#7 ) + (signed byte) mul8s_compare::a#9 ← phi( mul8s_compare::@3/(signed byte) mul8s_compare::a#10 mul8s_compare::@7/(signed byte) mul8s_compare::a#11 ) + (signed byte) mul8s_compare::b#7 ← phi( mul8s_compare::@3/(signed byte) mul8s_compare::b#8 mul8s_compare::@7/(signed byte) mul8s_compare::b#9 ) + (byte) mul8s_compare::ok#3 ← phi( mul8s_compare::@3/(byte) mul8s_compare::ok#4 mul8s_compare::@7/(byte) mul8s_compare::ok#2 ) + (bool~) mul8s_compare::$11 ← (byte) mul8s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) mul8s_compare::$12 ← ! (bool~) mul8s_compare::$11 if((bool~) mul8s_compare::$12) goto mul8s_compare::@5 to:mul8s_compare::@8 mul8s_compare::@7: scope:[mul8s_compare] from mul8s_compare::@3 - (byte*) print_line_cursor#75 ? phi( mul8s_compare::@3/(byte*) print_line_cursor#74 ) - (byte*) print_char_cursor#169 ? phi( mul8s_compare::@3/(byte*) print_char_cursor#168 ) - (signed word) mul8s_compare::mf#5 ? phi( mul8s_compare::@3/(signed word) mul8s_compare::mf#4 ) - (signed word) mul8s_compare::mn#5 ? phi( mul8s_compare::@3/(signed word) mul8s_compare::mn#1 ) - (signed word) mul8s_compare::ms#7 ? phi( mul8s_compare::@3/(signed word) mul8s_compare::ms#2 ) - (signed byte) mul8s_compare::a#11 ? phi( mul8s_compare::@3/(signed byte) mul8s_compare::a#10 ) - (signed byte) mul8s_compare::b#9 ? phi( mul8s_compare::@3/(signed byte) mul8s_compare::b#8 ) - (byte) mul8s_compare::ok#2 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) print_line_cursor#75 ← phi( mul8s_compare::@3/(byte*) print_line_cursor#74 ) + (byte*) print_char_cursor#169 ← phi( mul8s_compare::@3/(byte*) print_char_cursor#168 ) + (signed word) mul8s_compare::mf#5 ← phi( mul8s_compare::@3/(signed word) mul8s_compare::mf#4 ) + (signed word) mul8s_compare::mn#5 ← phi( mul8s_compare::@3/(signed word) mul8s_compare::mn#1 ) + (signed word) mul8s_compare::ms#7 ← phi( mul8s_compare::@3/(signed word) mul8s_compare::ms#2 ) + (signed byte) mul8s_compare::a#11 ← phi( mul8s_compare::@3/(signed byte) mul8s_compare::a#10 ) + (signed byte) mul8s_compare::b#9 ← phi( mul8s_compare::@3/(signed byte) mul8s_compare::b#8 ) + (byte) mul8s_compare::ok#2 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:mul8s_compare::@4 mul8s_compare::@5: scope:[mul8s_compare] from mul8s_compare::@4 - (byte*) print_line_cursor#87 ? phi( mul8s_compare::@4/(byte*) print_line_cursor#63 ) - (byte*) print_char_cursor#170 ? phi( mul8s_compare::@4/(byte*) print_char_cursor#160 ) - (signed byte) mul8s_compare::a#8 ? phi( mul8s_compare::@4/(signed byte) mul8s_compare::a#9 ) - (signed byte) mul8s_compare::b#5 ? phi( mul8s_compare::@4/(signed byte) mul8s_compare::b#7 ) - (signed byte) mul8s_compare::b#1 ? ++ (signed byte) mul8s_compare::b#5 - (signed byte/signed word/signed dword~) mul8s_compare::$14 ? - (byte/word/signed word/dword/signed dword) $80 - (bool~) mul8s_compare::$15 ? (signed byte) mul8s_compare::b#1 != (signed byte/signed word/signed dword~) mul8s_compare::$14 + (byte*) print_line_cursor#87 ← phi( mul8s_compare::@4/(byte*) print_line_cursor#63 ) + (byte*) print_char_cursor#170 ← phi( mul8s_compare::@4/(byte*) print_char_cursor#160 ) + (signed byte) mul8s_compare::a#8 ← phi( mul8s_compare::@4/(signed byte) mul8s_compare::a#9 ) + (signed byte) mul8s_compare::b#5 ← phi( mul8s_compare::@4/(signed byte) mul8s_compare::b#7 ) + (signed byte) mul8s_compare::b#1 ← ++ (signed byte) mul8s_compare::b#5 + (signed byte/signed word/signed dword~) mul8s_compare::$14 ← - (byte/word/signed word/dword/signed dword) $80 + (bool~) mul8s_compare::$15 ← (signed byte) mul8s_compare::b#1 != (signed byte/signed word/signed dword~) mul8s_compare::$14 if((bool~) mul8s_compare::$15) goto mul8s_compare::@2 to:mul8s_compare::@10 mul8s_compare::@8: scope:[mul8s_compare] from mul8s_compare::@4 - (byte*) print_line_cursor#53 ? phi( mul8s_compare::@4/(byte*) print_line_cursor#63 ) - (byte*) print_char_cursor#148 ? phi( mul8s_compare::@4/(byte*) print_char_cursor#160 ) - (signed word) mul8s_compare::mf#2 ? phi( mul8s_compare::@4/(signed word) mul8s_compare::mf#3 ) - (signed word) mul8s_compare::mn#2 ? phi( mul8s_compare::@4/(signed word) mul8s_compare::mn#4 ) - (signed word) mul8s_compare::ms#3 ? phi( mul8s_compare::@4/(signed word) mul8s_compare::ms#6 ) - (signed byte) mul8s_compare::b#6 ? phi( mul8s_compare::@4/(signed byte) mul8s_compare::b#7 ) - (signed byte) mul8s_compare::a#5 ? phi( mul8s_compare::@4/(signed byte) mul8s_compare::a#9 ) - *((byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - (signed byte) mul8s_error::a#0 ? (signed byte) mul8s_compare::a#5 - (signed byte) mul8s_error::b#0 ? (signed byte) mul8s_compare::b#6 - (signed word) mul8s_error::ms#0 ? (signed word) mul8s_compare::ms#3 - (signed word) mul8s_error::mn#0 ? (signed word) mul8s_compare::mn#2 - (signed word) mul8s_error::mf#0 ? (signed word) mul8s_compare::mf#2 + (byte*) print_line_cursor#53 ← phi( mul8s_compare::@4/(byte*) print_line_cursor#63 ) + (byte*) print_char_cursor#148 ← phi( mul8s_compare::@4/(byte*) print_char_cursor#160 ) + (signed word) mul8s_compare::mf#2 ← phi( mul8s_compare::@4/(signed word) mul8s_compare::mf#3 ) + (signed word) mul8s_compare::mn#2 ← phi( mul8s_compare::@4/(signed word) mul8s_compare::mn#4 ) + (signed word) mul8s_compare::ms#3 ← phi( mul8s_compare::@4/(signed word) mul8s_compare::ms#6 ) + (signed byte) mul8s_compare::b#6 ← phi( mul8s_compare::@4/(signed byte) mul8s_compare::b#7 ) + (signed byte) mul8s_compare::a#5 ← phi( mul8s_compare::@4/(signed byte) mul8s_compare::a#9 ) + *((byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + (signed byte) mul8s_error::a#0 ← (signed byte) mul8s_compare::a#5 + (signed byte) mul8s_error::b#0 ← (signed byte) mul8s_compare::b#6 + (signed word) mul8s_error::ms#0 ← (signed word) mul8s_compare::ms#3 + (signed word) mul8s_error::mn#0 ← (signed word) mul8s_compare::mn#2 + (signed word) mul8s_error::mf#0 ← (signed word) mul8s_compare::mf#2 call mul8s_error to:mul8s_compare::@15 mul8s_compare::@15: scope:[mul8s_compare] from mul8s_compare::@8 - (byte*) print_line_cursor#39 ? phi( mul8s_compare::@8/(byte*) print_line_cursor#21 ) - (byte*) print_char_cursor#115 ? phi( mul8s_compare::@8/(byte*) print_char_cursor#65 ) - (byte*) print_char_cursor#50 ? (byte*) print_char_cursor#115 - (byte*) print_line_cursor#17 ? (byte*) print_line_cursor#39 + (byte*) print_line_cursor#39 ← phi( mul8s_compare::@8/(byte*) print_line_cursor#21 ) + (byte*) print_char_cursor#115 ← phi( mul8s_compare::@8/(byte*) print_char_cursor#65 ) + (byte*) print_char_cursor#50 ← (byte*) print_char_cursor#115 + (byte*) print_line_cursor#17 ← (byte*) print_line_cursor#39 to:mul8s_compare::@return mul8s_compare::@return: scope:[mul8s_compare] from mul8s_compare::@15 mul8s_compare::@17 - (byte*) print_line_cursor#40 ? phi( mul8s_compare::@15/(byte*) print_line_cursor#17 mul8s_compare::@17/(byte*) print_line_cursor#19 ) - (byte*) print_char_cursor#116 ? phi( mul8s_compare::@15/(byte*) print_char_cursor#50 mul8s_compare::@17/(byte*) print_char_cursor#53 ) - (byte*) print_char_cursor#51 ? (byte*) print_char_cursor#116 - (byte*) print_line_cursor#18 ? (byte*) print_line_cursor#40 + (byte*) print_line_cursor#40 ← phi( mul8s_compare::@15/(byte*) print_line_cursor#17 mul8s_compare::@17/(byte*) print_line_cursor#19 ) + (byte*) print_char_cursor#116 ← phi( mul8s_compare::@15/(byte*) print_char_cursor#50 mul8s_compare::@17/(byte*) print_char_cursor#53 ) + (byte*) print_char_cursor#51 ← (byte*) print_char_cursor#116 + (byte*) print_line_cursor#18 ← (byte*) print_line_cursor#40 return to:@return mul8s_compare::@10: scope:[mul8s_compare] from mul8s_compare::@5 - (byte*) print_line_cursor#76 ? phi( mul8s_compare::@5/(byte*) print_line_cursor#87 ) - (byte*) print_char_cursor#161 ? phi( mul8s_compare::@5/(byte*) print_char_cursor#170 ) - (signed byte) mul8s_compare::a#6 ? phi( mul8s_compare::@5/(signed byte) mul8s_compare::a#8 ) - (signed byte) mul8s_compare::a#1 ? ++ (signed byte) mul8s_compare::a#6 - (signed byte/signed word/signed dword~) mul8s_compare::$16 ? - (byte/word/signed word/dword/signed dword) $80 - (bool~) mul8s_compare::$17 ? (signed byte) mul8s_compare::a#1 != (signed byte/signed word/signed dword~) mul8s_compare::$16 + (byte*) print_line_cursor#76 ← phi( mul8s_compare::@5/(byte*) print_line_cursor#87 ) + (byte*) print_char_cursor#161 ← phi( mul8s_compare::@5/(byte*) print_char_cursor#170 ) + (signed byte) mul8s_compare::a#6 ← phi( mul8s_compare::@5/(signed byte) mul8s_compare::a#8 ) + (signed byte) mul8s_compare::a#1 ← ++ (signed byte) mul8s_compare::a#6 + (signed byte/signed word/signed dword~) mul8s_compare::$16 ← - (byte/word/signed word/dword/signed dword) $80 + (bool~) mul8s_compare::$17 ← (signed byte) mul8s_compare::a#1 != (signed byte/signed word/signed dword~) mul8s_compare::$16 if((bool~) mul8s_compare::$17) goto mul8s_compare::@1 to:mul8s_compare::@11 mul8s_compare::@11: scope:[mul8s_compare] from mul8s_compare::@10 - (byte*) print_line_cursor#64 ? phi( mul8s_compare::@10/(byte*) print_line_cursor#76 ) - (byte*) print_char_cursor#149 ? phi( mul8s_compare::@10/(byte*) print_char_cursor#161 ) - (byte*) print_str::str#10 ? (const string) mul8s_compare::str + (byte*) print_line_cursor#64 ← phi( mul8s_compare::@10/(byte*) print_line_cursor#76 ) + (byte*) print_char_cursor#149 ← phi( mul8s_compare::@10/(byte*) print_char_cursor#161 ) + (byte*) print_str::str#10 ← (const string) mul8s_compare::str call print_str to:mul8s_compare::@16 mul8s_compare::@16: scope:[mul8s_compare] from mul8s_compare::@11 - (byte*) print_line_cursor#54 ? phi( mul8s_compare::@11/(byte*) print_line_cursor#64 ) - (byte*) print_char_cursor#117 ? phi( mul8s_compare::@11/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#52 ? (byte*) print_char_cursor#117 + (byte*) print_line_cursor#54 ← phi( mul8s_compare::@11/(byte*) print_line_cursor#64 ) + (byte*) print_char_cursor#117 ← phi( mul8s_compare::@11/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#52 ← (byte*) print_char_cursor#117 call print_ln to:mul8s_compare::@17 mul8s_compare::@17: scope:[mul8s_compare] from mul8s_compare::@16 - (byte*) print_char_cursor#118 ? phi( mul8s_compare::@16/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#41 ? phi( mul8s_compare::@16/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#19 ? (byte*) print_line_cursor#41 - (byte*) print_char_cursor#53 ? (byte*) print_char_cursor#118 + (byte*) print_char_cursor#118 ← phi( mul8s_compare::@16/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#41 ← phi( mul8s_compare::@16/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#19 ← (byte*) print_line_cursor#41 + (byte*) print_char_cursor#53 ← (byte*) print_char_cursor#118 to:mul8s_compare::@return mul8s_error: scope:[mul8s_error] from mul8s_compare::@8 - (byte*) print_line_cursor#115 ? phi( mul8s_compare::@8/(byte*) print_line_cursor#53 ) - (signed word) mul8s_error::mf#10 ? phi( mul8s_compare::@8/(signed word) mul8s_error::mf#0 ) - (signed word) mul8s_error::mn#8 ? phi( mul8s_compare::@8/(signed word) mul8s_error::mn#0 ) - (signed word) mul8s_error::ms#6 ? phi( mul8s_compare::@8/(signed word) mul8s_error::ms#0 ) - (signed byte) mul8s_error::b#4 ? phi( mul8s_compare::@8/(signed byte) mul8s_error::b#0 ) - (signed byte) mul8s_error::a#2 ? phi( mul8s_compare::@8/(signed byte) mul8s_error::a#0 ) - (byte*) print_char_cursor#150 ? phi( mul8s_compare::@8/(byte*) print_char_cursor#148 ) - (byte*) print_str::str#11 ? (const string) mul8s_error::str + (byte*) print_line_cursor#115 ← phi( mul8s_compare::@8/(byte*) print_line_cursor#53 ) + (signed word) mul8s_error::mf#10 ← phi( mul8s_compare::@8/(signed word) mul8s_error::mf#0 ) + (signed word) mul8s_error::mn#8 ← phi( mul8s_compare::@8/(signed word) mul8s_error::mn#0 ) + (signed word) mul8s_error::ms#6 ← phi( mul8s_compare::@8/(signed word) mul8s_error::ms#0 ) + (signed byte) mul8s_error::b#4 ← phi( mul8s_compare::@8/(signed byte) mul8s_error::b#0 ) + (signed byte) mul8s_error::a#2 ← phi( mul8s_compare::@8/(signed byte) mul8s_error::a#0 ) + (byte*) print_char_cursor#150 ← phi( mul8s_compare::@8/(byte*) print_char_cursor#148 ) + (byte*) print_str::str#11 ← (const string) mul8s_error::str call print_str to:mul8s_error::@1 mul8s_error::@1: scope:[mul8s_error] from mul8s_error - (byte*) print_line_cursor#113 ? phi( mul8s_error/(byte*) print_line_cursor#115 ) - (signed word) mul8s_error::mf#9 ? phi( mul8s_error/(signed word) mul8s_error::mf#10 ) - (signed word) mul8s_error::mn#7 ? phi( mul8s_error/(signed word) mul8s_error::mn#8 ) - (signed word) mul8s_error::ms#5 ? phi( mul8s_error/(signed word) mul8s_error::ms#6 ) - (signed byte) mul8s_error::b#3 ? phi( mul8s_error/(signed byte) mul8s_error::b#4 ) - (signed byte) mul8s_error::a#1 ? phi( mul8s_error/(signed byte) mul8s_error::a#2 ) - (byte*) print_char_cursor#119 ? phi( mul8s_error/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#54 ? (byte*) print_char_cursor#119 - (signed byte) print_sbyte::b#1 ? (signed byte) mul8s_error::a#1 + (byte*) print_line_cursor#113 ← phi( mul8s_error/(byte*) print_line_cursor#115 ) + (signed word) mul8s_error::mf#9 ← phi( mul8s_error/(signed word) mul8s_error::mf#10 ) + (signed word) mul8s_error::mn#7 ← phi( mul8s_error/(signed word) mul8s_error::mn#8 ) + (signed word) mul8s_error::ms#5 ← phi( mul8s_error/(signed word) mul8s_error::ms#6 ) + (signed byte) mul8s_error::b#3 ← phi( mul8s_error/(signed byte) mul8s_error::b#4 ) + (signed byte) mul8s_error::a#1 ← phi( mul8s_error/(signed byte) mul8s_error::a#2 ) + (byte*) print_char_cursor#119 ← phi( mul8s_error/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#54 ← (byte*) print_char_cursor#119 + (signed byte) print_sbyte::b#1 ← (signed byte) mul8s_error::a#1 call print_sbyte to:mul8s_error::@2 mul8s_error::@2: scope:[mul8s_error] from mul8s_error::@1 - (byte*) print_line_cursor#111 ? phi( mul8s_error::@1/(byte*) print_line_cursor#113 ) - (signed word) mul8s_error::mf#8 ? phi( mul8s_error::@1/(signed word) mul8s_error::mf#9 ) - (signed word) mul8s_error::mn#6 ? phi( mul8s_error::@1/(signed word) mul8s_error::mn#7 ) - (signed word) mul8s_error::ms#4 ? phi( mul8s_error::@1/(signed word) mul8s_error::ms#5 ) - (signed byte) mul8s_error::b#2 ? phi( mul8s_error::@1/(signed byte) mul8s_error::b#3 ) - (byte*) print_char_cursor#120 ? phi( mul8s_error::@1/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#55 ? (byte*) print_char_cursor#120 - (byte*) print_str::str#12 ? (const string) mul8s_error::str1 + (byte*) print_line_cursor#111 ← phi( mul8s_error::@1/(byte*) print_line_cursor#113 ) + (signed word) mul8s_error::mf#8 ← phi( mul8s_error::@1/(signed word) mul8s_error::mf#9 ) + (signed word) mul8s_error::mn#6 ← phi( mul8s_error::@1/(signed word) mul8s_error::mn#7 ) + (signed word) mul8s_error::ms#4 ← phi( mul8s_error::@1/(signed word) mul8s_error::ms#5 ) + (signed byte) mul8s_error::b#2 ← phi( mul8s_error::@1/(signed byte) mul8s_error::b#3 ) + (byte*) print_char_cursor#120 ← phi( mul8s_error::@1/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#55 ← (byte*) print_char_cursor#120 + (byte*) print_str::str#12 ← (const string) mul8s_error::str1 call print_str to:mul8s_error::@3 mul8s_error::@3: scope:[mul8s_error] from mul8s_error::@2 - (byte*) print_line_cursor#107 ? phi( mul8s_error::@2/(byte*) print_line_cursor#111 ) - (signed word) mul8s_error::mf#7 ? phi( mul8s_error::@2/(signed word) mul8s_error::mf#8 ) - (signed word) mul8s_error::mn#5 ? phi( mul8s_error::@2/(signed word) mul8s_error::mn#6 ) - (signed word) mul8s_error::ms#3 ? phi( mul8s_error::@2/(signed word) mul8s_error::ms#4 ) - (signed byte) mul8s_error::b#1 ? phi( mul8s_error::@2/(signed byte) mul8s_error::b#2 ) - (byte*) print_char_cursor#121 ? phi( mul8s_error::@2/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#56 ? (byte*) print_char_cursor#121 - (signed byte) print_sbyte::b#2 ? (signed byte) mul8s_error::b#1 + (byte*) print_line_cursor#107 ← phi( mul8s_error::@2/(byte*) print_line_cursor#111 ) + (signed word) mul8s_error::mf#7 ← phi( mul8s_error::@2/(signed word) mul8s_error::mf#8 ) + (signed word) mul8s_error::mn#5 ← phi( mul8s_error::@2/(signed word) mul8s_error::mn#6 ) + (signed word) mul8s_error::ms#3 ← phi( mul8s_error::@2/(signed word) mul8s_error::ms#4 ) + (signed byte) mul8s_error::b#1 ← phi( mul8s_error::@2/(signed byte) mul8s_error::b#2 ) + (byte*) print_char_cursor#121 ← phi( mul8s_error::@2/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#56 ← (byte*) print_char_cursor#121 + (signed byte) print_sbyte::b#2 ← (signed byte) mul8s_error::b#1 call print_sbyte to:mul8s_error::@4 mul8s_error::@4: scope:[mul8s_error] from mul8s_error::@3 - (byte*) print_line_cursor#103 ? phi( mul8s_error::@3/(byte*) print_line_cursor#107 ) - (signed word) mul8s_error::mf#6 ? phi( mul8s_error::@3/(signed word) mul8s_error::mf#7 ) - (signed word) mul8s_error::mn#4 ? phi( mul8s_error::@3/(signed word) mul8s_error::mn#5 ) - (signed word) mul8s_error::ms#2 ? phi( mul8s_error::@3/(signed word) mul8s_error::ms#3 ) - (byte*) print_char_cursor#122 ? phi( mul8s_error::@3/(byte*) print_char_cursor#11 ) - (byte*) print_char_cursor#57 ? (byte*) print_char_cursor#122 - (byte*) print_str::str#13 ? (const string) mul8s_error::str2 + (byte*) print_line_cursor#103 ← phi( mul8s_error::@3/(byte*) print_line_cursor#107 ) + (signed word) mul8s_error::mf#6 ← phi( mul8s_error::@3/(signed word) mul8s_error::mf#7 ) + (signed word) mul8s_error::mn#4 ← phi( mul8s_error::@3/(signed word) mul8s_error::mn#5 ) + (signed word) mul8s_error::ms#2 ← phi( mul8s_error::@3/(signed word) mul8s_error::ms#3 ) + (byte*) print_char_cursor#122 ← phi( mul8s_error::@3/(byte*) print_char_cursor#11 ) + (byte*) print_char_cursor#57 ← (byte*) print_char_cursor#122 + (byte*) print_str::str#13 ← (const string) mul8s_error::str2 call print_str to:mul8s_error::@5 mul8s_error::@5: scope:[mul8s_error] from mul8s_error::@4 - (byte*) print_line_cursor#99 ? phi( mul8s_error::@4/(byte*) print_line_cursor#103 ) - (signed word) mul8s_error::mf#5 ? phi( mul8s_error::@4/(signed word) mul8s_error::mf#6 ) - (signed word) mul8s_error::mn#3 ? phi( mul8s_error::@4/(signed word) mul8s_error::mn#4 ) - (signed word) mul8s_error::ms#1 ? phi( mul8s_error::@4/(signed word) mul8s_error::ms#2 ) - (byte*) print_char_cursor#123 ? phi( mul8s_error::@4/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#58 ? (byte*) print_char_cursor#123 - (signed word) print_sword::w#1 ? (signed word) mul8s_error::ms#1 + (byte*) print_line_cursor#99 ← phi( mul8s_error::@4/(byte*) print_line_cursor#103 ) + (signed word) mul8s_error::mf#5 ← phi( mul8s_error::@4/(signed word) mul8s_error::mf#6 ) + (signed word) mul8s_error::mn#3 ← phi( mul8s_error::@4/(signed word) mul8s_error::mn#4 ) + (signed word) mul8s_error::ms#1 ← phi( mul8s_error::@4/(signed word) mul8s_error::ms#2 ) + (byte*) print_char_cursor#123 ← phi( mul8s_error::@4/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#58 ← (byte*) print_char_cursor#123 + (signed word) print_sword::w#1 ← (signed word) mul8s_error::ms#1 call print_sword to:mul8s_error::@6 mul8s_error::@6: scope:[mul8s_error] from mul8s_error::@5 - (byte*) print_line_cursor#95 ? phi( mul8s_error::@5/(byte*) print_line_cursor#99 ) - (signed word) mul8s_error::mf#4 ? phi( mul8s_error::@5/(signed word) mul8s_error::mf#5 ) - (signed word) mul8s_error::mn#2 ? phi( mul8s_error::@5/(signed word) mul8s_error::mn#3 ) - (byte*) print_char_cursor#124 ? phi( mul8s_error::@5/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#59 ? (byte*) print_char_cursor#124 - (byte*) print_str::str#14 ? (const string) mul8s_error::str3 + (byte*) print_line_cursor#95 ← phi( mul8s_error::@5/(byte*) print_line_cursor#99 ) + (signed word) mul8s_error::mf#4 ← phi( mul8s_error::@5/(signed word) mul8s_error::mf#5 ) + (signed word) mul8s_error::mn#2 ← phi( mul8s_error::@5/(signed word) mul8s_error::mn#3 ) + (byte*) print_char_cursor#124 ← phi( mul8s_error::@5/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#59 ← (byte*) print_char_cursor#124 + (byte*) print_str::str#14 ← (const string) mul8s_error::str3 call print_str to:mul8s_error::@7 mul8s_error::@7: scope:[mul8s_error] from mul8s_error::@6 - (byte*) print_line_cursor#88 ? phi( mul8s_error::@6/(byte*) print_line_cursor#95 ) - (signed word) mul8s_error::mf#3 ? phi( mul8s_error::@6/(signed word) mul8s_error::mf#4 ) - (signed word) mul8s_error::mn#1 ? phi( mul8s_error::@6/(signed word) mul8s_error::mn#2 ) - (byte*) print_char_cursor#125 ? phi( mul8s_error::@6/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#60 ? (byte*) print_char_cursor#125 - (signed word) print_sword::w#2 ? (signed word) mul8s_error::mn#1 + (byte*) print_line_cursor#88 ← phi( mul8s_error::@6/(byte*) print_line_cursor#95 ) + (signed word) mul8s_error::mf#3 ← phi( mul8s_error::@6/(signed word) mul8s_error::mf#4 ) + (signed word) mul8s_error::mn#1 ← phi( mul8s_error::@6/(signed word) mul8s_error::mn#2 ) + (byte*) print_char_cursor#125 ← phi( mul8s_error::@6/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#60 ← (byte*) print_char_cursor#125 + (signed word) print_sword::w#2 ← (signed word) mul8s_error::mn#1 call print_sword to:mul8s_error::@8 mul8s_error::@8: scope:[mul8s_error] from mul8s_error::@7 - (byte*) print_line_cursor#77 ? phi( mul8s_error::@7/(byte*) print_line_cursor#88 ) - (signed word) mul8s_error::mf#2 ? phi( mul8s_error::@7/(signed word) mul8s_error::mf#3 ) - (byte*) print_char_cursor#126 ? phi( mul8s_error::@7/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#61 ? (byte*) print_char_cursor#126 - (byte*) print_str::str#15 ? (const string) mul8s_error::str4 + (byte*) print_line_cursor#77 ← phi( mul8s_error::@7/(byte*) print_line_cursor#88 ) + (signed word) mul8s_error::mf#2 ← phi( mul8s_error::@7/(signed word) mul8s_error::mf#3 ) + (byte*) print_char_cursor#126 ← phi( mul8s_error::@7/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#61 ← (byte*) print_char_cursor#126 + (byte*) print_str::str#15 ← (const string) mul8s_error::str4 call print_str to:mul8s_error::@9 mul8s_error::@9: scope:[mul8s_error] from mul8s_error::@8 - (byte*) print_line_cursor#65 ? phi( mul8s_error::@8/(byte*) print_line_cursor#77 ) - (signed word) mul8s_error::mf#1 ? phi( mul8s_error::@8/(signed word) mul8s_error::mf#2 ) - (byte*) print_char_cursor#127 ? phi( mul8s_error::@8/(byte*) print_char_cursor#2 ) - (byte*) print_char_cursor#62 ? (byte*) print_char_cursor#127 - (signed word) print_sword::w#3 ? (signed word) mul8s_error::mf#1 + (byte*) print_line_cursor#65 ← phi( mul8s_error::@8/(byte*) print_line_cursor#77 ) + (signed word) mul8s_error::mf#1 ← phi( mul8s_error::@8/(signed word) mul8s_error::mf#2 ) + (byte*) print_char_cursor#127 ← phi( mul8s_error::@8/(byte*) print_char_cursor#2 ) + (byte*) print_char_cursor#62 ← (byte*) print_char_cursor#127 + (signed word) print_sword::w#3 ← (signed word) mul8s_error::mf#1 call print_sword to:mul8s_error::@10 mul8s_error::@10: scope:[mul8s_error] from mul8s_error::@9 - (byte*) print_line_cursor#55 ? phi( mul8s_error::@9/(byte*) print_line_cursor#65 ) - (byte*) print_char_cursor#128 ? phi( mul8s_error::@9/(byte*) print_char_cursor#7 ) - (byte*) print_char_cursor#63 ? (byte*) print_char_cursor#128 + (byte*) print_line_cursor#55 ← phi( mul8s_error::@9/(byte*) print_line_cursor#65 ) + (byte*) print_char_cursor#128 ← phi( mul8s_error::@9/(byte*) print_char_cursor#7 ) + (byte*) print_char_cursor#63 ← (byte*) print_char_cursor#128 call print_ln to:mul8s_error::@11 mul8s_error::@11: scope:[mul8s_error] from mul8s_error::@10 - (byte*) print_char_cursor#129 ? phi( mul8s_error::@10/(byte*) print_char_cursor#4 ) - (byte*) print_line_cursor#42 ? phi( mul8s_error::@10/(byte*) print_line_cursor#2 ) - (byte*) print_line_cursor#20 ? (byte*) print_line_cursor#42 - (byte*) print_char_cursor#64 ? (byte*) print_char_cursor#129 + (byte*) print_char_cursor#129 ← phi( mul8s_error::@10/(byte*) print_char_cursor#4 ) + (byte*) print_line_cursor#42 ← phi( mul8s_error::@10/(byte*) print_line_cursor#2 ) + (byte*) print_line_cursor#20 ← (byte*) print_line_cursor#42 + (byte*) print_char_cursor#64 ← (byte*) print_char_cursor#129 to:mul8s_error::@return mul8s_error::@return: scope:[mul8s_error] from mul8s_error::@11 - (byte*) print_line_cursor#43 ? phi( mul8s_error::@11/(byte*) print_line_cursor#20 ) - (byte*) print_char_cursor#130 ? phi( mul8s_error::@11/(byte*) print_char_cursor#64 ) - (byte*) print_char_cursor#65 ? (byte*) print_char_cursor#130 - (byte*) print_line_cursor#21 ? (byte*) print_line_cursor#43 + (byte*) print_line_cursor#43 ← phi( mul8s_error::@11/(byte*) print_line_cursor#20 ) + (byte*) print_char_cursor#130 ← phi( mul8s_error::@11/(byte*) print_char_cursor#64 ) + (byte*) print_char_cursor#65 ← (byte*) print_char_cursor#130 + (byte*) print_line_cursor#21 ← (byte*) print_line_cursor#43 return to:@return @42: scope:[] from @36 - (byte*) print_screen#5 ? phi( @36/(byte*) print_screen#6 ) - (byte*) print_char_cursor#151 ? phi( @36/(byte*) print_char_cursor#162 ) - (byte*) print_line_cursor#56 ? phi( @36/(byte*) print_line_cursor#66 ) + (byte*) print_screen#5 ← phi( @36/(byte*) print_screen#6 ) + (byte*) print_char_cursor#151 ← phi( @36/(byte*) print_char_cursor#162 ) + (byte*) print_line_cursor#56 ← phi( @36/(byte*) print_line_cursor#66 ) call main to:@43 @43: scope:[] from @42 - (byte*) print_char_cursor#131 ? phi( @42/(byte*) print_char_cursor#26 ) - (byte*) print_line_cursor#44 ? phi( @42/(byte*) print_line_cursor#9 ) - (byte*) print_line_cursor#22 ? (byte*) print_line_cursor#44 - (byte*) print_char_cursor#66 ? (byte*) print_char_cursor#131 + (byte*) print_char_cursor#131 ← phi( @42/(byte*) print_char_cursor#26 ) + (byte*) print_line_cursor#44 ← phi( @42/(byte*) print_line_cursor#9 ) + (byte*) print_line_cursor#22 ← (byte*) print_line_cursor#44 + (byte*) print_char_cursor#66 ← (byte*) print_char_cursor#131 to:@end @end: scope:[] from @43 @@ -2630,23 +2630,23 @@ SYMBOL TABLE SSA (word) print_word::w#6 (word) print_word::w#7 -Inversing boolean not [28] (bool~) print_sword::$1 ? (signed word) print_sword::w#4 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [27] (bool~) print_sword::$0 ? (signed word) print_sword::w#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [130] (bool~) mul8u::$3 ? (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [129] (bool~) mul8u::$2 ? (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [156] (bool~) mul8s::$4 ? (signed byte) mul8s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [155] (bool~) mul8s::$3 ? (signed byte) mul8s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [160] (bool~) mul8s::$6 ? (signed byte) mul8s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [159] (bool~) mul8s::$5 ? (signed byte) mul8s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [196] (bool~) mulf_init::$10 ? (byte~) mulf_init::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [195] (bool~) mulf_init::$9 ? (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [226] (bool~) mulf_init::$18 ? (byte) mulf_init::x_255#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [225] (bool~) mulf_init::$17 ? (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [279] (bool~) mulf8s_prepared::$3 ? *((signed byte*) mulf8s_prepared::memA#0) >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [278] (bool~) mulf8s_prepared::$2 ? *((signed byte*) mulf8s_prepared::memA#0) < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [283] (bool~) mulf8s_prepared::$5 ? (signed byte) mulf8s_prepared::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [282] (bool~) mulf8s_prepared::$4 ? (signed byte) mulf8s_prepared::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [351] (bool~) muls8u::$1 ? (byte) muls8u::a#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [350] (bool~) muls8u::$0 ? (byte) muls8u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [374] (bool~) muls8s::$2 ? (signed byte) muls8s::a#2 <= (byte/signed byte/word/signed word/dword/signed dword) 0 from [373] (bool~) muls8s::$1 ? (signed byte) muls8s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [413] (bool~) mulf_tables_cmp::$3 ? *((byte*) mulf_tables_cmp::kc_sqr#2) == *((byte*) mulf_tables_cmp::asm_sqr#2) from [412] (bool~) mulf_tables_cmp::$2 ? *((byte*) mulf_tables_cmp::kc_sqr#2) != *((byte*) mulf_tables_cmp::asm_sqr#2) -Inversing boolean not [483] (bool~) mul8u_compare::$6 ? (word) mul8u_compare::ms#1 == (word) mul8u_compare::mf#1 from [482] (bool~) mul8u_compare::$5 ? (word) mul8u_compare::ms#1 != (word) mul8u_compare::mf#1 -Inversing boolean not [487] (bool~) mul8u_compare::$8 ? (word) mul8u_compare::ms#2 == (word) mul8u_compare::mn#1 from [486] (bool~) mul8u_compare::$7 ? (word) mul8u_compare::ms#2 != (word) mul8u_compare::mn#1 -Inversing boolean not [493] (bool~) mul8u_compare::$10 ? (byte) mul8u_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [492] (bool~) mul8u_compare::$9 ? (byte) mul8u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 -Inversing boolean not [608] (bool~) mul8s_compare::$8 ? (signed word) mul8s_compare::ms#1 == (signed word) mul8s_compare::mf#1 from [607] (bool~) mul8s_compare::$7 ? (signed word) mul8s_compare::ms#1 != (signed word) mul8s_compare::mf#1 -Inversing boolean not [612] (bool~) mul8s_compare::$10 ? (signed word) mul8s_compare::ms#2 == (signed word) mul8s_compare::mn#1 from [611] (bool~) mul8s_compare::$9 ? (signed word) mul8s_compare::ms#2 != (signed word) mul8s_compare::mn#1 -Inversing boolean not [618] (bool~) mul8s_compare::$12 ? (byte) mul8s_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [617] (bool~) mul8s_compare::$11 ? (byte) mul8s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [28] (bool~) print_sword::$1 ← (signed word) print_sword::w#4 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [27] (bool~) print_sword::$0 ← (signed word) print_sword::w#4 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [130] (bool~) mul8u::$3 ← (byte~) mul8u::$1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [129] (bool~) mul8u::$2 ← (byte~) mul8u::$1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [156] (bool~) mul8s::$4 ← (signed byte) mul8s::a#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [155] (bool~) mul8s::$3 ← (signed byte) mul8s::a#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [160] (bool~) mul8s::$6 ← (signed byte) mul8s::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [159] (bool~) mul8s::$5 ← (signed byte) mul8s::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [196] (bool~) mulf_init::$10 ← (byte~) mulf_init::$8 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [195] (bool~) mulf_init::$9 ← (byte~) mulf_init::$8 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [226] (bool~) mulf_init::$18 ← (byte) mulf_init::x_255#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [225] (bool~) mulf_init::$17 ← (byte) mulf_init::x_255#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [279] (bool~) mulf8s_prepared::$3 ← *((signed byte*) mulf8s_prepared::memA#0) >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [278] (bool~) mulf8s_prepared::$2 ← *((signed byte*) mulf8s_prepared::memA#0) < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [283] (bool~) mulf8s_prepared::$5 ← (signed byte) mulf8s_prepared::b#2 >= (byte/signed byte/word/signed word/dword/signed dword) 0 from [282] (bool~) mulf8s_prepared::$4 ← (signed byte) mulf8s_prepared::b#2 < (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [351] (bool~) muls8u::$1 ← (byte) muls8u::a#1 == (byte/signed byte/word/signed word/dword/signed dword) 0 from [350] (bool~) muls8u::$0 ← (byte) muls8u::a#1 != (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [374] (bool~) muls8s::$2 ← (signed byte) muls8s::a#2 <= (byte/signed byte/word/signed word/dword/signed dword) 0 from [373] (bool~) muls8s::$1 ← (signed byte) muls8s::a#2 > (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [413] (bool~) mulf_tables_cmp::$3 ← *((byte*) mulf_tables_cmp::kc_sqr#2) == *((byte*) mulf_tables_cmp::asm_sqr#2) from [412] (bool~) mulf_tables_cmp::$2 ← *((byte*) mulf_tables_cmp::kc_sqr#2) != *((byte*) mulf_tables_cmp::asm_sqr#2) +Inversing boolean not [483] (bool~) mul8u_compare::$6 ← (word) mul8u_compare::ms#1 == (word) mul8u_compare::mf#1 from [482] (bool~) mul8u_compare::$5 ← (word) mul8u_compare::ms#1 != (word) mul8u_compare::mf#1 +Inversing boolean not [487] (bool~) mul8u_compare::$8 ← (word) mul8u_compare::ms#2 == (word) mul8u_compare::mn#1 from [486] (bool~) mul8u_compare::$7 ← (word) mul8u_compare::ms#2 != (word) mul8u_compare::mn#1 +Inversing boolean not [493] (bool~) mul8u_compare::$10 ← (byte) mul8u_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [492] (bool~) mul8u_compare::$9 ← (byte) mul8u_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 +Inversing boolean not [608] (bool~) mul8s_compare::$8 ← (signed word) mul8s_compare::ms#1 == (signed word) mul8s_compare::mf#1 from [607] (bool~) mul8s_compare::$7 ← (signed word) mul8s_compare::ms#1 != (signed word) mul8s_compare::mf#1 +Inversing boolean not [612] (bool~) mul8s_compare::$10 ← (signed word) mul8s_compare::ms#2 == (signed word) mul8s_compare::mn#1 from [611] (bool~) mul8s_compare::$9 ← (signed word) mul8s_compare::ms#2 != (signed word) mul8s_compare::mn#1 +Inversing boolean not [618] (bool~) mul8s_compare::$12 ← (byte) mul8s_compare::ok#3 != (byte/signed byte/word/signed word/dword/signed dword) 0 from [617] (bool~) mul8s_compare::$11 ← (byte) mul8s_compare::ok#3 == (byte/signed byte/word/signed word/dword/signed dword) 0 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte*) print_line_cursor#0 = (byte*) print_screen#0 (byte*) print_char_cursor#0 (byte*) print_line_cursor#89 (byte*) print_char_cursor#176 (byte*) print_screen#9 (byte*) print_line_cursor#78 (byte*) print_char_cursor#171 (byte*) print_screen#8 (byte*) print_line_cursor#67 (byte*) print_char_cursor#163 (byte*) print_screen#7 (byte*) print_line_cursor#66 (byte*) print_char_cursor#162 (byte*) print_screen#6 (byte*) print_line_cursor#56 (byte*) print_char_cursor#151 (byte*) print_screen#5 Alias (byte*) print_str::str#16 = (byte*) print_str::str#17 @@ -3133,26 +3133,26 @@ Constant (const byte*) mulf_tables_cmp::kc_sqr#0 = mulf_sqr1_lo#0 Constant (const byte*) mulf_tables_cmp::$11 = mulf_sqr1_lo#0+mulf_tables_cmp::$10 Successful SSA optimization Pass2ConstantIdentification Successful SSA optimization Pass2ConstantStringConsolidation -Fixing inline constructor with mulf8u_prepared::$0 ? *(mulf8u_prepared::memB#0) w= *(mulf8u_prepared::resL#0) +Fixing inline constructor with mulf8u_prepared::$0 ← *(mulf8u_prepared::memB#0) w= *(mulf8u_prepared::resL#0) Successful SSA optimization Pass2FixInlineConstructors -Eliminating Noop Cast (word) print_word::w#0 ? ((word)) (signed word) print_sword::w#5 -Eliminating Noop Cast (byte) print_byte::b#0 ? ((byte)) (signed byte) print_sbyte::b#5 -Eliminating Noop Cast (byte) mul8u::a#1 ? ((byte)) (signed byte) mul8s::a#0 -Eliminating Noop Cast (byte) mul8u::b#0 ? ((byte)) (signed byte) mul8s::b#0 -Eliminating Noop Cast (byte~) mul8s::$10 ? ((byte)) (signed byte) mul8s::b#0 -Eliminating Noop Cast (signed word) mul8s::return#0 ? ((signed word)) (word) mul8s::m#4 -Eliminating Noop Cast (byte~) mul8s::$14 ? ((byte)) (signed byte) mul8s::a#0 -Eliminating Noop Cast (byte) mulf8u_prepared::b#1 ? ((byte)) (signed byte) mulf8s_prepared::b#0 -Eliminating Noop Cast (byte~) mulf8s_prepared::$9 ? ((byte)) (signed byte) mulf8s_prepared::b#0 -Eliminating Noop Cast (signed word) mulf8s_prepared::return#0 ? ((signed word)) (word) mulf8s_prepared::m#4 -Eliminating Noop Cast (byte~) mulf8s_prepared::$13 ? ((byte)) *((const signed byte*) mulf8s_prepared::memA#0) -Eliminating Noop Cast (byte) mulf8u_prepare::a#1 ? ((byte)) (signed byte) mulf8s::a#0 -Eliminating Noop Cast (word) print_word::w#1 ? ((word)) (byte*) mulf_tables_cmp::asm_sqr#2 -Eliminating Noop Cast (word) print_word::w#2 ? ((word)) (byte*) mulf_tables_cmp::kc_sqr#2 +Eliminating Noop Cast (word) print_word::w#0 ← ((word)) (signed word) print_sword::w#5 +Eliminating Noop Cast (byte) print_byte::b#0 ← ((byte)) (signed byte) print_sbyte::b#5 +Eliminating Noop Cast (byte) mul8u::a#1 ← ((byte)) (signed byte) mul8s::a#0 +Eliminating Noop Cast (byte) mul8u::b#0 ← ((byte)) (signed byte) mul8s::b#0 +Eliminating Noop Cast (byte~) mul8s::$10 ← ((byte)) (signed byte) mul8s::b#0 +Eliminating Noop Cast (signed word) mul8s::return#0 ← ((signed word)) (word) mul8s::m#4 +Eliminating Noop Cast (byte~) mul8s::$14 ← ((byte)) (signed byte) mul8s::a#0 +Eliminating Noop Cast (byte) mulf8u_prepared::b#1 ← ((byte)) (signed byte) mulf8s_prepared::b#0 +Eliminating Noop Cast (byte~) mulf8s_prepared::$9 ← ((byte)) (signed byte) mulf8s_prepared::b#0 +Eliminating Noop Cast (signed word) mulf8s_prepared::return#0 ← ((signed word)) (word) mulf8s_prepared::m#4 +Eliminating Noop Cast (byte~) mulf8s_prepared::$13 ← ((byte)) *((const signed byte*) mulf8s_prepared::memA#0) +Eliminating Noop Cast (byte) mulf8u_prepare::a#1 ← ((byte)) (signed byte) mulf8s::a#0 +Eliminating Noop Cast (word) print_word::w#1 ← ((word)) (byte*) mulf_tables_cmp::asm_sqr#2 +Eliminating Noop Cast (word) print_word::w#2 ← ((word)) (byte*) mulf_tables_cmp::kc_sqr#2 Successful SSA optimization Pass2NopCastElimination -Resolved ranged next value mul8u_compare::b#1 ? ++ mul8u_compare::b#10 to ++ +Resolved ranged next value mul8u_compare::b#1 ← ++ mul8u_compare::b#10 to ++ Resolved ranged comparison value if(mul8u_compare::b#1!=rangelast(0,$ff)) goto mul8u_compare::@2 to (byte/signed byte/word/signed word/dword/signed dword) 0 -Resolved ranged next value mul8u_compare::a#1 ? ++ mul8u_compare::a#7 to ++ +Resolved ranged next value mul8u_compare::a#1 ← ++ mul8u_compare::a#7 to ++ Resolved ranged comparison value if(mul8u_compare::a#1!=rangelast(0,$ff)) goto mul8u_compare::@1 to (byte/signed byte/word/signed word/dword/signed dword) 0 Culled Empty Block (label) print_ln::@2 Culled Empty Block (label) print_sword::@3 @@ -3376,124 +3376,124 @@ Calls in [mulf8u] to mulf8u_prepare:338 mulf8u_prepared:341 Calls in [mulf_tables_cmp] to print_str:359 print_word:362 print_str:364 print_word:367 print_str:375 print_ln:377 Created 63 initial phi equivalence classes -Not coalescing [54] print_char_cursor#192 ? print_line_cursor#1 -Coalesced [56] print_line_cursor#116 ? print_line_cursor#1 -Coalesced [57] print_char_cursor#187 ? print_char_cursor#132 -Coalesced [59] mul8s_compare::a#14 ? mul8s_compare::a#1 -Coalesced [60] mul8s_compare::b#12 ? mul8s_compare::b#1 -Coalesced [61] mul8s_compare::ok#5 ? mul8s_compare::ok#4 -Coalesced [63] print_line_cursor#120 ? print_line_cursor#45 -Coalesced (already) [68] print_line_cursor#121 ? print_line_cursor#1 -Coalesced [70] print_str::str#19 ? print_str::str#18 -Coalesced [71] print_char_cursor#205 ? print_char_cursor#152 -Coalesced [78] print_str::str#20 ? print_str::str#0 -Coalesced [79] print_char_cursor#206 ? print_char_cursor#1 -Not coalescing [80] print_char_cursor#193 ? print_line_cursor#1 -Coalesced [83] print_sbyte::b#9 ? print_sbyte::b#1 -Coalesced [85] print_char_cursor#194 ? print_char_cursor#18 -Coalesced [88] print_sbyte::b#10 ? print_sbyte::b#2 -Coalesced (already) [90] print_char_cursor#195 ? print_char_cursor#18 -Coalesced [93] print_sword::w#8 ? print_sword::w#1 -Coalesced (already) [95] print_char_cursor#196 ? print_char_cursor#18 -Coalesced [98] print_sword::w#9 ? print_sword::w#2 -Coalesced (already) [100] print_char_cursor#197 ? print_char_cursor#18 -Coalesced [103] print_sword::w#10 ? print_sword::w#3 -Coalesced (already) [105] print_line_cursor#117 ? print_line_cursor#1 -Coalesced (already) [106] print_char_cursor#188 ? print_char_cursor#18 -Coalesced [111] print_char_cursor#224 ? print_char_cursor#132 -Coalesced [114] print_sword::w#12 ? print_sword::w#0 -Coalesced [115] print_char_cursor#208 ? print_char_cursor#18 -Coalesced [118] print_char_cursor#214 ? print_char_cursor#134 -Coalesced [121] print_sword::w#11 ? print_sword::w#4 -Coalesced (already) [122] print_char_cursor#207 ? print_char_cursor#132 -Coalesced [125] print_byte::b#10 ? print_byte::b#1 -Coalesced [126] print_char_cursor#218 ? print_char_cursor#139 -Coalesced [129] print_byte::b#11 ? print_byte::b#2 -Coalesced (already) [130] print_char_cursor#219 ? print_char_cursor#18 -Coalesced [136] print_char::ch#6 ? print_char::ch#3 -Coalesced (already) [137] print_char_cursor#220 ? print_char_cursor#140 -Coalesced [141] print_char::ch#7 ? print_char::ch#4 -Coalesced (already) [142] print_char_cursor#221 ? print_char_cursor#18 -Coalesced (already) [151] print_char_cursor#223 ? print_char_cursor#132 -Coalesced [153] print_sbyte::b#12 ? print_sbyte::b#3 -Coalesced (already) [156] print_char_cursor#217 ? print_char_cursor#18 -Coalesced (already) [159] print_char_cursor#222 ? print_char_cursor#132 -Coalesced [162] print_sbyte::b#11 ? print_sbyte::b#0 -Coalesced [172] mul8s::m#7 ? mul8s::m#1 -Coalesced [178] mul8s::m#10 ? mul8s::m#2 -Coalesced [181] mul8s::m#9 ? mul8s::m#5 -Coalesced [182] mul8s::m#8 ? mul8s::m#0 -Coalesced [185] mul8u::a#10 ? mul8u::a#6 -Coalesced [186] mul8u::mb#6 ? mul8u::mb#0 -Coalesced [193] mul8u::res#9 ? mul8u::res#1 -Coalesced [197] mul8u::a#11 ? mul8u::a#0 -Coalesced [198] mul8u::res#7 ? mul8u::res#6 -Coalesced [199] mul8u::mb#7 ? mul8u::mb#1 -Coalesced (already) [200] mul8u::res#8 ? mul8u::res#2 -Coalesced [217] mulf8s_prepared::m#7 ? mulf8s_prepared::m#1 -Coalesced [223] mulf8s_prepared::m#10 ? mulf8s_prepared::m#2 -Coalesced [226] mulf8s_prepared::m#9 ? mulf8s_prepared::m#5 -Coalesced [227] mulf8s_prepared::m#8 ? mulf8s_prepared::m#0 -Coalesced [243] muls8s::return#6 ? muls8s::m#1 -Coalesced [246] muls8s::m#10 ? muls8s::m#1 -Coalesced [247] muls8s::j#3 ? muls8s::j#1 -Coalesced [252] muls8s::return#5 ? muls8s::m#2 -Coalesced [253] muls8s::m#11 ? muls8s::m#2 -Coalesced [254] muls8s::i#3 ? muls8s::i#1 -Coalesced [270] mul8u::b#4 ? mul8u::b#1 -Coalesced [271] mul8u::a#9 ? mul8u::a#2 -Coalesced [294] print_char_cursor#198 ? print_char_cursor#31 -Coalesced [296] print_line_cursor#118 ? print_line_cursor#10 -Coalesced (already) [297] print_char_cursor#189 ? print_char_cursor#132 -Coalesced [299] mul8u_compare::a#14 ? mul8u_compare::a#1 -Coalesced [300] mul8u_compare::b#12 ? mul8u_compare::b#1 -Coalesced [301] mul8u_compare::ok#5 ? mul8u_compare::ok#4 -Coalesced (already) [302] print_char_cursor#199 ? print_char_cursor#31 -Coalesced [305] print_byte::b#7 ? print_byte::b#3 -Coalesced (already) [306] print_char_cursor#215 ? print_char_cursor#132 -Coalesced (already) [308] print_char_cursor#200 ? print_char_cursor#18 -Coalesced [311] print_byte::b#8 ? print_byte::b#4 -Coalesced (already) [312] print_char_cursor#216 ? print_char_cursor#132 -Coalesced (already) [314] print_char_cursor#201 ? print_char_cursor#18 -Coalesced [317] print_word::w#8 ? print_word::w#3 -Coalesced (already) [318] print_char_cursor#209 ? print_char_cursor#132 -Coalesced (already) [320] print_char_cursor#202 ? print_char_cursor#18 -Coalesced [323] print_word::w#9 ? print_word::w#4 -Coalesced (already) [324] print_char_cursor#210 ? print_char_cursor#132 -Coalesced (already) [326] print_char_cursor#203 ? print_char_cursor#18 -Coalesced [329] print_word::w#10 ? print_word::w#5 -Coalesced (already) [330] print_char_cursor#211 ? print_char_cursor#132 -Coalesced (already) [332] print_line_cursor#119 ? print_line_cursor#10 -Coalesced (already) [333] print_char_cursor#190 ? print_char_cursor#18 -Coalesced [337] mulf8u_prepare::a#4 ? mulf8u_prepare::a#0 -Coalesced [340] mulf8u_prepared::b#4 ? mulf8u_prepared::b#0 -Coalesced [350] muls8u::return#5 ? muls8u::m#1 -Coalesced [353] muls8u::m#5 ? muls8u::m#1 -Coalesced [354] muls8u::i#3 ? muls8u::i#1 -Coalesced (already) [361] print_char_cursor#212 ? print_char_cursor#132 -Coalesced (already) [363] print_char_cursor#204 ? print_char_cursor#18 -Coalesced (already) [366] print_char_cursor#213 ? print_char_cursor#132 -Coalesced (already) [368] print_char_cursor#226 ? print_char_cursor#18 -Coalesced (already) [376] print_char_cursor#191 ? print_char_cursor#132 -Not coalescing [378] print_char_cursor#225 ? print_line_cursor#1 -Coalesced (already) [379] print_line_cursor#122 ? print_line_cursor#1 -Coalesced [380] mulf_tables_cmp::kc_sqr#8 ? mulf_tables_cmp::kc_sqr#1 -Coalesced [381] mulf_tables_cmp::asm_sqr#6 ? mulf_tables_cmp::asm_sqr#1 -Coalesced [395] mulf_init::sqr#8 ? mulf_init::sqr#2 -Coalesced [396] mulf_init::x_2#7 ? mulf_init::x_2#1 -Coalesced [419] mulf_init::x_255#5 ? mulf_init::x_255#1 -Coalesced [420] mulf_init::sqr2_lo#5 ? mulf_init::sqr2_lo#1 -Coalesced [421] mulf_init::sqr2_hi#5 ? mulf_init::sqr2_hi#1 -Coalesced [422] mulf_init::dir#4 ? mulf_init::dir#3 -Coalesced (already) [423] mulf_init::dir#5 ? mulf_init::dir#2 -Coalesced [424] mulf_init::c#5 ? mulf_init::c#1 -Coalesced [425] mulf_init::sqr#6 ? mulf_init::sqr#1 -Coalesced [426] mulf_init::sqr1_lo#5 ? mulf_init::sqr1_lo#1 -Coalesced [427] mulf_init::sqr1_hi#5 ? mulf_init::sqr1_hi#1 -Coalesced [428] mulf_init::x_2#5 ? mulf_init::x_2#2 -Coalesced [429] mulf_init::sqr#7 ? mulf_init::sqr#4 -Coalesced (already) [430] mulf_init::x_2#6 ? mulf_init::x_2#3 -Coalesced [437] print_cls::sc#3 ? print_cls::sc#1 +Not coalescing [54] print_char_cursor#192 ← print_line_cursor#1 +Coalesced [56] print_line_cursor#116 ← print_line_cursor#1 +Coalesced [57] print_char_cursor#187 ← print_char_cursor#132 +Coalesced [59] mul8s_compare::a#14 ← mul8s_compare::a#1 +Coalesced [60] mul8s_compare::b#12 ← mul8s_compare::b#1 +Coalesced [61] mul8s_compare::ok#5 ← mul8s_compare::ok#4 +Coalesced [63] print_line_cursor#120 ← print_line_cursor#45 +Coalesced (already) [68] print_line_cursor#121 ← print_line_cursor#1 +Coalesced [70] print_str::str#19 ← print_str::str#18 +Coalesced [71] print_char_cursor#205 ← print_char_cursor#152 +Coalesced [78] print_str::str#20 ← print_str::str#0 +Coalesced [79] print_char_cursor#206 ← print_char_cursor#1 +Not coalescing [80] print_char_cursor#193 ← print_line_cursor#1 +Coalesced [83] print_sbyte::b#9 ← print_sbyte::b#1 +Coalesced [85] print_char_cursor#194 ← print_char_cursor#18 +Coalesced [88] print_sbyte::b#10 ← print_sbyte::b#2 +Coalesced (already) [90] print_char_cursor#195 ← print_char_cursor#18 +Coalesced [93] print_sword::w#8 ← print_sword::w#1 +Coalesced (already) [95] print_char_cursor#196 ← print_char_cursor#18 +Coalesced [98] print_sword::w#9 ← print_sword::w#2 +Coalesced (already) [100] print_char_cursor#197 ← print_char_cursor#18 +Coalesced [103] print_sword::w#10 ← print_sword::w#3 +Coalesced (already) [105] print_line_cursor#117 ← print_line_cursor#1 +Coalesced (already) [106] print_char_cursor#188 ← print_char_cursor#18 +Coalesced [111] print_char_cursor#224 ← print_char_cursor#132 +Coalesced [114] print_sword::w#12 ← print_sword::w#0 +Coalesced [115] print_char_cursor#208 ← print_char_cursor#18 +Coalesced [118] print_char_cursor#214 ← print_char_cursor#134 +Coalesced [121] print_sword::w#11 ← print_sword::w#4 +Coalesced (already) [122] print_char_cursor#207 ← print_char_cursor#132 +Coalesced [125] print_byte::b#10 ← print_byte::b#1 +Coalesced [126] print_char_cursor#218 ← print_char_cursor#139 +Coalesced [129] print_byte::b#11 ← print_byte::b#2 +Coalesced (already) [130] print_char_cursor#219 ← print_char_cursor#18 +Coalesced [136] print_char::ch#6 ← print_char::ch#3 +Coalesced (already) [137] print_char_cursor#220 ← print_char_cursor#140 +Coalesced [141] print_char::ch#7 ← print_char::ch#4 +Coalesced (already) [142] print_char_cursor#221 ← print_char_cursor#18 +Coalesced (already) [151] print_char_cursor#223 ← print_char_cursor#132 +Coalesced [153] print_sbyte::b#12 ← print_sbyte::b#3 +Coalesced (already) [156] print_char_cursor#217 ← print_char_cursor#18 +Coalesced (already) [159] print_char_cursor#222 ← print_char_cursor#132 +Coalesced [162] print_sbyte::b#11 ← print_sbyte::b#0 +Coalesced [172] mul8s::m#7 ← mul8s::m#1 +Coalesced [178] mul8s::m#10 ← mul8s::m#2 +Coalesced [181] mul8s::m#9 ← mul8s::m#5 +Coalesced [182] mul8s::m#8 ← mul8s::m#0 +Coalesced [185] mul8u::a#10 ← mul8u::a#6 +Coalesced [186] mul8u::mb#6 ← mul8u::mb#0 +Coalesced [193] mul8u::res#9 ← mul8u::res#1 +Coalesced [197] mul8u::a#11 ← mul8u::a#0 +Coalesced [198] mul8u::res#7 ← mul8u::res#6 +Coalesced [199] mul8u::mb#7 ← mul8u::mb#1 +Coalesced (already) [200] mul8u::res#8 ← mul8u::res#2 +Coalesced [217] mulf8s_prepared::m#7 ← mulf8s_prepared::m#1 +Coalesced [223] mulf8s_prepared::m#10 ← mulf8s_prepared::m#2 +Coalesced [226] mulf8s_prepared::m#9 ← mulf8s_prepared::m#5 +Coalesced [227] mulf8s_prepared::m#8 ← mulf8s_prepared::m#0 +Coalesced [243] muls8s::return#6 ← muls8s::m#1 +Coalesced [246] muls8s::m#10 ← muls8s::m#1 +Coalesced [247] muls8s::j#3 ← muls8s::j#1 +Coalesced [252] muls8s::return#5 ← muls8s::m#2 +Coalesced [253] muls8s::m#11 ← muls8s::m#2 +Coalesced [254] muls8s::i#3 ← muls8s::i#1 +Coalesced [270] mul8u::b#4 ← mul8u::b#1 +Coalesced [271] mul8u::a#9 ← mul8u::a#2 +Coalesced [294] print_char_cursor#198 ← print_char_cursor#31 +Coalesced [296] print_line_cursor#118 ← print_line_cursor#10 +Coalesced (already) [297] print_char_cursor#189 ← print_char_cursor#132 +Coalesced [299] mul8u_compare::a#14 ← mul8u_compare::a#1 +Coalesced [300] mul8u_compare::b#12 ← mul8u_compare::b#1 +Coalesced [301] mul8u_compare::ok#5 ← mul8u_compare::ok#4 +Coalesced (already) [302] print_char_cursor#199 ← print_char_cursor#31 +Coalesced [305] print_byte::b#7 ← print_byte::b#3 +Coalesced (already) [306] print_char_cursor#215 ← print_char_cursor#132 +Coalesced (already) [308] print_char_cursor#200 ← print_char_cursor#18 +Coalesced [311] print_byte::b#8 ← print_byte::b#4 +Coalesced (already) [312] print_char_cursor#216 ← print_char_cursor#132 +Coalesced (already) [314] print_char_cursor#201 ← print_char_cursor#18 +Coalesced [317] print_word::w#8 ← print_word::w#3 +Coalesced (already) [318] print_char_cursor#209 ← print_char_cursor#132 +Coalesced (already) [320] print_char_cursor#202 ← print_char_cursor#18 +Coalesced [323] print_word::w#9 ← print_word::w#4 +Coalesced (already) [324] print_char_cursor#210 ← print_char_cursor#132 +Coalesced (already) [326] print_char_cursor#203 ← print_char_cursor#18 +Coalesced [329] print_word::w#10 ← print_word::w#5 +Coalesced (already) [330] print_char_cursor#211 ← print_char_cursor#132 +Coalesced (already) [332] print_line_cursor#119 ← print_line_cursor#10 +Coalesced (already) [333] print_char_cursor#190 ← print_char_cursor#18 +Coalesced [337] mulf8u_prepare::a#4 ← mulf8u_prepare::a#0 +Coalesced [340] mulf8u_prepared::b#4 ← mulf8u_prepared::b#0 +Coalesced [350] muls8u::return#5 ← muls8u::m#1 +Coalesced [353] muls8u::m#5 ← muls8u::m#1 +Coalesced [354] muls8u::i#3 ← muls8u::i#1 +Coalesced (already) [361] print_char_cursor#212 ← print_char_cursor#132 +Coalesced (already) [363] print_char_cursor#204 ← print_char_cursor#18 +Coalesced (already) [366] print_char_cursor#213 ← print_char_cursor#132 +Coalesced (already) [368] print_char_cursor#226 ← print_char_cursor#18 +Coalesced (already) [376] print_char_cursor#191 ← print_char_cursor#132 +Not coalescing [378] print_char_cursor#225 ← print_line_cursor#1 +Coalesced (already) [379] print_line_cursor#122 ← print_line_cursor#1 +Coalesced [380] mulf_tables_cmp::kc_sqr#8 ← mulf_tables_cmp::kc_sqr#1 +Coalesced [381] mulf_tables_cmp::asm_sqr#6 ← mulf_tables_cmp::asm_sqr#1 +Coalesced [395] mulf_init::sqr#8 ← mulf_init::sqr#2 +Coalesced [396] mulf_init::x_2#7 ← mulf_init::x_2#1 +Coalesced [419] mulf_init::x_255#5 ← mulf_init::x_255#1 +Coalesced [420] mulf_init::sqr2_lo#5 ← mulf_init::sqr2_lo#1 +Coalesced [421] mulf_init::sqr2_hi#5 ← mulf_init::sqr2_hi#1 +Coalesced [422] mulf_init::dir#4 ← mulf_init::dir#3 +Coalesced (already) [423] mulf_init::dir#5 ← mulf_init::dir#2 +Coalesced [424] mulf_init::c#5 ← mulf_init::c#1 +Coalesced [425] mulf_init::sqr#6 ← mulf_init::sqr#1 +Coalesced [426] mulf_init::sqr1_lo#5 ← mulf_init::sqr1_lo#1 +Coalesced [427] mulf_init::sqr1_hi#5 ← mulf_init::sqr1_hi#1 +Coalesced [428] mulf_init::x_2#5 ← mulf_init::x_2#2 +Coalesced [429] mulf_init::sqr#7 ← mulf_init::sqr#4 +Coalesced (already) [430] mulf_init::x_2#6 ← mulf_init::x_2#3 +Coalesced [437] print_cls::sc#3 ← print_cls::sc#1 Coalesced down to 39 phi equivalence classes Culled Empty Block (label) mul8s_compare::@7 Culled Empty Block (label) mul8s_compare::@18 @@ -3612,7 +3612,7 @@ FINAL CONTROL FLOW GRAPH @end: scope:[] from @1 [3] phi() main: scope:[main] from @1 - [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [5] call print_cls to:main::@1 main::@1: scope:[main] from main @@ -3642,66 +3642,66 @@ mul8s_compare: scope:[mul8s_compare] from main::@5 [17] phi() to:mul8s_compare::@1 mul8s_compare::@1: scope:[mul8s_compare] from mul8s_compare mul8s_compare::@8 - [18] (signed byte) mul8s_compare::a#7 ? phi( mul8s_compare/-(byte/word/signed word/dword/signed dword) $80 mul8s_compare::@8/(signed byte) mul8s_compare::a#1 ) + [18] (signed byte) mul8s_compare::a#7 ← phi( mul8s_compare/-(byte/word/signed word/dword/signed dword) $80 mul8s_compare::@8/(signed byte) mul8s_compare::a#1 ) to:mul8s_compare::@2 mul8s_compare::@2: scope:[mul8s_compare] from mul8s_compare::@1 mul8s_compare::@5 - [19] (signed byte) mul8s_compare::b#10 ? phi( mul8s_compare::@1/-(byte/word/signed word/dword/signed dword) $80 mul8s_compare::@5/(signed byte) mul8s_compare::b#1 ) - [20] (signed byte) muls8s::a#0 ? (signed byte) mul8s_compare::a#7 - [21] (signed byte) muls8s::b#0 ? (signed byte) mul8s_compare::b#10 + [19] (signed byte) mul8s_compare::b#10 ← phi( mul8s_compare::@1/-(byte/word/signed word/dword/signed dword) $80 mul8s_compare::@5/(signed byte) mul8s_compare::b#1 ) + [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_compare::a#7 + [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_compare::b#10 [22] call muls8s - [23] (signed word) muls8s::return#2 ? (signed word) muls8s::return#0 + [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 to:mul8s_compare::@10 mul8s_compare::@10: scope:[mul8s_compare] from mul8s_compare::@2 - [24] (signed word) mul8s_compare::ms#0 ? (signed word) muls8s::return#2 - [25] (signed byte) mulf8s::a#0 ? (signed byte) mul8s_compare::a#7 - [26] (signed byte) mulf8s::b#0 ? (signed byte) mul8s_compare::b#10 + [24] (signed word) mul8s_compare::ms#0 ← (signed word) muls8s::return#2 + [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_compare::a#7 + [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_compare::b#10 [27] call mulf8s - [28] (signed word) mulf8s::return#2 ? (signed word) mulf8s::return#0 + [28] (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#0 to:mul8s_compare::@11 mul8s_compare::@11: scope:[mul8s_compare] from mul8s_compare::@10 - [29] (signed word) mul8s_compare::mf#0 ? (signed word) mulf8s::return#2 - [30] (signed byte) mul8s::a#0 ? (signed byte) mul8s_compare::a#7 - [31] (signed byte) mul8s::b#0 ? (signed byte) mul8s_compare::b#10 + [29] (signed word) mul8s_compare::mf#0 ← (signed word) mulf8s::return#2 + [30] (signed byte) mul8s::a#0 ← (signed byte) mul8s_compare::a#7 + [31] (signed byte) mul8s::b#0 ← (signed byte) mul8s_compare::b#10 [32] call mul8s - [33] (signed word) mul8s::return#2 ? (signed word)(word) mul8s::m#4 + [33] (signed word) mul8s::return#2 ← (signed word)(word) mul8s::m#4 to:mul8s_compare::@12 mul8s_compare::@12: scope:[mul8s_compare] from mul8s_compare::@11 - [34] (signed word) mul8s_compare::mn#0 ? (signed word) mul8s::return#2 + [34] (signed word) mul8s_compare::mn#0 ← (signed word) mul8s::return#2 [35] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mf#0) goto mul8s_compare::@3 to:mul8s_compare::@6 mul8s_compare::@6: scope:[mul8s_compare] from mul8s_compare::@12 [36] phi() to:mul8s_compare::@3 mul8s_compare::@3: scope:[mul8s_compare] from mul8s_compare::@12 mul8s_compare::@6 - [37] (byte) mul8s_compare::ok#4 ? phi( mul8s_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul8s_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [37] (byte) mul8s_compare::ok#4 ← phi( mul8s_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul8s_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [38] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mn#0) goto mul8s_compare::@14 to:mul8s_compare::@4 mul8s_compare::@4: scope:[mul8s_compare] from mul8s_compare::@14 mul8s_compare::@3 - [39] (byte) mul8s_compare::ok#3 ? phi( mul8s_compare::@14/(byte) mul8s_compare::ok#4 mul8s_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [39] (byte) mul8s_compare::ok#3 ← phi( mul8s_compare::@14/(byte) mul8s_compare::ok#4 mul8s_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [40] if((byte) mul8s_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8s_compare::@5 to:mul8s_compare::@7 mul8s_compare::@7: scope:[mul8s_compare] from mul8s_compare::@4 - [41] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - [42] (signed byte) mul8s_error::a#0 ? (signed byte) mul8s_compare::a#7 - [43] (signed byte) mul8s_error::b#0 ? (signed byte) mul8s_compare::b#10 - [44] (signed word) mul8s_error::ms#0 ? (signed word) mul8s_compare::ms#0 - [45] (signed word) mul8s_error::mn#0 ? (signed word) mul8s_compare::mn#0 - [46] (signed word) mul8s_error::mf#0 ? (signed word) mul8s_compare::mf#0 + [41] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + [42] (signed byte) mul8s_error::a#0 ← (signed byte) mul8s_compare::a#7 + [43] (signed byte) mul8s_error::b#0 ← (signed byte) mul8s_compare::b#10 + [44] (signed word) mul8s_error::ms#0 ← (signed word) mul8s_compare::ms#0 + [45] (signed word) mul8s_error::mn#0 ← (signed word) mul8s_compare::mn#0 + [46] (signed word) mul8s_error::mf#0 ← (signed word) mul8s_compare::mf#0 [47] call mul8s_error to:mul8s_compare::@return mul8s_compare::@return: scope:[mul8s_compare] from mul8s_compare::@13 mul8s_compare::@7 [48] return to:@return mul8s_compare::@5: scope:[mul8s_compare] from mul8s_compare::@4 - [49] (signed byte) mul8s_compare::b#1 ? ++ (signed byte) mul8s_compare::b#10 + [49] (signed byte) mul8s_compare::b#1 ← ++ (signed byte) mul8s_compare::b#10 [50] if((signed byte) mul8s_compare::b#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@2 to:mul8s_compare::@8 mul8s_compare::@8: scope:[mul8s_compare] from mul8s_compare::@5 - [51] (signed byte) mul8s_compare::a#1 ? ++ (signed byte) mul8s_compare::a#7 + [51] (signed byte) mul8s_compare::a#1 ← ++ (signed byte) mul8s_compare::a#7 [52] if((signed byte) mul8s_compare::a#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@1 to:mul8s_compare::@9 mul8s_compare::@9: scope:[mul8s_compare] from mul8s_compare::@8 - [53] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 + [53] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 [54] call print_str to:mul8s_compare::@13 mul8s_compare::@13: scope:[mul8s_compare] from mul8s_compare::@9 @@ -3712,40 +3712,40 @@ mul8s_compare::@14: scope:[mul8s_compare] from mul8s_compare::@3 [57] phi() to:mul8s_compare::@4 print_ln: scope:[print_ln] from mul8s_compare::@13 mul8s_error::@10 mul8u_compare::@13 mul8u_error::@10 mulf_tables_cmp::@8 - [58] (byte*) print_char_cursor#133 ? phi( mul8s_compare::@13/(byte*) print_char_cursor#132 mul8s_error::@10/(byte*) print_char_cursor#18 mul8u_compare::@13/(byte*) print_char_cursor#132 mul8u_error::@10/(byte*) print_char_cursor#18 mulf_tables_cmp::@8/(byte*) print_char_cursor#132 ) - [58] (byte*) print_line_cursor#45 ? phi( mul8s_compare::@13/(byte*) print_line_cursor#1 mul8s_error::@10/(byte*) print_line_cursor#1 mul8u_compare::@13/(byte*) print_line_cursor#10 mul8u_error::@10/(byte*) print_line_cursor#10 mulf_tables_cmp::@8/((byte*))(word/signed word/dword/signed dword) $400 ) + [58] (byte*) print_char_cursor#133 ← phi( mul8s_compare::@13/(byte*) print_char_cursor#132 mul8s_error::@10/(byte*) print_char_cursor#18 mul8u_compare::@13/(byte*) print_char_cursor#132 mul8u_error::@10/(byte*) print_char_cursor#18 mulf_tables_cmp::@8/(byte*) print_char_cursor#132 ) + [58] (byte*) print_line_cursor#45 ← phi( mul8s_compare::@13/(byte*) print_line_cursor#1 mul8s_error::@10/(byte*) print_line_cursor#1 mul8u_compare::@13/(byte*) print_line_cursor#10 mul8u_error::@10/(byte*) print_line_cursor#10 mulf_tables_cmp::@8/((byte*))(word/signed word/dword/signed dword) $400 ) to:print_ln::@1 print_ln::@1: scope:[print_ln] from print_ln print_ln::@1 - [59] (byte*) print_line_cursor#23 ? phi( print_ln/(byte*) print_line_cursor#45 print_ln::@1/(byte*) print_line_cursor#1 ) - [60] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [59] (byte*) print_line_cursor#23 ← phi( print_ln/(byte*) print_line_cursor#45 print_ln::@1/(byte*) print_line_cursor#1 ) + [60] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 [61] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#133) goto print_ln::@1 to:print_ln::@return print_ln::@return: scope:[print_ln] from print_ln::@1 [62] return to:@return print_str: scope:[print_str] from mul8s_compare::@9 mul8s_error mul8s_error::@2 mul8s_error::@4 mul8s_error::@6 mul8s_error::@8 mul8u_compare::@9 mul8u_error mul8u_error::@2 mul8u_error::@4 mul8u_error::@6 mul8u_error::@8 mulf_tables_cmp::@3 mulf_tables_cmp::@4 mulf_tables_cmp::@6 - [63] (byte*) print_char_cursor#152 ? phi( mul8s_compare::@9/(byte*~) print_char_cursor#192 mul8s_error/(byte*~) print_char_cursor#193 mul8s_error::@2/(byte*) print_char_cursor#18 mul8s_error::@4/(byte*) print_char_cursor#18 mul8s_error::@6/(byte*) print_char_cursor#18 mul8s_error::@8/(byte*) print_char_cursor#18 mul8u_compare::@9/(byte*) print_char_cursor#31 mul8u_error/(byte*) print_char_cursor#31 mul8u_error::@2/(byte*) print_char_cursor#18 mul8u_error::@4/(byte*) print_char_cursor#18 mul8u_error::@6/(byte*) print_char_cursor#18 mul8u_error::@8/(byte*) print_char_cursor#18 mulf_tables_cmp::@3/((byte*))(word/signed word/dword/signed dword) $400 mulf_tables_cmp::@4/((byte*))(word/signed word/dword/signed dword) $400 mulf_tables_cmp::@6/(byte*) print_char_cursor#18 ) - [63] (byte*) print_str::str#18 ? phi( mul8s_compare::@9/(const string) mul8s_compare::str mul8s_error/(const string) mul8s_error::str mul8s_error::@2/(const string) str1 mul8s_error::@4/(const string) str2 mul8s_error::@6/(const string) str3 mul8s_error::@8/(const string) str4 mul8u_compare::@9/(const string) mul8u_compare::str mul8u_error/(const string) mul8u_error::str mul8u_error::@2/(const string) str1 mul8u_error::@4/(const string) str2 mul8u_error::@6/(const string) str3 mul8u_error::@8/(const string) str4 mulf_tables_cmp::@3/(const string) mulf_tables_cmp::str mulf_tables_cmp::@4/(const string) mulf_tables_cmp::str2 mulf_tables_cmp::@6/(const string) mulf_tables_cmp::str1 ) + [63] (byte*) print_char_cursor#152 ← phi( mul8s_compare::@9/(byte*~) print_char_cursor#192 mul8s_error/(byte*~) print_char_cursor#193 mul8s_error::@2/(byte*) print_char_cursor#18 mul8s_error::@4/(byte*) print_char_cursor#18 mul8s_error::@6/(byte*) print_char_cursor#18 mul8s_error::@8/(byte*) print_char_cursor#18 mul8u_compare::@9/(byte*) print_char_cursor#31 mul8u_error/(byte*) print_char_cursor#31 mul8u_error::@2/(byte*) print_char_cursor#18 mul8u_error::@4/(byte*) print_char_cursor#18 mul8u_error::@6/(byte*) print_char_cursor#18 mul8u_error::@8/(byte*) print_char_cursor#18 mulf_tables_cmp::@3/((byte*))(word/signed word/dword/signed dword) $400 mulf_tables_cmp::@4/((byte*))(word/signed word/dword/signed dword) $400 mulf_tables_cmp::@6/(byte*) print_char_cursor#18 ) + [63] (byte*) print_str::str#18 ← phi( mul8s_compare::@9/(const string) mul8s_compare::str mul8s_error/(const string) mul8s_error::str mul8s_error::@2/(const string) str1 mul8s_error::@4/(const string) str2 mul8s_error::@6/(const string) str3 mul8s_error::@8/(const string) str4 mul8u_compare::@9/(const string) mul8u_compare::str mul8u_error/(const string) mul8u_error::str mul8u_error::@2/(const string) str1 mul8u_error::@4/(const string) str2 mul8u_error::@6/(const string) str3 mul8u_error::@8/(const string) str4 mulf_tables_cmp::@3/(const string) mulf_tables_cmp::str mulf_tables_cmp::@4/(const string) mulf_tables_cmp::str2 mulf_tables_cmp::@6/(const string) mulf_tables_cmp::str1 ) to:print_str::@1 print_str::@1: scope:[print_str] from print_str print_str::@2 - [64] (byte*) print_char_cursor#132 ? phi( print_str/(byte*) print_char_cursor#152 print_str::@2/(byte*) print_char_cursor#1 ) - [64] (byte*) print_str::str#16 ? phi( print_str/(byte*) print_str::str#18 print_str::@2/(byte*) print_str::str#0 ) + [64] (byte*) print_char_cursor#132 ← phi( print_str/(byte*) print_char_cursor#152 print_str::@2/(byte*) print_char_cursor#1 ) + [64] (byte*) print_str::str#16 ← phi( print_str/(byte*) print_str::str#18 print_str::@2/(byte*) print_str::str#0 ) [65] if(*((byte*) print_str::str#16)!=(byte) '@') goto print_str::@2 to:print_str::@return print_str::@return: scope:[print_str] from print_str::@1 [66] return to:@return print_str::@2: scope:[print_str] from print_str::@1 - [67] *((byte*) print_char_cursor#132) ? *((byte*) print_str::str#16) - [68] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#132 - [69] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#16 + [67] *((byte*) print_char_cursor#132) ← *((byte*) print_str::str#16) + [68] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#132 + [69] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#16 to:print_str::@1 mul8s_error: scope:[mul8s_error] from mul8s_compare::@7 - [70] (byte*~) print_char_cursor#193 ? (byte*) print_line_cursor#1 + [70] (byte*~) print_char_cursor#193 ← (byte*) print_line_cursor#1 [71] call print_str to:mul8s_error::@1 mul8s_error::@1: scope:[mul8s_error] from mul8s_error - [72] (signed byte) print_sbyte::b#1 ? (signed byte) mul8s_error::a#0 + [72] (signed byte) print_sbyte::b#1 ← (signed byte) mul8s_error::a#0 [73] call print_sbyte to:mul8s_error::@2 mul8s_error::@2: scope:[mul8s_error] from mul8s_error::@1 @@ -3753,7 +3753,7 @@ mul8s_error::@2: scope:[mul8s_error] from mul8s_error::@1 [75] call print_str to:mul8s_error::@3 mul8s_error::@3: scope:[mul8s_error] from mul8s_error::@2 - [76] (signed byte) print_sbyte::b#2 ? (signed byte) mul8s_error::b#0 + [76] (signed byte) print_sbyte::b#2 ← (signed byte) mul8s_error::b#0 [77] call print_sbyte to:mul8s_error::@4 mul8s_error::@4: scope:[mul8s_error] from mul8s_error::@3 @@ -3761,7 +3761,7 @@ mul8s_error::@4: scope:[mul8s_error] from mul8s_error::@3 [79] call print_str to:mul8s_error::@5 mul8s_error::@5: scope:[mul8s_error] from mul8s_error::@4 - [80] (signed word) print_sword::w#1 ? (signed word) mul8s_error::ms#0 + [80] (signed word) print_sword::w#1 ← (signed word) mul8s_error::ms#0 [81] call print_sword to:mul8s_error::@6 mul8s_error::@6: scope:[mul8s_error] from mul8s_error::@5 @@ -3769,7 +3769,7 @@ mul8s_error::@6: scope:[mul8s_error] from mul8s_error::@5 [83] call print_str to:mul8s_error::@7 mul8s_error::@7: scope:[mul8s_error] from mul8s_error::@6 - [84] (signed word) print_sword::w#2 ? (signed word) mul8s_error::mn#0 + [84] (signed word) print_sword::w#2 ← (signed word) mul8s_error::mn#0 [85] call print_sword to:mul8s_error::@8 mul8s_error::@8: scope:[mul8s_error] from mul8s_error::@7 @@ -3777,7 +3777,7 @@ mul8s_error::@8: scope:[mul8s_error] from mul8s_error::@7 [87] call print_str to:mul8s_error::@9 mul8s_error::@9: scope:[mul8s_error] from mul8s_error::@8 - [88] (signed word) print_sword::w#3 ? (signed word) mul8s_error::mf#0 + [88] (signed word) print_sword::w#3 ← (signed word) mul8s_error::mf#0 [89] call print_sword to:mul8s_error::@10 mul8s_error::@10: scope:[mul8s_error] from mul8s_error::@9 @@ -3788,7 +3788,7 @@ mul8s_error::@return: scope:[mul8s_error] from mul8s_error::@10 [92] return to:@return print_sword: scope:[print_sword] from mul8s_error::@5 mul8s_error::@7 mul8s_error::@9 - [93] (signed word) print_sword::w#4 ? phi( mul8s_error::@5/(signed word) print_sword::w#1 mul8s_error::@7/(signed word) print_sword::w#2 mul8s_error::@9/(signed word) print_sword::w#3 ) + [93] (signed word) print_sword::w#4 ← phi( mul8s_error::@5/(signed word) print_sword::w#1 mul8s_error::@7/(signed word) print_sword::w#2 mul8s_error::@9/(signed word) print_sword::w#3 ) [94] if((signed word) print_sword::w#4>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 to:print_sword::@2 print_sword::@2: scope:[print_sword] from print_sword @@ -3796,56 +3796,56 @@ print_sword::@2: scope:[print_sword] from print_sword [96] call print_char to:print_sword::@3 print_sword::@3: scope:[print_sword] from print_sword::@2 - [97] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#4 + [97] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#4 to:print_sword::@1 print_sword::@1: scope:[print_sword] from print_sword print_sword::@3 - [98] (byte*) print_char_cursor#134 ? phi( print_sword/(byte*) print_char_cursor#132 print_sword::@3/(byte*) print_char_cursor#18 ) - [98] (signed word) print_sword::w#5 ? phi( print_sword/(signed word) print_sword::w#4 print_sword::@3/(signed word) print_sword::w#0 ) - [99] (word~) print_word::w#13 ? (word)(signed word) print_sword::w#5 + [98] (byte*) print_char_cursor#134 ← phi( print_sword/(byte*) print_char_cursor#132 print_sword::@3/(byte*) print_char_cursor#18 ) + [98] (signed word) print_sword::w#5 ← phi( print_sword/(signed word) print_sword::w#4 print_sword::@3/(signed word) print_sword::w#0 ) + [99] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#5 [100] call print_word to:print_sword::@return print_sword::@return: scope:[print_sword] from print_sword::@1 [101] return to:@return print_word: scope:[print_word] from mul8u_error::@5 mul8u_error::@7 mul8u_error::@9 mulf_tables_cmp::@5 mulf_tables_cmp::@7 print_sword::@1 - [102] (byte*) print_char_cursor#139 ? phi( mul8u_error::@5/(byte*) print_char_cursor#132 mul8u_error::@7/(byte*) print_char_cursor#132 mul8u_error::@9/(byte*) print_char_cursor#132 mulf_tables_cmp::@5/(byte*) print_char_cursor#132 mulf_tables_cmp::@7/(byte*) print_char_cursor#132 print_sword::@1/(byte*) print_char_cursor#134 ) - [102] (word) print_word::w#6 ? phi( mul8u_error::@5/(word) print_word::w#3 mul8u_error::@7/(word) print_word::w#4 mul8u_error::@9/(word) print_word::w#5 mulf_tables_cmp::@5/(word~) print_word::w#11 mulf_tables_cmp::@7/(word~) print_word::w#12 print_sword::@1/(word~) print_word::w#13 ) - [103] (byte) print_byte::b#1 ? > (word) print_word::w#6 + [102] (byte*) print_char_cursor#139 ← phi( mul8u_error::@5/(byte*) print_char_cursor#132 mul8u_error::@7/(byte*) print_char_cursor#132 mul8u_error::@9/(byte*) print_char_cursor#132 mulf_tables_cmp::@5/(byte*) print_char_cursor#132 mulf_tables_cmp::@7/(byte*) print_char_cursor#132 print_sword::@1/(byte*) print_char_cursor#134 ) + [102] (word) print_word::w#6 ← phi( mul8u_error::@5/(word) print_word::w#3 mul8u_error::@7/(word) print_word::w#4 mul8u_error::@9/(word) print_word::w#5 mulf_tables_cmp::@5/(word~) print_word::w#11 mulf_tables_cmp::@7/(word~) print_word::w#12 print_sword::@1/(word~) print_word::w#13 ) + [103] (byte) print_byte::b#1 ← > (word) print_word::w#6 [104] call print_byte to:print_word::@1 print_word::@1: scope:[print_word] from print_word - [105] (byte) print_byte::b#2 ? < (word) print_word::w#6 + [105] (byte) print_byte::b#2 ← < (word) print_word::w#6 [106] call print_byte to:print_word::@return print_word::@return: scope:[print_word] from print_word::@1 [107] return to:@return print_byte: scope:[print_byte] from mul8u_error::@1 mul8u_error::@3 print_sbyte::@2 print_word print_word::@1 - [108] (byte*) print_char_cursor#140 ? phi( mul8u_error::@1/(byte*) print_char_cursor#132 mul8u_error::@3/(byte*) print_char_cursor#132 print_sbyte::@2/(byte*) print_char_cursor#18 print_word/(byte*) print_char_cursor#139 print_word::@1/(byte*) print_char_cursor#18 ) - [108] (byte) print_byte::b#5 ? phi( mul8u_error::@1/(byte) print_byte::b#3 mul8u_error::@3/(byte) print_byte::b#4 print_sbyte::@2/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) - [109] (byte~) print_byte::$0 ? (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 - [110] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) + [108] (byte*) print_char_cursor#140 ← phi( mul8u_error::@1/(byte*) print_char_cursor#132 mul8u_error::@3/(byte*) print_char_cursor#132 print_sbyte::@2/(byte*) print_char_cursor#18 print_word/(byte*) print_char_cursor#139 print_word::@1/(byte*) print_char_cursor#18 ) + [108] (byte) print_byte::b#5 ← phi( mul8u_error::@1/(byte) print_byte::b#3 mul8u_error::@3/(byte) print_byte::b#4 print_sbyte::@2/(byte~) print_byte::b#9 print_word/(byte) print_byte::b#1 print_word::@1/(byte) print_byte::b#2 ) + [109] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 + [110] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) [111] call print_char to:print_byte::@1 print_byte::@1: scope:[print_byte] from print_byte - [112] (byte~) print_byte::$2 ? (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f - [113] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) + [112] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f + [113] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) [114] call print_char to:print_byte::@return print_byte::@return: scope:[print_byte] from print_byte::@1 [115] return to:@return print_char: scope:[print_char] from print_byte print_byte::@1 print_sbyte::@1 print_sbyte::@3 print_sword::@2 - [116] (byte*) print_char_cursor#84 ? phi( print_byte/(byte*) print_char_cursor#140 print_byte::@1/(byte*) print_char_cursor#18 print_sbyte::@1/(byte*) print_char_cursor#132 print_sbyte::@3/(byte*) print_char_cursor#132 print_sword::@2/(byte*) print_char_cursor#132 ) - [116] (byte) print_char::ch#5 ? phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' print_sword::@2/(byte) '-' ) - [117] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#5 - [118] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#84 + [116] (byte*) print_char_cursor#84 ← phi( print_byte/(byte*) print_char_cursor#140 print_byte::@1/(byte*) print_char_cursor#18 print_sbyte::@1/(byte*) print_char_cursor#132 print_sbyte::@3/(byte*) print_char_cursor#132 print_sword::@2/(byte*) print_char_cursor#132 ) + [116] (byte) print_char::ch#5 ← phi( print_byte/(byte) print_char::ch#3 print_byte::@1/(byte) print_char::ch#4 print_sbyte::@1/(byte) '-' print_sbyte::@3/(byte) ' ' print_sword::@2/(byte) '-' ) + [117] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#5 + [118] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#84 to:print_char::@return print_char::@return: scope:[print_char] from print_char [119] return to:@return print_sbyte: scope:[print_sbyte] from mul8s_error::@1 mul8s_error::@3 - [120] (signed byte) print_sbyte::b#3 ? phi( mul8s_error::@1/(signed byte) print_sbyte::b#1 mul8s_error::@3/(signed byte) print_sbyte::b#2 ) + [120] (signed byte) print_sbyte::b#3 ← phi( mul8s_error::@1/(signed byte) print_sbyte::b#1 mul8s_error::@3/(signed byte) print_sbyte::b#2 ) [121] if((signed byte) print_sbyte::b#3<(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sbyte::@1 to:print_sbyte::@3 print_sbyte::@3: scope:[print_sbyte] from print_sbyte @@ -3853,8 +3853,8 @@ print_sbyte::@3: scope:[print_sbyte] from print_sbyte [123] call print_char to:print_sbyte::@2 print_sbyte::@2: scope:[print_sbyte] from print_sbyte::@3 print_sbyte::@4 - [124] (signed byte) print_sbyte::b#5 ? phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#3 ) - [125] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#5 + [124] (signed byte) print_sbyte::b#5 ← phi( print_sbyte::@4/(signed byte) print_sbyte::b#0 print_sbyte::@3/(signed byte) print_sbyte::b#3 ) + [125] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#5 [126] call print_byte to:print_sbyte::@return print_sbyte::@return: scope:[print_sbyte] from print_sbyte::@2 @@ -3865,123 +3865,123 @@ print_sbyte::@1: scope:[print_sbyte] from print_sbyte [129] call print_char to:print_sbyte::@4 print_sbyte::@4: scope:[print_sbyte] from print_sbyte::@1 - [130] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#3 + [130] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 to:print_sbyte::@2 mul8s: scope:[mul8s] from mul8s_compare::@11 - [131] (byte~) mul8u::b#3 ? (byte)(signed byte) mul8s::b#0 - [132] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8s::a#0 + [131] (byte~) mul8u::b#3 ← (byte)(signed byte) mul8s::b#0 + [132] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8s::a#0 [133] call mul8u - [134] (word) mul8u::return#2 ? (word) mul8u::res#2 + [134] (word) mul8u::return#2 ← (word) mul8u::res#2 to:mul8s::@5 mul8s::@5: scope:[mul8s] from mul8s - [135] (word) mul8s::m#0 ? (word) mul8u::return#2 + [135] (word) mul8s::m#0 ← (word) mul8u::return#2 [136] if((signed byte) mul8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8s::@1 to:mul8s::@3 mul8s::@3: scope:[mul8s] from mul8s::@5 - [137] (byte~) mul8s::$9 ? > (word) mul8s::m#0 - [138] (byte~) mul8s::$16 ? (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 - [139] (word) mul8s::m#1 ? (word) mul8s::m#0 hi= (byte~) mul8s::$16 + [137] (byte~) mul8s::$9 ← > (word) mul8s::m#0 + [138] (byte~) mul8s::$16 ← (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 + [139] (word) mul8s::m#1 ← (word) mul8s::m#0 hi= (byte~) mul8s::$16 to:mul8s::@1 mul8s::@1: scope:[mul8s] from mul8s::@3 mul8s::@5 - [140] (word) mul8s::m#5 ? phi( mul8s::@3/(word) mul8s::m#1 mul8s::@5/(word) mul8s::m#0 ) + [140] (word) mul8s::m#5 ← phi( mul8s::@3/(word) mul8s::m#1 mul8s::@5/(word) mul8s::m#0 ) [141] if((signed byte) mul8s::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8s::@2 to:mul8s::@4 mul8s::@4: scope:[mul8s] from mul8s::@1 - [142] (byte~) mul8s::$13 ? > (word) mul8s::m#5 - [143] (byte~) mul8s::$17 ? (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 - [144] (word) mul8s::m#2 ? (word) mul8s::m#5 hi= (byte~) mul8s::$17 + [142] (byte~) mul8s::$13 ← > (word) mul8s::m#5 + [143] (byte~) mul8s::$17 ← (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 + [144] (word) mul8s::m#2 ← (word) mul8s::m#5 hi= (byte~) mul8s::$17 to:mul8s::@2 mul8s::@2: scope:[mul8s] from mul8s::@1 mul8s::@4 - [145] (word) mul8s::m#4 ? phi( mul8s::@1/(word) mul8s::m#5 mul8s::@4/(word) mul8s::m#2 ) + [145] (word) mul8s::m#4 ← phi( mul8s::@1/(word) mul8s::m#5 mul8s::@4/(word) mul8s::m#2 ) to:mul8s::@return mul8s::@return: scope:[mul8s] from mul8s::@2 [146] return to:@return mul8u: scope:[mul8u] from mul8s mul8u_compare::@11 - [147] (byte) mul8u::a#6 ? phi( mul8s/(byte~) mul8u::a#8 mul8u_compare::@11/(byte) mul8u::a#2 ) - [147] (byte) mul8u::b#2 ? phi( mul8s/(byte~) mul8u::b#3 mul8u_compare::@11/(byte) mul8u::b#1 ) - [148] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 + [147] (byte) mul8u::a#6 ← phi( mul8s/(byte~) mul8u::a#8 mul8u_compare::@11/(byte) mul8u::a#2 ) + [147] (byte) mul8u::b#2 ← phi( mul8s/(byte~) mul8u::b#3 mul8u_compare::@11/(byte) mul8u::b#1 ) + [148] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 to:mul8u::@1 mul8u::@1: scope:[mul8u] from mul8u mul8u::@3 - [149] (word) mul8u::mb#2 ? phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) - [149] (word) mul8u::res#2 ? phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) - [149] (byte) mul8u::a#3 ? phi( mul8u/(byte) mul8u::a#6 mul8u::@3/(byte) mul8u::a#0 ) + [149] (word) mul8u::mb#2 ← phi( mul8u/(word) mul8u::mb#0 mul8u::@3/(word) mul8u::mb#1 ) + [149] (word) mul8u::res#2 ← phi( mul8u/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u::@3/(word) mul8u::res#6 ) + [149] (byte) mul8u::a#3 ← phi( mul8u/(byte) mul8u::a#6 mul8u::@3/(byte) mul8u::a#0 ) [150] if((byte) mul8u::a#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@2 to:mul8u::@return mul8u::@return: scope:[mul8u] from mul8u::@1 [151] return to:@return mul8u::@2: scope:[mul8u] from mul8u::@1 - [152] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [152] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [153] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 to:mul8u::@4 mul8u::@4: scope:[mul8u] from mul8u::@2 - [154] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 + [154] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 to:mul8u::@3 mul8u::@3: scope:[mul8u] from mul8u::@2 mul8u::@4 - [155] (word) mul8u::res#6 ? phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) - [156] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 - [157] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 + [155] (word) mul8u::res#6 ← phi( mul8u::@2/(word) mul8u::res#2 mul8u::@4/(word) mul8u::res#1 ) + [156] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 + [157] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 to:mul8u::@1 mulf8s: scope:[mulf8s] from mul8s_compare::@10 [158] phi() to:mulf8s::mulf8s_prepare1 mulf8s::mulf8s_prepare1: scope:[mulf8s] from mulf8s - [159] (byte~) mulf8u_prepare::a#3 ? (byte)(signed byte) mulf8s::a#0 + [159] (byte~) mulf8u_prepare::a#3 ← (byte)(signed byte) mulf8s::a#0 [160] call mulf8u_prepare to:mulf8s::@1 mulf8s::@1: scope:[mulf8s] from mulf8s::mulf8s_prepare1 - [161] (signed byte) mulf8s_prepared::b#0 ? (signed byte) mulf8s::b#0 + [161] (signed byte) mulf8s_prepared::b#0 ← (signed byte) mulf8s::b#0 [162] call mulf8s_prepared - [163] (signed word) mulf8s_prepared::return#2 ? (signed word)(word) mulf8s_prepared::m#4 + [163] (signed word) mulf8s_prepared::return#2 ← (signed word)(word) mulf8s_prepared::m#4 to:mulf8s::@2 mulf8s::@2: scope:[mulf8s] from mulf8s::@1 - [164] (signed word) mulf8s::return#0 ? (signed word) mulf8s_prepared::return#2 + [164] (signed word) mulf8s::return#0 ← (signed word) mulf8s_prepared::return#2 to:mulf8s::@return mulf8s::@return: scope:[mulf8s] from mulf8s::@2 [165] return to:@return mulf8s_prepared: scope:[mulf8s_prepared] from mulf8s::@1 - [166] (byte~) mulf8u_prepared::b#3 ? (byte)(signed byte) mulf8s_prepared::b#0 + [166] (byte~) mulf8u_prepared::b#3 ← (byte)(signed byte) mulf8s_prepared::b#0 [167] call mulf8u_prepared - [168] (word) mulf8u_prepared::return#3 ? (word) mulf8u_prepared::return#0 + [168] (word) mulf8u_prepared::return#3 ← (word) mulf8u_prepared::return#0 to:mulf8s_prepared::@5 mulf8s_prepared::@5: scope:[mulf8s_prepared] from mulf8s_prepared - [169] (word) mulf8s_prepared::m#0 ? (word) mulf8u_prepared::return#3 + [169] (word) mulf8s_prepared::m#0 ← (word) mulf8u_prepared::return#3 [170] if(*((const signed byte*) mulf8s_prepared::memA#0)>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s_prepared::@1 to:mulf8s_prepared::@3 mulf8s_prepared::@3: scope:[mulf8s_prepared] from mulf8s_prepared::@5 - [171] (byte~) mulf8s_prepared::$8 ? > (word) mulf8s_prepared::m#0 - [172] (byte~) mulf8s_prepared::$15 ? (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 - [173] (word) mulf8s_prepared::m#1 ? (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 + [171] (byte~) mulf8s_prepared::$8 ← > (word) mulf8s_prepared::m#0 + [172] (byte~) mulf8s_prepared::$15 ← (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 + [173] (word) mulf8s_prepared::m#1 ← (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 to:mulf8s_prepared::@1 mulf8s_prepared::@1: scope:[mulf8s_prepared] from mulf8s_prepared::@3 mulf8s_prepared::@5 - [174] (word) mulf8s_prepared::m#5 ? phi( mulf8s_prepared::@3/(word) mulf8s_prepared::m#1 mulf8s_prepared::@5/(word) mulf8s_prepared::m#0 ) + [174] (word) mulf8s_prepared::m#5 ← phi( mulf8s_prepared::@3/(word) mulf8s_prepared::m#1 mulf8s_prepared::@5/(word) mulf8s_prepared::m#0 ) [175] if((signed byte) mulf8s_prepared::b#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s_prepared::@2 to:mulf8s_prepared::@4 mulf8s_prepared::@4: scope:[mulf8s_prepared] from mulf8s_prepared::@1 - [176] (byte~) mulf8s_prepared::$12 ? > (word) mulf8s_prepared::m#5 - [177] (byte~) mulf8s_prepared::$16 ? (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) - [178] (word) mulf8s_prepared::m#2 ? (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 + [176] (byte~) mulf8s_prepared::$12 ← > (word) mulf8s_prepared::m#5 + [177] (byte~) mulf8s_prepared::$16 ← (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) + [178] (word) mulf8s_prepared::m#2 ← (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 to:mulf8s_prepared::@2 mulf8s_prepared::@2: scope:[mulf8s_prepared] from mulf8s_prepared::@1 mulf8s_prepared::@4 - [179] (word) mulf8s_prepared::m#4 ? phi( mulf8s_prepared::@1/(word) mulf8s_prepared::m#5 mulf8s_prepared::@4/(word) mulf8s_prepared::m#2 ) + [179] (word) mulf8s_prepared::m#4 ← phi( mulf8s_prepared::@1/(word) mulf8s_prepared::m#5 mulf8s_prepared::@4/(word) mulf8s_prepared::m#2 ) to:mulf8s_prepared::@return mulf8s_prepared::@return: scope:[mulf8s_prepared] from mulf8s_prepared::@2 [180] return to:@return mulf8u_prepared: scope:[mulf8u_prepared] from mulf8s_prepared mulf8u::@1 - [181] (byte) mulf8u_prepared::b#2 ? phi( mulf8s_prepared/(byte~) mulf8u_prepared::b#3 mulf8u::@1/(byte) mulf8u_prepared::b#0 ) - [182] *((const byte*) mulf8u_prepared::memB#0) ? (byte) mulf8u_prepared::b#2 + [181] (byte) mulf8u_prepared::b#2 ← phi( mulf8s_prepared/(byte~) mulf8u_prepared::b#3 mulf8u::@1/(byte) mulf8u_prepared::b#0 ) + [182] *((const byte*) mulf8u_prepared::memB#0) ← (byte) mulf8u_prepared::b#2 asm { ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x staresL sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } - [184] (word) mulf8u_prepared::return#0 ? *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) + [184] (word) mulf8u_prepared::return#0 ← *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) to:mulf8u_prepared::@return mulf8u_prepared::@return: scope:[mulf8u_prepared] from mulf8u_prepared [185] return to:@return mulf8u_prepare: scope:[mulf8u_prepare] from mulf8s::mulf8s_prepare1 mulf8u - [186] (byte) mulf8u_prepare::a#2 ? phi( mulf8s::mulf8s_prepare1/(byte~) mulf8u_prepare::a#3 mulf8u/(byte) mulf8u_prepare::a#0 ) - [187] *((const byte*) mulf8u_prepare::memA#0) ? (byte) mulf8u_prepare::a#2 + [186] (byte) mulf8u_prepare::a#2 ← phi( mulf8s::mulf8s_prepare1/(byte~) mulf8u_prepare::a#3 mulf8u/(byte) mulf8u_prepare::a#0 ) + [187] *((const byte*) mulf8u_prepare::memA#0) ← (byte) mulf8u_prepare::a#2 asm { ldamemA stamulf8u_prepared.sm1+1 stamulf8u_prepared.sm3+1 eor#$ff stamulf8u_prepared.sm2+1 stamulf8u_prepared.sm4+1 } to:mulf8u_prepare::@return mulf8u_prepare::@return: scope:[mulf8u_prepare] from mulf8u_prepare @@ -3994,85 +3994,85 @@ muls8s::@2: scope:[muls8s] from muls8s [191] if((signed byte) muls8s::a#0<=(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8s::@1 to:muls8s::@3 muls8s::@3: scope:[muls8s] from muls8s::@2 muls8s::@3 - [192] (signed byte) muls8s::j#2 ? phi( muls8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@3/(signed byte) muls8s::j#1 ) - [192] (signed word) muls8s::m#3 ? phi( muls8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@3/(signed word) muls8s::m#1 ) - [193] (signed word) muls8s::m#1 ? (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 - [194] (signed byte) muls8s::j#1 ? ++ (signed byte) muls8s::j#2 + [192] (signed byte) muls8s::j#2 ← phi( muls8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@3/(signed byte) muls8s::j#1 ) + [192] (signed word) muls8s::m#3 ← phi( muls8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@3/(signed word) muls8s::m#1 ) + [193] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 + [194] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 [195] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@3 to:muls8s::@1 muls8s::@1: scope:[muls8s] from muls8s::@2 muls8s::@3 muls8s::@4 - [196] (signed word) muls8s::return#0 ? phi( muls8s::@4/(signed word) muls8s::m#2 muls8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@3/(signed word) muls8s::m#1 ) + [196] (signed word) muls8s::return#0 ← phi( muls8s::@4/(signed word) muls8s::m#2 muls8s::@2/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@3/(signed word) muls8s::m#1 ) to:muls8s::@return muls8s::@return: scope:[muls8s] from muls8s::@1 [197] return to:@return muls8s::@4: scope:[muls8s] from muls8s muls8s::@4 - [198] (signed byte) muls8s::i#2 ? phi( muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@4/(signed byte) muls8s::i#1 ) - [198] (signed word) muls8s::m#5 ? phi( muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@4/(signed word) muls8s::m#2 ) - [199] (signed word) muls8s::m#2 ? (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 - [200] (signed byte) muls8s::i#1 ? -- (signed byte) muls8s::i#2 + [198] (signed byte) muls8s::i#2 ← phi( muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@4/(signed byte) muls8s::i#1 ) + [198] (signed word) muls8s::m#5 ← phi( muls8s/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8s::@4/(signed word) muls8s::m#2 ) + [199] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 + [200] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 [201] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@4 to:muls8s::@1 mul8u_compare: scope:[mul8u_compare] from main::@4 [202] phi() to:mul8u_compare::@1 mul8u_compare::@1: scope:[mul8u_compare] from mul8u_compare mul8u_compare::@8 - [203] (byte) mul8u_compare::a#7 ? phi( mul8u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_compare::@8/(byte) mul8u_compare::a#1 ) + [203] (byte) mul8u_compare::a#7 ← phi( mul8u_compare/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_compare::@8/(byte) mul8u_compare::a#1 ) to:mul8u_compare::@2 mul8u_compare::@2: scope:[mul8u_compare] from mul8u_compare::@1 mul8u_compare::@5 - [204] (byte) mul8u_compare::b#10 ? phi( mul8u_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_compare::@5/(byte) mul8u_compare::b#1 ) - [205] (byte) muls8u::a#0 ? (byte) mul8u_compare::a#7 - [206] (byte) muls8u::b#0 ? (byte) mul8u_compare::b#10 + [204] (byte) mul8u_compare::b#10 ← phi( mul8u_compare::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 mul8u_compare::@5/(byte) mul8u_compare::b#1 ) + [205] (byte) muls8u::a#0 ← (byte) mul8u_compare::a#7 + [206] (byte) muls8u::b#0 ← (byte) mul8u_compare::b#10 [207] call muls8u - [208] (word) muls8u::return#2 ? (word) muls8u::return#0 + [208] (word) muls8u::return#2 ← (word) muls8u::return#0 to:mul8u_compare::@10 mul8u_compare::@10: scope:[mul8u_compare] from mul8u_compare::@2 - [209] (word) mul8u_compare::ms#0 ? (word) muls8u::return#2 - [210] (byte) mulf8u::a#0 ? (byte) mul8u_compare::a#7 - [211] (byte) mulf8u::b#0 ? (byte) mul8u_compare::b#10 + [209] (word) mul8u_compare::ms#0 ← (word) muls8u::return#2 + [210] (byte) mulf8u::a#0 ← (byte) mul8u_compare::a#7 + [211] (byte) mulf8u::b#0 ← (byte) mul8u_compare::b#10 [212] call mulf8u - [213] (word) mulf8u::return#2 ? (word) mulf8u::return#0 + [213] (word) mulf8u::return#2 ← (word) mulf8u::return#0 to:mul8u_compare::@11 mul8u_compare::@11: scope:[mul8u_compare] from mul8u_compare::@10 - [214] (word) mul8u_compare::mf#0 ? (word) mulf8u::return#2 - [215] (byte) mul8u::a#2 ? (byte) mul8u_compare::a#7 - [216] (byte) mul8u::b#1 ? (byte) mul8u_compare::b#10 + [214] (word) mul8u_compare::mf#0 ← (word) mulf8u::return#2 + [215] (byte) mul8u::a#2 ← (byte) mul8u_compare::a#7 + [216] (byte) mul8u::b#1 ← (byte) mul8u_compare::b#10 [217] call mul8u - [218] (word) mul8u::return#3 ? (word) mul8u::res#2 + [218] (word) mul8u::return#3 ← (word) mul8u::res#2 to:mul8u_compare::@12 mul8u_compare::@12: scope:[mul8u_compare] from mul8u_compare::@11 - [219] (word) mul8u_compare::mn#0 ? (word) mul8u::return#3 + [219] (word) mul8u_compare::mn#0 ← (word) mul8u::return#3 [220] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mf#0) goto mul8u_compare::@3 to:mul8u_compare::@6 mul8u_compare::@6: scope:[mul8u_compare] from mul8u_compare::@12 [221] phi() to:mul8u_compare::@3 mul8u_compare::@3: scope:[mul8u_compare] from mul8u_compare::@12 mul8u_compare::@6 - [222] (byte) mul8u_compare::ok#4 ? phi( mul8u_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul8u_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [222] (byte) mul8u_compare::ok#4 ← phi( mul8u_compare::@12/(byte/signed byte/word/signed word/dword/signed dword) 1 mul8u_compare::@6/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [223] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mn#0) goto mul8u_compare::@14 to:mul8u_compare::@4 mul8u_compare::@4: scope:[mul8u_compare] from mul8u_compare::@14 mul8u_compare::@3 - [224] (byte) mul8u_compare::ok#3 ? phi( mul8u_compare::@14/(byte) mul8u_compare::ok#4 mul8u_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) + [224] (byte) mul8u_compare::ok#3 ← phi( mul8u_compare::@14/(byte) mul8u_compare::ok#4 mul8u_compare::@3/(byte/signed byte/word/signed word/dword/signed dword) 0 ) [225] if((byte) mul8u_compare::ok#3!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@5 to:mul8u_compare::@7 mul8u_compare::@7: scope:[mul8u_compare] from mul8u_compare::@4 - [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 - [227] (byte) mul8u_error::a#0 ? (byte) mul8u_compare::a#7 - [228] (byte) mul8u_error::b#0 ? (byte) mul8u_compare::b#10 - [229] (word) mul8u_error::ms#0 ? (word) mul8u_compare::ms#0 - [230] (word) mul8u_error::mn#0 ? (word) mul8u_compare::mn#0 - [231] (word) mul8u_error::mf#0 ? (word) mul8u_compare::mf#0 + [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 + [227] (byte) mul8u_error::a#0 ← (byte) mul8u_compare::a#7 + [228] (byte) mul8u_error::b#0 ← (byte) mul8u_compare::b#10 + [229] (word) mul8u_error::ms#0 ← (word) mul8u_compare::ms#0 + [230] (word) mul8u_error::mn#0 ← (word) mul8u_compare::mn#0 + [231] (word) mul8u_error::mf#0 ← (word) mul8u_compare::mf#0 [232] call mul8u_error to:mul8u_compare::@return mul8u_compare::@return: scope:[mul8u_compare] from mul8u_compare::@13 mul8u_compare::@7 [233] return to:@return mul8u_compare::@5: scope:[mul8u_compare] from mul8u_compare::@4 - [234] (byte) mul8u_compare::b#1 ? ++ (byte) mul8u_compare::b#10 + [234] (byte) mul8u_compare::b#1 ← ++ (byte) mul8u_compare::b#10 [235] if((byte) mul8u_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@2 to:mul8u_compare::@8 mul8u_compare::@8: scope:[mul8u_compare] from mul8u_compare::@5 - [236] (byte) mul8u_compare::a#1 ? ++ (byte) mul8u_compare::a#7 + [236] (byte) mul8u_compare::a#1 ← ++ (byte) mul8u_compare::a#7 [237] if((byte) mul8u_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@1 to:mul8u_compare::@9 mul8u_compare::@9: scope:[mul8u_compare] from mul8u_compare::@8 @@ -4091,7 +4091,7 @@ mul8u_error: scope:[mul8u_error] from mul8u_compare::@7 [244] call print_str to:mul8u_error::@1 mul8u_error::@1: scope:[mul8u_error] from mul8u_error - [245] (byte) print_byte::b#3 ? (byte) mul8u_error::a#0 + [245] (byte) print_byte::b#3 ← (byte) mul8u_error::a#0 [246] call print_byte to:mul8u_error::@2 mul8u_error::@2: scope:[mul8u_error] from mul8u_error::@1 @@ -4099,7 +4099,7 @@ mul8u_error::@2: scope:[mul8u_error] from mul8u_error::@1 [248] call print_str to:mul8u_error::@3 mul8u_error::@3: scope:[mul8u_error] from mul8u_error::@2 - [249] (byte) print_byte::b#4 ? (byte) mul8u_error::b#0 + [249] (byte) print_byte::b#4 ← (byte) mul8u_error::b#0 [250] call print_byte to:mul8u_error::@4 mul8u_error::@4: scope:[mul8u_error] from mul8u_error::@3 @@ -4107,7 +4107,7 @@ mul8u_error::@4: scope:[mul8u_error] from mul8u_error::@3 [252] call print_str to:mul8u_error::@5 mul8u_error::@5: scope:[mul8u_error] from mul8u_error::@4 - [253] (word) print_word::w#3 ? (word) mul8u_error::ms#0 + [253] (word) print_word::w#3 ← (word) mul8u_error::ms#0 [254] call print_word to:mul8u_error::@6 mul8u_error::@6: scope:[mul8u_error] from mul8u_error::@5 @@ -4115,7 +4115,7 @@ mul8u_error::@6: scope:[mul8u_error] from mul8u_error::@5 [256] call print_str to:mul8u_error::@7 mul8u_error::@7: scope:[mul8u_error] from mul8u_error::@6 - [257] (word) print_word::w#4 ? (word) mul8u_error::mn#0 + [257] (word) print_word::w#4 ← (word) mul8u_error::mn#0 [258] call print_word to:mul8u_error::@8 mul8u_error::@8: scope:[mul8u_error] from mul8u_error::@7 @@ -4123,7 +4123,7 @@ mul8u_error::@8: scope:[mul8u_error] from mul8u_error::@7 [260] call print_str to:mul8u_error::@9 mul8u_error::@9: scope:[mul8u_error] from mul8u_error::@8 - [261] (word) print_word::w#5 ? (word) mul8u_error::mf#0 + [261] (word) print_word::w#5 ← (word) mul8u_error::mf#0 [262] call print_word to:mul8u_error::@10 mul8u_error::@10: scope:[mul8u_error] from mul8u_error::@9 @@ -4134,16 +4134,16 @@ mul8u_error::@return: scope:[mul8u_error] from mul8u_error::@10 [265] return to:@return mulf8u: scope:[mulf8u] from mul8u_compare::@10 - [266] (byte) mulf8u_prepare::a#0 ? (byte) mulf8u::a#0 + [266] (byte) mulf8u_prepare::a#0 ← (byte) mulf8u::a#0 [267] call mulf8u_prepare to:mulf8u::@1 mulf8u::@1: scope:[mulf8u] from mulf8u - [268] (byte) mulf8u_prepared::b#0 ? (byte) mulf8u::b#0 + [268] (byte) mulf8u_prepared::b#0 ← (byte) mulf8u::b#0 [269] call mulf8u_prepared - [270] (word) mulf8u_prepared::return#2 ? (word) mulf8u_prepared::return#0 + [270] (word) mulf8u_prepared::return#2 ← (word) mulf8u_prepared::return#0 to:mulf8u::@2 mulf8u::@2: scope:[mulf8u] from mulf8u::@1 - [271] (word) mulf8u::return#0 ? (word) mulf8u_prepared::return#2 + [271] (word) mulf8u::return#0 ← (word) mulf8u_prepared::return#2 to:mulf8u::@return mulf8u::@return: scope:[mulf8u] from mulf8u::@2 [272] return @@ -4152,14 +4152,14 @@ muls8u: scope:[muls8u] from mul8u_compare::@2 [273] if((byte) muls8u::a#0==(byte/signed byte/word/signed word/dword/signed dword) 0) goto muls8u::@1 to:muls8u::@2 muls8u::@2: scope:[muls8u] from muls8u muls8u::@2 - [274] (byte) muls8u::i#2 ? phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(byte) muls8u::i#1 ) - [274] (word) muls8u::m#3 ? phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) - [275] (word) muls8u::m#1 ? (word) muls8u::m#3 + (byte) muls8u::b#0 - [276] (byte) muls8u::i#1 ? ++ (byte) muls8u::i#2 + [274] (byte) muls8u::i#2 ← phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(byte) muls8u::i#1 ) + [274] (word) muls8u::m#3 ← phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) + [275] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 + [276] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 [277] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 to:muls8u::@1 muls8u::@1: scope:[muls8u] from muls8u muls8u::@2 - [278] (word) muls8u::return#0 ? phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) + [278] (word) muls8u::return#0 ← phi( muls8u/(byte/signed byte/word/signed word/dword/signed dword) 0 muls8u::@2/(word) muls8u::m#1 ) to:muls8u::@return muls8u::@return: scope:[muls8u] from muls8u::@1 [279] return @@ -4168,16 +4168,16 @@ mulf_tables_cmp: scope:[mulf_tables_cmp] from main::@3 [280] phi() to:mulf_tables_cmp::@1 mulf_tables_cmp::@1: scope:[mulf_tables_cmp] from mulf_tables_cmp mulf_tables_cmp::@2 - [281] (byte*) mulf_tables_cmp::asm_sqr#2 ? phi( mulf_tables_cmp/(const byte[$200]) mula_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::asm_sqr#1 ) - [281] (byte*) mulf_tables_cmp::kc_sqr#2 ? phi( mulf_tables_cmp/(const byte[$200]) mulf_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::kc_sqr#1 ) + [281] (byte*) mulf_tables_cmp::asm_sqr#2 ← phi( mulf_tables_cmp/(const byte[$200]) mula_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::asm_sqr#1 ) + [281] (byte*) mulf_tables_cmp::kc_sqr#2 ← phi( mulf_tables_cmp/(const byte[$200]) mulf_sqr1_lo#0 mulf_tables_cmp::@2/(byte*) mulf_tables_cmp::kc_sqr#1 ) [282] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 to:mulf_tables_cmp::@3 mulf_tables_cmp::@3: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 - [283] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 + [283] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [284] call print_str to:mulf_tables_cmp::@5 mulf_tables_cmp::@5: scope:[mulf_tables_cmp] from mulf_tables_cmp::@3 - [285] (word~) print_word::w#11 ? (word)(byte*) mulf_tables_cmp::asm_sqr#2 + [285] (word~) print_word::w#11 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [286] call print_word to:mulf_tables_cmp::@6 mulf_tables_cmp::@6: scope:[mulf_tables_cmp] from mulf_tables_cmp::@5 @@ -4185,17 +4185,17 @@ mulf_tables_cmp::@6: scope:[mulf_tables_cmp] from mulf_tables_cmp::@5 [288] call print_str to:mulf_tables_cmp::@7 mulf_tables_cmp::@7: scope:[mulf_tables_cmp] from mulf_tables_cmp::@6 - [289] (word~) print_word::w#12 ? (word)(byte*) mulf_tables_cmp::kc_sqr#2 + [289] (word~) print_word::w#12 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [290] call print_word to:mulf_tables_cmp::@return mulf_tables_cmp::@return: scope:[mulf_tables_cmp] from mulf_tables_cmp::@7 mulf_tables_cmp::@8 - [291] (byte*) print_line_cursor#10 ? phi( mulf_tables_cmp::@8/(byte*) print_line_cursor#1 mulf_tables_cmp::@7/((byte*))(word/signed word/dword/signed dword) $400 ) - [291] (byte*) print_char_cursor#31 ? phi( mulf_tables_cmp::@8/(byte*~) print_char_cursor#225 mulf_tables_cmp::@7/(byte*) print_char_cursor#18 ) + [291] (byte*) print_line_cursor#10 ← phi( mulf_tables_cmp::@8/(byte*) print_line_cursor#1 mulf_tables_cmp::@7/((byte*))(word/signed word/dword/signed dword) $400 ) + [291] (byte*) print_char_cursor#31 ← phi( mulf_tables_cmp::@8/(byte*~) print_char_cursor#225 mulf_tables_cmp::@7/(byte*) print_char_cursor#18 ) [292] return to:@return mulf_tables_cmp::@2: scope:[mulf_tables_cmp] from mulf_tables_cmp::@1 - [293] (byte*) mulf_tables_cmp::asm_sqr#1 ? ++ (byte*) mulf_tables_cmp::asm_sqr#2 - [294] (byte*) mulf_tables_cmp::kc_sqr#1 ? ++ (byte*) mulf_tables_cmp::kc_sqr#2 + [293] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 + [294] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 [295] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 to:mulf_tables_cmp::@4 mulf_tables_cmp::@4: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2 @@ -4205,14 +4205,14 @@ mulf_tables_cmp::@4: scope:[mulf_tables_cmp] from mulf_tables_cmp::@2 mulf_tables_cmp::@8: scope:[mulf_tables_cmp] from mulf_tables_cmp::@4 [298] phi() [299] call print_ln - [300] (byte*~) print_char_cursor#225 ? (byte*) print_line_cursor#1 + [300] (byte*~) print_char_cursor#225 ← (byte*) print_line_cursor#1 to:mulf_tables_cmp::@return mulf_init_asm: scope:[mulf_init_asm] from main::@2 asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } - [302] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_lo#0) - [303] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_hi#0) - [304] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_lo#0) - [305] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_hi#0) + [302] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_lo#0) + [303] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_hi#0) + [304] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_lo#0) + [305] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_hi#0) to:mulf_init_asm::@return mulf_init_asm::@return: scope:[mulf_init_asm] from mulf_init_asm [306] return @@ -4221,50 +4221,50 @@ mulf_init: scope:[mulf_init] from main::@1 [307] phi() to:mulf_init::@1 mulf_init::@1: scope:[mulf_init] from mulf_init mulf_init::@2 - [308] (byte) mulf_init::x_2#3 ? phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) - [308] (byte*) mulf_init::sqr1_hi#2 ? phi( mulf_init/(const byte[$200]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) - [308] (byte*) mulf_init::sqr1_lo#2 ? phi( mulf_init/(const byte[$200]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) - [308] (word) mulf_init::sqr#4 ? phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) - [308] (byte) mulf_init::c#2 ? phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) - [309] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 - [310] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 + [308] (byte) mulf_init::x_2#3 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::x_2#2 ) + [308] (byte*) mulf_init::sqr1_hi#2 ← phi( mulf_init/(const byte[$200]) mulf_sqr1_hi#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_hi#1 ) + [308] (byte*) mulf_init::sqr1_lo#2 ← phi( mulf_init/(const byte[$200]) mulf_sqr1_lo#0+(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@2/(byte*) mulf_init::sqr1_lo#1 ) + [308] (word) mulf_init::sqr#4 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(word) mulf_init::sqr#1 ) + [308] (byte) mulf_init::c#2 ← phi( mulf_init/(byte/signed byte/word/signed word/dword/signed dword) 0 mulf_init::@2/(byte) mulf_init::c#1 ) + [309] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 + [310] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [311] if((byte~) mulf_init::$8!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 to:mulf_init::@3 mulf_init::@3: scope:[mulf_init] from mulf_init::@1 - [312] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 - [313] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 + [312] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 + [313] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 to:mulf_init::@2 mulf_init::@2: scope:[mulf_init] from mulf_init::@1 mulf_init::@3 - [314] (byte) mulf_init::x_2#2 ? phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@3/(byte) mulf_init::x_2#1 ) - [314] (word) mulf_init::sqr#3 ? phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@3/(word) mulf_init::sqr#2 ) - [315] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 - [316] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 - [317] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 - [318] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 - [319] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 - [320] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 - [321] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 + [314] (byte) mulf_init::x_2#2 ← phi( mulf_init::@1/(byte) mulf_init::x_2#3 mulf_init::@3/(byte) mulf_init::x_2#1 ) + [314] (word) mulf_init::sqr#3 ← phi( mulf_init::@1/(word) mulf_init::sqr#4 mulf_init::@3/(word) mulf_init::sqr#2 ) + [315] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 + [316] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 + [317] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 + [318] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 + [319] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 + [320] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 + [321] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 [322] if((byte*) mulf_init::sqr1_lo#1!=(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200) goto mulf_init::@1 to:mulf_init::@4 mulf_init::@4: scope:[mulf_init] from mulf_init::@2 mulf_init::@5 - [323] (byte) mulf_init::dir#2 ? phi( mulf_init::@2/(byte/word/signed word/dword/signed dword) $ff mulf_init::@5/(byte) mulf_init::dir#3 ) - [323] (byte*) mulf_init::sqr2_hi#2 ? phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_hi#0 mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) - [323] (byte*) mulf_init::sqr2_lo#2 ? phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_lo#0 mulf_init::@5/(byte*) mulf_init::sqr2_lo#1 ) - [323] (byte) mulf_init::x_255#2 ? phi( mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@5/(byte) mulf_init::x_255#1 ) - [324] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) - [325] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) - [326] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 - [327] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 + [323] (byte) mulf_init::dir#2 ← phi( mulf_init::@2/(byte/word/signed word/dword/signed dword) $ff mulf_init::@5/(byte) mulf_init::dir#3 ) + [323] (byte*) mulf_init::sqr2_hi#2 ← phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_hi#0 mulf_init::@5/(byte*) mulf_init::sqr2_hi#1 ) + [323] (byte*) mulf_init::sqr2_lo#2 ← phi( mulf_init::@2/(const byte[$200]) mulf_sqr2_lo#0 mulf_init::@5/(byte*) mulf_init::sqr2_lo#1 ) + [323] (byte) mulf_init::x_255#2 ← phi( mulf_init::@2/((byte))-(byte/signed byte/word/signed word/dword/signed dword) 1 mulf_init::@5/(byte) mulf_init::x_255#1 ) + [324] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) + [325] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) + [326] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 + [327] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [328] if((byte) mulf_init::x_255#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@7 to:mulf_init::@5 mulf_init::@5: scope:[mulf_init] from mulf_init::@4 mulf_init::@7 - [329] (byte) mulf_init::dir#3 ? phi( mulf_init::@7/(byte) mulf_init::dir#2 mulf_init::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) - [330] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 + [329] (byte) mulf_init::dir#3 ← phi( mulf_init::@7/(byte) mulf_init::dir#2 mulf_init::@4/(byte/signed byte/word/signed word/dword/signed dword) 1 ) + [330] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 [331] if((byte*) mulf_init::sqr2_lo#1!=(const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) goto mulf_init::@4 to:mulf_init::@6 mulf_init::@6: scope:[mulf_init] from mulf_init::@5 - [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) - [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) + [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) + [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) to:mulf_init::@return mulf_init::@return: scope:[mulf_init] from mulf_init::@6 [334] return @@ -4276,9 +4276,9 @@ print_cls: scope:[print_cls] from main [336] phi() to:print_cls::@1 print_cls::@1: scope:[print_cls] from print_cls print_cls::@1 - [337] (byte*) print_cls::sc#2 ? phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) - [338] *((byte*) print_cls::sc#2) ? (byte) ' ' - [339] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 + [337] (byte*) print_cls::sc#2 ← phi( print_cls/((byte*))(word/signed word/dword/signed dword) $400 print_cls::@1/(byte*) print_cls::sc#1 ) + [338] *((byte*) print_cls::sc#2) ← (byte) ' ' + [339] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 [340] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 to:print_cls::@return print_cls::@return: scope:[print_cls] from print_cls::@1 @@ -4898,7 +4898,7 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL //SEG11 [5] call print_cls @@ -4987,15 +4987,15 @@ mul8s_compare: { jmp b2 //SEG44 mul8s_compare::@2 b2: - //SEG45 [20] (signed byte) muls8s::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 + //SEG45 [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 lda a sta muls8s.a - //SEG46 [21] (signed byte) muls8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 + //SEG46 [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 lda b sta muls8s.b //SEG47 [22] call muls8s jsr muls8s - //SEG48 [23] (signed word) muls8s::return#2 ? (signed word) muls8s::return#0 -- vwsz1=vwsz2 + //SEG48 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 -- vwsz1=vwsz2 lda muls8s.return sta muls8s.return_2 lda muls8s.return+1 @@ -5003,22 +5003,22 @@ mul8s_compare: { jmp b10 //SEG49 mul8s_compare::@10 b10: - //SEG50 [24] (signed word) mul8s_compare::ms#0 ? (signed word) muls8s::return#2 -- vwsz1=vwsz2 + //SEG50 [24] (signed word) mul8s_compare::ms#0 ← (signed word) muls8s::return#2 -- vwsz1=vwsz2 lda muls8s.return_2 sta ms lda muls8s.return_2+1 sta ms+1 - //SEG51 [25] (signed byte) mulf8s::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 + //SEG51 [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 lda a sta mulf8s.a - //SEG52 [26] (signed byte) mulf8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 + //SEG52 [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 lda b sta mulf8s.b //SEG53 [27] call mulf8s //SEG54 [158] phi from mul8s_compare::@10 to mulf8s [phi:mul8s_compare::@10->mulf8s] mulf8s_from_b10: jsr mulf8s - //SEG55 [28] (signed word) mulf8s::return#2 ? (signed word) mulf8s::return#0 -- vwsz1=vwsz2 + //SEG55 [28] (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#0 -- vwsz1=vwsz2 lda mulf8s.return sta mulf8s.return_2 lda mulf8s.return+1 @@ -5026,20 +5026,20 @@ mul8s_compare: { jmp b11 //SEG56 mul8s_compare::@11 b11: - //SEG57 [29] (signed word) mul8s_compare::mf#0 ? (signed word) mulf8s::return#2 -- vwsz1=vwsz2 + //SEG57 [29] (signed word) mul8s_compare::mf#0 ← (signed word) mulf8s::return#2 -- vwsz1=vwsz2 lda mulf8s.return_2 sta mf lda mulf8s.return_2+1 sta mf+1 - //SEG58 [30] (signed byte) mul8s::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 + //SEG58 [30] (signed byte) mul8s::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 lda a sta mul8s.a - //SEG59 [31] (signed byte) mul8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 + //SEG59 [31] (signed byte) mul8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 lda b sta mul8s.b //SEG60 [32] call mul8s jsr mul8s - //SEG61 [33] (signed word) mul8s::return#2 ? (signed word)(word) mul8s::m#4 -- vwsz1=vwsz2 + //SEG61 [33] (signed word) mul8s::return#2 ← (signed word)(word) mul8s::m#4 -- vwsz1=vwsz2 lda mul8s.m sta mul8s.return lda mul8s.m+1 @@ -5047,7 +5047,7 @@ mul8s_compare: { jmp b12 //SEG62 mul8s_compare::@12 b12: - //SEG63 [34] (signed word) mul8s_compare::mn#0 ? (signed word) mul8s::return#2 -- vwsz1=vwsz2 + //SEG63 [34] (signed word) mul8s_compare::mn#0 ← (signed word) mul8s::return#2 -- vwsz1=vwsz2 lda mul8s.return sta mn lda mul8s.return+1 @@ -5102,26 +5102,26 @@ mul8s_compare: { jmp b7 //SEG77 mul8s_compare::@7 b7: - //SEG78 [41] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG78 [41] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG79 [42] (signed byte) mul8s_error::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 + //SEG79 [42] (signed byte) mul8s_error::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsz1=vbsz2 lda a sta mul8s_error.a - //SEG80 [43] (signed byte) mul8s_error::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 + //SEG80 [43] (signed byte) mul8s_error::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsz1=vbsz2 lda b sta mul8s_error.b - //SEG81 [44] (signed word) mul8s_error::ms#0 ? (signed word) mul8s_compare::ms#0 -- vwsz1=vwsz2 + //SEG81 [44] (signed word) mul8s_error::ms#0 ← (signed word) mul8s_compare::ms#0 -- vwsz1=vwsz2 lda ms sta mul8s_error.ms lda ms+1 sta mul8s_error.ms+1 - //SEG82 [45] (signed word) mul8s_error::mn#0 ? (signed word) mul8s_compare::mn#0 -- vwsz1=vwsz2 + //SEG82 [45] (signed word) mul8s_error::mn#0 ← (signed word) mul8s_compare::mn#0 -- vwsz1=vwsz2 lda mn sta mul8s_error.mn lda mn+1 sta mul8s_error.mn+1 - //SEG83 [46] (signed word) mul8s_error::mf#0 ? (signed word) mul8s_compare::mf#0 -- vwsz1=vwsz2 + //SEG83 [46] (signed word) mul8s_error::mf#0 ← (signed word) mul8s_compare::mf#0 -- vwsz1=vwsz2 lda mf sta mul8s_error.mf lda mf+1 @@ -5135,7 +5135,7 @@ mul8s_compare: { rts //SEG87 mul8s_compare::@5 b5: - //SEG88 [49] (signed byte) mul8s_compare::b#1 ? ++ (signed byte) mul8s_compare::b#10 -- vbsz1=_inc_vbsz1 + //SEG88 [49] (signed byte) mul8s_compare::b#1 ← ++ (signed byte) mul8s_compare::b#10 -- vbsz1=_inc_vbsz1 inc b //SEG89 [50] if((signed byte) mul8s_compare::b#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@2 -- vbsz1_neq_vbsc1_then_la1 lda #-$80 @@ -5144,7 +5144,7 @@ mul8s_compare: { jmp b8 //SEG90 mul8s_compare::@8 b8: - //SEG91 [51] (signed byte) mul8s_compare::a#1 ? ++ (signed byte) mul8s_compare::a#7 -- vbsz1=_inc_vbsz1 + //SEG91 [51] (signed byte) mul8s_compare::a#1 ← ++ (signed byte) mul8s_compare::a#7 -- vbsz1=_inc_vbsz1 inc a //SEG92 [52] if((signed byte) mul8s_compare::a#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@1 -- vbsz1_neq_vbsc1_then_la1 lda #-$80 @@ -5153,7 +5153,7 @@ mul8s_compare: { jmp b9 //SEG93 mul8s_compare::@9 b9: - //SEG94 [53] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG94 [53] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -5201,7 +5201,7 @@ print_ln: { jmp b1 //SEG112 print_ln::@1 b1: - //SEG113 [60] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG113 [60] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -5249,17 +5249,17 @@ print_str: { rts //SEG125 print_str::@2 b2: - //SEG126 [67] *((byte*) print_char_cursor#132) ? *((byte*) print_str::str#16) -- _deref_pbuz1=_deref_pbuz2 + //SEG126 [67] *((byte*) print_char_cursor#132) ← *((byte*) print_str::str#16) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG127 [68] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#132 -- pbuz1=_inc_pbuz1 + //SEG127 [68] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#132 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG128 [69] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#16 -- pbuz1=_inc_pbuz1 + //SEG128 [69] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#16 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -5274,7 +5274,7 @@ mul8s_error: { .label ms = $50 .label mn = $52 .label mf = $54 - //SEG130 [70] (byte*~) print_char_cursor#193 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG130 [70] (byte*~) print_char_cursor#193 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -5292,7 +5292,7 @@ mul8s_error: { jmp b1 //SEG135 mul8s_error::@1 b1: - //SEG136 [72] (signed byte) print_sbyte::b#1 ? (signed byte) mul8s_error::a#0 -- vbsz1=vbsz2 + //SEG136 [72] (signed byte) print_sbyte::b#1 ← (signed byte) mul8s_error::a#0 -- vbsz1=vbsz2 lda a sta print_sbyte.b //SEG137 [73] call print_sbyte @@ -5318,7 +5318,7 @@ mul8s_error: { jmp b3 //SEG146 mul8s_error::@3 b3: - //SEG147 [76] (signed byte) print_sbyte::b#2 ? (signed byte) mul8s_error::b#0 -- vbsz1=vbsz2 + //SEG147 [76] (signed byte) print_sbyte::b#2 ← (signed byte) mul8s_error::b#0 -- vbsz1=vbsz2 lda b sta print_sbyte.b //SEG148 [77] call print_sbyte @@ -5344,7 +5344,7 @@ mul8s_error: { jmp b5 //SEG157 mul8s_error::@5 b5: - //SEG158 [80] (signed word) print_sword::w#1 ? (signed word) mul8s_error::ms#0 -- vwsz1=vwsz2 + //SEG158 [80] (signed word) print_sword::w#1 ← (signed word) mul8s_error::ms#0 -- vwsz1=vwsz2 lda ms sta print_sword.w lda ms+1 @@ -5372,7 +5372,7 @@ mul8s_error: { jmp b7 //SEG168 mul8s_error::@7 b7: - //SEG169 [84] (signed word) print_sword::w#2 ? (signed word) mul8s_error::mn#0 -- vwsz1=vwsz2 + //SEG169 [84] (signed word) print_sword::w#2 ← (signed word) mul8s_error::mn#0 -- vwsz1=vwsz2 lda mn sta print_sword.w lda mn+1 @@ -5400,7 +5400,7 @@ mul8s_error: { jmp b9 //SEG179 mul8s_error::@9 b9: - //SEG180 [88] (signed word) print_sword::w#3 ? (signed word) mul8s_error::mf#0 -- vwsz1=vwsz2 + //SEG180 [88] (signed word) print_sword::w#3 ← (signed word) mul8s_error::mf#0 -- vwsz1=vwsz2 lda mf sta print_sword.w lda mf+1 @@ -5452,7 +5452,7 @@ print_sword: { jmp b3 //SEG200 print_sword::@3 b3: - //SEG201 [97] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#4 -- vwsz1=_neg_vwsz1 + //SEG201 [97] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#4 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -5470,7 +5470,7 @@ print_sword: { jmp b1 //SEG205 print_sword::@1 b1: - //SEG206 [99] (word~) print_word::w#13 ? (word)(signed word) print_sword::w#5 -- vwuz1=vwuz2 + //SEG206 [99] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#5 -- vwuz1=vwuz2 lda w sta print_word.w lda w+1 @@ -5492,7 +5492,7 @@ print_sword: { // print_word(word zeropage($b) w) print_word: { .label w = $b - //SEG214 [103] (byte) print_byte::b#1 ? > (word) print_word::w#6 -- vbuz1=_hi_vwuz2 + //SEG214 [103] (byte) print_byte::b#1 ← > (word) print_word::w#6 -- vbuz1=_hi_vwuz2 lda w+1 sta print_byte.b //SEG215 [104] call print_byte @@ -5504,7 +5504,7 @@ print_word: { jmp b1 //SEG219 print_word::@1 b1: - //SEG220 [105] (byte) print_byte::b#2 ? < (word) print_word::w#6 -- vbuz1=_lo_vwuz2 + //SEG220 [105] (byte) print_byte::b#2 ← < (word) print_word::w#6 -- vbuz1=_lo_vwuz2 lda w sta print_byte.b //SEG221 [106] call print_byte @@ -5526,14 +5526,14 @@ print_byte: { .label _0 = $56 .label _2 = $57 .label b = $d - //SEG228 [109] (byte~) print_byte::$0 ? (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 + //SEG228 [109] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuz1=vbuz2_ror_4 lda b lsr lsr lsr lsr sta _0 - //SEG229 [110] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG229 [110] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _0 lda print_hextab,y sta print_char.ch @@ -5546,11 +5546,11 @@ print_byte: { jmp b1 //SEG234 print_byte::@1 b1: - //SEG235 [112] (byte~) print_byte::$2 ? (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 + //SEG235 [112] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuz1=vbuz2_band_vbuc1 lda #$f and b sta _2 - //SEG236 [113] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG236 [113] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuz1=pbuc1_derefidx_vbuz2 ldy _2 lda print_hextab,y sta print_char.ch @@ -5571,11 +5571,11 @@ print_byte: { // print_char(byte zeropage($e) ch) print_char: { .label ch = $e - //SEG244 [117] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuz2 + //SEG244 [117] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuz2 lda ch ldy #0 sta (print_char_cursor),y - //SEG245 [118] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 + //SEG245 [118] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -5614,7 +5614,7 @@ print_sbyte: { jmp b2 //SEG258 print_sbyte::@2 b2: - //SEG259 [125] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#5 -- vbuz1=vbuz2 + //SEG259 [125] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#5 -- vbuz1=vbuz2 lda b sta print_byte.b //SEG260 [126] call print_byte @@ -5644,7 +5644,7 @@ print_sbyte: { jmp b4 //SEG272 print_sbyte::@4 b4: - //SEG273 [130] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#3 -- vbsz1=_neg_vbsz1 + //SEG273 [130] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 -- vbsz1=_neg_vbsz1 lda b eor #$ff clc @@ -5665,10 +5665,10 @@ mul8s: { .label a = $48 .label b = $49 .label return = $4a - //SEG275 [131] (byte~) mul8u::b#3 ? (byte)(signed byte) mul8s::b#0 -- vbuz1=vbuz2 + //SEG275 [131] (byte~) mul8u::b#3 ← (byte)(signed byte) mul8s::b#0 -- vbuz1=vbuz2 lda b sta mul8u.b - //SEG276 [132] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8s::a#0 -- vbuz1=vbuz2 + //SEG276 [132] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8s::a#0 -- vbuz1=vbuz2 lda a sta mul8u.a //SEG277 [133] call mul8u @@ -5677,7 +5677,7 @@ mul8s: { //SEG279 [147] phi (byte) mul8u::a#6 = (byte~) mul8u::a#8 [phi:mul8s->mul8u#0] -- register_copy //SEG280 [147] phi (byte) mul8u::b#2 = (byte~) mul8u::b#3 [phi:mul8s->mul8u#1] -- register_copy jsr mul8u - //SEG281 [134] (word) mul8u::return#2 ? (word) mul8u::res#2 -- vwuz1=vwuz2 + //SEG281 [134] (word) mul8u::return#2 ← (word) mul8u::res#2 -- vwuz1=vwuz2 lda mul8u.res sta mul8u.return lda mul8u.res+1 @@ -5685,7 +5685,7 @@ mul8s: { jmp b5 //SEG282 mul8s::@5 b5: - //SEG283 [135] (word) mul8s::m#0 ? (word) mul8u::return#2 -- vwuz1=vwuz2 + //SEG283 [135] (word) mul8s::m#0 ← (word) mul8u::return#2 -- vwuz1=vwuz2 lda mul8u.return sta m lda mul8u.return+1 @@ -5697,15 +5697,15 @@ mul8s: { jmp b3 //SEG285 mul8s::@3 b3: - //SEG286 [137] (byte~) mul8s::$9 ? > (word) mul8s::m#0 -- vbuz1=_hi_vwuz2 + //SEG286 [137] (byte~) mul8s::$9 ← > (word) mul8s::m#0 -- vbuz1=_hi_vwuz2 lda m+1 sta _9 - //SEG287 [138] (byte~) mul8s::$16 ? (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG287 [138] (byte~) mul8s::$16 ← (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 -- vbuz1=vbuz2_minus_vbuz3 lda _9 sec sbc b sta _16 - //SEG288 [139] (word) mul8s::m#1 ? (word) mul8s::m#0 hi= (byte~) mul8s::$16 -- vwuz1=vwuz1_sethi_vbuz2 + //SEG288 [139] (word) mul8s::m#1 ← (word) mul8s::m#0 hi= (byte~) mul8s::$16 -- vwuz1=vwuz1_sethi_vbuz2 lda _16 sta m+1 //SEG289 [140] phi from mul8s::@3 mul8s::@5 to mul8s::@1 [phi:mul8s::@3/mul8s::@5->mul8s::@1] @@ -5722,15 +5722,15 @@ mul8s: { jmp b4 //SEG293 mul8s::@4 b4: - //SEG294 [142] (byte~) mul8s::$13 ? > (word) mul8s::m#5 -- vbuz1=_hi_vwuz2 + //SEG294 [142] (byte~) mul8s::$13 ← > (word) mul8s::m#5 -- vbuz1=_hi_vwuz2 lda m+1 sta _13 - //SEG295 [143] (byte~) mul8s::$17 ? (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG295 [143] (byte~) mul8s::$17 ← (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 -- vbuz1=vbuz2_minus_vbuz3 lda _13 sec sbc a sta _17 - //SEG296 [144] (word) mul8s::m#2 ? (word) mul8s::m#5 hi= (byte~) mul8s::$17 -- vwuz1=vwuz1_sethi_vbuz2 + //SEG296 [144] (word) mul8s::m#2 ← (word) mul8s::m#5 hi= (byte~) mul8s::$17 -- vwuz1=vwuz1_sethi_vbuz2 lda _17 sta m+1 //SEG297 [145] phi from mul8s::@1 mul8s::@4 to mul8s::@2 [phi:mul8s::@1/mul8s::@4->mul8s::@2] @@ -5757,7 +5757,7 @@ mul8u: { .label return = $58 .label b = $14 .label return_3 = $78 - //SEG303 [148] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuz2 + //SEG303 [148] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuz2 lda b sta mb lda #0 @@ -5785,7 +5785,7 @@ mul8u: { rts //SEG312 mul8u::@2 b2: - //SEG313 [152] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 + //SEG313 [152] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 lda #1 and a sta _1 @@ -5796,7 +5796,7 @@ mul8u: { jmp b4 //SEG315 mul8u::@4 b4: - //SEG316 [154] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG316 [154] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -5811,9 +5811,9 @@ mul8u: { jmp b3 //SEG319 mul8u::@3 b3: - //SEG320 [156] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 + //SEG320 [156] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz1_ror_1 lsr a - //SEG321 [157] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG321 [157] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG322 [149] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -5834,7 +5834,7 @@ mulf8s: { jmp mulf8s_prepare1 //SEG327 mulf8s::mulf8s_prepare1 mulf8s_prepare1: - //SEG328 [159] (byte~) mulf8u_prepare::a#3 ? (byte)(signed byte) mulf8s::a#0 -- vbuz1=vbuz2 + //SEG328 [159] (byte~) mulf8u_prepare::a#3 ← (byte)(signed byte) mulf8s::a#0 -- vbuz1=vbuz2 lda a sta mulf8u_prepare.a //SEG329 [160] call mulf8u_prepare @@ -5845,12 +5845,12 @@ mulf8s: { jmp b1 //SEG332 mulf8s::@1 b1: - //SEG333 [161] (signed byte) mulf8s_prepared::b#0 ? (signed byte) mulf8s::b#0 -- vbsz1=vbsz2 + //SEG333 [161] (signed byte) mulf8s_prepared::b#0 ← (signed byte) mulf8s::b#0 -- vbsz1=vbsz2 lda b sta mulf8s_prepared.b //SEG334 [162] call mulf8s_prepared jsr mulf8s_prepared - //SEG335 [163] (signed word) mulf8s_prepared::return#2 ? (signed word)(word) mulf8s_prepared::m#4 -- vwsz1=vwsz2 + //SEG335 [163] (signed word) mulf8s_prepared::return#2 ← (signed word)(word) mulf8s_prepared::m#4 -- vwsz1=vwsz2 lda mulf8s_prepared.m sta mulf8s_prepared.return lda mulf8s_prepared.m+1 @@ -5858,7 +5858,7 @@ mulf8s: { jmp b2 //SEG336 mulf8s::@2 b2: - //SEG337 [164] (signed word) mulf8s::return#0 ? (signed word) mulf8s_prepared::return#2 -- vwsz1=vwsz2 + //SEG337 [164] (signed word) mulf8s::return#0 ← (signed word) mulf8s_prepared::return#2 -- vwsz1=vwsz2 lda mulf8s_prepared.return sta return lda mulf8s_prepared.return+1 @@ -5882,7 +5882,7 @@ mulf8s_prepared: { .label m = $1a .label b = $5f .label return = $60 - //SEG341 [166] (byte~) mulf8u_prepared::b#3 ? (byte)(signed byte) mulf8s_prepared::b#0 -- vbuz1=vbuz2 + //SEG341 [166] (byte~) mulf8u_prepared::b#3 ← (byte)(signed byte) mulf8s_prepared::b#0 -- vbuz1=vbuz2 lda b sta mulf8u_prepared.b //SEG342 [167] call mulf8u_prepared @@ -5890,7 +5890,7 @@ mulf8s_prepared: { mulf8u_prepared_from_mulf8s_prepared: //SEG344 [181] phi (byte) mulf8u_prepared::b#2 = (byte~) mulf8u_prepared::b#3 [phi:mulf8s_prepared->mulf8u_prepared#0] -- register_copy jsr mulf8u_prepared - //SEG345 [168] (word) mulf8u_prepared::return#3 ? (word) mulf8u_prepared::return#0 -- vwuz1=vwuz2 + //SEG345 [168] (word) mulf8u_prepared::return#3 ← (word) mulf8u_prepared::return#0 -- vwuz1=vwuz2 lda mulf8u_prepared.return sta mulf8u_prepared.return_3 lda mulf8u_prepared.return+1 @@ -5898,7 +5898,7 @@ mulf8s_prepared: { jmp b5 //SEG346 mulf8s_prepared::@5 b5: - //SEG347 [169] (word) mulf8s_prepared::m#0 ? (word) mulf8u_prepared::return#3 -- vwuz1=vwuz2 + //SEG347 [169] (word) mulf8s_prepared::m#0 ← (word) mulf8u_prepared::return#3 -- vwuz1=vwuz2 lda mulf8u_prepared.return_3 sta m lda mulf8u_prepared.return_3+1 @@ -5910,15 +5910,15 @@ mulf8s_prepared: { jmp b3 //SEG349 mulf8s_prepared::@3 b3: - //SEG350 [171] (byte~) mulf8s_prepared::$8 ? > (word) mulf8s_prepared::m#0 -- vbuz1=_hi_vwuz2 + //SEG350 [171] (byte~) mulf8s_prepared::$8 ← > (word) mulf8s_prepared::m#0 -- vbuz1=_hi_vwuz2 lda m+1 sta _8 - //SEG351 [172] (byte~) mulf8s_prepared::$15 ? (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG351 [172] (byte~) mulf8s_prepared::$15 ← (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 -- vbuz1=vbuz2_minus_vbuz3 lda _8 sec sbc b sta _15 - //SEG352 [173] (word) mulf8s_prepared::m#1 ? (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 -- vwuz1=vwuz1_sethi_vbuz2 + //SEG352 [173] (word) mulf8s_prepared::m#1 ← (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 -- vwuz1=vwuz1_sethi_vbuz2 lda _15 sta m+1 //SEG353 [174] phi from mulf8s_prepared::@3 mulf8s_prepared::@5 to mulf8s_prepared::@1 [phi:mulf8s_prepared::@3/mulf8s_prepared::@5->mulf8s_prepared::@1] @@ -5935,15 +5935,15 @@ mulf8s_prepared: { jmp b4 //SEG357 mulf8s_prepared::@4 b4: - //SEG358 [176] (byte~) mulf8s_prepared::$12 ? > (word) mulf8s_prepared::m#5 -- vbuz1=_hi_vwuz2 + //SEG358 [176] (byte~) mulf8s_prepared::$12 ← > (word) mulf8s_prepared::m#5 -- vbuz1=_hi_vwuz2 lda m+1 sta _12 - //SEG359 [177] (byte~) mulf8s_prepared::$16 ? (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) -- vbuz1=vbuz2_minus__deref_pbuc1 + //SEG359 [177] (byte~) mulf8s_prepared::$16 ← (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) -- vbuz1=vbuz2_minus__deref_pbuc1 lda _12 sec sbc memA sta _16 - //SEG360 [178] (word) mulf8s_prepared::m#2 ? (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 -- vwuz1=vwuz1_sethi_vbuz2 + //SEG360 [178] (word) mulf8s_prepared::m#2 ← (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 -- vwuz1=vwuz1_sethi_vbuz2 lda _16 sta m+1 //SEG361 [179] phi from mulf8s_prepared::@1 mulf8s_prepared::@4 to mulf8s_prepared::@2 [phi:mulf8s_prepared::@1/mulf8s_prepared::@4->mulf8s_prepared::@2] @@ -5970,7 +5970,7 @@ mulf8u_prepared: { .label b = $1c .label return_2 = $84 .label return_3 = $64 - //SEG367 [182] *((const byte*) mulf8u_prepared::memB#0) ? (byte) mulf8u_prepared::b#2 -- _deref_pbuc1=vbuz1 + //SEG367 [182] *((const byte*) mulf8u_prepared::memB#0) ← (byte) mulf8u_prepared::b#2 -- _deref_pbuc1=vbuz1 lda b sta memB //SEG368 asm { ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x staresL sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } @@ -5986,7 +5986,7 @@ mulf8u_prepared: { sm4: sbc mulf_sqr2_hi,x sta memB - //SEG369 [184] (word) mulf8u_prepared::return#0 ? *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG369 [184] (word) mulf8u_prepared::return#0 ← *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda resL sta return lda memB @@ -6003,7 +6003,7 @@ mulf8u_prepared: { mulf8u_prepare: { .label memA = $fd .label a = $1d - //SEG373 [187] *((const byte*) mulf8u_prepare::memA#0) ? (byte) mulf8u_prepare::a#2 -- _deref_pbuc1=vbuz1 + //SEG373 [187] *((const byte*) mulf8u_prepare::memA#0) ← (byte) mulf8u_prepare::a#2 -- _deref_pbuc1=vbuz1 lda a sta memA //SEG374 asm { ldamemA stamulf8u_prepared.sm1+1 stamulf8u_prepared.sm3+1 eor#$ff stamulf8u_prepared.sm2+1 stamulf8u_prepared.sm4+1 } @@ -6059,7 +6059,7 @@ muls8s: { jmp b3 //SEG387 muls8s::@3 b3: - //SEG388 [193] (signed word) muls8s::m#1 ? (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 -- vwsz1=vwsz1_plus_vbsz2 + //SEG388 [193] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 -- vwsz1=vwsz1_plus_vbsz2 lda b sta $fe ora #$7f @@ -6074,7 +6074,7 @@ muls8s: { lda m+1 adc $ff sta m+1 - //SEG389 [194] (signed byte) muls8s::j#1 ? ++ (signed byte) muls8s::j#2 -- vbsz1=_inc_vbsz1 + //SEG389 [194] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 -- vbsz1=_inc_vbsz1 inc j //SEG390 [195] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@3 -- vbsz1_neq_vbsz2_then_la1 lda j @@ -6118,7 +6118,7 @@ muls8s: { jmp b4 //SEG404 muls8s::@4 b4: - //SEG405 [199] (signed word) muls8s::m#2 ? (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 -- vwsz1=vwsz1_minus_vbsz2 + //SEG405 [199] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 -- vwsz1=vwsz1_minus_vbsz2 lda b sta $fe ora #$7f @@ -6133,7 +6133,7 @@ muls8s: { lda m+1 sbc $ff sta m+1 - //SEG406 [200] (signed byte) muls8s::i#1 ? -- (signed byte) muls8s::i#2 -- vbsz1=_dec_vbsz1 + //SEG406 [200] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 -- vbsz1=_dec_vbsz1 dec i //SEG407 [201] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@4 -- vbsz1_neq_vbsz2_then_la1 lda i @@ -6174,15 +6174,15 @@ mul8u_compare: { jmp b2 //SEG418 mul8u_compare::@2 b2: - //SEG419 [205] (byte) muls8u::a#0 ? (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 + //SEG419 [205] (byte) muls8u::a#0 ← (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 lda a sta muls8u.a - //SEG420 [206] (byte) muls8u::b#0 ? (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 + //SEG420 [206] (byte) muls8u::b#0 ← (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 lda b sta muls8u.b //SEG421 [207] call muls8u jsr muls8u - //SEG422 [208] (word) muls8u::return#2 ? (word) muls8u::return#0 -- vwuz1=vwuz2 + //SEG422 [208] (word) muls8u::return#2 ← (word) muls8u::return#0 -- vwuz1=vwuz2 lda muls8u.return sta muls8u.return_2 lda muls8u.return+1 @@ -6190,20 +6190,20 @@ mul8u_compare: { jmp b10 //SEG423 mul8u_compare::@10 b10: - //SEG424 [209] (word) mul8u_compare::ms#0 ? (word) muls8u::return#2 -- vwuz1=vwuz2 + //SEG424 [209] (word) mul8u_compare::ms#0 ← (word) muls8u::return#2 -- vwuz1=vwuz2 lda muls8u.return_2 sta ms lda muls8u.return_2+1 sta ms+1 - //SEG425 [210] (byte) mulf8u::a#0 ? (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 + //SEG425 [210] (byte) mulf8u::a#0 ← (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 lda a sta mulf8u.a - //SEG426 [211] (byte) mulf8u::b#0 ? (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 + //SEG426 [211] (byte) mulf8u::b#0 ← (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 lda b sta mulf8u.b //SEG427 [212] call mulf8u jsr mulf8u - //SEG428 [213] (word) mulf8u::return#2 ? (word) mulf8u::return#0 -- vwuz1=vwuz2 + //SEG428 [213] (word) mulf8u::return#2 ← (word) mulf8u::return#0 -- vwuz1=vwuz2 lda mulf8u.return sta mulf8u.return_2 lda mulf8u.return+1 @@ -6211,15 +6211,15 @@ mul8u_compare: { jmp b11 //SEG429 mul8u_compare::@11 b11: - //SEG430 [214] (word) mul8u_compare::mf#0 ? (word) mulf8u::return#2 -- vwuz1=vwuz2 + //SEG430 [214] (word) mul8u_compare::mf#0 ← (word) mulf8u::return#2 -- vwuz1=vwuz2 lda mulf8u.return_2 sta mf lda mulf8u.return_2+1 sta mf+1 - //SEG431 [215] (byte) mul8u::a#2 ? (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 + //SEG431 [215] (byte) mul8u::a#2 ← (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 lda a sta mul8u.a - //SEG432 [216] (byte) mul8u::b#1 ? (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 + //SEG432 [216] (byte) mul8u::b#1 ← (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 lda b sta mul8u.b //SEG433 [217] call mul8u @@ -6228,7 +6228,7 @@ mul8u_compare: { //SEG435 [147] phi (byte) mul8u::a#6 = (byte) mul8u::a#2 [phi:mul8u_compare::@11->mul8u#0] -- register_copy //SEG436 [147] phi (byte) mul8u::b#2 = (byte) mul8u::b#1 [phi:mul8u_compare::@11->mul8u#1] -- register_copy jsr mul8u - //SEG437 [218] (word) mul8u::return#3 ? (word) mul8u::res#2 -- vwuz1=vwuz2 + //SEG437 [218] (word) mul8u::return#3 ← (word) mul8u::res#2 -- vwuz1=vwuz2 lda mul8u.res sta mul8u.return_3 lda mul8u.res+1 @@ -6236,7 +6236,7 @@ mul8u_compare: { jmp b12 //SEG438 mul8u_compare::@12 b12: - //SEG439 [219] (word) mul8u_compare::mn#0 ? (word) mul8u::return#3 -- vwuz1=vwuz2 + //SEG439 [219] (word) mul8u_compare::mn#0 ← (word) mul8u::return#3 -- vwuz1=vwuz2 lda mul8u.return_3 sta mn lda mul8u.return_3+1 @@ -6291,26 +6291,26 @@ mul8u_compare: { jmp b7 //SEG453 mul8u_compare::@7 b7: - //SEG454 [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG454 [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG455 [227] (byte) mul8u_error::a#0 ? (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 + //SEG455 [227] (byte) mul8u_error::a#0 ← (byte) mul8u_compare::a#7 -- vbuz1=vbuz2 lda a sta mul8u_error.a - //SEG456 [228] (byte) mul8u_error::b#0 ? (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 + //SEG456 [228] (byte) mul8u_error::b#0 ← (byte) mul8u_compare::b#10 -- vbuz1=vbuz2 lda b sta mul8u_error.b - //SEG457 [229] (word) mul8u_error::ms#0 ? (word) mul8u_compare::ms#0 -- vwuz1=vwuz2 + //SEG457 [229] (word) mul8u_error::ms#0 ← (word) mul8u_compare::ms#0 -- vwuz1=vwuz2 lda ms sta mul8u_error.ms lda ms+1 sta mul8u_error.ms+1 - //SEG458 [230] (word) mul8u_error::mn#0 ? (word) mul8u_compare::mn#0 -- vwuz1=vwuz2 + //SEG458 [230] (word) mul8u_error::mn#0 ← (word) mul8u_compare::mn#0 -- vwuz1=vwuz2 lda mn sta mul8u_error.mn lda mn+1 sta mul8u_error.mn+1 - //SEG459 [231] (word) mul8u_error::mf#0 ? (word) mul8u_compare::mf#0 -- vwuz1=vwuz2 + //SEG459 [231] (word) mul8u_error::mf#0 ← (word) mul8u_compare::mf#0 -- vwuz1=vwuz2 lda mf sta mul8u_error.mf lda mf+1 @@ -6326,7 +6326,7 @@ mul8u_compare: { rts //SEG464 mul8u_compare::@5 b5: - //SEG465 [234] (byte) mul8u_compare::b#1 ? ++ (byte) mul8u_compare::b#10 -- vbuz1=_inc_vbuz1 + //SEG465 [234] (byte) mul8u_compare::b#1 ← ++ (byte) mul8u_compare::b#10 -- vbuz1=_inc_vbuz1 inc b //SEG466 [235] if((byte) mul8u_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@2 -- vbuz1_neq_0_then_la1 lda b @@ -6335,7 +6335,7 @@ mul8u_compare: { jmp b8 //SEG467 mul8u_compare::@8 b8: - //SEG468 [236] (byte) mul8u_compare::a#1 ? ++ (byte) mul8u_compare::a#7 -- vbuz1=_inc_vbuz1 + //SEG468 [236] (byte) mul8u_compare::a#1 ← ++ (byte) mul8u_compare::a#7 -- vbuz1=_inc_vbuz1 inc a //SEG469 [237] if((byte) mul8u_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@1 -- vbuz1_neq_0_then_la1 lda a @@ -6400,7 +6400,7 @@ mul8u_error: { jmp b1 //SEG491 mul8u_error::@1 b1: - //SEG492 [245] (byte) print_byte::b#3 ? (byte) mul8u_error::a#0 -- vbuz1=vbuz2 + //SEG492 [245] (byte) print_byte::b#3 ← (byte) mul8u_error::a#0 -- vbuz1=vbuz2 lda a sta print_byte.b //SEG493 [246] call print_byte @@ -6427,7 +6427,7 @@ mul8u_error: { jmp b3 //SEG503 mul8u_error::@3 b3: - //SEG504 [249] (byte) print_byte::b#4 ? (byte) mul8u_error::b#0 -- vbuz1=vbuz2 + //SEG504 [249] (byte) print_byte::b#4 ← (byte) mul8u_error::b#0 -- vbuz1=vbuz2 lda b sta print_byte.b //SEG505 [250] call print_byte @@ -6454,7 +6454,7 @@ mul8u_error: { jmp b5 //SEG515 mul8u_error::@5 b5: - //SEG516 [253] (word) print_word::w#3 ? (word) mul8u_error::ms#0 -- vwuz1=vwuz2 + //SEG516 [253] (word) print_word::w#3 ← (word) mul8u_error::ms#0 -- vwuz1=vwuz2 lda ms sta print_word.w lda ms+1 @@ -6483,7 +6483,7 @@ mul8u_error: { jmp b7 //SEG527 mul8u_error::@7 b7: - //SEG528 [257] (word) print_word::w#4 ? (word) mul8u_error::mn#0 -- vwuz1=vwuz2 + //SEG528 [257] (word) print_word::w#4 ← (word) mul8u_error::mn#0 -- vwuz1=vwuz2 lda mn sta print_word.w lda mn+1 @@ -6512,7 +6512,7 @@ mul8u_error: { jmp b9 //SEG539 mul8u_error::@9 b9: - //SEG540 [261] (word) print_word::w#5 ? (word) mul8u_error::mf#0 -- vwuz1=vwuz2 + //SEG540 [261] (word) print_word::w#5 ← (word) mul8u_error::mf#0 -- vwuz1=vwuz2 lda mf sta print_word.w lda mf+1 @@ -6549,7 +6549,7 @@ mulf8u: { .label a = $72 .label b = $73 .label return_2 = $74 - //SEG554 [266] (byte) mulf8u_prepare::a#0 ? (byte) mulf8u::a#0 -- vbuz1=vbuz2 + //SEG554 [266] (byte) mulf8u_prepare::a#0 ← (byte) mulf8u::a#0 -- vbuz1=vbuz2 lda a sta mulf8u_prepare.a //SEG555 [267] call mulf8u_prepare @@ -6560,7 +6560,7 @@ mulf8u: { jmp b1 //SEG558 mulf8u::@1 b1: - //SEG559 [268] (byte) mulf8u_prepared::b#0 ? (byte) mulf8u::b#0 -- vbuz1=vbuz2 + //SEG559 [268] (byte) mulf8u_prepared::b#0 ← (byte) mulf8u::b#0 -- vbuz1=vbuz2 lda b sta mulf8u_prepared.b //SEG560 [269] call mulf8u_prepared @@ -6568,7 +6568,7 @@ mulf8u: { mulf8u_prepared_from_b1: //SEG562 [181] phi (byte) mulf8u_prepared::b#2 = (byte) mulf8u_prepared::b#0 [phi:mulf8u::@1->mulf8u_prepared#0] -- register_copy jsr mulf8u_prepared - //SEG563 [270] (word) mulf8u_prepared::return#2 ? (word) mulf8u_prepared::return#0 -- vwuz1=vwuz2 + //SEG563 [270] (word) mulf8u_prepared::return#2 ← (word) mulf8u_prepared::return#0 -- vwuz1=vwuz2 lda mulf8u_prepared.return sta mulf8u_prepared.return_2 lda mulf8u_prepared.return+1 @@ -6576,7 +6576,7 @@ mulf8u: { jmp b2 //SEG564 mulf8u::@2 b2: - //SEG565 [271] (word) mulf8u::return#0 ? (word) mulf8u_prepared::return#2 -- vwuz1=vwuz2 + //SEG565 [271] (word) mulf8u::return#0 ← (word) mulf8u_prepared::return#2 -- vwuz1=vwuz2 lda mulf8u_prepared.return_2 sta return lda mulf8u_prepared.return_2+1 @@ -6620,7 +6620,7 @@ muls8u: { jmp b2 //SEG576 muls8u::@2 b2: - //SEG577 [275] (word) muls8u::m#1 ? (word) muls8u::m#3 + (byte) muls8u::b#0 -- vwuz1=vwuz1_plus_vbuz2 + //SEG577 [275] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 -- vwuz1=vwuz1_plus_vbuz2 lda b clc adc m @@ -6628,7 +6628,7 @@ muls8u: { bcc !+ inc m+1 !: - //SEG578 [276] (byte) muls8u::i#1 ? ++ (byte) muls8u::i#2 -- vbuz1=_inc_vbuz1 + //SEG578 [276] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 -- vbuz1=_inc_vbuz1 inc i //SEG579 [277] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 -- vbuz1_neq_vbuz2_then_la1 lda i @@ -6689,7 +6689,7 @@ mulf_tables_cmp: { jmp b3 //SEG596 mulf_tables_cmp::@3 b3: - //SEG597 [283] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG597 [283] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL //SEG598 [284] call print_str @@ -6709,7 +6709,7 @@ mulf_tables_cmp: { jmp b5 //SEG602 mulf_tables_cmp::@5 b5: - //SEG603 [285] (word~) print_word::w#11 ? (word)(byte*) mulf_tables_cmp::asm_sqr#2 -- vwuz1=vwuz2 + //SEG603 [285] (word~) print_word::w#11 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 -- vwuz1=vwuz2 lda asm_sqr sta print_word.w lda asm_sqr+1 @@ -6738,7 +6738,7 @@ mulf_tables_cmp: { jmp b7 //SEG614 mulf_tables_cmp::@7 b7: - //SEG615 [289] (word~) print_word::w#12 ? (word)(byte*) mulf_tables_cmp::kc_sqr#2 -- vwuz1=vwuz2 + //SEG615 [289] (word~) print_word::w#12 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 -- vwuz1=vwuz2 lda kc_sqr sta print_word.w lda kc_sqr+1 @@ -6764,12 +6764,12 @@ mulf_tables_cmp: { rts //SEG625 mulf_tables_cmp::@2 b2: - //SEG626 [293] (byte*) mulf_tables_cmp::asm_sqr#1 ? ++ (byte*) mulf_tables_cmp::asm_sqr#2 -- pbuz1=_inc_pbuz1 + //SEG626 [293] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 -- pbuz1=_inc_pbuz1 inc asm_sqr bne !+ inc asm_sqr+1 !: - //SEG627 [294] (byte*) mulf_tables_cmp::kc_sqr#1 ? ++ (byte*) mulf_tables_cmp::kc_sqr#2 -- pbuz1=_inc_pbuz1 + //SEG627 [294] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 -- pbuz1=_inc_pbuz1 inc kc_sqr bne !+ inc kc_sqr+1 @@ -6817,7 +6817,7 @@ mulf_tables_cmp: { lda #>$400 sta print_line_cursor+1 jsr print_ln - //SEG641 [300] (byte*~) print_char_cursor#225 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG641 [300] (byte*~) print_char_cursor#225 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -6876,16 +6876,16 @@ mulf_init_asm: { dey inx bne !- - //SEG647 [302] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_lo#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG647 [302] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_lo#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_lo sta mem - //SEG648 [303] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_hi#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG648 [303] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_hi#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_hi sta mem - //SEG649 [304] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_lo#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG649 [304] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_lo#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_lo sta mem - //SEG650 [305] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_hi#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG650 [305] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_hi#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_hi sta mem jmp breturn @@ -6943,9 +6943,9 @@ mulf_init: { jmp b1 //SEG666 mulf_init::@1 b1: - //SEG667 [309] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 -- vbuz1=_inc_vbuz1 + //SEG667 [309] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 -- vbuz1=_inc_vbuz1 inc c - //SEG668 [310] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 + //SEG668 [310] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=vbuz2_band_vbuc1 lda #1 and c sta _8 @@ -6956,9 +6956,9 @@ mulf_init: { jmp b3 //SEG670 mulf_init::@3 b3: - //SEG671 [312] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 + //SEG671 [312] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 inc x_2 - //SEG672 [313] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 + //SEG672 [313] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 @@ -6971,26 +6971,26 @@ mulf_init: { jmp b2 //SEG676 mulf_init::@2 b2: - //SEG677 [315] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 -- vbuz1=_lo_vwuz2 + //SEG677 [315] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 -- vbuz1=_lo_vwuz2 lda sqr sta _11 - //SEG678 [316] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 -- _deref_pbuz1=vbuz2 + //SEG678 [316] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 -- _deref_pbuz1=vbuz2 lda _11 ldy #0 sta (sqr1_lo),y - //SEG679 [317] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 -- vbuz1=_hi_vwuz2 + //SEG679 [317] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 -- vbuz1=_hi_vwuz2 lda sqr+1 sta _12 - //SEG680 [318] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 -- _deref_pbuz1=vbuz2 + //SEG680 [318] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 -- _deref_pbuz1=vbuz2 lda _12 ldy #0 sta (sqr1_hi),y - //SEG681 [319] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 + //SEG681 [319] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG682 [320] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 + //SEG682 [320] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -6998,7 +6998,7 @@ mulf_init: { bcc !+ inc sqr+1 !: - //SEG683 [321] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 + //SEG683 [321] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 @@ -7038,22 +7038,22 @@ mulf_init: { jmp b4 //SEG695 mulf_init::@4 b4: - //SEG696 [324] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG696 [324] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy x_255 lda mulf_sqr1_lo,y ldy #0 sta (sqr2_lo),y - //SEG697 [325] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 + //SEG697 [325] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuz2 ldy x_255 lda mulf_sqr1_hi,y ldy #0 sta (sqr2_hi),y - //SEG698 [326] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 + //SEG698 [326] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG699 [327] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuz1=vbuz1_plus_vbuz2 + //SEG699 [327] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuz1=vbuz1_plus_vbuz2 lda x_255 clc adc dir @@ -7070,7 +7070,7 @@ mulf_init: { jmp b5 //SEG703 mulf_init::@5 b5: - //SEG704 [330] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 + //SEG704 [330] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 @@ -7085,11 +7085,11 @@ mulf_init: { jmp b6 //SEG706 mulf_init::@6 b6: - //SEG707 [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG707 [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 // Set the very last value g(511) = f(256) lda mulf_sqr1_lo+$100 sta mulf_sqr2_lo+$1ff - //SEG708 [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG708 [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 lda mulf_sqr1_hi+$100 sta mulf_sqr2_hi+$1ff jmp breturn @@ -7125,11 +7125,11 @@ print_cls: { jmp b1 //SEG720 print_cls::@1 b1: - //SEG721 [338] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG721 [338] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG722 [339] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG722 [339] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -7180,26 +7180,26 @@ print_cls: { str2: .text " slow:@" REGISTER UPLIFT POTENTIAL REGISTERS -Statement [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [23] (signed word) muls8s::return#2 ? (signed word) muls8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ mul8s_compare::a#7 mul8s_compare::a#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:3 [ mul8s_compare::b#10 mul8s_compare::b#1 ] -Statement [24] (signed word) mul8s_compare::ms#0 ? (signed word) muls8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [28] (signed word) mulf8s::return#2 ? (signed word) mulf8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [29] (signed word) mul8s_compare::mf#0 ? (signed word) mulf8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [33] (signed word) mul8s::return#2 ? (signed word)(word) mul8s::m#4 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [34] (signed word) mul8s_compare::mn#0 ? (signed word) mul8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [24] (signed word) mul8s_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [28] (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [29] (signed word) mul8s_compare::mf#0 ← (signed word) mulf8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [33] (signed word) mul8s::return#2 ← (signed word)(word) mul8s::m#4 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [34] (signed word) mul8s_compare::mn#0 ← (signed word) mul8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a Statement [35] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mf#0) goto mul8s_compare::@3 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a Statement [38] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mn#0) goto mul8s_compare::@14 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_compare::ok#4 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_compare::ok#4 print_line_cursor#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:4 [ mul8s_compare::ok#3 mul8s_compare::ok#4 ] -Statement [41] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [44] (signed word) mul8s_error::ms#0 ? (signed word) mul8s_compare::ms#0 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [41] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [44] (signed word) mul8s_error::ms#0 ← (signed word) mul8s_compare::ms#0 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:78 [ mul8s_error::a#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:79 [ mul8s_error::b#0 ] -Statement [45] (signed word) mul8s_error::mn#0 ? (signed word) mul8s_compare::mn#0 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [46] (signed word) mul8s_error::mf#0 ? (signed word) mul8s_compare::mf#0 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [53] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 [ print_char_cursor#192 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ print_char_cursor#192 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [60] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#133 ] ( main:2::mul8s_compare:15::print_ln:56 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8s_compare:15::mul8s_error:47::print_ln:91 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::print_ln:241 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::mul8u_error:232::print_ln:264 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mulf_tables_cmp:11::print_ln:299 [ print_line_cursor#1 print_char_cursor#133 ] ) always clobbers reg byte a +Statement [45] (signed word) mul8s_error::mn#0 ← (signed word) mul8s_compare::mn#0 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [46] (signed word) mul8s_error::mf#0 ← (signed word) mul8s_compare::mf#0 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [53] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 [ print_char_cursor#192 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ print_char_cursor#192 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [60] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#133 ] ( main:2::mul8s_compare:15::print_ln:56 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8s_compare:15::mul8s_error:47::print_ln:91 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::print_ln:241 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::mul8u_error:232::print_ln:264 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mulf_tables_cmp:11::print_ln:299 [ print_line_cursor#1 print_char_cursor#133 ] ) always clobbers reg byte a Statement [61] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#133) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#133 ] ( main:2::mul8s_compare:15::print_ln:56 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8s_compare:15::mul8s_error:47::print_ln:91 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::print_ln:241 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::mul8u_error:232::print_ln:264 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mulf_tables_cmp:11::print_ln:299 [ print_line_cursor#1 print_char_cursor#133 ] ) always clobbers reg byte a Statement [65] if(*((byte*) print_str::str#16)!=(byte) '@') goto print_str::@2 [ print_char_cursor#132 print_str::str#16 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::print_str:239 [ print_line_cursor#10 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:244 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:248 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:252 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:256 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:260 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:284 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:288 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:297 [ print_char_cursor#132 print_str::str#16 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:78 [ mul8s_error::a#0 ] @@ -7208,215 +7208,215 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:124 [ Removing always clobbered register reg byte y as potential for zp ZP_BYTE:124 [ mul8u_error::a#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:125 [ mul8u_error::b#0 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:125 [ mul8u_error::b#0 ] -Statement [67] *((byte*) print_char_cursor#132) ? *((byte*) print_str::str#16) [ print_char_cursor#132 print_str::str#16 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::print_str:239 [ print_line_cursor#10 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:244 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:248 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:252 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:256 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:260 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:284 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:288 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:297 [ print_char_cursor#132 print_str::str#16 ] ) always clobbers reg byte a reg byte y -Statement [70] (byte*~) print_char_cursor#193 ? (byte*) print_line_cursor#1 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ) always clobbers reg byte a -Statement [80] (signed word) print_sword::w#1 ? (signed word) mul8s_error::ms#0 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ) always clobbers reg byte a -Statement [84] (signed word) print_sword::w#2 ? (signed word) mul8s_error::mn#0 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ) always clobbers reg byte a -Statement [88] (signed word) print_sword::w#3 ? (signed word) mul8s_error::mf#0 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ) always clobbers reg byte a +Statement [67] *((byte*) print_char_cursor#132) ← *((byte*) print_str::str#16) [ print_char_cursor#132 print_str::str#16 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::print_str:239 [ print_line_cursor#10 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:244 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:248 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:252 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:256 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:260 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:284 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:288 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:297 [ print_char_cursor#132 print_str::str#16 ] ) always clobbers reg byte a reg byte y +Statement [70] (byte*~) print_char_cursor#193 ← (byte*) print_line_cursor#1 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ) always clobbers reg byte a +Statement [80] (signed word) print_sword::w#1 ← (signed word) mul8s_error::ms#0 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ) always clobbers reg byte a +Statement [84] (signed word) print_sword::w#2 ← (signed word) mul8s_error::mn#0 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ) always clobbers reg byte a +Statement [88] (signed word) print_sword::w#3 ← (signed word) mul8s_error::mf#0 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ) always clobbers reg byte a Statement [94] if((signed word) print_sword::w#4>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#132 print_sword::w#4 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#4 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#4 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#4 ] ) always clobbers reg byte a -Statement [97] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#4 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a -Statement [99] (word~) print_word::w#13 ? (word)(signed word) print_sword::w#5 [ print_char_cursor#134 print_word::w#13 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] ) always clobbers reg byte a -Statement [103] (byte) print_byte::b#1 ? > (word) print_word::w#6 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ) always clobbers reg byte a -Statement [105] (byte) print_byte::b#2 ? < (word) print_word::w#6 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a -Statement [109] (byte~) print_byte::$0 ? (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ) always clobbers reg byte a +Statement [97] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#4 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a +Statement [99] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#5 [ print_char_cursor#134 print_word::w#13 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] ) always clobbers reg byte a +Statement [103] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ) always clobbers reg byte a +Statement [105] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a +Statement [109] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:13 [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] -Statement [112] (byte~) print_byte::$2 ? (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a -Statement [117] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#5 [ print_char_cursor#84 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_char:96 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_char:96 [ mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_char:96 [ print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:111 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:111 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:111 [ print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:111 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:111 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:111 [ print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:111 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:111 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:111 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:111 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:114 [ print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:114 [ print_line_cursor#10 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:114 [ print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:114 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:114 [ print_line_cursor#10 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:114 [ print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:114 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:114 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:114 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:114 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:123 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:123 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:129 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:129 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] ) always clobbers reg byte y +Statement [112] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a +Statement [117] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#5 [ print_char_cursor#84 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_char:96 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_char:96 [ mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_char:96 [ print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:111 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:111 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:111 [ print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:111 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:111 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:111 [ print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:111 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:111 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:111 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:111 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:114 [ print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:114 [ print_line_cursor#10 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:114 [ print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:114 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:114 [ print_line_cursor#10 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:114 [ print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:114 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:114 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:114 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:114 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:123 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:123 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:129 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:129 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:13 [ print_byte::b#5 print_byte::b#3 print_byte::b#4 print_byte::b#9 print_byte::b#1 print_byte::b#2 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:17 [ print_sbyte::b#5 print_sbyte::b#0 print_sbyte::b#3 print_sbyte::b#1 print_sbyte::b#2 ] -Statement [130] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#3 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [134] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ) always clobbers reg byte a +Statement [130] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [134] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:72 [ mul8s::a#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:73 [ mul8s::b#0 ] -Statement [135] (word) mul8s::m#0 ? (word) mul8u::return#2 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ) always clobbers reg byte a -Statement [137] (byte~) mul8s::$9 ? > (word) mul8s::m#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ) always clobbers reg byte a -Statement [138] (byte~) mul8s::$16 ? (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ) always clobbers reg byte a -Statement [142] (byte~) mul8s::$13 ? > (word) mul8s::m#5 [ mul8s::a#0 mul8s::m#5 mul8s::$13 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::m#5 mul8s::$13 ] ) always clobbers reg byte a -Statement [143] (byte~) mul8s::$17 ? (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 [ mul8s::m#5 mul8s::$17 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::m#5 mul8s::$17 ] ) always clobbers reg byte a -Statement [148] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#6 mul8u::mb#0 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [135] (word) mul8s::m#0 ← (word) mul8u::return#2 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ) always clobbers reg byte a +Statement [137] (byte~) mul8s::$9 ← > (word) mul8s::m#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ) always clobbers reg byte a +Statement [138] (byte~) mul8s::$16 ← (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ) always clobbers reg byte a +Statement [142] (byte~) mul8s::$13 ← > (word) mul8s::m#5 [ mul8s::a#0 mul8s::m#5 mul8s::$13 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::m#5 mul8s::$13 ] ) always clobbers reg byte a +Statement [143] (byte~) mul8s::$17 ← (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 [ mul8s::m#5 mul8s::$17 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::m#5 mul8s::$17 ] ) always clobbers reg byte a +Statement [148] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#6 mul8u::mb#0 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ mul8u::a#3 mul8u::a#6 mul8u::a#8 mul8u::a#2 mul8u::a#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:34 [ mul8u_compare::a#7 mul8u_compare::a#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:35 [ mul8u_compare::b#10 mul8u_compare::b#1 ] -Statement [152] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [154] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a -Statement [163] (signed word) mulf8s_prepared::return#2 ? (signed word)(word) mulf8s_prepared::m#4 [ mulf8s_prepared::return#2 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::return#2 ] ) always clobbers reg byte a -Statement [164] (signed word) mulf8s::return#0 ? (signed word) mulf8s_prepared::return#2 [ mulf8s::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s::return#0 ] ) always clobbers reg byte a -Statement [168] (word) mulf8u_prepared::return#3 ? (word) mulf8u_prepared::return#0 [ mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ) always clobbers reg byte a +Statement [152] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [154] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [163] (signed word) mulf8s_prepared::return#2 ← (signed word)(word) mulf8s_prepared::m#4 [ mulf8s_prepared::return#2 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::return#2 ] ) always clobbers reg byte a +Statement [164] (signed word) mulf8s::return#0 ← (signed word) mulf8s_prepared::return#2 [ mulf8s::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s::return#0 ] ) always clobbers reg byte a +Statement [168] (word) mulf8u_prepared::return#3 ← (word) mulf8u_prepared::return#0 [ mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:95 [ mulf8s_prepared::b#0 ] -Statement [169] (word) mulf8s_prepared::m#0 ? (word) mulf8u_prepared::return#3 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ) always clobbers reg byte a +Statement [169] (word) mulf8s_prepared::m#0 ← (word) mulf8u_prepared::return#3 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ) always clobbers reg byte a Statement [170] if(*((const signed byte*) mulf8s_prepared::memA#0)>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s_prepared::@1 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ) always clobbers reg byte a -Statement [171] (byte~) mulf8s_prepared::$8 ? > (word) mulf8s_prepared::m#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ) always clobbers reg byte a -Statement [172] (byte~) mulf8s_prepared::$15 ? (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ) always clobbers reg byte a -Statement [176] (byte~) mulf8s_prepared::$12 ? > (word) mulf8s_prepared::m#5 [ mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ) always clobbers reg byte a -Statement [177] (byte~) mulf8s_prepared::$16 ? (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) [ mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ) always clobbers reg byte a +Statement [171] (byte~) mulf8s_prepared::$8 ← > (word) mulf8s_prepared::m#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ) always clobbers reg byte a +Statement [172] (byte~) mulf8s_prepared::$15 ← (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ) always clobbers reg byte a +Statement [176] (byte~) mulf8s_prepared::$12 ← > (word) mulf8s_prepared::m#5 [ mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ) always clobbers reg byte a +Statement [177] (byte~) mulf8s_prepared::$16 ← (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) [ mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ) always clobbers reg byte a Statement asm { ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x staresL sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } always clobbers reg byte a reg byte x Removing always clobbered register reg byte x as potential for zp ZP_BYTE:2 [ mul8s_compare::a#7 mul8s_compare::a#1 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:3 [ mul8s_compare::b#10 mul8s_compare::b#1 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:95 [ mulf8s_prepared::b#0 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:34 [ mul8u_compare::a#7 mul8u_compare::a#1 ] Removing always clobbered register reg byte x as potential for zp ZP_BYTE:35 [ mul8u_compare::b#10 mul8u_compare::b#1 ] -Statement [184] (word) mulf8u_prepared::return#0 ? *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) [ mulf8u_prepared::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162::mulf8u_prepared:167 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#0 ] main:2::mul8u_compare:13::mulf8u:212::mulf8u_prepared:269 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#0 ] ) always clobbers reg byte a +Statement [184] (word) mulf8u_prepared::return#0 ← *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) [ mulf8u_prepared::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162::mulf8u_prepared:167 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#0 ] main:2::mul8u_compare:13::mulf8u:212::mulf8u_prepared:269 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#0 ] ) always clobbers reg byte a Statement asm { ldamemA stamulf8u_prepared.sm1+1 stamulf8u_prepared.sm3+1 eor#$ff stamulf8u_prepared.sm2+1 stamulf8u_prepared.sm4+1 } always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:67 [ mulf8s::b#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:115 [ mulf8u::b#0 ] -Statement [193] (signed word) muls8s::m#1 ? (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ) always clobbers reg byte a +Statement [193] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:60 [ muls8s::a#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:61 [ muls8s::b#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:30 [ muls8s::j#2 muls8s::j#1 ] -Statement [199] (signed word) muls8s::m#2 ? (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ) always clobbers reg byte a +Statement [199] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:33 [ muls8s::i#2 muls8s::i#1 ] -Statement [208] (word) muls8u::return#2 ? (word) muls8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ) always clobbers reg byte a -Statement [209] (word) mul8u_compare::ms#0 ? (word) muls8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ) always clobbers reg byte a -Statement [213] (word) mulf8u::return#2 ? (word) mulf8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ) always clobbers reg byte a -Statement [214] (word) mul8u_compare::mf#0 ? (word) mulf8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ) always clobbers reg byte a -Statement [218] (word) mul8u::return#3 ? (word) mul8u::res#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ) always clobbers reg byte a -Statement [219] (word) mul8u_compare::mn#0 ? (word) mul8u::return#3 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a +Statement [208] (word) muls8u::return#2 ← (word) muls8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ) always clobbers reg byte a +Statement [209] (word) mul8u_compare::ms#0 ← (word) muls8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ) always clobbers reg byte a +Statement [213] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ) always clobbers reg byte a +Statement [214] (word) mul8u_compare::mf#0 ← (word) mulf8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ) always clobbers reg byte a +Statement [218] (word) mul8u::return#3 ← (word) mul8u::res#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ) always clobbers reg byte a +Statement [219] (word) mul8u_compare::mn#0 ← (word) mul8u::return#3 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a Statement [220] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mf#0) goto mul8u_compare::@3 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a Statement [223] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mn#0) goto mul8u_compare::@14 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_compare::ok#4 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_compare::ok#4 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:36 [ mul8u_compare::ok#3 mul8u_compare::ok#4 ] -Statement [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a -Statement [229] (word) mul8u_error::ms#0 ? (word) mul8u_compare::ms#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ) always clobbers reg byte a -Statement [230] (word) mul8u_error::mn#0 ? (word) mul8u_compare::mn#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ) always clobbers reg byte a -Statement [231] (word) mul8u_error::mf#0 ? (word) mul8u_compare::mf#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a -Statement [253] (word) print_word::w#3 ? (word) mul8u_error::ms#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a -Statement [257] (word) print_word::w#4 ? (word) mul8u_error::mn#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ) always clobbers reg byte a -Statement [261] (word) print_word::w#5 ? (word) mul8u_error::mf#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ) always clobbers reg byte a -Statement [270] (word) mulf8u_prepared::return#2 ? (word) mulf8u_prepared::return#0 [ mulf8u_prepared::return#2 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#2 ] ) always clobbers reg byte a -Statement [271] (word) mulf8u::return#0 ? (word) mulf8u_prepared::return#2 [ mulf8u::return#0 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a -Statement [275] (word) muls8u::m#1 ? (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_compare:13::muls8u:207 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a +Statement [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a +Statement [229] (word) mul8u_error::ms#0 ← (word) mul8u_compare::ms#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ) always clobbers reg byte a +Statement [230] (word) mul8u_error::mn#0 ← (word) mul8u_compare::mn#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ) always clobbers reg byte a +Statement [231] (word) mul8u_error::mf#0 ← (word) mul8u_compare::mf#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a +Statement [253] (word) print_word::w#3 ← (word) mul8u_error::ms#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a +Statement [257] (word) print_word::w#4 ← (word) mul8u_error::mn#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ) always clobbers reg byte a +Statement [261] (word) print_word::w#5 ← (word) mul8u_error::mf#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ) always clobbers reg byte a +Statement [270] (word) mulf8u_prepared::return#2 ← (word) mulf8u_prepared::return#0 [ mulf8u_prepared::return#2 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#2 ] ) always clobbers reg byte a +Statement [271] (word) mulf8u::return#0 ← (word) mulf8u_prepared::return#2 [ mulf8u::return#0 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a +Statement [275] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_compare:13::muls8u:207 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:108 [ muls8u::a#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:109 [ muls8u::b#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:37 [ muls8u::i#2 muls8u::i#1 ] Statement [282] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a reg byte y -Statement [283] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a -Statement [285] (word~) print_word::w#11 ? (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ) always clobbers reg byte a -Statement [289] (word~) print_word::w#12 ? (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ print_char_cursor#132 print_word::w#12 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#12 ] ) always clobbers reg byte a +Statement [283] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a +Statement [285] (word~) print_word::w#11 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ) always clobbers reg byte a +Statement [289] (word~) print_word::w#12 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ print_char_cursor#132 print_word::w#12 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#12 ] ) always clobbers reg byte a Statement [295] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) always clobbers reg byte a -Statement [300] (byte*~) print_char_cursor#225 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#225 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#1 print_char_cursor#225 ] ) always clobbers reg byte a +Statement [300] (byte*~) print_char_cursor#225 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#225 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#1 print_char_cursor#225 ] ) always clobbers reg byte a Statement asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } always clobbers reg byte a reg byte x reg byte y -Statement [302] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [303] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [304] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [305] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [315] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a +Statement [302] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [303] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [304] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [305] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [315] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:44 [ mulf_init::c#2 mulf_init::c#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:49 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Statement [316] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [316] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y Removing always clobbered register reg byte y as potential for zp ZP_BYTE:44 [ mulf_init::c#2 mulf_init::c#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:49 [ mulf_init::x_2#3 mulf_init::x_2#2 mulf_init::x_2#1 ] -Statement [317] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a -Statement [318] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [320] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [317] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a +Statement [318] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [320] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a Statement [322] if((byte*) mulf_init::sqr1_lo#1!=(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [324] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [324] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y Removing always clobbered register reg byte a as potential for zp ZP_BYTE:52 [ mulf_init::x_255#2 mulf_init::x_255#1 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:52 [ mulf_init::x_255#2 mulf_init::x_255#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:57 [ mulf_init::dir#2 mulf_init::dir#3 ] Removing always clobbered register reg byte y as potential for zp ZP_BYTE:57 [ mulf_init::dir#2 mulf_init::dir#3 ] -Statement [325] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [327] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a +Statement [325] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [327] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a Statement [331] if((byte*) mulf_init::sqr2_lo#1!=(const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) goto mulf_init::@4 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a -Statement [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [338] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [338] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [340] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a -Statement [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [23] (signed word) muls8s::return#2 ? (signed word) muls8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [24] (signed word) mul8s_compare::ms#0 ? (signed word) muls8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [28] (signed word) mulf8s::return#2 ? (signed word) mulf8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [29] (signed word) mul8s_compare::mf#0 ? (signed word) mulf8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [33] (signed word) mul8s::return#2 ? (signed word)(word) mul8s::m#4 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [34] (signed word) mul8s_compare::mn#0 ? (signed word) mul8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 muls8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [24] (signed word) mul8s_compare::ms#0 ← (signed word) muls8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [28] (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#0 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mulf8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [29] (signed word) mul8s_compare::mf#0 ← (signed word) mulf8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [33] (signed word) mul8s::return#2 ← (signed word)(word) mul8s::m#4 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s::return#2 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [34] (signed word) mul8s_compare::mn#0 ← (signed word) mul8s::return#2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a Statement [35] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mf#0) goto mul8s_compare::@3 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a Statement [38] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mn#0) goto mul8s_compare::@14 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_compare::ok#4 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_compare::ok#4 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [41] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [44] (signed word) mul8s_error::ms#0 ? (signed word) mul8s_compare::ms#0 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [45] (signed word) mul8s_error::mn#0 ? (signed word) mul8s_compare::mn#0 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [46] (signed word) mul8s_error::mf#0 ? (signed word) mul8s_compare::mf#0 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [53] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 [ print_char_cursor#192 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ print_char_cursor#192 print_line_cursor#1 ] ) always clobbers reg byte a -Statement [60] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#133 ] ( main:2::mul8s_compare:15::print_ln:56 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8s_compare:15::mul8s_error:47::print_ln:91 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::print_ln:241 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::mul8u_error:232::print_ln:264 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mulf_tables_cmp:11::print_ln:299 [ print_line_cursor#1 print_char_cursor#133 ] ) always clobbers reg byte a +Statement [41] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 mul8s_compare::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [44] (signed word) mul8s_error::ms#0 ← (signed word) mul8s_compare::ms#0 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_compare::mn#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [45] (signed word) mul8s_error::mn#0 ← (signed word) mul8s_compare::mn#0 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_compare::mf#0 mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [46] (signed word) mul8s_error::mf#0 ← (signed word) mul8s_compare::mf#0 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [53] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 [ print_char_cursor#192 print_line_cursor#1 ] ( main:2::mul8s_compare:15 [ print_char_cursor#192 print_line_cursor#1 ] ) always clobbers reg byte a +Statement [60] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ print_line_cursor#1 print_char_cursor#133 ] ( main:2::mul8s_compare:15::print_ln:56 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8s_compare:15::mul8s_error:47::print_ln:91 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::print_ln:241 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::mul8u_error:232::print_ln:264 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mulf_tables_cmp:11::print_ln:299 [ print_line_cursor#1 print_char_cursor#133 ] ) always clobbers reg byte a Statement [61] if((byte*) print_line_cursor#1<(byte*) print_char_cursor#133) goto print_ln::@1 [ print_line_cursor#1 print_char_cursor#133 ] ( main:2::mul8s_compare:15::print_ln:56 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8s_compare:15::mul8s_error:47::print_ln:91 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::print_ln:241 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mul8u_compare:13::mul8u_error:232::print_ln:264 [ print_line_cursor#1 print_char_cursor#133 ] main:2::mulf_tables_cmp:11::print_ln:299 [ print_line_cursor#1 print_char_cursor#133 ] ) always clobbers reg byte a Statement [65] if(*((byte*) print_str::str#16)!=(byte) '@') goto print_str::@2 [ print_char_cursor#132 print_str::str#16 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::print_str:239 [ print_line_cursor#10 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:244 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:248 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:252 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:256 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:260 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:284 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:288 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:297 [ print_char_cursor#132 print_str::str#16 ] ) always clobbers reg byte a reg byte y -Statement [67] *((byte*) print_char_cursor#132) ? *((byte*) print_str::str#16) [ print_char_cursor#132 print_str::str#16 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::print_str:239 [ print_line_cursor#10 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:244 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:248 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:252 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:256 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:260 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:284 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:288 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:297 [ print_char_cursor#132 print_str::str#16 ] ) always clobbers reg byte a reg byte y -Statement [70] (byte*~) print_char_cursor#193 ? (byte*) print_line_cursor#1 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ) always clobbers reg byte a -Statement [80] (signed word) print_sword::w#1 ? (signed word) mul8s_error::ms#0 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ) always clobbers reg byte a -Statement [84] (signed word) print_sword::w#2 ? (signed word) mul8s_error::mn#0 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ) always clobbers reg byte a -Statement [88] (signed word) print_sword::w#3 ? (signed word) mul8s_error::mf#0 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ) always clobbers reg byte a +Statement [67] *((byte*) print_char_cursor#132) ← *((byte*) print_str::str#16) [ print_char_cursor#132 print_str::str#16 ] ( main:2::mul8s_compare:15::print_str:54 [ print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:71 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:75 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:79 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:83 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8s_compare:15::mul8s_error:47::print_str:87 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::print_str:239 [ print_line_cursor#10 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:244 [ print_line_cursor#10 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:248 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:252 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:256 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mul8u_compare:13::mul8u_error:232::print_str:260 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:284 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:288 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#132 print_str::str#16 ] main:2::mulf_tables_cmp:11::print_str:297 [ print_char_cursor#132 print_str::str#16 ] ) always clobbers reg byte a reg byte y +Statement [70] (byte*~) print_char_cursor#193 ← (byte*) print_line_cursor#1 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::a#0 mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#193 ] ) always clobbers reg byte a +Statement [80] (signed word) print_sword::w#1 ← (signed word) mul8s_error::ms#0 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#1 ] ) always clobbers reg byte a +Statement [84] (signed word) print_sword::w#2 ← (signed word) mul8s_error::mn#0 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#2 ] ) always clobbers reg byte a +Statement [88] (signed word) print_sword::w#3 ← (signed word) mul8s_error::mf#0 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ( main:2::mul8s_compare:15::mul8s_error:47 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#3 ] ) always clobbers reg byte a Statement [94] if((signed word) print_sword::w#4>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto print_sword::@1 [ print_char_cursor#132 print_sword::w#4 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#4 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#132 print_sword::w#4 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#132 print_sword::w#4 ] ) always clobbers reg byte a -Statement [97] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#4 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a -Statement [99] (word~) print_word::w#13 ? (word)(signed word) print_sword::w#5 [ print_char_cursor#134 print_word::w#13 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] ) always clobbers reg byte a -Statement [103] (byte) print_byte::b#1 ? > (word) print_word::w#6 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ) always clobbers reg byte a -Statement [105] (byte) print_byte::b#2 ? < (word) print_word::w#6 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a -Statement [109] (byte~) print_byte::$0 ? (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ) always clobbers reg byte a -Statement [112] (byte~) print_byte::$2 ? (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a -Statement [117] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#5 [ print_char_cursor#84 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_char:96 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_char:96 [ mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_char:96 [ print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:111 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:111 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:111 [ print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:111 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:111 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:111 [ print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:111 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:111 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:111 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:111 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:114 [ print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:114 [ print_line_cursor#10 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:114 [ print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:114 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:114 [ print_line_cursor#10 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:114 [ print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:114 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:114 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:114 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:114 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:123 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:123 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:129 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:129 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] ) always clobbers reg byte y -Statement [130] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#3 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a -Statement [134] (word) mul8u::return#2 ? (word) mul8u::res#2 [ mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ) always clobbers reg byte a -Statement [135] (word) mul8s::m#0 ? (word) mul8u::return#2 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ) always clobbers reg byte a -Statement [137] (byte~) mul8s::$9 ? > (word) mul8s::m#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ) always clobbers reg byte a -Statement [138] (byte~) mul8s::$16 ? (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ) always clobbers reg byte a -Statement [142] (byte~) mul8s::$13 ? > (word) mul8s::m#5 [ mul8s::a#0 mul8s::m#5 mul8s::$13 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::m#5 mul8s::$13 ] ) always clobbers reg byte a -Statement [143] (byte~) mul8s::$17 ? (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 [ mul8s::m#5 mul8s::$17 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::m#5 mul8s::$17 ] ) always clobbers reg byte a -Statement [148] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#6 mul8u::mb#0 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a -Statement [152] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a -Statement [154] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a -Statement [163] (signed word) mulf8s_prepared::return#2 ? (signed word)(word) mulf8s_prepared::m#4 [ mulf8s_prepared::return#2 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::return#2 ] ) always clobbers reg byte a -Statement [164] (signed word) mulf8s::return#0 ? (signed word) mulf8s_prepared::return#2 [ mulf8s::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s::return#0 ] ) always clobbers reg byte a -Statement [168] (word) mulf8u_prepared::return#3 ? (word) mulf8u_prepared::return#0 [ mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ) always clobbers reg byte a -Statement [169] (word) mulf8s_prepared::m#0 ? (word) mulf8u_prepared::return#3 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ) always clobbers reg byte a +Statement [97] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#4 [ print_char_cursor#18 print_sword::w#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#18 print_sword::w#0 ] ) always clobbers reg byte a +Statement [99] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#5 [ print_char_cursor#134 print_word::w#13 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89 [ print_line_cursor#1 print_char_cursor#134 print_word::w#13 ] ) always clobbers reg byte a +Statement [103] (byte) print_byte::b#1 ← > (word) print_word::w#6 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#139 print_byte::b#1 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_word::w#6 print_char_cursor#139 print_byte::b#1 ] ) always clobbers reg byte a +Statement [105] (byte) print_byte::b#2 ← < (word) print_word::w#6 [ print_char_cursor#18 print_byte::b#2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100 [ print_line_cursor#1 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::b#2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262 [ print_line_cursor#10 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:286 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::b#2 ] main:2::mulf_tables_cmp:11::print_word:290 [ print_char_cursor#18 print_byte::b#2 ] ) always clobbers reg byte a +Statement [109] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#140 print_byte::$0 ] ) always clobbers reg byte a +Statement [112] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f [ print_char_cursor#18 print_byte::$2 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104 [ print_line_cursor#1 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104 [ print_line_cursor#10 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104 [ print_word::w#6 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106 [ print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106 [ print_line_cursor#10 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#18 print_byte::$2 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106 [ print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#18 print_byte::$2 ] ) always clobbers reg byte a +Statement [117] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#5 [ print_char_cursor#84 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_char:96 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_char:96 [ mul8s_error::mf#0 print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_char:96 [ print_line_cursor#1 print_sword::w#4 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:111 [ print_line_cursor#1 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:111 [ print_line_cursor#10 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:111 [ print_word::w#6 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:111 [ mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:111 [ print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:111 [ print_line_cursor#10 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:111 [ print_line_cursor#10 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:111 [ mulf_tables_cmp::kc_sqr#2 print_byte::b#5 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:111 [ print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:111 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:111 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:111 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:111 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_byte::b#5 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:104::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:104::print_char:114 [ print_line_cursor#1 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:104::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_word::w#6 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:104::print_char:114 [ print_line_cursor#10 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:104::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_word::w#6 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:104::print_char:114 [ print_word::w#6 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:81::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:85::print_word:100::print_byte:106::print_char:114 [ mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sword:89::print_word:100::print_byte:106::print_char:114 [ print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:254::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:258::print_byte:106::print_char:114 [ print_line_cursor#10 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_word:262::print_byte:106::print_char:114 [ print_line_cursor#10 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:286::print_byte:106::print_char:114 [ mulf_tables_cmp::kc_sqr#2 print_char_cursor#84 ] main:2::mulf_tables_cmp:11::print_word:290::print_byte:106::print_char:114 [ print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_byte:126::print_char:114 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_byte:126::print_char:114 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:246::print_char:114 [ print_line_cursor#10 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8u_compare:13::mul8u_error:232::print_byte:250::print_char:114 [ print_line_cursor#10 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:123 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:123 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73::print_char:129 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77::print_char:129 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_sbyte::b#3 print_char_cursor#84 ] ) always clobbers reg byte y +Statement [130] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 [ print_char_cursor#18 print_sbyte::b#0 ] ( main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:73 [ mul8s_error::b#0 mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] main:2::mul8s_compare:15::mul8s_error:47::print_sbyte:77 [ mul8s_error::ms#0 mul8s_error::mn#0 mul8s_error::mf#0 print_line_cursor#1 print_char_cursor#18 print_sbyte::b#0 ] ) always clobbers reg byte a +Statement [134] (word) mul8u::return#2 ← (word) mul8u::res#2 [ mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::return#2 ] ) always clobbers reg byte a +Statement [135] (word) mul8s::m#0 ← (word) mul8u::return#2 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 ] ) always clobbers reg byte a +Statement [137] (byte~) mul8s::$9 ← > (word) mul8s::m#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$9 ] ) always clobbers reg byte a +Statement [138] (byte~) mul8s::$16 ← (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 [ mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8s::m#0 mul8s::$16 ] ) always clobbers reg byte a +Statement [142] (byte~) mul8s::$13 ← > (word) mul8s::m#5 [ mul8s::a#0 mul8s::m#5 mul8s::$13 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::m#5 mul8s::$13 ] ) always clobbers reg byte a +Statement [143] (byte~) mul8s::$17 ← (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 [ mul8s::m#5 mul8s::$17 ] ( main:2::mul8s_compare:15::mul8s:32 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::m#5 mul8s::$17 ] ) always clobbers reg byte a +Statement [148] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 [ mul8u::a#6 mul8u::mb#0 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#6 mul8u::mb#0 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#6 mul8u::mb#0 ] ) always clobbers reg byte a +Statement [152] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::res#2 mul8u::a#3 mul8u::mb#2 mul8u::$1 ] ) always clobbers reg byte a +Statement [154] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 [ mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ( main:2::mul8s_compare:15::mul8s:32::mul8u:133 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 mul8s_compare::mf#0 print_line_cursor#1 mul8s::a#0 mul8s::b#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] main:2::mul8u_compare:13::mul8u:217 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::a#3 mul8u::mb#2 mul8u::res#1 ] ) always clobbers reg byte a +Statement [163] (signed word) mulf8s_prepared::return#2 ← (signed word)(word) mulf8s_prepared::m#4 [ mulf8s_prepared::return#2 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::return#2 ] ) always clobbers reg byte a +Statement [164] (signed word) mulf8s::return#0 ← (signed word) mulf8s_prepared::return#2 [ mulf8s::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s::return#0 ] ) always clobbers reg byte a +Statement [168] (word) mulf8u_prepared::return#3 ← (word) mulf8u_prepared::return#0 [ mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#3 ] ) always clobbers reg byte a +Statement [169] (word) mulf8s_prepared::m#0 ← (word) mulf8u_prepared::return#3 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ) always clobbers reg byte a Statement [170] if(*((const signed byte*) mulf8s_prepared::memA#0)>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s_prepared::@1 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 ] ) always clobbers reg byte a -Statement [171] (byte~) mulf8s_prepared::$8 ? > (word) mulf8s_prepared::m#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ) always clobbers reg byte a -Statement [172] (byte~) mulf8s_prepared::$15 ? (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ) always clobbers reg byte a -Statement [176] (byte~) mulf8s_prepared::$12 ? > (word) mulf8s_prepared::m#5 [ mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ) always clobbers reg byte a -Statement [177] (byte~) mulf8s_prepared::$16 ? (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) [ mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ) always clobbers reg byte a +Statement [171] (byte~) mulf8s_prepared::$8 ← > (word) mulf8s_prepared::m#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$8 ] ) always clobbers reg byte a +Statement [172] (byte~) mulf8s_prepared::$15 ← (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 [ mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8s_prepared::m#0 mulf8s_prepared::$15 ] ) always clobbers reg byte a +Statement [176] (byte~) mulf8s_prepared::$12 ← > (word) mulf8s_prepared::m#5 [ mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$12 ] ) always clobbers reg byte a +Statement [177] (byte~) mulf8s_prepared::$16 ← (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) [ mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::m#5 mulf8s_prepared::$16 ] ) always clobbers reg byte a Statement asm { ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x staresL sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } always clobbers reg byte a reg byte x -Statement [184] (word) mulf8u_prepared::return#0 ? *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) [ mulf8u_prepared::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162::mulf8u_prepared:167 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#0 ] main:2::mul8u_compare:13::mulf8u:212::mulf8u_prepared:269 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#0 ] ) always clobbers reg byte a +Statement [184] (word) mulf8u_prepared::return#0 ← *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) [ mulf8u_prepared::return#0 ] ( main:2::mul8s_compare:15::mulf8s:27::mulf8s_prepared:162::mulf8u_prepared:167 [ mul8s_compare::a#7 mul8s_compare::b#10 mul8s_compare::ms#0 print_line_cursor#1 mulf8s_prepared::b#0 mulf8u_prepared::return#0 ] main:2::mul8u_compare:13::mulf8u:212::mulf8u_prepared:269 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#0 ] ) always clobbers reg byte a Statement asm { ldamemA stamulf8u_prepared.sm1+1 stamulf8u_prepared.sm3+1 eor#$ff stamulf8u_prepared.sm2+1 stamulf8u_prepared.sm4+1 } always clobbers reg byte a -Statement [193] (signed word) muls8s::m#1 ? (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ) always clobbers reg byte a -Statement [199] (signed word) muls8s::m#2 ? (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ) always clobbers reg byte a -Statement [208] (word) muls8u::return#2 ? (word) muls8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ) always clobbers reg byte a -Statement [209] (word) mul8u_compare::ms#0 ? (word) muls8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ) always clobbers reg byte a -Statement [213] (word) mulf8u::return#2 ? (word) mulf8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ) always clobbers reg byte a -Statement [214] (word) mul8u_compare::mf#0 ? (word) mulf8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ) always clobbers reg byte a -Statement [218] (word) mul8u::return#3 ? (word) mul8u::res#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ) always clobbers reg byte a -Statement [219] (word) mul8u_compare::mn#0 ? (word) mul8u::return#3 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a +Statement [193] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::j#2 muls8s::m#1 ] ) always clobbers reg byte a +Statement [199] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 [ muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ( main:2::mul8s_compare:15::muls8s:22 [ mul8s_compare::a#7 mul8s_compare::b#10 print_line_cursor#1 muls8s::a#0 muls8s::b#0 muls8s::m#2 muls8s::i#2 ] ) always clobbers reg byte a +Statement [208] (word) muls8u::return#2 ← (word) muls8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::return#2 ] ) always clobbers reg byte a +Statement [209] (word) mul8u_compare::ms#0 ← (word) muls8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 ] ) always clobbers reg byte a +Statement [213] (word) mulf8u::return#2 ← (word) mulf8u::return#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#2 ] ) always clobbers reg byte a +Statement [214] (word) mul8u_compare::mf#0 ← (word) mulf8u::return#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 ] ) always clobbers reg byte a +Statement [218] (word) mul8u::return#3 ← (word) mul8u::res#2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u::return#3 ] ) always clobbers reg byte a +Statement [219] (word) mul8u_compare::mn#0 ← (word) mul8u::return#3 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a Statement [220] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mf#0) goto mul8u_compare::@3 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a Statement [223] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mn#0) goto mul8u_compare::@14 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_compare::ok#4 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_compare::ok#4 ] ) always clobbers reg byte a -Statement [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a -Statement [229] (word) mul8u_error::ms#0 ? (word) mul8u_compare::ms#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ) always clobbers reg byte a -Statement [230] (word) mul8u_error::mn#0 ? (word) mul8u_compare::mn#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ) always clobbers reg byte a -Statement [231] (word) mul8u_error::mf#0 ? (word) mul8u_compare::mf#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a -Statement [253] (word) print_word::w#3 ? (word) mul8u_error::ms#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a -Statement [257] (word) print_word::w#4 ? (word) mul8u_error::mn#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ) always clobbers reg byte a -Statement [261] (word) print_word::w#5 ? (word) mul8u_error::mf#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ) always clobbers reg byte a -Statement [270] (word) mulf8u_prepared::return#2 ? (word) mulf8u_prepared::return#0 [ mulf8u_prepared::return#2 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#2 ] ) always clobbers reg byte a -Statement [271] (word) mulf8u::return#0 ? (word) mulf8u_prepared::return#2 [ mulf8u::return#0 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a -Statement [275] (word) muls8u::m#1 ? (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_compare:13::muls8u:207 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a +Statement [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mul8u_compare::mf#0 mul8u_compare::mn#0 ] ) always clobbers reg byte a +Statement [229] (word) mul8u_error::ms#0 ← (word) mul8u_compare::ms#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_compare::mn#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 ] ) always clobbers reg byte a +Statement [230] (word) mul8u_error::mn#0 ← (word) mul8u_compare::mn#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::mf#0 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 ] ) always clobbers reg byte a +Statement [231] (word) mul8u_error::mf#0 ← (word) mul8u_compare::mf#0 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13 [ print_line_cursor#10 print_char_cursor#31 mul8u_error::a#0 mul8u_error::b#0 mul8u_error::ms#0 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a +Statement [253] (word) print_word::w#3 ← (word) mul8u_error::ms#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#3 mul8u_error::mn#0 mul8u_error::mf#0 ] ) always clobbers reg byte a +Statement [257] (word) print_word::w#4 ← (word) mul8u_error::mn#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#4 mul8u_error::mf#0 ] ) always clobbers reg byte a +Statement [261] (word) print_word::w#5 ← (word) mul8u_error::mf#0 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ( main:2::mul8u_compare:13::mul8u_error:232 [ print_char_cursor#132 print_line_cursor#10 print_word::w#5 ] ) always clobbers reg byte a +Statement [270] (word) mulf8u_prepared::return#2 ← (word) mulf8u_prepared::return#0 [ mulf8u_prepared::return#2 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u_prepared::return#2 ] ) always clobbers reg byte a +Statement [271] (word) mulf8u::return#0 ← (word) mulf8u_prepared::return#2 [ mulf8u::return#0 ] ( main:2::mul8u_compare:13::mulf8u:212 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 mul8u_compare::ms#0 mulf8u::return#0 ] ) always clobbers reg byte a +Statement [275] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 [ muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ( main:2::mul8u_compare:13::muls8u:207 [ print_line_cursor#10 print_char_cursor#31 mul8u_compare::a#7 mul8u_compare::b#10 muls8u::a#0 muls8u::b#0 muls8u::i#2 muls8u::m#1 ] ) always clobbers reg byte a Statement [282] if(*((byte*) mulf_tables_cmp::kc_sqr#2)==*((byte*) mulf_tables_cmp::asm_sqr#2)) goto mulf_tables_cmp::@2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a reg byte y -Statement [283] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a -Statement [285] (word~) print_word::w#11 ? (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ) always clobbers reg byte a -Statement [289] (word~) print_word::w#12 ? (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ print_char_cursor#132 print_word::w#12 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#12 ] ) always clobbers reg byte a +Statement [283] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#2 mulf_tables_cmp::asm_sqr#2 ] ) always clobbers reg byte a +Statement [285] (word~) print_word::w#11 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#11 mulf_tables_cmp::kc_sqr#2 ] ) always clobbers reg byte a +Statement [289] (word~) print_word::w#12 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 [ print_char_cursor#132 print_word::w#12 ] ( main:2::mulf_tables_cmp:11 [ print_char_cursor#132 print_word::w#12 ] ) always clobbers reg byte a Statement [295] if((byte*) mulf_tables_cmp::kc_sqr#1<(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200*(byte/signed byte/word/signed word/dword/signed dword) 4) goto mulf_tables_cmp::@1 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ( main:2::mulf_tables_cmp:11 [ mulf_tables_cmp::kc_sqr#1 mulf_tables_cmp::asm_sqr#1 ] ) always clobbers reg byte a -Statement [300] (byte*~) print_char_cursor#225 ? (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#225 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#1 print_char_cursor#225 ] ) always clobbers reg byte a +Statement [300] (byte*~) print_char_cursor#225 ← (byte*) print_line_cursor#1 [ print_line_cursor#1 print_char_cursor#225 ] ( main:2::mulf_tables_cmp:11 [ print_line_cursor#1 print_char_cursor#225 ] ) always clobbers reg byte a Statement asm { ldx#$00 txa .byte$c9 lb1: tya adc#$00 ml1: stamula_sqr1_hi,x tay cmp#$40 txa ror ml9: adc#$00 staml9+1 inx ml0: stamula_sqr1_lo,x bnelb1 incml0+2 incml1+2 clc iny bnelb1 ldx#$00 ldy#$ff !: ldamula_sqr1_hi+1,x stamula_sqr2_hi+$100,x ldamula_sqr1_hi,x stamula_sqr2_hi,y ldamula_sqr1_lo+1,x stamula_sqr2_lo+$100,x ldamula_sqr1_lo,x stamula_sqr2_lo,y dey inx bne!- } always clobbers reg byte a reg byte x reg byte y -Statement [302] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [303] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [304] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [305] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a -Statement [310] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ) always clobbers reg byte a -Statement [315] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a -Statement [316] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [317] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a -Statement [318] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y -Statement [320] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a +Statement [302] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [303] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [304] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_lo#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [305] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_hi#0) [ ] ( main:2::mulf_init_asm:9 [ ] ) always clobbers reg byte a +Statement [310] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ( main:2::mulf_init:7 [ mulf_init::sqr#4 mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::x_2#3 mulf_init::c#1 mulf_init::$8 ] ) always clobbers reg byte a +Statement [315] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$11 ] ) always clobbers reg byte a +Statement [316] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [317] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 mulf_init::$12 ] ) always clobbers reg byte a +Statement [318] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::sqr1_hi#2 mulf_init::c#1 mulf_init::x_2#2 mulf_init::sqr#3 ] ) always clobbers reg byte y +Statement [320] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::sqr1_lo#2 mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a Statement [322] if((byte*) mulf_init::sqr1_lo#1!=(const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $200) goto mulf_init::@1 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ( main:2::mulf_init:7 [ mulf_init::c#1 mulf_init::sqr#1 mulf_init::sqr1_lo#1 mulf_init::sqr1_hi#1 mulf_init::x_2#2 ] ) always clobbers reg byte a -Statement [324] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [325] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y -Statement [327] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a +Statement [324] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [325] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ( main:2::mulf_init:7 [ mulf_init::x_255#2 mulf_init::sqr2_lo#2 mulf_init::sqr2_hi#2 mulf_init::dir#2 ] ) always clobbers reg byte a reg byte y +Statement [327] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ( main:2::mulf_init:7 [ mulf_init::sqr2_lo#2 mulf_init::dir#2 mulf_init::x_255#1 mulf_init::sqr2_hi#1 ] ) always clobbers reg byte a Statement [331] if((byte*) mulf_init::sqr2_lo#1!=(const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) goto mulf_init::@4 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ( main:2::mulf_init:7 [ mulf_init::x_255#1 mulf_init::sqr2_lo#1 mulf_init::sqr2_hi#1 mulf_init::dir#3 ] ) always clobbers reg byte a -Statement [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a -Statement [338] *((byte*) print_cls::sc#2) ? (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y +Statement [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) [ ] ( main:2::mulf_init:7 [ ] ) always clobbers reg byte a +Statement [338] *((byte*) print_cls::sc#2) ← (byte) ' ' [ print_cls::sc#2 ] ( main:2::print_cls:5 [ print_cls::sc#2 ] ) always clobbers reg byte a reg byte y Statement [340] if((byte*) print_cls::sc#1!=((byte*))(word/signed word/dword/signed dword) $400+(word/signed word/dword/signed dword) $3e8) goto print_cls::@1 [ print_cls::sc#1 ] ( main:2::print_cls:5 [ print_cls::sc#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ mul8s_compare::a#7 mul8s_compare::a#1 ] : zp ZP_BYTE:2 , reg byte y , Potential registers zp ZP_BYTE:3 [ mul8s_compare::b#10 mul8s_compare::b#1 ] : zp ZP_BYTE:3 , reg byte y , @@ -7681,7 +7681,7 @@ bend_from_b1: bend: //SEG9 main main: { - //SEG10 [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL //SEG11 [5] call print_cls @@ -7769,39 +7769,39 @@ mul8s_compare: { jmp b2 //SEG44 mul8s_compare::@2 b2: - //SEG45 [20] (signed byte) muls8s::a#0 ? (signed byte) mul8s_compare::a#7 - //SEG46 [21] (signed byte) muls8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 + //SEG45 [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_compare::a#7 + //SEG46 [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 ldx b //SEG47 [22] call muls8s jsr muls8s - //SEG48 [23] (signed word) muls8s::return#2 ? (signed word) muls8s::return#0 + //SEG48 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 jmp b10 //SEG49 mul8s_compare::@10 b10: - //SEG50 [24] (signed word) mul8s_compare::ms#0 ? (signed word) muls8s::return#2 - //SEG51 [25] (signed byte) mulf8s::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsaa=vbsz1 + //SEG50 [24] (signed word) mul8s_compare::ms#0 ← (signed word) muls8s::return#2 + //SEG51 [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsaa=vbsz1 lda a - //SEG52 [26] (signed byte) mulf8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 + //SEG52 [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 ldx b //SEG53 [27] call mulf8s //SEG54 [158] phi from mul8s_compare::@10 to mulf8s [phi:mul8s_compare::@10->mulf8s] mulf8s_from_b10: jsr mulf8s - //SEG55 [28] (signed word) mulf8s::return#2 ? (signed word) mulf8s::return#0 + //SEG55 [28] (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#0 jmp b11 //SEG56 mul8s_compare::@11 b11: - //SEG57 [29] (signed word) mul8s_compare::mf#0 ? (signed word) mulf8s::return#2 - //SEG58 [30] (signed byte) mul8s::a#0 ? (signed byte) mul8s_compare::a#7 - //SEG59 [31] (signed byte) mul8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsyy=vbsz1 + //SEG57 [29] (signed word) mul8s_compare::mf#0 ← (signed word) mulf8s::return#2 + //SEG58 [30] (signed byte) mul8s::a#0 ← (signed byte) mul8s_compare::a#7 + //SEG59 [31] (signed byte) mul8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsyy=vbsz1 ldy b //SEG60 [32] call mul8s jsr mul8s - //SEG61 [33] (signed word) mul8s::return#2 ? (signed word)(word) mul8s::m#4 + //SEG61 [33] (signed word) mul8s::return#2 ← (signed word)(word) mul8s::m#4 jmp b12 //SEG62 mul8s_compare::@12 b12: - //SEG63 [34] (signed word) mul8s_compare::mn#0 ? (signed word) mul8s::return#2 + //SEG63 [34] (signed word) mul8s_compare::mn#0 ← (signed word) mul8s::return#2 //SEG64 [35] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mf#0) goto mul8s_compare::@3 -- vwsz1_eq_vwsz2_then_la1 lda ms cmp mf @@ -7848,15 +7848,15 @@ mul8s_compare: { jmp b7 //SEG77 mul8s_compare::@7 b7: - //SEG78 [41] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG78 [41] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG79 [42] (signed byte) mul8s_error::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsxx=vbsz1 + //SEG79 [42] (signed byte) mul8s_error::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsxx=vbsz1 ldx a - //SEG80 [43] (signed byte) mul8s_error::b#0 ? (signed byte) mul8s_compare::b#10 - //SEG81 [44] (signed word) mul8s_error::ms#0 ? (signed word) mul8s_compare::ms#0 - //SEG82 [45] (signed word) mul8s_error::mn#0 ? (signed word) mul8s_compare::mn#0 - //SEG83 [46] (signed word) mul8s_error::mf#0 ? (signed word) mul8s_compare::mf#0 + //SEG80 [43] (signed byte) mul8s_error::b#0 ← (signed byte) mul8s_compare::b#10 + //SEG81 [44] (signed word) mul8s_error::ms#0 ← (signed word) mul8s_compare::ms#0 + //SEG82 [45] (signed word) mul8s_error::mn#0 ← (signed word) mul8s_compare::mn#0 + //SEG83 [46] (signed word) mul8s_error::mf#0 ← (signed word) mul8s_compare::mf#0 //SEG84 [47] call mul8s_error jsr mul8s_error jmp breturn @@ -7866,7 +7866,7 @@ mul8s_compare: { rts //SEG87 mul8s_compare::@5 b5: - //SEG88 [49] (signed byte) mul8s_compare::b#1 ? ++ (signed byte) mul8s_compare::b#10 -- vbsz1=_inc_vbsz1 + //SEG88 [49] (signed byte) mul8s_compare::b#1 ← ++ (signed byte) mul8s_compare::b#10 -- vbsz1=_inc_vbsz1 inc b //SEG89 [50] if((signed byte) mul8s_compare::b#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@2 -- vbsz1_neq_vbsc1_then_la1 lda #-$80 @@ -7875,7 +7875,7 @@ mul8s_compare: { jmp b8 //SEG90 mul8s_compare::@8 b8: - //SEG91 [51] (signed byte) mul8s_compare::a#1 ? ++ (signed byte) mul8s_compare::a#7 -- vbsz1=_inc_vbsz1 + //SEG91 [51] (signed byte) mul8s_compare::a#1 ← ++ (signed byte) mul8s_compare::a#7 -- vbsz1=_inc_vbsz1 inc a //SEG92 [52] if((signed byte) mul8s_compare::a#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@1 -- vbsz1_neq_vbsc1_then_la1 lda #-$80 @@ -7884,7 +7884,7 @@ mul8s_compare: { jmp b9 //SEG93 mul8s_compare::@9 b9: - //SEG94 [53] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG94 [53] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -7932,7 +7932,7 @@ print_ln: { jmp b1 //SEG112 print_ln::@1 b1: - //SEG113 [60] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG113 [60] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -7980,17 +7980,17 @@ print_str: { rts //SEG125 print_str::@2 b2: - //SEG126 [67] *((byte*) print_char_cursor#132) ? *((byte*) print_str::str#16) -- _deref_pbuz1=_deref_pbuz2 + //SEG126 [67] *((byte*) print_char_cursor#132) ← *((byte*) print_str::str#16) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y ldy #0 sta (print_char_cursor),y - //SEG127 [68] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#132 -- pbuz1=_inc_pbuz1 + //SEG127 [68] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#132 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG128 [69] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#16 -- pbuz1=_inc_pbuz1 + //SEG128 [69] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#16 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -8004,7 +8004,7 @@ mul8s_error: { .label ms = 8 .label mn = $c .label mf = $e - //SEG130 [70] (byte*~) print_char_cursor#193 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG130 [70] (byte*~) print_char_cursor#193 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -8022,7 +8022,7 @@ mul8s_error: { jmp b1 //SEG135 mul8s_error::@1 b1: - //SEG136 [72] (signed byte) print_sbyte::b#1 ? (signed byte) mul8s_error::a#0 + //SEG136 [72] (signed byte) print_sbyte::b#1 ← (signed byte) mul8s_error::a#0 //SEG137 [73] call print_sbyte //SEG138 [120] phi from mul8s_error::@1 to print_sbyte [phi:mul8s_error::@1->print_sbyte] print_sbyte_from_b1: @@ -8046,7 +8046,7 @@ mul8s_error: { jmp b3 //SEG146 mul8s_error::@3 b3: - //SEG147 [76] (signed byte) print_sbyte::b#2 ? (signed byte) mul8s_error::b#0 -- vbsxx=vbsz1 + //SEG147 [76] (signed byte) print_sbyte::b#2 ← (signed byte) mul8s_error::b#0 -- vbsxx=vbsz1 ldx b //SEG148 [77] call print_sbyte //SEG149 [120] phi from mul8s_error::@3 to print_sbyte [phi:mul8s_error::@3->print_sbyte] @@ -8071,7 +8071,7 @@ mul8s_error: { jmp b5 //SEG157 mul8s_error::@5 b5: - //SEG158 [80] (signed word) print_sword::w#1 ? (signed word) mul8s_error::ms#0 + //SEG158 [80] (signed word) print_sword::w#1 ← (signed word) mul8s_error::ms#0 //SEG159 [81] call print_sword //SEG160 [93] phi from mul8s_error::@5 to print_sword [phi:mul8s_error::@5->print_sword] print_sword_from_b5: @@ -8095,7 +8095,7 @@ mul8s_error: { jmp b7 //SEG168 mul8s_error::@7 b7: - //SEG169 [84] (signed word) print_sword::w#2 ? (signed word) mul8s_error::mn#0 -- vwsz1=vwsz2 + //SEG169 [84] (signed word) print_sword::w#2 ← (signed word) mul8s_error::mn#0 -- vwsz1=vwsz2 lda mn sta print_sword.w lda mn+1 @@ -8123,7 +8123,7 @@ mul8s_error: { jmp b9 //SEG179 mul8s_error::@9 b9: - //SEG180 [88] (signed word) print_sword::w#3 ? (signed word) mul8s_error::mf#0 -- vwsz1=vwsz2 + //SEG180 [88] (signed word) print_sword::w#3 ← (signed word) mul8s_error::mf#0 -- vwsz1=vwsz2 lda mf sta print_sword.w lda mf+1 @@ -8174,7 +8174,7 @@ print_sword: { jmp b3 //SEG200 print_sword::@3 b3: - //SEG201 [97] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#4 -- vwsz1=_neg_vwsz1 + //SEG201 [97] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#4 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -8192,7 +8192,7 @@ print_sword: { jmp b1 //SEG205 print_sword::@1 b1: - //SEG206 [99] (word~) print_word::w#13 ? (word)(signed word) print_sword::w#5 + //SEG206 [99] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#5 //SEG207 [100] call print_word //SEG208 [102] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] print_word_from_b1: @@ -8210,7 +8210,7 @@ print_sword: { // print_word(word zeropage(8) w) print_word: { .label w = 8 - //SEG214 [103] (byte) print_byte::b#1 ? > (word) print_word::w#6 -- vbuxx=_hi_vwuz1 + //SEG214 [103] (byte) print_byte::b#1 ← > (word) print_word::w#6 -- vbuxx=_hi_vwuz1 lda w+1 tax //SEG215 [104] call print_byte @@ -8222,7 +8222,7 @@ print_word: { jmp b1 //SEG219 print_word::@1 b1: - //SEG220 [105] (byte) print_byte::b#2 ? < (word) print_word::w#6 -- vbuxx=_lo_vwuz1 + //SEG220 [105] (byte) print_byte::b#2 ← < (word) print_word::w#6 -- vbuxx=_lo_vwuz1 lda w tax //SEG221 [106] call print_byte @@ -8241,13 +8241,13 @@ print_word: { // Print a byte as HEX // print_byte(byte register(X) b) print_byte: { - //SEG228 [109] (byte~) print_byte::$0 ? (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG228 [109] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG229 [110] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG229 [110] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG230 [111] call print_char @@ -8259,10 +8259,10 @@ print_byte: { jmp b1 //SEG234 print_byte::@1 b1: - //SEG235 [112] (byte~) print_byte::$2 ? (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 + //SEG235 [112] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 - //SEG236 [113] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG236 [113] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x //SEG237 [114] call print_char //SEG238 [116] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] @@ -8280,10 +8280,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG244 [117] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa + //SEG244 [117] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG245 [118] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 + //SEG245 [118] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -8320,7 +8320,7 @@ print_sbyte: { jmp b2 //SEG258 print_sbyte::@2 b2: - //SEG259 [125] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#5 + //SEG259 [125] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#5 //SEG260 [126] call print_byte //SEG261 [108] phi from print_sbyte::@2 to print_byte [phi:print_sbyte::@2->print_byte] print_byte_from_b2: @@ -8347,7 +8347,7 @@ print_sbyte: { jmp b4 //SEG272 print_sbyte::@4 b4: - //SEG273 [130] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#3 -- vbsxx=_neg_vbsxx + //SEG273 [130] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 -- vbsxx=_neg_vbsxx txa eor #$ff clc @@ -8363,9 +8363,9 @@ mul8s: { .label m = $c .label a = 2 .label return = $c - //SEG275 [131] (byte~) mul8u::b#3 ? (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuyy + //SEG275 [131] (byte~) mul8u::b#3 ← (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuyy tya - //SEG276 [132] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8s::a#0 -- vbuxx=vbuz1 + //SEG276 [132] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8s::a#0 -- vbuxx=vbuz1 ldx a //SEG277 [133] call mul8u //SEG278 [147] phi from mul8s to mul8u [phi:mul8s->mul8u] @@ -8373,11 +8373,11 @@ mul8s: { //SEG279 [147] phi (byte) mul8u::a#6 = (byte~) mul8u::a#8 [phi:mul8s->mul8u#0] -- register_copy //SEG280 [147] phi (byte) mul8u::b#2 = (byte~) mul8u::b#3 [phi:mul8s->mul8u#1] -- register_copy jsr mul8u - //SEG281 [134] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG281 [134] (word) mul8u::return#2 ← (word) mul8u::res#2 jmp b5 //SEG282 mul8s::@5 b5: - //SEG283 [135] (word) mul8s::m#0 ? (word) mul8u::return#2 + //SEG283 [135] (word) mul8s::m#0 ← (word) mul8u::return#2 //SEG284 [136] if((signed byte) mul8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8s::@1 -- vbsz1_ge_0_then_la1 lda a cmp #0 @@ -8385,13 +8385,13 @@ mul8s: { jmp b3 //SEG285 mul8s::@3 b3: - //SEG286 [137] (byte~) mul8s::$9 ? > (word) mul8s::m#0 -- vbuaa=_hi_vwuz1 + //SEG286 [137] (byte~) mul8s::$9 ← > (word) mul8s::m#0 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG287 [138] (byte~) mul8s::$16 ? (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuaa_minus_vbuyy + //SEG287 [138] (byte~) mul8s::$16 ← (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuaa_minus_vbuyy sty $ff sec sbc $ff - //SEG288 [139] (word) mul8s::m#1 ? (word) mul8s::m#0 hi= (byte~) mul8s::$16 -- vwuz1=vwuz1_sethi_vbuaa + //SEG288 [139] (word) mul8s::m#1 ← (word) mul8s::m#0 hi= (byte~) mul8s::$16 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG289 [140] phi from mul8s::@3 mul8s::@5 to mul8s::@1 [phi:mul8s::@3/mul8s::@5->mul8s::@1] b1_from_b3: @@ -8406,12 +8406,12 @@ mul8s: { jmp b4 //SEG293 mul8s::@4 b4: - //SEG294 [142] (byte~) mul8s::$13 ? > (word) mul8s::m#5 -- vbuaa=_hi_vwuz1 + //SEG294 [142] (byte~) mul8s::$13 ← > (word) mul8s::m#5 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG295 [143] (byte~) mul8s::$17 ? (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 -- vbuaa=vbuaa_minus_vbuz1 + //SEG295 [143] (byte~) mul8s::$17 ← (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 -- vbuaa=vbuaa_minus_vbuz1 sec sbc a - //SEG296 [144] (word) mul8s::m#2 ? (word) mul8s::m#5 hi= (byte~) mul8s::$17 -- vwuz1=vwuz1_sethi_vbuaa + //SEG296 [144] (word) mul8s::m#2 ← (word) mul8s::m#5 hi= (byte~) mul8s::$17 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG297 [145] phi from mul8s::@1 mul8s::@4 to mul8s::@2 [phi:mul8s::@1/mul8s::@4->mul8s::@2] b2_from_b1: @@ -8433,7 +8433,7 @@ mul8u: { .label mb = 6 .label res = $c .label return = $c - //SEG303 [148] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa + //SEG303 [148] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -8459,7 +8459,7 @@ mul8u: { rts //SEG312 mul8u::@2 b2: - //SEG313 [152] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG313 [152] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG314 [153] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 @@ -8468,7 +8468,7 @@ mul8u: { jmp b4 //SEG315 mul8u::@4 b4: - //SEG316 [154] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG316 [154] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -8483,11 +8483,11 @@ mul8u: { jmp b3 //SEG319 mul8u::@3 b3: - //SEG320 [156] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG320 [156] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG321 [157] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG321 [157] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG322 [149] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -8505,7 +8505,7 @@ mulf8s: { jmp mulf8s_prepare1 //SEG327 mulf8s::mulf8s_prepare1 mulf8s_prepare1: - //SEG328 [159] (byte~) mulf8u_prepare::a#3 ? (byte)(signed byte) mulf8s::a#0 + //SEG328 [159] (byte~) mulf8u_prepare::a#3 ← (byte)(signed byte) mulf8s::a#0 //SEG329 [160] call mulf8u_prepare //SEG330 [186] phi from mulf8s::mulf8s_prepare1 to mulf8u_prepare [phi:mulf8s::mulf8s_prepare1->mulf8u_prepare] mulf8u_prepare_from_mulf8s_prepare1: @@ -8514,15 +8514,15 @@ mulf8s: { jmp b1 //SEG332 mulf8s::@1 b1: - //SEG333 [161] (signed byte) mulf8s_prepared::b#0 ? (signed byte) mulf8s::b#0 -- vbsz1=vbsxx + //SEG333 [161] (signed byte) mulf8s_prepared::b#0 ← (signed byte) mulf8s::b#0 -- vbsz1=vbsxx stx mulf8s_prepared.b //SEG334 [162] call mulf8s_prepared jsr mulf8s_prepared - //SEG335 [163] (signed word) mulf8s_prepared::return#2 ? (signed word)(word) mulf8s_prepared::m#4 + //SEG335 [163] (signed word) mulf8s_prepared::return#2 ← (signed word)(word) mulf8s_prepared::m#4 jmp b2 //SEG336 mulf8s::@2 b2: - //SEG337 [164] (signed word) mulf8s::return#0 ? (signed word) mulf8s_prepared::return#2 + //SEG337 [164] (signed word) mulf8s::return#0 ← (signed word) mulf8s_prepared::return#2 jmp breturn //SEG338 mulf8s::@return breturn: @@ -8538,18 +8538,18 @@ mulf8s_prepared: { .label m = $e .label b = 3 .label return = $e - //SEG341 [166] (byte~) mulf8u_prepared::b#3 ? (byte)(signed byte) mulf8s_prepared::b#0 -- vbuxx=vbuz1 + //SEG341 [166] (byte~) mulf8u_prepared::b#3 ← (byte)(signed byte) mulf8s_prepared::b#0 -- vbuxx=vbuz1 ldx b //SEG342 [167] call mulf8u_prepared //SEG343 [181] phi from mulf8s_prepared to mulf8u_prepared [phi:mulf8s_prepared->mulf8u_prepared] mulf8u_prepared_from_mulf8s_prepared: //SEG344 [181] phi (byte) mulf8u_prepared::b#2 = (byte~) mulf8u_prepared::b#3 [phi:mulf8s_prepared->mulf8u_prepared#0] -- register_copy jsr mulf8u_prepared - //SEG345 [168] (word) mulf8u_prepared::return#3 ? (word) mulf8u_prepared::return#0 + //SEG345 [168] (word) mulf8u_prepared::return#3 ← (word) mulf8u_prepared::return#0 jmp b5 //SEG346 mulf8s_prepared::@5 b5: - //SEG347 [169] (word) mulf8s_prepared::m#0 ? (word) mulf8u_prepared::return#3 + //SEG347 [169] (word) mulf8s_prepared::m#0 ← (word) mulf8u_prepared::return#3 //SEG348 [170] if(*((const signed byte*) mulf8s_prepared::memA#0)>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s_prepared::@1 -- _deref_pbsc1_ge_0_then_la1 lda memA cmp #0 @@ -8557,12 +8557,12 @@ mulf8s_prepared: { jmp b3 //SEG349 mulf8s_prepared::@3 b3: - //SEG350 [171] (byte~) mulf8s_prepared::$8 ? > (word) mulf8s_prepared::m#0 -- vbuaa=_hi_vwuz1 + //SEG350 [171] (byte~) mulf8s_prepared::$8 ← > (word) mulf8s_prepared::m#0 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG351 [172] (byte~) mulf8s_prepared::$15 ? (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 -- vbuaa=vbuaa_minus_vbuz1 + //SEG351 [172] (byte~) mulf8s_prepared::$15 ← (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 -- vbuaa=vbuaa_minus_vbuz1 sec sbc b - //SEG352 [173] (word) mulf8s_prepared::m#1 ? (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 -- vwuz1=vwuz1_sethi_vbuaa + //SEG352 [173] (word) mulf8s_prepared::m#1 ← (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG353 [174] phi from mulf8s_prepared::@3 mulf8s_prepared::@5 to mulf8s_prepared::@1 [phi:mulf8s_prepared::@3/mulf8s_prepared::@5->mulf8s_prepared::@1] b1_from_b3: @@ -8578,12 +8578,12 @@ mulf8s_prepared: { jmp b4 //SEG357 mulf8s_prepared::@4 b4: - //SEG358 [176] (byte~) mulf8s_prepared::$12 ? > (word) mulf8s_prepared::m#5 -- vbuaa=_hi_vwuz1 + //SEG358 [176] (byte~) mulf8s_prepared::$12 ← > (word) mulf8s_prepared::m#5 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG359 [177] (byte~) mulf8s_prepared::$16 ? (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) -- vbuaa=vbuaa_minus__deref_pbuc1 + //SEG359 [177] (byte~) mulf8s_prepared::$16 ← (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) -- vbuaa=vbuaa_minus__deref_pbuc1 sec sbc memA - //SEG360 [178] (word) mulf8s_prepared::m#2 ? (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 -- vwuz1=vwuz1_sethi_vbuaa + //SEG360 [178] (word) mulf8s_prepared::m#2 ← (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG361 [179] phi from mulf8s_prepared::@1 mulf8s_prepared::@4 to mulf8s_prepared::@2 [phi:mulf8s_prepared::@1/mulf8s_prepared::@4->mulf8s_prepared::@2] b2_from_b1: @@ -8606,7 +8606,7 @@ mulf8u_prepared: { .label resL = $fe .label memB = $ff .label return = $e - //SEG367 [182] *((const byte*) mulf8u_prepared::memB#0) ? (byte) mulf8u_prepared::b#2 -- _deref_pbuc1=vbuxx + //SEG367 [182] *((const byte*) mulf8u_prepared::memB#0) ← (byte) mulf8u_prepared::b#2 -- _deref_pbuc1=vbuxx stx memB //SEG368 asm { ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x staresL sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } ldx memB @@ -8621,7 +8621,7 @@ mulf8u_prepared: { sm4: sbc mulf_sqr2_hi,x sta memB - //SEG369 [184] (word) mulf8u_prepared::return#0 ? *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG369 [184] (word) mulf8u_prepared::return#0 ← *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda resL sta return lda memB @@ -8637,7 +8637,7 @@ mulf8u_prepared: { // mulf8u_prepare(byte register(A) a) mulf8u_prepare: { .label memA = $fd - //SEG373 [187] *((const byte*) mulf8u_prepare::memA#0) ? (byte) mulf8u_prepare::a#2 -- _deref_pbuc1=vbuaa + //SEG373 [187] *((const byte*) mulf8u_prepare::memA#0) ← (byte) mulf8u_prepare::a#2 -- _deref_pbuc1=vbuaa sta memA //SEG374 asm { ldamemA stamulf8u_prepared.sm1+1 stamulf8u_prepared.sm3+1 eor#$ff stamulf8u_prepared.sm2+1 stamulf8u_prepared.sm4+1 } lda memA @@ -8688,7 +8688,7 @@ muls8s: { jmp b3 //SEG387 muls8s::@3 b3: - //SEG388 [193] (signed word) muls8s::m#1 ? (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 -- vwsz1=vwsz1_plus_vbsxx + //SEG388 [193] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 -- vwsz1=vwsz1_plus_vbsxx txa sta $fe ora #$7f @@ -8703,7 +8703,7 @@ muls8s: { lda m+1 adc $ff sta m+1 - //SEG389 [194] (signed byte) muls8s::j#1 ? ++ (signed byte) muls8s::j#2 -- vbsyy=_inc_vbsyy + //SEG389 [194] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 -- vbsyy=_inc_vbsyy iny //SEG390 [195] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@3 -- vbsyy_neq_vbsz1_then_la1 cpy a @@ -8746,7 +8746,7 @@ muls8s: { jmp b4 //SEG404 muls8s::@4 b4: - //SEG405 [199] (signed word) muls8s::m#2 ? (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 -- vwsz1=vwsz1_minus_vbsxx + //SEG405 [199] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 -- vwsz1=vwsz1_minus_vbsxx txa sta $fe ora #$7f @@ -8761,7 +8761,7 @@ muls8s: { lda m+1 sbc $ff sta m+1 - //SEG406 [200] (signed byte) muls8s::i#1 ? -- (signed byte) muls8s::i#2 -- vbsyy=_dec_vbsyy + //SEG406 [200] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 -- vbsyy=_dec_vbsyy dey //SEG407 [201] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@4 -- vbsyy_neq_vbsz1_then_la1 cpy a @@ -8800,30 +8800,30 @@ mul8u_compare: { jmp b2 //SEG418 mul8u_compare::@2 b2: - //SEG419 [205] (byte) muls8u::a#0 ? (byte) mul8u_compare::a#7 - //SEG420 [206] (byte) muls8u::b#0 ? (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 + //SEG419 [205] (byte) muls8u::a#0 ← (byte) mul8u_compare::a#7 + //SEG420 [206] (byte) muls8u::b#0 ← (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 ldx b //SEG421 [207] call muls8u jsr muls8u - //SEG422 [208] (word) muls8u::return#2 ? (word) muls8u::return#0 + //SEG422 [208] (word) muls8u::return#2 ← (word) muls8u::return#0 jmp b10 //SEG423 mul8u_compare::@10 b10: - //SEG424 [209] (word) mul8u_compare::ms#0 ? (word) muls8u::return#2 - //SEG425 [210] (byte) mulf8u::a#0 ? (byte) mul8u_compare::a#7 -- vbuaa=vbuz1 + //SEG424 [209] (word) mul8u_compare::ms#0 ← (word) muls8u::return#2 + //SEG425 [210] (byte) mulf8u::a#0 ← (byte) mul8u_compare::a#7 -- vbuaa=vbuz1 lda a - //SEG426 [211] (byte) mulf8u::b#0 ? (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 + //SEG426 [211] (byte) mulf8u::b#0 ← (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 ldx b //SEG427 [212] call mulf8u jsr mulf8u - //SEG428 [213] (word) mulf8u::return#2 ? (word) mulf8u::return#0 + //SEG428 [213] (word) mulf8u::return#2 ← (word) mulf8u::return#0 jmp b11 //SEG429 mul8u_compare::@11 b11: - //SEG430 [214] (word) mul8u_compare::mf#0 ? (word) mulf8u::return#2 - //SEG431 [215] (byte) mul8u::a#2 ? (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 + //SEG430 [214] (word) mul8u_compare::mf#0 ← (word) mulf8u::return#2 + //SEG431 [215] (byte) mul8u::a#2 ← (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 ldx a - //SEG432 [216] (byte) mul8u::b#1 ? (byte) mul8u_compare::b#10 -- vbuaa=vbuz1 + //SEG432 [216] (byte) mul8u::b#1 ← (byte) mul8u_compare::b#10 -- vbuaa=vbuz1 lda b //SEG433 [217] call mul8u //SEG434 [147] phi from mul8u_compare::@11 to mul8u [phi:mul8u_compare::@11->mul8u] @@ -8831,11 +8831,11 @@ mul8u_compare: { //SEG435 [147] phi (byte) mul8u::a#6 = (byte) mul8u::a#2 [phi:mul8u_compare::@11->mul8u#0] -- register_copy //SEG436 [147] phi (byte) mul8u::b#2 = (byte) mul8u::b#1 [phi:mul8u_compare::@11->mul8u#1] -- register_copy jsr mul8u - //SEG437 [218] (word) mul8u::return#3 ? (word) mul8u::res#2 + //SEG437 [218] (word) mul8u::return#3 ← (word) mul8u::res#2 jmp b12 //SEG438 mul8u_compare::@12 b12: - //SEG439 [219] (word) mul8u_compare::mn#0 ? (word) mul8u::return#3 + //SEG439 [219] (word) mul8u_compare::mn#0 ← (word) mul8u::return#3 //SEG440 [220] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mf#0) goto mul8u_compare::@3 -- vwuz1_eq_vwuz2_then_la1 lda ms cmp mf @@ -8882,15 +8882,15 @@ mul8u_compare: { jmp b7 //SEG453 mul8u_compare::@7 b7: - //SEG454 [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG454 [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG455 [227] (byte) mul8u_error::a#0 ? (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 + //SEG455 [227] (byte) mul8u_error::a#0 ← (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 ldx a - //SEG456 [228] (byte) mul8u_error::b#0 ? (byte) mul8u_compare::b#10 - //SEG457 [229] (word) mul8u_error::ms#0 ? (word) mul8u_compare::ms#0 - //SEG458 [230] (word) mul8u_error::mn#0 ? (word) mul8u_compare::mn#0 - //SEG459 [231] (word) mul8u_error::mf#0 ? (word) mul8u_compare::mf#0 + //SEG456 [228] (byte) mul8u_error::b#0 ← (byte) mul8u_compare::b#10 + //SEG457 [229] (word) mul8u_error::ms#0 ← (word) mul8u_compare::ms#0 + //SEG458 [230] (word) mul8u_error::mn#0 ← (word) mul8u_compare::mn#0 + //SEG459 [231] (word) mul8u_error::mf#0 ← (word) mul8u_compare::mf#0 //SEG460 [232] call mul8u_error //SEG461 [243] phi from mul8u_compare::@7 to mul8u_error [phi:mul8u_compare::@7->mul8u_error] mul8u_error_from_b7: @@ -8902,7 +8902,7 @@ mul8u_compare: { rts //SEG464 mul8u_compare::@5 b5: - //SEG465 [234] (byte) mul8u_compare::b#1 ? ++ (byte) mul8u_compare::b#10 -- vbuz1=_inc_vbuz1 + //SEG465 [234] (byte) mul8u_compare::b#1 ← ++ (byte) mul8u_compare::b#10 -- vbuz1=_inc_vbuz1 inc b //SEG466 [235] if((byte) mul8u_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@2 -- vbuz1_neq_0_then_la1 lda b @@ -8911,7 +8911,7 @@ mul8u_compare: { jmp b8 //SEG467 mul8u_compare::@8 b8: - //SEG468 [236] (byte) mul8u_compare::a#1 ? ++ (byte) mul8u_compare::a#7 -- vbuz1=_inc_vbuz1 + //SEG468 [236] (byte) mul8u_compare::a#1 ← ++ (byte) mul8u_compare::a#7 -- vbuz1=_inc_vbuz1 inc a //SEG469 [237] if((byte) mul8u_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@1 -- vbuz1_neq_0_then_la1 lda a @@ -8975,7 +8975,7 @@ mul8u_error: { jmp b1 //SEG491 mul8u_error::@1 b1: - //SEG492 [245] (byte) print_byte::b#3 ? (byte) mul8u_error::a#0 + //SEG492 [245] (byte) print_byte::b#3 ← (byte) mul8u_error::a#0 //SEG493 [246] call print_byte //SEG494 [108] phi from mul8u_error::@1 to print_byte [phi:mul8u_error::@1->print_byte] print_byte_from_b1: @@ -9000,7 +9000,7 @@ mul8u_error: { jmp b3 //SEG503 mul8u_error::@3 b3: - //SEG504 [249] (byte) print_byte::b#4 ? (byte) mul8u_error::b#0 -- vbuxx=vbuz1 + //SEG504 [249] (byte) print_byte::b#4 ← (byte) mul8u_error::b#0 -- vbuxx=vbuz1 ldx b //SEG505 [250] call print_byte //SEG506 [108] phi from mul8u_error::@3 to print_byte [phi:mul8u_error::@3->print_byte] @@ -9026,7 +9026,7 @@ mul8u_error: { jmp b5 //SEG515 mul8u_error::@5 b5: - //SEG516 [253] (word) print_word::w#3 ? (word) mul8u_error::ms#0 + //SEG516 [253] (word) print_word::w#3 ← (word) mul8u_error::ms#0 //SEG517 [254] call print_word //SEG518 [102] phi from mul8u_error::@5 to print_word [phi:mul8u_error::@5->print_word] print_word_from_b5: @@ -9051,7 +9051,7 @@ mul8u_error: { jmp b7 //SEG527 mul8u_error::@7 b7: - //SEG528 [257] (word) print_word::w#4 ? (word) mul8u_error::mn#0 -- vwuz1=vwuz2 + //SEG528 [257] (word) print_word::w#4 ← (word) mul8u_error::mn#0 -- vwuz1=vwuz2 lda mn sta print_word.w lda mn+1 @@ -9080,7 +9080,7 @@ mul8u_error: { jmp b9 //SEG539 mul8u_error::@9 b9: - //SEG540 [261] (word) print_word::w#5 ? (word) mul8u_error::mf#0 -- vwuz1=vwuz2 + //SEG540 [261] (word) print_word::w#5 ← (word) mul8u_error::mf#0 -- vwuz1=vwuz2 lda mf sta print_word.w lda mf+1 @@ -9114,7 +9114,7 @@ mul8u_error: { // mulf8u(byte register(A) a, byte register(X) b) mulf8u: { .label return = $e - //SEG554 [266] (byte) mulf8u_prepare::a#0 ? (byte) mulf8u::a#0 + //SEG554 [266] (byte) mulf8u_prepare::a#0 ← (byte) mulf8u::a#0 //SEG555 [267] call mulf8u_prepare //SEG556 [186] phi from mulf8u to mulf8u_prepare [phi:mulf8u->mulf8u_prepare] mulf8u_prepare_from_mulf8u: @@ -9123,17 +9123,17 @@ mulf8u: { jmp b1 //SEG558 mulf8u::@1 b1: - //SEG559 [268] (byte) mulf8u_prepared::b#0 ? (byte) mulf8u::b#0 + //SEG559 [268] (byte) mulf8u_prepared::b#0 ← (byte) mulf8u::b#0 //SEG560 [269] call mulf8u_prepared //SEG561 [181] phi from mulf8u::@1 to mulf8u_prepared [phi:mulf8u::@1->mulf8u_prepared] mulf8u_prepared_from_b1: //SEG562 [181] phi (byte) mulf8u_prepared::b#2 = (byte) mulf8u_prepared::b#0 [phi:mulf8u::@1->mulf8u_prepared#0] -- register_copy jsr mulf8u_prepared - //SEG563 [270] (word) mulf8u_prepared::return#2 ? (word) mulf8u_prepared::return#0 + //SEG563 [270] (word) mulf8u_prepared::return#2 ← (word) mulf8u_prepared::return#0 jmp b2 //SEG564 mulf8u::@2 b2: - //SEG565 [271] (word) mulf8u::return#0 ? (word) mulf8u_prepared::return#2 + //SEG565 [271] (word) mulf8u::return#0 ← (word) mulf8u_prepared::return#2 jmp breturn //SEG566 mulf8u::@return breturn: @@ -9169,7 +9169,7 @@ muls8u: { jmp b2 //SEG576 muls8u::@2 b2: - //SEG577 [275] (word) muls8u::m#1 ? (word) muls8u::m#3 + (byte) muls8u::b#0 -- vwuz1=vwuz1_plus_vbuxx + //SEG577 [275] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 -- vwuz1=vwuz1_plus_vbuxx txa clc adc m @@ -9177,7 +9177,7 @@ muls8u: { bcc !+ inc m+1 !: - //SEG578 [276] (byte) muls8u::i#1 ? ++ (byte) muls8u::i#2 -- vbuyy=_inc_vbuyy + //SEG578 [276] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 -- vbuyy=_inc_vbuyy iny //SEG579 [277] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 -- vbuyy_neq_vbuz1_then_la1 cpy a @@ -9237,7 +9237,7 @@ mulf_tables_cmp: { jmp b3 //SEG596 mulf_tables_cmp::@3 b3: - //SEG597 [283] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG597 [283] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL //SEG598 [284] call print_str @@ -9257,7 +9257,7 @@ mulf_tables_cmp: { jmp b5 //SEG602 mulf_tables_cmp::@5 b5: - //SEG603 [285] (word~) print_word::w#11 ? (word)(byte*) mulf_tables_cmp::asm_sqr#2 + //SEG603 [285] (word~) print_word::w#11 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 //SEG604 [286] call print_word //SEG605 [102] phi from mulf_tables_cmp::@5 to print_word [phi:mulf_tables_cmp::@5->print_word] print_word_from_b5: @@ -9282,7 +9282,7 @@ mulf_tables_cmp: { jmp b7 //SEG614 mulf_tables_cmp::@7 b7: - //SEG615 [289] (word~) print_word::w#12 ? (word)(byte*) mulf_tables_cmp::kc_sqr#2 -- vwuz1=vwuz2 + //SEG615 [289] (word~) print_word::w#12 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 -- vwuz1=vwuz2 lda kc_sqr sta print_word.w lda kc_sqr+1 @@ -9308,12 +9308,12 @@ mulf_tables_cmp: { rts //SEG625 mulf_tables_cmp::@2 b2: - //SEG626 [293] (byte*) mulf_tables_cmp::asm_sqr#1 ? ++ (byte*) mulf_tables_cmp::asm_sqr#2 -- pbuz1=_inc_pbuz1 + //SEG626 [293] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 -- pbuz1=_inc_pbuz1 inc asm_sqr bne !+ inc asm_sqr+1 !: - //SEG627 [294] (byte*) mulf_tables_cmp::kc_sqr#1 ? ++ (byte*) mulf_tables_cmp::kc_sqr#2 -- pbuz1=_inc_pbuz1 + //SEG627 [294] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 -- pbuz1=_inc_pbuz1 inc kc_sqr bne !+ inc kc_sqr+1 @@ -9361,7 +9361,7 @@ mulf_tables_cmp: { lda #>$400 sta print_line_cursor+1 jsr print_ln - //SEG641 [300] (byte*~) print_char_cursor#225 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG641 [300] (byte*~) print_char_cursor#225 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -9420,16 +9420,16 @@ mulf_init_asm: { dey inx bne !- - //SEG647 [302] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_lo#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG647 [302] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_lo#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_lo sta mem - //SEG648 [303] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_hi#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG648 [303] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_hi#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_hi sta mem - //SEG649 [304] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_lo#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG649 [304] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_lo#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_lo sta mem - //SEG650 [305] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_hi#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG650 [305] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_hi#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_hi sta mem jmp breturn @@ -9481,9 +9481,9 @@ mulf_init: { jmp b1 //SEG666 mulf_init::@1 b1: - //SEG667 [309] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx + //SEG667 [309] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx inx - //SEG668 [310] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG668 [310] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG669 [311] if((byte~) mulf_init::$8!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 -- vbuaa_neq_0_then_la1 @@ -9492,9 +9492,9 @@ mulf_init: { jmp b3 //SEG670 mulf_init::@3 b3: - //SEG671 [312] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 + //SEG671 [312] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 inc x_2 - //SEG672 [313] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 + //SEG672 [313] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 @@ -9507,22 +9507,22 @@ mulf_init: { jmp b2 //SEG676 mulf_init::@2 b2: - //SEG677 [315] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 + //SEG677 [315] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 lda sqr - //SEG678 [316] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa + //SEG678 [316] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_lo),y - //SEG679 [317] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 + //SEG679 [317] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 lda sqr+1 - //SEG680 [318] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa + //SEG680 [318] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_hi),y - //SEG681 [319] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 + //SEG681 [319] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG682 [320] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 + //SEG682 [320] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -9530,7 +9530,7 @@ mulf_init: { bcc !+ inc sqr+1 !: - //SEG683 [321] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 + //SEG683 [321] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 @@ -9569,20 +9569,20 @@ mulf_init: { jmp b4 //SEG695 mulf_init::@4 b4: - //SEG696 [324] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG696 [324] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_lo,x ldy #0 sta (sqr2_lo),y - //SEG697 [325] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG697 [325] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_hi,x ldy #0 sta (sqr2_hi),y - //SEG698 [326] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 + //SEG698 [326] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG699 [327] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 + //SEG699 [327] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 txa clc adc dir @@ -9598,7 +9598,7 @@ mulf_init: { jmp b5 //SEG703 mulf_init::@5 b5: - //SEG704 [330] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 + //SEG704 [330] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 @@ -9613,11 +9613,11 @@ mulf_init: { jmp b6 //SEG706 mulf_init::@6 b6: - //SEG707 [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG707 [332] *((const byte[$200]) mulf_sqr2_lo#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_lo#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 // Set the very last value g(511) = f(256) lda mulf_sqr1_lo+$100 sta mulf_sqr2_lo+$1ff - //SEG708 [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ? *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 + //SEG708 [333] *((const byte[$200]) mulf_sqr2_hi#0+(word/signed word/dword/signed dword) $1ff) ← *((const byte[$200]) mulf_sqr1_hi#0+(word/signed word/dword/signed dword) $100) -- _deref_pbuc1=_deref_pbuc2 lda mulf_sqr1_hi+$100 sta mulf_sqr2_hi+$1ff jmp breturn @@ -9653,11 +9653,11 @@ print_cls: { jmp b1 //SEG720 print_cls::@1 b1: - //SEG721 [338] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG721 [338] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG722 [339] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG722 [339] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 @@ -10705,7 +10705,7 @@ Score: 227382 //SEG8 @end //SEG9 main main: { - //SEG10 [4] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG10 [4] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta BGCOL //SEG11 [5] call print_cls @@ -10763,32 +10763,32 @@ mul8s_compare: { //SEG43 [19] phi (signed byte) mul8s_compare::b#10 = (signed byte) mul8s_compare::b#1 [phi:mul8s_compare::@5->mul8s_compare::@2#0] -- register_copy //SEG44 mul8s_compare::@2 b2: - //SEG45 [20] (signed byte) muls8s::a#0 ? (signed byte) mul8s_compare::a#7 - //SEG46 [21] (signed byte) muls8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 + //SEG45 [20] (signed byte) muls8s::a#0 ← (signed byte) mul8s_compare::a#7 + //SEG46 [21] (signed byte) muls8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 ldx b //SEG47 [22] call muls8s jsr muls8s - //SEG48 [23] (signed word) muls8s::return#2 ? (signed word) muls8s::return#0 + //SEG48 [23] (signed word) muls8s::return#2 ← (signed word) muls8s::return#0 //SEG49 mul8s_compare::@10 - //SEG50 [24] (signed word) mul8s_compare::ms#0 ? (signed word) muls8s::return#2 - //SEG51 [25] (signed byte) mulf8s::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsaa=vbsz1 + //SEG50 [24] (signed word) mul8s_compare::ms#0 ← (signed word) muls8s::return#2 + //SEG51 [25] (signed byte) mulf8s::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsaa=vbsz1 lda a - //SEG52 [26] (signed byte) mulf8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 + //SEG52 [26] (signed byte) mulf8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsxx=vbsz1 ldx b //SEG53 [27] call mulf8s //SEG54 [158] phi from mul8s_compare::@10 to mulf8s [phi:mul8s_compare::@10->mulf8s] jsr mulf8s - //SEG55 [28] (signed word) mulf8s::return#2 ? (signed word) mulf8s::return#0 + //SEG55 [28] (signed word) mulf8s::return#2 ← (signed word) mulf8s::return#0 //SEG56 mul8s_compare::@11 - //SEG57 [29] (signed word) mul8s_compare::mf#0 ? (signed word) mulf8s::return#2 - //SEG58 [30] (signed byte) mul8s::a#0 ? (signed byte) mul8s_compare::a#7 - //SEG59 [31] (signed byte) mul8s::b#0 ? (signed byte) mul8s_compare::b#10 -- vbsyy=vbsz1 + //SEG57 [29] (signed word) mul8s_compare::mf#0 ← (signed word) mulf8s::return#2 + //SEG58 [30] (signed byte) mul8s::a#0 ← (signed byte) mul8s_compare::a#7 + //SEG59 [31] (signed byte) mul8s::b#0 ← (signed byte) mul8s_compare::b#10 -- vbsyy=vbsz1 ldy b //SEG60 [32] call mul8s jsr mul8s - //SEG61 [33] (signed word) mul8s::return#2 ? (signed word)(word) mul8s::m#4 + //SEG61 [33] (signed word) mul8s::return#2 ← (signed word)(word) mul8s::m#4 //SEG62 mul8s_compare::@12 - //SEG63 [34] (signed word) mul8s_compare::mn#0 ? (signed word) mul8s::return#2 + //SEG63 [34] (signed word) mul8s_compare::mn#0 ← (signed word) mul8s::return#2 //SEG64 [35] if((signed word) mul8s_compare::ms#0==(signed word) mul8s_compare::mf#0) goto mul8s_compare::@3 -- vwsz1_eq_vwsz2_then_la1 lda ms cmp mf @@ -10826,15 +10826,15 @@ mul8s_compare: { cpx #0 bne b5 //SEG77 mul8s_compare::@7 - //SEG78 [41] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG78 [41] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG79 [42] (signed byte) mul8s_error::a#0 ? (signed byte) mul8s_compare::a#7 -- vbsxx=vbsz1 + //SEG79 [42] (signed byte) mul8s_error::a#0 ← (signed byte) mul8s_compare::a#7 -- vbsxx=vbsz1 ldx a - //SEG80 [43] (signed byte) mul8s_error::b#0 ? (signed byte) mul8s_compare::b#10 - //SEG81 [44] (signed word) mul8s_error::ms#0 ? (signed word) mul8s_compare::ms#0 - //SEG82 [45] (signed word) mul8s_error::mn#0 ? (signed word) mul8s_compare::mn#0 - //SEG83 [46] (signed word) mul8s_error::mf#0 ? (signed word) mul8s_compare::mf#0 + //SEG80 [43] (signed byte) mul8s_error::b#0 ← (signed byte) mul8s_compare::b#10 + //SEG81 [44] (signed word) mul8s_error::ms#0 ← (signed word) mul8s_compare::ms#0 + //SEG82 [45] (signed word) mul8s_error::mn#0 ← (signed word) mul8s_compare::mn#0 + //SEG83 [46] (signed word) mul8s_error::mf#0 ← (signed word) mul8s_compare::mf#0 //SEG84 [47] call mul8s_error jsr mul8s_error //SEG85 mul8s_compare::@return @@ -10842,20 +10842,20 @@ mul8s_compare: { rts //SEG87 mul8s_compare::@5 b5: - //SEG88 [49] (signed byte) mul8s_compare::b#1 ? ++ (signed byte) mul8s_compare::b#10 -- vbsz1=_inc_vbsz1 + //SEG88 [49] (signed byte) mul8s_compare::b#1 ← ++ (signed byte) mul8s_compare::b#10 -- vbsz1=_inc_vbsz1 inc b //SEG89 [50] if((signed byte) mul8s_compare::b#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@2 -- vbsz1_neq_vbsc1_then_la1 lda #-$80 cmp b bne b2 //SEG90 mul8s_compare::@8 - //SEG91 [51] (signed byte) mul8s_compare::a#1 ? ++ (signed byte) mul8s_compare::a#7 -- vbsz1=_inc_vbsz1 + //SEG91 [51] (signed byte) mul8s_compare::a#1 ← ++ (signed byte) mul8s_compare::a#7 -- vbsz1=_inc_vbsz1 inc a //SEG92 [52] if((signed byte) mul8s_compare::a#1!=-(byte/word/signed word/dword/signed dword) $80) goto mul8s_compare::@1 -- vbsz1_neq_vbsc1_then_la1 cmp a bne b1 //SEG93 mul8s_compare::@9 - //SEG94 [53] (byte*~) print_char_cursor#192 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG94 [53] (byte*~) print_char_cursor#192 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -10890,7 +10890,7 @@ print_ln: { //SEG111 [59] phi (byte*) print_line_cursor#23 = (byte*) print_line_cursor#45 [phi:print_ln/print_ln::@1->print_ln::@1#0] -- register_copy //SEG112 print_ln::@1 b1: - //SEG113 [60] (byte*) print_line_cursor#1 ? (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG113 [60] (byte*) print_line_cursor#1 ← (byte*) print_line_cursor#23 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc print_line_cursor @@ -10931,16 +10931,16 @@ print_str: { rts //SEG125 print_str::@2 b2: - //SEG126 [67] *((byte*) print_char_cursor#132) ? *((byte*) print_str::str#16) -- _deref_pbuz1=_deref_pbuz2 + //SEG126 [67] *((byte*) print_char_cursor#132) ← *((byte*) print_str::str#16) -- _deref_pbuz1=_deref_pbuz2 ldy #0 lda (str),y sta (print_char_cursor),y - //SEG127 [68] (byte*) print_char_cursor#1 ? ++ (byte*) print_char_cursor#132 -- pbuz1=_inc_pbuz1 + //SEG127 [68] (byte*) print_char_cursor#1 ← ++ (byte*) print_char_cursor#132 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 !: - //SEG128 [69] (byte*) print_str::str#0 ? ++ (byte*) print_str::str#16 -- pbuz1=_inc_pbuz1 + //SEG128 [69] (byte*) print_str::str#0 ← ++ (byte*) print_str::str#16 -- pbuz1=_inc_pbuz1 inc str bne !+ inc str+1 @@ -10954,7 +10954,7 @@ mul8s_error: { .label ms = 8 .label mn = $c .label mf = $e - //SEG130 [70] (byte*~) print_char_cursor#193 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG130 [70] (byte*~) print_char_cursor#193 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -10969,7 +10969,7 @@ mul8s_error: { sta print_str.str+1 jsr print_str //SEG135 mul8s_error::@1 - //SEG136 [72] (signed byte) print_sbyte::b#1 ? (signed byte) mul8s_error::a#0 + //SEG136 [72] (signed byte) print_sbyte::b#1 ← (signed byte) mul8s_error::a#0 //SEG137 [73] call print_sbyte //SEG138 [120] phi from mul8s_error::@1 to print_sbyte [phi:mul8s_error::@1->print_sbyte] //SEG139 [120] phi (signed byte) print_sbyte::b#3 = (signed byte) print_sbyte::b#1 [phi:mul8s_error::@1->print_sbyte#0] -- register_copy @@ -10986,7 +10986,7 @@ mul8s_error: { sta print_str.str+1 jsr print_str //SEG146 mul8s_error::@3 - //SEG147 [76] (signed byte) print_sbyte::b#2 ? (signed byte) mul8s_error::b#0 -- vbsxx=vbsz1 + //SEG147 [76] (signed byte) print_sbyte::b#2 ← (signed byte) mul8s_error::b#0 -- vbsxx=vbsz1 ldx b //SEG148 [77] call print_sbyte //SEG149 [120] phi from mul8s_error::@3 to print_sbyte [phi:mul8s_error::@3->print_sbyte] @@ -11004,7 +11004,7 @@ mul8s_error: { sta print_str.str+1 jsr print_str //SEG157 mul8s_error::@5 - //SEG158 [80] (signed word) print_sword::w#1 ? (signed word) mul8s_error::ms#0 + //SEG158 [80] (signed word) print_sword::w#1 ← (signed word) mul8s_error::ms#0 //SEG159 [81] call print_sword //SEG160 [93] phi from mul8s_error::@5 to print_sword [phi:mul8s_error::@5->print_sword] //SEG161 [93] phi (signed word) print_sword::w#4 = (signed word) print_sword::w#1 [phi:mul8s_error::@5->print_sword#0] -- register_copy @@ -11021,7 +11021,7 @@ mul8s_error: { sta print_str.str+1 jsr print_str //SEG168 mul8s_error::@7 - //SEG169 [84] (signed word) print_sword::w#2 ? (signed word) mul8s_error::mn#0 -- vwsz1=vwsz2 + //SEG169 [84] (signed word) print_sword::w#2 ← (signed word) mul8s_error::mn#0 -- vwsz1=vwsz2 lda mn sta print_sword.w lda mn+1 @@ -11042,7 +11042,7 @@ mul8s_error: { sta print_str.str+1 jsr print_str //SEG179 mul8s_error::@9 - //SEG180 [88] (signed word) print_sword::w#3 ? (signed word) mul8s_error::mf#0 -- vwsz1=vwsz2 + //SEG180 [88] (signed word) print_sword::w#3 ← (signed word) mul8s_error::mf#0 -- vwsz1=vwsz2 lda mf sta print_sword.w lda mf+1 @@ -11080,7 +11080,7 @@ print_sword: { lda #'-' jsr print_char //SEG200 print_sword::@3 - //SEG201 [97] (signed word) print_sword::w#0 ? - (signed word) print_sword::w#4 -- vwsz1=_neg_vwsz1 + //SEG201 [97] (signed word) print_sword::w#0 ← - (signed word) print_sword::w#4 -- vwsz1=_neg_vwsz1 sec lda w eor #$ff @@ -11095,7 +11095,7 @@ print_sword: { //SEG204 [98] phi (signed word) print_sword::w#5 = (signed word) print_sword::w#4 [phi:print_sword/print_sword::@3->print_sword::@1#1] -- register_copy //SEG205 print_sword::@1 b1: - //SEG206 [99] (word~) print_word::w#13 ? (word)(signed word) print_sword::w#5 + //SEG206 [99] (word~) print_word::w#13 ← (word)(signed word) print_sword::w#5 //SEG207 [100] call print_word //SEG208 [102] phi from print_sword::@1 to print_word [phi:print_sword::@1->print_word] //SEG209 [102] phi (byte*) print_char_cursor#139 = (byte*) print_char_cursor#134 [phi:print_sword::@1->print_word#0] -- register_copy @@ -11110,7 +11110,7 @@ print_sword: { // print_word(word zeropage(8) w) print_word: { .label w = 8 - //SEG214 [103] (byte) print_byte::b#1 ? > (word) print_word::w#6 -- vbuxx=_hi_vwuz1 + //SEG214 [103] (byte) print_byte::b#1 ← > (word) print_word::w#6 -- vbuxx=_hi_vwuz1 lda w+1 tax //SEG215 [104] call print_byte @@ -11119,7 +11119,7 @@ print_word: { //SEG218 [108] phi (byte) print_byte::b#5 = (byte) print_byte::b#1 [phi:print_word->print_byte#1] -- register_copy jsr print_byte //SEG219 print_word::@1 - //SEG220 [105] (byte) print_byte::b#2 ? < (word) print_word::w#6 -- vbuxx=_lo_vwuz1 + //SEG220 [105] (byte) print_byte::b#2 ← < (word) print_word::w#6 -- vbuxx=_lo_vwuz1 lda w tax //SEG221 [106] call print_byte @@ -11135,13 +11135,13 @@ print_word: { // Print a byte as HEX // print_byte(byte register(X) b) print_byte: { - //SEG228 [109] (byte~) print_byte::$0 ? (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 + //SEG228 [109] (byte~) print_byte::$0 ← (byte) print_byte::b#5 >> (byte/signed byte/word/signed word/dword/signed dword) 4 -- vbuaa=vbuxx_ror_4 txa lsr lsr lsr lsr - //SEG229 [110] (byte) print_char::ch#3 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa + //SEG229 [110] (byte) print_char::ch#3 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$0) -- vbuaa=pbuc1_derefidx_vbuaa tay lda print_hextab,y //SEG230 [111] call print_char @@ -11150,10 +11150,10 @@ print_byte: { //SEG233 [116] phi (byte) print_char::ch#5 = (byte) print_char::ch#3 [phi:print_byte->print_char#1] -- register_copy jsr print_char //SEG234 print_byte::@1 - //SEG235 [112] (byte~) print_byte::$2 ? (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 + //SEG235 [112] (byte~) print_byte::$2 ← (byte) print_byte::b#5 & (byte/signed byte/word/signed word/dword/signed dword) $f -- vbuxx=vbuxx_band_vbuc1 lda #$f axs #0 - //SEG236 [113] (byte) print_char::ch#4 ? *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx + //SEG236 [113] (byte) print_char::ch#4 ← *((const byte[]) print_hextab#0 + (byte~) print_byte::$2) -- vbuaa=pbuc1_derefidx_vbuxx lda print_hextab,x //SEG237 [114] call print_char //SEG238 [116] phi from print_byte::@1 to print_char [phi:print_byte::@1->print_char] @@ -11168,10 +11168,10 @@ print_byte: { // Print a single char // print_char(byte register(A) ch) print_char: { - //SEG244 [117] *((byte*) print_char_cursor#84) ? (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa + //SEG244 [117] *((byte*) print_char_cursor#84) ← (byte) print_char::ch#5 -- _deref_pbuz1=vbuaa ldy #0 sta (print_char_cursor),y - //SEG245 [118] (byte*) print_char_cursor#18 ? ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 + //SEG245 [118] (byte*) print_char_cursor#18 ← ++ (byte*) print_char_cursor#84 -- pbuz1=_inc_pbuz1 inc print_char_cursor bne !+ inc print_char_cursor+1 @@ -11199,7 +11199,7 @@ print_sbyte: { //SEG257 [124] phi (signed byte) print_sbyte::b#5 = (signed byte) print_sbyte::b#3 [phi:print_sbyte::@3/print_sbyte::@4->print_sbyte::@2#0] -- register_copy //SEG258 print_sbyte::@2 b2: - //SEG259 [125] (byte~) print_byte::b#9 ? (byte)(signed byte) print_sbyte::b#5 + //SEG259 [125] (byte~) print_byte::b#9 ← (byte)(signed byte) print_sbyte::b#5 //SEG260 [126] call print_byte //SEG261 [108] phi from print_sbyte::@2 to print_byte [phi:print_sbyte::@2->print_byte] //SEG262 [108] phi (byte*) print_char_cursor#140 = (byte*) print_char_cursor#18 [phi:print_sbyte::@2->print_byte#0] -- register_copy @@ -11218,7 +11218,7 @@ print_sbyte: { lda #'-' jsr print_char //SEG272 print_sbyte::@4 - //SEG273 [130] (signed byte) print_sbyte::b#0 ? - (signed byte) print_sbyte::b#3 -- vbsxx=_neg_vbsxx + //SEG273 [130] (signed byte) print_sbyte::b#0 ← - (signed byte) print_sbyte::b#3 -- vbsxx=_neg_vbsxx txa eor #$ff clc @@ -11234,30 +11234,30 @@ mul8s: { .label m = $c .label a = 2 .label return = $c - //SEG275 [131] (byte~) mul8u::b#3 ? (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuyy + //SEG275 [131] (byte~) mul8u::b#3 ← (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuyy tya - //SEG276 [132] (byte~) mul8u::a#8 ? (byte)(signed byte) mul8s::a#0 -- vbuxx=vbuz1 + //SEG276 [132] (byte~) mul8u::a#8 ← (byte)(signed byte) mul8s::a#0 -- vbuxx=vbuz1 ldx a //SEG277 [133] call mul8u //SEG278 [147] phi from mul8s to mul8u [phi:mul8s->mul8u] //SEG279 [147] phi (byte) mul8u::a#6 = (byte~) mul8u::a#8 [phi:mul8s->mul8u#0] -- register_copy //SEG280 [147] phi (byte) mul8u::b#2 = (byte~) mul8u::b#3 [phi:mul8s->mul8u#1] -- register_copy jsr mul8u - //SEG281 [134] (word) mul8u::return#2 ? (word) mul8u::res#2 + //SEG281 [134] (word) mul8u::return#2 ← (word) mul8u::res#2 //SEG282 mul8s::@5 - //SEG283 [135] (word) mul8s::m#0 ? (word) mul8u::return#2 + //SEG283 [135] (word) mul8s::m#0 ← (word) mul8u::return#2 //SEG284 [136] if((signed byte) mul8s::a#0>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8s::@1 -- vbsz1_ge_0_then_la1 lda a cmp #0 bpl b1 //SEG285 mul8s::@3 - //SEG286 [137] (byte~) mul8s::$9 ? > (word) mul8s::m#0 -- vbuaa=_hi_vwuz1 + //SEG286 [137] (byte~) mul8s::$9 ← > (word) mul8s::m#0 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG287 [138] (byte~) mul8s::$16 ? (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuaa_minus_vbuyy + //SEG287 [138] (byte~) mul8s::$16 ← (byte~) mul8s::$9 - (byte)(signed byte) mul8s::b#0 -- vbuaa=vbuaa_minus_vbuyy sty $ff sec sbc $ff - //SEG288 [139] (word) mul8s::m#1 ? (word) mul8s::m#0 hi= (byte~) mul8s::$16 -- vwuz1=vwuz1_sethi_vbuaa + //SEG288 [139] (word) mul8s::m#1 ← (word) mul8s::m#0 hi= (byte~) mul8s::$16 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG289 [140] phi from mul8s::@3 mul8s::@5 to mul8s::@1 [phi:mul8s::@3/mul8s::@5->mul8s::@1] //SEG290 [140] phi (word) mul8s::m#5 = (word) mul8s::m#1 [phi:mul8s::@3/mul8s::@5->mul8s::@1#0] -- register_copy @@ -11267,12 +11267,12 @@ mul8s: { cpy #0 bpl b2 //SEG293 mul8s::@4 - //SEG294 [142] (byte~) mul8s::$13 ? > (word) mul8s::m#5 -- vbuaa=_hi_vwuz1 + //SEG294 [142] (byte~) mul8s::$13 ← > (word) mul8s::m#5 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG295 [143] (byte~) mul8s::$17 ? (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 -- vbuaa=vbuaa_minus_vbuz1 + //SEG295 [143] (byte~) mul8s::$17 ← (byte~) mul8s::$13 - (byte)(signed byte) mul8s::a#0 -- vbuaa=vbuaa_minus_vbuz1 sec sbc a - //SEG296 [144] (word) mul8s::m#2 ? (word) mul8s::m#5 hi= (byte~) mul8s::$17 -- vwuz1=vwuz1_sethi_vbuaa + //SEG296 [144] (word) mul8s::m#2 ← (word) mul8s::m#5 hi= (byte~) mul8s::$17 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG297 [145] phi from mul8s::@1 mul8s::@4 to mul8s::@2 [phi:mul8s::@1/mul8s::@4->mul8s::@2] //SEG298 [145] phi (word) mul8s::m#4 = (word) mul8s::m#5 [phi:mul8s::@1/mul8s::@4->mul8s::@2#0] -- register_copy @@ -11289,7 +11289,7 @@ mul8u: { .label mb = 6 .label res = $c .label return = $c - //SEG303 [148] (word) mul8u::mb#0 ? ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa + //SEG303 [148] (word) mul8u::mb#0 ← ((word)) (byte) mul8u::b#2 -- vwuz1=_word_vbuaa sta mb lda #0 sta mb+1 @@ -11309,14 +11309,14 @@ mul8u: { rts //SEG312 mul8u::@2 b2: - //SEG313 [152] (byte~) mul8u::$1 ? (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG313 [152] (byte~) mul8u::$1 ← (byte) mul8u::a#3 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG314 [153] if((byte~) mul8u::$1==(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u::@3 -- vbuaa_eq_0_then_la1 cmp #0 beq b3 //SEG315 mul8u::@4 - //SEG316 [154] (word) mul8u::res#1 ? (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 + //SEG316 [154] (word) mul8u::res#1 ← (word) mul8u::res#2 + (word) mul8u::mb#2 -- vwuz1=vwuz1_plus_vwuz2 lda res clc adc mb @@ -11328,11 +11328,11 @@ mul8u: { //SEG318 [155] phi (word) mul8u::res#6 = (word) mul8u::res#2 [phi:mul8u::@2/mul8u::@4->mul8u::@3#0] -- register_copy //SEG319 mul8u::@3 b3: - //SEG320 [156] (byte) mul8u::a#0 ? (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 + //SEG320 [156] (byte) mul8u::a#0 ← (byte) mul8u::a#3 >> (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=vbuxx_ror_1 txa lsr tax - //SEG321 [157] (word) mul8u::mb#1 ? (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 + //SEG321 [157] (word) mul8u::mb#1 ← (word) mul8u::mb#2 << (byte/signed byte/word/signed word/dword/signed dword) 1 -- vwuz1=vwuz1_rol_1 asl mb rol mb+1 //SEG322 [149] phi from mul8u::@3 to mul8u::@1 [phi:mul8u::@3->mul8u::@1] @@ -11347,19 +11347,19 @@ mul8u: { mulf8s: { .label return = $e //SEG327 mulf8s::mulf8s_prepare1 - //SEG328 [159] (byte~) mulf8u_prepare::a#3 ? (byte)(signed byte) mulf8s::a#0 + //SEG328 [159] (byte~) mulf8u_prepare::a#3 ← (byte)(signed byte) mulf8s::a#0 //SEG329 [160] call mulf8u_prepare //SEG330 [186] phi from mulf8s::mulf8s_prepare1 to mulf8u_prepare [phi:mulf8s::mulf8s_prepare1->mulf8u_prepare] //SEG331 [186] phi (byte) mulf8u_prepare::a#2 = (byte~) mulf8u_prepare::a#3 [phi:mulf8s::mulf8s_prepare1->mulf8u_prepare#0] -- register_copy jsr mulf8u_prepare //SEG332 mulf8s::@1 - //SEG333 [161] (signed byte) mulf8s_prepared::b#0 ? (signed byte) mulf8s::b#0 -- vbsz1=vbsxx + //SEG333 [161] (signed byte) mulf8s_prepared::b#0 ← (signed byte) mulf8s::b#0 -- vbsz1=vbsxx stx mulf8s_prepared.b //SEG334 [162] call mulf8s_prepared jsr mulf8s_prepared - //SEG335 [163] (signed word) mulf8s_prepared::return#2 ? (signed word)(word) mulf8s_prepared::m#4 + //SEG335 [163] (signed word) mulf8s_prepared::return#2 ← (signed word)(word) mulf8s_prepared::m#4 //SEG336 mulf8s::@2 - //SEG337 [164] (signed word) mulf8s::return#0 ? (signed word) mulf8s_prepared::return#2 + //SEG337 [164] (signed word) mulf8s::return#0 ← (signed word) mulf8s_prepared::return#2 //SEG338 mulf8s::@return //SEG339 [165] return rts @@ -11373,26 +11373,26 @@ mulf8s_prepared: { .label m = $e .label b = 3 .label return = $e - //SEG341 [166] (byte~) mulf8u_prepared::b#3 ? (byte)(signed byte) mulf8s_prepared::b#0 -- vbuxx=vbuz1 + //SEG341 [166] (byte~) mulf8u_prepared::b#3 ← (byte)(signed byte) mulf8s_prepared::b#0 -- vbuxx=vbuz1 ldx b //SEG342 [167] call mulf8u_prepared //SEG343 [181] phi from mulf8s_prepared to mulf8u_prepared [phi:mulf8s_prepared->mulf8u_prepared] //SEG344 [181] phi (byte) mulf8u_prepared::b#2 = (byte~) mulf8u_prepared::b#3 [phi:mulf8s_prepared->mulf8u_prepared#0] -- register_copy jsr mulf8u_prepared - //SEG345 [168] (word) mulf8u_prepared::return#3 ? (word) mulf8u_prepared::return#0 + //SEG345 [168] (word) mulf8u_prepared::return#3 ← (word) mulf8u_prepared::return#0 //SEG346 mulf8s_prepared::@5 - //SEG347 [169] (word) mulf8s_prepared::m#0 ? (word) mulf8u_prepared::return#3 + //SEG347 [169] (word) mulf8s_prepared::m#0 ← (word) mulf8u_prepared::return#3 //SEG348 [170] if(*((const signed byte*) mulf8s_prepared::memA#0)>=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf8s_prepared::@1 -- _deref_pbsc1_ge_0_then_la1 lda memA cmp #0 bpl b1 //SEG349 mulf8s_prepared::@3 - //SEG350 [171] (byte~) mulf8s_prepared::$8 ? > (word) mulf8s_prepared::m#0 -- vbuaa=_hi_vwuz1 + //SEG350 [171] (byte~) mulf8s_prepared::$8 ← > (word) mulf8s_prepared::m#0 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG351 [172] (byte~) mulf8s_prepared::$15 ? (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 -- vbuaa=vbuaa_minus_vbuz1 + //SEG351 [172] (byte~) mulf8s_prepared::$15 ← (byte~) mulf8s_prepared::$8 - (byte)(signed byte) mulf8s_prepared::b#0 -- vbuaa=vbuaa_minus_vbuz1 sec sbc b - //SEG352 [173] (word) mulf8s_prepared::m#1 ? (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 -- vwuz1=vwuz1_sethi_vbuaa + //SEG352 [173] (word) mulf8s_prepared::m#1 ← (word) mulf8s_prepared::m#0 hi= (byte~) mulf8s_prepared::$15 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG353 [174] phi from mulf8s_prepared::@3 mulf8s_prepared::@5 to mulf8s_prepared::@1 [phi:mulf8s_prepared::@3/mulf8s_prepared::@5->mulf8s_prepared::@1] //SEG354 [174] phi (word) mulf8s_prepared::m#5 = (word) mulf8s_prepared::m#1 [phi:mulf8s_prepared::@3/mulf8s_prepared::@5->mulf8s_prepared::@1#0] -- register_copy @@ -11403,12 +11403,12 @@ mulf8s_prepared: { cmp #0 bpl b2 //SEG357 mulf8s_prepared::@4 - //SEG358 [176] (byte~) mulf8s_prepared::$12 ? > (word) mulf8s_prepared::m#5 -- vbuaa=_hi_vwuz1 + //SEG358 [176] (byte~) mulf8s_prepared::$12 ← > (word) mulf8s_prepared::m#5 -- vbuaa=_hi_vwuz1 lda m+1 - //SEG359 [177] (byte~) mulf8s_prepared::$16 ? (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) -- vbuaa=vbuaa_minus__deref_pbuc1 + //SEG359 [177] (byte~) mulf8s_prepared::$16 ← (byte~) mulf8s_prepared::$12 - (byte)*((const signed byte*) mulf8s_prepared::memA#0) -- vbuaa=vbuaa_minus__deref_pbuc1 sec sbc memA - //SEG360 [178] (word) mulf8s_prepared::m#2 ? (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 -- vwuz1=vwuz1_sethi_vbuaa + //SEG360 [178] (word) mulf8s_prepared::m#2 ← (word) mulf8s_prepared::m#5 hi= (byte~) mulf8s_prepared::$16 -- vwuz1=vwuz1_sethi_vbuaa sta m+1 //SEG361 [179] phi from mulf8s_prepared::@1 mulf8s_prepared::@4 to mulf8s_prepared::@2 [phi:mulf8s_prepared::@1/mulf8s_prepared::@4->mulf8s_prepared::@2] //SEG362 [179] phi (word) mulf8s_prepared::m#4 = (word) mulf8s_prepared::m#5 [phi:mulf8s_prepared::@1/mulf8s_prepared::@4->mulf8s_prepared::@2#0] -- register_copy @@ -11426,7 +11426,7 @@ mulf8u_prepared: { .label resL = $fe .label memB = $ff .label return = $e - //SEG367 [182] *((const byte*) mulf8u_prepared::memB#0) ? (byte) mulf8u_prepared::b#2 -- _deref_pbuc1=vbuxx + //SEG367 [182] *((const byte*) mulf8u_prepared::memB#0) ← (byte) mulf8u_prepared::b#2 -- _deref_pbuc1=vbuxx stx memB //SEG368 asm { ldxmemB sec sm1: ldamulf_sqr1_lo,x sm2: sbcmulf_sqr2_lo,x staresL sm3: ldamulf_sqr1_hi,x sm4: sbcmulf_sqr2_hi,x stamemB } sec @@ -11440,7 +11440,7 @@ mulf8u_prepared: { sm4: sbc mulf_sqr2_hi,x sta memB - //SEG369 [184] (word) mulf8u_prepared::return#0 ? *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 + //SEG369 [184] (word) mulf8u_prepared::return#0 ← *((const byte*) mulf8u_prepared::memB#0) w= *((const byte*) mulf8u_prepared::resL#0) -- vwuz1=_deref_pbuc1_word__deref_pbuc2 lda resL sta return lda memB @@ -11454,7 +11454,7 @@ mulf8u_prepared: { // mulf8u_prepare(byte register(A) a) mulf8u_prepare: { .label memA = $fd - //SEG373 [187] *((const byte*) mulf8u_prepare::memA#0) ? (byte) mulf8u_prepare::a#2 -- _deref_pbuc1=vbuaa + //SEG373 [187] *((const byte*) mulf8u_prepare::memA#0) ← (byte) mulf8u_prepare::a#2 -- _deref_pbuc1=vbuaa sta memA //SEG374 asm { ldamemA stamulf8u_prepared.sm1+1 stamulf8u_prepared.sm3+1 eor#$ff stamulf8u_prepared.sm2+1 stamulf8u_prepared.sm4+1 } sta mulf8u_prepared.sm1+1 @@ -11493,7 +11493,7 @@ muls8s: { //SEG386 [192] phi (signed word) muls8s::m#3 = (signed word) muls8s::m#1 [phi:muls8s::@3->muls8s::@3#1] -- register_copy //SEG387 muls8s::@3 b3: - //SEG388 [193] (signed word) muls8s::m#1 ? (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 -- vwsz1=vwsz1_plus_vbsxx + //SEG388 [193] (signed word) muls8s::m#1 ← (signed word) muls8s::m#3 + (signed byte) muls8s::b#0 -- vwsz1=vwsz1_plus_vbsxx txa sta $fe ora #$7f @@ -11508,7 +11508,7 @@ muls8s: { lda m+1 adc $ff sta m+1 - //SEG389 [194] (signed byte) muls8s::j#1 ? ++ (signed byte) muls8s::j#2 -- vbsyy=_inc_vbsyy + //SEG389 [194] (signed byte) muls8s::j#1 ← ++ (signed byte) muls8s::j#2 -- vbsyy=_inc_vbsyy iny //SEG390 [195] if((signed byte) muls8s::j#1!=(signed byte) muls8s::a#0) goto muls8s::@3 -- vbsyy_neq_vbsz1_then_la1 cpy a @@ -11539,7 +11539,7 @@ muls8s: { //SEG403 [198] phi (signed word) muls8s::m#5 = (signed word) muls8s::m#2 [phi:muls8s::@4->muls8s::@4#1] -- register_copy //SEG404 muls8s::@4 b4: - //SEG405 [199] (signed word) muls8s::m#2 ? (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 -- vwsz1=vwsz1_minus_vbsxx + //SEG405 [199] (signed word) muls8s::m#2 ← (signed word) muls8s::m#5 - (signed byte) muls8s::b#0 -- vwsz1=vwsz1_minus_vbsxx txa sta $fe ora #$7f @@ -11554,7 +11554,7 @@ muls8s: { lda m+1 sbc $ff sta m+1 - //SEG406 [200] (signed byte) muls8s::i#1 ? -- (signed byte) muls8s::i#2 -- vbsyy=_dec_vbsyy + //SEG406 [200] (signed byte) muls8s::i#1 ← -- (signed byte) muls8s::i#2 -- vbsyy=_dec_vbsyy dey //SEG407 [201] if((signed byte) muls8s::i#1!=(signed byte) muls8s::a#0) goto muls8s::@4 -- vbsyy_neq_vbsz1_then_la1 cpy a @@ -11585,35 +11585,35 @@ mul8u_compare: { //SEG417 [204] phi (byte) mul8u_compare::b#10 = (byte) mul8u_compare::b#1 [phi:mul8u_compare::@5->mul8u_compare::@2#0] -- register_copy //SEG418 mul8u_compare::@2 b2: - //SEG419 [205] (byte) muls8u::a#0 ? (byte) mul8u_compare::a#7 - //SEG420 [206] (byte) muls8u::b#0 ? (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 + //SEG419 [205] (byte) muls8u::a#0 ← (byte) mul8u_compare::a#7 + //SEG420 [206] (byte) muls8u::b#0 ← (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 ldx b //SEG421 [207] call muls8u jsr muls8u - //SEG422 [208] (word) muls8u::return#2 ? (word) muls8u::return#0 + //SEG422 [208] (word) muls8u::return#2 ← (word) muls8u::return#0 //SEG423 mul8u_compare::@10 - //SEG424 [209] (word) mul8u_compare::ms#0 ? (word) muls8u::return#2 - //SEG425 [210] (byte) mulf8u::a#0 ? (byte) mul8u_compare::a#7 -- vbuaa=vbuz1 + //SEG424 [209] (word) mul8u_compare::ms#0 ← (word) muls8u::return#2 + //SEG425 [210] (byte) mulf8u::a#0 ← (byte) mul8u_compare::a#7 -- vbuaa=vbuz1 lda a - //SEG426 [211] (byte) mulf8u::b#0 ? (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 + //SEG426 [211] (byte) mulf8u::b#0 ← (byte) mul8u_compare::b#10 -- vbuxx=vbuz1 ldx b //SEG427 [212] call mulf8u jsr mulf8u - //SEG428 [213] (word) mulf8u::return#2 ? (word) mulf8u::return#0 + //SEG428 [213] (word) mulf8u::return#2 ← (word) mulf8u::return#0 //SEG429 mul8u_compare::@11 - //SEG430 [214] (word) mul8u_compare::mf#0 ? (word) mulf8u::return#2 - //SEG431 [215] (byte) mul8u::a#2 ? (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 + //SEG430 [214] (word) mul8u_compare::mf#0 ← (word) mulf8u::return#2 + //SEG431 [215] (byte) mul8u::a#2 ← (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 ldx a - //SEG432 [216] (byte) mul8u::b#1 ? (byte) mul8u_compare::b#10 -- vbuaa=vbuz1 + //SEG432 [216] (byte) mul8u::b#1 ← (byte) mul8u_compare::b#10 -- vbuaa=vbuz1 lda b //SEG433 [217] call mul8u //SEG434 [147] phi from mul8u_compare::@11 to mul8u [phi:mul8u_compare::@11->mul8u] //SEG435 [147] phi (byte) mul8u::a#6 = (byte) mul8u::a#2 [phi:mul8u_compare::@11->mul8u#0] -- register_copy //SEG436 [147] phi (byte) mul8u::b#2 = (byte) mul8u::b#1 [phi:mul8u_compare::@11->mul8u#1] -- register_copy jsr mul8u - //SEG437 [218] (word) mul8u::return#3 ? (word) mul8u::res#2 + //SEG437 [218] (word) mul8u::return#3 ← (word) mul8u::res#2 //SEG438 mul8u_compare::@12 - //SEG439 [219] (word) mul8u_compare::mn#0 ? (word) mul8u::return#3 + //SEG439 [219] (word) mul8u_compare::mn#0 ← (word) mul8u::return#3 //SEG440 [220] if((word) mul8u_compare::ms#0==(word) mul8u_compare::mf#0) goto mul8u_compare::@3 -- vwuz1_eq_vwuz2_then_la1 lda ms cmp mf @@ -11651,15 +11651,15 @@ mul8u_compare: { cpx #0 bne b5 //SEG453 mul8u_compare::@7 - //SEG454 [226] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG454 [226] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL - //SEG455 [227] (byte) mul8u_error::a#0 ? (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 + //SEG455 [227] (byte) mul8u_error::a#0 ← (byte) mul8u_compare::a#7 -- vbuxx=vbuz1 ldx a - //SEG456 [228] (byte) mul8u_error::b#0 ? (byte) mul8u_compare::b#10 - //SEG457 [229] (word) mul8u_error::ms#0 ? (word) mul8u_compare::ms#0 - //SEG458 [230] (word) mul8u_error::mn#0 ? (word) mul8u_compare::mn#0 - //SEG459 [231] (word) mul8u_error::mf#0 ? (word) mul8u_compare::mf#0 + //SEG456 [228] (byte) mul8u_error::b#0 ← (byte) mul8u_compare::b#10 + //SEG457 [229] (word) mul8u_error::ms#0 ← (word) mul8u_compare::ms#0 + //SEG458 [230] (word) mul8u_error::mn#0 ← (word) mul8u_compare::mn#0 + //SEG459 [231] (word) mul8u_error::mf#0 ← (word) mul8u_compare::mf#0 //SEG460 [232] call mul8u_error //SEG461 [243] phi from mul8u_compare::@7 to mul8u_error [phi:mul8u_compare::@7->mul8u_error] jsr mul8u_error @@ -11668,14 +11668,14 @@ mul8u_compare: { rts //SEG464 mul8u_compare::@5 b5: - //SEG465 [234] (byte) mul8u_compare::b#1 ? ++ (byte) mul8u_compare::b#10 -- vbuz1=_inc_vbuz1 + //SEG465 [234] (byte) mul8u_compare::b#1 ← ++ (byte) mul8u_compare::b#10 -- vbuz1=_inc_vbuz1 inc b //SEG466 [235] if((byte) mul8u_compare::b#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@2 -- vbuz1_neq_0_then_la1 lda b cmp #0 bne b2 //SEG467 mul8u_compare::@8 - //SEG468 [236] (byte) mul8u_compare::a#1 ? ++ (byte) mul8u_compare::a#7 -- vbuz1=_inc_vbuz1 + //SEG468 [236] (byte) mul8u_compare::a#1 ← ++ (byte) mul8u_compare::a#7 -- vbuz1=_inc_vbuz1 inc a //SEG469 [237] if((byte) mul8u_compare::a#1!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mul8u_compare::@1 -- vbuz1_neq_0_then_la1 lda a @@ -11723,7 +11723,7 @@ mul8u_error: { sta print_str.str+1 jsr print_str //SEG491 mul8u_error::@1 - //SEG492 [245] (byte) print_byte::b#3 ? (byte) mul8u_error::a#0 + //SEG492 [245] (byte) print_byte::b#3 ← (byte) mul8u_error::a#0 //SEG493 [246] call print_byte //SEG494 [108] phi from mul8u_error::@1 to print_byte [phi:mul8u_error::@1->print_byte] //SEG495 [108] phi (byte*) print_char_cursor#140 = (byte*) print_char_cursor#132 [phi:mul8u_error::@1->print_byte#0] -- register_copy @@ -11741,7 +11741,7 @@ mul8u_error: { sta print_str.str+1 jsr print_str //SEG503 mul8u_error::@3 - //SEG504 [249] (byte) print_byte::b#4 ? (byte) mul8u_error::b#0 -- vbuxx=vbuz1 + //SEG504 [249] (byte) print_byte::b#4 ← (byte) mul8u_error::b#0 -- vbuxx=vbuz1 ldx b //SEG505 [250] call print_byte //SEG506 [108] phi from mul8u_error::@3 to print_byte [phi:mul8u_error::@3->print_byte] @@ -11760,7 +11760,7 @@ mul8u_error: { sta print_str.str+1 jsr print_str //SEG515 mul8u_error::@5 - //SEG516 [253] (word) print_word::w#3 ? (word) mul8u_error::ms#0 + //SEG516 [253] (word) print_word::w#3 ← (word) mul8u_error::ms#0 //SEG517 [254] call print_word //SEG518 [102] phi from mul8u_error::@5 to print_word [phi:mul8u_error::@5->print_word] //SEG519 [102] phi (byte*) print_char_cursor#139 = (byte*) print_char_cursor#132 [phi:mul8u_error::@5->print_word#0] -- register_copy @@ -11778,7 +11778,7 @@ mul8u_error: { sta print_str.str+1 jsr print_str //SEG527 mul8u_error::@7 - //SEG528 [257] (word) print_word::w#4 ? (word) mul8u_error::mn#0 -- vwuz1=vwuz2 + //SEG528 [257] (word) print_word::w#4 ← (word) mul8u_error::mn#0 -- vwuz1=vwuz2 lda mn sta print_word.w lda mn+1 @@ -11800,7 +11800,7 @@ mul8u_error: { sta print_str.str+1 jsr print_str //SEG539 mul8u_error::@9 - //SEG540 [261] (word) print_word::w#5 ? (word) mul8u_error::mf#0 -- vwuz1=vwuz2 + //SEG540 [261] (word) print_word::w#5 ← (word) mul8u_error::mf#0 -- vwuz1=vwuz2 lda mf sta print_word.w lda mf+1 @@ -11827,20 +11827,20 @@ mul8u_error: { // mulf8u(byte register(A) a, byte register(X) b) mulf8u: { .label return = $e - //SEG554 [266] (byte) mulf8u_prepare::a#0 ? (byte) mulf8u::a#0 + //SEG554 [266] (byte) mulf8u_prepare::a#0 ← (byte) mulf8u::a#0 //SEG555 [267] call mulf8u_prepare //SEG556 [186] phi from mulf8u to mulf8u_prepare [phi:mulf8u->mulf8u_prepare] //SEG557 [186] phi (byte) mulf8u_prepare::a#2 = (byte) mulf8u_prepare::a#0 [phi:mulf8u->mulf8u_prepare#0] -- register_copy jsr mulf8u_prepare //SEG558 mulf8u::@1 - //SEG559 [268] (byte) mulf8u_prepared::b#0 ? (byte) mulf8u::b#0 + //SEG559 [268] (byte) mulf8u_prepared::b#0 ← (byte) mulf8u::b#0 //SEG560 [269] call mulf8u_prepared //SEG561 [181] phi from mulf8u::@1 to mulf8u_prepared [phi:mulf8u::@1->mulf8u_prepared] //SEG562 [181] phi (byte) mulf8u_prepared::b#2 = (byte) mulf8u_prepared::b#0 [phi:mulf8u::@1->mulf8u_prepared#0] -- register_copy jsr mulf8u_prepared - //SEG563 [270] (word) mulf8u_prepared::return#2 ? (word) mulf8u_prepared::return#0 + //SEG563 [270] (word) mulf8u_prepared::return#2 ← (word) mulf8u_prepared::return#0 //SEG564 mulf8u::@2 - //SEG565 [271] (word) mulf8u::return#0 ? (word) mulf8u_prepared::return#2 + //SEG565 [271] (word) mulf8u::return#0 ← (word) mulf8u_prepared::return#2 //SEG566 mulf8u::@return //SEG567 [272] return rts @@ -11869,7 +11869,7 @@ muls8u: { //SEG575 [274] phi (word) muls8u::m#3 = (word) muls8u::m#1 [phi:muls8u::@2->muls8u::@2#1] -- register_copy //SEG576 muls8u::@2 b2: - //SEG577 [275] (word) muls8u::m#1 ? (word) muls8u::m#3 + (byte) muls8u::b#0 -- vwuz1=vwuz1_plus_vbuxx + //SEG577 [275] (word) muls8u::m#1 ← (word) muls8u::m#3 + (byte) muls8u::b#0 -- vwuz1=vwuz1_plus_vbuxx txa clc adc m @@ -11877,7 +11877,7 @@ muls8u: { bcc !+ inc m+1 !: - //SEG578 [276] (byte) muls8u::i#1 ? ++ (byte) muls8u::i#2 -- vbuyy=_inc_vbuyy + //SEG578 [276] (byte) muls8u::i#1 ← ++ (byte) muls8u::i#2 -- vbuyy=_inc_vbuyy iny //SEG579 [277] if((byte) muls8u::i#1!=(byte) muls8u::a#0) goto muls8u::@2 -- vbuyy_neq_vbuz1_then_la1 cpy a @@ -11924,7 +11924,7 @@ mulf_tables_cmp: { cmp (asm_sqr),y beq b2 //SEG596 mulf_tables_cmp::@3 - //SEG597 [283] *((const byte*) BGCOL#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG597 [283] *((const byte*) BGCOL#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta BGCOL //SEG598 [284] call print_str @@ -11941,7 +11941,7 @@ mulf_tables_cmp: { sta print_str.str+1 jsr print_str //SEG602 mulf_tables_cmp::@5 - //SEG603 [285] (word~) print_word::w#11 ? (word)(byte*) mulf_tables_cmp::asm_sqr#2 + //SEG603 [285] (word~) print_word::w#11 ← (word)(byte*) mulf_tables_cmp::asm_sqr#2 //SEG604 [286] call print_word //SEG605 [102] phi from mulf_tables_cmp::@5 to print_word [phi:mulf_tables_cmp::@5->print_word] //SEG606 [102] phi (byte*) print_char_cursor#139 = (byte*) print_char_cursor#132 [phi:mulf_tables_cmp::@5->print_word#0] -- register_copy @@ -11959,7 +11959,7 @@ mulf_tables_cmp: { sta print_str.str+1 jsr print_str //SEG614 mulf_tables_cmp::@7 - //SEG615 [289] (word~) print_word::w#12 ? (word)(byte*) mulf_tables_cmp::kc_sqr#2 -- vwuz1=vwuz2 + //SEG615 [289] (word~) print_word::w#12 ← (word)(byte*) mulf_tables_cmp::kc_sqr#2 -- vwuz1=vwuz2 lda kc_sqr sta print_word.w lda kc_sqr+1 @@ -11981,12 +11981,12 @@ mulf_tables_cmp: { rts //SEG625 mulf_tables_cmp::@2 b2: - //SEG626 [293] (byte*) mulf_tables_cmp::asm_sqr#1 ? ++ (byte*) mulf_tables_cmp::asm_sqr#2 -- pbuz1=_inc_pbuz1 + //SEG626 [293] (byte*) mulf_tables_cmp::asm_sqr#1 ← ++ (byte*) mulf_tables_cmp::asm_sqr#2 -- pbuz1=_inc_pbuz1 inc asm_sqr bne !+ inc asm_sqr+1 !: - //SEG627 [294] (byte*) mulf_tables_cmp::kc_sqr#1 ? ++ (byte*) mulf_tables_cmp::kc_sqr#2 -- pbuz1=_inc_pbuz1 + //SEG627 [294] (byte*) mulf_tables_cmp::kc_sqr#1 ← ++ (byte*) mulf_tables_cmp::kc_sqr#2 -- pbuz1=_inc_pbuz1 inc kc_sqr bne !+ inc kc_sqr+1 @@ -12026,7 +12026,7 @@ mulf_tables_cmp: { lda #>$400 sta print_line_cursor+1 jsr print_ln - //SEG641 [300] (byte*~) print_char_cursor#225 ? (byte*) print_line_cursor#1 -- pbuz1=pbuz2 + //SEG641 [300] (byte*~) print_char_cursor#225 ← (byte*) print_line_cursor#1 -- pbuz1=pbuz2 lda print_line_cursor sta print_char_cursor lda print_line_cursor+1 @@ -12084,16 +12084,16 @@ mulf_init_asm: { dey inx bne !- - //SEG647 [302] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_lo#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG647 [302] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_lo#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_lo sta mem - //SEG648 [303] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr1_hi#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG648 [303] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr1_hi#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr1_hi sta mem - //SEG649 [304] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_lo#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG649 [304] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_lo#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_lo sta mem - //SEG650 [305] *((const byte*) mulf_init_asm::mem#0) ? *((const byte[$200]) mula_sqr2_hi#0) -- _deref_pbuc1=_deref_pbuc2 + //SEG650 [305] *((const byte*) mulf_init_asm::mem#0) ← *((const byte[$200]) mula_sqr2_hi#0) -- _deref_pbuc1=_deref_pbuc2 lda mula_sqr2_hi sta mem //SEG651 mulf_init_asm::@return @@ -12138,18 +12138,18 @@ mulf_init: { //SEG665 [308] phi (byte) mulf_init::c#2 = (byte) mulf_init::c#1 [phi:mulf_init::@2->mulf_init::@1#4] -- register_copy //SEG666 mulf_init::@1 b1: - //SEG667 [309] (byte) mulf_init::c#1 ? ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx + //SEG667 [309] (byte) mulf_init::c#1 ← ++ (byte) mulf_init::c#2 -- vbuxx=_inc_vbuxx inx - //SEG668 [310] (byte~) mulf_init::$8 ? (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 + //SEG668 [310] (byte~) mulf_init::$8 ← (byte) mulf_init::c#1 & (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=vbuxx_band_vbuc1 txa and #1 //SEG669 [311] if((byte~) mulf_init::$8!=(byte/signed byte/word/signed word/dword/signed dword) 0) goto mulf_init::@2 -- vbuaa_neq_0_then_la1 cmp #0 bne b2 //SEG670 mulf_init::@3 - //SEG671 [312] (byte) mulf_init::x_2#1 ? ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 + //SEG671 [312] (byte) mulf_init::x_2#1 ← ++ (byte) mulf_init::x_2#3 -- vbuz1=_inc_vbuz1 inc x_2 - //SEG672 [313] (word) mulf_init::sqr#2 ? ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 + //SEG672 [313] (word) mulf_init::sqr#2 ← ++ (word) mulf_init::sqr#4 -- vwuz1=_inc_vwuz1 inc sqr bne !+ inc sqr+1 @@ -12159,21 +12159,21 @@ mulf_init: { //SEG675 [314] phi (word) mulf_init::sqr#3 = (word) mulf_init::sqr#4 [phi:mulf_init::@1/mulf_init::@3->mulf_init::@2#1] -- register_copy //SEG676 mulf_init::@2 b2: - //SEG677 [315] (byte~) mulf_init::$11 ? < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 + //SEG677 [315] (byte~) mulf_init::$11 ← < (word) mulf_init::sqr#3 -- vbuaa=_lo_vwuz1 lda sqr - //SEG678 [316] *((byte*) mulf_init::sqr1_lo#2) ? (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa + //SEG678 [316] *((byte*) mulf_init::sqr1_lo#2) ← (byte~) mulf_init::$11 -- _deref_pbuz1=vbuaa ldy #0 sta (sqr1_lo),y - //SEG679 [317] (byte~) mulf_init::$12 ? > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 + //SEG679 [317] (byte~) mulf_init::$12 ← > (word) mulf_init::sqr#3 -- vbuaa=_hi_vwuz1 lda sqr+1 - //SEG680 [318] *((byte*) mulf_init::sqr1_hi#2) ? (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa + //SEG680 [318] *((byte*) mulf_init::sqr1_hi#2) ← (byte~) mulf_init::$12 -- _deref_pbuz1=vbuaa sta (sqr1_hi),y - //SEG681 [319] (byte*) mulf_init::sqr1_hi#1 ? ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 + //SEG681 [319] (byte*) mulf_init::sqr1_hi#1 ← ++ (byte*) mulf_init::sqr1_hi#2 -- pbuz1=_inc_pbuz1 inc sqr1_hi bne !+ inc sqr1_hi+1 !: - //SEG682 [320] (word) mulf_init::sqr#1 ? (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 + //SEG682 [320] (word) mulf_init::sqr#1 ← (word) mulf_init::sqr#3 + (byte) mulf_init::x_2#2 -- vwuz1=vwuz1_plus_vbuz2 lda x_2 clc adc sqr @@ -12181,7 +12181,7 @@ mulf_init: { bcc !+ inc sqr+1 !: - //SEG683 [321] (byte*) mulf_init::sqr1_lo#1 ? ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 + //SEG683 [321] (byte*) mulf_init::sqr1_lo#1 ← ++ (byte*) mulf_init::sqr1_lo#2 -- pbuz1=_inc_pbuz1 inc sqr1_lo bne !+ inc sqr1_lo+1 @@ -12216,19 +12216,19 @@ mulf_init: { //SEG694 [323] phi (byte) mulf_init::x_255#2 = (byte) mulf_init::x_255#1 [phi:mulf_init::@5->mulf_init::@4#3] -- register_copy //SEG695 mulf_init::@4 b4: - //SEG696 [324] *((byte*) mulf_init::sqr2_lo#2) ? *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG696 [324] *((byte*) mulf_init::sqr2_lo#2) ← *((const byte[$200]) mulf_sqr1_lo#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_lo,x ldy #0 sta (sqr2_lo),y - //SEG697 [325] *((byte*) mulf_init::sqr2_hi#2) ? *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx + //SEG697 [325] *((byte*) mulf_init::sqr2_hi#2) ← *((const byte[$200]) mulf_sqr1_hi#0 + (byte) mulf_init::x_255#2) -- _deref_pbuz1=pbuc1_derefidx_vbuxx lda mulf_sqr1_hi,x sta (sqr2_hi),y - //SEG698 [326] (byte*) mulf_init::sqr2_hi#1 ? ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 + //SEG698 [326] (byte*) mulf_init::sqr2_hi#1 ← ++ (byte*) mulf_init::sqr2_hi#2 -- pbuz1=_inc_pbuz1 inc sqr2_hi bne !+ inc sqr2_hi+1 !: - //SEG699 [327] (byte) mulf_init::x_255#1 ? (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 + //SEG699 [327] (byte) mulf_init::x_255#1 ← (byte) mulf_init::x_255#2 + (byte) mulf_init::dir#2 -- vbuxx=vbuxx_plus_vbuz1 txa clc adc dir @@ -12242,7 +12242,7 @@ mulf_init: { sta dir //SEG703 mulf_init::@5 b5: - //SEG704 [330] (byte*) mulf_init::sqr2_lo#1 ? ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 + //SEG704 [330] (byte*) mulf_init::sqr2_lo#1 ← ++ (byte*) mulf_init::sqr2_lo#2 -- pbuz1=_inc_pbuz1 inc sqr2_lo bne !+ inc sqr2_lo+1 @@ -12255,11 +12255,11 @@ mulf_init: { cmp #print_cls::@1#0] -- register_copy //SEG720 print_cls::@1 b1: - //SEG721 [338] *((byte*) print_cls::sc#2) ? (byte) ' ' -- _deref_pbuz1=vbuc1 + //SEG721 [338] *((byte*) print_cls::sc#2) ← (byte) ' ' -- _deref_pbuz1=vbuc1 lda #' ' ldy #0 sta (sc),y - //SEG722 [339] (byte*) print_cls::sc#1 ? ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 + //SEG722 [339] (byte*) print_cls::sc#1 ← ++ (byte*) print_cls::sc#2 -- pbuz1=_inc_pbuz1 inc sc bne !+ inc sc+1 diff --git a/src/test/ref/true-inline-words.log b/src/test/ref/true-inline-words.log index 4f3303fff..ccd633255 100644 --- a/src/test/ref/true-inline-words.log +++ b/src/test/ref/true-inline-words.log @@ -6,24 +6,24 @@ CONTROL FLOW GRAPH SSA @begin: scope:[] from to:@1 main: scope:[main] from @1 - (byte[]) main::bs#0 ? { (byte) 'c', (byte) 'm' } - (byte) main::b#0 ? (byte/signed byte/word/signed word/dword/signed dword) 4 - (word) main::w#0 ? { (byte) main::b#0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1 } + (word) main::w#0 - (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$1 ? (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$0 + { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } - (word) main::w2#0 ? (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$1 - (byte*) main::sc#0 ? ((byte*)) (word) main::w2#0 - *((byte*) main::sc#0) ? *((byte[]) main::bs#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte*) main::pos#0 ? ((byte*)) (word/signed word/dword/signed dword) $501 - (byte*) main::bgcol#0 ? ((byte*)) (word/dword/signed dword) $d021 - (bool~) main::$2 ? *((byte*) main::pos#0) == (byte) 'm' + (byte[]) main::bs#0 ← { (byte) 'c', (byte) 'm' } + (byte) main::b#0 ← (byte/signed byte/word/signed word/dword/signed dword) 4 + (word) main::w#0 ← { (byte) main::b#0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 1 } + (word) main::w#0 + (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$1 ← (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$0 + { (byte/signed byte/word/signed word/dword/signed dword) 0, (byte/signed byte/word/signed word/dword/signed dword) 0 } + (word) main::w2#0 ← (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$1 + (byte*) main::sc#0 ← ((byte*)) (word) main::w2#0 + *((byte*) main::sc#0) ← *((byte[]) main::bs#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) + (byte*) main::pos#0 ← ((byte*)) (word/signed word/dword/signed dword) $501 + (byte*) main::bgcol#0 ← ((byte*)) (word/dword/signed dword) $d021 + (bool~) main::$2 ← *((byte*) main::pos#0) == (byte) 'm' if((bool~) main::$2) goto main::@1 to:main::@3 main::@1: scope:[main] from main - *((byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + *((byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 to:main::@return main::@3: scope:[main] from main - *((byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 + *((byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 to:main::@return main::@return: scope:[main] from main::@1 main::@3 return @@ -75,15 +75,15 @@ Constant (const byte*) main::bgcol#0 = ((byte*))$d021 Successful SSA optimization Pass2ConstantIdentification Consolidated array index constant in *(main::bs#0+1) Successful SSA optimization Pass2ConstantAdditionElimination -Fixing inline constructor with main::$3 ? main::b#0 w= 0 -Fixing inline constructor with main::$4 ? 1 w= 1 -Fixing inline constructor with main::$5 ? 0 w= 0 +Fixing inline constructor with main::$3 ← main::b#0 w= 0 +Fixing inline constructor with main::$4 ← 1 w= 1 +Fixing inline constructor with main::$5 ← 0 w= 0 Successful SSA optimization Pass2FixInlineConstructors -Inferred type updated to word/signed word/dword/signed dword in (word~) main::$3 ? (const byte) main::b#0 w= (byte/signed byte/word/signed word/dword/signed dword) 0 -Inferred type updated to word/signed word/dword/signed dword in (word~) main::$4 ? (byte/signed byte/word/signed word/dword/signed dword) 1 w= (byte/signed byte/word/signed word/dword/signed dword) 1 -Inferred type updated to word/signed dword/dword in [1] (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$0 ? (word/signed word/dword/signed dword~) main::$4 + (word) main::w#0 -Inferred type updated to byte/signed byte/word/signed word/dword/signed dword in (word~) main::$5 ? (byte/signed byte/word/signed word/dword/signed dword) 0 w= (byte/signed byte/word/signed word/dword/signed dword) 0 -Eliminating Noop Cast (byte*) main::sc#0 ? ((byte*)) (word) main::w2#0 +Inferred type updated to word/signed word/dword/signed dword in (word~) main::$3 ← (const byte) main::b#0 w= (byte/signed byte/word/signed word/dword/signed dword) 0 +Inferred type updated to word/signed word/dword/signed dword in (word~) main::$4 ← (byte/signed byte/word/signed word/dword/signed dword) 1 w= (byte/signed byte/word/signed word/dword/signed dword) 1 +Inferred type updated to word/signed dword/dword in [1] (byte/signed byte/word/signed word/dword/signed dword*/word~) main::$0 ← (word/signed word/dword/signed dword~) main::$4 + (word) main::w#0 +Inferred type updated to byte/signed byte/word/signed word/dword/signed dword in (word~) main::$5 ← (byte/signed byte/word/signed word/dword/signed dword) 0 w= (byte/signed byte/word/signed word/dword/signed dword) 0 +Eliminating Noop Cast (byte*) main::sc#0 ← ((byte*)) (word) main::w2#0 Successful SSA optimization Pass2NopCastElimination Alias (word) main::w#0 = (word/signed word/dword/signed dword~) main::$3 Successful SSA optimization Pass2AliasElimination @@ -126,17 +126,17 @@ FINAL CONTROL FLOW GRAPH @end: scope:[] from @1 [3] phi() main: scope:[main] from @1 - [4] *((byte*)(const word) main::w2#0) ? *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) + [4] *((byte*)(const word) main::w2#0) ← *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) [5] if(*((const byte*) main::pos#0)==(byte) 'm') goto main::@1 to:main::@2 main::@2: scope:[main] from main - [6] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 + [6] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 to:main::@return main::@return: scope:[main] from main::@1 main::@2 [7] return to:@return main::@1: scope:[main] from main - [8] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 + [8] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 to:main::@return @@ -183,7 +183,7 @@ main: { .label bgcol = $d021 .const w = b*$100 .const w2 = 1*$100+1+w+0 - //SEG10 [4] *((byte*)(const word) main::w2#0) ? *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- _deref_pbuc1=_deref_pbuc2 + //SEG10 [4] *((byte*)(const word) main::w2#0) ← *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- _deref_pbuc1=_deref_pbuc2 // implicit cast to (byte*) lda bs+1 sta w2 @@ -194,7 +194,7 @@ main: { jmp b2 //SEG12 main::@2 b2: - //SEG13 [6] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta bgcol jmp breturn @@ -204,7 +204,7 @@ main: { rts //SEG16 main::@1 b1: - //SEG17 [8] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG17 [8] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta bgcol jmp breturn @@ -212,10 +212,10 @@ main: { } REGISTER UPLIFT POTENTIAL REGISTERS -Statement [4] *((byte*)(const word) main::w2#0) ? *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [4] *((byte*)(const word) main::w2#0) ← *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) [ ] ( main:2 [ ] ) always clobbers reg byte a Statement [5] if(*((const byte*) main::pos#0)==(byte) 'm') goto main::@1 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [6] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) always clobbers reg byte a -Statement [8] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [6] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 [ ] ( main:2 [ ] ) always clobbers reg byte a +Statement [8] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 [ ] ( main:2 [ ] ) always clobbers reg byte a REGISTER UPLIFT SCOPES Uplift Scope [main] @@ -254,7 +254,7 @@ main: { .label bgcol = $d021 .const w = b*$100 .const w2 = 1*$100+1+w+0 - //SEG10 [4] *((byte*)(const word) main::w2#0) ? *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- _deref_pbuc1=_deref_pbuc2 + //SEG10 [4] *((byte*)(const word) main::w2#0) ← *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- _deref_pbuc1=_deref_pbuc2 // implicit cast to (byte*) lda bs+1 sta w2 @@ -265,7 +265,7 @@ main: { jmp b2 //SEG12 main::@2 b2: - //SEG13 [6] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta bgcol jmp breturn @@ -275,7 +275,7 @@ main: { rts //SEG16 main::@1 b1: - //SEG17 [8] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG17 [8] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta bgcol jmp breturn @@ -352,7 +352,7 @@ main: { .label bgcol = $d021 .const w = b*$100 .const w2 = 1*$100+1+w+0 - //SEG10 [4] *((byte*)(const word) main::w2#0) ? *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- _deref_pbuc1=_deref_pbuc2 + //SEG10 [4] *((byte*)(const word) main::w2#0) ← *((const byte[]) main::bs#0+(byte/signed byte/word/signed word/dword/signed dword) 1) -- _deref_pbuc1=_deref_pbuc2 // implicit cast to (byte*) lda bs+1 sta w2 @@ -361,7 +361,7 @@ main: { cmp pos beq b1 //SEG12 main::@2 - //SEG13 [6] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 + //SEG13 [6] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 2 -- _deref_pbuc1=vbuc2 lda #2 sta bgcol //SEG14 main::@return @@ -369,7 +369,7 @@ main: { rts //SEG16 main::@1 b1: - //SEG17 [8] *((const byte*) main::bgcol#0) ? (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 + //SEG17 [8] *((const byte*) main::bgcol#0) ← (byte/signed byte/word/signed word/dword/signed dword) 5 -- _deref_pbuc1=vbuc2 lda #5 sta bgcol rts diff --git a/src/test/ref/voronoi.log b/src/test/ref/voronoi.log index f1c0250ef..27c59855f 100644 --- a/src/test/ref/voronoi.log +++ b/src/test/ref/voronoi.log @@ -5,13 +5,13 @@ Identified constant variable (byte) numpoints CONTROL FLOW GRAPH SSA @begin: scope:[] from - (byte*) SCREEN#0 ? ((byte*)) (word/signed word/dword/signed dword) $400 - (byte*) COLORS#0 ? ((byte*)) (word/dword/signed dword) $d800 - (byte) FILL#0 ? (byte/word/signed word/dword/signed dword) $e6 - (byte) numpoints#0 ? (byte/signed byte/word/signed word/dword/signed dword) 6 - (byte[]) XPOS#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) $22, (byte/signed byte/word/signed word/dword/signed dword) $15, (byte/signed byte/word/signed word/dword/signed dword) $1f } - (byte[]) YPOS#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $16 } - (byte[]) COLS#0 ? { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7 } + (byte*) SCREEN#0 ← ((byte*)) (word/signed word/dword/signed dword) $400 + (byte*) COLORS#0 ← ((byte*)) (word/dword/signed dword) $d800 + (byte) FILL#0 ← (byte/word/signed word/dword/signed dword) $e6 + (byte) numpoints#0 ← (byte/signed byte/word/signed word/dword/signed dword) 6 + (byte[]) XPOS#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) $f, (byte/signed byte/word/signed word/dword/signed dword) 6, (byte/signed byte/word/signed word/dword/signed dword) $22, (byte/signed byte/word/signed word/dword/signed dword) $15, (byte/signed byte/word/signed word/dword/signed dword) $1f } + (byte[]) YPOS#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 8, (byte/signed byte/word/signed word/dword/signed dword) $e, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) $11, (byte/signed byte/word/signed word/dword/signed dword) $16 } + (byte[]) COLS#0 ← { (byte/signed byte/word/signed word/dword/signed dword) 1, (byte/signed byte/word/signed word/dword/signed dword) 2, (byte/signed byte/word/signed word/dword/signed dword) 3, (byte/signed byte/word/signed word/dword/signed dword) 4, (byte/signed byte/word/signed word/dword/signed dword) 5, (byte/signed byte/word/signed word/dword/signed dword) 7 } to:@5 main: scope:[main] from @5 call initscreen @@ -31,276 +31,276 @@ main::@return: scope:[main] from main::@5 return to:@return animate: scope:[animate] from main::@4 - (byte/signed word/word/dword/signed dword~) animate::$0 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) + (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte/signed word/word/dword/signed dword~) animate::$0 - (bool~) animate::$1 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $28 - (bool~) animate::$2 ? ! (bool~) animate::$1 + (byte/signed word/word/dword/signed dword~) animate::$0 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) + (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed word/word/dword/signed dword~) animate::$0 + (bool~) animate::$1 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $28 + (bool~) animate::$2 ← ! (bool~) animate::$1 if((bool~) animate::$2) goto animate::@1 to:animate::@6 animate::@1: scope:[animate] from animate animate::@6 - (byte/signed word/word/dword/signed dword~) animate::$3 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) + (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte/signed word/word/dword/signed dword~) animate::$3 - (bool~) animate::$4 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $19 - (bool~) animate::$5 ? ! (bool~) animate::$4 + (byte/signed word/word/dword/signed dword~) animate::$3 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) + (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed word/word/dword/signed dword~) animate::$3 + (bool~) animate::$4 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $19 + (bool~) animate::$5 ← ! (bool~) animate::$4 if((bool~) animate::$5) goto animate::@2 to:animate::@7 animate::@6: scope:[animate] from animate - *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:animate::@1 animate::@2: scope:[animate] from animate::@1 animate::@7 - (byte/signed word/word/dword/signed dword~) animate::$6 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed word/word/dword/signed dword~) animate::$6 - (bool~) animate::$7 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) == (byte/word/signed word/dword/signed dword) $ff - (bool~) animate::$8 ? ! (bool~) animate::$7 + (byte/signed word/word/dword/signed dword~) animate::$6 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed word/word/dword/signed dword~) animate::$6 + (bool~) animate::$7 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) == (byte/word/signed word/dword/signed dword) $ff + (bool~) animate::$8 ← ! (bool~) animate::$7 if((bool~) animate::$8) goto animate::@3 to:animate::@8 animate::@7: scope:[animate] from animate::@1 - *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:animate::@2 animate::@3: scope:[animate] from animate::@2 animate::@8 - (byte/signed word/word/dword/signed dword~) animate::$9 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed word/word/dword/signed dword~) animate::$9 - (bool~) animate::$10 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) == (byte/signed byte/word/signed word/dword/signed dword) $19 - (bool~) animate::$11 ? ! (bool~) animate::$10 + (byte/signed word/word/dword/signed dword~) animate::$9 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed word/word/dword/signed dword~) animate::$9 + (bool~) animate::$10 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) == (byte/signed byte/word/signed word/dword/signed dword) $19 + (bool~) animate::$11 ← ! (bool~) animate::$10 if((bool~) animate::$11) goto animate::@4 to:animate::@9 animate::@8: scope:[animate] from animate::@2 - *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed byte/word/signed word/dword/signed dword) $28 + *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) $28 to:animate::@3 animate::@4: scope:[animate] from animate::@3 animate::@9 - (byte/signed word/word/dword/signed dword~) animate::$12 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 - *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$12 - (bool~) animate::$13 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) == (byte/word/signed word/dword/signed dword) $ff - (bool~) animate::$14 ? ! (bool~) animate::$13 + (byte/signed word/word/dword/signed dword~) animate::$12 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 + *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$12 + (bool~) animate::$13 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) == (byte/word/signed word/dword/signed dword) $ff + (bool~) animate::$14 ← ! (bool~) animate::$13 if((bool~) animate::$14) goto animate::@5 to:animate::@10 animate::@9: scope:[animate] from animate::@3 - *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:animate::@4 animate::@5: scope:[animate] from animate::@4 to:animate::@return animate::@10: scope:[animate] from animate::@4 - *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed byte/word/signed word/dword/signed dword) $19 - (byte/signed word/word/dword/signed dword~) animate::$15 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 - *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$15 - (bool~) animate::$16 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) >= (byte/signed byte/word/signed word/dword/signed dword) $28 - (bool~) animate::$17 ? ! (bool~) animate::$16 + *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) $19 + (byte/signed word/word/dword/signed dword~) animate::$15 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 + *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$15 + (bool~) animate::$16 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) >= (byte/signed byte/word/signed word/dword/signed dword) $28 + (bool~) animate::$17 ← ! (bool~) animate::$16 if((bool~) animate::$17) goto animate::@12 to:animate::@11 animate::@12: scope:[animate] from animate::@10 to:animate::@return animate::@11: scope:[animate] from animate::@10 - (byte/signed word/word/dword/signed dword~) animate::$18 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 - *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$18 + (byte/signed word/word/dword/signed dword~) animate::$18 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 + *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$18 to:animate::@return animate::@return: scope:[animate] from animate::@11 animate::@12 animate::@5 return to:@return initscreen: scope:[initscreen] from main - (byte*) initscreen::screen#0 ? (byte*) SCREEN#0 + (byte*) initscreen::screen#0 ← (byte*) SCREEN#0 to:initscreen::@1 initscreen::@1: scope:[initscreen] from initscreen initscreen::@1 - (byte*) initscreen::screen#2 ? phi( initscreen/(byte*) initscreen::screen#0 initscreen::@1/(byte*) initscreen::screen#1 ) - *((byte*) initscreen::screen#2) ? (byte) FILL#0 - (byte*) initscreen::screen#1 ? ++ (byte*) initscreen::screen#2 - (byte*~) initscreen::$0 ? (byte*) SCREEN#0 + (word/signed word/dword/signed dword) $3e8 - (bool~) initscreen::$1 ? (byte*) initscreen::screen#1 < (byte*~) initscreen::$0 + (byte*) initscreen::screen#2 ← phi( initscreen/(byte*) initscreen::screen#0 initscreen::@1/(byte*) initscreen::screen#1 ) + *((byte*) initscreen::screen#2) ← (byte) FILL#0 + (byte*) initscreen::screen#1 ← ++ (byte*) initscreen::screen#2 + (byte*~) initscreen::$0 ← (byte*) SCREEN#0 + (word/signed word/dword/signed dword) $3e8 + (bool~) initscreen::$1 ← (byte*) initscreen::screen#1 < (byte*~) initscreen::$0 if((bool~) initscreen::$1) goto initscreen::@1 to:initscreen::@return initscreen::@return: scope:[initscreen] from initscreen::@1 return to:@return render: scope:[render] from main::@1 - (byte*) render::colline#0 ? (byte*) COLORS#0 - (byte) render::y#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) render::colline#0 ← (byte*) COLORS#0 + (byte) render::y#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render::@1 render::@1: scope:[render] from render render::@3 - (byte*) render::colline#5 ? phi( render/(byte*) render::colline#0 render::@3/(byte*) render::colline#1 ) - (byte) render::y#4 ? phi( render/(byte) render::y#0 render::@3/(byte) render::y#1 ) - (byte) render::x#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte*) render::colline#5 ← phi( render/(byte*) render::colline#0 render::@3/(byte*) render::colline#1 ) + (byte) render::y#4 ← phi( render/(byte) render::y#0 render::@3/(byte) render::y#1 ) + (byte) render::x#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:render::@2 render::@2: scope:[render] from render::@1 render::@5 - (byte*) render::colline#4 ? phi( render::@1/(byte*) render::colline#5 render::@5/(byte*) render::colline#2 ) - (byte) render::y#2 ? phi( render::@1/(byte) render::y#4 render::@5/(byte) render::y#5 ) - (byte) render::x#2 ? phi( render::@1/(byte) render::x#0 render::@5/(byte) render::x#1 ) - (byte) findcol::x#0 ? (byte) render::x#2 - (byte) findcol::y#0 ? (byte) render::y#2 + (byte*) render::colline#4 ← phi( render::@1/(byte*) render::colline#5 render::@5/(byte*) render::colline#2 ) + (byte) render::y#2 ← phi( render::@1/(byte) render::y#4 render::@5/(byte) render::y#5 ) + (byte) render::x#2 ← phi( render::@1/(byte) render::x#0 render::@5/(byte) render::x#1 ) + (byte) findcol::x#0 ← (byte) render::x#2 + (byte) findcol::y#0 ← (byte) render::y#2 call findcol - (byte) findcol::return#0 ? (byte) findcol::return#2 + (byte) findcol::return#0 ← (byte) findcol::return#2 to:render::@5 render::@5: scope:[render] from render::@2 - (byte) render::y#5 ? phi( render::@2/(byte) render::y#2 ) - (byte) render::x#3 ? phi( render::@2/(byte) render::x#2 ) - (byte*) render::colline#2 ? phi( render::@2/(byte*) render::colline#4 ) - (byte) findcol::return#4 ? phi( render::@2/(byte) findcol::return#0 ) - (byte~) render::$0 ? (byte) findcol::return#4 - (byte) render::col#0 ? (byte~) render::$0 - *((byte*) render::colline#2 + (byte) render::x#3) ? (byte) render::col#0 - (byte) render::x#1 ? (byte) render::x#3 + rangenext(0,$27) - (bool~) render::$1 ? (byte) render::x#1 != rangelast(0,$27) + (byte) render::y#5 ← phi( render::@2/(byte) render::y#2 ) + (byte) render::x#3 ← phi( render::@2/(byte) render::x#2 ) + (byte*) render::colline#2 ← phi( render::@2/(byte*) render::colline#4 ) + (byte) findcol::return#4 ← phi( render::@2/(byte) findcol::return#0 ) + (byte~) render::$0 ← (byte) findcol::return#4 + (byte) render::col#0 ← (byte~) render::$0 + *((byte*) render::colline#2 + (byte) render::x#3) ← (byte) render::col#0 + (byte) render::x#1 ← (byte) render::x#3 + rangenext(0,$27) + (bool~) render::$1 ← (byte) render::x#1 != rangelast(0,$27) if((bool~) render::$1) goto render::@2 to:render::@3 render::@3: scope:[render] from render::@5 - (byte) render::y#3 ? phi( render::@5/(byte) render::y#5 ) - (byte*) render::colline#3 ? phi( render::@5/(byte*) render::colline#2 ) - (byte*~) render::$2 ? (byte*) render::colline#3 + (byte/signed byte/word/signed word/dword/signed dword) $28 - (byte*) render::colline#1 ? (byte*~) render::$2 - (byte) render::y#1 ? (byte) render::y#3 + rangenext(0,$18) - (bool~) render::$3 ? (byte) render::y#1 != rangelast(0,$18) + (byte) render::y#3 ← phi( render::@5/(byte) render::y#5 ) + (byte*) render::colline#3 ← phi( render::@5/(byte*) render::colline#2 ) + (byte*~) render::$2 ← (byte*) render::colline#3 + (byte/signed byte/word/signed word/dword/signed dword) $28 + (byte*) render::colline#1 ← (byte*~) render::$2 + (byte) render::y#1 ← (byte) render::y#3 + rangenext(0,$18) + (bool~) render::$3 ← (byte) render::y#1 != rangelast(0,$18) if((bool~) render::$3) goto render::@1 to:render::@return render::@return: scope:[render] from render::@3 return to:@return findcol: scope:[findcol] from render::@2 - (byte) findcol::y#8 ? phi( render::@2/(byte) findcol::y#0 ) - (byte) findcol::x#5 ? phi( render::@2/(byte) findcol::x#0 ) - (byte) findcol::mindiff#0 ? (byte/word/signed word/dword/signed dword) $ff - (byte) findcol::mincol#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (byte) findcol::i#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) findcol::y#8 ← phi( render::@2/(byte) findcol::y#0 ) + (byte) findcol::x#5 ← phi( render::@2/(byte) findcol::x#0 ) + (byte) findcol::mindiff#0 ← (byte/word/signed word/dword/signed dword) $ff + (byte) findcol::mincol#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) findcol::i#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:findcol::@1 findcol::@1: scope:[findcol] from findcol findcol::@8 - (byte) findcol::mincol#11 ? phi( findcol/(byte) findcol::mincol#0 findcol::@8/(byte) findcol::mincol#3 ) - (byte) findcol::mindiff#9 ? phi( findcol/(byte) findcol::mindiff#0 findcol::@8/(byte) findcol::mindiff#11 ) - (byte) findcol::y#5 ? phi( findcol/(byte) findcol::y#8 findcol::@8/(byte) findcol::y#9 ) - (byte) findcol::x#1 ? phi( findcol/(byte) findcol::x#5 findcol::@8/(byte) findcol::x#6 ) - (byte) findcol::i#2 ? phi( findcol/(byte) findcol::i#0 findcol::@8/(byte) findcol::i#1 ) - (byte) findcol::xp#0 ? *((byte[]) XPOS#0 + (byte) findcol::i#2) - (byte) findcol::yp#0 ? *((byte[]) YPOS#0 + (byte) findcol::i#2) - (bool~) findcol::$0 ? (byte) findcol::x#1 == (byte) findcol::xp#0 - (bool~) findcol::$1 ? ! (bool~) findcol::$0 + (byte) findcol::mincol#11 ← phi( findcol/(byte) findcol::mincol#0 findcol::@8/(byte) findcol::mincol#3 ) + (byte) findcol::mindiff#9 ← phi( findcol/(byte) findcol::mindiff#0 findcol::@8/(byte) findcol::mindiff#11 ) + (byte) findcol::y#5 ← phi( findcol/(byte) findcol::y#8 findcol::@8/(byte) findcol::y#9 ) + (byte) findcol::x#1 ← phi( findcol/(byte) findcol::x#5 findcol::@8/(byte) findcol::x#6 ) + (byte) findcol::i#2 ← phi( findcol/(byte) findcol::i#0 findcol::@8/(byte) findcol::i#1 ) + (byte) findcol::xp#0 ← *((byte[]) XPOS#0 + (byte) findcol::i#2) + (byte) findcol::yp#0 ← *((byte[]) YPOS#0 + (byte) findcol::i#2) + (bool~) findcol::$0 ← (byte) findcol::x#1 == (byte) findcol::xp#0 + (bool~) findcol::$1 ← ! (bool~) findcol::$0 if((bool~) findcol::$1) goto findcol::@2 to:findcol::@9 findcol::@2: scope:[findcol] from findcol::@1 findcol::@3 - (byte) findcol::mincol#10 ? phi( findcol::@1/(byte) findcol::mincol#11 findcol::@3/(byte) findcol::mincol#12 ) - (byte) findcol::i#11 ? phi( findcol::@1/(byte) findcol::i#2 findcol::@3/(byte) findcol::i#12 ) - (byte) findcol::mindiff#8 ? phi( findcol::@1/(byte) findcol::mindiff#9 findcol::@3/(byte) findcol::mindiff#10 ) - (byte) findcol::yp#7 ? phi( findcol::@1/(byte) findcol::yp#0 findcol::@3/(byte) findcol::yp#8 ) - (byte) findcol::y#10 ? phi( findcol::@1/(byte) findcol::y#5 findcol::@3/(byte) findcol::y#11 ) - (byte) findcol::xp#1 ? phi( findcol::@1/(byte) findcol::xp#0 findcol::@3/(byte) findcol::xp#4 ) - (byte) findcol::x#2 ? phi( findcol::@1/(byte) findcol::x#1 findcol::@3/(byte) findcol::x#7 ) - (byte) findcol::diff#0 ? (byte/signed byte/word/signed word/dword/signed dword) 0 - (bool~) findcol::$4 ? (byte) findcol::x#2 < (byte) findcol::xp#1 + (byte) findcol::mincol#10 ← phi( findcol::@1/(byte) findcol::mincol#11 findcol::@3/(byte) findcol::mincol#12 ) + (byte) findcol::i#11 ← phi( findcol::@1/(byte) findcol::i#2 findcol::@3/(byte) findcol::i#12 ) + (byte) findcol::mindiff#8 ← phi( findcol::@1/(byte) findcol::mindiff#9 findcol::@3/(byte) findcol::mindiff#10 ) + (byte) findcol::yp#7 ← phi( findcol::@1/(byte) findcol::yp#0 findcol::@3/(byte) findcol::yp#8 ) + (byte) findcol::y#10 ← phi( findcol::@1/(byte) findcol::y#5 findcol::@3/(byte) findcol::y#11 ) + (byte) findcol::xp#1 ← phi( findcol::@1/(byte) findcol::xp#0 findcol::@3/(byte) findcol::xp#4 ) + (byte) findcol::x#2 ← phi( findcol::@1/(byte) findcol::x#1 findcol::@3/(byte) findcol::x#7 ) + (byte) findcol::diff#0 ← (byte/signed byte/word/signed word/dword/signed dword) 0 + (bool~) findcol::$4 ← (byte) findcol::x#2 < (byte) findcol::xp#1 if((bool~) findcol::$4) goto findcol::@4 to:findcol::@12 findcol::@9: scope:[findcol] from findcol::@1 - (byte) findcol::mincol#13 ? phi( findcol::@1/(byte) findcol::mincol#11 ) - (byte) findcol::i#13 ? phi( findcol::@1/(byte) findcol::i#2 ) - (byte) findcol::mindiff#12 ? phi( findcol::@1/(byte) findcol::mindiff#9 ) - (byte) findcol::xp#5 ? phi( findcol::@1/(byte) findcol::xp#0 ) - (byte) findcol::x#8 ? phi( findcol::@1/(byte) findcol::x#1 ) - (byte) findcol::yp#1 ? phi( findcol::@1/(byte) findcol::yp#0 ) - (byte) findcol::y#1 ? phi( findcol::@1/(byte) findcol::y#5 ) - (bool~) findcol::$2 ? (byte) findcol::y#1 == (byte) findcol::yp#1 - (bool~) findcol::$3 ? ! (bool~) findcol::$2 + (byte) findcol::mincol#13 ← phi( findcol::@1/(byte) findcol::mincol#11 ) + (byte) findcol::i#13 ← phi( findcol::@1/(byte) findcol::i#2 ) + (byte) findcol::mindiff#12 ← phi( findcol::@1/(byte) findcol::mindiff#9 ) + (byte) findcol::xp#5 ← phi( findcol::@1/(byte) findcol::xp#0 ) + (byte) findcol::x#8 ← phi( findcol::@1/(byte) findcol::x#1 ) + (byte) findcol::yp#1 ← phi( findcol::@1/(byte) findcol::yp#0 ) + (byte) findcol::y#1 ← phi( findcol::@1/(byte) findcol::y#5 ) + (bool~) findcol::$2 ← (byte) findcol::y#1 == (byte) findcol::yp#1 + (bool~) findcol::$3 ← ! (bool~) findcol::$2 if((bool~) findcol::$3) goto findcol::@3 to:findcol::@10 findcol::@3: scope:[findcol] from findcol::@9 - (byte) findcol::mincol#12 ? phi( findcol::@9/(byte) findcol::mincol#13 ) - (byte) findcol::i#12 ? phi( findcol::@9/(byte) findcol::i#13 ) - (byte) findcol::mindiff#10 ? phi( findcol::@9/(byte) findcol::mindiff#12 ) - (byte) findcol::yp#8 ? phi( findcol::@9/(byte) findcol::yp#1 ) - (byte) findcol::y#11 ? phi( findcol::@9/(byte) findcol::y#1 ) - (byte) findcol::xp#4 ? phi( findcol::@9/(byte) findcol::xp#5 ) - (byte) findcol::x#7 ? phi( findcol::@9/(byte) findcol::x#8 ) + (byte) findcol::mincol#12 ← phi( findcol::@9/(byte) findcol::mincol#13 ) + (byte) findcol::i#12 ← phi( findcol::@9/(byte) findcol::i#13 ) + (byte) findcol::mindiff#10 ← phi( findcol::@9/(byte) findcol::mindiff#12 ) + (byte) findcol::yp#8 ← phi( findcol::@9/(byte) findcol::yp#1 ) + (byte) findcol::y#11 ← phi( findcol::@9/(byte) findcol::y#1 ) + (byte) findcol::xp#4 ← phi( findcol::@9/(byte) findcol::xp#5 ) + (byte) findcol::x#7 ← phi( findcol::@9/(byte) findcol::x#8 ) to:findcol::@2 findcol::@10: scope:[findcol] from findcol::@9 - (byte) findcol::return#1 ? (byte/signed byte/word/signed word/dword/signed dword) 0 + (byte) findcol::return#1 ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:findcol::@return findcol::@return: scope:[findcol] from findcol::@10 findcol::@17 - (byte) findcol::return#5 ? phi( findcol::@10/(byte) findcol::return#1 findcol::@17/(byte) findcol::return#3 ) - (byte) findcol::return#2 ? (byte) findcol::return#5 + (byte) findcol::return#5 ← phi( findcol::@10/(byte) findcol::return#1 findcol::@17/(byte) findcol::return#3 ) + (byte) findcol::return#2 ← (byte) findcol::return#5 return to:@return findcol::@4: scope:[findcol] from findcol::@2 - (byte) findcol::mincol#9 ? phi( findcol::@2/(byte) findcol::mincol#10 ) - (byte) findcol::i#10 ? phi( findcol::@2/(byte) findcol::i#11 ) - (byte) findcol::mindiff#7 ? phi( findcol::@2/(byte) findcol::mindiff#8 ) - (byte) findcol::yp#6 ? phi( findcol::@2/(byte) findcol::yp#7 ) - (byte) findcol::y#7 ? phi( findcol::@2/(byte) findcol::y#10 ) - (byte) findcol::x#3 ? phi( findcol::@2/(byte) findcol::x#2 ) - (byte) findcol::xp#2 ? phi( findcol::@2/(byte) findcol::xp#1 ) - (byte~) findcol::$6 ? (byte) findcol::xp#2 - (byte) findcol::x#3 - (byte) findcol::diff#1 ? (byte~) findcol::$6 + (byte) findcol::mincol#9 ← phi( findcol::@2/(byte) findcol::mincol#10 ) + (byte) findcol::i#10 ← phi( findcol::@2/(byte) findcol::i#11 ) + (byte) findcol::mindiff#7 ← phi( findcol::@2/(byte) findcol::mindiff#8 ) + (byte) findcol::yp#6 ← phi( findcol::@2/(byte) findcol::yp#7 ) + (byte) findcol::y#7 ← phi( findcol::@2/(byte) findcol::y#10 ) + (byte) findcol::x#3 ← phi( findcol::@2/(byte) findcol::x#2 ) + (byte) findcol::xp#2 ← phi( findcol::@2/(byte) findcol::xp#1 ) + (byte~) findcol::$6 ← (byte) findcol::xp#2 - (byte) findcol::x#3 + (byte) findcol::diff#1 ← (byte~) findcol::$6 to:findcol::@5 findcol::@12: scope:[findcol] from findcol::@2 - (byte) findcol::mincol#8 ? phi( findcol::@2/(byte) findcol::mincol#10 ) - (byte) findcol::i#9 ? phi( findcol::@2/(byte) findcol::i#11 ) - (byte) findcol::mindiff#6 ? phi( findcol::@2/(byte) findcol::mindiff#8 ) - (byte) findcol::yp#5 ? phi( findcol::@2/(byte) findcol::yp#7 ) - (byte) findcol::y#6 ? phi( findcol::@2/(byte) findcol::y#10 ) - (byte) findcol::xp#3 ? phi( findcol::@2/(byte) findcol::xp#1 ) - (byte) findcol::x#4 ? phi( findcol::@2/(byte) findcol::x#2 ) - (byte~) findcol::$5 ? (byte) findcol::x#4 - (byte) findcol::xp#3 - (byte) findcol::diff#2 ? (byte~) findcol::$5 + (byte) findcol::mincol#8 ← phi( findcol::@2/(byte) findcol::mincol#10 ) + (byte) findcol::i#9 ← phi( findcol::@2/(byte) findcol::i#11 ) + (byte) findcol::mindiff#6 ← phi( findcol::@2/(byte) findcol::mindiff#8 ) + (byte) findcol::yp#5 ← phi( findcol::@2/(byte) findcol::yp#7 ) + (byte) findcol::y#6 ← phi( findcol::@2/(byte) findcol::y#10 ) + (byte) findcol::xp#3 ← phi( findcol::@2/(byte) findcol::xp#1 ) + (byte) findcol::x#4 ← phi( findcol::@2/(byte) findcol::x#2 ) + (byte~) findcol::$5 ← (byte) findcol::x#4 - (byte) findcol::xp#3 + (byte) findcol::diff#2 ← (byte~) findcol::$5 to:findcol::@5 findcol::@5: scope:[findcol] from findcol::@12 findcol::@4 - (byte) findcol::mincol#7 ? phi( findcol::@12/(byte) findcol::mincol#8 findcol::@4/(byte) findcol::mincol#9 ) - (byte) findcol::x#13 ? phi( findcol::@12/(byte) findcol::x#4 findcol::@4/(byte) findcol::x#3 ) - (byte) findcol::i#8 ? phi( findcol::@12/(byte) findcol::i#9 findcol::@4/(byte) findcol::i#10 ) - (byte) findcol::mindiff#5 ? phi( findcol::@12/(byte) findcol::mindiff#6 findcol::@4/(byte) findcol::mindiff#7 ) - (byte) findcol::diff#9 ? phi( findcol::@12/(byte) findcol::diff#2 findcol::@4/(byte) findcol::diff#1 ) - (byte) findcol::yp#2 ? phi( findcol::@12/(byte) findcol::yp#5 findcol::@4/(byte) findcol::yp#6 ) - (byte) findcol::y#2 ? phi( findcol::@12/(byte) findcol::y#6 findcol::@4/(byte) findcol::y#7 ) - (bool~) findcol::$7 ? (byte) findcol::y#2 < (byte) findcol::yp#2 + (byte) findcol::mincol#7 ← phi( findcol::@12/(byte) findcol::mincol#8 findcol::@4/(byte) findcol::mincol#9 ) + (byte) findcol::x#13 ← phi( findcol::@12/(byte) findcol::x#4 findcol::@4/(byte) findcol::x#3 ) + (byte) findcol::i#8 ← phi( findcol::@12/(byte) findcol::i#9 findcol::@4/(byte) findcol::i#10 ) + (byte) findcol::mindiff#5 ← phi( findcol::@12/(byte) findcol::mindiff#6 findcol::@4/(byte) findcol::mindiff#7 ) + (byte) findcol::diff#9 ← phi( findcol::@12/(byte) findcol::diff#2 findcol::@4/(byte) findcol::diff#1 ) + (byte) findcol::yp#2 ← phi( findcol::@12/(byte) findcol::yp#5 findcol::@4/(byte) findcol::yp#6 ) + (byte) findcol::y#2 ← phi( findcol::@12/(byte) findcol::y#6 findcol::@4/(byte) findcol::y#7 ) + (bool~) findcol::$7 ← (byte) findcol::y#2 < (byte) findcol::yp#2 if((bool~) findcol::$7) goto findcol::@6 to:findcol::@14 findcol::@6: scope:[findcol] from findcol::@5 - (byte) findcol::mincol#6 ? phi( findcol::@5/(byte) findcol::mincol#7 ) - (byte) findcol::x#12 ? phi( findcol::@5/(byte) findcol::x#13 ) - (byte) findcol::i#7 ? phi( findcol::@5/(byte) findcol::i#8 ) - (byte) findcol::mindiff#4 ? phi( findcol::@5/(byte) findcol::mindiff#5 ) - (byte) findcol::diff#5 ? phi( findcol::@5/(byte) findcol::diff#9 ) - (byte) findcol::y#3 ? phi( findcol::@5/(byte) findcol::y#2 ) - (byte) findcol::yp#3 ? phi( findcol::@5/(byte) findcol::yp#2 ) - (byte~) findcol::$10 ? (byte) findcol::yp#3 - (byte) findcol::y#3 - (byte~) findcol::$11 ? (byte) findcol::diff#5 + (byte~) findcol::$10 - (byte) findcol::diff#3 ? (byte~) findcol::$11 + (byte) findcol::mincol#6 ← phi( findcol::@5/(byte) findcol::mincol#7 ) + (byte) findcol::x#12 ← phi( findcol::@5/(byte) findcol::x#13 ) + (byte) findcol::i#7 ← phi( findcol::@5/(byte) findcol::i#8 ) + (byte) findcol::mindiff#4 ← phi( findcol::@5/(byte) findcol::mindiff#5 ) + (byte) findcol::diff#5 ← phi( findcol::@5/(byte) findcol::diff#9 ) + (byte) findcol::y#3 ← phi( findcol::@5/(byte) findcol::y#2 ) + (byte) findcol::yp#3 ← phi( findcol::@5/(byte) findcol::yp#2 ) + (byte~) findcol::$10 ← (byte) findcol::yp#3 - (byte) findcol::y#3 + (byte~) findcol::$11 ← (byte) findcol::diff#5 + (byte~) findcol::$10 + (byte) findcol::diff#3 ← (byte~) findcol::$11 to:findcol::@7 findcol::@14: scope:[findcol] from findcol::@5 - (byte) findcol::mincol#5 ? phi( findcol::@5/(byte) findcol::mincol#7 ) - (byte) findcol::x#11 ? phi( findcol::@5/(byte) findcol::x#13 ) - (byte) findcol::i#6 ? phi( findcol::@5/(byte) findcol::i#8 ) - (byte) findcol::mindiff#3 ? phi( findcol::@5/(byte) findcol::mindiff#5 ) - (byte) findcol::diff#6 ? phi( findcol::@5/(byte) findcol::diff#9 ) - (byte) findcol::yp#4 ? phi( findcol::@5/(byte) findcol::yp#2 ) - (byte) findcol::y#4 ? phi( findcol::@5/(byte) findcol::y#2 ) - (byte~) findcol::$8 ? (byte) findcol::y#4 - (byte) findcol::yp#4 - (byte~) findcol::$9 ? (byte) findcol::diff#6 + (byte~) findcol::$8 - (byte) findcol::diff#4 ? (byte~) findcol::$9 + (byte) findcol::mincol#5 ← phi( findcol::@5/(byte) findcol::mincol#7 ) + (byte) findcol::x#11 ← phi( findcol::@5/(byte) findcol::x#13 ) + (byte) findcol::i#6 ← phi( findcol::@5/(byte) findcol::i#8 ) + (byte) findcol::mindiff#3 ← phi( findcol::@5/(byte) findcol::mindiff#5 ) + (byte) findcol::diff#6 ← phi( findcol::@5/(byte) findcol::diff#9 ) + (byte) findcol::yp#4 ← phi( findcol::@5/(byte) findcol::yp#2 ) + (byte) findcol::y#4 ← phi( findcol::@5/(byte) findcol::y#2 ) + (byte~) findcol::$8 ← (byte) findcol::y#4 - (byte) findcol::yp#4 + (byte~) findcol::$9 ← (byte) findcol::diff#6 + (byte~) findcol::$8 + (byte) findcol::diff#4 ← (byte~) findcol::$9 to:findcol::@7 findcol::@7: scope:[findcol] from findcol::@14 findcol::@6 - (byte) findcol::y#13 ? phi( findcol::@14/(byte) findcol::y#4 findcol::@6/(byte) findcol::y#3 ) - (byte) findcol::mincol#4 ? phi( findcol::@14/(byte) findcol::mincol#5 findcol::@6/(byte) findcol::mincol#6 ) - (byte) findcol::x#10 ? phi( findcol::@14/(byte) findcol::x#11 findcol::@6/(byte) findcol::x#12 ) - (byte) findcol::i#5 ? phi( findcol::@14/(byte) findcol::i#6 findcol::@6/(byte) findcol::i#7 ) - (byte) findcol::mindiff#2 ? phi( findcol::@14/(byte) findcol::mindiff#3 findcol::@6/(byte) findcol::mindiff#4 ) - (byte) findcol::diff#7 ? phi( findcol::@14/(byte) findcol::diff#4 findcol::@6/(byte) findcol::diff#3 ) - (bool~) findcol::$12 ? (byte) findcol::diff#7 < (byte) findcol::mindiff#2 - (bool~) findcol::$13 ? ! (bool~) findcol::$12 + (byte) findcol::y#13 ← phi( findcol::@14/(byte) findcol::y#4 findcol::@6/(byte) findcol::y#3 ) + (byte) findcol::mincol#4 ← phi( findcol::@14/(byte) findcol::mincol#5 findcol::@6/(byte) findcol::mincol#6 ) + (byte) findcol::x#10 ← phi( findcol::@14/(byte) findcol::x#11 findcol::@6/(byte) findcol::x#12 ) + (byte) findcol::i#5 ← phi( findcol::@14/(byte) findcol::i#6 findcol::@6/(byte) findcol::i#7 ) + (byte) findcol::mindiff#2 ← phi( findcol::@14/(byte) findcol::mindiff#3 findcol::@6/(byte) findcol::mindiff#4 ) + (byte) findcol::diff#7 ← phi( findcol::@14/(byte) findcol::diff#4 findcol::@6/(byte) findcol::diff#3 ) + (bool~) findcol::$12 ← (byte) findcol::diff#7 < (byte) findcol::mindiff#2 + (bool~) findcol::$13 ← ! (bool~) findcol::$12 if((bool~) findcol::$13) goto findcol::@8 to:findcol::@16 findcol::@8: scope:[findcol] from findcol::@16 findcol::@7 - (byte) findcol::mindiff#11 ? phi( findcol::@16/(byte) findcol::mindiff#1 findcol::@7/(byte) findcol::mindiff#2 ) - (byte) findcol::y#9 ? phi( findcol::@16/(byte) findcol::y#12 findcol::@7/(byte) findcol::y#13 ) - (byte) findcol::mincol#3 ? phi( findcol::@16/(byte) findcol::mincol#1 findcol::@7/(byte) findcol::mincol#4 ) - (byte) findcol::x#6 ? phi( findcol::@16/(byte) findcol::x#9 findcol::@7/(byte) findcol::x#10 ) - (byte) findcol::i#3 ? phi( findcol::@16/(byte) findcol::i#4 findcol::@7/(byte) findcol::i#5 ) - (byte) findcol::i#1 ? ++ (byte) findcol::i#3 - (bool~) findcol::$14 ? (byte) findcol::i#1 < (byte) numpoints#0 + (byte) findcol::mindiff#11 ← phi( findcol::@16/(byte) findcol::mindiff#1 findcol::@7/(byte) findcol::mindiff#2 ) + (byte) findcol::y#9 ← phi( findcol::@16/(byte) findcol::y#12 findcol::@7/(byte) findcol::y#13 ) + (byte) findcol::mincol#3 ← phi( findcol::@16/(byte) findcol::mincol#1 findcol::@7/(byte) findcol::mincol#4 ) + (byte) findcol::x#6 ← phi( findcol::@16/(byte) findcol::x#9 findcol::@7/(byte) findcol::x#10 ) + (byte) findcol::i#3 ← phi( findcol::@16/(byte) findcol::i#4 findcol::@7/(byte) findcol::i#5 ) + (byte) findcol::i#1 ← ++ (byte) findcol::i#3 + (bool~) findcol::$14 ← (byte) findcol::i#1 < (byte) numpoints#0 if((bool~) findcol::$14) goto findcol::@1 to:findcol::@17 findcol::@16: scope:[findcol] from findcol::@7 - (byte) findcol::y#12 ? phi( findcol::@7/(byte) findcol::y#13 ) - (byte) findcol::x#9 ? phi( findcol::@7/(byte) findcol::x#10 ) - (byte) findcol::i#4 ? phi( findcol::@7/(byte) findcol::i#5 ) - (byte) findcol::diff#8 ? phi( findcol::@7/(byte) findcol::diff#7 ) - (byte) findcol::mindiff#1 ? (byte) findcol::diff#8 - (byte) findcol::mincol#1 ? *((byte[]) COLS#0 + (byte) findcol::i#4) + (byte) findcol::y#12 ← phi( findcol::@7/(byte) findcol::y#13 ) + (byte) findcol::x#9 ← phi( findcol::@7/(byte) findcol::x#10 ) + (byte) findcol::i#4 ← phi( findcol::@7/(byte) findcol::i#5 ) + (byte) findcol::diff#8 ← phi( findcol::@7/(byte) findcol::diff#7 ) + (byte) findcol::mindiff#1 ← (byte) findcol::diff#8 + (byte) findcol::mincol#1 ← *((byte[]) COLS#0 + (byte) findcol::i#4) to:findcol::@8 findcol::@17: scope:[findcol] from findcol::@8 - (byte) findcol::mincol#2 ? phi( findcol::@8/(byte) findcol::mincol#3 ) - (byte) findcol::return#3 ? (byte) findcol::mincol#2 + (byte) findcol::mincol#2 ← phi( findcol::@8/(byte) findcol::mincol#3 ) + (byte) findcol::return#3 ← (byte) findcol::mincol#2 to:findcol::@return @5: scope:[] from @begin call main @@ -553,15 +553,15 @@ Culled Empty Block (label) animate::@5 Culled Empty Block (label) animate::@12 Culled Empty Block (label) @6 Successful SSA optimization Pass2CullEmptyBlocks -Inversing boolean not [15] (bool~) animate::$2 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) != (byte/signed byte/word/signed word/dword/signed dword) $28 from [14] (bool~) animate::$1 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $28 -Inversing boolean not [20] (bool~) animate::$5 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) != (byte/signed byte/word/signed word/dword/signed dword) $19 from [19] (bool~) animate::$4 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $19 -Inversing boolean not [26] (bool~) animate::$8 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) != (byte/word/signed word/dword/signed dword) $ff from [25] (bool~) animate::$7 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) == (byte/word/signed word/dword/signed dword) $ff -Inversing boolean not [32] (bool~) animate::$11 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) != (byte/signed byte/word/signed word/dword/signed dword) $19 from [31] (bool~) animate::$10 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) == (byte/signed byte/word/signed word/dword/signed dword) $19 -Inversing boolean not [38] (bool~) animate::$14 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) != (byte/word/signed word/dword/signed dword) $ff from [37] (bool~) animate::$13 ? *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) == (byte/word/signed word/dword/signed dword) $ff -Inversing boolean not [45] (bool~) animate::$17 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) < (byte/signed byte/word/signed word/dword/signed dword) $28 from [44] (bool~) animate::$16 ? *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) >= (byte/signed byte/word/signed word/dword/signed dword) $28 -Inversing boolean not [89] (bool~) findcol::$1 ? (byte) findcol::x#1 != (byte) findcol::xp#0 from [88] (bool~) findcol::$0 ? (byte) findcol::x#1 == (byte) findcol::xp#0 -Inversing boolean not [97] (bool~) findcol::$3 ? (byte) findcol::y#1 != (byte) findcol::yp#1 from [96] (bool~) findcol::$2 ? (byte) findcol::y#1 == (byte) findcol::yp#1 -Inversing boolean not [123] (bool~) findcol::$13 ? (byte) findcol::diff#7 >= (byte) findcol::mindiff#2 from [122] (bool~) findcol::$12 ? (byte) findcol::diff#7 < (byte) findcol::mindiff#2 +Inversing boolean not [15] (bool~) animate::$2 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) != (byte/signed byte/word/signed word/dword/signed dword) $28 from [14] (bool~) animate::$1 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $28 +Inversing boolean not [20] (bool~) animate::$5 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) != (byte/signed byte/word/signed word/dword/signed dword) $19 from [19] (bool~) animate::$4 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 0) == (byte/signed byte/word/signed word/dword/signed dword) $19 +Inversing boolean not [26] (bool~) animate::$8 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) != (byte/word/signed word/dword/signed dword) $ff from [25] (bool~) animate::$7 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 1) == (byte/word/signed word/dword/signed dword) $ff +Inversing boolean not [32] (bool~) animate::$11 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) != (byte/signed byte/word/signed word/dword/signed dword) $19 from [31] (bool~) animate::$10 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 2) == (byte/signed byte/word/signed word/dword/signed dword) $19 +Inversing boolean not [38] (bool~) animate::$14 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) != (byte/word/signed word/dword/signed dword) $ff from [37] (bool~) animate::$13 ← *((byte[]) YPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) == (byte/word/signed word/dword/signed dword) $ff +Inversing boolean not [45] (bool~) animate::$17 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) < (byte/signed byte/word/signed word/dword/signed dword) $28 from [44] (bool~) animate::$16 ← *((byte[]) XPOS#0 + (byte/signed byte/word/signed word/dword/signed dword) 3) >= (byte/signed byte/word/signed word/dword/signed dword) $28 +Inversing boolean not [89] (bool~) findcol::$1 ← (byte) findcol::x#1 != (byte) findcol::xp#0 from [88] (bool~) findcol::$0 ← (byte) findcol::x#1 == (byte) findcol::xp#0 +Inversing boolean not [97] (bool~) findcol::$3 ← (byte) findcol::y#1 != (byte) findcol::yp#1 from [96] (bool~) findcol::$2 ← (byte) findcol::y#1 == (byte) findcol::yp#1 +Inversing boolean not [123] (bool~) findcol::$13 ← (byte) findcol::diff#7 >= (byte) findcol::mindiff#2 from [122] (bool~) findcol::$12 ← (byte) findcol::diff#7 < (byte) findcol::mindiff#2 Successful SSA optimization Pass2UnaryNotSimplification Alias (byte) findcol::return#0 = (byte) findcol::return#4 Alias (byte*) render::colline#2 = (byte*) render::colline#4 (byte*) render::colline#3 @@ -687,9 +687,9 @@ Successful SSA optimization Pass2ConstantIfs Successful SSA optimization PassNEliminateUnusedVars Removing unused block main::@return Successful SSA optimization Pass2EliminateUnusedBlocks -Resolved ranged next value render::x#1 ? ++ render::x#2 to ++ +Resolved ranged next value render::x#1 ← ++ render::x#2 to ++ Resolved ranged comparison value if(render::x#1!=rangelast(0,$27)) goto render::@2 to (byte/signed byte/word/signed word/dword/signed dword) $28 -Resolved ranged next value render::y#1 ? ++ render::y#4 to ++ +Resolved ranged next value render::y#1 ← ++ render::y#4 to ++ Resolved ranged comparison value if(render::y#1!=rangelast(0,$18)) goto render::@1 to (byte/signed byte/word/signed word/dword/signed dword) $19 Culled Empty Block (label) main::@5 Culled Empty Block (label) findcol::@3 @@ -743,22 +743,22 @@ Calls in [main] to initscreen:5 render:7 animate:9 Calls in [render] to findcol:41 Created 12 initial phi equivalence classes -Coalesced [51] render::y#6 ? render::y#1 -Coalesced [52] render::colline#6 ? render::colline#1 -Coalesced [53] render::x#4 ? render::x#1 -Coalesced [64] findcol::diff#10 ? findcol::diff#2 -Coalesced [69] findcol::diff#12 ? findcol::diff#4 -Coalesced [73] findcol::mincol#15 ? findcol::mincol#1 -Coalesced [74] findcol::mindiff#14 ? findcol::diff#7 -Coalesced [78] findcol::return#6 ? findcol::mincol#2 -Coalesced [79] findcol::i#14 ? findcol::i#1 -Not coalescing [80] findcol::mindiff#13 ? findcol::mindiff#11 -Coalesced [81] findcol::mincol#14 ? findcol::mincol#2 -Coalesced (already) [82] findcol::mincol#16 ? findcol::mincol#10 -Not coalescing [83] findcol::mindiff#15 ? findcol::mindiff#10 -Coalesced [86] findcol::diff#13 ? findcol::diff#3 -Coalesced [88] findcol::diff#11 ? findcol::diff#1 -Coalesced [95] initscreen::screen#3 ? initscreen::screen#1 +Coalesced [51] render::y#6 ← render::y#1 +Coalesced [52] render::colline#6 ← render::colline#1 +Coalesced [53] render::x#4 ← render::x#1 +Coalesced [64] findcol::diff#10 ← findcol::diff#2 +Coalesced [69] findcol::diff#12 ← findcol::diff#4 +Coalesced [73] findcol::mincol#15 ← findcol::mincol#1 +Coalesced [74] findcol::mindiff#14 ← findcol::diff#7 +Coalesced [78] findcol::return#6 ← findcol::mincol#2 +Coalesced [79] findcol::i#14 ← findcol::i#1 +Not coalescing [80] findcol::mindiff#13 ← findcol::mindiff#11 +Coalesced [81] findcol::mincol#14 ← findcol::mincol#2 +Coalesced (already) [82] findcol::mincol#16 ← findcol::mincol#10 +Not coalescing [83] findcol::mindiff#15 ← findcol::mindiff#10 +Coalesced [86] findcol::diff#13 ← findcol::diff#3 +Coalesced [88] findcol::diff#11 ← findcol::diff#1 +Coalesced [95] initscreen::screen#3 ← initscreen::screen#1 Coalesced down to 9 phi equivalence classes Culled Empty Block (label) render::@6 Culled Empty Block (label) render::@7 @@ -817,51 +817,51 @@ main::@2: scope:[main] from main::@1 [9] call animate to:main::@1 animate: scope:[animate] from main::@2 - [10] (byte/signed word/word/dword/signed dword~) animate::$0 ? *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 - [11] *((const byte[]) XPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$0 + [10] (byte/signed word/word/dword/signed dword~) animate::$0 ← *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 + [11] *((const byte[]) XPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$0 [12] if(*((const byte[]) XPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@1 to:animate::@5 animate::@5: scope:[animate] from animate - [13] *((const byte[]) XPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [13] *((const byte[]) XPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:animate::@1 animate::@1: scope:[animate] from animate animate::@5 - [14] (byte/signed word/word/dword/signed dword~) animate::$3 ? *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 - [15] *((const byte[]) YPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$3 + [14] (byte/signed word/word/dword/signed dword~) animate::$3 ← *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 + [15] *((const byte[]) YPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$3 [16] if(*((const byte[]) YPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@2 to:animate::@6 animate::@6: scope:[animate] from animate::@1 - [17] *((const byte[]) YPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [17] *((const byte[]) YPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:animate::@2 animate::@2: scope:[animate] from animate::@1 animate::@6 - [18] (byte/signed word/word/dword/signed dword~) animate::$6 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 - [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed word/word/dword/signed dword~) animate::$6 + [18] (byte/signed word/word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 + [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed word/word/dword/signed dword~) animate::$6 [20] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@3 to:animate::@7 animate::@7: scope:[animate] from animate::@2 - [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed byte/word/signed word/dword/signed dword) $28 + [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) $28 to:animate::@3 animate::@3: scope:[animate] from animate::@2 animate::@7 - [22] (byte/signed word/word/dword/signed dword~) animate::$9 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 - [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed word/word/dword/signed dword~) animate::$9 + [22] (byte/signed word/word/dword/signed dword~) animate::$9 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 + [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed word/word/dword/signed dword~) animate::$9 [24] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@4 to:animate::@8 animate::@8: scope:[animate] from animate::@3 - [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 + [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 to:animate::@4 animate::@4: scope:[animate] from animate::@3 animate::@8 - [26] (byte/signed word/word/dword/signed dword~) animate::$12 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 - [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$12 + [26] (byte/signed word/word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 + [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$12 [28] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@return to:animate::@9 animate::@9: scope:[animate] from animate::@4 - [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed byte/word/signed word/dword/signed dword) $19 - [30] (byte/signed word/word/dword/signed dword~) animate::$15 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 - [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$15 + [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) $19 + [30] (byte/signed word/word/dword/signed dword~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 + [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$15 [32] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@return to:animate::@10 animate::@10: scope:[animate] from animate::@9 - [33] (byte/signed word/word/dword/signed dword~) animate::$18 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 - [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$18 + [33] (byte/signed word/word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 + [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$18 to:animate::@return animate::@return: scope:[animate] from animate::@10 animate::@4 animate::@9 [35] return @@ -870,25 +870,25 @@ render: scope:[render] from main::@1 [36] phi() to:render::@1 render::@1: scope:[render] from render render::@3 - [37] (byte*) render::colline#5 ? phi( render/(const byte*) COLORS#0 render::@3/(byte*) render::colline#1 ) - [37] (byte) render::y#4 ? phi( render/(byte/signed byte/word/signed word/dword/signed dword) 0 render::@3/(byte) render::y#1 ) + [37] (byte*) render::colline#5 ← phi( render/(const byte*) COLORS#0 render::@3/(byte*) render::colline#1 ) + [37] (byte) render::y#4 ← phi( render/(byte/signed byte/word/signed word/dword/signed dword) 0 render::@3/(byte) render::y#1 ) to:render::@2 render::@2: scope:[render] from render::@1 render::@4 - [38] (byte) render::x#2 ? phi( render::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render::@4/(byte) render::x#1 ) - [39] (byte) findcol::x#0 ? (byte) render::x#2 - [40] (byte) findcol::y#0 ? (byte) render::y#4 + [38] (byte) render::x#2 ← phi( render::@1/(byte/signed byte/word/signed word/dword/signed dword) 0 render::@4/(byte) render::x#1 ) + [39] (byte) findcol::x#0 ← (byte) render::x#2 + [40] (byte) findcol::y#0 ← (byte) render::y#4 [41] call findcol - [42] (byte) findcol::return#0 ? (byte) findcol::return#2 + [42] (byte) findcol::return#0 ← (byte) findcol::return#2 to:render::@4 render::@4: scope:[render] from render::@2 - [43] (byte) render::col#0 ? (byte) findcol::return#0 - [44] *((byte*) render::colline#5 + (byte) render::x#2) ? (byte) render::col#0 - [45] (byte) render::x#1 ? ++ (byte) render::x#2 + [43] (byte) render::col#0 ← (byte) findcol::return#0 + [44] *((byte*) render::colline#5 + (byte) render::x#2) ← (byte) render::col#0 + [45] (byte) render::x#1 ← ++ (byte) render::x#2 [46] if((byte) render::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render::@2 to:render::@3 render::@3: scope:[render] from render::@4 - [47] (byte*) render::colline#1 ? (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 - [48] (byte) render::y#1 ? ++ (byte) render::y#4 + [47] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 + [48] (byte) render::y#1 ← ++ (byte) render::y#4 [49] if((byte) render::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render::@1 to:render::@return render::@return: scope:[render] from render::@3 @@ -898,67 +898,67 @@ findcol: scope:[findcol] from render::@2 [51] phi() to:findcol::@1 findcol::@1: scope:[findcol] from findcol findcol::@12 - [52] (byte) findcol::mincol#10 ? phi( findcol/(byte/signed byte/word/signed word/dword/signed dword) 0 findcol::@12/(byte) findcol::mincol#2 ) - [52] (byte) findcol::mindiff#10 ? phi( findcol/(byte/word/signed word/dword/signed dword) $ff findcol::@12/(byte~) findcol::mindiff#13 ) - [52] (byte) findcol::i#10 ? phi( findcol/(byte/signed byte/word/signed word/dword/signed dword) 0 findcol::@12/(byte) findcol::i#1 ) - [53] (byte) findcol::xp#0 ? *((const byte[]) XPOS#0 + (byte) findcol::i#10) - [54] (byte) findcol::yp#0 ? *((const byte[]) YPOS#0 + (byte) findcol::i#10) + [52] (byte) findcol::mincol#10 ← phi( findcol/(byte/signed byte/word/signed word/dword/signed dword) 0 findcol::@12/(byte) findcol::mincol#2 ) + [52] (byte) findcol::mindiff#10 ← phi( findcol/(byte/word/signed word/dword/signed dword) $ff findcol::@12/(byte~) findcol::mindiff#13 ) + [52] (byte) findcol::i#10 ← phi( findcol/(byte/signed byte/word/signed word/dword/signed dword) 0 findcol::@12/(byte) findcol::i#1 ) + [53] (byte) findcol::xp#0 ← *((const byte[]) XPOS#0 + (byte) findcol::i#10) + [54] (byte) findcol::yp#0 ← *((const byte[]) YPOS#0 + (byte) findcol::i#10) [55] if((byte) findcol::x#0!=(byte) findcol::xp#0) goto findcol::@2 to:findcol::@8 findcol::@8: scope:[findcol] from findcol::@1 [56] if((byte) findcol::y#0!=(byte) findcol::yp#0) goto findcol::@2 to:findcol::@return findcol::@return: scope:[findcol] from findcol::@7 findcol::@8 - [57] (byte) findcol::return#2 ? phi( findcol::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 findcol::@7/(byte) findcol::mincol#2 ) + [57] (byte) findcol::return#2 ← phi( findcol::@8/(byte/signed byte/word/signed word/dword/signed dword) 0 findcol::@7/(byte) findcol::mincol#2 ) [58] return to:@return findcol::@2: scope:[findcol] from findcol::@1 findcol::@8 [59] if((byte) findcol::x#0<(byte) findcol::xp#0) goto findcol::@3 to:findcol::@9 findcol::@9: scope:[findcol] from findcol::@2 - [60] (byte) findcol::diff#2 ? (byte) findcol::x#0 - (byte) findcol::xp#0 + [60] (byte) findcol::diff#2 ← (byte) findcol::x#0 - (byte) findcol::xp#0 to:findcol::@4 findcol::@4: scope:[findcol] from findcol::@3 findcol::@9 - [61] (byte) findcol::diff#5 ? phi( findcol::@9/(byte) findcol::diff#2 findcol::@3/(byte) findcol::diff#1 ) + [61] (byte) findcol::diff#5 ← phi( findcol::@9/(byte) findcol::diff#2 findcol::@3/(byte) findcol::diff#1 ) [62] if((byte) findcol::y#0<(byte) findcol::yp#0) goto findcol::@5 to:findcol::@10 findcol::@10: scope:[findcol] from findcol::@4 - [63] (byte~) findcol::$8 ? (byte) findcol::y#0 - (byte) findcol::yp#0 - [64] (byte) findcol::diff#4 ? (byte) findcol::diff#5 + (byte~) findcol::$8 + [63] (byte~) findcol::$8 ← (byte) findcol::y#0 - (byte) findcol::yp#0 + [64] (byte) findcol::diff#4 ← (byte) findcol::diff#5 + (byte~) findcol::$8 to:findcol::@6 findcol::@6: scope:[findcol] from findcol::@10 findcol::@5 - [65] (byte) findcol::diff#7 ? phi( findcol::@10/(byte) findcol::diff#4 findcol::@5/(byte) findcol::diff#3 ) + [65] (byte) findcol::diff#7 ← phi( findcol::@10/(byte) findcol::diff#4 findcol::@5/(byte) findcol::diff#3 ) [66] if((byte) findcol::diff#7>=(byte) findcol::mindiff#10) goto findcol::@13 to:findcol::@11 findcol::@11: scope:[findcol] from findcol::@6 - [67] (byte) findcol::mincol#1 ? *((const byte[]) COLS#0 + (byte) findcol::i#10) + [67] (byte) findcol::mincol#1 ← *((const byte[]) COLS#0 + (byte) findcol::i#10) to:findcol::@7 findcol::@7: scope:[findcol] from findcol::@11 findcol::@13 - [68] (byte) findcol::mindiff#11 ? phi( findcol::@11/(byte) findcol::diff#7 findcol::@13/(byte~) findcol::mindiff#15 ) - [68] (byte) findcol::mincol#2 ? phi( findcol::@11/(byte) findcol::mincol#1 findcol::@13/(byte) findcol::mincol#10 ) - [69] (byte) findcol::i#1 ? ++ (byte) findcol::i#10 + [68] (byte) findcol::mindiff#11 ← phi( findcol::@11/(byte) findcol::diff#7 findcol::@13/(byte~) findcol::mindiff#15 ) + [68] (byte) findcol::mincol#2 ← phi( findcol::@11/(byte) findcol::mincol#1 findcol::@13/(byte) findcol::mincol#10 ) + [69] (byte) findcol::i#1 ← ++ (byte) findcol::i#10 [70] if((byte) findcol::i#1<(const byte) numpoints#0) goto findcol::@12 to:findcol::@return findcol::@12: scope:[findcol] from findcol::@7 - [71] (byte~) findcol::mindiff#13 ? (byte) findcol::mindiff#11 + [71] (byte~) findcol::mindiff#13 ← (byte) findcol::mindiff#11 to:findcol::@1 findcol::@13: scope:[findcol] from findcol::@6 - [72] (byte~) findcol::mindiff#15 ? (byte) findcol::mindiff#10 + [72] (byte~) findcol::mindiff#15 ← (byte) findcol::mindiff#10 to:findcol::@7 findcol::@5: scope:[findcol] from findcol::@4 - [73] (byte~) findcol::$10 ? (byte) findcol::yp#0 - (byte) findcol::y#0 - [74] (byte) findcol::diff#3 ? (byte) findcol::diff#5 + (byte~) findcol::$10 + [73] (byte~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 + [74] (byte) findcol::diff#3 ← (byte) findcol::diff#5 + (byte~) findcol::$10 to:findcol::@6 findcol::@3: scope:[findcol] from findcol::@2 - [75] (byte) findcol::diff#1 ? (byte) findcol::xp#0 - (byte) findcol::x#0 + [75] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 to:findcol::@4 initscreen: scope:[initscreen] from main [76] phi() to:initscreen::@1 initscreen::@1: scope:[initscreen] from initscreen initscreen::@1 - [77] (byte*) initscreen::screen#2 ? phi( initscreen/(const byte*) SCREEN#0 initscreen::@1/(byte*) initscreen::screen#1 ) - [78] *((byte*) initscreen::screen#2) ? (const byte) FILL#0 - [79] (byte*) initscreen::screen#1 ? ++ (byte*) initscreen::screen#2 + [77] (byte*) initscreen::screen#2 ← phi( initscreen/(const byte*) SCREEN#0 initscreen::@1/(byte*) initscreen::screen#1 ) + [78] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 + [79] (byte*) initscreen::screen#1 ← ++ (byte*) initscreen::screen#2 [80] if((byte*) initscreen::screen#1<(const byte*) SCREEN#0+(word/signed word/dword/signed dword) $3e8) goto initscreen::@1 to:initscreen::@return initscreen::@return: scope:[initscreen] from initscreen::@1 @@ -1171,11 +1171,11 @@ animate: { .label _12 = $11 .label _15 = $12 .label _18 = $13 - //SEG21 [10] (byte/signed word/word/dword/signed dword~) animate::$0 ? *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_plus_1 + //SEG21 [10] (byte/signed word/word/dword/signed dword~) animate::$0 ← *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_plus_1 ldy XPOS iny sty _0 - //SEG22 [11] *((const byte[]) XPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$0 -- _deref_pbuc1=vbuz1 + //SEG22 [11] *((const byte[]) XPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$0 -- _deref_pbuc1=vbuz1 lda _0 sta XPOS //SEG23 [12] if(*((const byte[]) XPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@1 -- _deref_pbuc1_neq_vbuc2_then_la1 @@ -1185,17 +1185,17 @@ animate: { jmp b5 //SEG24 animate::@5 b5: - //SEG25 [13] *((const byte[]) XPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG25 [13] *((const byte[]) XPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta XPOS jmp b1 //SEG26 animate::@1 b1: - //SEG27 [14] (byte/signed word/word/dword/signed dword~) animate::$3 ? *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_plus_1 + //SEG27 [14] (byte/signed word/word/dword/signed dword~) animate::$3 ← *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_plus_1 ldy YPOS iny sty _3 - //SEG28 [15] *((const byte[]) YPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$3 -- _deref_pbuc1=vbuz1 + //SEG28 [15] *((const byte[]) YPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$3 -- _deref_pbuc1=vbuz1 lda _3 sta YPOS //SEG29 [16] if(*((const byte[]) YPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@2 -- _deref_pbuc1_neq_vbuc2_then_la1 @@ -1205,17 +1205,17 @@ animate: { jmp b6 //SEG30 animate::@6 b6: - //SEG31 [17] *((const byte[]) YPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG31 [17] *((const byte[]) YPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta YPOS jmp b2 //SEG32 animate::@2 b2: - //SEG33 [18] (byte/signed word/word/dword/signed dword~) animate::$6 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_minus_1 + //SEG33 [18] (byte/signed word/word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_minus_1 ldx XPOS+1 dex stx _6 - //SEG34 [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed word/word/dword/signed dword~) animate::$6 -- _deref_pbuc1=vbuz1 + //SEG34 [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed word/word/dword/signed dword~) animate::$6 -- _deref_pbuc1=vbuz1 lda _6 sta XPOS+1 //SEG35 [20] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@3 -- _deref_pbuc1_neq_vbuc2_then_la1 @@ -1225,17 +1225,17 @@ animate: { jmp b7 //SEG36 animate::@7 b7: - //SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed byte/word/signed word/dword/signed dword) $28 -- _deref_pbuc1=vbuc2 + //SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) $28 -- _deref_pbuc1=vbuc2 lda #$28 sta XPOS+1 jmp b3 //SEG38 animate::@3 b3: - //SEG39 [22] (byte/signed word/word/dword/signed dword~) animate::$9 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_plus_1 + //SEG39 [22] (byte/signed word/word/dword/signed dword~) animate::$9 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_plus_1 ldy YPOS+2 iny sty _9 - //SEG40 [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed word/word/dword/signed dword~) animate::$9 -- _deref_pbuc1=vbuz1 + //SEG40 [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed word/word/dword/signed dword~) animate::$9 -- _deref_pbuc1=vbuz1 lda _9 sta YPOS+2 //SEG41 [24] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 @@ -1245,17 +1245,17 @@ animate: { jmp b8 //SEG42 animate::@8 b8: - //SEG43 [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG43 [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta YPOS+2 jmp b4 //SEG44 animate::@4 b4: - //SEG45 [26] (byte/signed word/word/dword/signed dword~) animate::$12 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_minus_1 + //SEG45 [26] (byte/signed word/word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuz1=_deref_pbuc1_minus_1 ldx YPOS+3 dex stx _12 - //SEG46 [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$12 -- _deref_pbuc1=vbuz1 + //SEG46 [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$12 -- _deref_pbuc1=vbuz1 lda _12 sta YPOS+3 //SEG47 [28] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@return -- _deref_pbuc1_neq_vbuc2_then_la1 @@ -1265,15 +1265,15 @@ animate: { jmp b9 //SEG48 animate::@9 b9: - //SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed byte/word/signed word/dword/signed dword) $19 -- _deref_pbuc1=vbuc2 + //SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) $19 -- _deref_pbuc1=vbuc2 lda #$19 sta YPOS+3 - //SEG50 [30] (byte/signed word/word/dword/signed dword~) animate::$15 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=_deref_pbuc1_plus_vbuc2 + //SEG50 [30] (byte/signed word/word/dword/signed dword~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuz1=_deref_pbuc1_plus_vbuc2 lda #7 clc adc XPOS+3 sta _15 - //SEG51 [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$15 -- _deref_pbuc1=vbuz1 + //SEG51 [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$15 -- _deref_pbuc1=vbuz1 lda _15 sta XPOS+3 //SEG52 [32] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@return -- _deref_pbuc1_lt_vbuc2_then_la1 @@ -1283,12 +1283,12 @@ animate: { jmp b10 //SEG53 animate::@10 b10: - //SEG54 [33] (byte/signed word/word/dword/signed dword~) animate::$18 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 -- vbuz1=_deref_pbuc1_minus_vbuc2 + //SEG54 [33] (byte/signed word/word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 -- vbuz1=_deref_pbuc1_minus_vbuc2 lda XPOS+3 sec sbc #$28 sta _18 - //SEG55 [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$18 -- _deref_pbuc1=vbuz1 + //SEG55 [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$18 -- _deref_pbuc1=vbuz1 lda _18 sta XPOS+3 jmp breturn @@ -1333,30 +1333,30 @@ render: { jmp b2 //SEG70 render::@2 b2: - //SEG71 [39] (byte) findcol::x#0 ? (byte) render::x#2 -- vbuz1=vbuz2 + //SEG71 [39] (byte) findcol::x#0 ← (byte) render::x#2 -- vbuz1=vbuz2 lda x sta findcol.x - //SEG72 [40] (byte) findcol::y#0 ? (byte) render::y#4 -- vbuz1=vbuz2 + //SEG72 [40] (byte) findcol::y#0 ← (byte) render::y#4 -- vbuz1=vbuz2 lda y sta findcol.y //SEG73 [41] call findcol //SEG74 [51] phi from render::@2 to findcol [phi:render::@2->findcol] findcol_from_b2: jsr findcol - //SEG75 [42] (byte) findcol::return#0 ? (byte) findcol::return#2 -- vbuz1=vbuz2 + //SEG75 [42] (byte) findcol::return#0 ← (byte) findcol::return#2 -- vbuz1=vbuz2 lda findcol.return_2 sta findcol.return jmp b4 //SEG76 render::@4 b4: - //SEG77 [43] (byte) render::col#0 ? (byte) findcol::return#0 -- vbuz1=vbuz2 + //SEG77 [43] (byte) render::col#0 ← (byte) findcol::return#0 -- vbuz1=vbuz2 lda findcol.return sta col - //SEG78 [44] *((byte*) render::colline#5 + (byte) render::x#2) ? (byte) render::col#0 -- pbuz1_derefidx_vbuz2=vbuz3 + //SEG78 [44] *((byte*) render::colline#5 + (byte) render::x#2) ← (byte) render::col#0 -- pbuz1_derefidx_vbuz2=vbuz3 lda col ldy x sta (colline),y - //SEG79 [45] (byte) render::x#1 ? ++ (byte) render::x#2 -- vbuz1=_inc_vbuz1 + //SEG79 [45] (byte) render::x#1 ← ++ (byte) render::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG80 [46] if((byte) render::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -1365,7 +1365,7 @@ render: { jmp b3 //SEG81 render::@3 b3: - //SEG82 [47] (byte*) render::colline#1 ? (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG82 [47] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc colline @@ -1373,7 +1373,7 @@ render: { bcc !+ inc colline+1 !: - //SEG83 [48] (byte) render::y#1 ? ++ (byte) render::y#4 -- vbuz1=_inc_vbuz1 + //SEG83 [48] (byte) render::y#1 ← ++ (byte) render::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG84 [49] if((byte) render::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -1419,11 +1419,11 @@ findcol: { jmp b1 //SEG92 findcol::@1 b1: - //SEG93 [53] (byte) findcol::xp#0 ? *((const byte[]) XPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG93 [53] (byte) findcol::xp#0 ← *((const byte[]) XPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda XPOS,y sta xp - //SEG94 [54] (byte) findcol::yp#0 ? *((const byte[]) YPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG94 [54] (byte) findcol::yp#0 ← *((const byte[]) YPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda YPOS,y sta yp @@ -1457,7 +1457,7 @@ findcol: { jmp b9 //SEG104 findcol::@9 b9: - //SEG105 [60] (byte) findcol::diff#2 ? (byte) findcol::x#0 - (byte) findcol::xp#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG105 [60] (byte) findcol::diff#2 ← (byte) findcol::x#0 - (byte) findcol::xp#0 -- vbuz1=vbuz2_minus_vbuz3 lda x sec sbc xp @@ -1476,12 +1476,12 @@ findcol: { jmp b10 //SEG110 findcol::@10 b10: - //SEG111 [63] (byte~) findcol::$8 ? (byte) findcol::y#0 - (byte) findcol::yp#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG111 [63] (byte~) findcol::$8 ← (byte) findcol::y#0 - (byte) findcol::yp#0 -- vbuz1=vbuz2_minus_vbuz3 lda y sec sbc yp sta _8 - //SEG112 [64] (byte) findcol::diff#4 ? (byte) findcol::diff#5 + (byte~) findcol::$8 -- vbuz1=vbuz2_plus_vbuz3 + //SEG112 [64] (byte) findcol::diff#4 ← (byte) findcol::diff#5 + (byte~) findcol::$8 -- vbuz1=vbuz2_plus_vbuz3 lda diff clc adc _8 @@ -1500,7 +1500,7 @@ findcol: { jmp b11 //SEG117 findcol::@11 b11: - //SEG118 [67] (byte) findcol::mincol#1 ? *((const byte[]) COLS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 + //SEG118 [67] (byte) findcol::mincol#1 ← *((const byte[]) COLS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuz2 ldy i lda COLS,y sta mincol @@ -1512,7 +1512,7 @@ findcol: { jmp b7 //SEG122 findcol::@7 b7: - //SEG123 [69] (byte) findcol::i#1 ? ++ (byte) findcol::i#10 -- vbuz1=_inc_vbuz1 + //SEG123 [69] (byte) findcol::i#1 ← ++ (byte) findcol::i#10 -- vbuz1=_inc_vbuz1 inc i //SEG124 [70] if((byte) findcol::i#1<(const byte) numpoints#0) goto findcol::@12 -- vbuz1_lt_vbuc1_then_la1 lda i @@ -1524,7 +1524,7 @@ findcol: { jmp breturn //SEG127 findcol::@12 b12: - //SEG128 [71] (byte~) findcol::mindiff#13 ? (byte) findcol::mindiff#11 -- vbuz1=vbuz2 + //SEG128 [71] (byte~) findcol::mindiff#13 ← (byte) findcol::mindiff#11 -- vbuz1=vbuz2 lda mindiff_11 sta mindiff //SEG129 [52] phi from findcol::@12 to findcol::@1 [phi:findcol::@12->findcol::@1] @@ -1535,18 +1535,18 @@ findcol: { jmp b1 //SEG133 findcol::@13 b13: - //SEG134 [72] (byte~) findcol::mindiff#15 ? (byte) findcol::mindiff#10 -- vbuz1=vbuz2 + //SEG134 [72] (byte~) findcol::mindiff#15 ← (byte) findcol::mindiff#10 -- vbuz1=vbuz2 lda mindiff sta mindiff_15 jmp b7_from_b13 //SEG135 findcol::@5 b5: - //SEG136 [73] (byte~) findcol::$10 ? (byte) findcol::yp#0 - (byte) findcol::y#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG136 [73] (byte~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 -- vbuz1=vbuz2_minus_vbuz3 lda yp sec sbc y sta _10 - //SEG137 [74] (byte) findcol::diff#3 ? (byte) findcol::diff#5 + (byte~) findcol::$10 -- vbuz1=vbuz2_plus_vbuz3 + //SEG137 [74] (byte) findcol::diff#3 ← (byte) findcol::diff#5 + (byte~) findcol::$10 -- vbuz1=vbuz2_plus_vbuz3 lda diff clc adc _10 @@ -1554,7 +1554,7 @@ findcol: { jmp b6_from_b5 //SEG138 findcol::@3 b3: - //SEG139 [75] (byte) findcol::diff#1 ? (byte) findcol::xp#0 - (byte) findcol::x#0 -- vbuz1=vbuz2_minus_vbuz3 + //SEG139 [75] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 -- vbuz1=vbuz2_minus_vbuz3 lda xp sec sbc x @@ -1578,11 +1578,11 @@ initscreen: { jmp b1 //SEG145 initscreen::@1 b1: - //SEG146 [78] *((byte*) initscreen::screen#2) ? (const byte) FILL#0 -- _deref_pbuz1=vbuc1 + //SEG146 [78] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 -- _deref_pbuz1=vbuc1 lda #FILL ldy #0 sta (screen),y - //SEG147 [79] (byte*) initscreen::screen#1 ? ++ (byte*) initscreen::screen#2 -- pbuz1=_inc_pbuz1 + //SEG147 [79] (byte*) initscreen::screen#1 ← ++ (byte*) initscreen::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 @@ -1609,21 +1609,21 @@ initscreen: { REGISTER UPLIFT POTENTIAL REGISTERS Statement [12] if(*((const byte[]) XPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@1 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [13] *((const byte[]) XPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [13] *((const byte[]) XPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [16] if(*((const byte[]) YPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@2 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [17] *((const byte[]) YPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [17] *((const byte[]) YPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [20] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@3 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed byte/word/signed word/dword/signed dword) $28 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) $28 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [24] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@4 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [28] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@return [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed byte/word/signed word/dword/signed dword) $19 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [30] (byte/signed word/word/dword/signed dword~) animate::$15 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 [ animate::$15 ] ( main:2::animate:9 [ animate::$15 ] ) always clobbers reg byte a +Statement [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) $19 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [30] (byte/signed word/word/dword/signed dword~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 [ animate::$15 ] ( main:2::animate:9 [ animate::$15 ] ) always clobbers reg byte a Statement [32] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@return [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [33] (byte/signed word/word/dword/signed dword~) animate::$18 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a -Statement [47] (byte*) render::colline#1 ? (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render::y#4 render::colline#1 ] ( main:2::render:7 [ render::y#4 render::colline#1 ] ) always clobbers reg byte a +Statement [33] (byte/signed word/word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a +Statement [47] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render::y#4 render::colline#1 ] ( main:2::render:7 [ render::y#4 render::colline#1 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:2 [ render::y#4 render::y#1 ] -Statement [60] (byte) findcol::diff#2 ? (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ) always clobbers reg byte a +Statement [60] (byte) findcol::diff#2 ← (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:5 [ render::x#2 render::x#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:20 [ findcol::x#0 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:21 [ findcol::y#0 ] @@ -1631,35 +1631,35 @@ Removing always clobbered register reg byte a as potential for zp ZP_BYTE:6 [ fi Removing always clobbered register reg byte a as potential for zp ZP_BYTE:7 [ findcol::mindiff#10 findcol::mindiff#13 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:8 [ findcol::return#2 findcol::mincol#10 findcol::mincol#2 findcol::mincol#1 ] Removing always clobbered register reg byte a as potential for zp ZP_BYTE:25 [ findcol::yp#0 ] -Statement [63] (byte~) findcol::$8 ? (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ) always clobbers reg byte a +Statement [63] (byte~) findcol::$8 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ) always clobbers reg byte a Removing always clobbered register reg byte a as potential for zp ZP_BYTE:9 [ findcol::diff#5 findcol::diff#2 findcol::diff#1 ] -Statement [64] (byte) findcol::diff#4 ? (byte) findcol::diff#5 + (byte~) findcol::$8 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ) always clobbers reg byte a -Statement [73] (byte~) findcol::$10 ? (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ) always clobbers reg byte a -Statement [74] (byte) findcol::diff#3 ? (byte) findcol::diff#5 + (byte~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a -Statement [75] (byte) findcol::diff#1 ? (byte) findcol::xp#0 - (byte) findcol::x#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ) always clobbers reg byte a -Statement [78] *((byte*) initscreen::screen#2) ? (const byte) FILL#0 [ initscreen::screen#2 ] ( main:2::initscreen:5 [ initscreen::screen#2 ] ) always clobbers reg byte a reg byte y +Statement [64] (byte) findcol::diff#4 ← (byte) findcol::diff#5 + (byte~) findcol::$8 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ) always clobbers reg byte a +Statement [73] (byte~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ) always clobbers reg byte a +Statement [74] (byte) findcol::diff#3 ← (byte) findcol::diff#5 + (byte~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a +Statement [75] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ) always clobbers reg byte a +Statement [78] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 [ initscreen::screen#2 ] ( main:2::initscreen:5 [ initscreen::screen#2 ] ) always clobbers reg byte a reg byte y Statement [80] if((byte*) initscreen::screen#1<(const byte*) SCREEN#0+(word/signed word/dword/signed dword) $3e8) goto initscreen::@1 [ initscreen::screen#1 ] ( main:2::initscreen:5 [ initscreen::screen#1 ] ) always clobbers reg byte a Statement [12] if(*((const byte[]) XPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@1 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [13] *((const byte[]) XPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [13] *((const byte[]) XPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [16] if(*((const byte[]) YPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@2 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [17] *((const byte[]) YPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [17] *((const byte[]) YPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [20] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@3 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed byte/word/signed word/dword/signed dword) $28 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) $28 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [24] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@4 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a Statement [28] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@return [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed byte/word/signed word/dword/signed dword) $19 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [30] (byte/signed word/word/dword/signed dword~) animate::$15 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 [ animate::$15 ] ( main:2::animate:9 [ animate::$15 ] ) always clobbers reg byte a +Statement [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) $19 [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a +Statement [30] (byte/signed word/word/dword/signed dword~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 [ animate::$15 ] ( main:2::animate:9 [ animate::$15 ] ) always clobbers reg byte a Statement [32] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@return [ ] ( main:2::animate:9 [ ] ) always clobbers reg byte a -Statement [33] (byte/signed word/word/dword/signed dword~) animate::$18 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a -Statement [47] (byte*) render::colline#1 ? (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render::y#4 render::colline#1 ] ( main:2::render:7 [ render::y#4 render::colline#1 ] ) always clobbers reg byte a -Statement [60] (byte) findcol::diff#2 ? (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ) always clobbers reg byte a -Statement [63] (byte~) findcol::$8 ? (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ) always clobbers reg byte a -Statement [64] (byte) findcol::diff#4 ? (byte) findcol::diff#5 + (byte~) findcol::$8 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ) always clobbers reg byte a -Statement [73] (byte~) findcol::$10 ? (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ) always clobbers reg byte a -Statement [74] (byte) findcol::diff#3 ? (byte) findcol::diff#5 + (byte~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a -Statement [75] (byte) findcol::diff#1 ? (byte) findcol::xp#0 - (byte) findcol::x#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ) always clobbers reg byte a -Statement [78] *((byte*) initscreen::screen#2) ? (const byte) FILL#0 [ initscreen::screen#2 ] ( main:2::initscreen:5 [ initscreen::screen#2 ] ) always clobbers reg byte a reg byte y +Statement [33] (byte/signed word/word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 [ animate::$18 ] ( main:2::animate:9 [ animate::$18 ] ) always clobbers reg byte a +Statement [47] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 [ render::y#4 render::colline#1 ] ( main:2::render:7 [ render::y#4 render::colline#1 ] ) always clobbers reg byte a +Statement [60] (byte) findcol::diff#2 ← (byte) findcol::x#0 - (byte) findcol::xp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#2 ] ) always clobbers reg byte a +Statement [63] (byte~) findcol::$8 ← (byte) findcol::y#0 - (byte) findcol::yp#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$8 ] ) always clobbers reg byte a +Statement [64] (byte) findcol::diff#4 ← (byte) findcol::diff#5 + (byte~) findcol::$8 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#4 ] ) always clobbers reg byte a +Statement [73] (byte~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#5 findcol::$10 ] ) always clobbers reg byte a +Statement [74] (byte) findcol::diff#3 ← (byte) findcol::diff#5 + (byte~) findcol::$10 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::diff#3 ] ) always clobbers reg byte a +Statement [75] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 [ findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ( main:2::render:7::findcol:41 [ render::y#4 render::colline#5 render::x#2 findcol::x#0 findcol::y#0 findcol::i#10 findcol::mindiff#10 findcol::mincol#10 findcol::yp#0 findcol::diff#1 ] ) always clobbers reg byte a +Statement [78] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 [ initscreen::screen#2 ] ( main:2::initscreen:5 [ initscreen::screen#2 ] ) always clobbers reg byte a reg byte y Statement [80] if((byte*) initscreen::screen#1<(const byte*) SCREEN#0+(word/signed word/dword/signed dword) $3e8) goto initscreen::@1 [ initscreen::screen#1 ] ( main:2::initscreen:5 [ initscreen::screen#1 ] ) always clobbers reg byte a Potential registers zp ZP_BYTE:2 [ render::y#4 render::y#1 ] : zp ZP_BYTE:2 , reg byte x , reg byte y , Potential registers zp ZP_WORD:3 [ render::colline#5 render::colline#1 ] : zp ZP_WORD:3 , @@ -1795,10 +1795,10 @@ main: { } //SEG20 animate animate: { - //SEG21 [10] (byte/signed word/word/dword/signed dword~) animate::$0 ? *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 + //SEG21 [10] (byte/signed word/word/dword/signed dword~) animate::$0 ← *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 ldx XPOS inx - //SEG22 [11] *((const byte[]) XPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$0 -- _deref_pbuc1=vbuxx + //SEG22 [11] *((const byte[]) XPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$0 -- _deref_pbuc1=vbuxx stx XPOS //SEG23 [12] if(*((const byte[]) XPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@1 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$28 @@ -1807,16 +1807,16 @@ animate: { jmp b5 //SEG24 animate::@5 b5: - //SEG25 [13] *((const byte[]) XPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG25 [13] *((const byte[]) XPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta XPOS jmp b1 //SEG26 animate::@1 b1: - //SEG27 [14] (byte/signed word/word/dword/signed dword~) animate::$3 ? *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 + //SEG27 [14] (byte/signed word/word/dword/signed dword~) animate::$3 ← *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 ldx YPOS inx - //SEG28 [15] *((const byte[]) YPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$3 -- _deref_pbuc1=vbuxx + //SEG28 [15] *((const byte[]) YPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$3 -- _deref_pbuc1=vbuxx stx YPOS //SEG29 [16] if(*((const byte[]) YPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@2 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$19 @@ -1825,17 +1825,17 @@ animate: { jmp b6 //SEG30 animate::@6 b6: - //SEG31 [17] *((const byte[]) YPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG31 [17] *((const byte[]) YPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta YPOS jmp b2 //SEG32 animate::@2 b2: - //SEG33 [18] (byte/signed word/word/dword/signed dword~) animate::$6 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_minus_1 + //SEG33 [18] (byte/signed word/word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_minus_1 lda XPOS+1 sec sbc #1 - //SEG34 [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed word/word/dword/signed dword~) animate::$6 -- _deref_pbuc1=vbuaa + //SEG34 [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed word/word/dword/signed dword~) animate::$6 -- _deref_pbuc1=vbuaa sta XPOS+1 //SEG35 [20] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@3 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$ff @@ -1844,17 +1844,17 @@ animate: { jmp b7 //SEG36 animate::@7 b7: - //SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed byte/word/signed word/dword/signed dword) $28 -- _deref_pbuc1=vbuc2 + //SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) $28 -- _deref_pbuc1=vbuc2 lda #$28 sta XPOS+1 jmp b3 //SEG38 animate::@3 b3: - //SEG39 [22] (byte/signed word/word/dword/signed dword~) animate::$9 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_plus_1 + //SEG39 [22] (byte/signed word/word/dword/signed dword~) animate::$9 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_plus_1 lda YPOS+2 clc adc #1 - //SEG40 [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed word/word/dword/signed dword~) animate::$9 -- _deref_pbuc1=vbuaa + //SEG40 [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed word/word/dword/signed dword~) animate::$9 -- _deref_pbuc1=vbuaa sta YPOS+2 //SEG41 [24] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$19 @@ -1863,16 +1863,16 @@ animate: { jmp b8 //SEG42 animate::@8 b8: - //SEG43 [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG43 [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta YPOS+2 jmp b4 //SEG44 animate::@4 b4: - //SEG45 [26] (byte/signed word/word/dword/signed dword~) animate::$12 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_minus_1 + //SEG45 [26] (byte/signed word/word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_minus_1 ldx YPOS+3 dex - //SEG46 [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$12 -- _deref_pbuc1=vbuxx + //SEG46 [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$12 -- _deref_pbuc1=vbuxx stx YPOS+3 //SEG47 [28] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@return -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$ff @@ -1881,14 +1881,14 @@ animate: { jmp b9 //SEG48 animate::@9 b9: - //SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed byte/word/signed word/dword/signed dword) $19 -- _deref_pbuc1=vbuc2 + //SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) $19 -- _deref_pbuc1=vbuc2 lda #$19 sta YPOS+3 - //SEG50 [30] (byte/signed word/word/dword/signed dword~) animate::$15 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=_deref_pbuc1_plus_vbuc2 + //SEG50 [30] (byte/signed word/word/dword/signed dword~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=_deref_pbuc1_plus_vbuc2 lda #7 clc adc XPOS+3 - //SEG51 [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$15 -- _deref_pbuc1=vbuaa + //SEG51 [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$15 -- _deref_pbuc1=vbuaa sta XPOS+3 //SEG52 [32] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@return -- _deref_pbuc1_lt_vbuc2_then_la1 lda XPOS+3 @@ -1897,11 +1897,11 @@ animate: { jmp b10 //SEG53 animate::@10 b10: - //SEG54 [33] (byte/signed word/word/dword/signed dword~) animate::$18 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 -- vbuaa=_deref_pbuc1_minus_vbuc2 + //SEG54 [33] (byte/signed word/word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 -- vbuaa=_deref_pbuc1_minus_vbuc2 lda XPOS+3 sec sbc #$28 - //SEG55 [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$18 -- _deref_pbuc1=vbuaa + //SEG55 [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$18 -- _deref_pbuc1=vbuaa sta XPOS+3 jmp breturn //SEG56 animate::@return @@ -1944,22 +1944,22 @@ render: { jmp b2 //SEG70 render::@2 b2: - //SEG71 [39] (byte) findcol::x#0 ? (byte) render::x#2 - //SEG72 [40] (byte) findcol::y#0 ? (byte) render::y#4 + //SEG71 [39] (byte) findcol::x#0 ← (byte) render::x#2 + //SEG72 [40] (byte) findcol::y#0 ← (byte) render::y#4 //SEG73 [41] call findcol //SEG74 [51] phi from render::@2 to findcol [phi:render::@2->findcol] findcol_from_b2: jsr findcol - //SEG75 [42] (byte) findcol::return#0 ? (byte) findcol::return#2 -- vbuaa=vbuz1 + //SEG75 [42] (byte) findcol::return#0 ← (byte) findcol::return#2 -- vbuaa=vbuz1 lda findcol.return jmp b4 //SEG76 render::@4 b4: - //SEG77 [43] (byte) render::col#0 ? (byte) findcol::return#0 - //SEG78 [44] *((byte*) render::colline#5 + (byte) render::x#2) ? (byte) render::col#0 -- pbuz1_derefidx_vbuz2=vbuaa + //SEG77 [43] (byte) render::col#0 ← (byte) findcol::return#0 + //SEG78 [44] *((byte*) render::colline#5 + (byte) render::x#2) ← (byte) render::col#0 -- pbuz1_derefidx_vbuz2=vbuaa ldy x sta (colline),y - //SEG79 [45] (byte) render::x#1 ? ++ (byte) render::x#2 -- vbuz1=_inc_vbuz1 + //SEG79 [45] (byte) render::x#1 ← ++ (byte) render::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG80 [46] if((byte) render::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 @@ -1968,7 +1968,7 @@ render: { jmp b3 //SEG81 render::@3 b3: - //SEG82 [47] (byte*) render::colline#1 ? (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG82 [47] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 lda #$28 clc adc colline @@ -1976,7 +1976,7 @@ render: { bcc !+ inc colline+1 !: - //SEG83 [48] (byte) render::y#1 ? ++ (byte) render::y#4 -- vbuz1=_inc_vbuz1 + //SEG83 [48] (byte) render::y#1 ← ++ (byte) render::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG84 [49] if((byte) render::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -2010,9 +2010,9 @@ findcol: { jmp b1 //SEG92 findcol::@1 b1: - //SEG93 [53] (byte) findcol::xp#0 ? *((const byte[]) XPOS#0 + (byte) findcol::i#10) -- vbuxx=pbuc1_derefidx_vbuyy + //SEG93 [53] (byte) findcol::xp#0 ← *((const byte[]) XPOS#0 + (byte) findcol::i#10) -- vbuxx=pbuc1_derefidx_vbuyy ldx XPOS,y - //SEG94 [54] (byte) findcol::yp#0 ? *((const byte[]) YPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy + //SEG94 [54] (byte) findcol::yp#0 ← *((const byte[]) YPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy lda YPOS,y sta yp //SEG95 [55] if((byte) findcol::x#0!=(byte) findcol::xp#0) goto findcol::@2 -- vbuz1_neq_vbuxx_then_la1 @@ -2046,7 +2046,7 @@ findcol: { jmp b9 //SEG104 findcol::@9 b9: - //SEG105 [60] (byte) findcol::diff#2 ? (byte) findcol::x#0 - (byte) findcol::xp#0 -- vbuxx=vbuz1_minus_vbuxx + //SEG105 [60] (byte) findcol::diff#2 ← (byte) findcol::x#0 - (byte) findcol::xp#0 -- vbuxx=vbuz1_minus_vbuxx txa eor #$ff sec @@ -2066,11 +2066,11 @@ findcol: { jmp b10 //SEG110 findcol::@10 b10: - //SEG111 [63] (byte~) findcol::$8 ? (byte) findcol::y#0 - (byte) findcol::yp#0 -- vbuaa=vbuz1_minus_vbuz2 + //SEG111 [63] (byte~) findcol::$8 ← (byte) findcol::y#0 - (byte) findcol::yp#0 -- vbuaa=vbuz1_minus_vbuz2 lda y sec sbc yp - //SEG112 [64] (byte) findcol::diff#4 ? (byte) findcol::diff#5 + (byte~) findcol::$8 -- vbuxx=vbuxx_plus_vbuaa + //SEG112 [64] (byte) findcol::diff#4 ← (byte) findcol::diff#5 + (byte~) findcol::$8 -- vbuxx=vbuxx_plus_vbuaa stx $ff clc adc $ff @@ -2088,7 +2088,7 @@ findcol: { jmp b11 //SEG117 findcol::@11 b11: - //SEG118 [67] (byte) findcol::mincol#1 ? *((const byte[]) COLS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy + //SEG118 [67] (byte) findcol::mincol#1 ← *((const byte[]) COLS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy lda COLS,y sta mincol //SEG119 [68] phi from findcol::@11 findcol::@13 to findcol::@7 [phi:findcol::@11/findcol::@13->findcol::@7] @@ -2099,7 +2099,7 @@ findcol: { jmp b7 //SEG122 findcol::@7 b7: - //SEG123 [69] (byte) findcol::i#1 ? ++ (byte) findcol::i#10 -- vbuyy=_inc_vbuyy + //SEG123 [69] (byte) findcol::i#1 ← ++ (byte) findcol::i#10 -- vbuyy=_inc_vbuyy iny //SEG124 [70] if((byte) findcol::i#1<(const byte) numpoints#0) goto findcol::@12 -- vbuyy_lt_vbuc1_then_la1 cpy #numpoints @@ -2110,7 +2110,7 @@ findcol: { jmp breturn //SEG127 findcol::@12 b12: - //SEG128 [71] (byte~) findcol::mindiff#13 ? (byte) findcol::mindiff#11 -- vbuz1=vbuxx + //SEG128 [71] (byte~) findcol::mindiff#13 ← (byte) findcol::mindiff#11 -- vbuz1=vbuxx stx mindiff //SEG129 [52] phi from findcol::@12 to findcol::@1 [phi:findcol::@12->findcol::@1] b1_from_b12: @@ -2120,16 +2120,16 @@ findcol: { jmp b1 //SEG133 findcol::@13 b13: - //SEG134 [72] (byte~) findcol::mindiff#15 ? (byte) findcol::mindiff#10 -- vbuxx=vbuz1 + //SEG134 [72] (byte~) findcol::mindiff#15 ← (byte) findcol::mindiff#10 -- vbuxx=vbuz1 ldx mindiff jmp b7_from_b13 //SEG135 findcol::@5 b5: - //SEG136 [73] (byte~) findcol::$10 ? (byte) findcol::yp#0 - (byte) findcol::y#0 -- vbuaa=vbuz1_minus_vbuz2 + //SEG136 [73] (byte~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 -- vbuaa=vbuz1_minus_vbuz2 lda yp sec sbc y - //SEG137 [74] (byte) findcol::diff#3 ? (byte) findcol::diff#5 + (byte~) findcol::$10 -- vbuxx=vbuxx_plus_vbuaa + //SEG137 [74] (byte) findcol::diff#3 ← (byte) findcol::diff#5 + (byte~) findcol::$10 -- vbuxx=vbuxx_plus_vbuaa stx $ff clc adc $ff @@ -2137,7 +2137,7 @@ findcol: { jmp b6_from_b5 //SEG138 findcol::@3 b3: - //SEG139 [75] (byte) findcol::diff#1 ? (byte) findcol::xp#0 - (byte) findcol::x#0 -- vbuxx=vbuxx_minus_vbuz1 + //SEG139 [75] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 -- vbuxx=vbuxx_minus_vbuz1 txa sec sbc x @@ -2161,11 +2161,11 @@ initscreen: { jmp b1 //SEG145 initscreen::@1 b1: - //SEG146 [78] *((byte*) initscreen::screen#2) ? (const byte) FILL#0 -- _deref_pbuz1=vbuc1 + //SEG146 [78] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 -- _deref_pbuz1=vbuc1 lda #FILL ldy #0 sta (screen),y - //SEG147 [79] (byte*) initscreen::screen#1 ? ++ (byte*) initscreen::screen#2 -- pbuz1=_inc_pbuz1 + //SEG147 [79] (byte*) initscreen::screen#1 ← ++ (byte*) initscreen::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1 @@ -2469,95 +2469,95 @@ main: { } //SEG20 animate animate: { - //SEG21 [10] (byte/signed word/word/dword/signed dword~) animate::$0 ? *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 + //SEG21 [10] (byte/signed word/word/dword/signed dword~) animate::$0 ← *((const byte[]) XPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 ldx XPOS inx - //SEG22 [11] *((const byte[]) XPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$0 -- _deref_pbuc1=vbuxx + //SEG22 [11] *((const byte[]) XPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$0 -- _deref_pbuc1=vbuxx stx XPOS //SEG23 [12] if(*((const byte[]) XPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@1 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$28 cmp XPOS bne b1 //SEG24 animate::@5 - //SEG25 [13] *((const byte[]) XPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG25 [13] *((const byte[]) XPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta XPOS //SEG26 animate::@1 b1: - //SEG27 [14] (byte/signed word/word/dword/signed dword~) animate::$3 ? *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 + //SEG27 [14] (byte/signed word/word/dword/signed dword~) animate::$3 ← *((const byte[]) YPOS#0) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_plus_1 ldx YPOS inx - //SEG28 [15] *((const byte[]) YPOS#0) ? (byte/signed word/word/dword/signed dword~) animate::$3 -- _deref_pbuc1=vbuxx + //SEG28 [15] *((const byte[]) YPOS#0) ← (byte/signed word/word/dword/signed dword~) animate::$3 -- _deref_pbuc1=vbuxx stx YPOS //SEG29 [16] if(*((const byte[]) YPOS#0)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@2 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$19 cmp YPOS bne b2 //SEG30 animate::@6 - //SEG31 [17] *((const byte[]) YPOS#0) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG31 [17] *((const byte[]) YPOS#0) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta YPOS //SEG32 animate::@2 b2: - //SEG33 [18] (byte/signed word/word/dword/signed dword~) animate::$6 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_minus_1 + //SEG33 [18] (byte/signed word/word/dword/signed dword~) animate::$6 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_minus_1 lda XPOS+1 sec sbc #1 - //SEG34 [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed word/word/dword/signed dword~) animate::$6 -- _deref_pbuc1=vbuaa + //SEG34 [19] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed word/word/dword/signed dword~) animate::$6 -- _deref_pbuc1=vbuaa sta XPOS+1 //SEG35 [20] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@3 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$ff cmp XPOS+1 bne b3 //SEG36 animate::@7 - //SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ? (byte/signed byte/word/signed word/dword/signed dword) $28 -- _deref_pbuc1=vbuc2 + //SEG37 [21] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 1) ← (byte/signed byte/word/signed word/dword/signed dword) $28 -- _deref_pbuc1=vbuc2 lda #$28 sta XPOS+1 //SEG38 animate::@3 b3: - //SEG39 [22] (byte/signed word/word/dword/signed dword~) animate::$9 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_plus_1 + //SEG39 [22] (byte/signed word/word/dword/signed dword~) animate::$9 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) + (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuaa=_deref_pbuc1_plus_1 lda YPOS+2 clc adc #1 - //SEG40 [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed word/word/dword/signed dword~) animate::$9 -- _deref_pbuc1=vbuaa + //SEG40 [23] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed word/word/dword/signed dword~) animate::$9 -- _deref_pbuc1=vbuaa sta YPOS+2 //SEG41 [24] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2)!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto animate::@4 -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$19 cmp YPOS+2 bne b4 //SEG42 animate::@8 - //SEG43 [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ? (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 + //SEG43 [25] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 2) ← (byte/signed byte/word/signed word/dword/signed dword) 0 -- _deref_pbuc1=vbuc2 lda #0 sta YPOS+2 //SEG44 animate::@4 b4: - //SEG45 [26] (byte/signed word/word/dword/signed dword~) animate::$12 ? *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_minus_1 + //SEG45 [26] (byte/signed word/word/dword/signed dword~) animate::$12 ← *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) 1 -- vbuxx=_deref_pbuc1_minus_1 ldx YPOS+3 dex - //SEG46 [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$12 -- _deref_pbuc1=vbuxx + //SEG46 [27] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$12 -- _deref_pbuc1=vbuxx stx YPOS+3 //SEG47 [28] if(*((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)!=(byte/word/signed word/dword/signed dword) $ff) goto animate::@return -- _deref_pbuc1_neq_vbuc2_then_la1 lda #$ff cmp YPOS+3 bne breturn //SEG48 animate::@9 - //SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed byte/word/signed word/dword/signed dword) $19 -- _deref_pbuc1=vbuc2 + //SEG49 [29] *((const byte[]) YPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed byte/word/signed word/dword/signed dword) $19 -- _deref_pbuc1=vbuc2 lda #$19 sta YPOS+3 - //SEG50 [30] (byte/signed word/word/dword/signed dword~) animate::$15 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=_deref_pbuc1_plus_vbuc2 + //SEG50 [30] (byte/signed word/word/dword/signed dword~) animate::$15 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) + (byte/signed byte/word/signed word/dword/signed dword) 7 -- vbuaa=_deref_pbuc1_plus_vbuc2 lda #7 clc adc XPOS+3 - //SEG51 [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$15 -- _deref_pbuc1=vbuaa + //SEG51 [31] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$15 -- _deref_pbuc1=vbuaa sta XPOS+3 //SEG52 [32] if(*((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3)<(byte/signed byte/word/signed word/dword/signed dword) $28) goto animate::@return -- _deref_pbuc1_lt_vbuc2_then_la1 cmp #$28 bcc breturn //SEG53 animate::@10 - //SEG54 [33] (byte/signed word/word/dword/signed dword~) animate::$18 ? *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 -- vbuaa=_deref_pbuc1_minus_vbuc2 + //SEG54 [33] (byte/signed word/word/dword/signed dword~) animate::$18 ← *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) - (byte/signed byte/word/signed word/dword/signed dword) $28 -- vbuaa=_deref_pbuc1_minus_vbuc2 sec sbc #$28 - //SEG55 [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ? (byte/signed word/word/dword/signed dword~) animate::$18 -- _deref_pbuc1=vbuaa + //SEG55 [34] *((const byte[]) XPOS#0+(byte/signed byte/word/signed word/dword/signed dword) 3) ← (byte/signed word/word/dword/signed dword~) animate::$18 -- _deref_pbuc1=vbuaa sta XPOS+3 //SEG56 animate::@return breturn: @@ -2591,33 +2591,33 @@ render: { //SEG69 [38] phi (byte) render::x#2 = (byte) render::x#1 [phi:render::@4->render::@2#0] -- register_copy //SEG70 render::@2 b2: - //SEG71 [39] (byte) findcol::x#0 ? (byte) render::x#2 - //SEG72 [40] (byte) findcol::y#0 ? (byte) render::y#4 + //SEG71 [39] (byte) findcol::x#0 ← (byte) render::x#2 + //SEG72 [40] (byte) findcol::y#0 ← (byte) render::y#4 //SEG73 [41] call findcol //SEG74 [51] phi from render::@2 to findcol [phi:render::@2->findcol] jsr findcol - //SEG75 [42] (byte) findcol::return#0 ? (byte) findcol::return#2 -- vbuaa=vbuz1 + //SEG75 [42] (byte) findcol::return#0 ← (byte) findcol::return#2 -- vbuaa=vbuz1 lda findcol.return //SEG76 render::@4 - //SEG77 [43] (byte) render::col#0 ? (byte) findcol::return#0 - //SEG78 [44] *((byte*) render::colline#5 + (byte) render::x#2) ? (byte) render::col#0 -- pbuz1_derefidx_vbuz2=vbuaa + //SEG77 [43] (byte) render::col#0 ← (byte) findcol::return#0 + //SEG78 [44] *((byte*) render::colline#5 + (byte) render::x#2) ← (byte) render::col#0 -- pbuz1_derefidx_vbuz2=vbuaa ldy x sta (colline),y - //SEG79 [45] (byte) render::x#1 ? ++ (byte) render::x#2 -- vbuz1=_inc_vbuz1 + //SEG79 [45] (byte) render::x#1 ← ++ (byte) render::x#2 -- vbuz1=_inc_vbuz1 inc x //SEG80 [46] if((byte) render::x#1!=(byte/signed byte/word/signed word/dword/signed dword) $28) goto render::@2 -- vbuz1_neq_vbuc1_then_la1 lda #$28 cmp x bne b2 //SEG81 render::@3 - //SEG82 [47] (byte*) render::colline#1 ? (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 + //SEG82 [47] (byte*) render::colline#1 ← (byte*) render::colline#5 + (byte/signed byte/word/signed word/dword/signed dword) $28 -- pbuz1=pbuz1_plus_vbuc1 clc adc colline sta colline bcc !+ inc colline+1 !: - //SEG83 [48] (byte) render::y#1 ? ++ (byte) render::y#4 -- vbuz1=_inc_vbuz1 + //SEG83 [48] (byte) render::y#1 ← ++ (byte) render::y#4 -- vbuz1=_inc_vbuz1 inc y //SEG84 [49] if((byte) render::y#1!=(byte/signed byte/word/signed word/dword/signed dword) $19) goto render::@1 -- vbuz1_neq_vbuc1_then_la1 lda #$19 @@ -2647,9 +2647,9 @@ findcol: { ldy #0 //SEG92 findcol::@1 b1: - //SEG93 [53] (byte) findcol::xp#0 ? *((const byte[]) XPOS#0 + (byte) findcol::i#10) -- vbuxx=pbuc1_derefidx_vbuyy + //SEG93 [53] (byte) findcol::xp#0 ← *((const byte[]) XPOS#0 + (byte) findcol::i#10) -- vbuxx=pbuc1_derefidx_vbuyy ldx XPOS,y - //SEG94 [54] (byte) findcol::yp#0 ? *((const byte[]) YPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy + //SEG94 [54] (byte) findcol::yp#0 ← *((const byte[]) YPOS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy lda YPOS,y sta yp //SEG95 [55] if((byte) findcol::x#0!=(byte) findcol::xp#0) goto findcol::@2 -- vbuz1_neq_vbuxx_then_la1 @@ -2676,7 +2676,7 @@ findcol: { bcs b3 !: //SEG104 findcol::@9 - //SEG105 [60] (byte) findcol::diff#2 ? (byte) findcol::x#0 - (byte) findcol::xp#0 -- vbuxx=vbuz1_minus_vbuxx + //SEG105 [60] (byte) findcol::diff#2 ← (byte) findcol::x#0 - (byte) findcol::xp#0 -- vbuxx=vbuz1_minus_vbuxx txa eor #$ff sec @@ -2691,10 +2691,10 @@ findcol: { cmp yp bcc b5 //SEG110 findcol::@10 - //SEG111 [63] (byte~) findcol::$8 ? (byte) findcol::y#0 - (byte) findcol::yp#0 -- vbuaa=vbuz1_minus_vbuz2 + //SEG111 [63] (byte~) findcol::$8 ← (byte) findcol::y#0 - (byte) findcol::yp#0 -- vbuaa=vbuz1_minus_vbuz2 sec sbc yp - //SEG112 [64] (byte) findcol::diff#4 ? (byte) findcol::diff#5 + (byte~) findcol::$8 -- vbuxx=vbuxx_plus_vbuaa + //SEG112 [64] (byte) findcol::diff#4 ← (byte) findcol::diff#5 + (byte~) findcol::$8 -- vbuxx=vbuxx_plus_vbuaa stx $ff clc adc $ff @@ -2707,7 +2707,7 @@ findcol: { cpx mindiff bcs b13 //SEG117 findcol::@11 - //SEG118 [67] (byte) findcol::mincol#1 ? *((const byte[]) COLS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy + //SEG118 [67] (byte) findcol::mincol#1 ← *((const byte[]) COLS#0 + (byte) findcol::i#10) -- vbuz1=pbuc1_derefidx_vbuyy lda COLS,y sta mincol //SEG119 [68] phi from findcol::@11 findcol::@13 to findcol::@7 [phi:findcol::@11/findcol::@13->findcol::@7] @@ -2715,7 +2715,7 @@ findcol: { //SEG121 [68] phi (byte) findcol::mincol#2 = (byte) findcol::mincol#1 [phi:findcol::@11/findcol::@13->findcol::@7#1] -- register_copy //SEG122 findcol::@7 b7: - //SEG123 [69] (byte) findcol::i#1 ? ++ (byte) findcol::i#10 -- vbuyy=_inc_vbuyy + //SEG123 [69] (byte) findcol::i#1 ← ++ (byte) findcol::i#10 -- vbuyy=_inc_vbuyy iny //SEG124 [70] if((byte) findcol::i#1<(const byte) numpoints#0) goto findcol::@12 -- vbuyy_lt_vbuc1_then_la1 cpy #numpoints @@ -2725,7 +2725,7 @@ findcol: { rts //SEG127 findcol::@12 b12: - //SEG128 [71] (byte~) findcol::mindiff#13 ? (byte) findcol::mindiff#11 -- vbuz1=vbuxx + //SEG128 [71] (byte~) findcol::mindiff#13 ← (byte) findcol::mindiff#11 -- vbuz1=vbuxx stx mindiff //SEG129 [52] phi from findcol::@12 to findcol::@1 [phi:findcol::@12->findcol::@1] //SEG130 [52] phi (byte) findcol::mincol#10 = (byte) findcol::mincol#2 [phi:findcol::@12->findcol::@1#0] -- register_copy @@ -2734,16 +2734,16 @@ findcol: { jmp b1 //SEG133 findcol::@13 b13: - //SEG134 [72] (byte~) findcol::mindiff#15 ? (byte) findcol::mindiff#10 -- vbuxx=vbuz1 + //SEG134 [72] (byte~) findcol::mindiff#15 ← (byte) findcol::mindiff#10 -- vbuxx=vbuz1 ldx mindiff jmp b7 //SEG135 findcol::@5 b5: - //SEG136 [73] (byte~) findcol::$10 ? (byte) findcol::yp#0 - (byte) findcol::y#0 -- vbuaa=vbuz1_minus_vbuz2 + //SEG136 [73] (byte~) findcol::$10 ← (byte) findcol::yp#0 - (byte) findcol::y#0 -- vbuaa=vbuz1_minus_vbuz2 lda yp sec sbc y - //SEG137 [74] (byte) findcol::diff#3 ? (byte) findcol::diff#5 + (byte~) findcol::$10 -- vbuxx=vbuxx_plus_vbuaa + //SEG137 [74] (byte) findcol::diff#3 ← (byte) findcol::diff#5 + (byte~) findcol::$10 -- vbuxx=vbuxx_plus_vbuaa stx $ff clc adc $ff @@ -2751,7 +2751,7 @@ findcol: { jmp b6 //SEG138 findcol::@3 b3: - //SEG139 [75] (byte) findcol::diff#1 ? (byte) findcol::xp#0 - (byte) findcol::x#0 -- vbuxx=vbuxx_minus_vbuz1 + //SEG139 [75] (byte) findcol::diff#1 ← (byte) findcol::xp#0 - (byte) findcol::x#0 -- vbuxx=vbuxx_minus_vbuz1 txa sec sbc x @@ -2771,11 +2771,11 @@ initscreen: { //SEG144 [77] phi (byte*) initscreen::screen#2 = (byte*) initscreen::screen#1 [phi:initscreen::@1->initscreen::@1#0] -- register_copy //SEG145 initscreen::@1 b1: - //SEG146 [78] *((byte*) initscreen::screen#2) ? (const byte) FILL#0 -- _deref_pbuz1=vbuc1 + //SEG146 [78] *((byte*) initscreen::screen#2) ← (const byte) FILL#0 -- _deref_pbuz1=vbuc1 lda #FILL ldy #0 sta (screen),y - //SEG147 [79] (byte*) initscreen::screen#1 ? ++ (byte*) initscreen::screen#2 -- pbuz1=_inc_pbuz1 + //SEG147 [79] (byte*) initscreen::screen#1 ← ++ (byte*) initscreen::screen#2 -- pbuz1=_inc_pbuz1 inc screen bne !+ inc screen+1